UNPKG

@bund-x/core

Version:

Master Components Core Library

389 lines (370 loc) 44.6 kB
"use strict"; function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.Input = void 0; var React = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _clsx = _interopRequireDefault(require("clsx")); var _reactJss = require("react-jss"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } var MdHeader = function MdHeader(_ref) { var children = _ref.children, style = _ref.style, className = _ref.className; return React.createElement("div", { style: style, className: className }, children); }; var MdBold = function MdBold(_ref2) { var children = _ref2.children, style = _ref2.style, className = _ref2.className, onClick = _ref2.onClick, onKeyDown = _ref2.onKeyDown; return React.createElement("div", { onClick: onClick, onKeyDown: onKeyDown, style: style, className: className }, children); }; var MdItalic = function MdItalic(_ref3) { var children = _ref3.children, style = _ref3.style, className = _ref3.className, onClick = _ref3.onClick, onKeyDown = _ref3.onKeyDown; return React.createElement("div", { onClick: onClick, onKeyDown: onKeyDown, style: style, className: className }, children); }; var useStyles = (0, _reactJss.createUseStyles)({ 'input-xyz': { display: 'inline-block' }, container: { position: 'relative', color: '#c9d1d9', backgroundColor: '#0d1117', border: '1px solid #30363d', borderRadius: '6px', margin: '16px', '& *': { boxSizing: 'border-box' } }, caret: { '&:after': { position: 'absolute', top: '11px', right: '100%', left: '-8px', display: 'block', width: '8px', height: '16px', pointerEvents: 'none', clipPath: 'polygon(0 50%,100% 0,100% 100%)' }, '&:before': { position: 'absolute', top: '11px', right: '100%', left: '-8px', display: 'block', width: '8px', height: '16px', pointerEvents: 'none', clipPath: 'polygon(0 50%,100% 0,100% 100%)' } }, 'fieldset-xyz': { display: 'grid', borderRadius: '8px', padding: 0, margin: 0, border: 0 }, tabnav: { marginTop: 0, borderBottom: '1px solid #30363d' }, 'tabnav-head': { marginBottom: '8px', background: '#161b22', borderRadius: '6px 6px 0 0' }, 'tabnavs-header': { background: '#161b22' }, 'tabnav-tabs': { display: 'block !important', marginBottom: '-1px', overflow: 'auto' }, 'tabnav-tab': { display: 'inline-block', flexShrink: 0, padding: '8px 16px', fontSize: '14px', lineHeight: '23px', color: '#8b949e', textDecoration: 'none', backgroundColor: 'initial', border: '1px solid transparent', borderBottom: 0, transition: 'color .2s cubic-bezier(.3,0,.5,1)', '&[aria-selected=true]': { color: '#c9d1d9', backgroundColor: '#0d1117', borderColor: '#30363d', borderRadius: '6px 6px 0 0' }, '&:focus': { outline: 'none' } }, 'btn-link': { display: 'inline-block', fontSize: 'inherit', color: '#58a6ff', textDecoration: 'none', whiteSpace: 'nowrap', cursor: 'pointer', userSelect: 'none', backgroundColor: 'initial', appearance: 'none' }, toolbar: { background: '#0d1117' }, flex: { display: 'flex!important' }, border: { border: '1px solid #30363d !important' }, 'border-color': { borderColor: '#30363d !important' }, 'border-bottom': { borderBottom: '0 !important' }, 'border-top': { borderTop: '1px solid #30363d !important' }, 'my-4': { marginRight: '4px !important', marginLeft: '4px !important' }, 'mx-8': { marginTop: '8px !important', marginBottom: '8px !important' }, 'my-8': { marginRight: '8px !important', marginLeft: '8px !important' }, 'my-16': { marginRight: '16px !important', marginLeft: '16px !important' }, 'mr-16': { marginRight: '16px !important' }, 'py-16': { paddingRight: '16px !important', paddingLeft: '16px !important' }, 'pt-8': { paddingTop: '8px !important' }, 'pyt-8': { paddingRight: '8px !important', paddingLeft: '8px !important', paddingTop: '8px !important' }, 'mt-8': { marginTop: '8px !important' }, 'md-block': { display: 'block !important' }, textarea: { width: '100%', height: '150px', borderRadius: '6px', outline: 'none', background: 'transparent', padding: '14px', color: 'white', overflowX: 'hidden', resize: 'vertical', cursor: 'text', whiteSpace: 'pre-wrap', overflowWrap: 'break-word' }, 'toolbar-item': { display: 'block', "float": 'left', padding: '4px', fontSize: '14px', fill: '#8b949e', cursor: 'pointer', background: 'none', border: 0, '&:hover': { fill: '#58a6ff' } } }, { name: 'bund-' }); var Input = function Input(props) { var children = props.children, title = props.title, className = props.className, style = props.style, handleSubmit = props.handleSubmit, rest = _objectWithoutProperties(props, ["children", "title", "className", "style", "handleSubmit"]); var classes = useStyles(); return React.createElement("div", { className: (0, _clsx["default"])(classes.container, classes.border, classes.caret, className) }, React.createElement("form", { onSubmit: handleSubmit, noValidate: true }, React.createElement("fieldset", _extends({ className: (0, _clsx["default"])(classes['fieldset-xyz'], className) }, rest, { style: { borderRadius: '8px', padding: 0, margin: 0 } }), React.createElement("div", { className: (0, _clsx["default"])(classes['tabnav'], classes['border-color'], classes['border-bottom'], 'comment-form-head tabnav d-flex flex-justify-between mb-2 p-0 tabnav--responsive flex-column border-bottom-0 mb-0 mb-lg-2 flex-items-stretch border-lg-bottom color-border-primary flex-lg-items-center flex-lg-row') }, React.createElement("div", { className: (0, _clsx["default"])(classes['tabnav-head'], classes['tabnavs-header']) }, React.createElement("div", { className: (0, _clsx["default"])(classes['tabnav-tabs'], classes['my-8'], classes['pt-8'], classes['md-block'], className), role: "tablist" }, React.createElement("button", { type: "button", className: (0, _clsx["default"])(classes['tabnav-tab'], classes['py-16'], classes['btn-link'], className), role: "tab", "aria-selected": "true", tabIndex: "0" }, "Write"), React.createElement("button", { type: "button", className: (0, _clsx["default"])(classes['tabnav-tab'], classes['py-16'], classes['btn-link'], className), role: "tab", "aria-selected": "false", tabIndex: "-1" }, "Preview"), React.createElement("div", { className: "bitmoji-floater", style: { backgroundPosition: '0px center', backgroundImage: 'url(chrome-extension://bfgdeiadkckfbkeigkoncpdieiiefpig/static/media/bitmoji-icon-48.png)', backgroundSize: 'contain', backgroundRepeat: 'no-repeat', width: '28px', height: '28px', marginBottom: '-8px', display: 'inline-block' } })), React.createElement("div", { className: (0, _clsx["default"])(classes.toolbar, classes.flex, classes['pyt-8'], classes['border-top']) }, React.createElement("div", { className: (0, _clsx["default"])(classes['mr-16'], 'flex-nowrap d-none d-md-inline-block mr-3'), style: { display: 'inline-block !important', marginRight: '16px !important', flexWrap: 'nowrap !important' } }, React.createElement(MdHeader, { tabindex: "-1", className: (0, _clsx["default"])(classes['toolbar-item'], classes['my-4'], 'toolbar-item tooltipped tooltipped-sw mx-1'), "aria-label": "Add header text", "data-ga-click": "Markdown Toolbar, click, header", role: "button" }, React.createElement("svg", { className: "octicon octicon-heading", height: "16", viewBox: "0 0 16 16", version: "1.1", width: "16", "aria-hidden": "true" }, React.createElement("path", { fillRule: "evenodd", d: "M3.75 2a.75.75 0 01.75.75V7h7V2.75a.75.75 0 011.5 0v10.5a.75.75 0 01-1.5 0V8.5h-7v4.75a.75.75 0 01-1.5 0V2.75A.75.75 0 013.75 2z" }))), React.createElement(MdBold, { tabindex: "-1", className: (0, _clsx["default"])(classes['toolbar-item'], classes['my-4'], 'toolbar-item tooltipped tooltipped-sw mx-1'), "aria-label": "Add bold text <ctrl+b>", "data-ga-click": "Markdown Toolbar, click, bold", role: "button", onClick: function onClick() { return console.log('clicked'); }, hotkey: "b" }, React.createElement("svg", { className: "octicon octicon-bold", height: "16", viewBox: "0 0 16 16", version: "1.1", width: "16", "aria-hidden": "true" }, React.createElement("path", { fillRule: "evenodd", d: "M4 2a1 1 0 00-1 1v10a1 1 0 001 1h5.5a3.5 3.5 0 001.852-6.47A3.5 3.5 0 008.5 2H4zm4.5 5a1.5 1.5 0 100-3H5v3h3.5zM5 9v3h4.5a1.5 1.5 0 000-3H5z" }))), React.createElement(MdItalic, { tabindex: "-1", className: (0, _clsx["default"])(classes['toolbar-item'], classes['my-4'], 'toolbar-item tooltipped tooltipped-sw mx-1'), "aria-label": "Add italic text <ctrl+i>", "data-ga-click": "Markdown Toolbar, click, italic", role: "button", hotkey: "i" }, React.createElement("svg", { className: "octicon octicon-italic", height: "16", viewBox: "0 0 16 16", version: "1.1", width: "16", "aria-hidden": "true" }, React.createElement("path", { fillRule: "evenodd", d: "M6 2.75A.75.75 0 016.75 2h6.5a.75.75 0 010 1.5h-2.505l-3.858 9H9.25a.75.75 0 010 1.5h-6.5a.75.75 0 010-1.5h2.505l3.858-9H6.75A.75.75 0 016 2.75z" })))))), React.createElement("div", null, React.createElement("div", { className: (0, _clsx["default"])(classes['mx-8'], classes['my-8']) }, React.createElement("textarea", { name: "Text1", cols: "40", rows: "5", className: classes.textarea }), React.createElement("input", { "aria-colcount": "5", cols: "40", rows: "5" }))))))); }; exports.Input = Input; Input.propTypes = { children: _propTypes["default"].node, className: _propTypes["default"].string, style: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].array]), title: _propTypes["default"].string }; Input.displayName = 'i'; var _default = Input; exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9JbnB1dC9JbnB1dC5qcyJdLCJuYW1lcyI6WyJNZEhlYWRlciIsImNoaWxkcmVuIiwic3R5bGUiLCJjbGFzc05hbWUiLCJNZEJvbGQiLCJvbkNsaWNrIiwib25LZXlEb3duIiwiTWRJdGFsaWMiLCJ1c2VTdHlsZXMiLCJkaXNwbGF5IiwiY29udGFpbmVyIiwicG9zaXRpb24iLCJjb2xvciIsImJhY2tncm91bmRDb2xvciIsImJvcmRlciIsImJvcmRlclJhZGl1cyIsIm1hcmdpbiIsImJveFNpemluZyIsImNhcmV0IiwidG9wIiwicmlnaHQiLCJsZWZ0Iiwid2lkdGgiLCJoZWlnaHQiLCJwb2ludGVyRXZlbnRzIiwiY2xpcFBhdGgiLCJwYWRkaW5nIiwidGFibmF2IiwibWFyZ2luVG9wIiwiYm9yZGVyQm90dG9tIiwibWFyZ2luQm90dG9tIiwiYmFja2dyb3VuZCIsIm92ZXJmbG93IiwiZmxleFNocmluayIsImZvbnRTaXplIiwibGluZUhlaWdodCIsInRleHREZWNvcmF0aW9uIiwidHJhbnNpdGlvbiIsImJvcmRlckNvbG9yIiwib3V0bGluZSIsIndoaXRlU3BhY2UiLCJjdXJzb3IiLCJ1c2VyU2VsZWN0IiwiYXBwZWFyYW5jZSIsInRvb2xiYXIiLCJmbGV4IiwiYm9yZGVyVG9wIiwibWFyZ2luUmlnaHQiLCJtYXJnaW5MZWZ0IiwicGFkZGluZ1JpZ2h0IiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nVG9wIiwidGV4dGFyZWEiLCJvdmVyZmxvd1giLCJyZXNpemUiLCJvdmVyZmxvd1dyYXAiLCJmaWxsIiwibmFtZSIsIklucHV0IiwicHJvcHMiLCJ0aXRsZSIsImhhbmRsZVN1Ym1pdCIsInJlc3QiLCJjbGFzc2VzIiwiYmFja2dyb3VuZFBvc2l0aW9uIiwiYmFja2dyb3VuZEltYWdlIiwiYmFja2dyb3VuZFNpemUiLCJiYWNrZ3JvdW5kUmVwZWF0IiwiZmxleFdyYXAiLCJjb25zb2xlIiwibG9nIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwi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S0UsSUFBQSxLQUFLLEVBQUMsSUFMUjtBQU1FLG1CQUFZO0FBTmQsS0FPRTtBQUNFLElBQUEsUUFBUSxFQUFDLFNBRFg7QUFFRSxJQUFBLENBQUMsRUFBQztBQUZKLElBUEYsQ0FYRixDQTFERixDQVBGLENBeERGLENBUEYsRUEwSkUsaUNBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBRSxzQkFBS0EsT0FBTyxDQUFDLE1BQUQsQ0FBWixFQUFzQkEsT0FBTyxDQUFDLE1BQUQsQ0FBN0I7QUFBaEIsS0FDRTtBQUNFLElBQUEsSUFBSSxFQUFDLE9BRFA7QUFFRSxJQUFBLElBQUksRUFBQyxJQUZQO0FBR0UsSUFBQSxJQUFJLEVBQUMsR0FIUDtBQUlFLElBQUEsU0FBUyxFQUFFQSxPQUFPLENBQUNYO0FBSnJCLElBREYsRUFRRTtBQUFPLHFCQUFjLEdBQXJCO0FBQXlCLElBQUEsSUFBSSxFQUFDLElBQTlCO0FBQW1DLElBQUEsSUFBSSxFQUFDO0FBQXhDLElBUkYsQ0FERixDQTFKRixDQVJGLENBREYsQ0FQRixDQURGO0FBNExELENBL0xNOzs7QUFpTVBNLEtBQUssQ0FBQ2EsU0FBTixHQUFrQjtBQUNoQnRFLEVBQUFBLFFBQVEsRUFBRXVFLHNCQUFVQyxJQURKO0FBRWhCdEUsRUFBQUEsU0FBUyxFQUFFcUUsc0JBQVVFLE1BRkw7QUFHaEJ4RSxFQUFBQSxLQUFLLEVBQUVzRSxzQkFBVUcsU0FBVixDQUFvQixDQUFDSCxzQkFBVUksTUFBWCxFQUFtQkosc0JBQVVLLEtBQTdCLENBQXBCLENBSFM7QUFJaEJqQixFQUFBQSxLQUFLLEVBQUVZLHNCQUFVRTtBQUpELENBQWxCO0FBT0FoQixLQUFLLENBQUNvQixXQUFOLEdBQW9CLEdBQXBCO2VBRWVwQixLIiwic291cmNlUm9vdCI6ImNvcmUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCdcclxuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJ1xyXG5pbXBvcnQgY2xzeCBmcm9tICdjbHN4J1xyXG5pbXBvcnQgeyBjcmVhdGVVc2VTdHlsZXMgfSBmcm9tICdyZWFjdC1qc3MnXHJcblxyXG5jb25zdCBNZEhlYWRlciA9ICh7IGNoaWxkcmVuLCBzdHlsZSwgY2xhc3NOYW1lIH0pID0+IHtcclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBzdHlsZT17c3R5bGV9IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cclxuICAgICAge2NoaWxkcmVufVxyXG4gICAgPC9kaXY+XHJcbiAgKVxyXG59XHJcblxyXG5jb25zdCBNZEJvbGQgPSAoeyBjaGlsZHJlbiwgc3R5bGUsIGNsYXNzTmFtZSwgb25DbGljaywgb25LZXlEb3duIH0pID0+IHtcclxuICByZXR1cm4gKFxyXG4gICAgPGRpdlxyXG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxyXG4gICAgICBvbktleURvd249e29uS2V5RG93bn1cclxuICAgICAgc3R5bGU9e3N0eWxlfVxyXG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XHJcbiAgICAgIHtjaGlsZHJlbn1cclxuICAgIDwvZGl2PlxyXG4gIClcclxufVxyXG5cclxuY29uc3QgTWRJdGFsaWMgPSAoeyBjaGlsZHJlbiwgc3R5bGUsIGNsYXNzTmFtZSwgb25DbGljaywgb25LZXlEb3duIH0pID0+IHtcclxuICByZXR1cm4gKFxyXG4gICAgPGRpdlxyXG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxyXG4gICAgICBvbktleURvd249e29uS2V5RG93bn1cclxuICAgICAgc3R5bGU9e3N0eWxlfVxyXG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XHJcbiAgICAgIHtjaGlsZHJlbn1cclxuICAgIDwvZGl2PlxyXG4gIClcclxufVxyXG5cclxuY29uc3QgdXNlU3R5bGVzID0gY3JlYXRlVXNlU3R5bGVzKFxyXG4gIHtcclxuICAgICdpbnB1dC14eXonOiB7XHJcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snXHJcbiAgICB9LFxyXG4gICAgY29udGFpbmVyOiB7XHJcbiAgICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgICBjb2xvcjogJyNjOWQxZDknLFxyXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjMGQxMTE3JyxcclxuICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkICMzMDM2M2QnLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc2cHgnLFxyXG4gICAgICBtYXJnaW46ICcxNnB4JyxcclxuICAgICAgJyYgKic6IHtcclxuICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94J1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgY2FyZXQ6IHtcclxuICAgICAgJyY6YWZ0ZXInOiB7XHJcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICAgICAgdG9wOiAnMTFweCcsXHJcbiAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICBsZWZ0OiAnLThweCcsXHJcbiAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcclxuICAgICAgICB3aWR0aDogJzhweCcsXHJcbiAgICAgICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICAgICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxyXG4gICAgICAgIGNsaXBQYXRoOiAncG9seWdvbigwIDUwJSwxMDAlIDAsMTAwJSAxMDAlKSdcclxuICAgICAgfSxcclxuICAgICAgJyY6YmVmb3JlJzoge1xyXG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgIHRvcDogJzExcHgnLFxyXG4gICAgICAgIHJpZ2h0OiAnMTAwJScsXHJcbiAgICAgICAgbGVmdDogJy04cHgnLFxyXG4gICAgICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICAgICAgd2lkdGg6ICc4cHgnLFxyXG4gICAgICAgIGhlaWdodDogJzE2cHgnLFxyXG4gICAgICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcclxuICAgICAgICBjbGlwUGF0aDogJ3BvbHlnb24oMCA1MCUsMTAwJSAwLDEwMCUgMTAwJSknXHJcbiAgICAgIH1cclxuICAgIH0sXHJcblxyXG4gICAgJ2ZpZWxkc2V0LXh5eic6IHtcclxuICAgICAgZGlzcGxheTogJ2dyaWQnLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc4cHgnLFxyXG4gICAgICBwYWRkaW5nOiAwLFxyXG4gICAgICBtYXJnaW46IDAsXHJcbiAgICAgIGJvcmRlcjogMFxyXG4gICAgfSxcclxuICAgIHRhYm5hdjoge1xyXG4gICAgICBtYXJnaW5Ub3A6IDAsXHJcbiAgICAgIC8vIG1hcmdpbkJvdHRvbTogJzhweCcsXHJcbiAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCAjMzAzNjNkJ1xyXG4gICAgfSxcclxuICAgICd0YWJuYXYtaGVhZCc6IHtcclxuICAgICAgLy8gcGFkZGluZzogJzhweCA4cHggMCcsXHJcbiAgICAgIG1hcmdpbkJvdHRvbTogJzhweCcsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjMTYxYjIyJyxcclxuICAgICAgYm9yZGVyUmFkaXVzOiAnNnB4IDZweCAwIDAnXHJcbiAgICB9LFxyXG5cclxuICAgICd0YWJuYXZzLWhlYWRlcic6IHtcclxuICAgICAgYmFja2dyb3VuZDogJyMxNjFiMjInXHJcbiAgICB9LFxyXG5cclxuICAgICd0YWJuYXYtdGFicyc6IHtcclxuICAgICAgZGlzcGxheTogJ2Jsb2NrICFpbXBvcnRhbnQnLFxyXG4gICAgICBtYXJnaW5Cb3R0b206ICctMXB4JyxcclxuICAgICAgb3ZlcmZsb3c6ICdhdXRvJ1xyXG4gICAgfSxcclxuICAgICd0YWJuYXYtdGFiJzoge1xyXG4gICAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcclxuICAgICAgZmxleFNocmluazogMCxcclxuICAgICAgcGFkZGluZzogJzhweCAxNnB4JyxcclxuICAgICAgZm9udFNpemU6ICcxNHB4JyxcclxuICAgICAgbGluZUhlaWdodDogJzIzcHgnLFxyXG4gICAgICBjb2xvcjogJyM4Yjk0OWUnLFxyXG4gICAgICB0ZXh0RGVjb3JhdGlvbjogJ25vbmUnLFxyXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdpbml0aWFsJyxcclxuICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkIHRyYW5zcGFyZW50JyxcclxuICAgICAgYm9yZGVyQm90dG9tOiAwLFxyXG4gICAgICB0cmFuc2l0aW9uOiAnY29sb3IgLjJzIGN1YmljLWJlemllciguMywwLC41LDEpJyxcclxuICAgICAgJyZbYXJpYS1zZWxlY3RlZD10cnVlXSc6IHtcclxuICAgICAgICBjb2xvcjogJyNjOWQxZDknLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogJyMwZDExMTcnLFxyXG4gICAgICAgIGJvcmRlckNvbG9yOiAnIzMwMzYzZCcsXHJcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnNnB4IDZweCAwIDAnXHJcbiAgICAgIH0sXHJcbiAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgIG91dGxpbmU6ICdub25lJ1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgJ2J0bi1saW5rJzoge1xyXG4gICAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcclxuICAgICAgLy8gcGFkZGluZzogMCxcclxuICAgICAgZm9udFNpemU6ICdpbmhlcml0JyxcclxuICAgICAgY29sb3I6ICcjNThhNmZmJyxcclxuICAgICAgdGV4dERlY29yYXRpb246ICdub25lJyxcclxuICAgICAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXHJcbiAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICB1c2VyU2VsZWN0OiAnbm9uZScsXHJcbiAgICAgIGJhY2tncm91bmRDb2xvcjogJ2luaXRpYWwnLFxyXG4gICAgICAvLyBib3JkZXI6IDAsXHJcbiAgICAgIGFwcGVhcmFuY2U6ICdub25lJ1xyXG4gICAgfSxcclxuICAgIHRvb2xiYXI6IHtcclxuICAgICAgYmFja2dyb3VuZDogJyMwZDExMTcnXHJcbiAgICB9LFxyXG4gICAgZmxleDoge1xyXG4gICAgICBkaXNwbGF5OiAnZmxleCFpbXBvcnRhbnQnXHJcbiAgICB9LFxyXG4gICAgYm9yZGVyOiB7XHJcbiAgICAgIGJvcmRlcjogJzFweCBzb2xpZCAjMzAzNjNkICFpbXBvcnRhbnQnXHJcbiAgICB9LFxyXG4gICAgJ2JvcmRlci1jb2xvcic6IHtcclxuICAgICAgYm9yZGVyQ29sb3I6ICcjMzAzNjNkICFpbXBvcnRhbnQnXHJcbiAgICB9LFxyXG4gICAgJ2JvcmRlci1ib3R0b20nOiB7XHJcbiAgICAgIGJvcmRlckJvdHRvbTogJzAgIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnYm9yZGVyLXRvcCc6IHtcclxuICAgICAgYm9yZGVyVG9wOiAnMXB4IHNvbGlkICMzMDM2M2QgIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXktNCc6IHtcclxuICAgICAgbWFyZ2luUmlnaHQ6ICc0cHggIWltcG9ydGFudCcsXHJcbiAgICAgIG1hcmdpbkxlZnQ6ICc0cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXgtOCc6IHtcclxuICAgICAgbWFyZ2luVG9wOiAnOHB4ICFpbXBvcnRhbnQnLFxyXG4gICAgICBtYXJnaW5Cb3R0b206ICc4cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXktOCc6IHtcclxuICAgICAgbWFyZ2luUmlnaHQ6ICc4cHggIWltcG9ydGFudCcsXHJcbiAgICAgIG1hcmdpbkxlZnQ6ICc4cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXktMTYnOiB7XHJcbiAgICAgIG1hcmdpblJpZ2h0OiAnMTZweCAhaW1wb3J0YW50JyxcclxuICAgICAgbWFyZ2luTGVmdDogJzE2cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXItMTYnOiB7XHJcbiAgICAgIG1hcmdpblJpZ2h0OiAnMTZweCAhaW1wb3J0YW50J1xyXG4gICAgfSxcclxuICAgICdweS0xNic6IHtcclxuICAgICAgcGFkZGluZ1JpZ2h0OiAnMTZweCAhaW1wb3J0YW50JyxcclxuICAgICAgcGFkZGluZ0xlZnQ6ICcxNnB4ICFpbXBvcnRhbnQnXHJcbiAgICB9LFxyXG4gICAgJ3B0LTgnOiB7XHJcbiAgICAgIHBhZGRpbmdUb3A6ICc4cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAncHl0LTgnOiB7XHJcbiAgICAgIHBhZGRpbmdSaWdodDogJzhweCAhaW1wb3J0YW50JyxcclxuICAgICAgcGFkZGluZ0xlZnQ6ICc4cHggIWltcG9ydGFudCcsXHJcbiAgICAgIHBhZGRpbmdUb3A6ICc4cHggIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICAnbXQtOCc6IHtcclxuICAgICAgbWFyZ2luVG9wOiAnOHB4ICFpbXBvcnRhbnQnXHJcbiAgICB9LFxyXG4gICAgJ21kLWJsb2NrJzoge1xyXG4gICAgICBkaXNwbGF5OiAnYmxvY2sgIWltcG9ydGFudCdcclxuICAgIH0sXHJcbiAgICB0ZXh0YXJlYToge1xyXG4gICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICBoZWlnaHQ6ICcxNTBweCcsXHJcbiAgICAgIGJvcmRlclJhZGl1czogJzZweCcsXHJcbiAgICAgIG91dGxpbmU6ICdub25lJyxcclxuICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgcGFkZGluZzogJzE0cHgnLFxyXG4gICAgICBjb2xvcjogJ3doaXRlJyxcclxuICAgICAgb3ZlcmZsb3dYOiAnaGlkZGVuJyxcclxuICAgICAgcmVzaXplOiAndmVydGljYWwnLFxyXG4gICAgICBjdXJzb3I6ICd0ZXh0JyxcclxuICAgICAgd2hpdGVTcGFjZTogJ3ByZS13cmFwJyxcclxuICAgICAgb3ZlcmZsb3dXcmFwOiAnYnJlYWstd29yZCdcclxuICAgIH0sXHJcbiAgICAndG9vbGJhci1pdGVtJzoge1xyXG4gICAgICBkaXNwbGF5OiAnYmxvY2snLFxyXG4gICAgICBmbG9hdDogJ2xlZnQnLFxyXG4gICAgICBwYWRkaW5nOiAnNHB4JyxcclxuICAgICAgZm9udFNpemU6ICcxNHB4JyxcclxuICAgICAgZmlsbDogJyM4Yjk0OWUnLFxyXG4gICAgICBjdXJzb3I6ICdwb2ludGVyJyxcclxuICAgICAgYmFja2dyb3VuZDogJ25vbmUnLFxyXG4gICAgICBib3JkZXI6IDAsXHJcbiAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgIGZpbGw6ICcjNThhNmZmJ1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSxcclxuICB7IG5hbWU6ICdidW5kLScgfVxyXG4pXHJcblxyXG5leHBvcnQgY29uc3QgSW5wdXQgPSAocHJvcHMpID0+IHtcclxuICBjb25zdCB7IGNoaWxkcmVuLCB0aXRsZSwgY2xhc3NOYW1lLCBzdHlsZSwgaGFuZGxlU3VibWl0LCAuLi5yZXN0IH0gPSBwcm9wc1xyXG4gIGNvbnN0IGNsYXNzZXMgPSB1c2VTdHlsZXMoKVxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzTmFtZT17Y2xzeChcclxuICAgICAgICBjbGFzc2VzLmNvbnRhaW5lcixcclxuICAgICAgICBjbGFzc2VzLmJvcmRlcixcclxuICAgICAgICBjbGFzc2VzLmNhcmV0LFxyXG4gICAgICAgIGNsYXNzTmFtZVxyXG4gICAgICApfT5cclxuICAgICAgPGZvcm0gb25TdWJtaXQ9e2hhbmRsZVN1Ym1pdH0gbm9WYWxpZGF0ZT5cclxuICAgICAgICA8ZmllbGRzZXRcclxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xzeChjbGFzc2VzWydmaWVsZHNldC14eXonXSwgY2xhc3NOYW1lKX1cclxuICAgICAgICAgIHsuLi5yZXN0fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnOHB4JyxcclxuICAgICAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAgICAgbWFyZ2luOiAwXHJcbiAgICAgICAgICB9fT5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHN4KFxyXG4gICAgICAgICAgICAgIGNsYXNzZXNbJ3RhYm5hdiddLFxyXG4gICAgICAgICAgICAgIGNsYXNzZXNbJ2JvcmRlci1jb2xvciddLFxyXG4gICAgICAgICAgICAgIGNsYXNzZXNbJ2JvcmRlci1ib3R0b20nXSxcclxuICAgICAgICAgICAgICAnY29tbWVudC1mb3JtLWhlYWQgdGFibmF2IGQtZmxleCBmbGV4LWp1c3RpZnktYmV0d2VlbiBtYi0yIHAtMCB0YWJuYXYtLXJlc3BvbnNpdmUgZmxleC1jb2x1bW4gYm9yZGVyLWJvdHRvbS0wIG1iLTAgbWItbGctMiBmbGV4LWl0ZW1zLXN0cmV0Y2ggYm9yZGVyLWxnLWJvdHRvbSBjb2xvci1ib3JkZXItcHJpbWFyeSBmbGV4LWxnLWl0ZW1zLWNlbnRlciBmbGV4LWxnLXJvdydcclxuICAgICAgICAgICAgKX0+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2Nsc3goXHJcbiAgICAgICAgICAgICAgICBjbGFzc2VzWyd0YWJuYXYtaGVhZCddLFxyXG4gICAgICAgICAgICAgICAgY2xhc3Nlc1sndGFibmF2cy1oZWFkZXInXVxyXG4gICAgICAgICAgICAgICl9PlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzeChcclxuICAgICAgICAgICAgICAgICAgY2xhc3Nlc1sndGFibmF2LXRhYnMnXSxcclxuICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snbXktOCddLFxyXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzWydwdC04J10sXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ21kLWJsb2NrJ10sXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZVxyXG4gICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJsaXN0XCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Nsc3goXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1sndGFibmF2LXRhYiddLFxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ3B5LTE2J10sXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snYnRuLWxpbmsnXSxcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWVcclxuICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXHJcbiAgICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9XCIwXCI+XHJcbiAgICAgICAgICAgICAgICAgIFdyaXRlXHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzeChcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzWyd0YWJuYXYtdGFiJ10sXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1sncHktMTYnXSxcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzWydidG4tbGluayddLFxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZVxyXG4gICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICByb2xlPVwidGFiXCJcclxuICAgICAgICAgICAgICAgICAgYXJpYS1zZWxlY3RlZD1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9XCItMVwiPlxyXG4gICAgICAgICAgICAgICAgICBQcmV2aWV3XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImJpdG1vamktZmxvYXRlclwiXHJcbiAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiAnMHB4IGNlbnRlcicsXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOlxyXG4gICAgICAgICAgICAgICAgICAgICAgJ3VybChjaHJvbWUtZXh0ZW5zaW9uOi8vYmZnZGVpYWRrY2tmYmtlaWdrb25jcGRpZWlpZWZwaWcvc3RhdGljL21lZGlhL2JpdG1vamktaWNvbi00OC5wbmcpJyxcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZTogJ2NvbnRhaW4nLFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQ6ICduby1yZXBlYXQnLFxyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMjhweCcsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAnMjhweCcsXHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luQm90dG9tOiAnLThweCcsXHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2lubGluZS1ibG9jaydcclxuICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHN4KFxyXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzLnRvb2xiYXIsXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXMuZmxleCxcclxuICAgICAgICAgICAgICAgICAgY2xhc3Nlc1sncHl0LTgnXSxcclxuICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snYm9yZGVyLXRvcCddXHJcbiAgICAgICAgICAgICAgICApfT5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHN4KFxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ21yLTE2J10sXHJcbiAgICAgICAgICAgICAgICAgICAgJ2ZsZXgtbm93cmFwIGQtbm9uZSBkLW1kLWlubGluZS1ibG9jayBtci0zJ1xyXG4gICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2sgIWltcG9ydGFudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luUmlnaHQ6ICcxNnB4ICFpbXBvcnRhbnQnLFxyXG4gICAgICAgICAgICAgICAgICAgIGZsZXhXcmFwOiAnbm93cmFwICFpbXBvcnRhbnQnXHJcbiAgICAgICAgICAgICAgICAgIH19PlxyXG4gICAgICAgICAgICAgICAgICA8TWRIZWFkZXJcclxuICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Nsc3goXHJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzWyd0b29sYmFyLWl0ZW0nXSxcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ215LTQnXSxcclxuICAgICAgICAgICAgICAgICAgICAgICd0b29sYmFyLWl0ZW0gdG9vbHRpcHBlZCB0b29sdGlwcGVkLXN3IG14LTEnXHJcbiAgICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiQWRkIGhlYWRlciB0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICBkYXRhLWdhLWNsaWNrPVwiTWFya2Rvd24gVG9vbGJhciwgY2xpY2ssIGhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm9jdGljb24gb2N0aWNvbi1oZWFkaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zLjc1IDJhLjc1Ljc1IDAgMDEuNzUuNzVWN2g3VjIuNzVhLjc1Ljc1IDAgMDExLjUgMHYxMC41YS43NS43NSAwIDAxLTEuNSAwVjguNWgtN3Y0Ljc1YS43NS43NSAwIDAxLTEuNSAwVjIuNzVBLjc1Ljc1IDAgMDEzLjc1IDJ6XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8L01kSGVhZGVyPlxyXG5cclxuICAgICAgICAgICAgICAgICAgPE1kQm9sZFxyXG4gICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzeChcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ3Rvb2xiYXItaXRlbSddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snbXktNCddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgJ3Rvb2xiYXItaXRlbSB0b29sdGlwcGVkIHRvb2x0aXBwZWQtc3cgbXgtMSdcclxuICAgICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJBZGQgYm9sZCB0ZXh0IDxjdHJsK2I+XCJcclxuICAgICAgICAgICAgICAgICAgICBkYXRhLWdhLWNsaWNrPVwiTWFya2Rvd24gVG9vbGJhciwgY2xpY2ssIGJvbGRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGNvbnNvbGUubG9nKCdjbGlja2VkJyl9XHJcbiAgICAgICAgICAgICAgICAgICAgaG90a2V5PVwiYlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm9jdGljb24gb2N0aWNvbi1ib2xkXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk00IDJhMSAxIDAgMDAtMSAxdjEwYTEgMSAwIDAwMSAxaDUuNWEzLjUgMy41IDAgMDAxLjg1Mi02LjQ3QTMuNSAzLjUgMCAwMDguNSAySDR6bTQuNSA1YTEuNSAxLjUgMCAxMDAtM0g1djNoMy41ek01IDl2M2g0LjVhMS41IDEuNSAwIDAwMC0zSDV6XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8L01kQm9sZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxNZEl0YWxpY1xyXG4gICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzeChcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbJ3Rvb2xiYXItaXRlbSddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snbXktNCddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgJ3Rvb2xiYXItaXRlbSB0b29sdGlwcGVkIHRvb2x0aXBwZWQtc3cgbXgtMSdcclxuICAgICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJBZGQgaXRhbGljIHRleHQgPGN0cmwraT5cIlxyXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZ2EtY2xpY2s9XCJNYXJrZG93biBUb29sYmFyLCBjbGljaywgaXRhbGljXCJcclxuICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICBob3RrZXk9XCJpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwib2N0aWNvbiBvY3RpY29uLWl0YWxpY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb249XCIxLjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNiAyLjc1QS43NS43NSAwIDAxNi43NSAyaDYuNWEuNzUuNzUgMCAwMTAgMS41aC0yLjUwNWwtMy44NTggOUg5LjI1YS43NS43NSAwIDAxMCAxLjVoLTYuNWEuNzUuNzUgMCAwMTAtMS41aDIuNTA1bDMuODU4LTlINi43NUEuNzUuNzUgMCAwMTYgMi43NXpcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwvTWRJdGFsaWM+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Nsc3goY2xhc3Nlc1snbXgtOCddLCBjbGFzc2VzWydteS04J10pfT5cclxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICAgICAgICAgICBuYW1lPVwiVGV4dDFcIlxyXG4gICAgICAgICAgICAgICAgICBjb2xzPVwiNDBcIlxyXG4gICAgICAgICAgICAgICAgICByb3dzPVwiNVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3Nlcy50ZXh0YXJlYX1cclxuICAgICAgICAgICAgICAgIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGFyaWEtY29sY291bnQ9XCI1XCIgY29scz1cIjQwXCIgcm93cz1cIjVcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZmllbGRzZXQ+XHJcbiAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gIClcclxufVxyXG5cclxuSW5wdXQucHJvcFR5cGVzID0ge1xyXG4gIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZSxcclxuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXHJcbiAgc3R5bGU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5vYmplY3QsIFByb3BUeXBlcy5hcnJheV0pLFxyXG4gIHRpdGxlOiBQcm9wVHlwZXMuc3RyaW5nXHJcbn1cclxuXHJcbklucHV0LmRpc3BsYXlOYW1lID0gJ2knXHJcblxyXG5leHBvcnQgZGVmYXVsdCBJbnB1dFxyXG4iXX0=