decap-cms-widget-file
Version:
Widget for uploading files in Decap CMS.
55 lines (54 loc) • 187 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = withFileControl;
var _base = _interopRequireDefault(require("@emotion/styled/base"));
var _once2 = _interopRequireDefault(require("lodash/once"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
var _react2 = require("@emotion/react");
var _immutable = require("immutable");
var _uuid = require("uuid");
var _commonTags = require("common-tags");
var _decapCmsUiDefault = require("decap-cms-ui-default");
var _decapCmsLibUtil = require("decap-cms-lib-util");
var _arrayMove = require("array-move");
var _core = require("@dnd-kit/core");
var _sortable = require("@dnd-kit/sortable");
var _utilities = require("@dnd-kit/utilities");
var _modifiers = require("@dnd-kit/modifiers");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
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; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
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); }
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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 _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)."; }
const MAX_DISPLAY_LENGTH = 50;
const ImageWrapper = /*#__PURE__*/(0, _base.default)("div", {
target: "e1hax4ql7",
label: "ImageWrapper"
})("flex-basis:155px;width:155px;height:100px;margin-right:20px;margin-bottom:20px;border:", _decapCmsUiDefault.borders.textField, ";border-radius:", _decapCmsUiDefault.lengths.borderRadius, ";overflow:hidden;", _decapCmsUiDefault.effects.checkerboard, ";", _decapCmsUiDefault.shadows.inset, ";cursor:", props => props.sortable ? 'pointer' : 'auto', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0MrQiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgTWFwLCBMaXN0IH0gZnJvbSAnaW1tdXRhYmxlJztcbmltcG9ydCB7IG9uY2UgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgb25lTGluZSB9IGZyb20gJ2NvbW1vbi10YWdzJztcbmltcG9ydCB7XG4gIGxlbmd0aHMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIGJvcmRlcnMsXG4gIGVmZmVjdHMsXG4gIHNoYWRvd3MsXG4gIEljb25CdXR0b24sXG59IGZyb20gJ2RlY2FwLWNtcy11aS1kZWZhdWx0JztcbmltcG9ydCB7IGJhc2VuYW1lIH0gZnJvbSAnZGVjYXAtY21zLWxpYi11dGlsJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcbmltcG9ydCB7XG4gIERuZENvbnRleHQsXG4gIE1vdXNlU2Vuc29yLFxuICBUb3VjaFNlbnNvcixcbiAgY2xvc2VzdENlbnRlcixcbiAgdXNlU2Vuc29yLFxuICB1c2VTZW5zb3JzLFxufSBmcm9tICdAZG5kLWtpdC9jb3JlJztcbmltcG9ydCB7IFNvcnRhYmxlQ29udGV4dCwgdXNlU29ydGFibGUgfSBmcm9tICdAZG5kLWtpdC9zb3J0YWJsZSc7XG5pbXBvcnQgeyBDU1MgfSBmcm9tICdAZG5kLWtpdC91dGlsaXRpZXMnO1xuaW1wb3J0IHsgcmVzdHJpY3RUb1BhcmVudEVsZW1lbnQgfSBmcm9tICdAZG5kLWtpdC9tb2RpZmllcnMnO1xuXG5jb25zdCBNQVhfRElTUExBWV9MRU5HVEggPSA1MDtcblxuY29uc3QgSW1hZ2VXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZmxleC1iYXNpczogMTU1cHg7XG4gIHdpZHRoOiAxNTVweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6ICR7Ym9yZGVycy50ZXh0RmllbGR9O1xuICBib3JkZXItcmFkaXVzOiAke2xlbmd0aHMuYm9yZGVyUmFkaXVzfTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJHtlZmZlY3RzLmNoZWNrZXJib2FyZH07XG4gICR7c2hhZG93cy5pbnNldH07XG4gIGN1cnNvcjogJHtwcm9wcyA9PiAocHJvcHMuc29ydGFibGUgPyAncG9pbnRlcicgOiAnYXV0bycpfTtcbmA7XG5cbmNvbnN0IFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuYDtcblxuY29uc3QgU3R5bGVkSW1hZ2UgPSBzdHlsZWQuaW1nYFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuYDtcblxuZnVuY3Rpb24gSW1hZ2UocHJvcHMpIHtcbiAgcmV0dXJuIDxTdHlsZWRJbWFnZSByb2xlPVwicHJlc2VudGF0aW9uXCIgey4uLnByb3BzfSAvPjtcbn1cblxuZnVuY3Rpb24gU29ydGFibGVJbWFnZUJ1dHRvbnMoeyBvblJlbW92ZSwgb25SZXBsYWNlIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cIm1lZGlhXCIgb25DbGljaz17b25SZXBsYWNlfT48L0ljb25CdXR0b24+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwiY2xvc2VcIiBvbkNsaWNrPXtvblJlbW92ZX0+PC9JY29uQnV0dG9uPlxuICAgIDwvU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlKHByb3BzKSB7XG4gIGNvbnN0IHsgYXR0cmlidXRlcywgbGlzdGVuZXJzLCBzZXROb2RlUmVmLCB0cmFuc2Zvcm0sIHRyYW5zaXRpb24gfSA9IHVzZVNvcnRhYmxlKHtcbiAgICBpZDogcHJvcHMuaWQsXG4gIH0pO1xuXG4gIGNvbnN0IHN0eWxlID0ge1xuICAgIHRyYW5zZm9ybTogQ1NTLlRyYW5zZm9ybS50b1N0cmluZyh0cmFuc2Zvcm0pLFxuICAgIHRyYW5zaXRpb24sXG4gIH07XG5cbiAgY29uc3QgeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9ID0gcHJvcHM7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHJlZj17c2V0Tm9kZVJlZn0gc3R5bGU9e3N0eWxlfSB7Li4uYXR0cmlidXRlc30gey4uLmxpc3RlbmVyc30+XG4gICAgICA8SW1hZ2VXcmFwcGVyIHNvcnRhYmxlPlxuICAgICAgICA8SW1hZ2Ugc3JjPXtnZXRBc3NldChpdGVtVmFsdWUsIGZpZWxkKSB8fCAnJ30gLz5cbiAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zXG4gICAgICAgIGl0ZW09e2l0ZW1WYWx1ZX1cbiAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlfVxuICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZX1cbiAgICAgID48L1NvcnRhYmxlSW1hZ2VCdXR0b25zPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyKHtcbiAgaXRlbXMsXG4gIGdldEFzc2V0LFxuICBmaWVsZCxcbiAgb25Tb3J0RW5kLFxuICBvblJlbW92ZU9uZSxcbiAgb25SZXBsYWNlT25lLFxufSkge1xuICBjb25zdCBhY3RpdmF0aW9uQ29uc3RyYWludCA9IHsgZGlzdGFuY2U6IDQgfTtcbiAgY29uc3Qgc2Vuc29ycyA9IHVzZVNlbnNvcnMoXG4gICAgdXNlU2Vuc29yKE1vdXNlU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICAgIHVzZVNlbnNvcihUb3VjaFNlbnNvciwgeyBhY3RpdmF0aW9uQ29uc3RyYWludCB9KSxcbiAgKTtcblxuICBmdW5jdGlvbiBoYW5kbGVTb3J0RW5kKHsgYWN0aXZlLCBvdmVyIH0pIHtcbiAgICBvblNvcnRFbmQoe1xuICAgICAgb2xkSW5kZXg6IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGFjdGl2ZS5pZCksXG4gICAgICBuZXdJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gb3Zlci5pZCksXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9uby11bmtub3duLXByb3BlcnR5XG4gICAgICBjc3M9e2Nzc2BcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYH1cbiAgICA+XG4gICAgICA8RG5kQ29udGV4dFxuICAgICAgICBtb2RpZmllcnM9e1tyZXN0cmljdFRvUGFyZW50RWxlbWVudF19XG4gICAgICAgIGNvbGxpc2lvbkRldGVjdGlvbj17Y2xvc2VzdENlbnRlcn1cbiAgICAgICAgc2Vuc29ycz17c2Vuc29yc31cbiAgICAgICAgb25EcmFnRW5kPXtoYW5kbGVTb3J0RW5kfVxuICAgICAgPlxuICAgICAgICA8U29ydGFibGVDb250ZXh0IGl0ZW1zPXtpdGVtc30+XG4gICAgICAgICAge2l0ZW1zLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaWQ9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgaXRlbVZhbHVlPXtpdGVtLnZhbHVlfVxuICAgICAgICAgICAgICBnZXRBc3NldD17Z2V0QXNzZXR9XG4gICAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlT25lKGluZGV4KX1cbiAgICAgICAgICAgICAgb25SZXBsYWNlPXtvblJlcGxhY2VPbmUoaW5kZXgpfVxuICAgICAgICAgICAgPjwvU29ydGFibGVJbWFnZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Tb3J0YWJsZUNvbnRleHQ+XG4gICAgICA8L0RuZENvbnRleHQ+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmNvbnN0IEZpbGVMaW5rID0gc3R5bGVkLmFgXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuYDtcblxuY29uc3QgRmlsZUxpbmtzID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IEZpbGVMaW5rTGlzdCA9IHN0eWxlZC51bGBcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2V9O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvblJlbW92ZSA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2VEYW5nZXJ9O1xuYDtcblxuZnVuY3Rpb24gaXNNdWx0aXBsZSh2YWx1ZSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgTGlzdC5pc0xpc3QodmFsdWUpO1xufVxuXG5mdW5jdGlvbiBzaXplT2ZWYWx1ZSh2YWx1ZSkge1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubGVuZ3RoO1xuICB9XG5cbiAgaWYgKExpc3QuaXNMaXN0KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5zaXplO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlID8gMSA6IDA7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpIHtcbiAgcmV0dXJuIExpc3QuaXNMaXN0KHZhbHVlKSA/IHZhbHVlLnRvQXJyYXkoKSA6IHZhbHVlID8/ICcnO1xufVxuXG5mdW5jdGlvbiB2YWx1ZUxpc3RUb1NvcnRhYmxlQXJyYXkodmFsdWUpIHtcbiAgaWYgKCFpc011bHRpcGxlKHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGNvbnN0IHZhbHVlQXJyYXkgPSB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKS5tYXAodmFsdWUgPT4gKHtcbiAgICBpZDogdXVpZCgpLFxuICAgIHZhbHVlLFxuICB9KSk7XG5cbiAgcmV0dXJuIHZhbHVlQXJyYXk7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */"));
const SortableImageButtonsWrapper = /*#__PURE__*/(0, _base.default)("div", {
target: "e1hax4ql6",
label: "SortableImageButtonsWrapper"
})(process.env.NODE_ENV === "production" ? {
name: "1ekgmip",
styles: "display:flex;justify-content:center;column-gap:10px;margin-right:20px;margin-top:-10px;margin-bottom:10px"
} : {
name: "1ekgmip",
styles: "display:flex;justify-content:center;column-gap:10px;margin-right:20px;margin-top:-10px;margin-bottom:10px",
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0Q4QyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgTWFwLCBMaXN0IH0gZnJvbSAnaW1tdXRhYmxlJztcbmltcG9ydCB7IG9uY2UgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgb25lTGluZSB9IGZyb20gJ2NvbW1vbi10YWdzJztcbmltcG9ydCB7XG4gIGxlbmd0aHMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIGJvcmRlcnMsXG4gIGVmZmVjdHMsXG4gIHNoYWRvd3MsXG4gIEljb25CdXR0b24sXG59IGZyb20gJ2RlY2FwLWNtcy11aS1kZWZhdWx0JztcbmltcG9ydCB7IGJhc2VuYW1lIH0gZnJvbSAnZGVjYXAtY21zLWxpYi11dGlsJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcbmltcG9ydCB7XG4gIERuZENvbnRleHQsXG4gIE1vdXNlU2Vuc29yLFxuICBUb3VjaFNlbnNvcixcbiAgY2xvc2VzdENlbnRlcixcbiAgdXNlU2Vuc29yLFxuICB1c2VTZW5zb3JzLFxufSBmcm9tICdAZG5kLWtpdC9jb3JlJztcbmltcG9ydCB7IFNvcnRhYmxlQ29udGV4dCwgdXNlU29ydGFibGUgfSBmcm9tICdAZG5kLWtpdC9zb3J0YWJsZSc7XG5pbXBvcnQgeyBDU1MgfSBmcm9tICdAZG5kLWtpdC91dGlsaXRpZXMnO1xuaW1wb3J0IHsgcmVzdHJpY3RUb1BhcmVudEVsZW1lbnQgfSBmcm9tICdAZG5kLWtpdC9tb2RpZmllcnMnO1xuXG5jb25zdCBNQVhfRElTUExBWV9MRU5HVEggPSA1MDtcblxuY29uc3QgSW1hZ2VXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZmxleC1iYXNpczogMTU1cHg7XG4gIHdpZHRoOiAxNTVweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6ICR7Ym9yZGVycy50ZXh0RmllbGR9O1xuICBib3JkZXItcmFkaXVzOiAke2xlbmd0aHMuYm9yZGVyUmFkaXVzfTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJHtlZmZlY3RzLmNoZWNrZXJib2FyZH07XG4gICR7c2hhZG93cy5pbnNldH07XG4gIGN1cnNvcjogJHtwcm9wcyA9PiAocHJvcHMuc29ydGFibGUgPyAncG9pbnRlcicgOiAnYXV0bycpfTtcbmA7XG5cbmNvbnN0IFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuYDtcblxuY29uc3QgU3R5bGVkSW1hZ2UgPSBzdHlsZWQuaW1nYFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuYDtcblxuZnVuY3Rpb24gSW1hZ2UocHJvcHMpIHtcbiAgcmV0dXJuIDxTdHlsZWRJbWFnZSByb2xlPVwicHJlc2VudGF0aW9uXCIgey4uLnByb3BzfSAvPjtcbn1cblxuZnVuY3Rpb24gU29ydGFibGVJbWFnZUJ1dHRvbnMoeyBvblJlbW92ZSwgb25SZXBsYWNlIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cIm1lZGlhXCIgb25DbGljaz17b25SZXBsYWNlfT48L0ljb25CdXR0b24+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwiY2xvc2VcIiBvbkNsaWNrPXtvblJlbW92ZX0+PC9JY29uQnV0dG9uPlxuICAgIDwvU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlKHByb3BzKSB7XG4gIGNvbnN0IHsgYXR0cmlidXRlcywgbGlzdGVuZXJzLCBzZXROb2RlUmVmLCB0cmFuc2Zvcm0sIHRyYW5zaXRpb24gfSA9IHVzZVNvcnRhYmxlKHtcbiAgICBpZDogcHJvcHMuaWQsXG4gIH0pO1xuXG4gIGNvbnN0IHN0eWxlID0ge1xuICAgIHRyYW5zZm9ybTogQ1NTLlRyYW5zZm9ybS50b1N0cmluZyh0cmFuc2Zvcm0pLFxuICAgIHRyYW5zaXRpb24sXG4gIH07XG5cbiAgY29uc3QgeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9ID0gcHJvcHM7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHJlZj17c2V0Tm9kZVJlZn0gc3R5bGU9e3N0eWxlfSB7Li4uYXR0cmlidXRlc30gey4uLmxpc3RlbmVyc30+XG4gICAgICA8SW1hZ2VXcmFwcGVyIHNvcnRhYmxlPlxuICAgICAgICA8SW1hZ2Ugc3JjPXtnZXRBc3NldChpdGVtVmFsdWUsIGZpZWxkKSB8fCAnJ30gLz5cbiAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zXG4gICAgICAgIGl0ZW09e2l0ZW1WYWx1ZX1cbiAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlfVxuICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZX1cbiAgICAgID48L1NvcnRhYmxlSW1hZ2VCdXR0b25zPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyKHtcbiAgaXRlbXMsXG4gIGdldEFzc2V0LFxuICBmaWVsZCxcbiAgb25Tb3J0RW5kLFxuICBvblJlbW92ZU9uZSxcbiAgb25SZXBsYWNlT25lLFxufSkge1xuICBjb25zdCBhY3RpdmF0aW9uQ29uc3RyYWludCA9IHsgZGlzdGFuY2U6IDQgfTtcbiAgY29uc3Qgc2Vuc29ycyA9IHVzZVNlbnNvcnMoXG4gICAgdXNlU2Vuc29yKE1vdXNlU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICAgIHVzZVNlbnNvcihUb3VjaFNlbnNvciwgeyBhY3RpdmF0aW9uQ29uc3RyYWludCB9KSxcbiAgKTtcblxuICBmdW5jdGlvbiBoYW5kbGVTb3J0RW5kKHsgYWN0aXZlLCBvdmVyIH0pIHtcbiAgICBvblNvcnRFbmQoe1xuICAgICAgb2xkSW5kZXg6IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGFjdGl2ZS5pZCksXG4gICAgICBuZXdJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gb3Zlci5pZCksXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9uby11bmtub3duLXByb3BlcnR5XG4gICAgICBjc3M9e2Nzc2BcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYH1cbiAgICA+XG4gICAgICA8RG5kQ29udGV4dFxuICAgICAgICBtb2RpZmllcnM9e1tyZXN0cmljdFRvUGFyZW50RWxlbWVudF19XG4gICAgICAgIGNvbGxpc2lvbkRldGVjdGlvbj17Y2xvc2VzdENlbnRlcn1cbiAgICAgICAgc2Vuc29ycz17c2Vuc29yc31cbiAgICAgICAgb25EcmFnRW5kPXtoYW5kbGVTb3J0RW5kfVxuICAgICAgPlxuICAgICAgICA8U29ydGFibGVDb250ZXh0IGl0ZW1zPXtpdGVtc30+XG4gICAgICAgICAge2l0ZW1zLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaWQ9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgaXRlbVZhbHVlPXtpdGVtLnZhbHVlfVxuICAgICAgICAgICAgICBnZXRBc3NldD17Z2V0QXNzZXR9XG4gICAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlT25lKGluZGV4KX1cbiAgICAgICAgICAgICAgb25SZXBsYWNlPXtvblJlcGxhY2VPbmUoaW5kZXgpfVxuICAgICAgICAgICAgPjwvU29ydGFibGVJbWFnZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Tb3J0YWJsZUNvbnRleHQ+XG4gICAgICA8L0RuZENvbnRleHQ+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmNvbnN0IEZpbGVMaW5rID0gc3R5bGVkLmFgXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuYDtcblxuY29uc3QgRmlsZUxpbmtzID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IEZpbGVMaW5rTGlzdCA9IHN0eWxlZC51bGBcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2V9O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvblJlbW92ZSA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2VEYW5nZXJ9O1xuYDtcblxuZnVuY3Rpb24gaXNNdWx0aXBsZSh2YWx1ZSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgTGlzdC5pc0xpc3QodmFsdWUpO1xufVxuXG5mdW5jdGlvbiBzaXplT2ZWYWx1ZSh2YWx1ZSkge1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubGVuZ3RoO1xuICB9XG5cbiAgaWYgKExpc3QuaXNMaXN0KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5zaXplO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlID8gMSA6IDA7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpIHtcbiAgcmV0dXJuIExpc3QuaXNMaXN0KHZhbHVlKSA/IHZhbHVlLnRvQXJyYXkoKSA6IHZhbHVlID8/ICcnO1xufVxuXG5mdW5jdGlvbiB2YWx1ZUxpc3RUb1NvcnRhYmxlQXJyYXkodmFsdWUpIHtcbiAgaWYgKCFpc011bHRpcGxlKHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGNvbnN0IHZhbHVlQXJyYXkgPSB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKS5tYXAodmFsdWUgPT4gKHtcbiAgICBpZDogdXVpZCgpLFxuICAgIHZhbHVlLFxuICB9KSk7XG5cbiAgcmV0dXJuIHZhbHVlQXJyYXk7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
});
const StyledImage = /*#__PURE__*/(0, _base.default)("img", {
target: "e1hax4ql5",
label: "StyledImage"
})(process.env.NODE_ENV === "production" ? {
name: "ukfjzf",
styles: "width:100%;height:100%;object-fit:contain"
} : {
name: "ukfjzf",
styles: "width:100%;height:100%;object-fit:contain",
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUQ4QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgTWFwLCBMaXN0IH0gZnJvbSAnaW1tdXRhYmxlJztcbmltcG9ydCB7IG9uY2UgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgb25lTGluZSB9IGZyb20gJ2NvbW1vbi10YWdzJztcbmltcG9ydCB7XG4gIGxlbmd0aHMsXG4gIGNvbXBvbmVudHMsXG4gIGJ1dHRvbnMsXG4gIGJvcmRlcnMsXG4gIGVmZmVjdHMsXG4gIHNoYWRvd3MsXG4gIEljb25CdXR0b24sXG59IGZyb20gJ2RlY2FwLWNtcy11aS1kZWZhdWx0JztcbmltcG9ydCB7IGJhc2VuYW1lIH0gZnJvbSAnZGVjYXAtY21zLWxpYi11dGlsJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcbmltcG9ydCB7XG4gIERuZENvbnRleHQsXG4gIE1vdXNlU2Vuc29yLFxuICBUb3VjaFNlbnNvcixcbiAgY2xvc2VzdENlbnRlcixcbiAgdXNlU2Vuc29yLFxuICB1c2VTZW5zb3JzLFxufSBmcm9tICdAZG5kLWtpdC9jb3JlJztcbmltcG9ydCB7IFNvcnRhYmxlQ29udGV4dCwgdXNlU29ydGFibGUgfSBmcm9tICdAZG5kLWtpdC9zb3J0YWJsZSc7XG5pbXBvcnQgeyBDU1MgfSBmcm9tICdAZG5kLWtpdC91dGlsaXRpZXMnO1xuaW1wb3J0IHsgcmVzdHJpY3RUb1BhcmVudEVsZW1lbnQgfSBmcm9tICdAZG5kLWtpdC9tb2RpZmllcnMnO1xuXG5jb25zdCBNQVhfRElTUExBWV9MRU5HVEggPSA1MDtcblxuY29uc3QgSW1hZ2VXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZmxleC1iYXNpczogMTU1cHg7XG4gIHdpZHRoOiAxNTVweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6ICR7Ym9yZGVycy50ZXh0RmllbGR9O1xuICBib3JkZXItcmFkaXVzOiAke2xlbmd0aHMuYm9yZGVyUmFkaXVzfTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJHtlZmZlY3RzLmNoZWNrZXJib2FyZH07XG4gICR7c2hhZG93cy5pbnNldH07XG4gIGN1cnNvcjogJHtwcm9wcyA9PiAocHJvcHMuc29ydGFibGUgPyAncG9pbnRlcicgOiAnYXV0bycpfTtcbmA7XG5cbmNvbnN0IFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuYDtcblxuY29uc3QgU3R5bGVkSW1hZ2UgPSBzdHlsZWQuaW1nYFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuYDtcblxuZnVuY3Rpb24gSW1hZ2UocHJvcHMpIHtcbiAgcmV0dXJuIDxTdHlsZWRJbWFnZSByb2xlPVwicHJlc2VudGF0aW9uXCIgey4uLnByb3BzfSAvPjtcbn1cblxuZnVuY3Rpb24gU29ydGFibGVJbWFnZUJ1dHRvbnMoeyBvblJlbW92ZSwgb25SZXBsYWNlIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cIm1lZGlhXCIgb25DbGljaz17b25SZXBsYWNlfT48L0ljb25CdXR0b24+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwiY2xvc2VcIiBvbkNsaWNrPXtvblJlbW92ZX0+PC9JY29uQnV0dG9uPlxuICAgIDwvU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyPlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlKHByb3BzKSB7XG4gIGNvbnN0IHsgYXR0cmlidXRlcywgbGlzdGVuZXJzLCBzZXROb2RlUmVmLCB0cmFuc2Zvcm0sIHRyYW5zaXRpb24gfSA9IHVzZVNvcnRhYmxlKHtcbiAgICBpZDogcHJvcHMuaWQsXG4gIH0pO1xuXG4gIGNvbnN0IHN0eWxlID0ge1xuICAgIHRyYW5zZm9ybTogQ1NTLlRyYW5zZm9ybS50b1N0cmluZyh0cmFuc2Zvcm0pLFxuICAgIHRyYW5zaXRpb24sXG4gIH07XG5cbiAgY29uc3QgeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9ID0gcHJvcHM7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHJlZj17c2V0Tm9kZVJlZn0gc3R5bGU9e3N0eWxlfSB7Li4uYXR0cmlidXRlc30gey4uLmxpc3RlbmVyc30+XG4gICAgICA8SW1hZ2VXcmFwcGVyIHNvcnRhYmxlPlxuICAgICAgICA8SW1hZ2Ugc3JjPXtnZXRBc3NldChpdGVtVmFsdWUsIGZpZWxkKSB8fCAnJ30gLz5cbiAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zXG4gICAgICAgIGl0ZW09e2l0ZW1WYWx1ZX1cbiAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlfVxuICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZX1cbiAgICAgID48L1NvcnRhYmxlSW1hZ2VCdXR0b25zPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyKHtcbiAgaXRlbXMsXG4gIGdldEFzc2V0LFxuICBmaWVsZCxcbiAgb25Tb3J0RW5kLFxuICBvblJlbW92ZU9uZSxcbiAgb25SZXBsYWNlT25lLFxufSkge1xuICBjb25zdCBhY3RpdmF0aW9uQ29uc3RyYWludCA9IHsgZGlzdGFuY2U6IDQgfTtcbiAgY29uc3Qgc2Vuc29ycyA9IHVzZVNlbnNvcnMoXG4gICAgdXNlU2Vuc29yKE1vdXNlU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICAgIHVzZVNlbnNvcihUb3VjaFNlbnNvciwgeyBhY3RpdmF0aW9uQ29uc3RyYWludCB9KSxcbiAgKTtcblxuICBmdW5jdGlvbiBoYW5kbGVTb3J0RW5kKHsgYWN0aXZlLCBvdmVyIH0pIHtcbiAgICBvblNvcnRFbmQoe1xuICAgICAgb2xkSW5kZXg6IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IGFjdGl2ZS5pZCksXG4gICAgICBuZXdJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gb3Zlci5pZCksXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9uby11bmtub3duLXByb3BlcnR5XG4gICAgICBjc3M9e2Nzc2BcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYH1cbiAgICA+XG4gICAgICA8RG5kQ29udGV4dFxuICAgICAgICBtb2RpZmllcnM9e1tyZXN0cmljdFRvUGFyZW50RWxlbWVudF19XG4gICAgICAgIGNvbGxpc2lvbkRldGVjdGlvbj17Y2xvc2VzdENlbnRlcn1cbiAgICAgICAgc2Vuc29ycz17c2Vuc29yc31cbiAgICAgICAgb25EcmFnRW5kPXtoYW5kbGVTb3J0RW5kfVxuICAgICAgPlxuICAgICAgICA8U29ydGFibGVDb250ZXh0IGl0ZW1zPXtpdGVtc30+XG4gICAgICAgICAge2l0ZW1zLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaWQ9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgICAgICAgaXRlbVZhbHVlPXtpdGVtLnZhbHVlfVxuICAgICAgICAgICAgICBnZXRBc3NldD17Z2V0QXNzZXR9XG4gICAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgICAgb25SZW1vdmU9e29uUmVtb3ZlT25lKGluZGV4KX1cbiAgICAgICAgICAgICAgb25SZXBsYWNlPXtvblJlcGxhY2VPbmUoaW5kZXgpfVxuICAgICAgICAgICAgPjwvU29ydGFibGVJbWFnZT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9Tb3J0YWJsZUNvbnRleHQ+XG4gICAgICA8L0RuZENvbnRleHQ+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmNvbnN0IEZpbGVMaW5rID0gc3R5bGVkLmFgXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuYDtcblxuY29uc3QgRmlsZUxpbmtzID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IEZpbGVMaW5rTGlzdCA9IHN0eWxlZC51bGBcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvbiA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2V9O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZVdpZGdldEJ1dHRvblJlbW92ZSA9IHN0eWxlZC5idXR0b25gXG4gICR7YnV0dG9ucy5idXR0b259O1xuICAke2NvbXBvbmVudHMuYmFkZ2VEYW5nZXJ9O1xuYDtcblxuZnVuY3Rpb24gaXNNdWx0aXBsZSh2YWx1ZSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgTGlzdC5pc0xpc3QodmFsdWUpO1xufVxuXG5mdW5jdGlvbiBzaXplT2ZWYWx1ZSh2YWx1ZSkge1xuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUubGVuZ3RoO1xuICB9XG5cbiAgaWYgKExpc3QuaXNMaXN0KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5zaXplO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlID8gMSA6IDA7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpIHtcbiAgcmV0dXJuIExpc3QuaXNMaXN0KHZhbHVlKSA/IHZhbHVlLnRvQXJyYXkoKSA6IHZhbHVlID8/ICcnO1xufVxuXG5mdW5jdGlvbiB2YWx1ZUxpc3RUb1NvcnRhYmxlQXJyYXkodmFsdWUpIHtcbiAgaWYgKCFpc011bHRpcGxlKHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGNvbnN0IHZhbHVlQXJyYXkgPSB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKS5tYXAodmFsdWUgPT4gKHtcbiAgICBpZDogdXVpZCgpLFxuICAgIHZhbHVlLFxuICB9KSk7XG5cbiAgcmV0dXJuIHZhbHVlQXJyYXk7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmV