decap-cms-core 3.5.0 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/dist/decap-cms-core.js +9 -9
  2. package/dist/decap-cms-core.js.map +1 -1
  3. package/dist/esm/actions/auth.js +22 -37
  4. package/dist/esm/actions/collections.js +9 -17
  5. package/dist/esm/actions/config.js +58 -74
  6. package/dist/esm/actions/deploys.js +10 -17
  7. package/dist/esm/actions/editorialWorkflow.js +87 -101
  8. package/dist/esm/actions/entries.js +161 -211
  9. package/dist/esm/actions/media.js +31 -46
  10. package/dist/esm/actions/mediaLibrary.js +94 -126
  11. package/dist/esm/actions/notifications.js +5 -13
  12. package/dist/esm/actions/search.js +30 -47
  13. package/dist/esm/actions/status.js +13 -23
  14. package/dist/esm/actions/waitUntil.js +4 -11
  15. package/dist/esm/backend.js +132 -148
  16. package/dist/esm/bootstrap.js +37 -44
  17. package/dist/esm/components/App/App.js +82 -89
  18. package/dist/esm/components/App/Header.js +46 -52
  19. package/dist/esm/components/App/NotFoundPage.js +11 -18
  20. package/dist/esm/components/Collection/Collection.js +55 -63
  21. package/dist/esm/components/Collection/CollectionControls.js +15 -22
  22. package/dist/esm/components/Collection/CollectionSearch.js +35 -42
  23. package/dist/esm/components/Collection/CollectionTop.js +23 -30
  24. package/dist/esm/components/Collection/ControlButton.js +10 -16
  25. package/dist/esm/components/Collection/Entries/Entries.js +24 -31
  26. package/dist/esm/components/Collection/Entries/EntriesCollection.js +52 -62
  27. package/dist/esm/components/Collection/Entries/EntriesSearch.js +26 -33
  28. package/dist/esm/components/Collection/Entries/EntryCard.js +38 -45
  29. package/dist/esm/components/Collection/Entries/EntryListing.js +24 -32
  30. package/dist/esm/components/Collection/FilterControl.js +9 -16
  31. package/dist/esm/components/Collection/GroupControl.js +9 -16
  32. package/dist/esm/components/Collection/NestedCollection.js +54 -65
  33. package/dist/esm/components/Collection/Sidebar.js +36 -43
  34. package/dist/esm/components/Collection/SortControl.js +19 -26
  35. package/dist/esm/components/Collection/ViewStyleControl.js +17 -24
  36. package/dist/esm/components/Editor/Editor.js +100 -108
  37. package/dist/esm/components/Editor/EditorControlPane/EditorControl.js +105 -112
  38. package/dist/esm/components/Editor/EditorControlPane/EditorControlPane.js +68 -62
  39. package/dist/esm/components/Editor/EditorControlPane/Widget.js +87 -73
  40. package/dist/esm/components/Editor/EditorInterface.js +95 -98
  41. package/dist/esm/components/Editor/EditorPreviewPane/EditorPreview.js +13 -21
  42. package/dist/esm/components/Editor/EditorPreviewPane/EditorPreviewContent.js +64 -23
  43. package/dist/esm/components/Editor/EditorPreviewPane/EditorPreviewPane.js +94 -78
  44. package/dist/esm/components/Editor/EditorPreviewPane/PreviewHOC.js +9 -16
  45. package/dist/esm/components/Editor/EditorToolbar.js +133 -140
  46. package/dist/esm/components/Editor/withWorkflow.js +15 -22
  47. package/dist/esm/components/EditorWidgets/Unknown/UnknownControl.js +9 -16
  48. package/dist/esm/components/EditorWidgets/Unknown/UnknownPreview.js +9 -16
  49. package/dist/esm/components/EditorWidgets/index.js +4 -7
  50. package/dist/esm/components/MediaLibrary/EmptyMessage.js +12 -19
  51. package/dist/esm/components/MediaLibrary/MediaLibrary.js +55 -62
  52. package/dist/esm/components/MediaLibrary/MediaLibraryButtons.js +28 -35
  53. package/dist/esm/components/MediaLibrary/MediaLibraryCard.js +36 -43
  54. package/dist/esm/components/MediaLibrary/MediaLibraryCardGrid.js +50 -57
  55. package/dist/esm/components/MediaLibrary/MediaLibraryHeader.js +16 -23
  56. package/dist/esm/components/MediaLibrary/MediaLibraryModal.js +59 -64
  57. package/dist/esm/components/MediaLibrary/MediaLibrarySearch.js +18 -25
  58. package/dist/esm/components/MediaLibrary/MediaLibraryTop.js +39 -46
  59. package/dist/esm/components/UI/DragDrop.js +21 -30
  60. package/dist/esm/components/UI/ErrorBoundary.js +35 -43
  61. package/dist/esm/components/UI/FileUploadButton.js +11 -18
  62. package/dist/esm/components/UI/Modal.js +19 -26
  63. package/dist/esm/components/UI/Notifications.js +21 -28
  64. package/dist/esm/components/UI/SettingsDropdown.js +28 -34
  65. package/dist/esm/components/UI/index.js +6 -60
  66. package/dist/esm/components/Workflow/Workflow.js +52 -61
  67. package/dist/esm/components/Workflow/WorkflowCard.js +45 -51
  68. package/dist/esm/components/Workflow/WorkflowList.js +43 -49
  69. package/dist/esm/constants/collectionTypes.js +2 -8
  70. package/dist/esm/constants/collectionViews.js +2 -8
  71. package/dist/esm/constants/commitProps.js +2 -8
  72. package/dist/esm/constants/configSchema.js +20 -27
  73. package/dist/esm/constants/fieldInference.js +8 -15
  74. package/dist/esm/constants/publishModes.js +6 -11
  75. package/dist/esm/constants/validationErrorTypes.js +1 -7
  76. package/dist/esm/formats/formats.js +32 -41
  77. package/dist/esm/formats/frontmatter.js +18 -30
  78. package/dist/esm/formats/helpers.js +1 -7
  79. package/dist/esm/formats/json.js +1 -7
  80. package/dist/esm/formats/toml.js +11 -18
  81. package/dist/esm/formats/yaml.js +7 -14
  82. package/dist/esm/index.js +5 -12
  83. package/dist/esm/integrations/index.js +8 -16
  84. package/dist/esm/integrations/providers/algolia/implementation.js +14 -22
  85. package/dist/esm/integrations/providers/assetStore/implementation.js +10 -18
  86. package/dist/esm/lib/consoleError.js +1 -7
  87. package/dist/esm/lib/formatters.js +34 -47
  88. package/dist/esm/lib/i18n.js +37 -66
  89. package/dist/esm/lib/phrases.js +4 -11
  90. package/dist/esm/lib/registry.js +40 -75
  91. package/dist/esm/lib/serializeEntryValues.js +11 -18
  92. package/dist/esm/lib/textHelper.js +1 -7
  93. package/dist/esm/lib/urlHelper.js +28 -43
  94. package/dist/esm/mediaLibrary.js +12 -16
  95. package/dist/esm/reducers/auth.js +10 -16
  96. package/dist/esm/reducers/collections.js +70 -102
  97. package/dist/esm/reducers/combinedReducer.js +4 -11
  98. package/dist/esm/reducers/config.js +11 -19
  99. package/dist/esm/reducers/cursors.js +12 -18
  100. package/dist/esm/reducers/deploys.js +8 -15
  101. package/dist/esm/reducers/editorialWorkflow.js +37 -47
  102. package/dist/esm/reducers/entries.js +107 -132
  103. package/dist/esm/reducers/entryDraft.js +64 -72
  104. package/dist/esm/reducers/globalUI.js +5 -11
  105. package/dist/esm/reducers/index.js +43 -64
  106. package/dist/esm/reducers/integrations.js +8 -16
  107. package/dist/esm/reducers/mediaLibrary.js +43 -52
  108. package/dist/esm/reducers/medias.js +11 -18
  109. package/dist/esm/reducers/notifications.js +9 -15
  110. package/dist/esm/reducers/search.js +12 -18
  111. package/dist/esm/reducers/status.js +7 -13
  112. package/dist/esm/redux/index.js +7 -13
  113. package/dist/esm/redux/middleware/waitUntilAction.js +3 -10
  114. package/dist/esm/routing/history.js +7 -15
  115. package/dist/esm/types/diacritics.d.js +0 -1
  116. package/dist/esm/types/global.d.js +1 -5
  117. package/dist/esm/types/immutable.js +1 -5
  118. package/dist/esm/types/redux.js +7 -8
  119. package/dist/esm/types/tomlify-j0.4.d.js +0 -1
  120. package/dist/esm/valueObjects/AssetProxy.js +2 -10
  121. package/dist/esm/valueObjects/EditorComponent.js +5 -12
  122. package/dist/esm/valueObjects/Entry.js +3 -10
  123. package/package.json +3 -2
  124. package/src/components/Collection/Entries/EntriesCollection.js +7 -8
  125. package/src/components/Collection/Entries/__tests__/EntriesCollection.spec.js +3 -5
  126. package/src/components/Collection/Entries/__tests__/__snapshots__/EntriesCollection.spec.js.snap +8 -8
  127. package/src/components/Collection/NestedCollection.js +2 -2
  128. package/src/components/Collection/__tests__/__snapshots__/NestedCollection.spec.js.snap +68 -0
  129. package/src/components/Editor/EditorControlPane/EditorControl.js +0 -3
  130. package/src/components/Editor/EditorControlPane/EditorControlPane.js +21 -8
  131. package/src/components/Editor/EditorControlPane/Widget.js +22 -1
  132. package/src/components/Editor/EditorInterface.js +6 -1
  133. package/src/components/Editor/EditorPreviewPane/EditorPreviewContent.js +51 -11
  134. package/src/components/Editor/EditorPreviewPane/EditorPreviewPane.js +33 -1
  135. package/dist/esm/actions/editorControl.js +0 -14
  136. package/dist/esm/reducers/editorComponent.js +0 -1
  137. package/dist/esm/reducers/editorControl.js +0 -17
@@ -1,24 +1,18 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.EditorToolbar = void 0;
7
- var _base = _interopRequireDefault(require("@emotion/styled/base"));
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
11
- var _react2 = require("@emotion/react");
12
- var _reactPolyglot = require("react-polyglot");
13
- var _reactRouterDom = require("react-router-dom");
14
- var _decapCmsUiDefault = require("decap-cms-ui-default");
15
- var _publishModes = require("../../constants/publishModes");
16
- var _UI = require("../UI");
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1
+ import _styled from "@emotion/styled/base";
18
2
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
3
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
20
4
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
5
  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)."; }
6
+ import React from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import ImmutablePropTypes from 'react-immutable-proptypes';
9
+ import { css } from '@emotion/react';
10
+ import { translate } from 'react-polyglot';
11
+ import { Link } from 'react-router-dom';
12
+ import { Icon, Dropdown, DropdownItem, StyledDropdownButton, colorsRaw, colors, components, buttons, zIndex } from 'decap-cms-ui-default';
13
+ import { status } from '../../constants/publishModes';
14
+ import { SettingsDropdown } from '../UI';
15
+ import { jsx as ___EmotionJSX } from "@emotion/react";
22
16
  const styles = {
23
17
  noOverflow: process.env.NODE_ENV === "production" ? {
24
18
  name: "1ctb18k-noOverflow",
@@ -38,10 +32,10 @@ const styles = {
38
32
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCbUIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
39
33
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
40
34
  },
41
- toolbarSection: /*#__PURE__*/(0, _react2.css)("height:100%;display:flex;align-items:center;border:0 solid ", _decapCmsUiDefault.colors.textFieldBorder, ";;label:toolbarSection;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStCcUIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */")),
42
- publishedButton: /*#__PURE__*/(0, _react2.css)("background-color:", _decapCmsUiDefault.colorsRaw.tealLight, ";color:", _decapCmsUiDefault.colorsRaw.tealDark, ";;label:publishedButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFDc0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"))
35
+ toolbarSection: /*#__PURE__*/css("height:100%;display:flex;align-items:center;border:0 solid ", colors.textFieldBorder, ";;label:toolbarSection;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStCcUIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */")),
36
+ publishedButton: /*#__PURE__*/css("background-color:", colorsRaw.tealLight, ";color:", colorsRaw.tealDark, ";;label:publishedButton;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFDc0IiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"))
43
37
  };
44
- const TooltipText = /*#__PURE__*/(0, _base.default)("div", {
38
+ const TooltipText = /*#__PURE__*/_styled("div", {
45
39
  target: "e1d2l9mo26",
46
40
  label: "TooltipText"
47
41
  })(process.env.NODE_ENV === "production" ? {
@@ -53,11 +47,11 @@ const TooltipText = /*#__PURE__*/(0, _base.default)("div", {
53
47
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJDOEIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
54
48
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
55
49
  });
56
- const Tooltip = /*#__PURE__*/(0, _base.default)("div", {
50
+ const Tooltip = /*#__PURE__*/_styled("div", {
57
51
  target: "e1d2l9mo25",
58
52
  label: "Tooltip"
59
53
  })("position:relative;display:inline-block;&:hover+", TooltipText, "{visibility:visible;opacity:0.9;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdFMEIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
60
- const TooltipContainer = /*#__PURE__*/(0, _base.default)("div", {
54
+ const TooltipContainer = /*#__PURE__*/_styled("div", {
61
55
  target: "e1d2l9mo24",
62
56
  label: "TooltipContainer"
63
57
  })(process.env.NODE_ENV === "production" ? {
@@ -69,19 +63,19 @@ const TooltipContainer = /*#__PURE__*/(0, _base.default)("div", {
69
63
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlFbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
70
64
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
71
65
  });
72
- const DropdownButton = /*#__PURE__*/(0, _base.default)(_decapCmsUiDefault.StyledDropdownButton, {
66
+ const DropdownButton = /*#__PURE__*/_styled(StyledDropdownButton, {
73
67
  target: "e1d2l9mo23",
74
68
  label: "DropdownButton"
75
69
  })(styles.noOverflow, "@media (max-width: 1200px){padding-left:10px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZFbUQiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
76
- const ToolbarContainer = /*#__PURE__*/(0, _base.default)("div", {
70
+ const ToolbarContainer = /*#__PURE__*/_styled("div", {
77
71
  target: "e1d2l9mo22",
78
72
  label: "ToolbarContainer"
79
- })("box-shadow:0 2px 6px 0 rgba(68, 74, 87, 0.05),0 1px 3px 0 rgba(68, 74, 87, 0.1),0 2px 54px rgba(0, 0, 0, 0.1);position:absolute;top:0;left:0;width:100%;min-width:800px;z-index:", _decapCmsUiDefault.zIndex.zIndex300, ";background-color:#fff;height:66px;display:flex;justify-content:space-between;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9GbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
80
- const ToolbarSectionMain = /*#__PURE__*/(0, _base.default)("div", {
73
+ })("box-shadow:0 2px 6px 0 rgba(68, 74, 87, 0.05),0 1px 3px 0 rgba(68, 74, 87, 0.1),0 2px 54px rgba(0, 0, 0, 0.1);position:absolute;top:0;left:0;width:100%;min-width:800px;z-index:", zIndex.zIndex300, ";background-color:#fff;height:66px;display:flex;justify-content:space-between;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9GbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
74
+ const ToolbarSectionMain = /*#__PURE__*/_styled("div", {
81
75
  target: "e1d2l9mo21",
82
76
  label: "ToolbarSectionMain"
83
77
  })(styles.toolbarSection, ";flex:10;display:flex;justify-content:space-between;padding:0 10px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1HcUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
84
- const ToolbarSubSectionFirst = /*#__PURE__*/(0, _base.default)("div", {
78
+ const ToolbarSubSectionFirst = /*#__PURE__*/_styled("div", {
85
79
  target: "e1d2l9mo20",
86
80
  label: "ToolbarSubSectionFirst"
87
81
  })(process.env.NODE_ENV === "production" ? {
@@ -93,7 +87,7 @@ const ToolbarSubSectionFirst = /*#__PURE__*/(0, _base.default)("div", {
93
87
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJHeUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
94
88
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
95
89
  });
96
- const ToolbarSubSectionLast = /*#__PURE__*/(0, _base.default)(ToolbarSubSectionFirst, {
90
+ const ToolbarSubSectionLast = /*#__PURE__*/_styled(ToolbarSubSectionFirst, {
97
91
  target: "e1d2l9mo19",
98
92
  label: "ToolbarSubSectionLast"
99
93
  })(process.env.NODE_ENV === "production" ? {
@@ -105,27 +99,27 @@ const ToolbarSubSectionLast = /*#__PURE__*/(0, _base.default)(ToolbarSubSectionF
105
99
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdINEQiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
106
100
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
107
101
  });
108
- const ToolbarSectionBackLink = /*#__PURE__*/(0, _base.default)(_reactRouterDom.Link, {
102
+ const ToolbarSectionBackLink = /*#__PURE__*/_styled(Link, {
109
103
  target: "e1d2l9mo18",
110
104
  label: "ToolbarSectionBackLink"
111
105
  })(styles.toolbarSection, ";border-right-width:1px;font-weight:normal;padding:0 20px;&:hover,&:focus{background-color:#f1f2f4;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9IMkMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
112
- const ToolbarSectionMeta = /*#__PURE__*/(0, _base.default)("div", {
106
+ const ToolbarSectionMeta = /*#__PURE__*/_styled("div", {
113
107
  target: "e1d2l9mo17",
114
108
  label: "ToolbarSectionMeta"
115
109
  })(styles.toolbarSection, ";border-left-width:1px;padding:0 7px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdJcUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
116
- const ToolbarDropdown = /*#__PURE__*/(0, _base.default)(_decapCmsUiDefault.Dropdown, {
110
+ const ToolbarDropdown = /*#__PURE__*/_styled(Dropdown, {
117
111
  target: "e1d2l9mo16",
118
112
  label: "ToolbarDropdown"
119
- })(styles.buttonMargin, ";", _decapCmsUiDefault.Icon, "{color:", _decapCmsUiDefault.colorsRaw.teal, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNJd0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
120
- const BackArrow = /*#__PURE__*/(0, _base.default)("div", {
113
+ })(styles.buttonMargin, ";", Icon, "{color:", colorsRaw.teal, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNJd0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
114
+ const BackArrow = /*#__PURE__*/_styled("div", {
121
115
  target: "e1d2l9mo15",
122
116
  label: "BackArrow"
123
- })("color:", _decapCmsUiDefault.colors.textLead, ";font-size:21px;font-weight:600;margin-right:16px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThJNEIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
124
- const BackCollection = /*#__PURE__*/(0, _base.default)("div", {
117
+ })("color:", colors.textLead, ";font-size:21px;font-weight:600;margin-right:16px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThJNEIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
118
+ const BackCollection = /*#__PURE__*/_styled("div", {
125
119
  target: "e1d2l9mo14",
126
120
  label: "BackCollection"
127
- })("color:", _decapCmsUiDefault.colors.textLead, ";font-size:14px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFKaUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
128
- const BackStatus = /*#__PURE__*/(0, _base.default)("div", {
121
+ })("color:", colors.textLead, ";font-size:14px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFKaUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
122
+ const BackStatus = /*#__PURE__*/_styled("div", {
129
123
  target: "e1d2l9mo13",
130
124
  label: "BackStatus"
131
125
  })(process.env.NODE_ENV === "production" ? {
@@ -137,55 +131,55 @@ const BackStatus = /*#__PURE__*/(0, _base.default)("div", {
137
131
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBKNkIiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
138
132
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
139
133
  });
140
- const BackStatusUnchanged = /*#__PURE__*/(0, _base.default)(BackStatus, {
134
+ const BackStatusUnchanged = /*#__PURE__*/_styled(BackStatus, {
141
135
  target: "e1d2l9mo12",
142
136
  label: "BackStatusUnchanged"
143
- })(_decapCmsUiDefault.components.textBadgeSuccess, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThKOEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
144
- const BackStatusChanged = /*#__PURE__*/(0, _base.default)(BackStatus, {
137
+ })(components.textBadgeSuccess, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThKOEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
138
+ const BackStatusChanged = /*#__PURE__*/_styled(BackStatus, {
145
139
  target: "e1d2l9mo11",
146
140
  label: "BackStatusChanged"
147
- })(_decapCmsUiDefault.components.textBadgeDanger, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtLNEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
148
- const ToolbarButton = /*#__PURE__*/(0, _base.default)("button", {
141
+ })(components.textBadgeDanger, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtLNEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
142
+ const ToolbarButton = /*#__PURE__*/_styled("button", {
149
143
  target: "e1d2l9mo10",
150
144
  label: "ToolbarButton"
151
- })(_decapCmsUiDefault.buttons.button, ";", _decapCmsUiDefault.buttons.default, ";", styles.buttonMargin, ";", styles.noOverflow, ";display:block;@media (max-width: 1200px){padding:0 10px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNLbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
152
- const DeleteButton = /*#__PURE__*/(0, _base.default)(ToolbarButton, {
145
+ })(buttons.button, ";", buttons.default, ";", styles.buttonMargin, ";", styles.noOverflow, ";display:block;@media (max-width: 1200px){padding:0 10px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNLbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
146
+ const DeleteButton = /*#__PURE__*/_styled(ToolbarButton, {
153
147
  target: "e1d2l9mo9",
154
148
  label: "DeleteButton"
155
- })(_decapCmsUiDefault.buttons.lightRed, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtMMEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
156
- const SaveButton = /*#__PURE__*/(0, _base.default)(ToolbarButton, {
149
+ })(buttons.lightRed, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtMMEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
150
+ const SaveButton = /*#__PURE__*/_styled(ToolbarButton, {
157
151
  target: "e1d2l9mo8",
158
152
  label: "SaveButton"
159
- })(_decapCmsUiDefault.buttons.lightBlue, ";&[disabled]{", _decapCmsUiDefault.buttons.disabled, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNMd0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
160
- const PublishedToolbarButton = /*#__PURE__*/(0, _base.default)(DropdownButton, {
153
+ })(buttons.lightBlue, ";&[disabled]{", buttons.disabled, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNMd0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
154
+ const PublishedToolbarButton = /*#__PURE__*/_styled(DropdownButton, {
161
155
  target: "e1d2l9mo7",
162
156
  label: "PublishedToolbarButton"
163
157
  })(styles.publishedButton, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZMcUQiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
164
- const PublishedButton = /*#__PURE__*/(0, _base.default)(ToolbarButton, {
158
+ const PublishedButton = /*#__PURE__*/_styled(ToolbarButton, {
165
159
  target: "e1d2l9mo6",
166
160
  label: "PublishedButton"
167
161
  })(styles.publishedButton, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlNNkMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
168
- const PublishButton = /*#__PURE__*/(0, _base.default)(DropdownButton, {
162
+ const PublishButton = /*#__PURE__*/_styled(DropdownButton, {
169
163
  target: "e1d2l9mo5",
170
164
  label: "PublishButton"
171
- })("background-color:", _decapCmsUiDefault.colorsRaw.teal, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFNNEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
172
- const StatusButton = /*#__PURE__*/(0, _base.default)(DropdownButton, {
165
+ })("background-color:", colorsRaw.teal, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFNNEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
166
+ const StatusButton = /*#__PURE__*/_styled(DropdownButton, {
173
167
  target: "e1d2l9mo4",
174
168
  label: "StatusButton"
175
- })("background-color:", _decapCmsUiDefault.colorsRaw.tealLight, ";color:", _decapCmsUiDefault.colorsRaw.teal, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlNMkMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
176
- const PreviewButtonContainer = /*#__PURE__*/(0, _base.default)("div", {
169
+ })("background-color:", colorsRaw.tealLight, ";color:", colorsRaw.teal, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlNMkMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
170
+ const PreviewButtonContainer = /*#__PURE__*/_styled("div", {
177
171
  target: "e1d2l9mo3",
178
172
  label: "PreviewButtonContainer"
179
- })("margin-right:12px;color:", _decapCmsUiDefault.colorsRaw.blue, ";display:flex;align-items:center;a,", _decapCmsUiDefault.Icon, "{color:", _decapCmsUiDefault.colorsRaw.blue, ";}", _decapCmsUiDefault.Icon, "{position:relative;top:1px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThNeUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
180
- const RefreshPreviewButton = /*#__PURE__*/(0, _base.default)("button", {
173
+ })("margin-right:12px;color:", colorsRaw.blue, ";display:flex;align-items:center;a,", Icon, "{color:", colorsRaw.blue, ";}", Icon, "{position:relative;top:1px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThNeUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
174
+ const RefreshPreviewButton = /*#__PURE__*/_styled("button", {
181
175
  target: "e1d2l9mo2",
182
176
  label: "RefreshPreviewButton"
183
- })("background:none;border:0;cursor:pointer;color:", _decapCmsUiDefault.colorsRaw.blue, ";span{margin-right:6px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStOMEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
177
+ })("background:none;border:0;cursor:pointer;color:", colorsRaw.blue, ";span{margin-right:6px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStOMEMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
184
178
  const PreviewLink = RefreshPreviewButton.withComponent('a', {
185
179
  target: "e1d2l9mo27",
186
180
  label: "PreviewLink"
187
181
  });
188
- const PublishDropDownItem = /*#__PURE__*/(0, _base.default)(_decapCmsUiDefault.DropdownItem, {
182
+ const PublishDropDownItem = /*#__PURE__*/_styled(DropdownItem, {
189
183
  target: "e1d2l9mo1",
190
184
  label: "PublishDropDownItem"
191
185
  })(process.env.NODE_ENV === "production" ? {
@@ -197,11 +191,11 @@ const PublishDropDownItem = /*#__PURE__*/(0, _base.default)(_decapCmsUiDefault.D
197
191
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRPZ0QiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */",
198
192
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
199
193
  });
200
- const StatusDropdownItem = /*#__PURE__*/(0, _base.default)(_decapCmsUiDefault.DropdownItem, {
194
+ const StatusDropdownItem = /*#__PURE__*/_styled(DropdownItem, {
201
195
  target: "e1d2l9mo0",
202
196
  label: "StatusDropdownItem"
203
- })(_decapCmsUiDefault.Icon, "{color:", _decapCmsUiDefault.colors.infoText, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdQK0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
204
- class EditorToolbar extends _react.default.Component {
197
+ })(Icon, "{color:", colors.infoText, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JUb29sYmFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdQK0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRWRpdG9yL0VkaXRvclRvb2xiYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB0cmFuc2xhdGUgfSBmcm9tICdyZWFjdC1wb2x5Z2xvdCc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQge1xuICBJY29uLFxuICBEcm9wZG93bixcbiAgRHJvcGRvd25JdGVtLFxuICBTdHlsZWREcm9wZG93bkJ1dHRvbixcbiAgY29sb3JzUmF3LFxuICBjb2xvcnMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBzdGF0dXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvcHVibGlzaE1vZGVzJztcbmltcG9ydCB7IFNldHRpbmdzRHJvcGRvd24gfSBmcm9tICcuLi9VSSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgbm9PdmVyZmxvdzogY3NzYFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgYCxcbiAgYnV0dG9uTWFyZ2luOiBjc3NgXG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gIGAsXG4gIHRvb2xiYXJTZWN0aW9uOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IDAgc29saWQgJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgYCxcbiAgcHVibGlzaGVkQnV0dG9uOiBjc3NgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbExpZ2h0fTtcbiAgICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbERhcmt9O1xuICBgLFxufTtcblxuY29uc3QgVG9vbHRpcFRleHQgPSBzdHlsZWQuZGl2YFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IHVuc2V0O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcblxuICAvKiBQb3NpdGlvbiB0aGUgdG9vbHRpcCB0ZXh0ICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAxNDUlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMzIwcHg7XG5cbiAgLyogRmFkZSBpbiB0b29sdGlwICovXG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbmA7XG5cbmNvbnN0IFRvb2x0aXAgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgJjpob3ZlciArICR7VG9vbHRpcFRleHR9IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgfVxuYDtcblxuY29uc3QgVG9vbHRpcENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IERyb3Bkb3duQnV0dG9uID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMubm9PdmVyZmxvd31cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4wNSksIDAgMXB4IDNweCAwIHJnYmEoNjgsIDc0LCA4NywgMC4xKSxcbiAgICAwIDJweCA1NHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgzMDB9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDY2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFRvb2xiYXJTZWN0aW9uTWFpbiA9IHN0eWxlZC5kaXZgXG4gICR7c3R5bGVzLnRvb2xiYXJTZWN0aW9ufTtcbiAgZmxleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCAxMHB4O1xuYDtcblxuY29uc3QgVG9vbGJhclN1YlNlY3Rpb25GaXJzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBUb29sYmFyU3ViU2VjdGlvbkxhc3QgPSBzdHlsZWQoVG9vbGJhclN1YlNlY3Rpb25GaXJzdClgXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5gO1xuXG5jb25zdCBUb29sYmFyU2VjdGlvbkJhY2tMaW5rID0gc3R5bGVkKExpbmspYFxuICAke3N0eWxlcy50b29sYmFyU2VjdGlvbn07XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjJmNDtcbiAgfVxuYDtcblxuY29uc3QgVG9vbGJhclNlY3Rpb25NZXRhID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudG9vbGJhclNlY3Rpb259O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAwIDdweDtcbmA7XG5cbmNvbnN0IFRvb2xiYXJEcm9wZG93biA9IHN0eWxlZChEcm9wZG93bilgXG4gICR7c3R5bGVzLmJ1dHRvbk1hcmdpbn07XG5cbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LnRlYWx9O1xuICB9XG5gO1xuXG5jb25zdCBCYWNrQXJyb3cgPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtjb2xvcnMudGV4dExlYWR9O1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbmA7XG5cbmNvbnN0IEJhY2tDb2xsZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgY29sb3I6ICR7Y29sb3JzLnRleHRMZWFkfTtcbiAgZm9udC1zaXplOiAxNHB4O1xuYDtcblxuY29uc3QgQmFja1N0YXR1cyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDZweDtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNVbmNoYW5nZWQgPSBzdHlsZWQoQmFja1N0YXR1cylgXG4gICR7Y29tcG9uZW50cy50ZXh0QmFkZ2VTdWNjZXNzfTtcbmA7XG5cbmNvbnN0IEJhY2tTdGF0dXNDaGFuZ2VkID0gc3R5bGVkKEJhY2tTdGF0dXMpYFxuICAke2NvbXBvbmVudHMudGV4dEJhZGdlRGFuZ2VyfTtcbmA7XG5cbmNvbnN0IFRvb2xiYXJCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtidXR0b25zLmRlZmF1bHR9O1xuICAke3N0eWxlcy5idXR0b25NYXJnaW59O1xuICAke3N0eWxlcy5ub092ZXJmbG93fTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuYDtcblxuY29uc3QgRGVsZXRlQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke2J1dHRvbnMubGlnaHRSZWR9O1xuYDtcblxuY29uc3QgU2F2ZUJ1dHRvbiA9IHN0eWxlZChUb29sYmFyQnV0dG9uKWBcbiAgJHtidXR0b25zLmxpZ2h0Qmx1ZX07XG4gICZbZGlzYWJsZWRdIHtcbiAgICAke2J1dHRvbnMuZGlzYWJsZWR9O1xuICB9XG5gO1xuXG5jb25zdCBQdWJsaXNoZWRUb29sYmFyQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgJHtzdHlsZXMucHVibGlzaGVkQnV0dG9ufVxuYDtcblxuY29uc3QgUHVibGlzaGVkQnV0dG9uID0gc3R5bGVkKFRvb2xiYXJCdXR0b24pYFxuICAke3N0eWxlcy5wdWJsaXNoZWRCdXR0b259XG5gO1xuXG5jb25zdCBQdWJsaXNoQnV0dG9uID0gc3R5bGVkKERyb3Bkb3duQnV0dG9uKWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBTdGF0dXNCdXR0b24gPSBzdHlsZWQoRHJvcGRvd25CdXR0b24pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy50ZWFsTGlnaHR9O1xuICBjb2xvcjogJHtjb2xvcnNSYXcudGVhbH07XG5gO1xuXG5jb25zdCBQcmV2aWV3QnV0dG9uQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYSxcbiAgJHtJY29ufSB7XG4gICAgY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICB9XG5cbiAgJHtJY29ufSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5gO1xuXG5jb25zdCBSZWZyZXNoUHJldmlld0J1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJHtjb2xvcnNSYXcuYmx1ZX07XG5cbiAgc3BhbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFByZXZpZXdMaW5rID0gUmVmcmVzaFByZXZpZXdCdXR0b24ud2l0aENvbXBvbmVudCgnYScpO1xuXG5jb25zdCBQdWJsaXNoRHJvcERvd25JdGVtID0gc3R5bGVkKERyb3Bkb3duSXRlbSlgXG4gIG1pbi13aWR0aDogaW5pdGlhbDtcbmA7XG5cbmNvbnN0IFN0YXR1c0Ryb3Bkb3duSXRlbSA9IHN0eWxlZChEcm9wZG93bkl0ZW0pYFxuICAke0ljb259IHtcbiAgICBjb2xvcjogJHtjb2xvcnMuaW5mb1RleHR9O1xuICB9XG5gO1xuXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgaXNQZXJzaXN0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBpc1B1Ymxpc2hpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzVXBkYXRpbmdTdGF0dXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGlzRGVsZXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uUGVyc2lzdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblBlcnNpc3RBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QZXJzaXN0QW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVuUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblB1Ymxpc2hBbmROZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25QdWJsaXNoQW5kRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZU9wZW5BdXRob3Jpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNNb2RpZmljYXRpb246IFByb3BUeXBlcy5ib29sLFxuICAgIGN1cnJlbnRTdGF0dXM6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGxvYWREZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZWRpdG9yQmFja0xpbms6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IGlzTmV3RW50cnksIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSkge1xuICAgICAgbG9hZERlcGxveVByZXZpZXcoeyBtYXhBdHRlbXB0czogMyB9KTtcbiAgICB9XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzKSB7XG4gICAgY29uc3QgeyBpc05ld0VudHJ5LCBpc1BlcnNpc3RpbmcsIGxvYWREZXBsb3lQcmV2aWV3IH0gPSB0aGlzLnByb3BzO1xuICAgIGlmICghaXNOZXdFbnRyeSAmJiBwcmV2UHJvcHMuaXNQZXJzaXN0aW5nICYmICFpc1BlcnNpc3RpbmcpIHtcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3KHsgbWF4QXR0ZW1wdHM6IDMgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyU2ltcGxlQ29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9uLCBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCBzaG93RGVsZXRlLCBvbkRlbGV0ZSwgdCB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgeyFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkXG4gICAgICAgICAgPyB0aGlzLnJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSlcbiAgICAgICAgICA6IHRoaXMucmVuZGVyTmV3RW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUgfSl9XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge3Nob3dEZWxldGUgPyAoXG4gICAgICAgICAgICA8RGVsZXRlQnV0dG9uIG9uQ2xpY2s9e29uRGVsZXRlfT57dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlRW50cnknKX08L0RlbGV0ZUJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyA9IGxhYmVsID0+IHtcbiAgICBjb25zdCB7IGRlcGxveVByZXZpZXcgPSB7fSwgbG9hZERlcGxveVByZXZpZXcsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyB1cmwsIHN0YXR1cywgaXNGZXRjaGluZyB9ID0gZGVwbG95UHJldmlldztcblxuICAgIGlmICghc3RhdHVzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwbG95UHJldmlld1JlYWR5ID0gc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgIWlzRmV0Y2hpbmc7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICAgICB7ZGVwbG95UHJldmlld1JlYWR5ID8gKFxuICAgICAgICAgIDxQcmV2aWV3TGluayByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICA8SWNvbiB0eXBlPVwibmV3LXRhYlwiIHNpemU9XCJ4c21hbGxcIiAvPlxuICAgICAgICAgIDwvUHJldmlld0xpbms+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFJlZnJlc2hQcmV2aWV3QnV0dG9uIG9uQ2xpY2s9e2xvYWREZXBsb3lQcmV2aWV3fT5cbiAgICAgICAgICAgIDxzcGFuPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3UGVuZGluZ0J1dHRvbkxhYmVsJyl9PC9zcGFuPlxuICAgICAgICAgICAgPEljb24gdHlwZT1cInJlZnJlc2hcIiBzaXplPVwieHNtYWxsXCIgLz5cbiAgICAgICAgICA8L1JlZnJlc2hQcmV2aWV3QnV0dG9uPlxuICAgICAgICApfVxuICAgICAgPC9QcmV2aWV3QnV0dG9uQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAgPSAoKSA9PiB7XG4gICAgY29uc3QgeyB0LCBjdXJyZW50U3RhdHVzIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3Qgc3RhdHVzVG9Mb2NhbGVLZXkgPSB7XG4gICAgICBbc3RhdHVzLmdldCgnRFJBRlQnKV06ICdzdGF0dXNJbmZvVG9vbHRpcERyYWZ0JyxcbiAgICAgIFtzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpXTogJ3N0YXR1c0luZm9Ub29sdGlwSW5SZXZpZXcnLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0dXNLZXkgPSBPYmplY3Qua2V5cyhzdGF0dXNUb0xvY2FsZUtleSkuZmluZChrZXkgPT4ga2V5ID09PSBjdXJyZW50U3RhdHVzKTtcbiAgICByZXR1cm4gKFxuICAgICAgPFRvb2x0aXBDb250YWluZXI+XG4gICAgICAgIDxUb29sdGlwPlxuICAgICAgICAgIDxJY29uIHR5cGU9XCJpbmZvLWNpcmNsZVwiIHNpemU9XCJzbWFsbFwiIGNsYXNzTmFtZT1cInRvb2x0aXBcIiAvPlxuICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIHtzdGF0dXNLZXkgJiYgKFxuICAgICAgICAgIDxUb29sdGlwVGV4dD57dChgZWRpdG9yLmVkaXRvclRvb2xiYXIuJHtzdGF0dXNUb0xvY2FsZUtleVtzdGF0dXNLZXldfWApfTwvVG9vbHRpcFRleHQ+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2x0aXBDb250YWluZXI+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgaXNVcGRhdGluZ1N0YXR1cywgb25DaGFuZ2VTdGF0dXMsIGN1cnJlbnRTdGF0dXMsIHQsIHVzZU9wZW5BdXRob3JpbmcgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBzdGF0dXNUb1RyYW5zbGF0aW9uID0ge1xuICAgICAgW3N0YXR1cy5nZXQoJ0RSQUZUJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kcmFmdCcpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUkVWSUVXJyldOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpLFxuICAgICAgW3N0YXR1cy5nZXQoJ1BFTkRJTkdfUFVCTElTSCcpXTogdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucmVhZHknKSxcbiAgICB9O1xuXG4gICAgY29uc3QgYnV0dG9uVGV4dCA9IGlzVXBkYXRpbmdTdGF0dXNcbiAgICAgID8gdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudXBkYXRpbmcnKVxuICAgICAgOiB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zdGF0dXMnLCB7IHN0YXR1czogc3RhdHVzVG9UcmFuc2xhdGlvbltjdXJyZW50U3RhdHVzXSB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjEyMHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IDxTdGF0dXNCdXR0b24+e2J1dHRvblRleHR9PC9TdGF0dXNCdXR0b24+fVxuICAgICAgICA+XG4gICAgICAgICAgPFN0YXR1c0Ryb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRyYWZ0Jyl9XG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZVN0YXR1cygnRFJBRlQnKX1cbiAgICAgICAgICAgIGljb249e2N1cnJlbnRTdGF0dXMgPT09IHN0YXR1cy5nZXQoJ0RSQUZUJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5pblJldmlldycpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25DaGFuZ2VTdGF0dXMoJ1BFTkRJTkdfUkVWSUVXJyl9XG4gICAgICAgICAgICBpY29uPXtjdXJyZW50U3RhdHVzID09PSBzdGF0dXMuZ2V0KCdQRU5ESU5HX1JFVklFVycpID8gJ2NoZWNrJyA6IG51bGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7dXNlT3BlbkF1dGhvcmluZyA/IChcbiAgICAgICAgICAgICcnXG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTdGF0dXNEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnJlYWR5Jyl9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IG9uQ2hhbmdlU3RhdHVzKCdQRU5ESU5HX1BVQkxJU0gnKX1cbiAgICAgICAgICAgICAgaWNvbj17Y3VycmVudFN0YXR1cyA9PT0gc3RhdHVzLmdldCgnUEVORElOR19QVUJMSVNIJykgPyAnY2hlY2snIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ub29sYmFyRHJvcGRvd24+XG4gICAgICAgIHt1c2VPcGVuQXV0aG9yaW5nICYmIHRoaXMucmVuZGVyU3RhdHVzSW5mb1Rvb2x0aXAoKX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyTmV3RW50cnlXb3JrZmxvd1B1Ymxpc2hDb250cm9scyA9ICh7IGNhbkNyZWF0ZSwgY2FuUHVibGlzaCB9KSA9PiB7XG4gICAgY29uc3QgeyBpc1B1Ymxpc2hpbmcsIG9uUHVibGlzaCwgb25QdWJsaXNoQW5kTmV3LCBvblB1Ymxpc2hBbmREdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gY2FuUHVibGlzaCA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIyMDBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAge2lzUHVibGlzaGluZ1xuICAgICAgICAgICAgICA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICA8L1B1Ymxpc2hCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgIGljb25EaXJlY3Rpb249XCJyaWdodFwiXG4gICAgICAgICAgb25DbGljaz17b25QdWJsaXNofVxuICAgICAgICAvPlxuICAgICAgICB7Y2FuQ3JlYXRlID8gKFxuICAgICAgICAgIDw+XG4gICAgICAgICAgICA8UHVibGlzaERyb3BEb3duSXRlbVxuICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgICAgb25DbGljaz17b25QdWJsaXNoQW5kTmV3fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxQdWJsaXNoRHJvcERvd25JdGVtXG4gICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXtvblB1Ymxpc2hBbmREdXBsaWNhdGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICAnJ1xuICAgICk7XG4gIH07XG5cbiAgcmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlLCBjYW5QdWJsaXNoLCBjYW5EZWxldGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgdW5QdWJsaXNoLCBvbkR1cGxpY2F0ZSwgaXNQZXJzaXN0aW5nLCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIGNhblB1Ymxpc2ggfHwgY2FuQ3JlYXRlID8gKFxuICAgICAgPFRvb2xiYXJEcm9wZG93blxuICAgICAgICBkcm9wZG93blRvcE92ZXJsYXA9XCI0MHB4XCJcbiAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAga2V5PVwidGQtcHVibGlzaC1jcmVhdGVcIlxuICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICA8UHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgICAgIHtpc1BlcnNpc3RpbmdcbiAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci51bnB1Ymxpc2hpbmcnKVxuICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hlZCcpfVxuICAgICAgICAgIDwvUHVibGlzaGVkVG9vbGJhckJ1dHRvbj5cbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAge2NhbkRlbGV0ZSAmJiBjYW5QdWJsaXNoICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIudW5wdWJsaXNoJyl9XG4gICAgICAgICAgICBpY29uPVwiYXJyb3dcIlxuICAgICAgICAgICAgaWNvbkRpcmVjdGlvbj1cInJpZ2h0XCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e3VuUHVibGlzaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7Y2FuQ3JlYXRlICYmIChcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1Rvb2xiYXJEcm9wZG93bj5cbiAgICApIDogKFxuICAgICAgJydcbiAgICApO1xuICB9O1xuXG4gIHJlbmRlckV4aXN0aW5nRW50cnlTaW1wbGVQdWJsaXNoQ29udHJvbHMgPSAoeyBjYW5DcmVhdGUgfSkgPT4ge1xuICAgIGNvbnN0IHsgb25EdXBsaWNhdGUsIHQgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIGNhbkNyZWF0ZSA/IChcbiAgICAgIDxUb29sYmFyRHJvcGRvd25cbiAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgIGRyb3Bkb3duV2lkdGg9XCIxNTBweFwiXG4gICAgICAgIHJlbmRlckJ1dHRvbj17KCkgPT4gKFxuICAgICAgICAgIDxQdWJsaXNoZWRUb29sYmFyQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZFRvb2xiYXJCdXR0b24+XG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIHtcbiAgICAgICAgICA8RHJvcGRvd25JdGVtXG4gICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZHVwbGljYXRlJyl9XG4gICAgICAgICAgICBpY29uPVwiYWRkXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9e29uRHVwbGljYXRlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICkgOiAoXG4gICAgICA8UHVibGlzaGVkQnV0dG9uPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoZWQnKX08L1B1Ymxpc2hlZEJ1dHRvbj5cbiAgICApO1xuICB9O1xuXG4gIHJlbmRlck5ld0VudHJ5U2ltcGxlUHVibGlzaENvbnRyb2xzID0gKHsgY2FuQ3JlYXRlIH0pID0+IHtcbiAgICBjb25zdCB7IG9uUGVyc2lzdCwgb25QZXJzaXN0QW5kTmV3LCBvblBlcnNpc3RBbmREdXBsaWNhdGUsIGlzUGVyc2lzdGluZywgdCB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2PlxuICAgICAgICA8VG9vbGJhckRyb3Bkb3duXG4gICAgICAgICAgZHJvcGRvd25Ub3BPdmVybGFwPVwiNDBweFwiXG4gICAgICAgICAgZHJvcGRvd25XaWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICByZW5kZXJCdXR0b249eygpID0+IChcbiAgICAgICAgICAgIDxQdWJsaXNoQnV0dG9uPlxuICAgICAgICAgICAgICB7aXNQZXJzaXN0aW5nXG4gICAgICAgICAgICAgICAgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoaW5nJylcbiAgICAgICAgICAgICAgICA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2gnKX1cbiAgICAgICAgICAgIDwvUHVibGlzaEJ1dHRvbj5cbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgbGFiZWw9e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnB1Ymxpc2hOb3cnKX1cbiAgICAgICAgICAgIGljb249XCJhcnJvd1wiXG4gICAgICAgICAgICBpY29uRGlyZWN0aW9uPVwicmlnaHRcIlxuICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge2NhbkNyZWF0ZSA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxEcm9wZG93bkl0ZW1cbiAgICAgICAgICAgICAgICBsYWJlbD17dCgnZWRpdG9yLmVkaXRvclRvb2xiYXIucHVibGlzaEFuZENyZWF0ZU5ldycpfVxuICAgICAgICAgICAgICAgIGljb249XCJhZGRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uUGVyc2lzdEFuZE5ld31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPERyb3Bkb3duSXRlbVxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5wdWJsaXNoQW5kRHVwbGljYXRlJyl9XG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25QZXJzaXN0QW5kRHVwbGljYXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvVG9vbGJhckRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfTtcblxuICByZW5kZXJTaW1wbGVEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBoYXNDaGFuZ2VkLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKCFpc05ld0VudHJ5ICYmICFoYXNDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcldvcmtmbG93Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgb25QZXJzaXN0LFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIHNob3dEZWxldGUsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgdXNlT3BlbkF1dGhvcmluZyxcbiAgICAgIGlzUGVyc2lzdGluZyxcbiAgICAgIGlzRGVsZXRpbmcsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgY29sbGVjdGlvbixcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjYW5DcmVhdGUgPSBjb2xsZWN0aW9uLmdldCgnY3JlYXRlJyk7XG4gICAgY29uc3QgY2FuUHVibGlzaCA9IGNvbGxlY3Rpb24uZ2V0KCdwdWJsaXNoJykgJiYgIXVzZU9wZW5BdXRob3Jpbmc7XG4gICAgY29uc3QgY2FuRGVsZXRlID0gY29sbGVjdGlvbi5nZXQoJ2RlbGV0ZScsIHRydWUpO1xuXG4gICAgY29uc3QgZGVsZXRlTGFiZWwgPVxuICAgICAgKGhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJlxuICAgICAgICBpc01vZGlmaWNhdGlvbiAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMnKSkgfHxcbiAgICAgIChoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiZcbiAgICAgICAgKGlzTmV3RW50cnkgfHwgIWlzTW9kaWZpY2F0aW9uKSAmJlxuICAgICAgICB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZWxldGVVbnB1Ymxpc2hlZEVudHJ5JykpIHx8XG4gICAgICAoIWhhc1VucHVibGlzaGVkQ2hhbmdlcyAmJiAhaXNNb2RpZmljYXRpb24gJiYgdCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVsZXRlUHVibGlzaGVkRW50cnknKSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgPFNhdmVCdXR0b25cbiAgICAgICAgZGlzYWJsZWQ9eyFoYXNDaGFuZ2VkfVxuICAgICAgICBrZXk9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGhhc0NoYW5nZWQgJiYgb25QZXJzaXN0KCl9XG4gICAgICA+XG4gICAgICAgIHtpc1BlcnNpc3RpbmcgPyB0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5zYXZpbmcnKSA6IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnNhdmUnKX1cbiAgICAgIDwvU2F2ZUJ1dHRvbj4sXG4gICAgICBjdXJyZW50U3RhdHVzXG4gICAgICAgID8gW1xuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cIndvcmtmbG93LXN0YXR1cy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJXb3JrZmxvd1N0YXR1c0NvbnRyb2xzKCl9XG4gICAgICAgICAgICAgIHshaGFzQ2hhbmdlZCAmJiB0aGlzLnJlbmRlck5ld0VudHJ5V29ya2Zsb3dQdWJsaXNoQ29udHJvbHMoeyBjYW5DcmVhdGUsIGNhblB1Ymxpc2ggfSl9XG4gICAgICAgICAgICA8L1JlYWN0LkZyYWdtZW50PixcbiAgICAgICAgICBdXG4gICAgICAgIDogIWlzTmV3RW50cnkgJiYgKFxuICAgICAgICAgICAgPFJlYWN0LkZyYWdtZW50IGtleT1cImV4aXN0aW5nLWVudHJ5LXdvcmtmbG93LXB1Ymxpc2gtY29udHJvbHNcIj5cbiAgICAgICAgICAgICAge3RoaXMucmVuZGVyRXhpc3RpbmdFbnRyeVdvcmtmbG93UHVibGlzaENvbnRyb2xzKHtcbiAgICAgICAgICAgICAgICBjYW5DcmVhdGUsXG4gICAgICAgICAgICAgICAgY2FuUHVibGlzaCxcbiAgICAgICAgICAgICAgICBjYW5EZWxldGUsXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICAgICAgICApLFxuICAgICAgKCFzaG93RGVsZXRlIHx8IHVzZU9wZW5BdXRob3JpbmcpICYmICFoYXNVbnB1Ymxpc2hlZENoYW5nZXMgJiYgIWlzTW9kaWZpY2F0aW9uID8gbnVsbCA6IChcbiAgICAgICAgPERlbGV0ZUJ1dHRvblxuICAgICAgICAgIGtleT1cImRlbGV0ZS1idXR0b25cIlxuICAgICAgICAgIG9uQ2xpY2s9e2hhc1VucHVibGlzaGVkQ2hhbmdlcyA/IG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzIDogb25EZWxldGV9XG4gICAgICAgID5cbiAgICAgICAgICB7aXNEZWxldGluZyA/IHQoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmRlbGV0aW5nJykgOiBkZWxldGVMYWJlbH1cbiAgICAgICAgPC9EZWxldGVCdXR0b24+XG4gICAgICApLFxuICAgIF07XG4gIH07XG5cbiAgcmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjdXJyZW50U3RhdHVzLCBpc05ld0VudHJ5LCB0IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGN1cnJlbnRTdGF0dXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbmRlckRlcGxveVByZXZpZXdDb250cm9scyh0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5kZXBsb3lQcmV2aWV3QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHVibGlzaCBjb250cm9sIGZvciBwdWJsaXNoZWQgd29ya2Zsb3cgZW50cnkuXG4gICAgICovXG4gICAgaWYgKCFpc05ld0VudHJ5KSB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJEZXBsb3lQcmV2aWV3Q29udHJvbHModCgnZWRpdG9yLmVkaXRvclRvb2xiYXIuZGVwbG95QnV0dG9uTGFiZWwnKSk7XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICB1c2VyLFxuICAgICAgaGFzQ2hhbmdlZCxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgdCxcbiAgICAgIGVkaXRvckJhY2tMaW5rLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxUb29sYmFyQ29udGFpbmVyPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25CYWNrTGluayB0bz17ZWRpdG9yQmFja0xpbmt9PlxuICAgICAgICAgIDxCYWNrQXJyb3c+4oaQPC9CYWNrQXJyb3c+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxCYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgICAge3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLmJhY2tDb2xsZWN0aW9uJywge1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25MYWJlbDogY29sbGVjdGlvbi5nZXQoJ2xhYmVsJyksXG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgPC9CYWNrQ29sbGVjdGlvbj5cbiAgICAgICAgICAgIHtoYXNDaGFuZ2VkID8gKFxuICAgICAgICAgICAgICA8QmFja1N0YXR1c0NoYW5nZWQ+e3QoJ2VkaXRvci5lZGl0b3JUb29sYmFyLnVuc2F2ZWRDaGFuZ2VzJyl9PC9CYWNrU3RhdHVzQ2hhbmdlZD5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCYWNrU3RhdHVzVW5jaGFuZ2VkPnt0KCdlZGl0b3IuZWRpdG9yVG9vbGJhci5jaGFuZ2VzU2F2ZWQnKX08L0JhY2tTdGF0dXNVbmNoYW5nZWQ+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2xiYXJTZWN0aW9uQmFja0xpbms+XG4gICAgICAgIDxUb29sYmFyU2VjdGlvbk1haW4+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgICB7aGFzV29ya2Zsb3cgPyB0aGlzLnJlbmRlcldvcmtmbG93Q29udHJvbHMoKSA6IHRoaXMucmVuZGVyU2ltcGxlQ29udHJvbHMoKX1cbiAgICAgICAgICA8L1Rvb2xiYXJTdWJTZWN0aW9uRmlyc3Q+XG4gICAgICAgICAgPFRvb2xiYXJTdWJTZWN0aW9uTGFzdD5cbiAgICAgICAgICAgIHtoYXNXb3JrZmxvd1xuICAgICAgICAgICAgICA/IHRoaXMucmVuZGVyV29ya2Zsb3dEZXBsb3lQcmV2aWV3Q29udHJvbHMoKVxuICAgICAgICAgICAgICA6IHRoaXMucmVuZGVyU2ltcGxlRGVwbG95UHJldmlld0NvbnRyb2xzKCl9XG4gICAgICAgICAgPC9Ub29sYmFyU3ViU2VjdGlvbkxhc3Q+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NYWluPlxuICAgICAgICA8VG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgICAgIDxTZXR0aW5nc0Ryb3Bkb3duXG4gICAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgICAgaW1hZ2VVcmw9e3VzZXI/LmF2YXRhcl91cmx9XG4gICAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvVG9vbGJhclNlY3Rpb25NZXRhPlxuICAgICAgPC9Ub29sYmFyQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdHJhbnNsYXRlKCkoRWRpdG9yVG9vbGJhcik7XG4iXX0= */"));
198
+ export class EditorToolbar extends React.Component {
205
199
  constructor(...args) {
206
200
  super(...args);
207
201
  _defineProperty(this, "renderSimpleControls", () => {
@@ -214,11 +208,11 @@ class EditorToolbar extends _react.default.Component {
214
208
  t
215
209
  } = this.props;
216
210
  const canCreate = collection.get('create');
217
- return (0, _react2.jsx)(_react.default.Fragment, null, !isNewEntry && !hasChanged ? this.renderExistingEntrySimplePublishControls({
211
+ return ___EmotionJSX(React.Fragment, null, !isNewEntry && !hasChanged ? this.renderExistingEntrySimplePublishControls({
218
212
  canCreate
219
213
  }) : this.renderNewEntrySimplePublishControls({
220
214
  canCreate
221
- }), (0, _react2.jsx)("div", null, showDelete ? (0, _react2.jsx)(DeleteButton, {
215
+ }), ___EmotionJSX("div", null, showDelete ? ___EmotionJSX(DeleteButton, {
222
216
  onClick: onDelete
223
217
  }, t('editor.editorToolbar.deleteEntry')) : null));
224
218
  });
@@ -237,16 +231,16 @@ class EditorToolbar extends _react.default.Component {
237
231
  return;
238
232
  }
239
233
  const deployPreviewReady = status === 'SUCCESS' && !isFetching;
240
- return (0, _react2.jsx)(PreviewButtonContainer, null, deployPreviewReady ? (0, _react2.jsx)(PreviewLink, {
234
+ return ___EmotionJSX(PreviewButtonContainer, null, deployPreviewReady ? ___EmotionJSX(PreviewLink, {
241
235
  rel: "noopener noreferrer",
242
236
  target: "_blank",
243
237
  href: url
244
- }, (0, _react2.jsx)("span", null, label), (0, _react2.jsx)(_decapCmsUiDefault.Icon, {
238
+ }, ___EmotionJSX("span", null, label), ___EmotionJSX(Icon, {
245
239
  type: "new-tab",
246
240
  size: "xsmall"
247
- })) : (0, _react2.jsx)(RefreshPreviewButton, {
241
+ })) : ___EmotionJSX(RefreshPreviewButton, {
248
242
  onClick: loadDeployPreview
249
- }, (0, _react2.jsx)("span", null, t('editor.editorToolbar.deployPreviewPendingButtonLabel')), (0, _react2.jsx)(_decapCmsUiDefault.Icon, {
243
+ }, ___EmotionJSX("span", null, t('editor.editorToolbar.deployPreviewPendingButtonLabel')), ___EmotionJSX(Icon, {
250
244
  type: "refresh",
251
245
  size: "xsmall"
252
246
  })));
@@ -257,15 +251,15 @@ class EditorToolbar extends _react.default.Component {
257
251
  currentStatus
258
252
  } = this.props;
259
253
  const statusToLocaleKey = {
260
- [_publishModes.status.get('DRAFT')]: 'statusInfoTooltipDraft',
261
- [_publishModes.status.get('PENDING_REVIEW')]: 'statusInfoTooltipInReview'
254
+ [status.get('DRAFT')]: 'statusInfoTooltipDraft',
255
+ [status.get('PENDING_REVIEW')]: 'statusInfoTooltipInReview'
262
256
  };
263
257
  const statusKey = Object.keys(statusToLocaleKey).find(key => key === currentStatus);
264
- return (0, _react2.jsx)(TooltipContainer, null, (0, _react2.jsx)(Tooltip, null, (0, _react2.jsx)(_decapCmsUiDefault.Icon, {
258
+ return ___EmotionJSX(TooltipContainer, null, ___EmotionJSX(Tooltip, null, ___EmotionJSX(Icon, {
265
259
  type: "info-circle",
266
260
  size: "small",
267
261
  className: "tooltip"
268
- })), statusKey && (0, _react2.jsx)(TooltipText, null, t(`editor.editorToolbar.${statusToLocaleKey[statusKey]}`)));
262
+ })), statusKey && ___EmotionJSX(TooltipText, null, t(`editor.editorToolbar.${statusToLocaleKey[statusKey]}`)));
269
263
  });
270
264
  _defineProperty(this, "renderWorkflowStatusControls", () => {
271
265
  const {
@@ -276,29 +270,29 @@ class EditorToolbar extends _react.default.Component {
276
270
  useOpenAuthoring
277
271
  } = this.props;
278
272
  const statusToTranslation = {
279
- [_publishModes.status.get('DRAFT')]: t('editor.editorToolbar.draft'),
280
- [_publishModes.status.get('PENDING_REVIEW')]: t('editor.editorToolbar.inReview'),
281
- [_publishModes.status.get('PENDING_PUBLISH')]: t('editor.editorToolbar.ready')
273
+ [status.get('DRAFT')]: t('editor.editorToolbar.draft'),
274
+ [status.get('PENDING_REVIEW')]: t('editor.editorToolbar.inReview'),
275
+ [status.get('PENDING_PUBLISH')]: t('editor.editorToolbar.ready')
282
276
  };
283
277
  const buttonText = isUpdatingStatus ? t('editor.editorToolbar.updating') : t('editor.editorToolbar.status', {
284
278
  status: statusToTranslation[currentStatus]
285
279
  });
286
- return (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(ToolbarDropdown, {
280
+ return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(ToolbarDropdown, {
287
281
  dropdownTopOverlap: "40px",
288
282
  dropdownWidth: "120px",
289
- renderButton: () => (0, _react2.jsx)(StatusButton, null, buttonText)
290
- }, (0, _react2.jsx)(StatusDropdownItem, {
283
+ renderButton: () => ___EmotionJSX(StatusButton, null, buttonText)
284
+ }, ___EmotionJSX(StatusDropdownItem, {
291
285
  label: t('editor.editorToolbar.draft'),
292
286
  onClick: () => onChangeStatus('DRAFT'),
293
- icon: currentStatus === _publishModes.status.get('DRAFT') ? 'check' : null
294
- }), (0, _react2.jsx)(StatusDropdownItem, {
287
+ icon: currentStatus === status.get('DRAFT') ? 'check' : null
288
+ }), ___EmotionJSX(StatusDropdownItem, {
295
289
  label: t('editor.editorToolbar.inReview'),
296
290
  onClick: () => onChangeStatus('PENDING_REVIEW'),
297
- icon: currentStatus === _publishModes.status.get('PENDING_REVIEW') ? 'check' : null
298
- }), useOpenAuthoring ? '' : (0, _react2.jsx)(StatusDropdownItem, {
291
+ icon: currentStatus === status.get('PENDING_REVIEW') ? 'check' : null
292
+ }), useOpenAuthoring ? '' : ___EmotionJSX(StatusDropdownItem, {
299
293
  label: t('editor.editorToolbar.ready'),
300
294
  onClick: () => onChangeStatus('PENDING_PUBLISH'),
301
- icon: currentStatus === _publishModes.status.get('PENDING_PUBLISH') ? 'check' : null
295
+ icon: currentStatus === status.get('PENDING_PUBLISH') ? 'check' : null
302
296
  })), useOpenAuthoring && this.renderStatusInfoTooltip());
303
297
  });
304
298
  _defineProperty(this, "renderNewEntryWorkflowPublishControls", ({
@@ -312,20 +306,20 @@ class EditorToolbar extends _react.default.Component {
312
306
  onPublishAndDuplicate,
313
307
  t
314
308
  } = this.props;
315
- return canPublish ? (0, _react2.jsx)(ToolbarDropdown, {
309
+ return canPublish ? ___EmotionJSX(ToolbarDropdown, {
316
310
  dropdownTopOverlap: "40px",
317
311
  dropdownWidth: "200px",
318
- renderButton: () => (0, _react2.jsx)(PublishButton, null, isPublishing ? t('editor.editorToolbar.publishing') : t('editor.editorToolbar.publish'))
319
- }, (0, _react2.jsx)(PublishDropDownItem, {
312
+ renderButton: () => ___EmotionJSX(PublishButton, null, isPublishing ? t('editor.editorToolbar.publishing') : t('editor.editorToolbar.publish'))
313
+ }, ___EmotionJSX(PublishDropDownItem, {
320
314
  label: t('editor.editorToolbar.publishNow'),
321
315
  icon: "arrow",
322
316
  iconDirection: "right",
323
317
  onClick: onPublish
324
- }), canCreate ? (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(PublishDropDownItem, {
318
+ }), canCreate ? ___EmotionJSX(React.Fragment, null, ___EmotionJSX(PublishDropDownItem, {
325
319
  label: t('editor.editorToolbar.publishAndCreateNew'),
326
320
  icon: "add",
327
321
  onClick: onPublishAndNew
328
- }), (0, _react2.jsx)(PublishDropDownItem, {
322
+ }), ___EmotionJSX(PublishDropDownItem, {
329
323
  label: t('editor.editorToolbar.publishAndDuplicate'),
330
324
  icon: "add",
331
325
  onClick: onPublishAndDuplicate
@@ -342,17 +336,17 @@ class EditorToolbar extends _react.default.Component {
342
336
  isPersisting,
343
337
  t
344
338
  } = this.props;
345
- return canPublish || canCreate ? (0, _react2.jsx)(ToolbarDropdown, {
339
+ return canPublish || canCreate ? ___EmotionJSX(ToolbarDropdown, {
346
340
  dropdownTopOverlap: "40px",
347
341
  dropdownWidth: "150px",
348
342
  key: "td-publish-create",
349
- renderButton: () => (0, _react2.jsx)(PublishedToolbarButton, null, isPersisting ? t('editor.editorToolbar.unpublishing') : t('editor.editorToolbar.published'))
350
- }, canDelete && canPublish && (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
343
+ renderButton: () => ___EmotionJSX(PublishedToolbarButton, null, isPersisting ? t('editor.editorToolbar.unpublishing') : t('editor.editorToolbar.published'))
344
+ }, canDelete && canPublish && ___EmotionJSX(DropdownItem, {
351
345
  label: t('editor.editorToolbar.unpublish'),
352
346
  icon: "arrow",
353
347
  iconDirection: "right",
354
348
  onClick: unPublish
355
- }), canCreate && (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
349
+ }), canCreate && ___EmotionJSX(DropdownItem, {
356
350
  label: t('editor.editorToolbar.duplicate'),
357
351
  icon: "add",
358
352
  onClick: onDuplicate
@@ -365,15 +359,15 @@ class EditorToolbar extends _react.default.Component {
365
359
  onDuplicate,
366
360
  t
367
361
  } = this.props;
368
- return canCreate ? (0, _react2.jsx)(ToolbarDropdown, {
362
+ return canCreate ? ___EmotionJSX(ToolbarDropdown, {
369
363
  dropdownTopOverlap: "40px",
370
364
  dropdownWidth: "150px",
371
- renderButton: () => (0, _react2.jsx)(PublishedToolbarButton, null, t('editor.editorToolbar.published'))
372
- }, (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
365
+ renderButton: () => ___EmotionJSX(PublishedToolbarButton, null, t('editor.editorToolbar.published'))
366
+ }, ___EmotionJSX(DropdownItem, {
373
367
  label: t('editor.editorToolbar.duplicate'),
374
368
  icon: "add",
375
369
  onClick: onDuplicate
376
- })) : (0, _react2.jsx)(PublishedButton, null, t('editor.editorToolbar.published'));
370
+ })) : ___EmotionJSX(PublishedButton, null, t('editor.editorToolbar.published'));
377
371
  });
378
372
  _defineProperty(this, "renderNewEntrySimplePublishControls", ({
379
373
  canCreate
@@ -385,20 +379,20 @@ class EditorToolbar extends _react.default.Component {
385
379
  isPersisting,
386
380
  t
387
381
  } = this.props;
388
- return (0, _react2.jsx)("div", null, (0, _react2.jsx)(ToolbarDropdown, {
382
+ return ___EmotionJSX("div", null, ___EmotionJSX(ToolbarDropdown, {
389
383
  dropdownTopOverlap: "40px",
390
384
  dropdownWidth: "150px",
391
- renderButton: () => (0, _react2.jsx)(PublishButton, null, isPersisting ? t('editor.editorToolbar.publishing') : t('editor.editorToolbar.publish'))
392
- }, (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
385
+ renderButton: () => ___EmotionJSX(PublishButton, null, isPersisting ? t('editor.editorToolbar.publishing') : t('editor.editorToolbar.publish'))
386
+ }, ___EmotionJSX(DropdownItem, {
393
387
  label: t('editor.editorToolbar.publishNow'),
394
388
  icon: "arrow",
395
389
  iconDirection: "right",
396
390
  onClick: onPersist
397
- }), canCreate ? (0, _react2.jsx)(_react.default.Fragment, null, (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
391
+ }), canCreate ? ___EmotionJSX(React.Fragment, null, ___EmotionJSX(DropdownItem, {
398
392
  label: t('editor.editorToolbar.publishAndCreateNew'),
399
393
  icon: "add",
400
394
  onClick: onPersistAndNew
401
- }), (0, _react2.jsx)(_decapCmsUiDefault.DropdownItem, {
395
+ }), ___EmotionJSX(DropdownItem, {
402
396
  label: t('editor.editorToolbar.publishAndDuplicate'),
403
397
  icon: "add",
404
398
  onClick: onPersistAndDuplicate
@@ -435,22 +429,22 @@ class EditorToolbar extends _react.default.Component {
435
429
  const canPublish = collection.get('publish') && !useOpenAuthoring;
436
430
  const canDelete = collection.get('delete', true);
437
431
  const deleteLabel = hasUnpublishedChanges && isModification && t('editor.editorToolbar.deleteUnpublishedChanges') || hasUnpublishedChanges && (isNewEntry || !isModification) && t('editor.editorToolbar.deleteUnpublishedEntry') || !hasUnpublishedChanges && !isModification && t('editor.editorToolbar.deletePublishedEntry');
438
- return [(0, _react2.jsx)(SaveButton, {
432
+ return [___EmotionJSX(SaveButton, {
439
433
  disabled: !hasChanged,
440
434
  key: "save-button",
441
435
  onClick: () => hasChanged && onPersist()
442
- }, isPersisting ? t('editor.editorToolbar.saving') : t('editor.editorToolbar.save')), currentStatus ? [(0, _react2.jsx)(_react.default.Fragment, {
436
+ }, isPersisting ? t('editor.editorToolbar.saving') : t('editor.editorToolbar.save')), currentStatus ? [___EmotionJSX(React.Fragment, {
443
437
  key: "workflow-status-controls"
444
438
  }, this.renderWorkflowStatusControls(), !hasChanged && this.renderNewEntryWorkflowPublishControls({
445
439
  canCreate,
446
440
  canPublish
447
- }))] : !isNewEntry && (0, _react2.jsx)(_react.default.Fragment, {
441
+ }))] : !isNewEntry && ___EmotionJSX(React.Fragment, {
448
442
  key: "existing-entry-workflow-publish-controls"
449
443
  }, this.renderExistingEntryWorkflowPublishControls({
450
444
  canCreate,
451
445
  canPublish,
452
446
  canDelete
453
- })), (!showDelete || useOpenAuthoring) && !hasUnpublishedChanges && !isModification ? null : (0, _react2.jsx)(DeleteButton, {
447
+ })), (!showDelete || useOpenAuthoring) && !hasUnpublishedChanges && !isModification ? null : ___EmotionJSX(DeleteButton, {
454
448
  key: "delete-button",
455
449
  onClick: hasUnpublishedChanges ? onDeleteUnpublishedChanges : onDelete
456
450
  }, isDeleting ? t('editor.editorToolbar.deleting') : deleteLabel)];
@@ -507,49 +501,48 @@ class EditorToolbar extends _react.default.Component {
507
501
  t,
508
502
  editorBackLink
509
503
  } = this.props;
510
- return (0, _react2.jsx)(ToolbarContainer, null, (0, _react2.jsx)(ToolbarSectionBackLink, {
504
+ return ___EmotionJSX(ToolbarContainer, null, ___EmotionJSX(ToolbarSectionBackLink, {
511
505
  to: editorBackLink
512
- }, (0, _react2.jsx)(BackArrow, null, "\u2190"), (0, _react2.jsx)("div", null, (0, _react2.jsx)(BackCollection, null, t('editor.editorToolbar.backCollection', {
506
+ }, ___EmotionJSX(BackArrow, null, "\u2190"), ___EmotionJSX("div", null, ___EmotionJSX(BackCollection, null, t('editor.editorToolbar.backCollection', {
513
507
  collectionLabel: collection.get('label')
514
- })), hasChanged ? (0, _react2.jsx)(BackStatusChanged, null, t('editor.editorToolbar.unsavedChanges')) : (0, _react2.jsx)(BackStatusUnchanged, null, t('editor.editorToolbar.changesSaved')))), (0, _react2.jsx)(ToolbarSectionMain, null, (0, _react2.jsx)(ToolbarSubSectionFirst, null, hasWorkflow ? this.renderWorkflowControls() : this.renderSimpleControls()), (0, _react2.jsx)(ToolbarSubSectionLast, null, hasWorkflow ? this.renderWorkflowDeployPreviewControls() : this.renderSimpleDeployPreviewControls())), (0, _react2.jsx)(ToolbarSectionMeta, null, (0, _react2.jsx)(_UI.SettingsDropdown, {
508
+ })), hasChanged ? ___EmotionJSX(BackStatusChanged, null, t('editor.editorToolbar.unsavedChanges')) : ___EmotionJSX(BackStatusUnchanged, null, t('editor.editorToolbar.changesSaved')))), ___EmotionJSX(ToolbarSectionMain, null, ___EmotionJSX(ToolbarSubSectionFirst, null, hasWorkflow ? this.renderWorkflowControls() : this.renderSimpleControls()), ___EmotionJSX(ToolbarSubSectionLast, null, hasWorkflow ? this.renderWorkflowDeployPreviewControls() : this.renderSimpleDeployPreviewControls())), ___EmotionJSX(ToolbarSectionMeta, null, ___EmotionJSX(SettingsDropdown, {
515
509
  displayUrl: displayUrl,
516
510
  imageUrl: user === null || user === void 0 ? void 0 : user.avatar_url,
517
511
  onLogoutClick: onLogoutClick
518
512
  })));
519
513
  }
520
514
  }
521
- exports.EditorToolbar = EditorToolbar;
522
515
  _defineProperty(EditorToolbar, "propTypes", {
523
- isPersisting: _propTypes.default.bool,
524
- isPublishing: _propTypes.default.bool,
525
- isUpdatingStatus: _propTypes.default.bool,
526
- isDeleting: _propTypes.default.bool,
527
- onPersist: _propTypes.default.func.isRequired,
528
- onPersistAndNew: _propTypes.default.func.isRequired,
529
- onPersistAndDuplicate: _propTypes.default.func.isRequired,
530
- showDelete: _propTypes.default.bool.isRequired,
531
- onDelete: _propTypes.default.func.isRequired,
532
- onDeleteUnpublishedChanges: _propTypes.default.func.isRequired,
533
- onChangeStatus: _propTypes.default.func.isRequired,
534
- onPublish: _propTypes.default.func.isRequired,
535
- unPublish: _propTypes.default.func.isRequired,
536
- onDuplicate: _propTypes.default.func.isRequired,
537
- onPublishAndNew: _propTypes.default.func.isRequired,
538
- onPublishAndDuplicate: _propTypes.default.func.isRequired,
539
- user: _propTypes.default.object,
540
- hasChanged: _propTypes.default.bool,
541
- displayUrl: _propTypes.default.string,
542
- collection: _reactImmutableProptypes.default.map.isRequired,
543
- hasWorkflow: _propTypes.default.bool,
544
- useOpenAuthoring: _propTypes.default.bool,
545
- hasUnpublishedChanges: _propTypes.default.bool,
546
- isNewEntry: _propTypes.default.bool,
547
- isModification: _propTypes.default.bool,
548
- currentStatus: _propTypes.default.string,
549
- onLogoutClick: _propTypes.default.func.isRequired,
550
- deployPreview: _propTypes.default.object,
551
- loadDeployPreview: _propTypes.default.func.isRequired,
552
- t: _propTypes.default.func.isRequired,
553
- editorBackLink: _propTypes.default.string.isRequired
516
+ isPersisting: PropTypes.bool,
517
+ isPublishing: PropTypes.bool,
518
+ isUpdatingStatus: PropTypes.bool,
519
+ isDeleting: PropTypes.bool,
520
+ onPersist: PropTypes.func.isRequired,
521
+ onPersistAndNew: PropTypes.func.isRequired,
522
+ onPersistAndDuplicate: PropTypes.func.isRequired,
523
+ showDelete: PropTypes.bool.isRequired,
524
+ onDelete: PropTypes.func.isRequired,
525
+ onDeleteUnpublishedChanges: PropTypes.func.isRequired,
526
+ onChangeStatus: PropTypes.func.isRequired,
527
+ onPublish: PropTypes.func.isRequired,
528
+ unPublish: PropTypes.func.isRequired,
529
+ onDuplicate: PropTypes.func.isRequired,
530
+ onPublishAndNew: PropTypes.func.isRequired,
531
+ onPublishAndDuplicate: PropTypes.func.isRequired,
532
+ user: PropTypes.object,
533
+ hasChanged: PropTypes.bool,
534
+ displayUrl: PropTypes.string,
535
+ collection: ImmutablePropTypes.map.isRequired,
536
+ hasWorkflow: PropTypes.bool,
537
+ useOpenAuthoring: PropTypes.bool,
538
+ hasUnpublishedChanges: PropTypes.bool,
539
+ isNewEntry: PropTypes.bool,
540
+ isModification: PropTypes.bool,
541
+ currentStatus: PropTypes.string,
542
+ onLogoutClick: PropTypes.func.isRequired,
543
+ deployPreview: PropTypes.object,
544
+ loadDeployPreview: PropTypes.func.isRequired,
545
+ t: PropTypes.func.isRequired,
546
+ editorBackLink: PropTypes.string.isRequired
554
547
  });
555
- var _default = exports.default = (0, _reactPolyglot.translate)()(EditorToolbar);
548
+ export default translate()(EditorToolbar);