UNPKG

decap-cms-core

Version:

Decap CMS core application, see decap-cms package for the main distribution.

42 lines 295 kB
import _styled from "@emotion/styled/base"; 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)."; } import PropTypes from 'prop-types'; import { Component } from 'react'; import ImmutablePropTypes from 'react-immutable-proptypes'; import { css, Global } from '@emotion/react'; import SplitPane from 'react-split-pane'; import { colors, colorsRaw, components, transitions, IconButton, zIndex } from 'decap-cms-ui-default'; import { ScrollSync, ScrollSyncPane } from 'react-scroll-sync'; import EditorControlPane from './EditorControlPane/EditorControlPane'; import EditorPreviewPane from './EditorPreviewPane/EditorPreviewPane'; import EditorNotesPane from './EditorNotesPane/EditorNotesPane'; import EditorToolbar from './EditorToolbar'; import { hasI18n, getI18nInfo, getPreviewEntry } from '../../lib/i18n'; import { FILES } from '../../constants/collectionTypes'; import { getFileFromSlug } from '../../reducers/collections'; import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime"; const PREVIEW_VISIBLE = 'cms.preview-visible'; const NOTES_VISIBLE = 'cms.notes-visible'; const SCROLL_SYNC_ENABLED = 'cms.scroll-sync-enabled'; const SPLIT_PANE_POSITION = 'cms.split-pane-position'; const I18N_VISIBLE = 'cms.i18n-visible'; const styles = { splitPane: /*#__PURE__*/css(components.card, ";border-radius:0;height:100%;;label:splitPane;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JJbnRlcmZhY2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0JnQiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9FZGl0b3IvRWRpdG9ySW50ZXJmYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MsIEdsb2JhbCB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCBTcGxpdFBhbmUgZnJvbSAncmVhY3Qtc3BsaXQtcGFuZSc7XG5pbXBvcnQge1xuICBjb2xvcnMsXG4gIGNvbG9yc1JhdyxcbiAgY29tcG9uZW50cyxcbiAgdHJhbnNpdGlvbnMsXG4gIEljb25CdXR0b24sXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgU2Nyb2xsU3luYywgU2Nyb2xsU3luY1BhbmUgfSBmcm9tICdyZWFjdC1zY3JvbGwtc3luYyc7XG5cbmltcG9ydCBFZGl0b3JDb250cm9sUGFuZSBmcm9tICcuL0VkaXRvckNvbnRyb2xQYW5lL0VkaXRvckNvbnRyb2xQYW5lJztcbmltcG9ydCBFZGl0b3JQcmV2aWV3UGFuZSBmcm9tICcuL0VkaXRvclByZXZpZXdQYW5lL0VkaXRvclByZXZpZXdQYW5lJztcbmltcG9ydCBFZGl0b3JOb3Rlc1BhbmUgZnJvbSAnLi9FZGl0b3JOb3Rlc1BhbmUvRWRpdG9yTm90ZXNQYW5lJztcbmltcG9ydCBFZGl0b3JUb29sYmFyIGZyb20gJy4vRWRpdG9yVG9vbGJhcic7XG5pbXBvcnQgeyBoYXNJMThuLCBnZXRJMThuSW5mbywgZ2V0UHJldmlld0VudHJ5IH0gZnJvbSAnLi4vLi4vbGliL2kxOG4nO1xuaW1wb3J0IHsgRklMRVMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29sbGVjdGlvblR5cGVzJztcbmltcG9ydCB7IGdldEZpbGVGcm9tU2x1ZyB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL2NvbGxlY3Rpb25zJztcblxuY29uc3QgUFJFVklFV19WSVNJQkxFID0gJ2Ntcy5wcmV2aWV3LXZpc2libGUnO1xuY29uc3QgTk9URVNfVklTSUJMRSA9ICdjbXMubm90ZXMtdmlzaWJsZSc7XG5jb25zdCBTQ1JPTExfU1lOQ19FTkFCTEVEID0gJ2Ntcy5zY3JvbGwtc3luYy1lbmFibGVkJztcbmNvbnN0IFNQTElUX1BBTkVfUE9TSVRJT04gPSAnY21zLnNwbGl0LXBhbmUtcG9zaXRpb24nO1xuY29uc3QgSTE4Tl9WSVNJQkxFID0gJ2Ntcy5pMThuLXZpc2libGUnO1xuXG5jb25zdCBzdHlsZXMgPSB7XG4gIHNwbGl0UGFuZTogY3NzYFxuICAgICR7Y29tcG9uZW50cy5jYXJkfTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYCxcbiAgcGFuZTogY3NzYFxuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICBgLFxufTtcblxuY29uc3QgRWRpdG9yVG9nZ2xlID0gc3R5bGVkKEljb25CdXR0b24pYFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuZnVuY3Rpb24gUmVhY3RTcGxpdFBhbmVHbG9iYWxTdHlsZXMoKSB7XG4gIHJldHVybiAoXG4gICAgPEdsb2JhbFxuICAgICAgc3R5bGVzPXtjc3NgXG4gICAgICAgIC5SZXNpemVyLnZlcnRpY2FsIHtcbiAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgIGN1cnNvcjogY29sLXJlc2l6ZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzLnRleHRGaWVsZEJvcmRlcn07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAke3RyYW5zaXRpb25zLm1haW59O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICAgICAgICBsZWZ0OiAtMXB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9yc1Jhdy5ibHVlfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIGB9XG4gICAgLz5cbiAgKTtcbn1cblxuY29uc3QgU3R5bGVkU3BsaXRQYW5lID0gc3R5bGVkKFNwbGl0UGFuZSlgXG4gICR7c3R5bGVzLnNwbGl0UGFuZX07XG5cbiAgLyoqXG4gICAqIFF1aWNrIGZpeCBmb3IgcHJldmlldyBwYW5lIG5vdCBmdWxseSBkaXNwbGF5aW5nIGluIFNhZmFyaVxuICAgKi9cbiAgLlBhbmUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuYDtcblxuY29uc3QgTm9QcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMuc3BsaXRQYW5lfTtcbmA7XG5cbmNvbnN0IEVkaXRvckNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDgwMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogNjZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMuYmFja2dyb3VuZH07XG5gO1xuXG5jb25zdCBFZGl0b3IgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG5jb25zdCBQcmV2aWV3UGFuZUNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6ICR7cHJvcHMgPT4gKHByb3BzLmJsb2NrRW50cnkgPyAnbm9uZScgOiAnYXV0bycpfTtcbiAgb3ZlcmZsb3cteTogJHtwcm9wcyA9PiAocHJvcHMub3ZlckZsb3cgPyAnYXV0bycgOiAnaGlkZGVuJyl9O1xuYDtcblxuY29uc3QgQ29udHJvbFBhbmVDb250YWluZXIgPSBzdHlsZWQoUHJldmlld1BhbmVDb250YWluZXIpYFxuICBwYWRkaW5nOiAwIDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuYDtcblxuY29uc3QgTm90ZXNQYW5lQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogJHtwcm9wcyA9PiAocHJvcHMuYmxvY2tFbnRyeSA/ICdub25lJyA6ICdhdXRvJyl9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuYDtcblxuY29uc3QgVmlld0NvbnRyb2xzID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB6LWluZGV4OiAke3pJbmRleC56SW5kZXgyOTl9O1xuYDtcblxuZnVuY3Rpb24gRWRpdG9yQ29udGVudCh7XG4gIGkxOG5WaXNpYmxlLFxuICBwcmV2aWV3VmlzaWJsZSxcbiAgbm90ZXNWaXNpYmxlLFxuICBlZGl0b3IsXG4gIGVkaXRvcldpdGhFZGl0b3IsXG4gIGVkaXRvcldpdGhQcmV2aWV3LFxuICBlZGl0b3JXaXRoTm90ZXMsXG59KSB7XG4gIGlmIChpMThuVmlzaWJsZSkge1xuICAgIHJldHVybiBlZGl0b3JXaXRoRWRpdG9yO1xuICB9IGVsc2UgaWYgKG5vdGVzVmlzaWJsZSkge1xuICAgIHJldHVybiBlZGl0b3JXaXRoTm90ZXM7XG4gIH0gZWxzZSBpZiAocHJldmlld1Zpc2libGUpIHtcbiAgICByZXR1cm4gZWRpdG9yV2l0aFByZXZpZXc7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIDxOb1ByZXZpZXdDb250YWluZXI+e2VkaXRvcn08L05vUHJldmlld0NvbnRhaW5lcj47XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNQcmV2aWV3RW5hYmxlZChjb2xsZWN0aW9uLCBlbnRyeSkge1xuICBpZiAoY29sbGVjdGlvbi5nZXQoJ3R5cGUnKSA9PT0gRklMRVMpIHtcbiAgICBjb25zdCBmaWxlID0gZ2V0RmlsZUZyb21TbHVnKGNvbGxlY3Rpb24sIGVudHJ5LmdldCgnc2x1ZycpKTtcbiAgICBjb25zdCBwcmV2aWV3RW5hYmxlZCA9IGZpbGU/LmdldEluKFsnZWRpdG9yJywgJ3ByZXZpZXcnXSk7XG4gICAgaWYgKHByZXZpZXdFbmFibGVkICE9IG51bGwpIHJldHVybiBwcmV2aWV3RW5hYmxlZDtcbiAgfVxuICByZXR1cm4gY29sbGVjdGlvbi5nZXRJbihbJ2VkaXRvcicsICdwcmV2aWV3J10sIHRydWUpO1xufVxuXG5mdW5jdGlvbiBpc05vdGVzRW5hYmxlZChjb2xsZWN0aW9uLCBlbnRyeSwgaXNOZXdFbnRyeSwgaXNQdWJsaXNoZWQsIGhhc1dvcmtmbG93KSB7XG4gIGlmIChpc05ld0VudHJ5IHx8ICFoYXNXb3JrZmxvdykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChjb2xsZWN0aW9uLmdldCgndHlwZScpID09PSBGSUxFUykge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlRnJvbVNsdWcoY29sbGVjdGlvbiwgZW50cnkuZ2V0KCdzbHVnJykpO1xuICAgIGNvbnN0IG5vdGVzRW5hYmxlZCA9IGZpbGU/LmdldEluKFsnZWRpdG9yJywgJ25vdGVzJ10pO1xuICAgIGlmIChub3Rlc0VuYWJsZWQgIT0gbnVsbCkgcmV0dXJuIG5vdGVzRW5hYmxlZDtcbiAgfVxuICByZXR1cm4gY29sbGVjdGlvbi5nZXRJbihbJ2VkaXRvcicsICdub3RlcyddLCBmYWxzZSk7XG59XG5cbmNsYXNzIEVkaXRvckludGVyZmFjZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIHN0YXRlID0ge1xuICAgIHNob3dFdmVudEJsb2NrZXI6IGZhbHNlLFxuICAgIHByZXZpZXdWaXNpYmxlOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShQUkVWSUVXX1ZJU0lCTEUpICE9PSAnZmFsc2UnLFxuICAgIG5vdGVzVmlzaWJsZTogbG9jYWxTdG9yYWdlLmdldEl0ZW0oTk9URVNfVklTSUJMRSkgIT09ICdmYWxzZScsXG4gICAgc2Nyb2xsU3luY0VuYWJsZWQ6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFNDUk9MTF9TWU5DX0VOQUJMRUQpICE9PSAnZmFsc2UnLFxuICAgIGkxOG5WaXNpYmxlOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShJMThOX1ZJU0lCTEUpICE9PSAnZmFsc2UnLFxuICB9O1xuXG4gIGhhbmRsZUZpZWxkQ2xpY2sgPSBwYXRoID0+IHtcbiAgICB0aGlzLmNvbnRyb2xQYW5lUmVmPy5mb2N1cyhwYXRoKTtcbiAgfTtcblxuICBoYW5kbGVTcGxpdFBhbmVEcmFnU3RhcnQgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IHNob3dFdmVudEJsb2NrZXI6IHRydWUgfSk7XG4gIH07XG5cbiAgaGFuZGxlU3BsaXRQYW5lRHJhZ0ZpbmlzaGVkID0gKCkgPT4ge1xuICAgIHRoaXMuc2V0U3RhdGUoeyBzaG93RXZlbnRCbG9ja2VyOiBmYWxzZSB9KTtcbiAgfTtcblxuICBoYW5kbGVPblBlcnNpc3QgPSBhc3luYyAob3B0cyA9IHt9KSA9PiB7XG4gICAgY29uc3QgeyBjcmVhdGVOZXcgPSBmYWxzZSwgZHVwbGljYXRlID0gZmFsc2UgfSA9IG9wdHM7XG4gICAgYXdhaXQgdGhpcy5jb250cm9sUGFuZVJlZi5zd2l0Y2hUb0RlZmF1bHRMb2NhbGUoKTtcbiAgICB0aGlzLmNvbnRyb2xQYW5lUmVmLnZhbGlkYXRlKCk7XG4gICAgdGhpcy5wcm9wcy5vblBlcnNpc3QoeyBjcmVhdGVOZXcsIGR1cGxpY2F0ZSB9KTtcbiAgfTtcblxuICBoYW5kbGVPblB1Ymxpc2ggPSBhc3luYyAob3B0cyA9IHt9KSA9PiB7XG4gICAgY29uc3QgeyBjcmVhdGVOZXcgPSBmYWxzZSwgZHVwbGljYXRlID0gZmFsc2UgfSA9IG9wdHM7XG4gICAgYXdhaXQgdGhpcy5jb250cm9sUGFuZVJlZi5zd2l0Y2hUb0RlZmF1bHRMb2NhbGUoKTtcbiAgICB0aGlzLmNvbnRyb2xQYW5lUmVmLnZhbGlkYXRlKCk7XG4gICAgdGhpcy5wcm9wcy5vblB1Ymxpc2goeyBjcmVhdGVOZXcsIGR1cGxpY2F0ZSB9KTtcbiAgfTtcblxuICBoYW5kbGVUb2dnbGVQcmV2aWV3ID0gKCkgPT4ge1xuICAgIGNvbnN0IG5ld1ByZXZpZXdWaXNpYmxlID0gIXRoaXMuc3RhdGUucHJldmlld1Zpc2libGU7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBwcmV2aWV3VmlzaWJsZTogbmV3UHJldmlld1Zpc2libGUsXG4gICAgICBub3Rlc1Zpc2libGU6IGZhbHNlLCAvLyBIaWRlIG5vdGVzIHdoZW4gc2hvd2luZyBwcmV2aWV3XG4gICAgfSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oUFJFVklFV19WSVNJQkxFLCBuZXdQcmV2aWV3VmlzaWJsZSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oTk9URVNfVklTSUJMRSwgJ2ZhbHNlJyk7XG4gIH07XG5cbiAgaGFuZGxlVG9nZ2xlTm90ZXMgPSAoKSA9PiB7XG4gICAgY29uc3QgbmV3Tm90ZXNWaXNpYmxlID0gIXRoaXMuc3RhdGUubm90ZXNWaXNpYmxlO1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgbm90ZXNWaXNpYmxlOiBuZXdOb3Rlc1Zpc2libGUsXG4gICAgICBwcmV2aWV3VmlzaWJsZTogZmFsc2UsIC8vIEhpZGUgcHJldmlldyB3aGVuIHNob3dpbmcgbm90ZXNcbiAgICB9KTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShOT1RFU19WSVNJQkxFLCBuZXdOb3Rlc1Zpc2libGUpO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFBSRVZJRVdfVklTSUJMRSwgJ2ZhbHNlJyk7XG4gIH07XG5cbiAgaGFuZGxlTm90ZXNDaGFuZ2UgPSAoYWN0aW9uLCBwYXlsb2FkKSA9PiB7XG4gICAgdGhpcy5wcm9wcy5vbk5vdGVzQ2hhbmdlKGFjdGlvbiwgcGF5bG9hZCk7XG4gIH07XG5cbiAgaGFuZGxlVG9nZ2xlU2Nyb2xsU3luYyA9ICgpID0+IHtcbiAgICBjb25zdCBuZXdTY3JvbGxTeW5jRW5hYmxlZCA9ICF0aGlzLnN0YXRlLnNjcm9sbFN5bmNFbmFibGVkO1xuICAgIHRoaXMuc2V0U3RhdGUoeyBzY3JvbGxTeW5jRW5hYmxlZDogbmV3U2Nyb2xsU3luY0VuYWJsZWQgfSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oU0NST0xMX1NZTkNfRU5BQkxFRCwgbmV3U2Nyb2xsU3luY0VuYWJsZWQpO1xuICB9O1xuXG4gIGhhbmRsZVRvZ2dsZUkxOG4gPSAoKSA9PiB7XG4gICAgY29uc3QgbmV3STE4blZpc2libGUgPSAhdGhpcy5zdGF0ZS5pMThuVmlzaWJsZTtcbiAgICB0aGlzLnNldFN0YXRlKHsgaTE4blZpc2libGU6IG5ld0kxOG5WaXNpYmxlIH0pO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKEkxOE5fVklTSUJMRSwgbmV3STE4blZpc2libGUpO1xuICB9O1xuXG4gIGhhbmRsZUxlZnRQYW5lbExvY2FsZUNoYW5nZSA9IGxvY2FsZSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IGxlZnRQYW5lbExvY2FsZTogbG9jYWxlIH0pO1xuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZW50cnksXG4gICAgICBmaWVsZHMsXG4gICAgICBmaWVsZHNNZXRhRGF0YSxcbiAgICAgIGZpZWxkc0Vycm9ycyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgc2hvd0RlbGV0ZSxcbiAgICAgIG9uRGVsZXRlLFxuICAgICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXMsXG4gICAgICBvbkNoYW5nZVN0YXR1cyxcbiAgICAgIG9uUHVibGlzaCxcbiAgICAgIHVuUHVibGlzaCxcbiAgICAgIG9uRHVwbGljYXRlLFxuICAgICAgb25WYWxpZGF0ZSxcbiAgICAgIHVzZXIsXG4gICAgICBoYXNDaGFuZ2VkLFxuICAgICAgY2FuQ3JlYXRlTmV3RW50cnksXG4gICAgICBkaXNwbGF5VXJsLFxuICAgICAgaGFzV29ya2Zsb3csXG4gICAgICB1c2VPcGVuQXV0aG9yaW5nLFxuICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzLFxuICAgICAgaXNOZXdFbnRyeSxcbiAgICAgIGlzTW9kaWZpY2F0aW9uLFxuICAgICAgaXNQdWJsaXNoZWQsXG4gICAgICBjdXJyZW50U3RhdHVzLFxuICAgICAgb25Mb2dvdXRDbGljayxcbiAgICAgIGxvYWREZXBsb3lQcmV2aWV3LFxuICAgICAgZGVwbG95UHJldmlldyxcbiAgICAgIGRyYWZ0S2V5LFxuICAgICAgZWRpdG9yQmFja0xpbmssXG4gICAgICB0LFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgeyBzY3JvbGxTeW5jRW5hYmxlZCwgc2hvd0V2ZW50QmxvY2tlciB9ID0gdGhpcy5zdGF0ZTtcblxuICAgIGNvbnN0IHByZXZpZXdFbmFibGVkID0gaXNQcmV2aWV3RW5hYmxlZChjb2xsZWN0aW9uLCBlbnRyeSk7XG4gICAgY29uc3Qgbm90ZXNFbmFibGVkID0gaXNOb3Rlc0VuYWJsZWQoY29sbGVjdGlvbiwgZW50cnksIGlzTmV3RW50cnksIGlzUHVibGlzaGVkLCBoYXNXb3JrZmxvdyk7XG5cbiAgICBjb25zdCB7IGxvY2FsZXMsIGRlZmF1bHRMb2NhbGUgfSA9IGdldEkxOG5JbmZvKHRoaXMucHJvcHMuY29sbGVjdGlvbik7XG4gICAgY29uc3QgY29sbGVjdGlvbkkxOG5FbmFibGVkID0gaGFzSTE4bihjb2xsZWN0aW9uKSAmJiBsb2NhbGVzLmxlbmd0aCA+IDE7XG4gICAgY29uc3QgZWRpdG9yUHJvcHMgPSB7XG4gICAgICBjb2xsZWN0aW9uLFxuICAgICAgZW50cnksXG4gICAgICBmaWVsZHMsXG4gICAgICBmaWVsZHNNZXRhRGF0YSxcbiAgICAgIGZpZWxkc0Vycm9ycyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25WYWxpZGF0ZSxcbiAgICB9O1xuXG4gICAgY29uc3QgbGVmdFBhbmVsTG9jYWxlID0gdGhpcy5zdGF0ZS5sZWZ0UGFuZWxMb2NhbGUgfHwgbG9jYWxlcz8uWzBdO1xuICAgIGNvbnN0IGVkaXRvciA9IChcbiAgICAgIDxDb250cm9sUGFuZUNvbnRhaW5lciBvdmVyRmxvdyBibG9ja0VudHJ5PXtzaG93RXZlbnRCbG9ja2VyfT5cbiAgICAgICAgPEVkaXRvckNvbnRyb2xQYW5lXG4gICAgICAgICAgey4uLmVkaXRvclByb3BzfVxuICAgICAgICAgIHJlZj17YyA9PiAodGhpcy5jb250cm9sUGFuZVJlZiA9IGMpfVxuICAgICAgICAgIGxvY2FsZT17bGVmdFBhbmVsTG9jYWxlfVxuICAgICAgICAgIHQ9e3R9XG4gICAgICAgICAgb25Mb2NhbGVDaGFuZ2U9e3RoaXMuaGFuZGxlTGVmdFBhbmVsTG9jYWxlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgPC9Db250cm9sUGFuZUNvbnRhaW5lcj5cbiAgICApO1xuXG4gICAgY29uc3QgZWRpdG9yMiA9IChcbiAgICAgIDxDb250cm9sUGFuZUNvbnRhaW5lciBvdmVyRmxvdz17IXRoaXMuc3RhdGUuc2Nyb2xsU3luY0VuYWJsZWR9IGJsb2NrRW50cnk9e3Nob3dFdmVudEJsb2NrZXJ9PlxuICAgICAgICA8RWRpdG9yQ29udHJvbFBhbmUgey4uLmVkaXRvclByb3BzfSBsb2NhbGU9e2xvY2FsZXM/LlsxXX0gdD17dH0gLz5cbiAgICAgIDwvQ29udHJvbFBhbmVDb250YWluZXI+XG4gICAgKTtcblxuICAgIGNvbnN0IHByZXZpZXdFbnRyeSA9IGNvbGxlY3Rpb25JMThuRW5hYmxlZFxuICAgICAgPyBnZXRQcmV2aWV3RW50cnkoZW50cnksIGxlZnRQYW5lbExvY2FsZSwgZGVmYXVsdExvY2FsZSlcbiAgICAgIDogZW50cnk7XG5cbiAgICBjb25zdCBlZGl0b3JXaXRoUHJldmlldyA9IChcbiAgICAgIDxTY3JvbGxTeW5jIGVuYWJsZWQ9e3RoaXMuc3RhdGUuc2Nyb2xsU3luY0VuYWJsZWR9PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxSZWFjdFNwbGl0UGFuZUdsb2JhbFN0eWxlcyAvPlxuICAgICAgICAgIDxTdHlsZWRTcGxpdFBhbmVcbiAgICAgICAgICAgIG1heFNpemU9ey0xMDB9XG4gICAgICAgICAgICBtaW5TaXplPXs0MDB9XG4gICAgICAgICAgICBkZWZhdWx0U2l6ZT17cGFyc2VJbnQobG9jYWxTdG9yYWdlLmdldEl0ZW0oU1BMSVRfUEFORV9QT1NJVElPTiksIDEwKSB8fCAnNTAlJ31cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtzaXplID0+IGxvY2FsU3RvcmFnZS5zZXRJdGVtKFNQTElUX1BBTkVfUE9TSVRJT04sIHNpemUpfVxuICAgICAgICAgICAgb25EcmFnU3RhcnRlZD17dGhpcy5oYW5kbGVTcGxpdFBhbmVEcmFnU3RhcnR9XG4gICAgICAgICAgICBvbkRyYWdGaW5pc2hlZD17dGhpcy5oYW5kbGVTcGxpdFBhbmVEcmFnRmluaXNoZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFNjcm9sbFN5bmNQYW5lPntlZGl0b3J9PC9TY3JvbGxTeW5jUGFuZT5cbiAgICAgICAgICAgIDxQcmV2aWV3UGFuZUNvbnRhaW5lciBibG9ja0VudHJ5PXtzaG93RXZlbnRCbG9ja2VyfT5cbiAgICAgICAgICAgICAgPEVkaXRvclByZXZpZXdQYW5lXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbj17Y29sbGVjdGlvbn1cbiAgICAgICAgICAgICAgICBlbnRyeT17cHJldmlld0VudHJ5fVxuICAgICAgICAgICAgICAgIGZpZWxkcz17ZmllbGRzfVxuICAgICAgICAgICAgICAgIGZpZWxkc01ldGFEYXRhPXtmaWVsZHNNZXRhRGF0YX1cbiAgICAgICAgICAgICAgICBsb2NhbGU9e2xlZnRQYW5lbExvY2FsZX1cbiAgICAgICAgICAgICAgICBvbkZpZWxkQ2xpY2s9e3RoaXMuaGFuZGxlRmllbGRDbGlja31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvUHJldmlld1BhbmVDb250YWluZXI+XG4gICAgICAgICAgPC9TdHlsZWRTcGxpdFBhbmU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TY3JvbGxTeW5jPlxuICAgICk7XG5cbiAgICBjb25zdCBlZGl0b3JXaXRoTm90ZXMgPSAoXG4gICAgICA8U2Nyb2xsU3luYyBlbmFibGVkPXt0aGlzLnN0YXRlLnNjcm9sbFN5bmNFbmFibGVkfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8UmVhY3RTcGxpdFBhbmVHbG9iYWxTdHlsZXMgLz5cbiAgICAgICAgICA8U3R5bGVkU3BsaXRQYW5lXG4gICAgICAgICAgICBtYXhTaXplPXstMTAwfVxuICAgICAgICAgICAgbWluU2l6ZT17NDAwfVxuICAgICAgICAgICAgZGVmYXVsdFNpemU9e3BhcnNlSW50KGxvY2FsU3RvcmFnZS5nZXRJdGVtKFNQTElUX1BBTkVfUE9TSVRJT04pLCAxMCkgfHwgJzUwJSd9XG4gICAgICAgICAgICBvbkNoYW5nZT17c2l6ZSA9PiBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShTUExJVF9QQU5FX1BPU0lUSU9OLCBzaXplKX1cbiAgICAgICAgICAgIG9uRHJhZ1N0YXJ0ZWQ9e3RoaXMuaGFuZGxlU3BsaXRQYW5lRHJhZ1N0YXJ0fVxuICAgICAgICAgICAgb25EcmFnRmluaXNoZWQ9e3RoaXMuaGFuZGxlU3BsaXRQYW5lRHJhZ0ZpbmlzaGVkfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTY3JvbGxTeW5jUGFuZT57ZWRpdG9yfTwvU2Nyb2xsU3luY1BhbmU+XG4gICAgICAgICAgICA8Tm90ZXNQYW5lQ29udGFpbmVyIGJsb2NrRW50cnk9e3Nob3dFdmVudEJsb2NrZXJ9PlxuICAgICAgICAgICAgICA8RWRpdG9yTm90ZXNQYW5lXG4gICAgICAgICAgICAgICAgbm90ZXM9e3RoaXMucHJvcHMubm90ZXN9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuaGFuZGxlTm90ZXNDaGFuZ2V9XG4gICAgICAgICAgICAgICAgZW50cnk9e2VudHJ5fVxuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb249e2NvbGxlY3Rpb259XG4gICAgICAgICAgICAgICAgdXNlcj17dXNlcn1cbiAgICAgICAgICAgICAgICB0PXt0fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9Ob3Rlc1BhbmVDb250YWluZXI+XG4gICAgICAgICAgPC9TdHlsZWRTcGxpdFBhbmU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TY3JvbGxTeW5jPlxuICAgICk7XG5cbiAgICBjb25zdCBlZGl0b3JXaXRoRWRpdG9yID0gKFxuICAgICAgPFNjcm9sbFN5bmMgZW5hYmxlZD17dGhpcy5zdGF0ZS5zY3JvbGxTeW5jRW5hYmxlZH0+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPFN0eWxlZFNwbGl0UGFuZVxuICAgICAgICAgICAgbWF4U2l6ZT17LTEwMH1cbiAgICAgICAgICAgIGRlZmF1bHRTaXplPXtwYXJzZUludChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShTUExJVF9QQU5FX1BPU0lUSU9OKSwgMTApIHx8ICc1MCUnfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3NpemUgPT4gbG9jYWxTdG9yYWdlLnNldEl0ZW0oU1BMSVRfUEFORV9QT1NJVElPTiwgc2l6ZSl9XG4gICAgICAgICAgICBvbkRyYWdTdGFydGVkPXt0aGlzLmhhbmRsZVNwbGl0UGFuZURyYWdTdGFydH1cbiAgICAgICAgICAgIG9uRHJhZ0ZpbmlzaGVkPXt0aGlzLmhhbmRsZVNwbGl0UGFuZURyYWdGaW5pc2hlZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8U2Nyb2xsU3luY1BhbmU+e2VkaXRvcn08L1Njcm9sbFN5bmNQYW5lPlxuICAgICAgICAgICAgPFNjcm9sbFN5bmNQYW5lPntlZGl0b3IyfTwvU2Nyb2xsU3luY1BhbmU+XG4gICAgICAgICAgPC9TdHlsZWRTcGxpdFBhbmU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9TY3JvbGxTeW5jPlxuICAgICk7XG5cbiAgICBjb25zdCBpMThuVmlzaWJsZSA9IGNvbGxlY3Rpb25JMThuRW5hYmxlZCAmJiB0aGlzLnN0YXRlLmkxOG5WaXNpYmxlO1xuICAgIGNvbnN0IHByZXZpZXdWaXNpYmxlID0gcHJldmlld0VuYWJsZWQgJiYgdGhpcy5zdGF0ZS5wcmV2aWV3VmlzaWJsZTtcbiAgICBjb25zdCBub3Rlc1Zpc2libGUgPSBub3Rlc0VuYWJsZWQgJiYgdGhpcy5zdGF0ZS5ub3Rlc1Zpc2libGU7XG4gICAgY29uc3Qgc2Nyb2xsU3luY1Zpc2libGUgPSBpMThuVmlzaWJsZSB8fCBwcmV2aWV3VmlzaWJsZSB8fCBub3Rlc1Zpc2libGU7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPEVkaXRvckNvbnRhaW5lcj5cbiAgICAgICAgPEVkaXRvclRvb2xiYXJcbiAgICAgICAgICBpc1BlcnNpc3Rpbmc9e2VudHJ5LmdldCgnaXNQZXJzaXN0aW5nJyl9XG4gICAgICAgICAgaXNQdWJsaXNoaW5nPXtlbnRyeS5nZXQoJ2lzUHVibGlzaGluZycpfVxuICAgICAgICAgIGlzVXBkYXRpbmdTdGF0dXM9e2VudHJ5LmdldCgnaXNVcGRhdGluZ1N0YXR1cycpfVxuICAgICAgICAgIGlzRGVsZXRpbmc9e2VudHJ5LmdldCgnaXNEZWxldGluZycpfVxuICAgICAgICAgIG9uUGVyc2lzdD17dGhpcy5oYW5kbGVPblBlcnNpc3R9XG4gICAgICAgICAgb25QZXJzaXN0QW5kTmV3PXsoKSA9PiB0aGlzLmhhbmRsZU9uUGVyc2lzdCh7IGNyZWF0ZU5ldzogdHJ1ZSB9KX1cbiAgICAgICAgICBvblBlcnNpc3RBbmREdXBsaWNhdGU9eygpID0+IHRoaXMuaGFuZGxlT25QZXJzaXN0KHsgY3JlYXRlTmV3OiB0cnVlLCBkdXBsaWNhdGU6IHRydWUgfSl9XG4gICAgICAgICAgb25EZWxldGU9e29uRGVsZXRlfVxuICAgICAgICAgIG9uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzPXtvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlc31cbiAgICAgICAgICBvbkNoYW5nZVN0YXR1cz17b25DaGFuZ2VTdGF0dXN9XG4gICAgICAgICAgc2hvd0RlbGV0ZT17c2hvd0RlbGV0ZX1cbiAgICAgICAgICBvblB1Ymxpc2g9e29uUHVibGlzaH1cbiAgICAgICAgICB1blB1Ymxpc2g9e3VuUHVibGlzaH1cbiAgICAgICAgICBvbkR1cGxpY2F0ZT17b25EdXBsaWNhdGV9XG4gICAgICAgICAgb25QdWJsaXNoQW5kTmV3PXsoKSA9PiB0aGlzLmhhbmRsZU9uUHVibGlzaCh7IGNyZWF0ZU5ldzogdHJ1ZSB9KX1cbiAgICAgICAgICBvblB1Ymxpc2hBbmREdXBsaWNhdGU9eygpID0+IHRoaXMuaGFuZGxlT25QdWJsaXNoKHsgY3JlYXRlTmV3OiB0cnVlLCBkdXBsaWNhdGU6IHRydWUgfSl9XG4gICAgICAgICAgdXNlcj17dXNlcn1cbiAgICAgICAgICBoYXNDaGFuZ2VkPXtoYXNDaGFuZ2VkfVxuICAgICAgICAgIGNhbkNyZWF0ZU5ld0VudHJ5PXtjYW5DcmVhdGVOZXdFbnRyeX1cbiAgICAgICAgICBkaXNwbGF5VXJsPXtkaXNwbGF5VXJsfVxuICAgICAgICAgIGNvbGxlY3Rpb249e2NvbGxlY3Rpb259XG4gICAgICAgICAgaGFzV29ya2Zsb3c9e2hhc1dvcmtmbG93fVxuICAgICAgICAgIHVzZU9wZW5BdXRob3Jpbmc9e3VzZU9wZW5BdXRob3Jpbmd9XG4gICAgICAgICAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzPXtoYXNVbnB1Ymxpc2hlZENoYW5nZXN9XG4gICAgICAgICAgaXNOZXdFbnRyeT17aXNOZXdFbnRyeX1cbiAgICAgICAgICBpc01vZGlmaWNhdGlvbj17aXNNb2RpZmljYXRpb259XG4gICAgICAgICAgY3VycmVudFN0YXR1cz17Y3VycmVudFN0YXR1c31cbiAgICAgICAgICBvbkxvZ291dENsaWNrPXtvbkxvZ291dENsaWNrfVxuICAgICAgICAgIGxvYWREZXBsb3lQcmV2aWV3PXtsb2FkRGVwbG95UHJldmlld31cbiAgICAgICAgICBkZXBsb3lQcmV2aWV3PXtkZXBsb3lQcmV2aWV3fVxuICAgICAgICAgIGVkaXRvckJhY2tMaW5rPXtlZGl0b3JCYWNrTGlua31cbiAgICAgICAgLz5cbiAgICAgICAgPEVkaXRvciBrZXk9e2RyYWZ0S2V5fT5cbiAgICAgICAgICA8Vmlld0NvbnRyb2xzPlxuICAgICAgICAgICAge2NvbGxlY3Rpb25JMThuRW5hYmxlZCAmJiAoXG4gICAgICAgICAgICAgIDxFZGl0b3JUb2dnbGVcbiAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aTE4blZpc2libGV9XG4gICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oYW5kbGVUb2dnbGVJMThufVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInBhZ2VcIlxuICAgICAgICAgICAgICAgIHRpdGxlPXt0KCdlZGl0b3IuZWRpdG9ySW50ZXJmYWNlLnRvZ2dsZUkxOG4nKX1cbiAgICAgICAgICAgICAgICBtYXJnaW5Ub3A9XCI3MHB4XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7cHJldmlld0VuYWJsZWQgJiYgKFxuICAgICAgICAgICAgICA8RWRpdG9yVG9nZ2xlXG4gICAgICAgICAgICAgICAgaXNBY3RpdmU9e3ByZXZpZXdWaXNpYmxlfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuaGFuZGxlVG9nZ2xlUHJldmlld31cbiAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJleWVcIlxuICAgICAgICAgICAgICAgIHRpdGxlPXt0KCdlZGl0b3IuZWRpdG9ySW50ZXJmYWNlLnRvZ2dsZVByZXZpZXcnKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7bm90ZXNFbmFibGVkICYmIChcbiAgICAgICAgICAgICAgPEVkaXRvclRvZ2dsZVxuICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtub3Rlc1Zpc2libGV9XG4gICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oYW5kbGVUb2dnbGVOb3Rlc31cbiAgICAgICAgICAgICAgICBzaXplPVwibGFyZ2VcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJ3cml0ZVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9e3QoJ2VkaXRvci5lZGl0b3JJbnRlcmZhY2UudG9nZ2xlTm90ZXMnKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7c2Nyb2xsU3luY1Zpc2libGUgJiYgIWNvbGxlY3Rpb24uZ2V0SW4oWydlZGl0b3InLCAndmlzdWFsRWRpdGluZyddKSAmJiAoXG4gICAgICAgICAgICAgIDxFZGl0b3JUb2dnbGVcbiAgICAgICAgICAgICAgICBpc0FjdGl2ZT17c2Nyb2xsU3luY0VuYWJsZWR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oYW5kbGVUb2dnbGVTY3JvbGxTeW5jfVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInNjcm9sbFwiXG4gICAgICAgICAgICAgICAgdGl0bGU9e3QoJ2VkaXRvci5lZGl0b3JJbnRlcmZhY2UudG9nZ2xlU2Nyb2xsU3luYycpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L1ZpZXdDb250cm9scz5cbiAgICAgICAgICA8RWRpdG9yQ29udGVudFxuICAgICAgICAgICAgaTE4blZpc2libGU9e2kxOG5WaXNpYmxlfVxuICAgICAgICAgICAgcHJldmlld1Zpc2libGU9e3ByZXZpZXdWaXNpYmxlfVxuICAgICAgICAgICAgbm90ZXNWaXNpYmxlPXtub3Rlc1Zpc2libGV9XG4gICAgICAgICAgICBlZGl0b3I9e2VkaXRvcn1cbiAgICAgICAgICAgIGVkaXRvcldpdGhFZGl0b3I9e2VkaXRvcldpdGhFZGl0b3J9XG4gICAgICAgICAgICBlZGl0b3JXaXRoUHJldmlldz17ZWRpdG9yV2l0aFByZXZpZXd9XG4gICAgICAgICAgICBlZGl0b3JXaXRoTm90ZXM9e2VkaXRvcldpdGhOb3Rlc31cbiAgICAgICAgICAvPlxuICAgICAgICA8L0VkaXRvcj5cbiAgICAgIDwvRWRpdG9yQ29udGFpbmVyPlxuICAgICk7XG4gIH1cbn1cblxuRWRpdG9ySW50ZXJmYWNlLnByb3BUeXBlcyA9IHtcbiAgY29sbGVjdGlvbjogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICBlbnRyeTogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICBmaWVsZHM6IEltbXV0YWJsZVByb3BUeXBlcy5saXN0LmlzUmVxdWlyZWQsXG4gIGZpZWxkc01ldGFEYXRhOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gIGZpZWxkc0Vycm9yczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25WYWxpZGF0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25QZXJzaXN0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBzaG93RGVsZXRlOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICBvbkRlbGV0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIG9uUHVibGlzaDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgdW5QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvbkR1cGxpY2F0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25DaGFuZ2VTdGF0dXM6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHVzZXI6IFByb3BUeXBlcy5vYmplY3QsXG4gIGhhc0NoYW5nZWQ6IFByb3BUeXBlcy5ib29sLFxuICBjYW5DcmVhdGVOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gIGRpc3BsYXlVcmw6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGhhc1dvcmtmbG93OiBQcm9wVHlwZXMuYm9vbCxcbiAgdXNlT3BlbkF1dGhvcmluZzogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc1VucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmJvb2wsXG4gIGlzTmV3RW50cnk6IFByb3BUeXBlcy5ib29sLFxuICBpc01vZGlmaWNhdGlvbjogUHJvcFR5cGVzLmJvb2wsXG4gIGlzUHVibGlzaGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgY3VycmVudFN0YXR1czogUHJvcFR5cGVzLnN0cmluZyxcbiAgb25Mb2dvdXRDbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgZGVwbG95UHJldmlldzogUHJvcFR5cGVzLm9iamVjdCxcbiAgbG9hZERlcGxveVByZXZpZXc6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGRyYWZ0S2V5OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIG5vdGVzOiBJbW11dGFibGVQcm9wVHlwZXMubGlzdCxcbiAgb25Ob3Rlc0NoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBFZGl0b3JJbnRlcmZhY2U7XG4iXX0= */")), pane: process.env.NODE_ENV === "production" ? { name: "1yvxf4n-pane", styles: "height:100%;overflow-y:auto;label:pane;" } : { name: "1yvxf4n-pane", styles: "height:100%;overflow-y:auto;label:pane;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JJbnRlcmZhY2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0NXIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JJbnRlcmZhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IEltbXV0YWJsZVByb3BUeXBlcyBmcm9tICdyZWFjdC1pbW11dGFibGUtcHJvcHR5cGVzJztcbmltcG9ydCB7IGNzcywgR2xvYmFsIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFNwbGl0UGFuZSBmcm9tICdyZWFjdC1zcGxpdC1wYW5lJztcbmltcG9ydCB7XG4gIGNvbG9ycyxcbiAgY29sb3JzUmF3LFxuICBjb21wb25lbnRzLFxuICB0cmFuc2l0aW9ucyxcbiAgSWNvbkJ1dHRvbixcbiAgekluZGV4LFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBTY3JvbGxTeW5jLCBTY3JvbGxTeW5jUGFuZSB9IGZyb20gJ3JlYWN0LXNjcm9sbC1zeW5jJztcblxuaW1wb3J0IEVkaXRvckNvbnRyb2xQYW5lIGZyb20gJy4vRWRpdG9yQ29udHJvbFBhbmUvRWRpdG9yQ29udHJvbFBhbmUnO1xuaW1wb3J0IEVkaXRvclByZXZpZXdQYW5lIGZyb20gJy4vRWRpdG9yUHJldmlld1BhbmUvRWRpdG9yUHJldmlld1BhbmUnO1xuaW1wb3J0IEVkaXRvck5vdGVzUGFuZSBmcm9tICcuL0VkaXRvck5vdGVzUGFuZS9FZGl0b3JOb3Rlc1BhbmUnO1xuaW1wb3J0IEVkaXRvclRvb2xiYXIgZnJvbSAnLi9FZGl0b3JUb29sYmFyJztcbmltcG9ydCB7IGhhc0kxOG4sIGdldEkxOG5JbmZvLCBnZXRQcmV2aWV3RW50cnkgfSBmcm9tICcuLi8uLi9saWIvaTE4bic7XG5pbXBvcnQgeyBGSUxFUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb2xsZWN0aW9uVHlwZXMnO1xuaW1wb3J0IHsgZ2V0RmlsZUZyb21TbHVnIH0gZnJvbSAnLi4vLi4vcmVkdWNlcnMvY29sbGVjdGlvbnMnO1xuXG5jb25zdCBQUkVWSUVXX1ZJU0lCTEUgPSAnY21zLnByZXZpZXctdmlzaWJsZSc7XG5jb25zdCBOT1RFU19WSVNJQkxFID0gJ2Ntcy5ub3Rlcy12aXNpYmxlJztcbmNvbnN0IFNDUk9MTF9TWU5DX0VOQUJMRUQgPSAnY21zLnNjcm9sbC1zeW5jLWVuYWJsZWQnO1xuY29uc3QgU1BMSVRfUEFORV9QT1NJVElPTiA9ICdjbXMuc3BsaXQtcGFuZS1wb3NpdGlvbic7XG5jb25zdCBJMThOX1ZJU0lCTEUgPSAnY21zLmkxOG4tdmlzaWJsZSc7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgc3BsaXRQYW5lOiBjc3NgXG4gICAgJHtjb21wb25lbnRzLmNhcmR9O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICBgLFxuICBwYW5lOiBjc3NgXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIGAsXG59O1xuXG5jb25zdCBFZGl0b3JUb2dnbGUgPSBzdHlsZWQoSWNvbkJ1dHRvbilgXG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5mdW5jdGlvbiBSZWFjdFNwbGl0UGFuZUdsb2JhbFN0eWxlcygpIHtcbiAgcmV0dXJuIChcbiAgICA8R2xvYmFsXG4gICAgICBzdHlsZXM9e2Nzc2BcbiAgICAgICAgLlJlc2l6ZXIudmVydGljYWwge1xuICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgY3Vyc29yOiBjb2wtcmVzaXplO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR7dHJhbnNpdGlvbnMubWFpbn07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgIGxlZnQ6IC0xcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7Y29sb3JzUmF3LmJsdWV9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgYH1cbiAgICAvPlxuICApO1xufVxuXG5jb25zdCBTdHlsZWRTcGxpdFBhbmUgPSBzdHlsZWQoU3BsaXRQYW5lKWBcbiAgJHtzdHlsZXMuc3BsaXRQYW5lfTtcblxuICAvKipcbiAgICogUXVpY2sgZml4IGZvciBwcmV2aWV3IHBhbmUgbm90IGZ1bGx5IGRpc3BsYXlpbmcgaW4gU2FmYXJpXG4gICAqL1xuICAuUGFuZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5gO1xuXG5jb25zdCBOb1ByZXZpZXdDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICAke3N0eWxlcy5zcGxpdFBhbmV9O1xuYDtcblxuY29uc3QgRWRpdG9yQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogODAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiA2NnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2NvbG9ycy5iYWNrZ3JvdW5kfTtcbmA7XG5cbmNvbnN0IEVkaXRvciA9IHN0eWxlZC5kaXZgXG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IFByZXZpZXdQYW5lQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogJHtwcm9wcyA9PiAocHJvcHMuYmxvY2tFbnRyeSA/ICdub25lJyA6ICdhdXRvJyl9O1xuICBvdmVyZmxvdy15OiAke3Byb3BzID0+IChwcm9wcy5vdmVyRmxvdyA/ICdhdXRvJyA6ICdoaWRkZW4nKX07XG5gO1xuXG5jb25zdCBDb250cm9sUGFuZUNvbnRhaW5lciA9IHN0eWxlZChQcmV2aWV3UGFuZUNvbnRhaW5lcilgXG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG5gO1xuXG5jb25zdCBOb3Rlc1BhbmVDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiAke3Byb3BzID0+IChwcm9wcy5ibG9ja0VudHJ5ID8gJ25vbmUnIDogJ2F1dG8nKX07XG4gIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuXG5jb25zdCBWaWV3Q29udHJvbHMgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHotaW5kZXg6ICR7ekluZGV4LnpJbmRleDI5OX07XG5gO1xuXG5mdW5jdGlvbiBFZGl0b3JDb250ZW50KHtcbiAgaTE4blZpc2libGUsXG4gIHByZXZpZXdWaXNpYmxlLFxuICBub3Rlc1Zpc2libGUsXG4gIGVkaXRvcixcbiAgZWRpdG9yV2l0aEVkaXRvcixcbiAgZWRpdG9yV2l0aFByZXZpZXcsXG4gIGVkaXRvcldpdGhOb3Rlcyxcbn0pIHtcbiAgaWYgKGkxOG5WaXNpYmxlKSB7XG4gICAgcmV0dXJuIGVkaXRvcldpdGhFZGl0b3I7XG4gIH0gZWxzZSBpZiAobm90ZXNWaXNpYmxlKSB7XG4gICAgcmV0dXJuIGVkaXRvcldpdGhOb3RlcztcbiAgfSBlbHNlIGlmIChwcmV2aWV3VmlzaWJsZSkge1xuICAgIHJldHVybiBlZGl0b3JXaXRoUHJldmlldztcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gPE5vUHJldmlld0NvbnRhaW5lcj57ZWRpdG9yfTwvTm9QcmV2aWV3Q29udGFpbmVyPjtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc1ByZXZpZXdFbmFibGVkKGNvbGxlY3Rpb24sIGVudHJ5KSB7XG4gIGlmIChjb2xsZWN0aW9uLmdldCgndHlwZScpID09PSBGSUxFUykge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlRnJvbVNsdWcoY29sbGVjdGlvbiwgZW50cnkuZ2V0KCdzbHVnJykpO1xuICAgIGNvbnN0IHByZXZpZXdFbmFibGVkID0gZmlsZT8uZ2V0SW4oWydlZGl0b3InLCAncHJldmlldyddKTtcbiAgICBpZiAocHJldmlld0VuYWJsZWQgIT0gbnVsbCkgcmV0dXJuIHByZXZpZXdFbmFibGVkO1xuICB9XG4gIHJldHVybiBjb2xsZWN0aW9uLmdldEluKFsnZWRpdG9yJywgJ3ByZXZpZXcnXSwgdHJ1ZSk7XG59XG5cbmZ1bmN0aW9uIGlzTm90ZXNFbmFibGVkKGNvbGxlY3Rpb24sIGVudHJ5LCBpc05ld0VudHJ5LCBpc1B1Ymxpc2hlZCwgaGFzV29ya2Zsb3cpIHtcbiAgaWYgKGlzTmV3RW50cnkgfHwgIWhhc1dvcmtmbG93KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGNvbGxlY3Rpb24uZ2V0KCd0eXBlJykgPT09IEZJTEVTKSB7XG4gICAgY29uc3QgZmlsZSA9IGdldEZpbGVGcm9tU2x1Zyhjb2xsZWN0aW9uLCBlbnRyeS5nZXQoJ3NsdWcnKSk7XG4gICAgY29uc3Qgbm90ZXNFbmFibGVkID0gZmlsZT8uZ2V0SW4oWydlZGl0b3InLCAnbm90ZXMnXSk7XG4gICAgaWYgKG5vdGVzRW5hYmxlZCAhPSBudWxsKSByZXR1cm4gbm90ZXNFbmFibGVkO1xuICB9XG4gIHJldHVybiBjb2xsZWN0aW9uLmdldEluKFsnZWRpdG9yJywgJ25vdGVzJ10sIGZhbHNlKTtcbn1cblxuY2xhc3MgRWRpdG9ySW50ZXJmYWNlIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgc3RhdGUgPSB7XG4gICAgc2hvd0V2ZW50QmxvY2tlcjogZmFsc2UsXG4gICAgcHJldmlld1Zpc2libGU6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFBSRVZJRVdfVklTSUJMRSkgIT09ICdmYWxzZScsXG4gICAgbm90ZXNWaXNpYmxlOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShOT1RFU19WSVNJQkxFKSAhPT0gJ2ZhbHNlJyxcbiAgICBzY3JvbGxTeW5jRW5hYmxlZDogbG9jYWxTdG9yYWdlLmdldEl0ZW0oU0NST0xMX1NZTkNfRU5BQkxFRCkgIT09ICdmYWxzZScsXG4gICAgaTE4blZpc2libGU6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKEkxOE5fVklTSUJMRSkgIT09ICdmYWxzZScsXG4gIH07XG5cbiAgaGFuZGxlRmllbGRDbGljayA9IHBhdGggPT4ge1xuICAgIHRoaXMuY29udHJvbFBhbmVSZWY/LmZvY3VzKHBhdGgpO1xuICB9O1xuXG4gIGhhbmRsZVNwbGl0UGFuZURyYWdTdGFydCA9ICgpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHsgc2hvd0V2ZW50QmxvY2tlcjogdHJ1ZSB9KTtcbiAgfTtcblxuICBoYW5kbGVTcGxpdFBhbmVEcmFnRmluaXNoZWQgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IHNob3dFdmVudEJsb2NrZXI6IGZhbHNlIH0pO1xuICB9O1xuXG4gIGhhbmRsZU9uUGVyc2lzdCA9IGFzeW5jIChvcHRzID0ge30pID0+IHtcbiAgICBjb25zdCB7IGNyZWF0ZU5ldyA9IGZhbHNlLCBkdXBsaWNhdGUgPSBmYWxzZSB9ID0gb3B0cztcbiAgICBhd2FpdCB0aGlzLmNvbnRyb2xQYW5lUmVmLnN3aXRjaFRvRGVmYXVsdExvY2FsZSgpO1xuICAgIHRoaXMuY29udHJvbFBhbmVSZWYudmFsaWRhdGUoKTtcbiAgICB0aGlzLnByb3BzLm9uUGVyc2lzdCh7IGNyZWF0ZU5ldywgZHVwbGljYXRlIH0pO1xuICB9O1xuXG4gIGhhbmRsZU9uUHVibGlzaCA9IGFzeW5jIChvcHRzID0ge30pID0+IHtcbiAgICBjb25zdCB7IGNyZWF0ZU5ldyA9IGZhbHNlLCBkdXBsaWNhdGUgPSBmYWxzZSB9ID0gb3B0cztcbiAgICBhd2FpdCB0aGlzLmNvbnRyb2xQYW5lUmVmLnN3aXRjaFRvRGVmYXVsdExvY2FsZSgpO1xuICAgIHRoaXMuY29udHJvbFBhbmVSZWYudmFsaWRhdGUoKTtcbiAgICB0aGlzLnByb3BzLm9uUHVibGlzaCh7IGNyZWF0ZU5ldywgZHVwbGljYXRlIH0pO1xuICB9O1xuXG4gIGhhbmRsZVRvZ2dsZVByZXZpZXcgPSAoKSA9PiB7XG4gICAgY29uc3QgbmV3UHJldmlld1Zpc2libGUgPSAhdGhpcy5zdGF0ZS5wcmV2aWV3VmlzaWJsZTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIHByZXZpZXdWaXNpYmxlOiBuZXdQcmV2aWV3VmlzaWJsZSxcbiAgICAgIG5vdGVzVmlzaWJsZTogZmFsc2UsIC8vIEhpZGUgbm90ZXMgd2hlbiBzaG93aW5nIHByZXZpZXdcbiAgICB9KTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShQUkVWSUVXX1ZJU0lCTEUsIG5ld1ByZXZpZXdWaXNpYmxlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShOT1RFU19WSVNJQkxFLCAnZmFsc2UnKTtcbiAgfTtcblxuICBoYW5kbGVUb2dnbGVOb3RlcyA9ICgpID0+IHtcbiAgICBjb25zdCBuZXdOb3Rlc1Zpc2libGUgPSAhdGhpcy5zdGF0ZS5ub3Rlc1Zpc2libGU7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBub3Rlc1Zpc2libGU6IG5ld05vdGVzVmlzaWJsZSxcbiAgICAgIHByZXZpZXdWaXNpYmxlOiBmYWxzZSwgLy8gSGlkZSBwcmV2aWV3IHdoZW4gc2hvd2luZyBub3Rlc1xuICAgIH0pO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKE5PVEVTX1ZJU0lCTEUsIG5ld05vdGVzVmlzaWJsZSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oUFJFVklFV19WSVNJQkxFLCAnZmFsc2UnKTtcbiAgfTtcblxuICBoYW5kbGVOb3Rlc0NoYW5nZSA9IChhY3Rpb24sIHBheWxvYWQpID0+IHtcbiAgICB0aGlzLnByb3BzLm9uTm90ZXNDaGFuZ2UoYWN0aW9uLCBwYXlsb2FkKTtcbiAgfTtcblxuICBoYW5kbGVUb2dnbGVTY3JvbGxTeW5jID0gKCkgPT4ge1xuICAgIGNvbnN0IG5ld1Njcm9sbFN5bmNFbmFibGVkID0gIXRoaXMuc3RhdGUuc2Nyb2xsU3luY0VuYWJsZWQ7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IHNjcm9sbFN5bmNFbmFibGVkOiBuZXdTY3JvbGxTeW5jRW5hYmxlZCB9KTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShTQ1JPTExfU1lOQ19FTkFCTEVELCBuZXdTY3JvbGxTeW5jRW5hYmxlZCk7XG4gIH07XG5cbiAgaGFuZGxlVG9nZ2xlSTE4biA9ICgpID0+IHtcbiAgICBjb25zdCBuZXdJMThuVmlzaWJsZSA9ICF0aGlzLnN0YXRlLmkxOG5WaXNpYmxlO1xuICAgIHRoaXMuc2V0U3RhdGUoeyBpMThuVmlzaWJsZTogbmV3STE4blZpc2libGUgfSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oSTE4Tl9WSVNJQkxFLCBuZXdJMThuVmlzaWJsZSk7XG4gIH07XG5cbiAgaGFuZGxlTGVmdFBhbmVsTG9jYWxlQ2hhbmdlID0gbG9jYWxlID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHsgbGVmdFBhbmVsTG9jYWxlOiBsb2NhbGUgfSk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGNvbGxlY3Rpb24sXG4gICAgICBlbnRyeSxcbiAgICAgIGZpZWxkcyxcbiAgICAgIGZpZWxkc01ldGFEYXRhLFxuICAgICAgZmllbGRzRXJyb3JzLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBzaG93RGVsZXRlLFxuICAgICAgb25EZWxldGUsXG4gICAgICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlcyxcbiAgICAgIG9uQ2hhbmdlU3RhdHVzLFxuICAgICAgb25QdWJsaXNoLFxuICAgICAgdW5QdWJsaXNoLFxuICAgICAgb25EdXBsaWNhdGUsXG4gICAgICBvblZhbGlkYXRlLFxuICAgICAgdXNlcixcbiAgICAgIGhhc0NoYW5nZWQsXG4gICAgICBjYW5DcmVhdGVOZXdFbnRyeSxcbiAgICAgIGRpc3BsYXlVcmwsXG4gICAgICBoYXNXb3JrZmxvdyxcbiAgICAgIHVzZU9wZW5BdXRob3JpbmcsXG4gICAgICBoYXNVbnB1Ymxpc2hlZENoYW5nZXMsXG4gICAgICBpc05ld0VudHJ5LFxuICAgICAgaXNNb2RpZmljYXRpb24sXG4gICAgICBpc1B1Ymxpc2hlZCxcbiAgICAgIGN1cnJlbnRTdGF0dXMsXG4gICAgICBvbkxvZ291dENsaWNrLFxuICAgICAgbG9hZERlcGxveVByZXZpZXcsXG4gICAgICBkZXBsb3lQcmV2aWV3LFxuICAgICAgZHJhZnRLZXksXG4gICAgICBlZGl0b3JCYWNrTGluayxcbiAgICAgIHQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCB7IHNjcm9sbFN5bmNFbmFibGVkLCBzaG93RXZlbnRCbG9ja2VyIH0gPSB0aGlzLnN0YXRlO1xuXG4gICAgY29uc3QgcHJldmlld0VuYWJsZWQgPSBpc1ByZXZpZXdFbmFibGVkKGNvbGxlY3Rpb24sIGVudHJ5KTtcbiAgICBjb25zdCBub3Rlc0VuYWJsZWQgPSBpc05vdGVzRW5hYmxlZChjb2xsZWN0aW9uLCBlbnRyeSwgaXNOZXdFbnRyeSwgaXNQdWJsaXNoZWQsIGhhc1dvcmtmbG93KTtcblxuICAgIGNvbnN0IHsgbG9jYWxlcywgZGVmYXVsdExvY2FsZSB9ID0gZ2V0STE4bkluZm8odGhpcy5wcm9wcy5jb2xsZWN0aW9uKTtcbiAgICBjb25zdCBjb2xsZWN0aW9uSTE4bkVuYWJsZWQgPSBoYXNJMThuKGNvbGxlY3Rpb24pICYmIGxvY2FsZXMubGVuZ3RoID4gMTtcbiAgICBjb25zdCBlZGl0b3JQcm9wcyA9IHtcbiAgICAgIGNvbGxlY3Rpb24sXG4gICAgICBlbnRyeSxcbiAgICAgIGZpZWxkcyxcbiAgICAgIGZpZWxkc01ldGFEYXRhLFxuICAgICAgZmllbGRzRXJyb3JzLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBvblZhbGlkYXRlLFxuICAgIH07XG5cbiAgICBjb25zdCBsZWZ0UGFuZWxMb2NhbGUgPSB0aGlzLnN0YXRlLmxlZnRQYW5lbExvY2FsZSB8fCBsb2NhbGVzPy5bMF07XG4gICAgY29uc3QgZWRpdG9yID0gKFxuICAgICAgPENvbnRyb2xQYW5lQ29udGFpbmVyIG92ZXJGbG93IGJsb2NrRW50cnk9e3Nob3dFdmVudEJsb2NrZXJ9PlxuICAgICAgICA8RWRpdG9yQ29udHJvbFBhbmVcbiAgICAgICAgICB7Li4uZWRpdG9yUHJvcHN9XG4gICAgICAgICAgcmVmPXtjID0+ICh0aGlzLmNvbnRyb2xQYW5lUmVmID0gYyl9XG4gICAgICAgICAgbG9jYWxlPXtsZWZ0UGFuZWxMb2NhbGV9XG4gICAgICAgICAgdD17dH1cbiAgICAgICAgICBvbkxvY2FsZUNoYW5nZT17dGhpcy5oYW5kbGVMZWZ0UGFuZWxMb2NhbGVDaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICA8L0NvbnRyb2xQYW5lQ29udGFpbmVyPlxuICAgICk7XG5cbiAgICBjb25zdCBlZGl0b3IyID0gKFxuICAgICAgPENvbnRyb2xQYW5lQ29udGFpbmVyIG92ZXJGbG93PXshdGhpcy5zdGF0ZS5zY3JvbGxTeW5jRW5hYmxlZH0gYmxvY2tFbnRyeT17c2hvd0V2ZW50QmxvY2tlcn0+XG4gICAgICAgIDxFZGl0b3JDb250cm9sUGFuZSB7Li4uZWRpdG9yUHJvcHN9IGxvY2FsZT17bG9jYWxlcz8uWzFdfSB0PXt0fSAvPlxuICAgICAgPC9Db250cm9sUGFuZUNvbnRhaW5lcj5cbiAgICApO1xuXG4gICAgY29uc3QgcHJldmlld0VudHJ5ID0gY29sbGVjdGlvbkkxOG5FbmFibGVkXG4gICAgICA/IGdldFByZXZpZXdFbnRyeShlbnRyeSwgbGVmdFBhbmVsTG9jYWxlLCBkZWZhdWx0TG9jYWxlKVxuICAgICAgOiBlbnRyeTtcblxuICAgIGNvbnN0IGVkaXRvcldpdGhQcmV2aWV3ID0gKFxuICAgICAgPFNjcm9sbFN5bmMgZW5hYmxlZD17dGhpcy5zdGF0ZS5zY3JvbGxTeW5jRW5hYmxlZH0+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPFJlYWN0U3BsaXRQYW5lR2xvYmFsU3R5bGVzIC8+XG4gICAgICAgICAgPFN0eWxlZFNwbGl0UGFuZVxuICAgICAgICAgICAgbWF4U2l6ZT17LTEwMH1cbiAgICAgICAgICAgIG1pblNpemU9ezQwMH1cbiAgICAgICAgICAgIGRlZmF1bHRTaXplPXtwYXJzZUludChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShTUExJVF9QQU5FX1BPU0lUSU9OKSwgMTApIHx8ICc1MCUnfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3NpemUgPT4gbG9jYWxTdG9yYWdlLnNldEl0ZW0oU1BMSVRfUEFORV9QT1NJVElPTiwgc2l6ZSl9XG4gICAgICAgICAgICBvbkRyYWdTdGFydGVkPXt0aGlzLmhhbmRsZVNwbGl0UGFuZURyYWdTdGFydH1cbiAgICAgICAgICAgIG9uRHJhZ0ZpbmlzaGVkPXt0aGlzLmhhbmRsZVNwbGl0UGFuZURyYWdGaW5pc2hlZH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8U2Nyb2xsU3luY1BhbmU+e2VkaXRvcn08L1Njcm9sbFN5bmNQYW5lPlxuICAgICAgICAgICAgPFByZXZpZXdQYW5lQ29udGFpbmVyIGJsb2NrRW50cnk9e3Nob3dFdmVudEJsb2NrZXJ9PlxuICAgICAgICAgICAgICA8RWRpdG9yUHJldmlld1BhbmVcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uPXtjb2xsZWN0aW9ufVxuICAgICAgICAgICAgICAgIGVudHJ5PXtwcmV2aWV3RW50cnl9XG4gICAgICAgICAgICAgICAgZmllbGRzPXtmaWVsZHN9XG4gICAgICAgICAgICAgICAgZmllbGRzTWV0YURhdGE9e2ZpZWxkc01ldGFEYXRhfVxuICAgICAgICAgICAgICAgIGxvY2FsZT17bGVmdFBhbmVsTG9jYWxlfVxuICAgICAgICAgICAgICAgIG9uRmllbGRDbGljaz17dGhpcy5oYW5kbGVGaWVsZENsaWNrfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9QcmV2aWV3UGFuZUNvbnRhaW5lcj5cbiAgICAgICAgICA8L1N0eWxlZFNwbGl0UGFuZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1Njcm9sbFN5bmM+XG4gICAgKTtcblxuICAgIGNvbnN0IGVkaXRvcldpdGhOb3RlcyA9IChcbiAgICAgIDxTY3JvbGxTeW5jIGVuYWJsZWQ9e3RoaXMuc3RhdGUuc2Nyb2xsU3luY0VuYWJsZWR9PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxSZWFjdFNwbGl0UGFuZUdsb2JhbFN0eWxlcyAvPlxuICAgICAgICAgIDxTdHlsZWRTcGxpdFBhbmVcbiAgICAgICAgICAgIG1heFNpemU9ey0xMDB9XG4gICAgICAgICAgICBtaW5TaXplPXs0MDB9XG4gICAgICAgICAgICBkZWZhdWx0U2l6ZT17cGFyc2VJbnQobG9jYWxTdG9yYWdlLmdldEl0ZW0oU1BMSVRfUEFORV9QT1NJVElPTiksIDEwKSB8fCAnNTAlJ31cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtzaXplID0+IGxvY2FsU3RvcmFnZS5zZXRJdGVtKFNQTElUX1BBTkVfUE9TSVRJT04sIHNpemUpfVxuICAgICAgICAgICAgb25EcmFnU3RhcnRlZD17dGhpcy5oYW5kbGVTcGxpdFBhbmVEcmFnU3RhcnR9XG4gICAgICAgICAgICBvbkRyYWdGaW5pc2hlZD17dGhpcy5oYW5kbGVTcGxpdFBhbmVEcmFnRmluaXNoZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFNjcm9sbFN5bmNQYW5lPntlZGl0b3J9PC9TY3JvbGxTeW5jUGFuZT5cbiAgICAgICAgICAgIDxOb3Rlc1BhbmVDb250YWluZXIgYmxvY2tFbnRyeT17c2hvd0V2ZW50QmxvY2tlcn0+XG4gICAgICAgICAgICAgIDxFZGl0b3JOb3Rlc1BhbmVcbiAgICAgICAgICAgICAgICBub3Rlcz17dGhpcy5wcm9wcy5ub3Rlc31cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5oYW5kbGVOb3Rlc0NoYW5nZX1cbiAgICAgICAgICAgICAgICBlbnRyeT17ZW50cnl9XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbj17Y29sbGVjdGlvbn1cbiAgICAgICAgICAgICAgICB1c2VyPXt1c2VyfVxuICAgICAgICAgICAgICAgIHQ9e3R9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L05vdGVzUGFuZUNvbnRhaW5lcj5cbiAgICAgICAgICA8L1N0eWxlZFNwbGl0UGFuZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1Njcm9sbFN5bmM+XG4gICAgKTtcblxuICAgIGNvbnN0IGVkaXRvcldpdGhFZGl0b3IgPSAoXG4gICAgICA8U2Nyb2xsU3luYyBlbmFibGVkPXt0aGlzLnN0YXRlLnNjcm9sbFN5bmNFbmFibGVkfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8U3R5bGVkU3BsaXRQYW5lXG4gICAgICAgICAgICBtYXhTaXplPXstMTAwfVxuICAgICAgICAgICAgZGVmYXVsdFNpemU9e3BhcnNlSW50KGxvY2FsU3RvcmFnZS5nZXRJdGVtKFNQTElUX1BBTkVfUE9TSVRJT04pLCAxMCkgfHwgJzUwJSd9XG4gICAgICAgICAgICBvbkNoYW5nZT17c2l6ZSA9PiBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShTUExJVF9QQU5FX1BPU0lUSU9OLCBzaXplKX1cbiAgICAgICAgICAgIG9uRHJhZ1N0YXJ0ZWQ9e3RoaXMuaGFuZGxlU3BsaXRQYW5lRHJhZ1N0YXJ0fVxuICAgICAgICAgICAgb25EcmFnRmluaXNoZWQ9e3RoaXMuaGFuZGxlU3BsaXRQYW5lRHJhZ0ZpbmlzaGVkfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxTY3JvbGxTeW5jUGFuZT57ZWRpdG9yfTwvU2Nyb2xsU3luY1BhbmU+XG4gICAgICAgICAgICA8U2Nyb2xsU3luY1BhbmU+e2VkaXRvcjJ9PC9TY3JvbGxTeW5jUGFuZT5cbiAgICAgICAgICA8L1N0eWxlZFNwbGl0UGFuZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L1Njcm9sbFN5bmM+XG4gICAgKTtcblxuICAgIGNvbnN0IGkxOG5WaXNpYmxlID0gY29sbGVjdGlvbkkxOG5FbmFibGVkICYmIHRoaXMuc3RhdGUuaTE4blZpc2libGU7XG4gICAgY29uc3QgcHJldmlld1Zpc2libGUgPSBwcmV2aWV3RW5hYmxlZCAmJiB0aGlzLnN0YXRlLnByZXZpZXdWaXNpYmxlO1xuICAgIGNvbnN0IG5vdGVzVmlzaWJsZSA9IG5vdGVzRW5hYmxlZCAmJiB0aGlzLnN0YXRlLm5vdGVzVmlzaWJsZTtcbiAgICBjb25zdCBzY3JvbGxTeW5jVmlzaWJsZSA9IGkxOG5WaXNpYmxlIHx8IHByZXZpZXdWaXNpYmxlIHx8IG5vdGVzVmlzaWJsZTtcblxuICAgIHJldHVybiAoXG4gICAgICA8RWRpdG9yQ29udGFpbmVyPlxuICAgICAgICA8RWRpdG9yVG9vbGJhclxuICAgICAgICAgIGlzUGVyc2lzdGluZz17ZW50cnkuZ2V0KCdpc1BlcnNpc3RpbmcnKX1cbiAgICAgICAgICBpc1B1Ymxpc2hpbmc9e2VudHJ5LmdldCgnaXNQdWJsaXNoaW5nJyl9XG4gICAgICAgICAgaXNVcGRhdGluZ1N0YXR1cz17ZW50cnkuZ2V0KCdpc1VwZGF0aW5nU3RhdHVzJyl9XG4gICAgICAgICAgaXNEZWxldGluZz17ZW50cnkuZ2V0KCdpc0RlbGV0aW5nJyl9XG4gICAgICAgICAgb25QZXJzaXN0PXt0aGlzLmhhbmRsZU9uUGVyc2lzdH1cbiAgICAgICAgICBvblBlcnNpc3RBbmROZXc9eygpID0+IHRoaXMuaGFuZGxlT25QZXJzaXN0KHsgY3JlYXRlTmV3OiB0cnVlIH0pfVxuICAgICAgICAgIG9uUGVyc2lzdEFuZER1cGxpY2F0ZT17KCkgPT4gdGhpcy5oYW5kbGVPblBlcnNpc3QoeyBjcmVhdGVOZXc6IHRydWUsIGR1cGxpY2F0ZTogdHJ1ZSB9KX1cbiAgICAgICAgICBvbkRlbGV0ZT17b25EZWxldGV9XG4gICAgICAgICAgb25EZWxldGVVbnB1Ymxpc2hlZENoYW5nZXM9e29uRGVsZXRlVW5wdWJsaXNoZWRDaGFuZ2VzfVxuICAgICAgICAgIG9uQ2hhbmdlU3RhdHVzPXtvbkNoYW5nZVN0YXR1c31cbiAgICAgICAgICBzaG93RGVsZXRlPXtzaG93RGVsZXRlfVxuICAgICAgICAgIG9uUHVibGlzaD17b25QdWJsaXNofVxuICAgICAgICAgIHVuUHVibGlzaD17dW5QdWJsaXNofVxuICAgICAgICAgIG9uRHVwbGljYXRlPXtvbkR1cGxpY2F0ZX1cbiAgICAgICAgICBvblB1Ymxpc2hBbmROZXc9eygpID0+IHRoaXMuaGFuZGxlT25QdWJsaXNoKHsgY3JlYXRlTmV3OiB0cnVlIH0pfVxuICAgICAgICAgIG9uUHVibGlzaEFuZER1cGxpY2F0ZT17KCkgPT4gdGhpcy5oYW5kbGVPblB1Ymxpc2goeyBjcmVhdGVOZXc6IHRydWUsIGR1cGxpY2F0ZTogdHJ1ZSB9KX1cbiAgICAgICAgICB1c2VyPXt1c2VyfVxuICAgICAgICAgIGhhc0NoYW5nZWQ9e2hhc0NoYW5nZWR9XG4gICAgICAgICAgY2FuQ3JlYXRlTmV3RW50cnk9e2NhbkNyZWF0ZU5ld0VudHJ5fVxuICAgICAgICAgIGRpc3BsYXlVcmw9e2Rpc3BsYXlVcmx9XG4gICAgICAgICAgY29sbGVjdGlvbj17Y29sbGVjdGlvbn1cbiAgICAgICAgICBoYXNXb3JrZmxvdz17aGFzV29ya2Zsb3d9XG4gICAgICAgICAgdXNlT3BlbkF1dGhvcmluZz17dXNlT3BlbkF1dGhvcmluZ31cbiAgICAgICAgICBoYXNVbnB1Ymxpc2hlZENoYW5nZXM9e2hhc1VucHVibGlzaGVkQ2hhbmdlc31cbiAgICAgICAgICBpc05ld0VudHJ5PXtpc05ld0VudHJ5fVxuICAgICAgICAgIGlzTW9kaWZpY2F0aW9uPXtpc01vZGlmaWNhdGlvbn1cbiAgICAgICAgICBjdXJyZW50U3RhdHVzPXtjdXJyZW50U3RhdHVzfVxuICAgICAgICAgIG9uTG9nb3V0Q2xpY2s9e29uTG9nb3V0Q2xpY2t9XG4gICAgICAgICAgbG9hZERlcGxveVByZXZpZXc9e2xvYWREZXBsb3lQcmV2aWV3fVxuICAgICAgICAgIGRlcGxveVByZXZpZXc9e2RlcGxveVByZXZpZXd9XG4gICAgICAgICAgZWRpdG9yQmFja0xpbms9e2VkaXRvckJhY2tMaW5rfVxuICAgICAgICAvPlxuICAgICAgICA8RWRpdG9yIGtleT17ZHJhZnRLZXl9PlxuICAgICAgICAgIDxWaWV3Q29udHJvbHM+XG4gICAgICAgICAgICB7Y29sbGVjdGlvbkkxOG5FbmFibGVkICYmIChcbiAgICAgICAgICAgICAgPEVkaXRvclRvZ2dsZVxuICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtpMThuVmlzaWJsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLmhhbmRsZVRvZ2dsZUkxOG59XG4gICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwicGFnZVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9e3QoJ2VkaXRvci5lZGl0b3JJbnRlcmZhY2UudG9nZ2xlSTE4bicpfVxuICAgICAgICAgICAgICAgIG1hcmdpblRvcD1cIjcwcHhcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtwcmV2aWV3RW5hYmxlZCAmJiAoXG4gICAgICAgICAgICAgIDxFZGl0b3JUb2dnbGVcbiAgICAgICAgICAgICAgICBpc0FjdGl2ZT17cHJldmlld1Zpc2libGV9XG4gICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oYW5kbGVUb2dnbGVQcmV2aWV3fVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImV5ZVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9e3QoJ2VkaXRvci5lZGl0b3JJbnRlcmZhY2UudG9nZ2xlUHJldmlldycpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtub3Rlc0VuYWJsZWQgJiYgKFxuICAgICAgICAgICAgICA8RWRpdG9yVG9nZ2xlXG4gICAgICAgICAgICAgICAgaXNBY3RpdmU9e25vdGVzVmlzaWJsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLmhhbmRsZVRvZ2dsZU5vdGVzfVxuICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cIndyaXRlXCJcbiAgICAgICAgICAgICAgICB0aXRsZT17dCgnZWRpdG9yLmVkaXRvckludGVyZmFjZS50b2dnbGVOb3RlcycpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtzY3JvbGxTeW5jVmlzaWJsZSAmJiAhY29sbGVjdGlvbi5nZXRJbihbJ2VkaXRvcicsICd2aXN1YWxFZGl0aW5nJ10pICYmIChcbiAgICAgICAgICAgICAgPEVkaXRvclRvZ2dsZVxuICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtzY3JvbGxTeW5jRW5hYmxlZH1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLmhhbmRsZVRvZ2dsZVNjcm9sbFN5bmN9XG4gICAgICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwic2Nyb2xsXCJcbiAgICAgICAgICAgICAgICB0aXRsZT17dCgnZWRpdG9yLmVkaXRvckludGVyZmFjZS50b2dnbGVTY3JvbGxTeW5jJyl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVmlld0NvbnRyb2xzPlxuICAgICAgICAgIDxFZGl0b3JDb250ZW50XG4gICAgICAgICAgICBpMThuVmlzaWJsZT17aTE4blZpc2libGV9XG4gICAgICAgICAgICBwcmV2aWV3VmlzaWJsZT17cHJldmlld1Zpc2libGV9XG4gICAgICAgICAgICBub3Rlc1Zpc2libGU9e25vdGVzVmlzaWJsZX1cbiAgICAgICAgICAgIGVkaXRvcj17ZWRpdG9yfVxuICAgICAgICAgICAgZWRpdG9yV2l0aEVkaXRvcj17ZWRpdG9yV2l0aEVkaXRvcn1cbiAgICAgICAgICAgIGVkaXRvcldpdGhQcmV2aWV3PXtlZGl0b3JXaXRoUHJldmlld31cbiAgICAgICAgICAgIGVkaXRvcldpdGhOb3Rlcz17ZWRpdG9yV2l0aE5vdGVzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvRWRpdG9yPlxuICAgICAgPC9FZGl0b3JDb250YWluZXI+XG4gICAgKTtcbiAgfVxufVxuXG5FZGl0b3JJbnRlcmZhY2UucHJvcFR5cGVzID0ge1xuICBjb2xsZWN0aW9uOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gIGVudHJ5OiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gIGZpZWxkczogSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3QuaXNSZXF1aXJlZCxcbiAgZmllbGRzTWV0YURhdGE6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgZmllbGRzRXJyb3JzOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvblZhbGlkYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvblBlcnNpc3Q6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIHNob3dEZWxldGU6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gIG9uRGVsZXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvbkRlbGV0ZVVucHVibGlzaGVkQ2hhbmdlczogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgb25QdWJsaXNoOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICB1blB1Ymxpc2g6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIG9uRHVwbGljYXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBvbkNoYW5nZVN0YXR1czogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgdXNlcjogUHJvcFR5cGVzLm9iamVjdCxcbiAgaGFzQ2hhbmdlZDogUHJvcFR5cGVzLmJvb2wsXG4gIGNhbkNyZWF0ZU5ld0VudHJ5OiBQcm9wVHlwZXMuYm9vbCxcbiAgZGlzcGxheVVybDogUHJvcFR5cGVzLnN0cmluZyxcbiAgaGFzV29ya2Zsb3c6IFByb3BUeXBlcy5ib29sLFxuICB1c2VPcGVuQXV0aG9yaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgaGFzVW5wdWJsaXNoZWRDaGFuZ2VzOiBQcm9wVHlwZXMuYm9vbCxcbiAgaXNOZXdFbnRyeTogUHJvcFR5cGVzLmJvb2wsXG4gIGlzTW9kaWZpY2F0aW9uOiBQcm9wVHlwZXMuYm9vbCxcbiAgaXNQdWJsaXNoZWQ6IFByb3BUeXBlcy5ib29sLFxuICBjdXJyZW50U3RhdHVzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBvbkxvZ291dENsaWNrOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBkZXBsb3lQcmV2aWV3OiBQcm9wVHlwZXMub2JqZWN0LFxuICBsb2FkRGVwbG95UHJldmlldzogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgZHJhZnRLZXk6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgbm90ZXM6IEltbXV0YWJsZVByb3BUeXBlcy5saXN0LFxuICBvbk5vdGVzQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYyxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEVkaXRvckludGVyZmFjZTtcbiJdfQ== */", toString: _EMOTION_STRINGIFIED_CSS_ERROR__ } }; const EditorToggle = /*#__PURE__*/_styled(IconButton, { target: "e1nx103k8", label: "EditorToggle" })(process.env.NODE_ENV === "production" ? { name: "cn3xcj", styles: "margin-bottom:12px" } : { name: "cn3xcj", styles: "margin-bottom:12px/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRvci9FZGl0b3JJbnRlcmZhY2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEN1QyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9FZGl0b3IvRWRpdG9ySW50ZXJmYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgeyBjc3MsIEdsb2JhbCB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCBTcGxpdFBhbmUgZnJvbSAncmVhY3Qtc3BsaXQtcGFuZSc7XG5pbXBvcnQge1xuICBjb2xvcnMsXG4gIGNvbG9yc1JhdyxcbiAgY29tcG9uZW50cyxcbiAgdHJhbnNpdGlvbnMsXG4gIEljb25CdXR0b24sXG4gIHpJbmRleCxcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgU2Nyb2xsU3luYywgU2Nyb2xsU3luY1BhbmUgfSBmcm9tICdyZWFjdC1zY3JvbGwtc3luYyc7XG5cbmltcG9ydCBFZGl0b3JDb250cm9sUGFuZSBmcm9tICcuL0VkaXRvckNvbnRyb2xQYW5lL0VkaXRvckNvbnRyb2xQYW5lJztcbmltcG9ydCBFZGl0b3JQcmV2aWV3UGFuZSBmcm9tICcuL0VkaXRvclByZXZpZXdQYW5lL0VkaXRvclByZXZpZXdQYW5lJztcbmltcG9ydCBFZGl0b3JOb3Rlc1BhbmUgZnJvbSAnLi9FZGl0b3JOb3Rlc1BhbmUvRWRpdG9yTm90ZXNQYW5lJztcbmltcG9ydCBFZGl0b3JUb29sYmFyIGZyb20gJy4vRWRpdG9yVG9vbGJhcic7XG5pbXBvcnQgeyBoYXNJMThuLCBnZXRJMThuSW5mbywgZ2V0UHJldmlld0VudHJ5IH0gZnJvbSAnLi4vLi4vbGliL2kxOG4nO1xuaW1wb3J0IHsgRklMRVMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29sbGVjdGlvblR5cGVzJztcbmltcG9ydCB7IGdldEZpbGVGcm9tU2x1ZyB9IGZyb20gJy4uLy4uL3JlZHVjZXJzL2NvbGxlY3Rpb25zJztcblxuY29uc3QgUFJFVklFV19WSVNJQkxFID0gJ2Ntcy5wcmV2aWV3LXZpc2libGUnO1xuY29uc3QgTk9URVNfVklTSUJMRSA9ICdjbXMubm90ZXMtdmlzaWJsZSc7XG5jb25zdCBTQ1JPTExfU1lOQ19FTkFCTEVEID0gJ2Ntcy5zY3JvbGwtc3luYy1lbmFibGVkJztcbmNvbnN0IFNQTEl