UNPKG

ketcher-react

Version:
15,736 lines 1.45 MB
/****************************************************************************
 * Copyright 2021 EPAM Systems
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 ***************************************************************************/
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
import { Provider, useDispatch, useSelector } from 'react-redux';
import React__default, { memo, useRef, useEffect, useState, useMemo, useCallback, useLayoutEffect } from 'react';
import { ThemeProvider, Global, css, useTheme } from '@emotion/react';
import { createTheme } from '@mui/material/styles';
import { merge, debounce, flatten, get as get$2 } from 'lodash';
import { combineReducers, applyMiddleware, createStore, compose as compose$1 } from 'redux';
import { createSelector } from 'reselect';
import thunkMiddleware from 'redux-thunk';
import { KetcherLogger, MonomerGroups as MonomerGroups$1, KetMonomerClass, ChemicalMimeType as ChemicalMimeType$1, KetSerializer, CoreEditor, generateMenuShortcuts, hotkeysConfiguration, ToolName, modesMap, isAmbiguousMonomerLibraryItem, MONOMER_CONST, macromoleculesFilesInputFormats, EditorHistory, SequenceMode, SnakeMode, FlexMode, ModeTypes, ketcherProvider, KetcherAsyncEvents, isTwoStrandedNodeRestrictedForHydrogenBondCreation, UsageInMacromolecule, ZoomTool, SequenceType, HydrogenBond, BackBoneSequenceNode, AmbiguousMonomer, Nucleotide, Nucleoside, RNABase, getSugarFromRnaBase, Sugar, getRnaBaseFromSugar, setAmbiguousMonomerTemplatePrefix, setMonomerTemplatePrefix, monomerFactory, Entities, isRnaBaseOrAmbiguousRnaBase, SequenceRenderer, EmptySequenceNode, MonomerToAtomBond, DEFAULT_LAYOUT_MODE, HAS_CONTENT_LAYOUT_MODE, Vec2, Coordinates, AmbiguousMonomerRenderer, Phosphate, KetAmbiguousMonomerTemplateSubType, getSvgFromDrawnStructures, isClipboardAPIAvailable, legacyCopy } from 'ketcher-core';
import _regeneratorRuntime from '@babel/runtime/regenerator';
import _extends from '@babel/runtime/helpers/esm/extends';
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
import _defineProperty from '@babel/runtime/helpers/defineProperty';
import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
import _createClass from '@babel/runtime/helpers/createClass';
import _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';
import omit from 'lodash/omit';
import { Input as Input$1, Icon, Accordion, Button, IndigoProvider, StructRender, IconButton, preview, EditorClassName, KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR, AmbiguousMonomerPreview, calculateBondPreviewPosition, PresetPosition as PresetPosition$1, calculateAmbiguousMonomerPreviewTop, calculateMonomerPreviewTop, calculateNucleoElementPreviewTop } from 'ketcher-react';
import _styled from '@emotion/styled/base';
import { Dialog, DialogTitle, DialogContent, DialogActions, FormControl, Select, MenuItem as MenuItem$1, Collapse, Button as Button$1, Popover, Snackbar, IconButton as IconButton$1, ListItemText, Box as Box$1, ButtonGroup, Tabs, Tab, ClickAwayListener } from '@mui/material';
import Box from '@mui/material/Box';
import { createPortal } from 'react-dom';
import { Menu as Menu$1, useContextMenu, Item, Separator } from 'react-contexify';
import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
import { useDropzone } from 'react-dropzone';
import MuiButton from '@mui/material/ButtonBase';
import { saveAs } from 'file-saver';
import _typeof from '@babel/runtime/helpers/typeof';

function n(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if("production"!==process.env.NODE_ENV){var i=Y[n],o=i?"function"==typeof i?i.apply(null,t):i:"unknown error nr: "+n;throw Error("[Immer] "+o)}throw Error("[Immer] minified error nr: "+n+(t.length?" "+t.map((function(n){return "'"+n+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function r(n){return !!n&&!!n[Q]}function t(n){var r;return !!n&&(function(n){if(!n||"object"!=typeof n)return !1;var r=Object.getPrototypeOf(n);if(null===r)return !0;var t=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return t===Object||"function"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!(null===(r=n.constructor)||void 0===r?void 0:r[L])||s(n)||v(n))}function i(n,r,t){void 0===t&&(t=!1),0===o(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&"symbol"==typeof e||r(e,n[e],n);})):n.forEach((function(t,e){return r(e,t,n)}));}function o(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u(n,r){return 2===o(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a(n,r){return 2===o(n)?n.get(r):n[r]}function f(n,r,t){var e=o(n);2===e?n.set(r,t):3===e?n.add(t):n[r]=t;}function c(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]});}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r(n)||!t(n)||(o(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i(n,(function(n,r){return d(r,!0)}),!0)),n}function h(){n(2);}function y(n){return null==n||"object"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n(18,r),t}function m(n,r){tn[n]||(tn[n]=r);}function _(){return "production"===process.env.NODE_ENV||U||n(0),U}function j(n,r){r&&(b("Patches"),n.u=[],n.s=[],n.v=r);}function g(n){O(n),n.p.forEach(S),n.p=null;}function O(n){n===U&&(U=n.l);}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.g=!0;}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.O||b("ES5").S(e,r,o),o?(i[Q].P&&(g(e),n(4)),t(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b("Patches").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o,u=o,a=!1;3===e.i&&(u=new Set(o),o.clear(),a=!0),i(u,(function(r,i){return A(n,e,o,r,i,t,a)})),x(n,o,!1),t&&n.u&&b("Patches").N(e,t,n.u,n.s);}return e.o}function A(e,i,o,a,c,s,v){if("production"!==process.env.NODE_ENV&&c===o&&n(5),r(c)){var p=M(e,c,s&&i&&3!==i.i&&!u(i.R,a)?s.concat(a):void 0);if(f(o,a,p),!r(p))return;e.m=!1;}else v&&o.add(c);if(t(c)&&!y(c)){if(!e.h.D&&e._<1)return;M(e,c),i&&i.A.l||x(e,c);}}function x(n,r,t){void 0===t&&(t=!1),!n.l&&n.h.D&&n.m&&d(r,t);}function z(n,r){var t=n[Q];return (t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t);}}function k(n){n.P||(n.P=!0,n.l&&k(n.l));}function E(n){n.o||(n.o=l(n.t));}function N(n,r,t){var e=s(r)?b("MapSet").F(r,t):v(r)?b("MapSet").T(r,t):n.O?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b("ES5").J(r,t);return (t?t.A:_()).p.push(e),e}function R(e){return r(e)||n(22,e),function n(r){if(!t(r))return r;var e,u=r[Q],c=o(r);if(u){if(!u.P&&(u.i<4||!b("ES5").K(u)))return u.t;u.I=!0,e=D(r,c),u.I=!1;}else e=D(r,c);return i(e,(function(r,t){u&&a(u.t,r)===t||f(e,r,n(t));})),3===c?new Set(e):e}(e)}function D(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}function F(){function t(n,r){var t=s[n];return t?t.enumerable=r:s[n]=t={configurable:!0,enumerable:r,get:function(){var r=this[Q];return "production"!==process.env.NODE_ENV&&f(r),en.get(r,n)},set:function(r){var t=this[Q];"production"!==process.env.NODE_ENV&&f(t),en.set(t,n,r);}},t}function e(n){for(var r=n.length-1;r>=0;r--){var t=n[r][Q];if(!t.P)switch(t.i){case 5:a(t)&&k(t);break;case 4:o(t)&&k(t);}}}function o(n){for(var r=n.t,t=n.k,e=nn(t),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=r[o];if(void 0===a&&!u(r,o))return !0;var f=t[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return !0}}var v=!!r[Q];return e.length!==nn(r).length+(v?0:1)}function a(n){var r=n.k;if(r.length!==n.t.length)return !0;var t=Object.getOwnPropertyDescriptor(r,r.length-1);if(t&&!t.get)return !0;for(var e=0;e<r.length;e++)if(!r.hasOwnProperty(e))return !0;return !1}function f(r){r.g&&n(3,JSON.stringify(p(r)));}var s={};m("ES5",{J:function(n,r){var e=Array.isArray(n),i=function(n,r){if(n){for(var e=Array(r.length),i=0;i<r.length;i++)Object.defineProperty(e,""+i,t(i,!0));return e}var o=rn(r);delete o[Q];for(var u=nn(o),a=0;a<u.length;a++){var f=u[a];o[f]=t(f,n||!!o[f].enumerable);}return Object.create(Object.getPrototypeOf(r),o)}(e,n),o={i:e?5:4,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(n,t,o){o?r(t)&&t[Q].A===n&&e(n.p):(n.u&&function n(r){if(r&&"object"==typeof r){var t=r[Q];if(t){var e=t.t,o=t.k,f=t.R,c=t.i;if(4===c)i(o,(function(r){r!==Q&&(void 0!==e[r]||u(e,r)?f[r]||n(o[r]):(f[r]=!0,k(t)));})),i(e,(function(n){void 0!==o[n]||u(o,n)||(f[n]=!1,k(t));}));else if(5===c){if(a(t)&&(k(t),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)o.hasOwnProperty(l)||(f[l]=!0),void 0===f[l]&&n(o[l]);}}}}(n.p[0]),e(n.p));},K:function(n){return 4===n.i?o(n):a(n)}});}var G,U,W="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),X="undefined"!=typeof Map,q="undefined"!=typeof Set,B="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=W?Symbol.for("immer-nothing"):((G={})["immer-nothing"]=!0,G),L=W?Symbol.for("immer-draftable"):"__$immer_draftable",Q=W?Symbol.for("immer-state"):"__$immer_state",Y={0:"Illegal state",1:"Immer drafts cannot have computed properties",2:"This object has been frozen and should not be mutated",3:function(n){return "Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+n},4:"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.",5:"Immer forbids circular references",6:"The first or second argument to `produce` must be a function",7:"The third argument to `produce` must be a function or undefined",8:"First argument to `createDraft` must be a plain object, an array, or an immerable object",9:"First argument to `finishDraft` must be a draft returned by `createDraft`",10:"The given draft is already finalized",11:"Object.defineProperty() cannot be used on an Immer draft",12:"Object.setPrototypeOf() cannot be used on an Immer draft",13:"Immer only supports deleting array indices",14:"Immer only supports setting array indices and the 'length' property",15:function(n){return "Cannot apply patch, path doesn't resolve: "+n},16:'Sets cannot have "replace" patches.',17:function(n){return "Unsupported patch operation: "+n},18:function(n){return "The plugin for '"+n+"' has not been loaded into Immer. To enable the plugin, import and call `enable"+n+"()` when initializing your application."},20:"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available",21:function(n){return "produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '"+n+"'"},22:function(n){return "'current' expects a draft, got: "+n},23:function(n){return "'original' expects a draft, got: "+n},24:"Patching reserved attributes like __proto__, prototype and constructor is not allowed"},Z=""+Object.prototype.constructor,nn="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t);})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u(e,r))return function(n,r,t){var e,i=I(r,t);return i?"value"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t(i)?i:i===z(n.t,r)?(E(n),n.o[r]=N(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.R[r]=!1,!0;if(c(t,i)&&(void 0!==t||u(n.t,r)))return !0;E(n),k(n);}return n.o[r]===t&&(void 0!==t||r in n.o)||Number.isNaN(t)&&Number.isNaN(n.o[r])||(n.o[r]=t,n.R[r]=!0),!0},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.R[r]=!1,E(n),k(n)):delete n.R[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||"length"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n(11);},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n(12);}},on={};i(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)};})),on.deleteProperty=function(r,t){return "production"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return "production"!==process.env.NODE_ENV&&"length"!==t&&isNaN(parseInt(t))&&n(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.O=B,this.D=!0,this.produce=function(r,i,o){if("function"==typeof r&&"function"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return (t=i).call.apply(t,[r,n].concat(e))}))}}var f;if("function"!=typeof i&&n(6),void 0!==o&&"function"!=typeof o&&n(7),t(r)){var c=w(e),s=N(e,r,void 0),v=!0;try{f=i(s),v=!1;}finally{v?g(c):O(c);}return "undefined"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw g(c),n})):(j(c,o),P(f,c))}if(!r||"object"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.D&&d(f,!0),o){var p=[],l=[];b("Patches").M(r,f,p,l),o(p,l);}return f}n(21,r);},this.produceWithPatches=function(n,r){if("function"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r;}));return "undefined"!=typeof Promise&&o instanceof Promise?o.then((function(n){return [n,t,i]})):[o,t,i]},"boolean"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),"boolean"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze);}var i=e.prototype;return i.createDraft=function(e){t(e)||n(8),r(e)&&(e=R(e));var i=w(this),o=N(this,e,void 0);return o[Q].C=!0,O(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];"production"!==process.env.NODE_ENV&&(e&&e.C||n(9),e.I&&n(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.D=n;},i.setUseProxies=function(r){r&&!B&&n(20),this.O=r;},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&"replace"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b("Patches").$;return r(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce;an.produceWithPatches.bind(an);an.setAutoFreeze.bind(an);an.setUseProxies.bind(an);an.applyPatches.bind(an);an.createDraft.bind(an);an.finishDraft.bind(an);

var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
};
var __spreadArray = (undefined && undefined.__spreadArray) || function (to, from) {
    for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
        to[j] = from[i];
    return to;
};
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = function (obj, key, value) { return key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value: value }) : obj[key] = value; };
var __spreadValues = function (a, b) {
    for (var prop in b || (b = {}))
        if (__hasOwnProp.call(b, prop))
            __defNormalProp(a, prop, b[prop]);
    if (__getOwnPropSymbols)
        for (var _i = 0, _c = __getOwnPropSymbols(b); _i < _c.length; _i++) {
            var prop = _c[_i];
            if (__propIsEnum.call(b, prop))
                __defNormalProp(a, prop, b[prop]);
        }
    return a;
};
var __spreadProps = function (a, b) { return __defProps(a, __getOwnPropDescs(b)); };
var __async = function (__this, __arguments, generator) {
    return new Promise(function (resolve, reject) {
        var fulfilled = function (value) {
            try {
                step(generator.next(value));
            }
            catch (e) {
                reject(e);
            }
        };
        var rejected = function (value) {
            try {
                step(generator.throw(value));
            }
            catch (e) {
                reject(e);
            }
        };
        var step = function (x) { return x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); };
        step((generator = generator.apply(__this, __arguments)).next());
    });
};
var composeWithDevTools = typeof window !== "undefined" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function () {
    if (arguments.length === 0)
        return void 0;
    if (typeof arguments[0] === "object")
        return compose$1;
    return compose$1.apply(null, arguments);
};
// src/isPlainObject.ts
function isPlainObject(value) {
    if (typeof value !== "object" || value === null)
        return false;
    var proto = Object.getPrototypeOf(value);
    if (proto === null)
        return true;
    var baseProto = proto;
    while (Object.getPrototypeOf(baseProto) !== null) {
        baseProto = Object.getPrototypeOf(baseProto);
    }
    return proto === baseProto;
}
// src/tsHelpers.ts
var hasMatchFunction = function (v) {
    return v && typeof v.match === "function";
};
// src/createAction.ts
function createAction(type, prepareAction) {
    function actionCreator() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        if (prepareAction) {
            var prepared = prepareAction.apply(void 0, args);
            if (!prepared) {
                throw new Error("prepareAction did not return an object");
            }
            return __spreadValues(__spreadValues({
                type: type,
                payload: prepared.payload
            }, "meta" in prepared && { meta: prepared.meta }), "error" in prepared && { error: prepared.error });
        }
        return { type: type, payload: args[0] };
    }
    actionCreator.toString = function () { return "" + type; };
    actionCreator.type = type;
    actionCreator.match = function (action) { return action.type === type; };
    return actionCreator;
}
function isActionCreator(action) {
    return typeof action === "function" && "type" in action && hasMatchFunction(action);
}
// src/actionCreatorInvariantMiddleware.ts
function getMessage(type) {
    var splitType = type ? ("" + type).split("/") : [];
    var actionName = splitType[splitType.length - 1] || "actionCreator";
    return "Detected an action creator with type \"" + (type || "unknown") + "\" being dispatched. \nMake sure you're calling the action creator before dispatching, i.e. `dispatch(" + actionName + "())` instead of `dispatch(" + actionName + ")`. This is necessary even if the action has no payload.";
}
function createActionCreatorInvariantMiddleware(options) {
    if (options === void 0) { options = {}; }
    if (process.env.NODE_ENV === "production") {
        return function () { return function (next) { return function (action) { return next(action); }; }; };
    }
    var _c = options.isActionCreator, isActionCreator2 = _c === void 0 ? isActionCreator : _c;
    return function () { return function (next) { return function (action) {
        if (isActionCreator2(action)) {
            console.warn(getMessage(action.type));
        }
        return next(action);
    }; }; };
}
function getTimeMeasureUtils(maxDelay, fnName) {
    var elapsed = 0;
    return {
        measureTime: function (fn) {
            var started = Date.now();
            try {
                return fn();
            }
            finally {
                var finished = Date.now();
                elapsed += finished - started;
            }
        },
        warnIfExceeded: function () {
            if (elapsed > maxDelay) {
                console.warn(fnName + " took " + elapsed + "ms, which is more than the warning threshold of " + maxDelay + "ms. \nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\nIt is disabled in production builds, so you don't need to worry about that.");
            }
        }
    };
}
var MiddlewareArray = /** @class */ (function (_super) {
    __extends(MiddlewareArray, _super);
    function MiddlewareArray() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var _this = _super.apply(this, args) || this;
        Object.setPrototypeOf(_this, MiddlewareArray.prototype);
        return _this;
    }
    Object.defineProperty(MiddlewareArray, Symbol.species, {
        get: function () {
            return MiddlewareArray;
        },
        enumerable: false,
        configurable: true
    });
    MiddlewareArray.prototype.concat = function () {
        var arr = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            arr[_i] = arguments[_i];
        }
        return _super.prototype.concat.apply(this, arr);
    };
    MiddlewareArray.prototype.prepend = function () {
        var arr = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            arr[_i] = arguments[_i];
        }
        if (arr.length === 1 && Array.isArray(arr[0])) {
            return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr[0].concat(this))))();
        }
        return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr.concat(this))))();
    };
    return MiddlewareArray;
}(Array));
var EnhancerArray = /** @class */ (function (_super) {
    __extends(EnhancerArray, _super);
    function EnhancerArray() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var _this = _super.apply(this, args) || this;
        Object.setPrototypeOf(_this, EnhancerArray.prototype);
        return _this;
    }
    Object.defineProperty(EnhancerArray, Symbol.species, {
        get: function () {
            return EnhancerArray;
        },
        enumerable: false,
        configurable: true
    });
    EnhancerArray.prototype.concat = function () {
        var arr = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            arr[_i] = arguments[_i];
        }
        return _super.prototype.concat.apply(this, arr);
    };
    EnhancerArray.prototype.prepend = function () {
        var arr = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            arr[_i] = arguments[_i];
        }
        if (arr.length === 1 && Array.isArray(arr[0])) {
            return new (EnhancerArray.bind.apply(EnhancerArray, __spreadArray([void 0], arr[0].concat(this))))();
        }
        return new (EnhancerArray.bind.apply(EnhancerArray, __spreadArray([void 0], arr.concat(this))))();
    };
    return EnhancerArray;
}(Array));
function freezeDraftable(val) {
    return t(val) ? fn(val, function () {
    }) : val;
}
// src/immutableStateInvariantMiddleware.ts
var isProduction = process.env.NODE_ENV === "production";
var prefix = "Invariant failed";
function invariant(condition, message) {
    if (condition) {
        return;
    }
    if (isProduction) {
        throw new Error(prefix);
    }
    throw new Error(prefix + ": " + (message || ""));
}
function stringify(obj, serializer, indent, decycler) {
    return JSON.stringify(obj, getSerialize(serializer, decycler), indent);
}
function getSerialize(serializer, decycler) {
    var stack = [], keys = [];
    if (!decycler)
        decycler = function (_, value) {
            if (stack[0] === value)
                return "[Circular ~]";
            return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]";
        };
    return function (key, value) {
        if (stack.length > 0) {
            var thisPos = stack.indexOf(this);
            ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);
            ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);
            if (~stack.indexOf(value))
                value = decycler.call(this, key, value);
        }
        else
            stack.push(value);
        return serializer == null ? value : serializer.call(this, key, value);
    };
}
function isImmutableDefault(value) {
    return typeof value !== "object" || value == null || Object.isFrozen(value);
}
function trackForMutations(isImmutable, ignorePaths, obj) {
    var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);
    return {
        detectMutations: function () {
            return detectMutations(isImmutable, ignorePaths, trackedProperties, obj);
        }
    };
}
function trackProperties(isImmutable, ignorePaths, obj, path, checkedObjects) {
    if (ignorePaths === void 0) { ignorePaths = []; }
    if (path === void 0) { path = ""; }
    if (checkedObjects === void 0) { checkedObjects = new Set(); }
    var tracked = { value: obj };
    if (!isImmutable(obj) && !checkedObjects.has(obj)) {
        checkedObjects.add(obj);
        tracked.children = {};
        for (var key in obj) {
            var childPath = path ? path + "." + key : key;
            if (ignorePaths.length && ignorePaths.indexOf(childPath) !== -1) {
                continue;
            }
            tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);
        }
    }
    return tracked;
}
function detectMutations(isImmutable, ignoredPaths, trackedProperty, obj, sameParentRef, path) {
    if (ignoredPaths === void 0) { ignoredPaths = []; }
    if (sameParentRef === void 0) { sameParentRef = false; }
    if (path === void 0) { path = ""; }
    var prevObj = trackedProperty ? trackedProperty.value : void 0;
    var sameRef = prevObj === obj;
    if (sameParentRef && !sameRef && !Number.isNaN(obj)) {
        return { wasMutated: true, path: path };
    }
    if (isImmutable(prevObj) || isImmutable(obj)) {
        return { wasMutated: false };
    }
    var keysToDetect = {};
    for (var key in trackedProperty.children) {
        keysToDetect[key] = true;
    }
    for (var key in obj) {
        keysToDetect[key] = true;
    }
    var hasIgnoredPaths = ignoredPaths.length > 0;
    var _loop_1 = function (key) {
        var nestedPath = path ? path + "." + key : key;
        if (hasIgnoredPaths) {
            var hasMatches = ignoredPaths.some(function (ignored) {
                if (ignored instanceof RegExp) {
                    return ignored.test(nestedPath);
                }
                return nestedPath === ignored;
            });
            if (hasMatches) {
                return "continue";
            }
        }
        var result = detectMutations(isImmutable, ignoredPaths, trackedProperty.children[key], obj[key], sameRef, nestedPath);
        if (result.wasMutated) {
            return { value: result };
        }
    };
    for (var key in keysToDetect) {
        var state_1 = _loop_1(key);
        if (typeof state_1 === "object")
            return state_1.value;
    }
    return { wasMutated: false };
}
function createImmutableStateInvariantMiddleware(options) {
    if (options === void 0) { options = {}; }
    if (process.env.NODE_ENV === "production") {
        return function () { return function (next) { return function (action) { return next(action); }; }; };
    }
    var _c = options.isImmutable, isImmutable = _c === void 0 ? isImmutableDefault : _c, ignoredPaths = options.ignoredPaths, _d = options.warnAfter, warnAfter = _d === void 0 ? 32 : _d, ignore = options.ignore;
    ignoredPaths = ignoredPaths || ignore;
    var track = trackForMutations.bind(null, isImmutable, ignoredPaths);
    return function (_c) {
        var getState = _c.getState;
        var state = getState();
        var tracker = track(state);
        var result;
        return function (next) { return function (action) {
            var measureUtils = getTimeMeasureUtils(warnAfter, "ImmutableStateInvariantMiddleware");
            measureUtils.measureTime(function () {
                state = getState();
                result = tracker.detectMutations();
                tracker = track(state);
                invariant(!result.wasMutated, "A state mutation was detected between dispatches, in the path '" + (result.path || "") + "'.  This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
            });
            var dispatchedAction = next(action);
            measureUtils.measureTime(function () {
                state = getState();
                result = tracker.detectMutations();
                tracker = track(state);
                result.wasMutated && invariant(!result.wasMutated, "A state mutation was detected inside a dispatch, in the path: " + (result.path || "") + ". Take a look at the reducer(s) handling the action " + stringify(action) + ". (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)");
            });
            measureUtils.warnIfExceeded();
            return dispatchedAction;
        }; };
    };
}
// src/serializableStateInvariantMiddleware.ts
function isPlain(val) {
    var type = typeof val;
    return val == null || type === "string" || type === "boolean" || type === "number" || Array.isArray(val) || isPlainObject(val);
}
function findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths, cache) {
    if (path === void 0) { path = ""; }
    if (isSerializable === void 0) { isSerializable = isPlain; }
    if (ignoredPaths === void 0) { ignoredPaths = []; }
    var foundNestedSerializable;
    if (!isSerializable(value)) {
        return {
            keyPath: path || "<root>",
            value: value
        };
    }
    if (typeof value !== "object" || value === null) {
        return false;
    }
    if (cache == null ? void 0 : cache.has(value))
        return false;
    var entries = getEntries != null ? getEntries(value) : Object.entries(value);
    var hasIgnoredPaths = ignoredPaths.length > 0;
    var _loop_2 = function (key, nestedValue) {
        var nestedPath = path ? path + "." + key : key;
        if (hasIgnoredPaths) {
            var hasMatches = ignoredPaths.some(function (ignored) {
                if (ignored instanceof RegExp) {
                    return ignored.test(nestedPath);
                }
                return nestedPath === ignored;
            });
            if (hasMatches) {
                return "continue";
            }
        }
        if (!isSerializable(nestedValue)) {
            return { value: {
                    keyPath: nestedPath,
                    value: nestedValue
                } };
        }
        if (typeof nestedValue === "object") {
            foundNestedSerializable = findNonSerializableValue(nestedValue, nestedPath, isSerializable, getEntries, ignoredPaths, cache);
            if (foundNestedSerializable) {
                return { value: foundNestedSerializable };
            }
        }
    };
    for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {
        var _c = entries_1[_i], key = _c[0], nestedValue = _c[1];
        var state_2 = _loop_2(key, nestedValue);
        if (typeof state_2 === "object")
            return state_2.value;
    }
    if (cache && isNestedFrozen(value))
        cache.add(value);
    return false;
}
function isNestedFrozen(value) {
    if (!Object.isFrozen(value))
        return false;
    for (var _i = 0, _c = Object.values(value); _i < _c.length; _i++) {
        var nestedValue = _c[_i];
        if (typeof nestedValue !== "object" || nestedValue === null)
            continue;
        if (!isNestedFrozen(nestedValue))
            return false;
    }
    return true;
}
function createSerializableStateInvariantMiddleware(options) {
    if (options === void 0) { options = {}; }
    if (process.env.NODE_ENV === "production") {
        return function () { return function (next) { return function (action) { return next(action); }; }; };
    }
    var _c = options.isSerializable, isSerializable = _c === void 0 ? isPlain : _c, getEntries = options.getEntries, _d = options.ignoredActions, ignoredActions = _d === void 0 ? [] : _d, _e = options.ignoredActionPaths, ignoredActionPaths = _e === void 0 ? ["meta.arg", "meta.baseQueryMeta"] : _e, _f = options.ignoredPaths, ignoredPaths = _f === void 0 ? [] : _f, _g = options.warnAfter, warnAfter = _g === void 0 ? 32 : _g, _h = options.ignoreState, ignoreState = _h === void 0 ? false : _h, _j = options.ignoreActions, ignoreActions = _j === void 0 ? false : _j, _k = options.disableCache, disableCache = _k === void 0 ? false : _k;
    var cache = !disableCache && WeakSet ? new WeakSet() : void 0;
    return function (storeAPI) { return function (next) { return function (action) {
        var result = next(action);
        var measureUtils = getTimeMeasureUtils(warnAfter, "SerializableStateInvariantMiddleware");
        if (!ignoreActions && !(ignoredActions.length && ignoredActions.indexOf(action.type) !== -1)) {
            measureUtils.measureTime(function () {
                var foundActionNonSerializableValue = findNonSerializableValue(action, "", isSerializable, getEntries, ignoredActionPaths, cache);
                if (foundActionNonSerializableValue) {
                    var keyPath = foundActionNonSerializableValue.keyPath, value = foundActionNonSerializableValue.value;
                    console.error("A non-serializable value was detected in an action, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the logic that dispatched this action: ", action, "\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)", "\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)");
                }
            });
        }
        if (!ignoreState) {
            measureUtils.measureTime(function () {
                var state = storeAPI.getState();
                var foundStateNonSerializableValue = findNonSerializableValue(state, "", isSerializable, getEntries, ignoredPaths, cache);
                if (foundStateNonSerializableValue) {
                    var keyPath = foundStateNonSerializableValue.keyPath, value = foundStateNonSerializableValue.value;
                    console.error("A non-serializable value was detected in the state, in the path: `" + keyPath + "`. Value:", value, "\nTake a look at the reducer(s) handling this action type: " + action.type + ".\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)");
                }
            });
            measureUtils.warnIfExceeded();
        }
        return result;
    }; }; };
}
// src/getDefaultMiddleware.ts
function isBoolean(x) {
    return typeof x === "boolean";
}
function curryGetDefaultMiddleware() {
    return function curriedGetDefaultMiddleware(options) {
        return getDefaultMiddleware(options);
    };
}
function getDefaultMiddleware(options) {
    if (options === void 0) { options = {}; }
    var _c = options.thunk, thunk = _c === void 0 ? true : _c, _d = options.immutableCheck, immutableCheck = _d === void 0 ? true : _d, _e = options.serializableCheck, serializableCheck = _e === void 0 ? true : _e, _f = options.actionCreatorCheck, actionCreatorCheck = _f === void 0 ? true : _f;
    var middlewareArray = new MiddlewareArray();
    if (thunk) {
        if (isBoolean(thunk)) {
            middlewareArray.push(thunkMiddleware);
        }
        else {
            middlewareArray.push(thunkMiddleware.withExtraArgument(thunk.extraArgument));
        }
    }
    if (process.env.NODE_ENV !== "production") {
        if (immutableCheck) {
            var immutableOptions = {};
            if (!isBoolean(immutableCheck)) {
                immutableOptions = immutableCheck;
            }
            middlewareArray.unshift(createImmutableStateInvariantMiddleware(immutableOptions));
        }
        if (serializableCheck) {
            var serializableOptions = {};
            if (!isBoolean(serializableCheck)) {
                serializableOptions = serializableCheck;
            }
            middlewareArray.push(createSerializableStateInvariantMiddleware(serializableOptions));
        }
        if (actionCreatorCheck) {
            var actionCreatorOptions = {};
            if (!isBoolean(actionCreatorCheck)) {
                actionCreatorOptions = actionCreatorCheck;
            }
            middlewareArray.unshift(createActionCreatorInvariantMiddleware(actionCreatorOptions));
        }
    }
    return middlewareArray;
}
// src/configureStore.ts
var IS_PRODUCTION = process.env.NODE_ENV === "production";
function configureStore(options) {
    var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();
    var _c = options || {}, _d = _c.reducer, reducer = _d === void 0 ? void 0 : _d, _e = _c.middleware, middleware = _e === void 0 ? curriedGetDefaultMiddleware() : _e, _f = _c.devTools, devTools = _f === void 0 ? true : _f, _g = _c.preloadedState, preloadedState = _g === void 0 ? void 0 : _g, _h = _c.enhancers, enhancers = _h === void 0 ? void 0 : _h;
    var rootReducer;
    if (typeof reducer === "function") {
        rootReducer = reducer;
    }
    else if (isPlainObject(reducer)) {
        rootReducer = combineReducers(reducer);
    }
    else {
        throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');
    }
    var finalMiddleware = middleware;
    if (typeof finalMiddleware === "function") {
        finalMiddleware = finalMiddleware(curriedGetDefaultMiddleware);
        if (!IS_PRODUCTION && !Array.isArray(finalMiddleware)) {
            throw new Error("when using a middleware builder function, an array of middleware must be returned");
        }
    }
    if (!IS_PRODUCTION && finalMiddleware.some(function (item) { return typeof item !== "function"; })) {
        throw new Error("each middleware provided to configureStore must be a function");
    }
    var middlewareEnhancer = applyMiddleware.apply(void 0, finalMiddleware);
    var finalCompose = compose$1;
    if (devTools) {
        finalCompose = composeWithDevTools(__spreadValues({
            trace: !IS_PRODUCTION
        }, typeof devTools === "object" && devTools));
    }
    var defaultEnhancers = new EnhancerArray(middlewareEnhancer);
    var storeEnhancers = defaultEnhancers;
    if (Array.isArray(enhancers)) {
        storeEnhancers = __spreadArray([middlewareEnhancer], enhancers);
    }
    else if (typeof enhancers === "function") {
        storeEnhancers = enhancers(defaultEnhancers);
    }
    var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);
    return createStore(rootReducer, preloadedState, composedEnhancer);
}
// src/mapBuilders.ts
function executeReducerBuilderCallback(builderCallback) {
    var actionsMap = {};
    var actionMatchers = [];
    var defaultCaseReducer;
    var builder = {
        addCase: function (typeOrActionCreator, reducer) {
            if (process.env.NODE_ENV !== "production") {
                if (actionMatchers.length > 0) {
                    throw new Error("`builder.addCase` should only be called before calling `builder.addMatcher`");
                }
                if (defaultCaseReducer) {
                    throw new Error("`builder.addCase` should only be called before calling `builder.addDefaultCase`");
                }
            }
            var type = typeof typeOrActionCreator === "string" ? typeOrActionCreator : typeOrActionCreator.type;
            if (!type) {
                throw new Error("`builder.addCase` cannot be called with an empty action type");
            }
            if (type in actionsMap) {
                throw new Error("`builder.addCase` cannot be called with two reducers for the same action type");
            }
            actionsMap[type] = reducer;
            return builder;
        },
        addMatcher: function (matcher, reducer) {
            if (process.env.NODE_ENV !== "production") {
                if (defaultCaseReducer) {
                    throw new Error("`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");
                }
            }
            actionMatchers.push({ matcher: matcher, reducer: reducer });
            return builder;
        },
        addDefaultCase: function (reducer) {
            if (process.env.NODE_ENV !== "production") {
                if (defaultCaseReducer) {
                    throw new Error("`builder.addDefaultCase` can only be called once");
                }
            }
            defaultCaseReducer = reducer;
            return builder;
        }
    };
    builderCallback(builder);
    return [actionsMap, actionMatchers, defaultCaseReducer];
}
// src/createReducer.ts
function isStateFunction(x) {
    return typeof x === "function";
}
var hasWarnedAboutObjectNotation = false;
function createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {
    if (actionMatchers === void 0) { actionMatchers = []; }
    if (process.env.NODE_ENV !== "production") {
        if (typeof mapOrBuilderCallback === "object") {
            if (!hasWarnedAboutObjectNotation) {
                hasWarnedAboutObjectNotation = true;
                console.warn("The object notation for `createReducer` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer");
            }
        }
    }
    var _c = typeof mapOrBuilderCallback === "function" ? executeReducerBuilderCallback(mapOrBuilderCallback) : [mapOrBuilderCallback, actionMatchers, defaultCaseReducer], actionsMap = _c[0], finalActionMatchers = _c[1], finalDefaultCaseReducer = _c[2];
    var getInitialState;
    if (isStateFunction(initialState)) {
        getInitialState = function () { return freezeDraftable(initialState()); };
    }
    else {
        var frozenInitialState_1 = freezeDraftable(initialState);
        getInitialState = function () { return frozenInitialState_1; };
    }
    function reducer(state, action) {
        if (state === void 0) { state = getInitialState(); }
        var caseReducers = __spreadArray([
            actionsMap[action.type]
        ], finalActionMatchers.filter(function (_c) {
            var matcher = _c.matcher;
            return matcher(action);
        }).map(function (_c) {
            var reducer2 = _c.reducer;
            return reducer2;
        }));
        if (caseReducers.filter(function (cr) { return !!cr; }).length === 0) {
            caseReducers = [finalDefaultCaseReducer];
        }
        return caseReducers.reduce(function (previousState, caseReducer) {
            if (caseReducer) {
                if (r(previousState)) {
                    var draft = previousState;
                    var result = caseReducer(draft, action);
                    if (result === void 0) {
                        return previousState;
                    }
                    return result;
                }
                else if (!t(previousState)) {
                    var result = caseReducer(previousState, action);
                    if (result === void 0) {
                        if (previousState === null) {
                            return previousState;
                        }
                        throw Error("A case reducer on a non-draftable value must not return undefined");
                    }
                    return result;
                }
                else {
                    return fn(previousState, function (draft) {
                        return caseReducer(draft, action);
                    });
                }
            }
            return previousState;
        }, state);
    }
    reducer.getInitialState = getInitialState;
    return reducer;
}
// src/createSlice.ts
var hasWarnedAboutObjectNotation2 = false;
function getType2(slice, actionKey) {
    return slice + "/" + actionKey;
}
function createSlice(options) {
    var name = options.name;
    if (!name) {
        throw new Error("`name` is a required option for createSlice");
    }
    if (typeof process !== "undefined" && process.env.NODE_ENV === "development") {
        if (options.initialState === void 0) {
            console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");
        }
    }
    var initialState = typeof options.initialState == "function" ? options.initialState : freezeDraftable(options.initialState);
    var reducers = options.reducers || {};
    var reducerNames = Object.keys(reducers);
    var sliceCaseReducersByName = {};
    var sliceCaseReducersByType = {};
    var actionCreators = {};
    reducerNames.forEach(function (reducerName) {
        var maybeReducerWithPrepare = reducers[reducerName];
        var type = getType2(name, reducerName);
        var caseReducer;
        var prepareCallback;
        if ("reducer" in maybeReducerWithPrepare) {
            caseReducer = maybeReducerWithPrepare.reducer;
            prepareCallback = maybeReducerWithPrepare.prepare;
        }
        else {
            caseReducer = maybeReducerWithPrepare;
        }
        sliceCaseReducersByName[reducerName] = caseReducer;
        sliceCaseReducersByType[type] = caseReducer;
        actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);
    });
    function buildReducer() {
        if (process.env.NODE_ENV !== "production") {
            if (typeof options.extraReducers === "object") {
                if (!hasWarnedAboutObjectNotation2) {
                    hasWarnedAboutObjectNotation2 = true;
                    console.warn("The object notation for `createSlice.extraReducers` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice");
                }
            }
        }
        var _c = typeof options.extraReducers === "function" ? executeReducerBuilderCallback(options.extraReducers) : [options.extraReducers], _d = _c[0], extraReducers = _d === void 0 ? {} : _d, _e = _c[1], actionMatchers = _e === void 0 ? [] : _e, _f = _c[2], defaultCaseReducer = _f === void 0 ? void 0 : _f;
        var finalCaseReducers = __spreadValues(__spreadValues({}, extraReducers), sliceCaseReducersByType);
        return createReducer(initialState, function (builder) {
            for (var key in finalCaseReducers) {
                builder.addCase(key, finalCaseReducers[key]);
            }
            for (var _i = 0, actionMatchers_1 = actionMatchers; _i < actionMatchers_1.length; _i++) {
                var m = actionMatchers_1[_i];
                builder.addMatcher(m.matcher, m.reducer);
            }
            if (defaultCaseReducer) {
                builder.addDefaultCase(defaultCaseReducer);
            }
        });
    }
    var _reducer;
    return {
        name: name,
        reducer: function (state, action) {
            if (!_reducer)
                _reducer = buildReducer();
            return _reducer(state, action);
        },
        actions: actionCreators,
        caseReducers: sliceCaseReducersByName,
        getInitialState: function () {
            if (!_reducer)
                _reducer = buildReducer();
            return _reducer.getInitialState();
        }
    };
}
// src/nanoid.ts
var urlAlphabet = "ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW";
var nanoid = function (size) {
    if (size === void 0) { size = 21; }
    var id = "";
    var i = size;
    while (i--) {
        id += urlAlphabet[Math.random() * 64 | 0];
    }
    return id;
};
// src/createAsyncThunk.ts
var commonProperties = [
    "name",
    "message",
    "stack",
    "code"
];
var RejectWithValue = /** @class */ (function () {
    function RejectWithValue(payload, meta) {
        this.payload = payload;
        this.meta = meta;
    }
    return RejectWithValue;
}());
var FulfillWithMeta = /** @class */ (function () {
    function FulfillWithMeta(payload, meta) {
        this.payload = payload;
        this.meta = meta;
    }
    return FulfillWithMeta;
}());
var miniSerializeError = function (value) {
    if (typeof value === "object" && value !== null) {
        var simpleError = {};
        for (var _i = 0, commonProperties_1 = commonProperties; _i < commonProperties_1.length; _i++) {
            var property = commonProperties_1[_i];
            if (typeof value[property] === "string") {
                simpleError[property] = value[property];
            }
        }
        return simpleError;
    }
    return { message: String(value) };
};
((function () {
    function createAsyncThunk2(typePrefix, payloadCreator, options) {
        var fulfilled = createAction(typePrefix + "/fulfilled", function (payload, requestId, arg, meta) { return ({
            payload: payload,
            meta: __spreadProps(__spreadValues({}, meta || {}), {
                arg: arg,
                requestId: requestId,
                requestStatus: "fulfilled"
            })
        }); });
        var pending = createAction(typePrefix + "/pending", function (requestId, arg, meta) { return ({
            payload: void 0,
            meta: __spreadProps(__spreadValues({}, meta || {}), {
                arg: arg,
                requestId: requestId,
                requestStatus: "pending"
            })
        }); });
        var rejected = createAction(typePrefix + "/rejected", function (error, requestId, arg, payload, meta) { return ({
            payload: payload,
            error: (options && options.serializeError || miniSerializeError)(error || "Rejected"),
            meta: __spreadProps(__spreadValues({}, meta || {}), {
                arg: arg,
                requestId: requestId,
                rejectedWithValue: !!payload,
                requestStatus: "rejected",
                aborted: (error == null ? void 0 : error.name) === "AbortError",
                condition: (error == null ? void 0 : error.name) === "ConditionError"
            })
        }); });
        var displayedWarning = false;
        var AC = typeof AbortController !== "undefined" ? AbortController : /** @class */ (function () {
            function class_1() {
                this.signal = {
                    aborted: false,
                    addEventListener: function () {
                    },
                    dispatchEvent: function () {
                        return false;
                    },
                    onabort: function () {
                    },
                    removeEventListener: function () {
                    },
                    reason: void 0,
                    throwIfAborted: function () {
                    }
                };
            }
            class_1.prototype.abort = function () {
                if (process.env.NODE_ENV !== "production") {
                    if (!displayedWarning) {
                        displayedWarning = true;
                        console.info("This platform does not implement AbortController. \nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.");
                    }
                }
            };
            return class_1;
        }());
        function actionCreator(arg) {
            return function (dispatch, getState, extra) {
                var requestId = (options == null ? void 0 : options.idGenerator) ? options.idGenerator(arg) : nanoid();
                var abortController = new AC();
                var abortReason;
                function abort(reason) {
                    abortReason = reason;
                    abortController.abort();
                }
                var promise2 = function () {
                    return __async(this, null, function () {
                        var _a, _b, finalAction, conditionResult, abortedPromise, err_1, skipDispatch;
                        return __generator(this, function (_c) {
                            switch (_c.label) {
                                case 0:
                                    _c.trys.push([0, 4, , 5]);
                                    conditionResult = (_a = options == null ? void 0 : options.condition) == null ? void 0 : _a.call(options, arg, { getState: getState, extra: extra });
                                    if (!isThenable(conditionResult)) return [3 /*break*/, 2];
                                    return [4 /*yield*/, conditionResult];
                                case 1:
                                    conditionResult = _c.sent();
                                    _c.label = 2;
                                case 2:
                                    if (conditionResult === false || abortController.signal.aborted) {
                                        throw {
                                            name: "ConditionError",
                                            message: "Aborted due to condition callback returning false."
                                        };
                                    }
                                    abortedPromise = new Promise(function (_, reject) { return abortController.signal.addEventListener("abort", function () { return reject({
                                        name: "AbortError",
                                        message: abortReason || "Aborted"
                                    }); }); });
                                    dispatch(pending(requestId, arg, (_b = options == null ? void 0 : options.getPendingMeta) == null ? void 0 : _b.call(options, { requestId: requestId, arg: arg }, { getState: getState, extra: extra })));
                                    return [4 /*yield*/, Promise.race([
                                            abortedPromise,
                                            Promise.resolve(payloadCreator(arg, {
                                                dispatch: dispatch,
                                                getState: getState,
                                                extra: extra,
                                                requestId: requestId,
                                                signal: abortController.signal,
                                                abort: abort,
                                                rejectWithValue: function (value, meta) {
                                                    return new RejectWithValue(value, meta);
                                                },
                                                fulfillWithValue: function (value, meta) {
                                                    return new FulfillWithMeta(value, meta);
                                                }
                                            })).then(function (result) {
                                                if (result instanceof RejectWithValue) {
                                                    throw result;
                                                }
                                                if (result instanceof FulfillWithMeta) {
                                                    return fulfilled(result.payload, requestId, arg, result.meta);
                                                }
                                                return fulfilled(result, requestId, arg);
                                            })
                                        ])];
                                case 3:
                                    finalAction = _c.sent();
                                    return [3 /*break*/, 5];
                                case 4:
                                    err_1 = _c.sent();
                                    finalAction = err_1 instanceof RejectWithValue ? rejected(null, requestId, arg, err_1.payload, err_1.meta) : rejected(err_1, requestId, arg);
                                    return [3 /*break*/, 5];
                                case 5:
                                    skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;
                                    if (!skipDispatch) {
                                        dispatch(finalAction);
                                    }
                                    return [2 /*return*/, finalAction];
                            }
                        });
                    });
                }();
                return Object.assign(promise2, {
                    abort: abort,
                    requestId: requestId,
                    arg: arg,
                    unwrap: function () {
                        return promise2.then(unwrapResult);
                    }
                });
            };
        }
        return Object.assign(actionCreator, {
            pending: pending,
            rejected: rejected,
            fulfilled: fulfilled,
            typePrefix: typePrefix
        });
    }
    createAsyncThunk2.withTypes = function () { return createAsyncThunk2; };
    return createAsyncThunk2;
}))();
function unwrapResult(action) {
    if (action.meta && action.meta.rejectedWithValue) {
        throw action.payload;
    }
    if (action.error) {
        throw action.error;
    }
    return action.payload;
}
function isThenable(value) {
    return value !== null && typeof value === "object" && typeof value.then === "function";
}
var alm = "listenerMiddleware";
createAction(alm + "/add");
createAction(alm + "/removeAll");
createAction(alm + "/remove");
var promise$1;
typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : globalThis) : function (cb) { return (promise$1 || (promise$1 = Promise.resolve())).then(cb).catch(function (err) { return setTimeout(function () {
    throw err;
}, 0); }); };
// src/index.ts
F();

var createSymbol = function createSymbol(name) {
  return "@@redux-saga/" + name;
};

var CANCEL$1 =
/*#__PURE__*/
createSymbol('CANCEL_PROMISE');
var CHANNEL_END_TYPE =
/*#__PURE__*/
createSymbol('CHANNEL_END');
var IO =
/*#__PURE__*/
createSymbol('IO');
var MATCH =
/*#__PURE__*/
createSymbol('MATCH');
var MULTICAST =
/*#__PURE__*/
createSymbol('MULTICAST');
var SAGA_ACTION =
/*#__PURE__*/
createSymbol('SAGA_ACTION');
var SELF_CANCELLATION =
/*#__PURE__*/
createSymbol('SELF_CANCELLATION');
var TASK =
/*#__PURE__*/
createSymbol('TASK');
var TASK_CANCEL =
/*#__PURE__*/
createSymbol('TASK_CANCEL');
var TERMINATE =
/*#__PURE__*/
createSymbol('TERMINATE');
var SAGA_LOCATION =
/*#__PURE__*/
createSymbol('LOCATION');

var undef = function undef(v) {
  return v === null || v === undefined;
};
var notUndef = function notUndef(v) {
  return v !== null && v !== undefined;
};
var func = function func(f) {
  return typeof f === 'function';
};
var string$1 = function string(s) {
  return typeof s === 'string';
};
var array$2 = Array.isArray;
var object = function object(obj) {
  return obj && !array$2(obj) && typeof obj === 'object';
};
var promise = function promise(p) {
  return p && func(p.then);
};
var iterator = function iterator(it) {
  return it && func(it.next) && func(it.throw);
};
var buffer = function buffer(buf) {
  return buf && func(buf.isEmpty) && func(buf.take) && func(buf.put);
};
var pattern = function pattern(pat) {
  return pat && (string$1(pat) || symbol$1(pat) || func(pat) || array$2(pat) && pat.every(pattern));
};
var channel$1 = function channel(ch) {
  return ch && func(ch.take) && func(ch.close);
};
var stringableFunc = function stringableFunc(f) {
  return func(f) && f.hasOwnProperty('toString');
};
var symbol$1 = function symbol(sym) {
  return Boolean(sym) && typeof Symbol === 'function' && sym.constructor === Symbol && sym !== Symbol.prototype;
};
var multicast = function multicast(ch) {
  return channel$1(ch) && ch[MULTICAST];
};
var effect = function effect(eff) {
  return eff && eff[IO];
};

var MAX_SIGNED_INT = 2147483647;
function delayP(ms, val) {
  if (val === void 0) {
    val = true;
  }

  // https://developer.mozilla.org/en-US/docs/Web/API/setTimeout#maximum_delay_value
  if (process.env.NODE_ENV !== 'production' && ms > MAX_SIGNED_INT) {
    throw new Error('delay only supports a maximum value of ' + MAX_SIGNED_INT + 'ms');
  }

  var timeoutId;
  var promise = new Promise(function (resolve) {
    timeoutId = setTimeout(resolve, Math.min(MAX_SIGNED_INT, ms), val);
  });

  promise[CANCEL$1] = function () {
    clearTimeout(timeoutId);
  };

  return promise;
}

var konst = function konst(v) {
  return function () {
    return v;
  };
};
var kTrue =
/*#__PURE__*/
konst(true);

var noop$1 = function noop() {};

if (process.env.NODE_ENV !== 'production' && typeof Proxy !== 'undefined') {
  noop$1 =
  /*#__PURE__*/
  new Proxy(noop$1, {
    set: function set() {
      throw internalErr('There was an attempt to assign a property to internal `noop` function.');
    }
  });
}
var identity$1 = function identity(v) {
  return v;
};
var hasSymbol = typeof Symbol === 'function';
var asyncIteratorSymbol = hasSymbol && Symbol.asyncIterator ? Symbol.asyncIterator : '@@asyncIterator';
function check(value, predicate, error) {
  if (!predicate(value)) {
    throw new Error(error);
  }
}
var assignWithSymbols = function assignWithSymbols(target, source) {
  _extends(target, source);

  if (Object.getOwnPropertySymbols) {
    Object.getOwnPropertySymbols(source).forEach(function (s) {
      target[s] = source[s];
    });
  }
};
var flatMap = function flatMap(mapper, arr) {
  var _ref;

  return (_ref = []).concat.apply(_ref, arr.map(mapper));
};
function remove$1(array, item) {
  var index = array.indexOf(item);

  if (index >= 0) {
    array.splice(index, 1);
  }
}
function once(fn) {
  var called = false;
  return function () {
    if (called) {
      return;
    }

    called = true;
    fn();
  };
}

var kThrow = function kThrow(err) {
  throw err;
};

var kReturn = function kReturn(value) {
  return {
    value: value,
    done: true
  };
};

function makeIterator(next, thro, name) {
  if (thro === void 0) {
    thro = kThrow;
  }

  if (name === void 0) {
    name = 'iterator';
  }

  var iterator = {
    meta: {
      name: name
    },
    next: next,
    throw: thro,
    return: kReturn,
    isSagaIterator: true
  };

  if (typeof Symbol !== 'undefined') {
    iterator[Symbol.iterator] = function () {
      return iterator;
    };
  }

  return iterator;
}
function logError(error, _ref2) {
  var sagaStack = _ref2.sagaStack;

  /*eslint-disable no-console*/
  console.error(error);
  console.error(sagaStack);
}
var internalErr = function internalErr(err) {
  return new Error("\n  redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\n  in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\n  Error: " + err + "\n");
};
var createSetContextWarning = function createSetContextWarning(ctx, props) {
  return (ctx ? ctx + '.' : '') + "setContext(props): argument " + props + " is not a plain object";
};
var FROZEN_ACTION_ERROR = "You can't put (a.k.a. dispatch from saga) frozen actions.\nWe have to define a special non-enumerable property on those actions for scheduling purposes.\nOtherwise you wouldn't be able to communicate properly between sagas & other subscribers (action ordering would become far less predictable).\nIf you are using redux and you care about this behaviour (frozen actions),\nthen you might want to switch to freezing actions in a middleware rather than in action creator.\nExample implementation:\n\nconst freezeActions = store => next => action => next(Object.freeze(action))\n"; // creates empty, but not-holey array

var createEmptyArray = function createEmptyArray(n) {
  return Array.apply(null, new Array(n));
};
var wrapSagaDispatch = function wrapSagaDispatch(dispatch) {
  return function (action) {
    if (process.env.NODE_ENV !== 'production') {
      check(action, function (ac) {
        return !Object.isFrozen(ac);
      }, FROZEN_ACTION_ERROR);
    }

    return dispatch(Object.defineProperty(action, SAGA_ACTION, {
      value: true
    }));
  };
};
var shouldTerminate = function shouldTerminate(res) {
  return res === TERMINATE;
};
var shouldCancel = function shouldCancel(res) {
  return res === TASK_CANCEL;
};
var shouldComplete = function shouldComplete(res) {
  return shouldTerminate(res) || shouldCancel(res);
};
function createAllStyleChildCallbacks(shape, parentCallback) {
  var keys = Object.keys(shape);
  var totalCount = keys.length;

  if (process.env.NODE_ENV !== 'production') {
    check(totalCount, function (c) {
      return c > 0;
    }, 'createAllStyleChildCallbacks: get an empty array or object');
  }

  var completedCount = 0;
  var completed;
  var results = array$2(shape) ? createEmptyArray(totalCount) : {};
  var childCallbacks = {};

  function checkEnd() {
    if (completedCount === totalCount) {
      completed = true;
      parentCallback(results);
    }
  }

  keys.forEach(function (key) {
    var chCbAtKey = function chCbAtKey(res, isErr) {
      if (completed) {
        return;
      }

      if (isErr || shouldComplete(res)) {
        parentCallback.cancel();
        parentCallback(res, isErr);
      } else {
        results[key] = res;
        completedCount++;
        checkEnd();
      }
    };

    chCbAtKey.cancel = noop$1;
    childCallbacks[key] = chCbAtKey;
  });

  parentCallback.cancel = function () {
    if (!completed) {
      completed = true;
      keys.forEach(function (key) {
        return childCallbacks[key].cancel();
      });
    }
  };

  return childCallbacks;
}
function getMetaInfo(fn) {
  return {
    name: fn.name || 'anonymous',
    location: getLocation(fn)
  };
}
function getLocation(instrumented) {
  return instrumented[SAGA_LOCATION];
}
function compose() {
  for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {
    funcs[_key] = arguments[_key];
  }

  if (funcs.length === 0) {
    return function (arg) {
      return arg;
    };
  }

  if (funcs.length === 1) {
    return funcs[0];
  }

  return funcs.reduce(function (a, b) {
    return function () {
      return a(b.apply(void 0, arguments));
    };
  });
}

var BUFFER_OVERFLOW = "Channel's Buffer overflow!";
var ON_OVERFLOW_THROW = 1;
var ON_OVERFLOW_SLIDE = 3;
var ON_OVERFLOW_EXPAND = 4;

function ringBuffer(limit, overflowAction) {
  if (limit === void 0) {
    limit = 10;
  }

  var arr = new Array(limit);
  var length = 0;
  var pushIndex = 0;
  var popIndex = 0;

  var push = function push(it) {
    arr[pushIndex] = it;
    pushIndex = (pushIndex + 1) % limit;
    length++;
  };

  var take = function take() {
    if (length != 0) {
      var it = arr[popIndex];
      arr[popIndex] = null;
      length--;
      popIndex = (popIndex + 1) % limit;
      return it;
    }
  };

  var flush = function flush() {
    var items = [];

    while (length) {
      items.push(take());
    }

    return items;
  };

  return {
    isEmpty: function isEmpty() {
      return length == 0;
    },
    put: function put(it) {
      if (length < limit) {
        push(it);
      } else {
        var doubledLimit;

        switch (overflowAction) {
          case ON_OVERFLOW_THROW:
            throw new Error(BUFFER_OVERFLOW);

          case ON_OVERFLOW_SLIDE:
            arr[pushIndex] = it;
            pushIndex = (pushIndex + 1) % limit;
            popIndex = pushIndex;
            break;

          case ON_OVERFLOW_EXPAND:
            doubledLimit = 2 * limit;
            arr = flush();
            length = arr.length;
            pushIndex = arr.length;
            popIndex = 0;
            arr.length = doubledLimit;
            limit = doubledLimit;
            push(it);
            break;

        }
      }
    },
    take: take,
    flush: flush
  };
}
var expanding = function expanding(initialSize) {
  return ringBuffer(initialSize, ON_OVERFLOW_EXPAND);
};

var TAKE = 'TAKE';
var PUT = 'PUT';
var ALL = 'ALL';
var RACE = 'RACE';
var CALL = 'CALL';
var CPS = 'CPS';
var FORK = 'FORK';
var JOIN = 'JOIN';
var CANCEL = 'CANCEL';
var SELECT = 'SELECT';
var ACTION_CHANNEL = 'ACTION_CHANNEL';
var CANCELLED$1 = 'CANCELLED';
var FLUSH = 'FLUSH';
var GET_CONTEXT = 'GET_CONTEXT';
var SET_CONTEXT = 'SET_CONTEXT';

var makeEffect = function makeEffect(type, payload) {
  var _ref;

  return _ref = {}, _ref[IO] = true, _ref.combinator = false, _ref.type = type, _ref.payload = payload, _ref;
};

var isForkEffect = function isForkEffect(eff) {
  return effect(eff) && eff.type === FORK;
};

var detach = function detach(eff) {
  if (process.env.NODE_ENV !== 'production') {
    check(eff, isForkEffect, 'detach(eff): argument must be a fork effect');
  }

  return makeEffect(FORK, _extends({}, eff.payload, {
    detached: true
  }));
};
function take(patternOrChannel, multicastPattern) {
  if (patternOrChannel === void 0) {
    patternOrChannel = '*';
  }

  if (process.env.NODE_ENV !== 'production' && arguments.length) {
    check(arguments[0], notUndef, 'take(patternOrChannel): patternOrChannel is undefined');
  }

  if (pattern(patternOrChannel)) {
    if (notUndef(multicastPattern)) {
      /* eslint-disable no-console */
      console.warn("take(pattern) takes one argument but two were provided. Consider passing an array for listening to several action types");
    }

    return makeEffect(TAKE, {
      pattern: patternOrChannel
    });
  }

  if (multicast(patternOrChannel) && notUndef(multicastPattern) && pattern(multicastPattern)) {
    return makeEffect(TAKE, {
      channel: patternOrChannel,
      pattern: multicastPattern
    });
  }

  if (channel$1(patternOrChannel)) {
    if (notUndef(multicastPattern)) {
      /* eslint-disable no-console */
      console.warn("take(channel) takes one argument but two were provided. Second argument is ignored.");
    }

    return makeEffect(TAKE, {
      channel: patternOrChannel
    });
  }

  if (process.env.NODE_ENV !== 'production') {
    throw new Error("take(patternOrChannel): argument " + patternOrChannel + " is not valid channel or a valid pattern");
  }
}
function put(channel$1$1, action) {
  if (process.env.NODE_ENV !== 'production') {
    if (arguments.length > 1) {
      check(channel$1$1, notUndef, 'put(channel, action): argument channel is undefined');
      check(channel$1$1, channel$1, "put(channel, action): argument " + channel$1$1 + " is not a valid channel");
      check(action, notUndef, 'put(channel, action): argument action is undefined');
    } else {
      check(channel$1$1, notUndef, 'put(action): argument action is undefined');
    }
  }

  if (undef(action)) {
    action = channel$1$1; // `undefined` instead of `null` to make default parameter work

    channel$1$1 = undefined;
  }

  return makeEffect(PUT, {
    channel: channel$1$1,
    action: action
  });
}

var validateFnDescriptor = function validateFnDescriptor(effectName, fnDescriptor) {
  check(fnDescriptor, notUndef, effectName + ": argument fn is undefined or null");

  if (func(fnDescriptor)) {
    return;
  }

  var context = null;
  var fn;

  if (array$2(fnDescriptor)) {
    context = fnDescriptor[0];
    fn = fnDescriptor[1];
    check(fn, notUndef, effectName + ": argument of type [context, fn] has undefined or null `fn`");
  } else if (object(fnDescriptor)) {
    context = fnDescriptor.context;
    fn = fnDescriptor.fn;
    check(fn, notUndef, effectName + ": argument of type {context, fn} has undefined or null `fn`");
  } else {
    check(fnDescriptor, func, effectName + ": argument fn is not function");
    return;
  }

  if (context && string$1(fn)) {
    check(context[fn], func, effectName + ": context arguments has no such method - \"" + fn + "\"");
    return;
  }

  check(fn, func, effectName + ": unpacked fn argument (from [context, fn] or {context, fn}) is not a function");
};

function getFnCallDescriptor(fnDescriptor, args) {
  var context = null;
  var fn;

  if (func(fnDescriptor)) {
    fn = fnDescriptor;
  } else {
    if (array$2(fnDescriptor)) {
      context = fnDescriptor[0];
      fn = fnDescriptor[1];
    } else {
      context = fnDescriptor.context;
      fn = fnDescriptor.fn;
    }

    if (context && string$1(fn) && func(context[fn])) {
      fn = context[fn];
    }
  }

  return {
    context: context,
    fn: fn,
    args: args
  };
}

var isNotDelayEffect = function isNotDelayEffect(fn) {
  return fn !== delay;
};

function call(fnDescriptor) {
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
    args[_key - 1] = arguments[_key];
  }

  if (process.env.NODE_ENV !== 'production') {
    var arg0 = typeof args[0] === 'number' ? args[0] : 'ms';
    check(fnDescriptor, isNotDelayEffect, "instead of writing `yield call(delay, " + arg0 + ")` where delay is an effect from `redux-saga/effects` you should write `yield delay(" + arg0 + ")`");
    validateFnDescriptor('call', fnDescriptor);
  }

  return makeEffect(CALL, getFnCallDescriptor(fnDescriptor, args));
}
function fork(fnDescriptor) {
  if (process.env.NODE_ENV !== 'production') {
    validateFnDescriptor('fork', fnDescriptor);
    check(fnDescriptor, function (arg) {
      return !effect(arg);
    }, 'fork: argument must not be an effect');
  }

  for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
    args[_key3 - 1] = arguments[_key3];
  }

  return makeEffect(FORK, getFnCallDescriptor(fnDescriptor, args));
}
function spawn(fnDescriptor) {
  if (process.env.NODE_ENV !== 'production') {
    validateFnDescriptor('spawn', fnDescriptor);
  }

  for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
    args[_key4 - 1] = arguments[_key4];
  }

  return detach(fork.apply(void 0, [fnDescriptor].concat(args)));
}
var delay =
/*#__PURE__*/
call.bind(null, delayP);

var done = function done(value) {
  return {
    done: true,
    value: value
  };
};

var qEnd = {};
function safeName(patternOrChannel) {
  if (channel$1(patternOrChannel)) {
    return 'channel';
  }

  if (stringableFunc(patternOrChannel)) {
    return String(patternOrChannel);
  }

  if (func(patternOrChannel)) {
    return patternOrChannel.name;
  }

  return String(patternOrChannel);
}
function fsmIterator(fsm, startState, name) {
  var stateUpdater,
      errorState,
      effect,
      nextState = startState;

  function next(arg, error) {
    if (nextState === qEnd) {
      return done(arg);
    }

    if (error && !errorState) {
      nextState = qEnd;
      throw error;
    } else {
      stateUpdater && stateUpdater(arg);
      var currentState = error ? fsm[errorState](error) : fsm[nextState]();
      nextState = currentState.nextState;
      effect = currentState.effect;
      stateUpdater = currentState.stateUpdater;
      errorState = currentState.errorState;
      return nextState === qEnd ? done(arg) : effect;
    }
  }

  return makeIterator(next, function (error) {
    return next(null, error);
  }, name);
}

function takeEvery(patternOrChannel, worker) {
  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
    args[_key - 2] = arguments[_key];
  }

  var yTake = {
    done: false,
    value: take(patternOrChannel)
  };

  var yFork = function yFork(ac) {
    return {
      done: false,
      value: fork.apply(void 0, [worker].concat(args, [ac]))
    };
  };

  var action,
      setAction = function setAction(ac) {
    return action = ac;
  };

  return fsmIterator({
    q1: function q1() {
      return {
        nextState: 'q2',
        effect: yTake,
        stateUpdater: setAction
      };
    },
    q2: function q2() {
      return {
        nextState: 'q1',
        effect: yFork(action)
      };
    }
  }, 'q1', "takeEvery(" + safeName(patternOrChannel) + ", " + worker.name + ")");
}

var validateTakeEffect = function validateTakeEffect(fn, patternOrChannel, worker) {
  check(patternOrChannel, notUndef, fn.name + " requires a pattern or channel");
  check(worker, notUndef, fn.name + " requires a saga parameter");
};

function takeEvery$1(patternOrChannel, worker) {
  if (process.env.NODE_ENV !== 'production') {
    validateTakeEffect(takeEvery$1, patternOrChannel, worker);
  }

  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
    args[_key - 2] = arguments[_key];
  }

  return fork.apply(void 0, [takeEvery, patternOrChannel, worker].concat(args));
}

function deferred() {
  var def = {};
  def.promise = new Promise(function (resolve, reject) {
    def.resolve = resolve;
    def.reject = reject;
  });
  return def;
}

var queue = [];
/**
  Variable to hold a counting semaphore
  - Incrementing adds a lock and puts the scheduler in a `suspended` state (if it's not
    already suspended)
  - Decrementing releases a lock. Zero locks puts the scheduler in a `released` state. This
    triggers flushing the queued tasks.
**/

var semaphore = 0;
/**
  Executes a task 'atomically'. Tasks scheduled during this execution will be queued
  and flushed after this task has finished (assuming the scheduler endup in a released
  state).
**/

function exec(task) {
  try {
    suspend();
    task();
  } finally {
    release();
  }
}
/**
  Executes or queues a task depending on the state of the scheduler (`suspended` or `released`)
**/


function asap(task) {
  queue.push(task);

  if (!semaphore) {
    suspend();
    flush();
  }
}
/**
 * Puts the scheduler in a `suspended` state and executes a task immediately.
 */

function immediately(task) {
  try {
    suspend();
    return task();
  } finally {
    flush();
  }
}
/**
  Puts the scheduler in a `suspended` state. Scheduled tasks will be queued until the
  scheduler is released.
**/

function suspend() {
  semaphore++;
}
/**
  Puts the scheduler in a `released` state.
**/


function release() {
  semaphore--;
}
/**
  Releases the current lock. Executes all queued tasks if the scheduler is in the released state.
**/


function flush() {
  release();
  var task;

  while (!semaphore && (task = queue.shift()) !== undefined) {
    exec(task);
  }
}

var array$1 = function array(patterns) {
  return function (input) {
    return patterns.some(function (p) {
      return matcher$1(p)(input);
    });
  };
};
var predicate = function predicate(_predicate) {
  return function (input) {
    return _predicate(input);
  };
};
var string = function string(pattern) {
  return function (input) {
    return input.type === String(pattern);
  };
};
var symbol = function symbol(pattern) {
  return function (input) {
    return input.type === pattern;
  };
};
var wildcard = function wildcard() {
  return kTrue;
};
function matcher$1(pattern) {
  // prettier-ignore
  var matcherCreator = pattern === '*' ? wildcard : string$1(pattern) ? string : array$2(pattern) ? array$1 : stringableFunc(pattern) ? string : func(pattern) ? predicate : symbol$1(pattern) ? symbol : null;

  if (matcherCreator === null) {
    throw new Error("invalid pattern: " + pattern);
  }

  return matcherCreator(pattern);
}

var END = {
  type: CHANNEL_END_TYPE
};
var isEnd = function isEnd(a) {
  return a && a.type === CHANNEL_END_TYPE;
};
var CLOSED_CHANNEL_WITH_TAKERS = 'Cannot have a closed channel with pending takers';
var INVALID_BUFFER = 'invalid buffer passed to channel factory function';
var UNDEFINED_INPUT_ERROR = "Saga or channel was provided with an undefined action\nHints:\n  - check that your Action Creator returns a non-undefined value\n  - if the Saga was started using runSaga, check that your subscribe source provides the action to its listeners";
function channel(buffer$1) {
  if (buffer$1 === void 0) {
    buffer$1 = expanding();
  }

  var closed = false;
  var takers = [];

  if (process.env.NODE_ENV !== 'production') {
    check(buffer$1, buffer, INVALID_BUFFER);
  }

  function checkForbiddenStates() {
    if (closed && takers.length) {
      throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);
    }

    if (takers.length && !buffer$1.isEmpty()) {
      throw internalErr('Cannot have pending takers with non empty buffer');
    }
  }

  function put(input) {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
      check(input, notUndef, UNDEFINED_INPUT_ERROR);
    }

    if (closed) {
      return;
    }

    if (takers.length === 0) {
      return buffer$1.put(input);
    }

    var cb = takers.shift();
    cb(input);
  }

  function take(cb) {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
      check(cb, func, "channel.take's callback must be a function");
    }

    if (closed && buffer$1.isEmpty()) {
      cb(END);
    } else if (!buffer$1.isEmpty()) {
      cb(buffer$1.take());
    } else {
      takers.push(cb);

      cb.cancel = function () {
        remove$1(takers, cb);
      };
    }
  }

  function flush(cb) {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
      check(cb, func, "channel.flush' callback must be a function");
    }

    if (closed && buffer$1.isEmpty()) {
      cb(END);
      return;
    }

    cb(buffer$1.flush());
  }

  function close() {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
    }

    if (closed) {
      return;
    }

    closed = true;
    var arr = takers;
    takers = [];

    for (var i = 0, len = arr.length; i < len; i++) {
      var taker = arr[i];
      taker(END);
    }
  }

  return {
    take: take,
    put: put,
    flush: flush,
    close: close
  };
}
function multicastChannel() {
  var _ref;

  var closed = false;
  var currentTakers = [];
  var nextTakers = currentTakers;

  function checkForbiddenStates() {
    if (closed && nextTakers.length) {
      throw internalErr(CLOSED_CHANNEL_WITH_TAKERS);
    }
  }

  var ensureCanMutateNextTakers = function ensureCanMutateNextTakers() {
    if (nextTakers !== currentTakers) {
      return;
    }

    nextTakers = currentTakers.slice();
  };

  var close = function close() {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
    }

    closed = true;
    var takers = currentTakers = nextTakers;
    nextTakers = [];
    takers.forEach(function (taker) {
      taker(END);
    });
  };

  return _ref = {}, _ref[MULTICAST] = true, _ref.put = function put(input) {
    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
      check(input, notUndef, UNDEFINED_INPUT_ERROR);
    }

    if (closed) {
      return;
    }

    if (isEnd(input)) {
      close();
      return;
    }

    var takers = currentTakers = nextTakers;

    for (var i = 0, len = takers.length; i < len; i++) {
      var taker = takers[i];

      if (taker[MATCH](input)) {
        taker.cancel();
        taker(input);
      }
    }
  }, _ref.take = function take(cb, matcher) {
    if (matcher === void 0) {
      matcher = wildcard;
    }

    if (process.env.NODE_ENV !== 'production') {
      checkForbiddenStates();
    }

    if (closed) {
      cb(END);
      return;
    }

    cb[MATCH] = matcher;
    ensureCanMutateNextTakers();
    nextTakers.push(cb);
    cb.cancel = once(function () {
      ensureCanMutateNextTakers();
      remove$1(nextTakers, cb);
    });
  }, _ref.close = close, _ref;
}
function stdChannel() {
  var chan = multicastChannel();
  var put = chan.put;

  chan.put = function (input) {
    if (input[SAGA_ACTION]) {
      put(input);
      return;
    }

    asap(function () {
      put(input);
    });
  };

  return chan;
}

var RUNNING$1 = 0;
var CANCELLED = 1;
var ABORTED = 2;
var DONE = 3;

function resolvePromise(promise, cb) {
  var cancelPromise = promise[CANCEL$1];

  if (func(cancelPromise)) {
    cb.cancel = cancelPromise;
  }

  promise.then(cb, function (error) {
    cb(error, true);
  });
}

var current = 0;
var nextSagaId = (function () {
  return ++current;
});

var _effectRunnerMap;

function getIteratorMetaInfo(iterator, fn) {
  if (iterator.isSagaIterator) {
    return {
      name: iterator.meta.name
    };
  }

  return getMetaInfo(fn);
}

function createTaskIterator(_ref) {
  var context = _ref.context,
      fn = _ref.fn,
      args = _ref.args;

  // catch synchronous failures; see #152 and #441
  try {
    var result = fn.apply(context, args); // i.e. a generator function returns an iterator

    if (iterator(result)) {
      return result;
    }

    var resolved = false;

    var next = function next(arg) {
      if (!resolved) {
        resolved = true; // Only promises returned from fork will be interpreted. See #1573

        return {
          value: result,
          done: !promise(result)
        };
      } else {
        return {
          value: arg,
          done: true
        };
      }
    };

    return makeIterator(next);
  } catch (err) {
    // do not bubble up synchronous failures for detached forks
    // instead create a failed task. See #152 and #441
    return makeIterator(function () {
      throw err;
    });
  }
}

function runPutEffect(env, _ref2, cb) {
  var channel = _ref2.channel,
      action = _ref2.action,
      resolve = _ref2.resolve;

  /**
   Schedule the put in case another saga is holding a lock.
   The put will be executed atomically. ie nested puts will execute after
   this put has terminated.
   **/
  asap(function () {
    var result;

    try {
      result = (channel ? channel.put : env.dispatch)(action);
    } catch (error) {
      cb(error, true);
      return;
    }

    if (resolve && promise(result)) {
      resolvePromise(result, cb);
    } else {
      cb(result);
    }
  }); // Put effects are non cancellables
}

function runTakeEffect(env, _ref3, cb) {
  var _ref3$channel = _ref3.channel,
      channel = _ref3$channel === void 0 ? env.channel : _ref3$channel,
      pattern = _ref3.pattern,
      maybe = _ref3.maybe;

  var takeCb = function takeCb(input) {
    if (input instanceof Error) {
      cb(input, true);
      return;
    }

    if (isEnd(input) && !maybe) {
      cb(TERMINATE);
      return;
    }

    cb(input);
  };

  try {
    channel.take(takeCb, notUndef(pattern) ? matcher$1(pattern) : null);
  } catch (err) {
    cb(err, true);
    return;
  }

  cb.cancel = takeCb.cancel;
}

function runCallEffect(env, _ref4, cb, _ref5) {
  var context = _ref4.context,
      fn = _ref4.fn,
      args = _ref4.args;
  var task = _ref5.task;

  // catch synchronous failures; see #152
  try {
    var result = fn.apply(context, args);

    if (promise(result)) {
      resolvePromise(result, cb);
      return;
    }

    if (iterator(result)) {
      // resolve iterator
      proc(env, result, task.context, current, getMetaInfo(fn),
      /* isRoot */
      false, cb);
      return;
    }

    cb(result);
  } catch (error) {
    cb(error, true);
  }
}

function runCPSEffect(env, _ref6, cb) {
  var context = _ref6.context,
      fn = _ref6.fn,
      args = _ref6.args;

  // CPS (ie node style functions) can define their own cancellation logic
  // by setting cancel field on the cb
  // catch synchronous failures; see #152
  try {
    var cpsCb = function cpsCb(err, res) {
      if (undef(err)) {
        cb(res);
      } else {
        cb(err, true);
      }
    };

    fn.apply(context, args.concat(cpsCb));

    if (cpsCb.cancel) {
      cb.cancel = cpsCb.cancel;
    }
  } catch (error) {
    cb(error, true);
  }
}

function runForkEffect(env, _ref7, cb, _ref8) {
  var context = _ref7.context,
      fn = _ref7.fn,
      args = _ref7.args,
      detached = _ref7.detached;
  var parent = _ref8.task;
  var taskIterator = createTaskIterator({
    context: context,
    fn: fn,
    args: args
  });
  var meta = getIteratorMetaInfo(taskIterator, fn);
  immediately(function () {
    var child = proc(env, taskIterator, parent.context, current, meta, detached, undefined);

    if (detached) {
      cb(child);
    } else {
      if (child.isRunning()) {
        parent.queue.addTask(child);
        cb(child);
      } else if (child.isAborted()) {
        parent.queue.abort(child.error());
      } else {
        cb(child);
      }
    }
  }); // Fork effects are non cancellables
}

function runJoinEffect(env, taskOrTasks, cb, _ref9) {
  var task = _ref9.task;

  var joinSingleTask = function joinSingleTask(taskToJoin, cb) {
    if (taskToJoin.isRunning()) {
      var joiner = {
        task: task,
        cb: cb
      };

      cb.cancel = function () {
        if (taskToJoin.isRunning()) remove$1(taskToJoin.joiners, joiner);
      };

      taskToJoin.joiners.push(joiner);
    } else {
      if (taskToJoin.isAborted()) {
        cb(taskToJoin.error(), true);
      } else {
        cb(taskToJoin.result());
      }
    }
  };

  if (array$2(taskOrTasks)) {
    if (taskOrTasks.length === 0) {
      cb([]);
      return;
    }

    var childCallbacks = createAllStyleChildCallbacks(taskOrTasks, cb);
    taskOrTasks.forEach(function (t, i) {
      joinSingleTask(t, childCallbacks[i]);
    });
  } else {
    joinSingleTask(taskOrTasks, cb);
  }
}

function cancelSingleTask(taskToCancel) {
  if (taskToCancel.isRunning()) {
    taskToCancel.cancel();
  }
}

function runCancelEffect(env, taskOrTasks, cb, _ref10) {
  var task = _ref10.task;

  if (taskOrTasks === SELF_CANCELLATION) {
    cancelSingleTask(task);
  } else if (array$2(taskOrTasks)) {
    taskOrTasks.forEach(cancelSingleTask);
  } else {
    cancelSingleTask(taskOrTasks);
  }

  cb(); // cancel effects are non cancellables
}

function runAllEffect(env, effects, cb, _ref11) {
  var digestEffect = _ref11.digestEffect;
  var effectId = current;
  var keys = Object.keys(effects);

  if (keys.length === 0) {
    cb(array$2(effects) ? [] : {});
    return;
  }

  var childCallbacks = createAllStyleChildCallbacks(effects, cb);
  keys.forEach(function (key) {
    digestEffect(effects[key], effectId, childCallbacks[key], key);
  });
}

function runRaceEffect(env, effects, cb, _ref12) {
  var digestEffect = _ref12.digestEffect;
  var effectId = current;
  var keys = Object.keys(effects);
  var response = array$2(effects) ? createEmptyArray(keys.length) : {};
  var childCbs = {};
  var completed = false;
  keys.forEach(function (key) {
    var chCbAtKey = function chCbAtKey(res, isErr) {
      if (completed) {
        return;
      }

      if (isErr || shouldComplete(res)) {
        // Race Auto cancellation
        cb.cancel();
        cb(res, isErr);
      } else {
        cb.cancel();
        completed = true;
        response[key] = res;
        cb(response);
      }
    };

    chCbAtKey.cancel = noop$1;
    childCbs[key] = chCbAtKey;
  });

  cb.cancel = function () {
    // prevents unnecessary cancellation
    if (!completed) {
      completed = true;
      keys.forEach(function (key) {
        return childCbs[key].cancel();
      });
    }
  };

  keys.forEach(function (key) {
    if (completed) {
      return;
    }

    digestEffect(effects[key], effectId, childCbs[key], key);
  });
}

function runSelectEffect(env, _ref13, cb) {
  var selector = _ref13.selector,
      args = _ref13.args;

  try {
    var state = selector.apply(void 0, [env.getState()].concat(args));
    cb(state);
  } catch (error) {
    cb(error, true);
  }
}

function runChannelEffect(env, _ref14, cb) {
  var pattern = _ref14.pattern,
      buffer = _ref14.buffer;
  var chan = channel(buffer);
  var match = matcher$1(pattern);

  var taker = function taker(action) {
    if (!isEnd(action)) {
      env.channel.take(taker, match);
    }

    chan.put(action);
  };

  var close = chan.close;

  chan.close = function () {
    taker.cancel();
    close();
  };

  env.channel.take(taker, match);
  cb(chan);
}

function runCancelledEffect(env, data, cb, _ref15) {
  var task = _ref15.task;
  cb(task.isCancelled());
}

function runFlushEffect(env, channel, cb) {
  channel.flush(cb);
}

function runGetContextEffect(env, prop, cb, _ref16) {
  var task = _ref16.task;
  cb(task.context[prop]);
}

function runSetContextEffect(env, props, cb, _ref17) {
  var task = _ref17.task;
  assignWithSymbols(task.context, props);
  cb();
}

var effectRunnerMap = (_effectRunnerMap = {}, _effectRunnerMap[TAKE] = runTakeEffect, _effectRunnerMap[PUT] = runPutEffect, _effectRunnerMap[ALL] = runAllEffect, _effectRunnerMap[RACE] = runRaceEffect, _effectRunnerMap[CALL] = runCallEffect, _effectRunnerMap[CPS] = runCPSEffect, _effectRunnerMap[FORK] = runForkEffect, _effectRunnerMap[JOIN] = runJoinEffect, _effectRunnerMap[CANCEL] = runCancelEffect, _effectRunnerMap[SELECT] = runSelectEffect, _effectRunnerMap[ACTION_CHANNEL] = runChannelEffect, _effectRunnerMap[CANCELLED$1] = runCancelledEffect, _effectRunnerMap[FLUSH] = runFlushEffect, _effectRunnerMap[GET_CONTEXT] = runGetContextEffect, _effectRunnerMap[SET_CONTEXT] = runSetContextEffect, _effectRunnerMap);

/**
 Used to track a parent task and its forks
 In the fork model, forked tasks are attached by default to their parent
 We model this using the concept of Parent task && main Task
 main task is the main flow of the current Generator, the parent tasks is the
 aggregation of the main tasks + all its forked tasks.
 Thus the whole model represents an execution tree with multiple branches (vs the
 linear execution tree in sequential (non parallel) programming)

 A parent tasks has the following semantics
 - It completes if all its forks either complete or all cancelled
 - If it's cancelled, all forks are cancelled as well
 - It aborts if any uncaught error bubbles up from forks
 - If it completes, the return value is the one returned by the main task
 **/

function forkQueue(mainTask, onAbort, cont) {
  var tasks = [];
  var result;
  var completed = false;
  addTask(mainTask);

  var getTasks = function getTasks() {
    return tasks;
  };

  function abort(err) {
    onAbort();
    cancelAll();
    cont(err, true);
  }

  function addTask(task) {
    tasks.push(task);

    task.cont = function (res, isErr) {
      if (completed) {
        return;
      }

      remove$1(tasks, task);
      task.cont = noop$1;

      if (isErr) {
        abort(res);
      } else {
        if (task === mainTask) {
          result = res;
        }

        if (!tasks.length) {
          completed = true;
          cont(result);
        }
      }
    };
  }

  function cancelAll() {
    if (completed) {
      return;
    }

    completed = true;
    tasks.forEach(function (t) {
      t.cont = noop$1;
      t.cancel();
    });
    tasks = [];
  }

  return {
    addTask: addTask,
    cancelAll: cancelAll,
    abort: abort,
    getTasks: getTasks
  };
}

// there can be only a single saga error created at any given moment

function formatLocation(fileName, lineNumber) {
  return fileName + "?" + lineNumber;
}

function effectLocationAsString(effect) {
  var location = getLocation(effect);

  if (location) {
    var code = location.code,
        fileName = location.fileName,
        lineNumber = location.lineNumber;
    var source = code + "  " + formatLocation(fileName, lineNumber);
    return source;
  }

  return '';
}

function sagaLocationAsString(sagaMeta) {
  var name = sagaMeta.name,
      location = sagaMeta.location;

  if (location) {
    return name + "  " + formatLocation(location.fileName, location.lineNumber);
  }

  return name;
}

function cancelledTasksAsString(sagaStack) {
  var cancelledTasks = flatMap(function (i) {
    return i.cancelledTasks;
  }, sagaStack);

  if (!cancelledTasks.length) {
    return '';
  }

  return ['Tasks cancelled due to error:'].concat(cancelledTasks).join('\n');
}

var crashedEffect = null;
var sagaStack = [];
var addSagaFrame = function addSagaFrame(frame) {
  frame.crashedEffect = crashedEffect;
  sagaStack.push(frame);
};
var clear = function clear() {
  crashedEffect = null;
  sagaStack.length = 0;
}; // this sets crashed effect for the soon-to-be-reported saga frame
// this slightly streatches the singleton nature of this module into wrong direction
// as it's even less obvious what's the data flow here, but it is what it is for now

var setCrashedEffect = function setCrashedEffect(effect) {
  crashedEffect = effect;
};
/**
  @returns {string}

  @example
  The above error occurred in task errorInPutSaga {pathToFile}
  when executing effect put({type: 'REDUCER_ACTION_ERROR_IN_PUT'}) {pathToFile}
      created by fetchSaga {pathToFile}
      created by rootSaga {pathToFile}
*/

var toString = function toString() {
  var firstSaga = sagaStack[0],
      otherSagas = sagaStack.slice(1);
  var crashedEffectLocation = firstSaga.crashedEffect ? effectLocationAsString(firstSaga.crashedEffect) : null;
  var errorMessage = "The above error occurred in task " + sagaLocationAsString(firstSaga.meta) + (crashedEffectLocation ? " \n when executing effect " + crashedEffectLocation : '');
  return [errorMessage].concat(otherSagas.map(function (s) {
    return "    created by " + sagaLocationAsString(s.meta);
  }), [cancelledTasksAsString(sagaStack)]).join('\n');
};

function newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont) {
  var _task;

  if (cont === void 0) {
    cont = noop$1;
  }

  var status = RUNNING$1;
  var taskResult;
  var taskError;
  var deferredEnd = null;
  var cancelledDueToErrorTasks = [];
  var context = Object.create(parentContext);
  var queue = forkQueue(mainTask, function onAbort() {
    cancelledDueToErrorTasks.push.apply(cancelledDueToErrorTasks, queue.getTasks().map(function (t) {
      return t.meta.name;
    }));
  }, end);
  /**
   This may be called by a parent generator to trigger/propagate cancellation
   cancel all pending tasks (including the main task), then end the current task.
    Cancellation propagates down to the whole execution tree held by this Parent task
   It's also propagated to all joiners of this task and their execution tree/joiners
    Cancellation is noop for terminated/Cancelled tasks tasks
   **/

  function cancel() {
    if (status === RUNNING$1) {
      // Setting status to CANCELLED does not necessarily mean that the task/iterators are stopped
      // effects in the iterator's finally block will still be executed
      status = CANCELLED;
      queue.cancelAll(); // Ending with a TASK_CANCEL will propagate the Cancellation to all joiners

      end(TASK_CANCEL, false);
    }
  }

  function end(result, isErr) {
    if (!isErr) {
      // The status here may be RUNNING or CANCELLED
      // If the status is CANCELLED, then we do not need to change it here
      if (result === TASK_CANCEL) {
        status = CANCELLED;
      } else if (status !== CANCELLED) {
        status = DONE;
      }

      taskResult = result;
      deferredEnd && deferredEnd.resolve(result);
    } else {
      status = ABORTED;
      addSagaFrame({
        meta: meta,
        cancelledTasks: cancelledDueToErrorTasks
      });

      if (task.isRoot) {
        var sagaStack = toString(); // we've dumped the saga stack to string and are passing it to user's code
        // we know that it won't be needed anymore and we need to clear it

        clear();
        env.onError(result, {
          sagaStack: sagaStack
        });
      }

      taskError = result;
      deferredEnd && deferredEnd.reject(result);
    }

    task.cont(result, isErr);
    task.joiners.forEach(function (joiner) {
      joiner.cb(result, isErr);
    });
    task.joiners = null;
  }

  function setContext(props) {
    if (process.env.NODE_ENV !== 'production') {
      check(props, object, createSetContextWarning('task', props));
    }

    assignWithSymbols(context, props);
  }

  function toPromise() {
    if (deferredEnd) {
      return deferredEnd.promise;
    }

    deferredEnd = deferred();

    if (status === ABORTED) {
      deferredEnd.reject(taskError);
    } else if (status !== RUNNING$1) {
      deferredEnd.resolve(taskResult);
    }

    return deferredEnd.promise;
  }

  var task = (_task = {}, _task[TASK] = true, _task.id = parentEffectId, _task.meta = meta, _task.isRoot = isRoot, _task.context = context, _task.joiners = [], _task.queue = queue, _task.cancel = cancel, _task.cont = cont, _task.end = end, _task.setContext = setContext, _task.toPromise = toPromise, _task.isRunning = function isRunning() {
    return status === RUNNING$1;
  }, _task.isCancelled = function isCancelled() {
    return status === CANCELLED || status === RUNNING$1 && mainTask.status === CANCELLED;
  }, _task.isAborted = function isAborted() {
    return status === ABORTED;
  }, _task.result = function result() {
    return taskResult;
  }, _task.error = function error() {
    return taskError;
  }, _task);
  return task;
}

function proc(env, iterator$1, parentContext, parentEffectId, meta, isRoot, cont) {
  if (process.env.NODE_ENV !== 'production' && iterator$1[asyncIteratorSymbol]) {
    throw new Error("redux-saga doesn't support async generators, please use only regular ones");
  }

  var finalRunEffect = env.finalizeRunEffect(runEffect);
  /**
    Tracks the current effect cancellation
    Each time the generator progresses. calling runEffect will set a new value
    on it. It allows propagating cancellation to child effects
  **/

  next.cancel = noop$1;
  /** Creates a main task to track the main flow */

  var mainTask = {
    meta: meta,
    cancel: cancelMain,
    status: RUNNING$1
  };
  /**
   Creates a new task descriptor for this generator.
   A task is the aggregation of it's mainTask and all it's forked tasks.
   **/

  var task = newTask(env, mainTask, parentContext, parentEffectId, meta, isRoot, cont);
  var executingContext = {
    task: task,
    digestEffect: digestEffect
  };
  /**
    cancellation of the main task. We'll simply resume the Generator with a TASK_CANCEL
  **/

  function cancelMain() {
    if (mainTask.status === RUNNING$1) {
      mainTask.status = CANCELLED;
      next(TASK_CANCEL);
    }
  }
  /**
    attaches cancellation logic to this task's continuation
    this will permit cancellation to propagate down the call chain
  **/


  if (cont) {
    cont.cancel = task.cancel;
  } // kicks up the generator


  next(); // then return the task descriptor to the caller

  return task;
  /**
   * This is the generator driver
   * It's a recursive async/continuation function which calls itself
   * until the generator terminates or throws
   * @param {internal commands(TASK_CANCEL | TERMINATE) | any} arg - value, generator will be resumed with.
   * @param {boolean} isErr - the flag shows if effect finished with an error
   *
   * receives either (command | effect result, false) or (any thrown thing, true)
   */

  function next(arg, isErr) {
    try {
      var result;

      if (isErr) {
        result = iterator$1.throw(arg); // user handled the error, we can clear bookkept values

        clear();
      } else if (shouldCancel(arg)) {
        /**
          getting TASK_CANCEL automatically cancels the main task
          We can get this value here
           - By cancelling the parent task manually
          - By joining a Cancelled task
        **/
        mainTask.status = CANCELLED;
        /**
          Cancels the current effect; this will propagate the cancellation down to any called tasks
        **/

        next.cancel();
        /**
          If this Generator has a `return` method then invokes it
          This will jump to the finally block
        **/

        result = func(iterator$1.return) ? iterator$1.return(TASK_CANCEL) : {
          done: true,
          value: TASK_CANCEL
        };
      } else if (shouldTerminate(arg)) {
        // We get TERMINATE flag, i.e. by taking from a channel that ended using `take` (and not `takem` used to trap End of channels)
        result = func(iterator$1.return) ? iterator$1.return() : {
          done: true
        };
      } else {
        result = iterator$1.next(arg);
      }

      if (!result.done) {
        digestEffect(result.value, parentEffectId, next);
      } else {
        /**
          This Generator has ended, terminate the main task and notify the fork queue
        **/
        if (mainTask.status !== CANCELLED) {
          mainTask.status = DONE;
        }

        mainTask.cont(result.value);
      }
    } catch (error) {
      if (mainTask.status === CANCELLED) {
        throw error;
      }

      mainTask.status = ABORTED;
      mainTask.cont(error, true);
    }
  }

  function runEffect(effect, effectId, currCb) {
    /**
      each effect runner must attach its own logic of cancellation to the provided callback
      it allows this generator to propagate cancellation downward.
       ATTENTION! effect runners must setup the cancel logic by setting cb.cancel = [cancelMethod]
      And the setup must occur before calling the callback
       This is a sort of inversion of control: called async functions are responsible
      of completing the flow by calling the provided continuation; while caller functions
      are responsible for aborting the current flow by calling the attached cancel function
       Library users can attach their own cancellation logic to promises by defining a
      promise[CANCEL] method in their returned promises
      ATTENTION! calling cancel must have no effect on an already completed or cancelled effect
    **/
    if (promise(effect)) {
      resolvePromise(effect, currCb);
    } else if (iterator(effect)) {
      // resolve iterator
      proc(env, effect, task.context, effectId, meta,
      /* isRoot */
      false, currCb);
    } else if (effect && effect[IO]) {
      var effectRunner = effectRunnerMap[effect.type];
      effectRunner(env, effect.payload, currCb, executingContext);
    } else {
      // anything else returned as is
      currCb(effect);
    }
  }

  function digestEffect(effect, parentEffectId, cb, label) {
    if (label === void 0) {
      label = '';
    }

    var effectId = nextSagaId();
    env.sagaMonitor && env.sagaMonitor.effectTriggered({
      effectId: effectId,
      parentEffectId: parentEffectId,
      label: label,
      effect: effect
    });
    /**
      completion callback and cancel callback are mutually exclusive
      We can't cancel an already completed effect
      And We can't complete an already cancelled effectId
    **/

    var effectSettled; // Completion callback passed to the appropriate effect runner

    function currCb(res, isErr) {
      if (effectSettled) {
        return;
      }

      effectSettled = true;
      cb.cancel = noop$1; // defensive measure

      if (env.sagaMonitor) {
        if (isErr) {
          env.sagaMonitor.effectRejected(effectId, res);
        } else {
          env.sagaMonitor.effectResolved(effectId, res);
        }
      }

      if (isErr) {
        setCrashedEffect(effect);
      }

      cb(res, isErr);
    } // tracks down the current cancel


    currCb.cancel = noop$1; // setup cancellation logic on the parent cb

    cb.cancel = function () {
      // prevents cancelling an already completed effect
      if (effectSettled) {
        return;
      }

      effectSettled = true;
      currCb.cancel(); // propagates cancel downward

      currCb.cancel = noop$1; // defensive measure

      env.sagaMonitor && env.sagaMonitor.effectCancelled(effectId);
    };

    finalRunEffect(effect, effectId, currCb);
  }
}

var RUN_SAGA_SIGNATURE = 'runSaga(options, saga, ...args)';
var NON_GENERATOR_ERR = RUN_SAGA_SIGNATURE + ": saga argument must be a Generator function!";
function runSaga(_ref, saga) {
  var _ref$channel = _ref.channel,
      channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,
      dispatch = _ref.dispatch,
      getState = _ref.getState,
      _ref$context = _ref.context,
      context = _ref$context === void 0 ? {} : _ref$context,
      sagaMonitor = _ref.sagaMonitor,
      effectMiddlewares = _ref.effectMiddlewares,
      _ref$onError = _ref.onError,
      onError = _ref$onError === void 0 ? logError : _ref$onError;

  if (process.env.NODE_ENV !== 'production') {
    check(saga, func, NON_GENERATOR_ERR);
  }

  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
    args[_key - 2] = arguments[_key];
  }

  var iterator$1 = saga.apply(void 0, args);

  if (process.env.NODE_ENV !== 'production') {
    check(iterator$1, iterator, NON_GENERATOR_ERR);
  }

  var effectId = nextSagaId();

  if (sagaMonitor) {
    // monitors are expected to have a certain interface, let's fill-in any missing ones
    sagaMonitor.rootSagaStarted = sagaMonitor.rootSagaStarted || noop$1;
    sagaMonitor.effectTriggered = sagaMonitor.effectTriggered || noop$1;
    sagaMonitor.effectResolved = sagaMonitor.effectResolved || noop$1;
    sagaMonitor.effectRejected = sagaMonitor.effectRejected || noop$1;
    sagaMonitor.effectCancelled = sagaMonitor.effectCancelled || noop$1;
    sagaMonitor.actionDispatched = sagaMonitor.actionDispatched || noop$1;
    sagaMonitor.rootSagaStarted({
      effectId: effectId,
      saga: saga,
      args: args
    });
  }

  if (process.env.NODE_ENV !== 'production') {
    if (notUndef(dispatch)) {
      check(dispatch, func, 'dispatch must be a function');
    }

    if (notUndef(getState)) {
      check(getState, func, 'getState must be a function');
    }

    if (notUndef(effectMiddlewares)) {
      var MIDDLEWARE_TYPE_ERROR = 'effectMiddlewares must be an array of functions';
      check(effectMiddlewares, array$2, MIDDLEWARE_TYPE_ERROR);
      effectMiddlewares.forEach(function (effectMiddleware) {
        return check(effectMiddleware, func, MIDDLEWARE_TYPE_ERROR);
      });
    }

    check(onError, func, 'onError passed to the redux-saga is not a function!');
  }

  var finalizeRunEffect;

  if (effectMiddlewares) {
    var middleware = compose.apply(void 0, effectMiddlewares);

    finalizeRunEffect = function finalizeRunEffect(runEffect) {
      return function (effect, effectId, currCb) {
        var plainRunEffect = function plainRunEffect(eff) {
          return runEffect(eff, effectId, currCb);
        };

        return middleware(plainRunEffect)(effect);
      };
    };
  } else {
    finalizeRunEffect = identity$1;
  }

  var env = {
    channel: channel,
    dispatch: wrapSagaDispatch(dispatch),
    getState: getState,
    sagaMonitor: sagaMonitor,
    onError: onError,
    finalizeRunEffect: finalizeRunEffect
  };
  return immediately(function () {
    var task = proc(env, iterator$1, context, effectId, getMetaInfo(saga),
    /* isRoot */
    true, undefined);

    if (sagaMonitor) {
      sagaMonitor.effectResolved(effectId, task);
    }

    return task;
  });
}

function sagaMiddlewareFactory(_temp) {
  var _ref = _temp === void 0 ? {} : _temp,
      _ref$context = _ref.context,
      context = _ref$context === void 0 ? {} : _ref$context,
      _ref$channel = _ref.channel,
      channel = _ref$channel === void 0 ? stdChannel() : _ref$channel,
      sagaMonitor = _ref.sagaMonitor,
      options = _objectWithoutPropertiesLoose(_ref, ["context", "channel", "sagaMonitor"]);

  var boundRunSaga;

  if (process.env.NODE_ENV !== 'production') {
    check(channel, channel$1, 'options.channel passed to the Saga middleware is not a channel');
  }

  function sagaMiddleware(_ref2) {
    var getState = _ref2.getState,
        dispatch = _ref2.dispatch;
    boundRunSaga = runSaga.bind(null, _extends({}, options, {
      context: context,
      channel: channel,
      dispatch: dispatch,
      getState: getState,
      sagaMonitor: sagaMonitor
    }));
    return function (next) {
      return function (action) {
        if (sagaMonitor && sagaMonitor.actionDispatched) {
          sagaMonitor.actionDispatched(action);
        }

        var result = next(action); // hit reducers

        channel.put(action);
        return result;
      };
    };
  }

  sagaMiddleware.run = function () {
    if (process.env.NODE_ENV !== 'production' && !boundRunSaga) {
      throw new Error('Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware');
    }

    return boundRunSaga.apply(void 0, arguments);
  };

  sagaMiddleware.setContext = function (props) {
    if (process.env.NODE_ENV !== 'production') {
      check(props, object, createSetContextWarning('sagaMiddleware', props));
    }

    assignWithSymbols(context, props);
  };

  return sagaMiddleware;
}

var PreviewType;
(function (PreviewType) {
  PreviewType["Monomer"] = "monomer";
  PreviewType["Preset"] = "preset";
  PreviewType["Bond"] = "bond";
  PreviewType["AmbiguousMonomer"] = "ambiguousMonomer";
})(PreviewType || (PreviewType = {}));
var PresetPosition;
(function (PresetPosition) {
  PresetPosition["Library"] = "library";
  PresetPosition["ChainStart"] = "chainStart";
  PresetPosition["ChainMiddle"] = "chainMiddle";
  PresetPosition["ChainEnd"] = "chainEnd";
})(PresetPosition || (PresetPosition = {}));

var initialState$3 = {
  isReady: null,
  activeTool: 'select',
  editor: undefined,
  editorLayoutMode: undefined,
  preview: {
    type: PreviewType.Monomer,
    monomer: undefined,
    style: {}
  },
  position: undefined
};
var editorSlice = createSlice({
  name: 'editor',
  initialState: initialState$3,
  reducers: {
    init: function init(state) {
      state.isReady = false;
    },
    initSuccess: function initSuccess(state) {
      state.isReady = true;
    },
    initFailure: function initFailure(state) {
      state.isReady = false;
    },
    selectTool: function selectTool(state, action) {
      state.activeTool = action.payload;
    },
    setPosition: function setPosition(state, action) {
      state.position = action.payload;
    },
    createEditor: function createEditor(state, action) {
      state.editor = new CoreEditor({
        theme: action.payload.theme,
        canvas: action.payload.canvas,
        mode: state.editorLayoutMode ? new modesMap[state.editorLayoutMode]() : undefined,
        monomersLibraryUpdate: action.payload.monomersLibraryUpdate
      });
    },
    destroyEditor: function destroyEditor(state) {
      state.editorLayoutMode = state.editor.mode.modeName;
      state.editor.switchToMicromolecules();
      state.editor = undefined;
    },
    showPreview: function showPreview(state, action) {
      state.preview = action.payload || {
        monomer: undefined,
        style: ''
      };
    }
  }
});
var _editorSlice$actions = editorSlice.actions,
  init$1 = _editorSlice$actions.init,
  initSuccess = _editorSlice$actions.initSuccess,
  initFailure = _editorSlice$actions.initFailure,
  selectTool = _editorSlice$actions.selectTool,
  createEditor = _editorSlice$actions.createEditor,
  showPreview = _editorSlice$actions.showPreview,
  destroyEditor = _editorSlice$actions.destroyEditor;
  _editorSlice$actions.setPosition;
var selectShowPreview = function selectShowPreview(state) {
  return state.editor.preview;
};
var selectEditorActiveTool = function selectEditorActiveTool(state) {
  return state.editor.activeTool;
};
var selectEditorPosition = function selectEditorPosition(state) {
  return state.editor.position;
};
var selectEditor = function selectEditor(state) {
  return state.editor.editor;
};
var selectIsSequenceEditInRNABuilderMode = function selectIsSequenceEditInRNABuilderMode(state) {
  var _state$editor$editor;
  return (_state$editor$editor = state.editor.editor) === null || _state$editor$editor === void 0 ? void 0 : _state$editor$editor.isSequenceEditInRNABuilderMode;
};
var selectEditorLayoutMode = function selectEditorLayoutMode(state) {
  return state.editor.editorLayoutMode;
};
var selectIsHandToolSelected = function selectIsHandToolSelected(state) {
  var _state$editor$editor4;
  return (_state$editor$editor4 = state.editor.editor) === null || _state$editor$editor4 === void 0 ? void 0 : _state$editor$editor4.isHandToolSelected;
};
var hasAntisenseChains = function hasAntisenseChains(state) {
  var _state$editor$editor5;
  return (_state$editor$editor5 = state.editor.editor) === null || _state$editor$editor5 === void 0 || (_state$editor$editor5 = _state$editor$editor5.drawingEntitiesManager) === null || _state$editor$editor5 === void 0 ? void 0 : _state$editor$editor5.hasAntisenseChains;
};
var editorReducer = editorSlice.reducer;

var _marked$1 = _regeneratorRuntime.mark(fetchData),
  _marked2 = _regeneratorRuntime.mark(watchFetchData);
var FETCH_DATA = 'editor/fetchData';
var fetchDataCall = function fetchDataCall() {
  return new Promise(function (resolve) {
    setTimeout(function () {
      return resolve('some data');
    }, 1000);
  });
};
function fetchData() {
  return _regeneratorRuntime.wrap(function fetchData$(_context) {
    while (1) switch (_context.prev = _context.next) {
      case 0:
        _context.next = 2;
        return put(init$1(editorSlice));
      case 2:
        _context.prev = 2;
        _context.next = 5;
        return call(fetchDataCall);
      case 5:
        _context.next = 7;
        return put(initSuccess(editorSlice));
      case 7:
        _context.next = 14;
        break;
      case 9:
        _context.prev = 9;
        _context.t0 = _context["catch"](2);
        KetcherLogger.error('editorSaga.ts::fetchData', _context.t0);
        _context.next = 14;
        return put(initFailure(editorSlice));
      case 14:
      case "end":
        return _context.stop();
    }
  }, _marked$1, null, [[2, 9]]);
}
function watchFetchData() {
  return _regeneratorRuntime.wrap(function watchFetchData$(_context2) {
    while (1) switch (_context2.prev = _context2.next) {
      case 0:
        _context2.next = 2;
        return takeEvery$1(FETCH_DATA, fetchData);
      case 2:
      case "end":
        return _context2.stop();
    }
  }, _marked2);
}

var MONOMER_LIBRARY_FAVORITES = 'FAVORITES';
var MONOMER_LIBRARY_PEPTIDES = 'PEPTIDE';
var MONOMER_TYPES = {
  PEPTIDE: 'PEPTIDE',
  CHEM: 'CHEM',
  RNA: 'RNA'
};
var MonomerGroups;
(function (MonomerGroups) {
  MonomerGroups["SUGARS"] = "Sugars";
  MonomerGroups["BASES"] = "Bases";
  MonomerGroups["PHOSPHATES"] = "Phosphates";
  MonomerGroups["PEPTIDES"] = "Amino acids";
  MonomerGroups["NUCLEOTIDES"] = "Nucleotides";
})(MonomerGroups || (MonomerGroups = {}));
var MonomerGroupCodes;
(function (MonomerGroupCodes) {
  MonomerGroupCodes["R"] = "R";
  MonomerGroupCodes["A"] = "A";
  MonomerGroupCodes["C"] = "C";
  MonomerGroupCodes["G"] = "G";
  MonomerGroupCodes["T"] = "T";
  MonomerGroupCodes["U"] = "U";
  MonomerGroupCodes["X"] = "X";
  MonomerGroupCodes["P"] = "P";
})(MonomerGroupCodes || (MonomerGroupCodes = {}));
var MonomerCodeToGroup = {
  R: MonomerGroups.SUGARS,
  A: MonomerGroups.BASES,
  C: MonomerGroups.BASES,
  G: MonomerGroups.BASES,
  T: MonomerGroups.BASES,
  U: MonomerGroups.BASES,
  X: MonomerGroups.BASES,
  P: MonomerGroups.PHOSPHATES
};
var FAVORITE_ITEMS_UNIQUE_KEYS = 'favoriteItemsUniqueKeys';
var CUSTOM_PRESETS = 'ketcher_custom_presets';
var NoNaturalAnalogueGroupCode = 'Z';
var NoNaturalAnalogueGroupTitle = 'No natural analogue';
var DNA_TEMPLATE_NAME_PART = 'thymine';
var RNA_TEMPLATE_NAME_PART = 'uracil';
var LIBRARY_TAB_INDEX = {
  FAVORITES: 0,
  PEPTIDES: 1,
  RNA: 2,
  CHEM: 3
};

var LocalStorageWrapper = function () {
  function LocalStorageWrapper() {
    _classCallCheck(this, LocalStorageWrapper);
    this.localStorage = window.localStorage;
  }
  _createClass(LocalStorageWrapper, [{
    key: "getItem",
    value: function getItem(key) {
      var item = this.localStorage.getItem(key);
      if (!item) {
        return null;
      }
      return JSON.parse(item);
    }
  }, {
    key: "setItem",
    value: function setItem(key, item) {
      this.localStorage.setItem(key, JSON.stringify(item));
    }
  }, {
    key: "removeItem",
    value: function removeItem(key) {
      this.localStorage.removeItem(key);
    }
  }]);
  return LocalStorageWrapper;
}();
var localStorageWrapper = new LocalStorageWrapper();

function ownKeys$j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var LIBRARY_GROUP_NAME_TO_MONOMER_CLASS = _defineProperty(_defineProperty({}, MonomerGroups$1.PEPTIDES, KetMonomerClass.AminoAcid), MonomerGroups$1.BASES, KetMonomerClass.Base);
var initialState$2 = {
  monomers: [],
  favorites: {},
  searchFilter: '',
  selectedTabIndex: LIBRARY_TAB_INDEX.RNA
};
function getMonomerUniqueKey(monomer) {
  var _monomer$props;
  return isAmbiguousMonomerLibraryItem(monomer) ? monomer.id || monomer.label : "".concat(monomer.props.MonomerName, "___").concat((_monomer$props = monomer.props) === null || _monomer$props === void 0 ? void 0 : _monomer$props.Name);
}
function getPresetUniqueKey(preset) {
  var _preset$base, _preset$sugar, _preset$phosphate;
  return "".concat(preset.name, "_").concat(((_preset$base = preset.base) === null || _preset$base === void 0 ? void 0 : _preset$base.label) || '.', "_").concat(((_preset$sugar = preset.sugar) === null || _preset$sugar === void 0 ? void 0 : _preset$sugar.label) || '.', "_").concat(((_preset$phosphate = preset.phosphate) === null || _preset$phosphate === void 0 ? void 0 : _preset$phosphate.label) || '.');
}
var librarySlice = createSlice({
  name: 'library',
  initialState: initialState$2,
  reducers: {
    loadMonomerLibrary: function loadMonomerLibrary(state, action) {
      var clonedMonomers = action.payload.map(function (monomer) {
        return _objectSpread$j(_objectSpread$j({}, monomer), {}, {
          props: _objectSpread$j({}, monomer.props)
        });
      });
      state.monomers = clonedMonomers;
    },
    setFavoriteMonomersFromLocalStorage: function setFavoriteMonomersFromLocalStorage(state) {
      var localFavorites = {};
      var favoritesInLocalStorage = localStorageWrapper.getItem(FAVORITE_ITEMS_UNIQUE_KEYS);
      if (!favoritesInLocalStorage || !Array.isArray(favoritesInLocalStorage)) {
        return;
      }
      state.monomers.forEach(function (monomer) {
        var uniqueKey = getMonomerUniqueKey(monomer);
        var favoriteItem = favoritesInLocalStorage.find(function (key) {
          return key === uniqueKey;
        });
        if (!favoriteItem) {
          return;
        }
        localFavorites[uniqueKey] = _objectSpread$j(_objectSpread$j({}, monomer), {}, {
          favorite: true
        });
      });
      state.favorites = localFavorites;
    },
    clearFavorites: function clearFavorites(state) {
      state.favorites = {};
    },
    toggleMonomerFavorites: function toggleMonomerFavorites(state, action) {
      var key = getMonomerUniqueKey(action.payload);
      var favoriteItemsUniqueKeys = localStorageWrapper.getItem(FAVORITE_ITEMS_UNIQUE_KEYS) || [];
      if (state.favorites[key]) {
        delete state.favorites[key];
        localStorageWrapper.setItem(FAVORITE_ITEMS_UNIQUE_KEYS, favoriteItemsUniqueKeys.filter(function (targetKey) {
          return targetKey !== key;
        }));
      } else {
        state.favorites[key] = _objectSpread$j(_objectSpread$j({}, action.payload), {}, {
          favorite: true
        });
        favoriteItemsUniqueKeys.push(key);
        localStorageWrapper.setItem(FAVORITE_ITEMS_UNIQUE_KEYS, favoriteItemsUniqueKeys);
      }
    },
    setSearchFilter: function setSearchFilter(state, action) {
      state.searchFilter = action.payload;
    },
    setSelectedTabIndex: function setSelectedTabIndex(state, action) {
      state.selectedTabIndex = action.payload;
    }
  }
});
var selectMonomersInCategory = function selectMonomersInCategory(items, category) {
  return items.filter(function (item) {
    var _item$props;
    return !item.isAmbiguous && ((_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.MonomerType) === category;
  });
};
var selectAmbiguousMonomersInCategory = function selectAmbiguousMonomersInCategory(libraryItems, libraryGroupName) {
  var ambiguousMonomerLibraryItems = libraryItems.filter(function (libraryItem) {
    if (!isAmbiguousMonomerLibraryItem(libraryItem)) {
      return false;
    }
    var ambiguousMonomer = new AmbiguousMonomer(libraryItem, undefined, false);
    return LIBRARY_GROUP_NAME_TO_MONOMER_CLASS[libraryGroupName] === ambiguousMonomer.monomerClass;
  });
  if (ambiguousMonomerLibraryItems.length === 0) {
    return [];
  }
  var groupedAmbiguousMonomerLibraryItems = [];
  if (libraryGroupName === MonomerGroups$1.BASES) {
    groupedAmbiguousMonomerLibraryItems = [{
      groupTitle: 'Ambiguous DNA Bases',
      groupItems: ambiguousMonomerLibraryItems.filter(function (libraryItem) {
        return isAmbiguousMonomerLibraryItem(libraryItem) && libraryItem.options.find(function (option) {
          return option.templateId.toLowerCase().includes(DNA_TEMPLATE_NAME_PART);
        });
      })
    }, {
      groupTitle: 'Ambiguous RNA Bases',
      groupItems: ambiguousMonomerLibraryItems.filter(function (libraryItem) {
        return isAmbiguousMonomerLibraryItem(libraryItem) && libraryItem.options.find(function (option) {
          return option.templateId.toLowerCase().includes(RNA_TEMPLATE_NAME_PART);
        });
      })
    }, {
      groupTitle: 'Ambiguous Bases',
      groupItems: ambiguousMonomerLibraryItems.filter(function (libraryItem) {
        return isAmbiguousMonomerLibraryItem(libraryItem) && libraryItem.options.every(function (option) {
          return !option.templateId.toLowerCase().includes(DNA_TEMPLATE_NAME_PART) && !option.templateId.toLowerCase().includes(RNA_TEMPLATE_NAME_PART);
        });
      })
    }];
  } else {
    groupedAmbiguousMonomerLibraryItems.push({
      groupTitle: "Ambiguous ".concat(libraryGroupName),
      groupItems: ambiguousMonomerLibraryItems
    });
  }
  var firstAmbiguousMonomersInLibrary = ['X', 'N'];
  groupedAmbiguousMonomerLibraryItems.forEach(function (group) {
    group.groupItems.sort(function (ambiguousMonomerLibraryItem, ambiguousMonomerLibraryItemToCompare) {
      return ambiguousMonomerLibraryItem.label.localeCompare(ambiguousMonomerLibraryItemToCompare.label);
    });
    group.groupItems.sort(function (ambiguousMonomerLibraryItem) {
      return firstAmbiguousMonomersInLibrary.includes(ambiguousMonomerLibraryItem.label) ? -1 : 1;
    });
  });
  return groupedAmbiguousMonomerLibraryItems;
};
var selectUnsplitNucleotides = function selectUnsplitNucleotides(items) {
  return items.filter(function (item) {
    var _item$props2, _item$props3;
    return !item.isAmbiguous && (((_item$props2 = item.props) === null || _item$props2 === void 0 ? void 0 : _item$props2.MonomerClass) === KetMonomerClass.RNA || ((_item$props3 = item.props) === null || _item$props3 === void 0 ? void 0 : _item$props3.MonomerClass) === KetMonomerClass.DNA);
  });
};
var selectMonomersInFavorites = function selectMonomersInFavorites(items) {
  return items.filter(function (item) {
    return item.favorite && !item.isAmbiguous;
  });
};
var selectAmbiguousMonomersInFavorites = function selectAmbiguousMonomersInFavorites(items) {
  var favoritesAmbiguousMonomers = [];
  for (var groupName in MonomerGroups$1) {
    var ambiguousMonomers = selectAmbiguousMonomersInCategory(items, MonomerGroups$1[groupName]);
    favoritesAmbiguousMonomers = [].concat(_toConsumableArray(favoritesAmbiguousMonomers), _toConsumableArray(ambiguousMonomers));
  }
  favoritesAmbiguousMonomers.forEach(function (group) {
    group.groupItems = group.groupItems.filter(function (item) {
      return item.favorite;
    });
  });
  return favoritesAmbiguousMonomers.filter(function (group) {
    return group.groupItems.length;
  });
};
var selectFilteredMonomers = createSelector(function (state) {
  return state.library;
}, function (state) {
  var searchFilter = state.searchFilter,
    monomers = state.monomers,
    favorites = state.favorites;
  var normalizedSearchFilter = searchFilter.toLowerCase();
  var checkMonomerMatch = function checkMonomerMatch() {
    var _idtAliases$base;
    var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
    var fullName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
    var idtAliases = arguments.length > 2 ? arguments[2] : undefined;
    var searchFilter = arguments.length > 3 ? arguments[3] : undefined;
    var monomerName = name.toLowerCase();
    var monomerNameFull = fullName.toLowerCase();
    var idtBase = idtAliases === null || idtAliases === void 0 || (_idtAliases$base = idtAliases.base) === null || _idtAliases$base === void 0 ? void 0 : _idtAliases$base.toLowerCase();
    var idtModifications = idtAliases !== null && idtAliases !== void 0 && idtAliases.modifications ? Object.values(idtAliases.modifications).map(function (mod) {
      return mod.toLowerCase();
    }).join(' ') : '';
    if (searchFilter === '/') {
      return Boolean(idtBase || idtModifications);
    }
    if (searchFilter.includes('/')) {
      var parts = searchFilter.split('/');
      if (parts.length > 3 || parts.length === 3 && parts[2] !== '') {
        return false;
      }
      if (parts.length === 3 && parts[1] !== '') {
        var textBetweenSlashes = parts[1];
        var _matchesIdtBase = idtBase && idtBase.length === textBetweenSlashes.length && Array.from(idtBase).every(function (_char, index) {
          return _char === textBetweenSlashes[index];
        });
        var _matchesIdtModifications = idtModifications ? idtModifications.split(' ').some(function (mod) {
          return mod.length === textBetweenSlashes.length && Array.from(mod).every(function (_char2, index) {
            return _char2 === textBetweenSlashes[index];
          });
        }) : false;
        return _matchesIdtBase || _matchesIdtModifications;
      }
      var searchBeforeSlash = parts[0];
      var searchAfterSlash = parts[1];
      if (searchFilter.startsWith('/') && searchFilter.length > 1) {
        var aliasRest = searchFilter.slice(1);
        return idtBase && idtBase.startsWith(aliasRest) || idtModifications && idtModifications.split(' ').some(function (mod) {
          return mod.startsWith(aliasRest);
        });
      }
      if (searchFilter.endsWith('/') && searchFilter.length > 1) {
        var _aliasRest = searchFilter.slice(0, -1);
        var aliasLastSymbol = searchFilter[searchFilter.length - 2];
        return idtBase && idtBase.endsWith(_aliasRest) && idtBase[idtBase.length - 1] === aliasLastSymbol || idtModifications && idtModifications.split(' ').some(function (mod) {
          return mod.endsWith(_aliasRest) && mod[mod.length - 1] === aliasLastSymbol;
        });
      }
      var _matchesIdtBase2 = idtBase && idtBase.startsWith(searchAfterSlash) && idtBase.endsWith(searchBeforeSlash);
      var _matchesIdtModifications2 = idtModifications ? idtModifications.split(' ').some(function (mod) {
        return mod.startsWith(searchAfterSlash) && mod.endsWith(searchBeforeSlash);
      }) : false;
      return _matchesIdtBase2 || _matchesIdtModifications2;
    }
    var matchesIdtBase = idtBase ? idtBase.includes(searchFilter) : false;
    var matchesIdtModifications = idtModifications ? idtModifications.includes(searchFilter) : false;
    var cond = monomerName.includes(searchFilter) || monomerNameFull.includes(searchFilter) || matchesIdtBase || matchesIdtModifications;
    return cond;
  };
  return monomers.filter(function (item) {
    if (item.isAmbiguous) {
      var label = item.label,
        id = item.id,
        idtAliases = item.idtAliases,
        components = item.monomers;
      var matchesMonomer = checkMonomerMatch(label, id, idtAliases, normalizedSearchFilter);
      return matchesMonomer || components.some(function (monomer) {
        var _monomer$monomerItem$ = monomer.monomerItem.props,
          Name = _monomer$monomerItem$.Name,
          MonomerName = _monomer$monomerItem$.MonomerName,
          idtAliases = _monomer$monomerItem$.idtAliases;
        return checkMonomerMatch(Name, MonomerName, idtAliases, normalizedSearchFilter);
      });
    } else {
      var _item$props4 = item.props,
        Name = _item$props4.Name,
        MonomerName = _item$props4.MonomerName,
        _idtAliases = _item$props4.idtAliases;
      return checkMonomerMatch(Name, MonomerName, _idtAliases, normalizedSearchFilter);
    }
  }).map(function (item) {
    return _objectSpread$j(_objectSpread$j({}, item), {}, {
      favorite: !!favorites[getMonomerUniqueKey(item)]
    });
  });
});
var selectMonomerGroups = function selectMonomerGroups(monomers) {
  var preparedData = monomers.reduce(function (result, monomerItem) {
    var code = monomerItem.props.MonomerNaturalAnalogCode || NoNaturalAnalogueGroupCode;
    if (!result[code]) {
      result[code] = [];
    }
    result[code].push(_objectSpread$j(_objectSpread$j({}, monomerItem), {}, {
      label: monomerItem.props.MonomerName
    }));
    return result;
  }, {});
  var sortedPreparedData = Object.entries(preparedData).reduce(function (result, _ref) {
    var _ref2 = _slicedToArray(_ref, 2),
      code = _ref2[0],
      monomers = _ref2[1];
    var sortedMonomers = monomers.sort(function (a, b) {
      return a.label.localeCompare(b.label);
    });
    var baseIndex = sortedMonomers.findIndex(function (monomer) {
      return monomer.label === code;
    });
    if (baseIndex !== -1) {
      var base = sortedMonomers.splice(baseIndex, 1);
      sortedMonomers.unshift(base[0]);
    }
    result[code] = sortedMonomers;
    return result;
  }, {});
  var preparedGroups = [];
  return Object.keys(sortedPreparedData).sort(function (a, b) {
    return a.localeCompare(b);
  }).reduce(function (result, code) {
    var group = {
      groupTitle: code === NoNaturalAnalogueGroupCode ? NoNaturalAnalogueGroupTitle : code,
      groupItems: []
    };
    sortedPreparedData[code].forEach(function (item) {
      group.groupItems.push(_objectSpread$j(_objectSpread$j({}, item), {}, {
        props: _objectSpread$j({}, item.props)
      }));
    });
    if (group.groupItems.length) {
      result.push(group);
    }
    return result;
  }, preparedGroups);
};
var selectCurrentTabIndex = function selectCurrentTabIndex(state) {
  return state.library.selectedTabIndex;
};
var _librarySlice$actions = librarySlice.actions,
  loadMonomerLibrary = _librarySlice$actions.loadMonomerLibrary,
  setFavoriteMonomersFromLocalStorage = _librarySlice$actions.setFavoriteMonomersFromLocalStorage;
  _librarySlice$actions.clearFavorites;
  var toggleMonomerFavorites = _librarySlice$actions.toggleMonomerFavorites,
  setSearchFilter = _librarySlice$actions.setSearchFilter,
  setSelectedTabIndex = _librarySlice$actions.setSelectedTabIndex;
var libraryReducer = librarySlice.reducer;

var _marked = _regeneratorRuntime.mark(rootSaga);
function rootSaga() {
  return _regeneratorRuntime.wrap(function rootSaga$(_context) {
    while (1) switch (_context.prev = _context.next) {
      case 0:
        _context.next = 2;
        return spawn(watchFetchData);
      case 2:
      case "end":
        return _context.stop();
    }
  }, _marked);
}

var initialState$1 = {
  name: null,
  isOpen: false,
  additionalProps: null,
  errorTooltipText: '',
  errorModalText: '',
  errorModalTitle: ''
};
var modalSlice = createSlice({
  name: 'modal',
  initialState: initialState$1,
  reducers: {
    openModal: function openModal(state, action) {
      if (typeof action.payload === 'string') {
        state.name = action.payload;
      } else {
        state.name = action.payload.name;
        state.additionalProps = action.payload.additionalProps;
      }
      state.isOpen = true;
    },
    closeModal: function closeModal(state) {
      state.name = null;
      state.isOpen = false;
      state.additionalProps = null;
    },
    openErrorTooltip: function openErrorTooltip(state, action) {
      state.errorTooltipText = action.payload;
    },
    closeErrorTooltip: function closeErrorTooltip(state) {
      state.errorTooltipText = '';
    },
    openErrorModal: function openErrorModal(state, action) {
      if (typeof action.payload === 'string') {
        state.errorModalText = action.payload;
      } else {
        var _action$payload = action.payload,
          errorMessage = _action$payload.errorMessage,
          errorTitle = _action$payload.errorTitle;
        state.errorModalText = errorMessage;
        state.errorModalTitle = errorTitle;
      }
    },
    closeErrorModal: function closeErrorModal(state) {
      state.errorModalText = '';
    }
  }
});
var _modalSlice$actions = modalSlice.actions,
  openModal = _modalSlice$actions.openModal,
  closeModal = _modalSlice$actions.closeModal,
  openErrorTooltip = _modalSlice$actions.openErrorTooltip,
  closeErrorTooltip = _modalSlice$actions.closeErrorTooltip,
  openErrorModal = _modalSlice$actions.openErrorModal,
  closeErrorModal = _modalSlice$actions.closeErrorModal;
var selectModalName = function selectModalName(state) {
  return state.modal.name;
};
var selectModalIsOpen = function selectModalIsOpen(state) {
  return state.modal.isOpen;
};
var selectAdditionalProps = function selectAdditionalProps(state) {
  return state.modal.additionalProps;
};
var selectErrorTooltipText = function selectErrorTooltipText(state) {
  return state.modal.errorTooltipText;
};
var selectErrorModalText = function selectErrorModalText(state) {
  return state.modal.errorModalText;
};
var selectErrorModalTitle = function selectErrorModalTitle(state) {
  return state.modal.errorModalTitle;
};
var modalReducer = modalSlice.reducer;

function ownKeys$i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$i(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var getCachedCustomRnaPresets = function getCachedCustomRnaPresets() {
  return localStorageWrapper.getItem(CUSTOM_PRESETS);
};
var getPresetIndexInList = function getPresetIndexInList(name) {
  var _presets$findIndex;
  var presets = getCachedCustomRnaPresets();
  return (_presets$findIndex = presets === null || presets === void 0 ? void 0 : presets.findIndex(function (cachedPreset) {
    return cachedPreset.name === name;
  })) !== null && _presets$findIndex !== void 0 ? _presets$findIndex : -1;
};
var setCachedCustomRnaPreset = function setCachedCustomRnaPreset(preset) {
  var presetToSet = _objectSpread$i({}, preset);
  var cachedPresets = getCachedCustomRnaPresets() || [];
  var presetIndexInCachedList = getPresetIndexInList(presetToSet.nameInList);
  presetToSet.nameInList = presetToSet.name;
  if (presetIndexInCachedList > -1) {
    cachedPresets.splice(presetIndexInCachedList, 1, presetToSet);
    localStorageWrapper.setItem(CUSTOM_PRESETS, cachedPresets);
  } else {
    localStorageWrapper.setItem(CUSTOM_PRESETS, [].concat(_toConsumableArray(cachedPresets), [presetToSet]));
  }
};
var deleteCachedCustomRnaPreset = function deleteCachedCustomRnaPreset(presetName) {
  if (!presetName) return;
  var cachedPresets = getCachedCustomRnaPresets();
  var presetIndexInCachedList = getPresetIndexInList(presetName);
  if (cachedPresets) {
    cachedPresets.splice(presetIndexInCachedList, 1);
    if (cachedPresets.length) localStorageWrapper.setItem(CUSTOM_PRESETS, cachedPresets);else localStorageWrapper.removeItem(CUSTOM_PRESETS);
  }
};
var toggleCachedCustomRnaPresetFavorites = function toggleCachedCustomRnaPresetFavorites(presetName) {
  if (!presetName) return;
  var cachedPresets = getCachedCustomRnaPresets();
  var presetIndexInCachedList = getPresetIndexInList(presetName);
  if (cachedPresets && presetIndexInCachedList > -1) {
    cachedPresets[presetIndexInCachedList].favorite = !cachedPresets[presetIndexInCachedList].favorite;
    localStorageWrapper.setItem(CUSTOM_PRESETS, cachedPresets);
  }
};

var transformRnaPresetToRnaLabeledPreset = function transformRnaPresetToRnaLabeledPreset(rnaPreset) {
  var fieldsToLabel = ['sugar', 'base', 'phosphate'];
  var rnaLabeledPreset = omit(rnaPreset, fieldsToLabel);
  rnaLabeledPreset.templates = [];
  for (var _i = 0, _fieldsToLabel = fieldsToLabel; _i < _fieldsToLabel.length; _i++) {
    var _monomerLibraryItem$p;
    var monomerName = _fieldsToLabel[_i];
    var monomerLibraryItem = rnaPreset[monomerName];
    var templateId = (monomerLibraryItem === null || monomerLibraryItem === void 0 || (_monomerLibraryItem$p = monomerLibraryItem.props) === null || _monomerLibraryItem$p === void 0 ? void 0 : _monomerLibraryItem$p.id) || (monomerLibraryItem === null || monomerLibraryItem === void 0 ? void 0 : monomerLibraryItem.id);
    if (!templateId) continue;
    rnaLabeledPreset.templates.push({
      $ref: monomerLibraryItem.isAmbiguous ? setAmbiguousMonomerTemplatePrefix(templateId) : setMonomerTemplatePrefix(templateId)
    });
  }
  return rnaLabeledPreset;
};

var getValidations = function getValidations(newPreset, isEditMode) {
  var _newPreset$sugar, _newPreset$sugar2;
  var sugarValidations = [];
  var phosphateValidations = [];
  var baseValidations = [];
  if (!isEditMode || !(newPreset !== null && newPreset !== void 0 && newPreset.sugar) && !(newPreset !== null && newPreset !== void 0 && newPreset.phosphate) && !(newPreset !== null && newPreset !== void 0 && newPreset.base)) {
    return {
      sugarValidations: sugarValidations,
      phosphateValidations: phosphateValidations,
      baseValidations: baseValidations
    };
  }
  if (newPreset !== null && newPreset !== void 0 && newPreset.phosphate) {
    sugarValidations.push('R2');
  }
  if (newPreset !== null && newPreset !== void 0 && newPreset.base) {
    sugarValidations.push('R3');
  }
  baseValidations.push('R1');
  if (newPreset !== null && newPreset !== void 0 && (_newPreset$sugar = newPreset.sugar) !== null && _newPreset$sugar !== void 0 && (_newPreset$sugar = _newPreset$sugar.props) !== null && _newPreset$sugar !== void 0 && _newPreset$sugar.MonomerCaps && !('R3' in newPreset.sugar.props.MonomerCaps)) {
    baseValidations.push('DISABLED');
  }
  phosphateValidations.push('R1');
  if (newPreset !== null && newPreset !== void 0 && (_newPreset$sugar2 = newPreset.sugar) !== null && _newPreset$sugar2 !== void 0 && (_newPreset$sugar2 = _newPreset$sugar2.props) !== null && _newPreset$sugar2 !== void 0 && _newPreset$sugar2.MonomerCaps && !('R2' in newPreset.sugar.props.MonomerCaps)) {
    phosphateValidations.push('DISABLED');
  }
  return {
    sugarValidations: sugarValidations,
    phosphateValidations: phosphateValidations,
    baseValidations: baseValidations
  };
};

function ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var RnaBuilderPresetsItem;
(function (RnaBuilderPresetsItem) {
  RnaBuilderPresetsItem["Presets"] = "Presets";
})(RnaBuilderPresetsItem || (RnaBuilderPresetsItem = {}));
var initialState = {
  activePreset: null,
  sequenceSelection: undefined,
  sequenceSelectionName: undefined,
  isSequenceFirstsOnlyNucleoelementsSelected: undefined,
  activePresetMonomerGroup: null,
  groupItemValidations: _defineProperty(_defineProperty(_defineProperty({}, MonomerGroups.BASES, []), MonomerGroups.SUGARS, []), MonomerGroups.PHOSPHATES, []),
  presetsDefault: [],
  presetsCustom: [],
  activeRnaBuilderItem: null,
  isEditMode: false,
  uniqueNameError: '',
  invalidPresetError: '',
  activePresetForContextMenu: null
};
var monomerGroupToPresetGroup = _defineProperty(_defineProperty(_defineProperty({}, MonomerGroups.BASES, 'base'), MonomerGroups.SUGARS, 'sugar'), MonomerGroups.PHOSPHATES, 'phosphate');
var rnaBuilderSlice = createSlice({
  name: 'rna-builder',
  initialState: initialState,
  reducers: {
    createNewPreset: function createNewPreset(state) {
      state.activePreset = {
        base: undefined,
        sugar: undefined,
        phosphate: undefined,
        name: '',
        nameInList: ''
      };
    },
    setActivePreset: function setActivePreset(state, action) {
      state.activePreset = _objectSpread$h(_objectSpread$h({}, action.payload), {}, {
        nameInList: action.payload.name
      });
    },
    setSequenceSelection: function setSequenceSelection(state, action) {
      state.sequenceSelection = _toConsumableArray(action.payload);
    },
    setSequenceSelectionName: function setSequenceSelectionName(state, action) {
      state.sequenceSelectionName = action.payload;
    },
    setIsSequenceFirstsOnlyNucleoelementsSelected: function setIsSequenceFirstsOnlyNucleoelementsSelected(state, action) {
      state.isSequenceFirstsOnlyNucleoelementsSelected = action.payload;
    },
    setActivePresetForContextMenu: function setActivePresetForContextMenu(state, action) {
      state.activePresetForContextMenu = action.payload;
    },
    setActivePresetName: function setActivePresetName(state, action) {
      state.activePreset.name = action.payload;
    },
    setActiveRnaBuilderItem: function setActiveRnaBuilderItem(state, action) {
      state.activeRnaBuilderItem = action.payload;
    },
    recalculateRnaBuilderValidations: function recalculateRnaBuilderValidations(state, action) {
      var _getValidations = getValidations(action.payload.rnaPreset, action.payload.isEditMode),
        sugarValidations = _getValidations.sugarValidations,
        phosphateValidations = _getValidations.phosphateValidations,
        baseValidations = _getValidations.baseValidations;
      state.groupItemValidations[MonomerGroups.SUGARS] = sugarValidations;
      state.groupItemValidations[MonomerGroups.BASES] = baseValidations;
      state.groupItemValidations[MonomerGroups.PHOSPHATES] = phosphateValidations;
    },
    setActivePresetMonomerGroup: function setActivePresetMonomerGroup(state, action) {
      state.activePresetMonomerGroup = action.payload;
    },
    savePreset: function savePreset(state, action) {
      var preset = action.payload;
      var newPreset = _objectSpread$h({}, preset);
      setCachedCustomRnaPreset(transformRnaPresetToRnaLabeledPreset(newPreset));
      if (newPreset.nameInList) {
        var presetIndexInList = state.presetsCustom.findIndex(function (presetInList) {
          return presetInList.name === newPreset.nameInList;
        });
        newPreset.nameInList = newPreset.name;
        presetIndexInList === -1 ? state.presetsCustom.push(newPreset) : state.presetsCustom.splice(presetIndexInList, 1, newPreset);
      } else {
        state.presetsCustom.push(newPreset);
      }
      if (!state.activePreset) return;
      state.activePreset.nameInList = newPreset.name;
    },
    deletePreset: function deletePreset(state, action) {
      var preset = action.payload;
      deleteCachedCustomRnaPreset(preset.name);
      var presetIndexInList = state.presetsCustom.findIndex(function (presetInList) {
        return presetInList.name === preset.name;
      });
      state.presetsCustom.splice(presetIndexInList, 1);
      if (preset.nameInList) {
        state.activePreset = null;
      }
    },
    setIsEditMode: function setIsEditMode(state, action) {
      state.isEditMode = action.payload;
    },
    setUniqueNameError: function setUniqueNameError(state, action) {
      state.uniqueNameError = action.payload;
    },
    setInvalidPresetError: function setInvalidPresetError(state, action) {
      state.invalidPresetError = action.payload;
    },
    setDefaultPresets: function setDefaultPresets(state, action) {
      var defaultNucleotide = action.payload[0];
      if (!defaultNucleotide) {
        return;
      }
      var presetExists = state.presetsDefault.find(function (item) {
        return item.name === defaultNucleotide.name;
      });
      if (presetExists) {
        return;
      }
      state.presetsDefault = action.payload;
    },
    setCustomPresets: function setCustomPresets(state, action) {
      state.presetsCustom = action.payload;
    },
    setFavoritePresetsFromLocalStorage: function setFavoritePresetsFromLocalStorage(state) {
      var favoritesInLocalStorage = localStorageWrapper.getItem(FAVORITE_ITEMS_UNIQUE_KEYS);
      if (!favoritesInLocalStorage || !Array.isArray(favoritesInLocalStorage)) {
        return;
      }
      state.presetsDefault = state.presetsDefault.map(function (preset) {
        var uniqueKey = "".concat(preset.name, "_").concat(MONOMER_CONST.RNA);
        var favoriteItem = favoritesInLocalStorage.find(function (key) {
          return key === uniqueKey;
        });
        if (favoriteItem) {
          return _objectSpread$h(_objectSpread$h({}, preset), {}, {
            favorite: true
          });
        }
        return preset;
      });
    },
    clearFavorites: function clearFavorites(state) {
      state.presetsDefault = [];
    },
    togglePresetFavorites: function togglePresetFavorites(state, action) {
      var presetIndex = state.presetsDefault.findIndex(function (presetInList) {
        return presetInList.name === action.payload.name;
      });
      var presetCustomIndex = state.presetsCustom.findIndex(function (presetInList) {
        return presetInList.name === action.payload.name;
      });
      if (presetIndex >= 0) {
        var favorite = state.presetsDefault[presetIndex].favorite;
        state.presetsDefault[presetIndex].favorite = !favorite;
      } else if (presetCustomIndex >= 0) {
        toggleCachedCustomRnaPresetFavorites(state.presetsCustom[presetCustomIndex].name);
        var _favorite = state.presetsCustom[presetCustomIndex].favorite;
        state.presetsCustom[presetCustomIndex].favorite = !_favorite;
        return;
      }
      var uniquePresetKey = "".concat(action.payload.name, "_").concat(MONOMER_CONST.RNA);
      var favoriteItemsUniqueKeys = localStorageWrapper.getItem(FAVORITE_ITEMS_UNIQUE_KEYS) || [];
      var isKeyAlreadyExisted = favoriteItemsUniqueKeys.some(function (targetKey) {
        return targetKey === uniquePresetKey;
      });
      if (isKeyAlreadyExisted) {
        localStorageWrapper.setItem(FAVORITE_ITEMS_UNIQUE_KEYS, favoriteItemsUniqueKeys.filter(function (targetKey) {
          return targetKey !== uniquePresetKey;
        }));
      } else {
        favoriteItemsUniqueKeys.push(uniquePresetKey);
        localStorageWrapper.setItem(FAVORITE_ITEMS_UNIQUE_KEYS, favoriteItemsUniqueKeys);
      }
    }
  }
});
var selectActiveRnaBuilderItem = function selectActiveRnaBuilderItem(state) {
  return state.rnaBuilder.activeRnaBuilderItem;
};
var selectGroupItemValidations = function selectGroupItemValidations(state) {
  return state.rnaBuilder.groupItemValidations;
};
var selectActivePreset = function selectActivePreset(state) {
  return state.rnaBuilder.activePreset;
};
var selectSequenceSelection = function selectSequenceSelection(state) {
  return state.rnaBuilder.sequenceSelection;
};
var selectSequenceSelectionName = function selectSequenceSelectionName(state) {
  return state.rnaBuilder.sequenceSelectionName;
};
var selectIsSequenceFirstsOnlyNucleotidesSelected = function selectIsSequenceFirstsOnlyNucleotidesSelected(state) {
  return state.rnaBuilder.isSequenceFirstsOnlyNucleoelementsSelected;
};
var selectCurrentMonomerGroup = function selectCurrentMonomerGroup(preset, groupName) {
  if (!monomerGroupToPresetGroup[groupName] || !preset) return;
  return preset[monomerGroupToPresetGroup[groupName]];
};
var selectActivePresetMonomerGroup = function selectActivePresetMonomerGroup(state) {
  return state.rnaBuilder.activePresetMonomerGroup;
};
var selectIsPresetReadyToSave = function selectIsPresetReadyToSave(preset) {
  return Boolean(preset.name && preset.sugar && (preset.base || preset.phosphate));
};
var selectIsEditMode = function selectIsEditMode(state) {
  return state.rnaBuilder.isEditMode;
};
var selectPresetFullName = function selectPresetFullName(preset) {
  var _preset$sugar, _preset$sugar2, _preset$base, _preset$base2, _preset$phosphate, _preset$phosphate2;
  if (!preset) return '';
  var sugar = ((_preset$sugar = preset.sugar) === null || _preset$sugar === void 0 ? void 0 : _preset$sugar.label) || ((_preset$sugar2 = preset.sugar) === null || _preset$sugar2 === void 0 ? void 0 : _preset$sugar2.props.MonomerName) || '';
  var base = ((_preset$base = preset.base) === null || _preset$base === void 0 ? void 0 : _preset$base.label) || ((_preset$base2 = preset.base) === null || _preset$base2 === void 0 ? void 0 : _preset$base2.props.MonomerName) || '';
  var phosphate = ((_preset$phosphate = preset.phosphate) === null || _preset$phosphate === void 0 ? void 0 : _preset$phosphate.label) || ((_preset$phosphate2 = preset.phosphate) === null || _preset$phosphate2 === void 0 ? void 0 : _preset$phosphate2.props.MonomerName) || '';
  var fullName = sugar;
  if (sugar && phosphate) {
    fullName += "(".concat(base, ")");
  } else if ((sugar || phosphate) && base) {
    fullName += "(".concat(base, ")");
  } else {
    fullName += base;
  }
  fullName += phosphate;
  return fullName;
};
var selectUniqueNameError = function selectUniqueNameError(state) {
  return state.rnaBuilder.uniqueNameError;
};
var selectInvalidPresetError = function selectInvalidPresetError(state) {
  return state.rnaBuilder.invalidPresetError;
};
var selectIsActivePresetNewAndEmpty = function selectIsActivePresetNewAndEmpty(state) {
  var activePreset = state.rnaBuilder.activePreset;
  return activePreset && !activePreset.nameInList && !activePreset.name && !activePreset.sugar && !activePreset.base && !activePreset.phosphate;
};
var selectActivePresetForContextMenu = function selectActivePresetForContextMenu(state) {
  return state.rnaBuilder.activePresetForContextMenu;
};
var selectPresetsInFavorites = function selectPresetsInFavorites(items) {
  return items.filter(function (item) {
    return item.favorite;
  });
};
var selectAllPresets = function selectAllPresets(state) {
  var _state$rnaBuilder = state.rnaBuilder,
    _state$rnaBuilder$pre = _state$rnaBuilder.presetsDefault,
    presetsDefault = _state$rnaBuilder$pre === void 0 ? [] : _state$rnaBuilder$pre,
    _state$rnaBuilder$pre2 = _state$rnaBuilder.presetsCustom,
    presetsCustom = _state$rnaBuilder$pre2 === void 0 ? [] : _state$rnaBuilder$pre2;
  return [].concat(_toConsumableArray(presetsDefault), _toConsumableArray(presetsCustom));
};
var selectFilteredPresets = function selectFilteredPresets(state) {
  var _selectEditorPosition;
  var searchFilter = state.library.searchFilter;
  var presetsAll = selectAllPresets(state);
  var position = (_selectEditorPosition = selectEditorPosition(state)) !== null && _selectEditorPosition !== void 0 ? _selectEditorPosition : PresetPosition$1.Library;
  var searchText = searchFilter.toLowerCase();
  return presetsAll.filter(function (item) {
    var _item$name, _item$sugar, _item$phosphate, _item$base, _item$idtAliases, _item$idtAliases2, _item$name2, _transformedIdtText3;
    var name = (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.toLowerCase();
    var sugarName = (_item$sugar = item.sugar) === null || _item$sugar === void 0 || (_item$sugar = _item$sugar.label) === null || _item$sugar === void 0 ? void 0 : _item$sugar.toLowerCase();
    var phosphateName = (_item$phosphate = item.phosphate) === null || _item$phosphate === void 0 || (_item$phosphate = _item$phosphate.label) === null || _item$phosphate === void 0 ? void 0 : _item$phosphate.toLowerCase();
    var baseName = (_item$base = item.base) === null || _item$base === void 0 || (_item$base = _item$base.label) === null || _item$base === void 0 ? void 0 : _item$base.toLowerCase();
    var idtName = (_item$idtAliases = item.idtAliases) === null || _item$idtAliases === void 0 || (_item$idtAliases = _item$idtAliases.base) === null || _item$idtAliases === void 0 ? void 0 : _item$idtAliases.toLowerCase();
    var modifications = (_item$idtAliases2 = item.idtAliases) === null || _item$idtAliases2 === void 0 ? void 0 : _item$idtAliases2.modifications;
    var transformedIdtText = idtName;
    if ((_item$name2 = item.name) !== null && _item$name2 !== void 0 && _item$name2.includes('MOE') && idtName) {
      var _modifications$endpoi, _modifications$intern, _modifications$endpoi2;
      var base = idtName;
      var endpoint5 = (_modifications$endpoi = modifications === null || modifications === void 0 ? void 0 : modifications.endpoint5) !== null && _modifications$endpoi !== void 0 ? _modifications$endpoi : "5".concat(base);
      var internal = (_modifications$intern = modifications === null || modifications === void 0 ? void 0 : modifications.internal) !== null && _modifications$intern !== void 0 ? _modifications$intern : "i".concat(base);
      var endpoint3 = (_modifications$endpoi2 = modifications === null || modifications === void 0 ? void 0 : modifications.endpoint3) !== null && _modifications$endpoi2 !== void 0 ? _modifications$endpoi2 : "3".concat(base);
      switch (position) {
        case PresetPosition$1.Library:
          transformedIdtText = "".concat(endpoint5, ", ").concat(internal);
          break;
        case PresetPosition$1.ChainStart:
          transformedIdtText = endpoint5;
          break;
        case PresetPosition$1.ChainMiddle:
          transformedIdtText = internal;
          break;
        case PresetPosition$1.ChainEnd:
          transformedIdtText = endpoint3;
          break;
      }
    }
    var slashCount = (searchText.match(/\//g) || []).length;
    var parts = searchText.split('/');
    if (slashCount >= 2 && parts[2] !== undefined && parts[2] !== '') {
      return false;
    }
    if (searchText.startsWith('/') && searchText.length > 1) {
      var _transformedIdtText;
      var aliasRest = searchText.slice(1);
      return ((_transformedIdtText = transformedIdtText) === null || _transformedIdtText === void 0 ? void 0 : _transformedIdtText.toLowerCase().startsWith(aliasRest)) || (idtName === null || idtName === void 0 ? void 0 : idtName.startsWith(aliasRest)) || modifications && Object.values(modifications).some(function (mod) {
        return mod === null || mod === void 0 ? void 0 : mod.toLowerCase().startsWith(aliasRest);
      });
    }
    if (searchText.endsWith('/') && searchText.length > 1) {
      var _transformedIdtText2;
      var _aliasRest = searchText.slice(0, -1);
      var aliasLastSymbol = searchText[searchText.length - 2];
      return ((_transformedIdtText2 = transformedIdtText) === null || _transformedIdtText2 === void 0 ? void 0 : _transformedIdtText2.toLowerCase().endsWith(_aliasRest)) && transformedIdtText[transformedIdtText.length - 1] === aliasLastSymbol || (idtName === null || idtName === void 0 ? void 0 : idtName.endsWith(_aliasRest)) && idtName[idtName.length - 1] === aliasLastSymbol || modifications && Object.values(modifications).some(function (mod) {
        return (mod === null || mod === void 0 ? void 0 : mod.toLowerCase().endsWith(_aliasRest)) && mod[mod.length - 1] === aliasLastSymbol;
      });
    }
    if (searchText === '/') {
      return !!item.idtAliases;
    }
    var cond = (name === null || name === void 0 ? void 0 : name.includes(searchText)) || (sugarName === null || sugarName === void 0 ? void 0 : sugarName.includes(searchText)) || (phosphateName === null || phosphateName === void 0 ? void 0 : phosphateName.includes(searchText)) || (baseName === null || baseName === void 0 ? void 0 : baseName.includes(searchText)) || ((_transformedIdtText3 = transformedIdtText) === null || _transformedIdtText3 === void 0 ? void 0 : _transformedIdtText3.toLowerCase().includes(searchText));
    return cond;
  });
};
var _rnaBuilderSlice$acti = rnaBuilderSlice.actions,
  setActivePreset = _rnaBuilderSlice$acti.setActivePreset,
  setSequenceSelection = _rnaBuilderSlice$acti.setSequenceSelection,
  setSequenceSelectionName = _rnaBuilderSlice$acti.setSequenceSelectionName,
  setIsSequenceFirstsOnlyNucleoelementsSelected = _rnaBuilderSlice$acti.setIsSequenceFirstsOnlyNucleoelementsSelected;
  _rnaBuilderSlice$acti.setActivePresetName;
  var setActiveRnaBuilderItem = _rnaBuilderSlice$acti.setActiveRnaBuilderItem,
  recalculateRnaBuilderValidations = _rnaBuilderSlice$acti.recalculateRnaBuilderValidations,
  setActivePresetMonomerGroup = _rnaBuilderSlice$acti.setActivePresetMonomerGroup,
  savePreset = _rnaBuilderSlice$acti.savePreset,
  deletePreset = _rnaBuilderSlice$acti.deletePreset,
  createNewPreset = _rnaBuilderSlice$acti.createNewPreset,
  setIsEditMode = _rnaBuilderSlice$acti.setIsEditMode,
  setUniqueNameError = _rnaBuilderSlice$acti.setUniqueNameError,
  setInvalidPresetError = _rnaBuilderSlice$acti.setInvalidPresetError,
  setDefaultPresets = _rnaBuilderSlice$acti.setDefaultPresets,
  setCustomPresets = _rnaBuilderSlice$acti.setCustomPresets,
  setActivePresetForContextMenu = _rnaBuilderSlice$acti.setActivePresetForContextMenu,
  togglePresetFavorites = _rnaBuilderSlice$acti.togglePresetFavorites,
  setFavoritePresetsFromLocalStorage = _rnaBuilderSlice$acti.setFavoritePresetsFromLocalStorage,
  clearFavorites = _rnaBuilderSlice$acti.clearFavorites;
var rnaBuilderReducer = rnaBuilderSlice.reducer;

function configureAppStore() {
  var preloadedState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  var sagaMiddleware = sagaMiddlewareFactory();
  var store = configureStore({
    reducer: {
      editor: editorReducer,
      modal: modalReducer,
      library: libraryReducer,
      rnaBuilder: rnaBuilderReducer
    },
    middleware: function middleware(getDefaultMiddleware) {
      return getDefaultMiddleware({
        thunk: false,
        serializableCheck: false
      }).concat(sagaMiddleware);
    },
    preloadedState: preloadedState
  });
  sagaMiddleware.run(rootSaga);
  return store;
}
var store = configureAppStore();

var monomerColors = {
  colorA: {
    regular: '#CCCBD6',
    hover: '#B8BBCC'
  },
  colorCM: {
    regular: '#FFE34C',
    hover: '#FFD700'
  },
  colorDQ: {
    regular: '#AD4551',
    hover: '#AB0014'
  },
  colorEN: {
    regular: '#93F5F5',
    hover: '#00F0F0'
  },
  colorFY: {
    regular: '#5656BF',
    hover: '#2626BF'
  },
  colorGX: {
    regular: '#E1E6ED',
    hover: '#CAD3E0'
  },
  colorH: {
    regular: '#BFC9FF',
    hover: '#99AAFF'
  },
  colorILV: {
    regular: '#50E576',
    hover: '#00D936'
  },
  colorKR: {
    regular: '#365CFF',
    hover: '#002CEB'
  },
  colorP: {
    regular: '#F2C5B6',
    hover: '#FFA98C'
  },
  colorST: {
    regular: '#FFC44C',
    hover: '#FFAA00'
  },
  colorW: {
    regular: '#99458B',
    hover: '#7F006B'
  },
  colorU: {
    regular: '#99458B',
    hover: '#7F006B'
  },
  chem: {
    regular: '#333333',
    hover: '#555555'
  },
  "default": {
    regular: '#CCCBD6',
    hover: '#B8BBCC'
  }
};
var peptideColorScheme = {
  D: {
    regular: '#FF8C69',
    hover: '#0097A8'
  },
  E: {
    regular: '#DC143C',
    hover: '#0097A8'
  },
  K: {
    regular: '#B0E0E6',
    hover: '#0097A8'
  },
  H: {
    regular: '#007FFF',
    hover: '#0097A8'
  },
  O: {
    regular: '#2A52BE',
    hover: '#0097A8'
  },
  R: {
    regular: '#0A12FF',
    hover: '#0097A8'
  },
  Q: {
    regular: '#EDB4ED',
    hover: '#0097A8'
  },
  Y: {
    regular: '#D65CBC',
    hover: '#0097A8'
  },
  U: {
    regular: '#CA7DE3',
    hover: '#0097A8'
  },
  S: {
    regular: '#9966CC',
    hover: '#0097A8'
  },
  C: {
    regular: '#BF00FF',
    hover: '#0097A8'
  },
  N: {
    regular: '#800080',
    hover: '#0097A8'
  },
  T: {
    regular: '#FF00FF',
    hover: '#0097A8'
  },
  L: {
    regular: '#7FFF00',
    hover: '#0097A8'
  },
  I: {
    regular: '#4CBB17',
    hover: '#0097A8'
  },
  F: {
    regular: '#008A00',
    hover: '#0097A8'
  },
  A: {
    regular: '#008080',
    hover: '#0097A8'
  },
  P: {
    regular: '#D2D900',
    hover: '#0097A8'
  },
  G: {
    regular: '#BDB76B',
    hover: '#0097A8'
  },
  M: {
    regular: '#FFF600',
    hover: '#0097A8'
  },
  V: {
    regular: '#FFD700',
    hover: '#0097A8'
  }
};
var defaultTheme = {
  color: {
    background: {
      canvas: '#F5F5F5',
      primary: '#FFFFFF',
      secondary: '#F8FEFF',
      overlay: 'rgba(94,94,94,.8)'
    },
    border: {
      primary: '#CAD3DD',
      secondary: '#7C7C7F'
    },
    text: {
      primary: '#333333',
      secondary: '#167782',
      light: '#585858',
      dark: '#000000',
      error: '#FF4A4A',
      lightgrey: '#7C7C7F'
    },
    tab: {
      regular: '#FFFFFF',
      active: '#EFF2F5',
      hover: '#00838F',
      content: '#EFF2F5'
    },
    scroll: {
      regular: '#717171',
      inactive: '#DDDDDD'
    },
    button: {
      primary: {
        active: '#167782',
        hover: '#00838F',
        clicked: '#4FB3BF',
        disabled: 'rgba(113, 113, 113, 0.4)'
      },
      secondary: {
        active: '#585858',
        hover: '#333333',
        clicked: '#AEAEAE',
        disabled: 'rgba(113, 113, 113, 0.4)'
      },
      group: {
        active: '#167782',
        hover: '#2E858F'
      },
      transparent: {
        active: 'transparent'
      },
      text: {
        primary: '#FFFFFF',
        secondary: '#005662',
        disabled: '#7A7A7A'
      }
    },
    dropdown: {
      primary: '#333333',
      secondary: '#FFFFFF',
      hover: '#DDDDDD',
      disabled: '#7A7A7A'
    },
    tooltip: {
      background: '#FFFFFF',
      text: '#333333'
    },
    link: {
      active: '#00838F',
      hover: '#005662'
    },
    divider: '#AEAEAE',
    spinner: '#005662',
    error: '#FF4A4A',
    input: {
      text: {
        "default": '#585858',
        active: '#333333',
        disabled: '#585858',
        error: '#FF4A4A'
      },
      background: {
        primary: '#FFFFFF',
        "default": '#EFF2F5',
        hover: '#DDDDDD',
        disabled: '#eff2f5'
      },
      border: {
        regular: '#cad3dd',
        active: '#FFFFFF',
        hover: '#43b5c0',
        focus: '#EFF2F5',
        error: '#FF4A4A'
      }
    },
    icon: {
      grey: '#B4B9D6',
      hover: '#005662',
      active: '#525252',
      activeMenu: '#005662',
      clicked: '#FFFFFF',
      disabled: 'rgba(82, 82, 82, 0.4)'
    },
    monomer: {
      "default": '#C8C8C8'
    },
    editMode: {
      sequenceInRNABuilder: '#99d7dc'
    }
  },
  font: {
    size: {
      small: '10px',
      regular: '12px',
      medium: '14px',
      xsmall: '6px'
    },
    family: {
      montserrat: 'Montserrat, sans-serif',
      inter: "Inter, FreeSans, Arimo, 'Droid Sans', Helvetica, 'Helvetica Neue',\n" + 'Arial, sans-serif',
      roboto: 'Roboto, FreeSans, Arimo, Droid Sans, Helvetica, Helvetica Neue, Arial, sans-serif'
    },
    weight: {
      light: 300,
      regular: 400,
      bold: 600
    }
  },
  monomer: {
    color: {
      A: monomerColors.colorA,
      C: monomerColors.colorCM,
      M: monomerColors.colorCM,
      D: monomerColors.colorDQ,
      Q: monomerColors.colorDQ,
      E: monomerColors.colorEN,
      N: monomerColors.colorEN,
      F: monomerColors.colorFY,
      Y: monomerColors.colorFY,
      G: monomerColors.colorGX,
      X: monomerColors.colorGX,
      H: monomerColors.colorH,
      I: monomerColors.colorILV,
      L: monomerColors.colorILV,
      V: monomerColors.colorILV,
      K: monomerColors.colorKR,
      R: monomerColors.colorKR,
      P: monomerColors.colorP,
      S: monomerColors.colorST,
      T: monomerColors.colorST,
      W: monomerColors.colorW,
      U: monomerColors.colorU,
      CHEM: monomerColors.chem,
      "default": monomerColors["default"]
    }
  },
  peptide: {
    color: {
      D: peptideColorScheme.D,
      E: peptideColorScheme.E,
      K: peptideColorScheme.K,
      H: peptideColorScheme.H,
      O: peptideColorScheme.O,
      R: peptideColorScheme.R,
      Q: peptideColorScheme.Q,
      Y: peptideColorScheme.Y,
      U: peptideColorScheme.U,
      S: peptideColorScheme.S,
      C: peptideColorScheme.C,
      N: peptideColorScheme.N,
      T: peptideColorScheme.T,
      L: peptideColorScheme.L,
      I: peptideColorScheme.I,
      F: peptideColorScheme.F,
      A: peptideColorScheme.A,
      P: peptideColorScheme.P,
      G: peptideColorScheme.G,
      M: peptideColorScheme.M,
      V: peptideColorScheme.V
    }
  },
  border: {
    regular: '1px solid #CAD3DD',
    small: '1px solid #E1E5EA',
    radius: {
      regular: '4px'
    }
  },
  shadow: {
    regular: '0px 1px 1px rgba(197, 203, 207, 0.7)'
  },
  outline: {
    small: '1px solid #B4B9D6',
    medium: '2px solid #B4B9D6',
    color: '#B4B9D6',
    selected: {
      color: '#167782',
      small: '1px solid #167782',
      medium: '2px solid #167782'
    },
    grey: {
      small: '1px solid #585858'
    }
  },
  transition: {
    regular: 'all .3s'
  }
};
var muiOverrides = {
};

var getGlobalStyles = function getGlobalStyles(theme) {
  return css({
    all: 'unset',
    '.Ketcher-polymer-editor-root': {
      all: 'unset',
      fontSize: theme.ketcher.font.size.medium,
      fontFamily: theme.ketcher.font.family.inter,
      fontWeight: theme.ketcher.font.weight.regular,
      backgroundColor: theme.ketcher.color.background.primary,
      color: theme.ketcher.color.text.primary,
      boxSizing: 'border-box'
    },
    ':where(.Ketcher-polymer-editor-root) div': {
      boxSizing: 'border-box'
    },
    ':where(.Ketcher-polymer-editor-root) input': {
      fontFamily: theme.ketcher.font.family.inter,
      fontWeight: theme.ketcher.font.weight.regular,
      fontSize: theme.ketcher.font.size.regular,
      boxSizing: 'border-box'
    },
    ':where(.Ketcher-polymer-editor-root) h1': {
      fontSize: 96
    },
    ':where(.Ketcher-polymer-editor-root) h2': {
      fontSize: 60
    },
    ':where(.Ketcher-polymer-editor-root) h3': {
      fontSize: 48
    },
    ':where(.Ketcher-polymer-editor-root) h4': {
      fontSize: 34
    },
    ':where(.Ketcher-polymer-editor-root) h5': {
      fontSize: 24
    },
    ':where(.Ketcher-polymer-editor-root) h6': {
      fontSize: 20,
      fontWeight: theme.ketcher.font.weight.bold
    },
    ':where(.Ketcher-polymer-editor-root) p': {
      fontSize: theme.ketcher.font.size.regular
    },
    ':where(.Ketcher-polymer-editor-root) button': {
      textTransform: 'uppercase',
      fontWeight: theme.ketcher.font.weight.bold
    }
  }, process.env.NODE_ENV === "production" ? "" : ";label:getGlobalStyles;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdldEdsb2JhbFN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQjBDIiwiZmlsZSI6ImdldEdsb2JhbFN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBnZXRHbG9iYWxTdHlsZXMgPSAodGhlbWUpID0+IGNzcyh7XHJcbiAgICBhbGw6ICd1bnNldCcsXHJcbiAgICAnLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCc6IHtcclxuICAgICAgICBhbGw6ICd1bnNldCcsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgICAgICBmb250RmFtaWx5OiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyLFxyXG4gICAgICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgIH0sXHJcbiAgICAnOndoZXJlKC5LZXRjaGVyLXBvbHltZXItZWRpdG9yLXJvb3QpIGRpdic6IHtcclxuICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgIH0sXHJcbiAgICAnOndoZXJlKC5LZXRjaGVyLXBvbHltZXItZWRpdG9yLXJvb3QpIGlucHV0Jzoge1xyXG4gICAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICAgICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgICAgIGZvbnRTaXplOiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDEnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDk2LFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDInOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDYwLFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDMnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDQ4LFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDQnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDM0LFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDUnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDI0LFxyXG4gICAgfSxcclxuICAgICc6d2hlcmUoLktldGNoZXItcG9seW1lci1lZGl0b3Itcm9vdCkgaDYnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IDIwLFxyXG4gICAgICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQuYm9sZCxcclxuICAgIH0sXHJcbiAgICAnOndoZXJlKC5LZXRjaGVyLXBvbHltZXItZWRpdG9yLXJvb3QpIHAnOiB7XHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICB9LFxyXG4gICAgJzp3aGVyZSguS2V0Y2hlci1wb2x5bWVyLWVkaXRvci1yb290KSBidXR0b24nOiB7XHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ3VwcGVyY2FzZScsXHJcbiAgICAgICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5ib2xkLFxyXG4gICAgfSxcclxufSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWdldEdsb2JhbFN0eWxlcy5qcy5tYXAiXX0= */");
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$D() { 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)."; }
var MONOMER_LIBRARY_WIDTH = '254px';
var MonomerLibraryInput = _styled(Input$1, process.env.NODE_ENV === "production" ? {
  target: "e1vkl5kv4"
} : {
  target: "e1vkl5kv4",
  label: "MonomerLibraryInput"
})(process.env.NODE_ENV === "production" ? {
  name: "4b23tt",
  styles: "outline:0;:hover{outline:none;}"
} : {
  name: "4b23tt",
  styles: "outline:0;:hover{outline:none;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQm1DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBNT05PTUVSX0xJQlJBUllfV0lEVEggPSAnMjU0cHgnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgb3V0bGluZTogMCxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlicmFyeUNvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiBNT05PTUVSX0xJQlJBUllfV0lEVEgsXHJcbiAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSAxNnB4KScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJMaWJyYXJ5VGl0bGUgPSBzdHlsZWQuaDMoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlIZWFkZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCcsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlTZWFyY2ggPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCAwJyxcclxuICAgICcmID4gZGl2Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYmFja2dyb3VuZC5kZWZhdWx0LFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcclxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgdHJhbnNwYXJlbnQnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzAgNHB4JyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhhcyhpbnB1dDpmb2N1cyknOiB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5mb2N1c31gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYgPiBpbnB1dCc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDAgMCA4cHgnLFxyXG4gICAgICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgICAgIGZsZXg6IDEsXHJcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$D
});
var MonomerLibraryContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1vkl5kv3"
} : {
  target: "e1vkl5kv3",
  label: "MonomerLibraryContainer"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    width: MONOMER_LIBRARY_WIDTH,
    height: 'calc(100% - 16px)',
    backgroundColor: theme.ketcher.color.background.primary,
    boxShadow: '0px 2px 5px rgba(103, 104, 132, 0.15)',
    display: 'flex',
    flexDirection: 'column',
    borderRadius: '4px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QnVDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBNT05PTUVSX0xJQlJBUllfV0lEVEggPSAnMjU0cHgnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgb3V0bGluZTogMCxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlicmFyeUNvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiBNT05PTUVSX0xJQlJBUllfV0lEVEgsXHJcbiAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSAxNnB4KScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJMaWJyYXJ5VGl0bGUgPSBzdHlsZWQuaDMoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlIZWFkZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCcsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlTZWFyY2ggPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCAwJyxcclxuICAgICcmID4gZGl2Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYmFja2dyb3VuZC5kZWZhdWx0LFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcclxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgdHJhbnNwYXJlbnQnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzAgNHB4JyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhhcyhpbnB1dDpmb2N1cyknOiB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5mb2N1c31gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYgPiBpbnB1dCc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDAgMCA4cHgnLFxyXG4gICAgICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgICAgIGZsZXg6IDEsXHJcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var MonomerLibraryTitle = _styled("h3", process.env.NODE_ENV === "production" ? {
  target: "e1vkl5kv2"
} : {
  target: "e1vkl5kv2",
  label: "MonomerLibraryTitle"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    margin: 0,
    padding: 0,
    fontSize: theme.ketcher.font.size.regular,
    fontWeight: theme.ketcher.font.weight.regular
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQ21DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBNT05PTUVSX0xJQlJBUllfV0lEVEggPSAnMjU0cHgnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgb3V0bGluZTogMCxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlicmFyeUNvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiBNT05PTUVSX0xJQlJBUllfV0lEVEgsXHJcbiAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSAxNnB4KScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJMaWJyYXJ5VGl0bGUgPSBzdHlsZWQuaDMoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlIZWFkZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCcsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlTZWFyY2ggPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCAwJyxcclxuICAgICcmID4gZGl2Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYmFja2dyb3VuZC5kZWZhdWx0LFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcclxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgdHJhbnNwYXJlbnQnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzAgNHB4JyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhhcyhpbnB1dDpmb2N1cyknOiB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5mb2N1c31gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYgPiBpbnB1dCc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDAgMCA4cHgnLFxyXG4gICAgICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgICAgIGZsZXg6IDEsXHJcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var MonomerLibraryHeader = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1vkl5kv1"
} : {
  target: "e1vkl5kv1",
  label: "MonomerLibraryHeader"
})(function () {
  return {
    padding: '12px',
    position: 'relative'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1Q29DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBNT05PTUVSX0xJQlJBUllfV0lEVEggPSAnMjU0cHgnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgb3V0bGluZTogMCxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlicmFyeUNvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiBNT05PTUVSX0xJQlJBUllfV0lEVEgsXHJcbiAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSAxNnB4KScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJMaWJyYXJ5VGl0bGUgPSBzdHlsZWQuaDMoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlIZWFkZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCcsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlTZWFyY2ggPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCAwJyxcclxuICAgICcmID4gZGl2Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYmFja2dyb3VuZC5kZWZhdWx0LFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcclxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgdHJhbnNwYXJlbnQnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzAgNHB4JyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhhcyhpbnB1dDpmb2N1cyknOiB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5mb2N1c31gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYgPiBpbnB1dCc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDAgMCA4cHgnLFxyXG4gICAgICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgICAgIGZsZXg6IDEsXHJcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var MonomerLibrarySearch = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1vkl5kv0"
} : {
  target: "e1vkl5kv0",
  label: "MonomerLibrarySearch"
})(function (_ref3) {
  var theme = _ref3.theme;
  return {
    padding: '12px 0',
    '& > div': {
      background: theme.ketcher.color.input.background["default"],
      display: 'flex',
      height: '24px',
      flexDirection: 'row',
      border: '1px solid transparent',
      borderRadius: '4px',
      padding: '0 4px',
      '& > span': {
        display: 'flex',
        alignItems: 'center',
        justifyContent: 'center'
      },
      '&:has(input:focus)': {
        outline: "1px solid ".concat(theme.ketcher.color.input.border.focus)
      },
      '& > input': {
        background: 'transparent',
        border: 'none',
        padding: '0 0 0 8px',
        margin: 0,
        flex: 1,
        '&:focus': {
          outline: 'none'
        }
      }
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ29DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IElucHV0IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBNT05PTUVSX0xJQlJBUllfV0lEVEggPSAnMjU0cHgnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgb3V0bGluZTogMCxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlicmFyeUNvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiBNT05PTUVSX0xJQlJBUllfV0lEVEgsXHJcbiAgICBoZWlnaHQ6ICdjYWxjKDEwMCUgLSAxNnB4KScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJMaWJyYXJ5VGl0bGUgPSBzdHlsZWQuaDMoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlIZWFkZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCcsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lckxpYnJhcnlTZWFyY2ggPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMTJweCAwJyxcclxuICAgICcmID4gZGl2Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYmFja2dyb3VuZC5kZWZhdWx0LFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcclxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgdHJhbnNwYXJlbnQnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzAgNHB4JyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhhcyhpbnB1dDpmb2N1cyknOiB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5mb2N1c31gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYgPiBpbnB1dCc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDAgMCA4cHgnLFxyXG4gICAgICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgICAgIGZsZXg6IDEsXHJcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");

function _EMOTION_STRINGIFIED_CSS_ERROR__$C() { 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)."; }
var Column = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa9"
} : {
  target: "e1pv9pa9",
  label: "Column"
})(function (_ref) {
  var fullWidth = _ref.fullWidth,
    withPaddingRight = _ref.withPaddingRight;
  return {
    width: fullWidth ? '100%' : 'fit-content',
    display: 'flex',
    flexDirection: 'column',
    justifyContent: 'space-between',
    paddingRight: withPaddingRight ? '12px' : 0
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUJlIiwiZmlsZSI6IkxheW91dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBNT05PTUVSX0xJQlJBUllfV0lEVEggfSBmcm9tIFwiLi4vbW9ub21lckxpYnJhcnkvc3R5bGVzXCI7XHJcbmNvbnN0IENvbHVtbiA9IHN0eWxlZC5kaXYoKHsgZnVsbFdpZHRoLCB3aXRoUGFkZGluZ1JpZ2h0IH0pID0+ICh7XHJcbiAgICB3aWR0aDogZnVsbFdpZHRoID8gJzEwMCUnIDogJ2ZpdC1jb250ZW50JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIHBhZGRpbmdSaWdodDogd2l0aFBhZGRpbmdSaWdodCA/ICcxMnB4JyA6IDAsXHJcbn0pKTtcclxuY29uc3QgUm93TWFpbiA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb250YWluZXJUeXBlOiAnc2l6ZScsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbn0pKTtcclxuY29uc3QgUm93ID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBwYWRkaW5nQm90dG9tOiAwLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQuY2FudmFzLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGNvbHVtbkdhcDogJzNweCcsXHJcbn0pKTtcclxuY29uc3QgQmFzZUxlZnRSaWdodFN0eWxlID0gc3R5bGVkLmRpdigoeyBoaWRlID0gZmFsc2UgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiBoaWRlID8gJ25vbmUnIDogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbn0pKTtcclxuY29uc3QgTGVmdCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBSaWdodCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBUb3AgPSBzdHlsZWQuZGl2KCh7IHNob3J0ZW5lZCA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICczNnB4JyxcclxuICAgIHdpZHRoOiBzaG9ydGVuZWQgPyBgY2FsYygxMDAlIC0gJHtNT05PTUVSX0xJQlJBUllfV0lEVEh9KWAgOiAnMTAwJScsXHJcbiAgICBtYXJnaW5Cb3R0b206ICc2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXHJcbiAgICBib3hTaGFkb3c6ICcwcHggMnB4IDVweCByZ2JhKDEwMywgMTA0LCAxMzIsIDAuMTUpJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuY29uc3QgTWFpbiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbn0pO1xyXG5jb25zdCBJbnNpZGVSb290ID0gc3R5bGVkLmRpdih7fSk7XHJcbmNvbnN0IER1bW15RGl2ID0gc3R5bGVkLmRpdih7XHJcbiAgICBoZWlnaHQ6ICc0MHB4JyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBMYXlvdXQgPSAoeyBjaGlsZHJlbiB9KSA9PiB7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIExlZnQ6IG51bGwsXHJcbiAgICAgICAgTWFpbjogbnVsbCxcclxuICAgICAgICBSaWdodDogbnVsbCxcclxuICAgICAgICBUb3A6IG51bGwsXHJcbiAgICAgICAgSW5zaWRlUm9vdDogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gTGVmdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkxlZnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gUmlnaHQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5SaWdodCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBUb3ApIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Ub3AgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gTWFpbikge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLk1haW4gPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gSW5zaWRlUm9vdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkluc2lkZVJvb3QgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoUm93TWFpbiwgeyBjaGlsZHJlbjogW19qc3hzKENvbHVtbiwgeyBmdWxsV2lkdGg6IHRydWUsIHdpdGhQYWRkaW5nUmlnaHQ6IHRydWUsIGNoaWxkcmVuOiBbc3ViY29tcG9uZW50cy5Ub3AsIF9qc3hzKFJvdywgeyBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuTGVmdCwgX2pzeChEdW1teURpdiwge30pLCBzdWJjb21wb25lbnRzLk1haW5dIH0pXSB9KSwgX2pzeChDb2x1bW4sIHsgY2hpbGRyZW46IHN1YmNvbXBvbmVudHMuUmlnaHQgfSksIHN1YmNvbXBvbmVudHMuSW5zaWRlUm9vdF0gfSkpO1xyXG59O1xyXG5MYXlvdXQuTGVmdCA9IExlZnQ7XHJcbkxheW91dC5Ub3AgPSBUb3A7XHJcbkxheW91dC5SaWdodCA9IFJpZ2h0O1xyXG5MYXlvdXQuTWFpbiA9IE1haW47XHJcbkxheW91dC5JbnNpZGVSb290ID0gSW5zaWRlUm9vdDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TGF5b3V0LmpzLm1hcCJdfQ== */");
var RowMain = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa8"
} : {
  target: "e1pv9pa8",
  label: "RowMain"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    height: '100%',
    width: '100%',
    position: 'relative',
    padding: '12px',
    paddingBottom: 0,
    backgroundColor: theme.ketcher.color.background.canvas,
    display: 'flex',
    justifyContent: 'space-between',
    containerType: 'size',
    overflow: 'hidden'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJnQiIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */");
var Row$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa7"
} : {
  target: "e1pv9pa7",
  label: "Row"
})(function (_ref3) {
  var theme = _ref3.theme;
  return {
    height: '100%',
    width: '100%',
    position: 'relative',
    paddingBottom: 0,
    backgroundColor: theme.ketcher.color.background.canvas,
    display: 'flex',
    justifyContent: 'space-between',
    columnGap: '3px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0NZIiwiZmlsZSI6IkxheW91dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBNT05PTUVSX0xJQlJBUllfV0lEVEggfSBmcm9tIFwiLi4vbW9ub21lckxpYnJhcnkvc3R5bGVzXCI7XHJcbmNvbnN0IENvbHVtbiA9IHN0eWxlZC5kaXYoKHsgZnVsbFdpZHRoLCB3aXRoUGFkZGluZ1JpZ2h0IH0pID0+ICh7XHJcbiAgICB3aWR0aDogZnVsbFdpZHRoID8gJzEwMCUnIDogJ2ZpdC1jb250ZW50JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIHBhZGRpbmdSaWdodDogd2l0aFBhZGRpbmdSaWdodCA/ICcxMnB4JyA6IDAsXHJcbn0pKTtcclxuY29uc3QgUm93TWFpbiA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb250YWluZXJUeXBlOiAnc2l6ZScsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbn0pKTtcclxuY29uc3QgUm93ID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBwYWRkaW5nQm90dG9tOiAwLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQuY2FudmFzLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGNvbHVtbkdhcDogJzNweCcsXHJcbn0pKTtcclxuY29uc3QgQmFzZUxlZnRSaWdodFN0eWxlID0gc3R5bGVkLmRpdigoeyBoaWRlID0gZmFsc2UgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiBoaWRlID8gJ25vbmUnIDogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbn0pKTtcclxuY29uc3QgTGVmdCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBSaWdodCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBUb3AgPSBzdHlsZWQuZGl2KCh7IHNob3J0ZW5lZCA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICczNnB4JyxcclxuICAgIHdpZHRoOiBzaG9ydGVuZWQgPyBgY2FsYygxMDAlIC0gJHtNT05PTUVSX0xJQlJBUllfV0lEVEh9KWAgOiAnMTAwJScsXHJcbiAgICBtYXJnaW5Cb3R0b206ICc2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXHJcbiAgICBib3hTaGFkb3c6ICcwcHggMnB4IDVweCByZ2JhKDEwMywgMTA0LCAxMzIsIDAuMTUpJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuY29uc3QgTWFpbiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbn0pO1xyXG5jb25zdCBJbnNpZGVSb290ID0gc3R5bGVkLmRpdih7fSk7XHJcbmNvbnN0IER1bW15RGl2ID0gc3R5bGVkLmRpdih7XHJcbiAgICBoZWlnaHQ6ICc0MHB4JyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBMYXlvdXQgPSAoeyBjaGlsZHJlbiB9KSA9PiB7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIExlZnQ6IG51bGwsXHJcbiAgICAgICAgTWFpbjogbnVsbCxcclxuICAgICAgICBSaWdodDogbnVsbCxcclxuICAgICAgICBUb3A6IG51bGwsXHJcbiAgICAgICAgSW5zaWRlUm9vdDogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gTGVmdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkxlZnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gUmlnaHQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5SaWdodCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBUb3ApIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Ub3AgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gTWFpbikge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLk1haW4gPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gSW5zaWRlUm9vdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkluc2lkZVJvb3QgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoUm93TWFpbiwgeyBjaGlsZHJlbjogW19qc3hzKENvbHVtbiwgeyBmdWxsV2lkdGg6IHRydWUsIHdpdGhQYWRkaW5nUmlnaHQ6IHRydWUsIGNoaWxkcmVuOiBbc3ViY29tcG9uZW50cy5Ub3AsIF9qc3hzKFJvdywgeyBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuTGVmdCwgX2pzeChEdW1teURpdiwge30pLCBzdWJjb21wb25lbnRzLk1haW5dIH0pXSB9KSwgX2pzeChDb2x1bW4sIHsgY2hpbGRyZW46IHN1YmNvbXBvbmVudHMuUmlnaHQgfSksIHN1YmNvbXBvbmVudHMuSW5zaWRlUm9vdF0gfSkpO1xyXG59O1xyXG5MYXlvdXQuTGVmdCA9IExlZnQ7XHJcbkxheW91dC5Ub3AgPSBUb3A7XHJcbkxheW91dC5SaWdodCA9IFJpZ2h0O1xyXG5MYXlvdXQuTWFpbiA9IE1haW47XHJcbkxheW91dC5JbnNpZGVSb290ID0gSW5zaWRlUm9vdDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TGF5b3V0LmpzLm1hcCJdfQ== */");
var BaseLeftRightStyle = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa6"
} : {
  target: "e1pv9pa6",
  label: "BaseLeftRightStyle"
})(function (_ref4) {
  var _ref4$hide = _ref4.hide,
    hide = _ref4$hide === void 0 ? false : _ref4$hide;
  return {
    height: '100%',
    width: 'fit-content',
    display: hide ? 'none' : 'flex',
    flexDirection: 'column'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0QyQiIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */");
var Left = _styled(BaseLeftRightStyle, process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa5"
} : {
  target: "e1pv9pa5",
  label: "Left"
})(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0R3QyIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */");
var Right = _styled(BaseLeftRightStyle, process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa4"
} : {
  target: "e1pv9pa4",
  label: "Right"
})(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUR5QyIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */");
var Top = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa3"
} : {
  target: "e1pv9pa3",
  label: "Top"
})(function (_ref5) {
  var _ref5$shortened = _ref5.shortened,
    shortened = _ref5$shortened === void 0 ? false : _ref5$shortened;
  return {
    height: '36px',
    width: shortened ? "calc(100% - ".concat(MONOMER_LIBRARY_WIDTH, ")") : '100%',
    marginBottom: '6px',
    display: 'flex',
    justifyContent: 'space-between',
    alignItems: 'center',
    backgroundColor: '#FFFFFF',
    boxShadow: '0px 2px 5px rgba(103, 104, 132, 0.15)',
    borderRadius: '4px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0RZIiwiZmlsZSI6IkxheW91dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBNT05PTUVSX0xJQlJBUllfV0lEVEggfSBmcm9tIFwiLi4vbW9ub21lckxpYnJhcnkvc3R5bGVzXCI7XHJcbmNvbnN0IENvbHVtbiA9IHN0eWxlZC5kaXYoKHsgZnVsbFdpZHRoLCB3aXRoUGFkZGluZ1JpZ2h0IH0pID0+ICh7XHJcbiAgICB3aWR0aDogZnVsbFdpZHRoID8gJzEwMCUnIDogJ2ZpdC1jb250ZW50JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIHBhZGRpbmdSaWdodDogd2l0aFBhZGRpbmdSaWdodCA/ICcxMnB4JyA6IDAsXHJcbn0pKTtcclxuY29uc3QgUm93TWFpbiA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb250YWluZXJUeXBlOiAnc2l6ZScsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbn0pKTtcclxuY29uc3QgUm93ID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBwYWRkaW5nQm90dG9tOiAwLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQuY2FudmFzLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGNvbHVtbkdhcDogJzNweCcsXHJcbn0pKTtcclxuY29uc3QgQmFzZUxlZnRSaWdodFN0eWxlID0gc3R5bGVkLmRpdigoeyBoaWRlID0gZmFsc2UgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiBoaWRlID8gJ25vbmUnIDogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbn0pKTtcclxuY29uc3QgTGVmdCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBSaWdodCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBUb3AgPSBzdHlsZWQuZGl2KCh7IHNob3J0ZW5lZCA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICczNnB4JyxcclxuICAgIHdpZHRoOiBzaG9ydGVuZWQgPyBgY2FsYygxMDAlIC0gJHtNT05PTUVSX0xJQlJBUllfV0lEVEh9KWAgOiAnMTAwJScsXHJcbiAgICBtYXJnaW5Cb3R0b206ICc2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXHJcbiAgICBib3hTaGFkb3c6ICcwcHggMnB4IDVweCByZ2JhKDEwMywgMTA0LCAxMzIsIDAuMTUpJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuY29uc3QgTWFpbiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbn0pO1xyXG5jb25zdCBJbnNpZGVSb290ID0gc3R5bGVkLmRpdih7fSk7XHJcbmNvbnN0IER1bW15RGl2ID0gc3R5bGVkLmRpdih7XHJcbiAgICBoZWlnaHQ6ICc0MHB4JyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBMYXlvdXQgPSAoeyBjaGlsZHJlbiB9KSA9PiB7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIExlZnQ6IG51bGwsXHJcbiAgICAgICAgTWFpbjogbnVsbCxcclxuICAgICAgICBSaWdodDogbnVsbCxcclxuICAgICAgICBUb3A6IG51bGwsXHJcbiAgICAgICAgSW5zaWRlUm9vdDogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gTGVmdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkxlZnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gUmlnaHQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5SaWdodCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBUb3ApIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Ub3AgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gTWFpbikge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLk1haW4gPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gSW5zaWRlUm9vdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkluc2lkZVJvb3QgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoUm93TWFpbiwgeyBjaGlsZHJlbjogW19qc3hzKENvbHVtbiwgeyBmdWxsV2lkdGg6IHRydWUsIHdpdGhQYWRkaW5nUmlnaHQ6IHRydWUsIGNoaWxkcmVuOiBbc3ViY29tcG9uZW50cy5Ub3AsIF9qc3hzKFJvdywgeyBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuTGVmdCwgX2pzeChEdW1teURpdiwge30pLCBzdWJjb21wb25lbnRzLk1haW5dIH0pXSB9KSwgX2pzeChDb2x1bW4sIHsgY2hpbGRyZW46IHN1YmNvbXBvbmVudHMuUmlnaHQgfSksIHN1YmNvbXBvbmVudHMuSW5zaWRlUm9vdF0gfSkpO1xyXG59O1xyXG5MYXlvdXQuTGVmdCA9IExlZnQ7XHJcbkxheW91dC5Ub3AgPSBUb3A7XHJcbkxheW91dC5SaWdodCA9IFJpZ2h0O1xyXG5MYXlvdXQuTWFpbiA9IE1haW47XHJcbkxheW91dC5JbnNpZGVSb290ID0gSW5zaWRlUm9vdDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TGF5b3V0LmpzLm1hcCJdfQ== */");
var Main = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa2"
} : {
  target: "e1pv9pa2",
  label: "Main"
})(process.env.NODE_ENV === "production" ? {
  name: "149k9u4",
  styles: "height:100%;width:100%;position:relative"
} : {
  name: "149k9u4",
  styles: "height:100%;width:100%;position:relative",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUVhIiwiZmlsZSI6IkxheW91dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBNT05PTUVSX0xJQlJBUllfV0lEVEggfSBmcm9tIFwiLi4vbW9ub21lckxpYnJhcnkvc3R5bGVzXCI7XHJcbmNvbnN0IENvbHVtbiA9IHN0eWxlZC5kaXYoKHsgZnVsbFdpZHRoLCB3aXRoUGFkZGluZ1JpZ2h0IH0pID0+ICh7XHJcbiAgICB3aWR0aDogZnVsbFdpZHRoID8gJzEwMCUnIDogJ2ZpdC1jb250ZW50JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIHBhZGRpbmdSaWdodDogd2l0aFBhZGRpbmdSaWdodCA/ICcxMnB4JyA6IDAsXHJcbn0pKTtcclxuY29uc3QgUm93TWFpbiA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb250YWluZXJUeXBlOiAnc2l6ZScsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbn0pKTtcclxuY29uc3QgUm93ID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBwYWRkaW5nQm90dG9tOiAwLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQuY2FudmFzLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGNvbHVtbkdhcDogJzNweCcsXHJcbn0pKTtcclxuY29uc3QgQmFzZUxlZnRSaWdodFN0eWxlID0gc3R5bGVkLmRpdigoeyBoaWRlID0gZmFsc2UgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiBoaWRlID8gJ25vbmUnIDogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbn0pKTtcclxuY29uc3QgTGVmdCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBSaWdodCA9IHN0eWxlZChCYXNlTGVmdFJpZ2h0U3R5bGUpIGBgO1xyXG5jb25zdCBUb3AgPSBzdHlsZWQuZGl2KCh7IHNob3J0ZW5lZCA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICczNnB4JyxcclxuICAgIHdpZHRoOiBzaG9ydGVuZWQgPyBgY2FsYygxMDAlIC0gJHtNT05PTUVSX0xJQlJBUllfV0lEVEh9KWAgOiAnMTAwJScsXHJcbiAgICBtYXJnaW5Cb3R0b206ICc2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRicsXHJcbiAgICBib3hTaGFkb3c6ICcwcHggMnB4IDVweCByZ2JhKDEwMywgMTA0LCAxMzIsIDAuMTUpJyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbn0pKTtcclxuY29uc3QgTWFpbiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbn0pO1xyXG5jb25zdCBJbnNpZGVSb290ID0gc3R5bGVkLmRpdih7fSk7XHJcbmNvbnN0IER1bW15RGl2ID0gc3R5bGVkLmRpdih7XHJcbiAgICBoZWlnaHQ6ICc0MHB4JyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBMYXlvdXQgPSAoeyBjaGlsZHJlbiB9KSA9PiB7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIExlZnQ6IG51bGwsXHJcbiAgICAgICAgTWFpbjogbnVsbCxcclxuICAgICAgICBSaWdodDogbnVsbCxcclxuICAgICAgICBUb3A6IG51bGwsXHJcbiAgICAgICAgSW5zaWRlUm9vdDogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gTGVmdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkxlZnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gUmlnaHQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5SaWdodCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBUb3ApIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Ub3AgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gTWFpbikge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLk1haW4gPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gSW5zaWRlUm9vdCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkluc2lkZVJvb3QgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoUm93TWFpbiwgeyBjaGlsZHJlbjogW19qc3hzKENvbHVtbiwgeyBmdWxsV2lkdGg6IHRydWUsIHdpdGhQYWRkaW5nUmlnaHQ6IHRydWUsIGNoaWxkcmVuOiBbc3ViY29tcG9uZW50cy5Ub3AsIF9qc3hzKFJvdywgeyBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuTGVmdCwgX2pzeChEdW1teURpdiwge30pLCBzdWJjb21wb25lbnRzLk1haW5dIH0pXSB9KSwgX2pzeChDb2x1bW4sIHsgY2hpbGRyZW46IHN1YmNvbXBvbmVudHMuUmlnaHQgfSksIHN1YmNvbXBvbmVudHMuSW5zaWRlUm9vdF0gfSkpO1xyXG59O1xyXG5MYXlvdXQuTGVmdCA9IExlZnQ7XHJcbkxheW91dC5Ub3AgPSBUb3A7XHJcbkxheW91dC5SaWdodCA9IFJpZ2h0O1xyXG5MYXlvdXQuTWFpbiA9IE1haW47XHJcbkxheW91dC5JbnNpZGVSb290ID0gSW5zaWRlUm9vdDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TGF5b3V0LmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$C
});
var InsideRoot = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa1"
} : {
  target: "e1pv9pa1",
  label: "InsideRoot"
})(process.env.NODE_ENV === "production" ? {
  name: "0",
  styles: ""
} : {
  name: "0",
  styles: "",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0VtQiIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$C
});
var DummyDiv = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1pv9pa0"
} : {
  target: "e1pv9pa0",
  label: "DummyDiv"
})(process.env.NODE_ENV === "production" ? {
  name: "1k18kha",
  styles: "height:40px"
} : {
  name: "1k18kha",
  styles: "height:40px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxheW91dC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUVpQiIsImZpbGUiOiJMYXlvdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9OT01FUl9MSUJSQVJZX1dJRFRIIH0gZnJvbSBcIi4uL21vbm9tZXJMaWJyYXJ5L3N0eWxlc1wiO1xyXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQuZGl2KCh7IGZ1bGxXaWR0aCwgd2l0aFBhZGRpbmdSaWdodCB9KSA9PiAoe1xyXG4gICAgd2lkdGg6IGZ1bGxXaWR0aCA/ICcxMDAlJyA6ICdmaXQtY29udGVudCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBwYWRkaW5nUmlnaHQ6IHdpdGhQYWRkaW5nUmlnaHQgPyAnMTJweCcgOiAwLFxyXG59KSk7XHJcbmNvbnN0IFJvd01haW4gPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgY29udGFpbmVyVHlwZTogJ3NpemUnLFxyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG59KSk7XHJcbmNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBjb2x1bW5HYXA6ICczcHgnLFxyXG59KSk7XHJcbmNvbnN0IEJhc2VMZWZ0UmlnaHRTdHlsZSA9IHN0eWxlZC5kaXYoKHsgaGlkZSA9IGZhbHNlIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgZGlzcGxheTogaGlkZSA/ICdub25lJyA6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KSk7XHJcbmNvbnN0IExlZnQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgUmlnaHQgPSBzdHlsZWQoQmFzZUxlZnRSaWdodFN0eWxlKSBgYDtcclxuY29uc3QgVG9wID0gc3R5bGVkLmRpdigoeyBzaG9ydGVuZWQgPSBmYWxzZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzZweCcsXHJcbiAgICB3aWR0aDogc2hvcnRlbmVkID8gYGNhbGMoMTAwJSAtICR7TU9OT01FUl9MSUJSQVJZX1dJRFRIfSlgIDogJzEwMCUnLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnNnB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgYm94U2hhZG93OiAnMHB4IDJweCA1cHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG59KSk7XHJcbmNvbnN0IE1haW4gPSBzdHlsZWQuZGl2KHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG59KTtcclxuY29uc3QgSW5zaWRlUm9vdCA9IHN0eWxlZC5kaXYoe30pO1xyXG5jb25zdCBEdW1teURpdiA9IHN0eWxlZC5kaXYoe1xyXG4gICAgaGVpZ2h0OiAnNDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgTGF5b3V0ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBMZWZ0OiBudWxsLFxyXG4gICAgICAgIE1haW46IG51bGwsXHJcbiAgICAgICAgUmlnaHQ6IG51bGwsXHJcbiAgICAgICAgVG9wOiBudWxsLFxyXG4gICAgICAgIEluc2lkZVJvb3Q6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IExlZnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5MZWZ0ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IFJpZ2h0KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuUmlnaHQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gVG9wKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuVG9wID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IE1haW4pIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5NYWluID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEluc2lkZVJvb3QpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5JbnNpZGVSb290ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvd01haW4sIHsgY2hpbGRyZW46IFtfanN4cyhDb2x1bW4sIHsgZnVsbFdpZHRoOiB0cnVlLCB3aXRoUGFkZGluZ1JpZ2h0OiB0cnVlLCBjaGlsZHJlbjogW3N1YmNvbXBvbmVudHMuVG9wLCBfanN4cyhSb3csIHsgY2hpbGRyZW46IFtzdWJjb21wb25lbnRzLkxlZnQsIF9qc3goRHVtbXlEaXYsIHt9KSwgc3ViY29tcG9uZW50cy5NYWluXSB9KV0gfSksIF9qc3goQ29sdW1uLCB7IGNoaWxkcmVuOiBzdWJjb21wb25lbnRzLlJpZ2h0IH0pLCBzdWJjb21wb25lbnRzLkluc2lkZVJvb3RdIH0pKTtcclxufTtcclxuTGF5b3V0LkxlZnQgPSBMZWZ0O1xyXG5MYXlvdXQuVG9wID0gVG9wO1xyXG5MYXlvdXQuUmlnaHQgPSBSaWdodDtcclxuTGF5b3V0Lk1haW4gPSBNYWluO1xyXG5MYXlvdXQuSW5zaWRlUm9vdCA9IEluc2lkZVJvb3Q7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUxheW91dC5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$C
});
var Layout = function Layout(_ref6) {
  var children = _ref6.children;
  var subcomponents = {
    Left: null,
    Main: null,
    Right: null,
    Top: null,
    InsideRoot: null
  };
  React__default.Children.forEach(children, function (child) {
    if (child.type === Left) {
      subcomponents.Left = child;
    } else if (child.type === Right) {
      subcomponents.Right = child;
    } else if (child.type === Top) {
      subcomponents.Top = child;
    } else if (child.type === Main) {
      subcomponents.Main = child;
    } else if (child.type === InsideRoot) {
      subcomponents.InsideRoot = child;
    }
  });
  return jsxs(RowMain, {
    children: [jsxs(Column, {
      fullWidth: true,
      withPaddingRight: true,
      children: [subcomponents.Top, jsxs(Row$1, {
        children: [subcomponents.Left, jsx(DummyDiv, {}), subcomponents.Main]
      })]
    }), jsx(Column, {
      children: subcomponents.Right
    }), subcomponents.InsideRoot]
  });
};
Layout.Left = Left;
Layout.Top = Top;
Layout.Right = Right;
Layout.Main = Main;
Layout.InsideRoot = InsideRoot;

var useAppDispatch = function useAppDispatch() {
  return useDispatch();
};
var useAppSelector = useSelector;
function useLayoutMode() {
  var _ketcher$editor;
  var ketcher = ketcherProvider.getKetcher();
  var isBlank = ketcher === null || ketcher === void 0 || (_ketcher$editor = ketcher.editor) === null || _ketcher$editor === void 0 ? void 0 : _ketcher$editor.struct().isBlank();
  var fallbackMode = isBlank ? DEFAULT_LAYOUT_MODE : HAS_CONTENT_LAYOUT_MODE;
  var editor = useAppSelector(selectEditor);
  var previousLayoutMode = useAppSelector(selectEditorLayoutMode);
  var _useState = useState(previousLayoutMode || fallbackMode),
    _useState2 = _slicedToArray(_useState, 2),
    layoutMode = _useState2[0],
    setLayoutMode = _useState2[1];
  var onLayoutModeChange = useCallback(function (newLayoutMode) {
    setLayoutMode(newLayoutMode);
  }, [setLayoutMode]);
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.layoutModeChange.add(onLayoutModeChange);
    return function () {
      editor === null || editor === void 0 || editor.events.layoutModeChange.remove(onLayoutModeChange);
    };
  }, [onLayoutModeChange, editor === null || editor === void 0 ? void 0 : editor.events.layoutModeChange]);
  return layoutMode;
}
function useSequenceEditInRNABuilderMode() {
  var editor = useAppSelector(selectEditor);
  var isSequenceEditInRNABuilderModeInitial = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var _useState3 = useState(isSequenceEditInRNABuilderModeInitial),
    _useState4 = _slicedToArray(_useState3, 2),
    isSequenceEditInRNABuilderMode = _useState4[0],
    setIsSequenceEditInRNABuilderMode = _useState4[1];
  var onSequenceEditInRNABuilderModeChange = function onSequenceEditInRNABuilderModeChange(value) {
    setIsSequenceEditInRNABuilderMode(value);
  };
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.toggleSequenceEditInRNABuilderMode.add(onSequenceEditInRNABuilderModeChange);
    return function () {
      editor === null || editor === void 0 || editor.events.toggleSequenceEditInRNABuilderMode.remove(onSequenceEditInRNABuilderModeChange);
    };
  }, [onSequenceEditInRNABuilderModeChange, editor === null || editor === void 0 ? void 0 : editor.events.toggleSequenceEditInRNABuilderMode]);
  return isSequenceEditInRNABuilderMode;
}

function ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$B() { 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)."; }
var TabPanelDiv = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1fsnjs54"
} : {
  target: "e1fsnjs54",
  label: "TabPanelDiv"
})(function () {
  return {
    backgroundColor: '#eef2f5',
    flexGrow: 1,
    overflowY: 'auto'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCb0IiLCJmaWxlIjoiVGFicy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBUYWJzLCBUYWIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IEJveCBmcm9tICdAbXVpL21hdGVyaWFsL0JveCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHNlbGVjdEN1cnJlbnRUYWJJbmRleCwgc2V0U2VsZWN0ZWRUYWJJbmRleCwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbGlicmFyeS9saWJyYXJ5U2xpY2VcIjtcclxuY29uc3QgVGFiUGFuZWxEaXYgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWVmMmY1JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgb3ZlcmZsb3dZOiAnYXV0bycsXHJcbn0pKTtcclxuY29uc3QgVGFiUGFuZWxCb3ggPSBzdHlsZWQoQm94KSh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBhbGlnbkl0ZW1zOiAnc3RhcnQnLFxyXG59KTtcclxuZnVuY3Rpb24gVGFiUGFuZWwoeyBjaGlsZHJlbiwgdmFsdWUsIGluZGV4IH0pIHtcclxuICAgIHJldHVybiAoX2pzeChUYWJQYW5lbERpdiwgeyByb2xlOiBcInRhYnBhbmVsXCIsIGhpZGRlbjogdmFsdWUgIT09IGluZGV4LCBpZDogaW5kZXgudG9TdHJpbmcoKSwgY2hpbGRyZW46IHZhbHVlID09PSBpbmRleCAmJiBfanN4KFRhYlBhbmVsQm94LCB7IGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gYTExeVByb3BzKGluZGV4KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXHJcbiAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBgc2ltcGxlLXRhYnBhbmVsLSR7aW5kZXh9YCxcclxuICAgIH07XHJcbn1cclxuZnVuY3Rpb24gQ3VzdG9tVGFicyhwcm9wcykge1xyXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VBcHBEaXNwYXRjaCgpO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRUYWJJbmRleCA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEN1cnJlbnRUYWJJbmRleCk7XHJcbiAgICBjb25zdCB7IHRhYnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgdGFiUGFuZWwgPSB0YWJzW3NlbGVjdGVkVGFiSW5kZXhdO1xyXG4gICAgY29uc3QgQ29tcG9uZW50ID0gdGFiUGFuZWw/LmNvbXBvbmVudDtcclxuICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gdGFiUGFuZWw/LnByb3BzO1xyXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKF9ldmVudCwgbmV3VGFiSW5kZXgpID0+IHtcclxuICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG5ld1RhYkluZGV4KSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgU3R5bGVkVGFicyA9IHN0eWxlZChUYWJzKSh7XHJcbiAgICAgICAgaGVpZ2h0OiAyNCxcclxuICAgICAgICBtaW5IZWlnaHQ6IDI0LFxyXG4gICAgICAgIGxpc3RTdHlsZVR5cGU6ICdub25lJyxcclxuICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAnJiAuTXVpVGFicy1pbmRpY2F0b3InOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcclxuICAgICAgICB9LFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBTdHlsZWRUYWIgPSBzdHlsZWQoVGFiKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgICAgIG1pbkhlaWdodDogMjQsXHJcbiAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgaGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRhYi5yZWd1bGFyLFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgbGlzdFN0eWxlVHlwZTogJ25vbmUnLFxyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmbGV4OiAnMSAxIGF1dG8nLFxyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCA0cHggMCAwJyxcclxuICAgICAgICAnJjpmaXJzdC1vZi10eXBlJzoge1xyXG4gICAgICAgICAgICBib3JkZXJMZWZ0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMCA0cHggMCAwICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XHJcbiAgICAgICAgICAgIGJvcmRlclJpZ2h0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4IDAgMCAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLnJlZ3VsYXIsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYuTXVpLXNlbGVjdGVkJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5wcmltYXJ5fWAsXHJcbiAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCB0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0pKTtcclxuICAgIGNvbnN0IFRhYlBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYgYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYDtcclxuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChTdHlsZWRUYWJzLCB7IHZhbHVlOiBzZWxlY3RlZFRhYkluZGV4LCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCBjaGlsZHJlbjogdGFicy5tYXAoKHRhYlBhbmVsLCBpbmRleCkgPT4gKF9qc3goU3R5bGVkVGFiLCB7IGxhYmVsOiB0YWJQYW5lbC5jYXB0aW9uLCBcImRhdGEtdGVzdGlkXCI6IHRhYlBhbmVsLnRlc3RJZCwgLi4uYTExeVByb3BzKGluZGV4KSB9LCBpbmRleCkpKSB9KSwgdGFiUGFuZWwgJiYgKF9qc3goVGFiUGFuZWwsIHsgdmFsdWU6IHNlbGVjdGVkVGFiSW5kZXgsIGluZGV4OiBzZWxlY3RlZFRhYkluZGV4LCBjaGlsZHJlbjogX2pzeChUYWJQYW5lbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29tcG9uZW50LCB7IC4uLmNvbXBvbmVudFByb3BzIH0pIH0pIH0pKV0gfSkpO1xyXG59XHJcbmV4cG9ydCB7IEN1c3RvbVRhYnMgYXMgVGFicyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1UYWJzLmpzLm1hcCJdfQ== */");
var TabPanelBox = _styled(Box, process.env.NODE_ENV === "production" ? {
  target: "e1fsnjs53"
} : {
  target: "e1fsnjs53",
  label: "TabPanelBox"
})(process.env.NODE_ENV === "production" ? {
  name: "jwg7h4",
  styles: "height:100%;width:100%;align-items:start"
} : {
  name: "jwg7h4",
  styles: "height:100%;width:100%;align-items:start",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBCb0IiLCJmaWxlIjoiVGFicy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBUYWJzLCBUYWIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IEJveCBmcm9tICdAbXVpL21hdGVyaWFsL0JveCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHNlbGVjdEN1cnJlbnRUYWJJbmRleCwgc2V0U2VsZWN0ZWRUYWJJbmRleCwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbGlicmFyeS9saWJyYXJ5U2xpY2VcIjtcclxuY29uc3QgVGFiUGFuZWxEaXYgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWVmMmY1JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgb3ZlcmZsb3dZOiAnYXV0bycsXHJcbn0pKTtcclxuY29uc3QgVGFiUGFuZWxCb3ggPSBzdHlsZWQoQm94KSh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBhbGlnbkl0ZW1zOiAnc3RhcnQnLFxyXG59KTtcclxuZnVuY3Rpb24gVGFiUGFuZWwoeyBjaGlsZHJlbiwgdmFsdWUsIGluZGV4IH0pIHtcclxuICAgIHJldHVybiAoX2pzeChUYWJQYW5lbERpdiwgeyByb2xlOiBcInRhYnBhbmVsXCIsIGhpZGRlbjogdmFsdWUgIT09IGluZGV4LCBpZDogaW5kZXgudG9TdHJpbmcoKSwgY2hpbGRyZW46IHZhbHVlID09PSBpbmRleCAmJiBfanN4KFRhYlBhbmVsQm94LCB7IGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gYTExeVByb3BzKGluZGV4KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXHJcbiAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBgc2ltcGxlLXRhYnBhbmVsLSR7aW5kZXh9YCxcclxuICAgIH07XHJcbn1cclxuZnVuY3Rpb24gQ3VzdG9tVGFicyhwcm9wcykge1xyXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VBcHBEaXNwYXRjaCgpO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRUYWJJbmRleCA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEN1cnJlbnRUYWJJbmRleCk7XHJcbiAgICBjb25zdCB7IHRhYnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgdGFiUGFuZWwgPSB0YWJzW3NlbGVjdGVkVGFiSW5kZXhdO1xyXG4gICAgY29uc3QgQ29tcG9uZW50ID0gdGFiUGFuZWw/LmNvbXBvbmVudDtcclxuICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gdGFiUGFuZWw/LnByb3BzO1xyXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKF9ldmVudCwgbmV3VGFiSW5kZXgpID0+IHtcclxuICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG5ld1RhYkluZGV4KSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgU3R5bGVkVGFicyA9IHN0eWxlZChUYWJzKSh7XHJcbiAgICAgICAgaGVpZ2h0OiAyNCxcclxuICAgICAgICBtaW5IZWlnaHQ6IDI0LFxyXG4gICAgICAgIGxpc3RTdHlsZVR5cGU6ICdub25lJyxcclxuICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAnJiAuTXVpVGFicy1pbmRpY2F0b3InOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcclxuICAgICAgICB9LFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBTdHlsZWRUYWIgPSBzdHlsZWQoVGFiKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgICAgIG1pbkhlaWdodDogMjQsXHJcbiAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgaGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRhYi5yZWd1bGFyLFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgbGlzdFN0eWxlVHlwZTogJ25vbmUnLFxyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmbGV4OiAnMSAxIGF1dG8nLFxyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCA0cHggMCAwJyxcclxuICAgICAgICAnJjpmaXJzdC1vZi10eXBlJzoge1xyXG4gICAgICAgICAgICBib3JkZXJMZWZ0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMCA0cHggMCAwICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XHJcbiAgICAgICAgICAgIGJvcmRlclJpZ2h0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4IDAgMCAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLnJlZ3VsYXIsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYuTXVpLXNlbGVjdGVkJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5wcmltYXJ5fWAsXHJcbiAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCB0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0pKTtcclxuICAgIGNvbnN0IFRhYlBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYgYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYDtcclxuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChTdHlsZWRUYWJzLCB7IHZhbHVlOiBzZWxlY3RlZFRhYkluZGV4LCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCBjaGlsZHJlbjogdGFicy5tYXAoKHRhYlBhbmVsLCBpbmRleCkgPT4gKF9qc3goU3R5bGVkVGFiLCB7IGxhYmVsOiB0YWJQYW5lbC5jYXB0aW9uLCBcImRhdGEtdGVzdGlkXCI6IHRhYlBhbmVsLnRlc3RJZCwgLi4uYTExeVByb3BzKGluZGV4KSB9LCBpbmRleCkpKSB9KSwgdGFiUGFuZWwgJiYgKF9qc3goVGFiUGFuZWwsIHsgdmFsdWU6IHNlbGVjdGVkVGFiSW5kZXgsIGluZGV4OiBzZWxlY3RlZFRhYkluZGV4LCBjaGlsZHJlbjogX2pzeChUYWJQYW5lbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29tcG9uZW50LCB7IC4uLmNvbXBvbmVudFByb3BzIH0pIH0pIH0pKV0gfSkpO1xyXG59XHJcbmV4cG9ydCB7IEN1c3RvbVRhYnMgYXMgVGFicyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1UYWJzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$B
});
function TabPanel(_ref) {
  var children = _ref.children,
    value = _ref.value,
    index = _ref.index;
  return jsx(TabPanelDiv, {
    role: "tabpanel",
    hidden: value !== index,
    id: index.toString(),
    children: value === index && jsx(TabPanelBox, {
      children: children
    })
  });
}
function a11yProps(index) {
  return {
    id: "simple-tab-".concat(index),
    'aria-controls': "simple-tabpanel-".concat(index)
  };
}
function CustomTabs(props) {
  var dispatch = useAppDispatch();
  var selectedTabIndex = useAppSelector(selectCurrentTabIndex);
  var tabs = props.tabs;
  var tabPanel = tabs[selectedTabIndex];
  var Component = tabPanel === null || tabPanel === void 0 ? void 0 : tabPanel.component;
  var componentProps = tabPanel === null || tabPanel === void 0 ? void 0 : tabPanel.props;
  var handleChange = function handleChange(_event, newTabIndex) {
    dispatch(setSelectedTabIndex(newTabIndex));
  };
  var StyledTabs = _styled(Tabs, process.env.NODE_ENV === "production" ? {
    target: "e1fsnjs52"
  } : {
    target: "e1fsnjs52",
    label: "StyledTabs"
  })(process.env.NODE_ENV === "production" ? {
    name: "1oug8xv",
    styles: "height:24px;min-height:24px;list-style-type:none;margin:0;padding:0;& .MuiTabs-indicator{display:none;}"
  } : {
    name: "1oug8xv",
    styles: "height:24px;min-height:24px;list-style-type:none;margin:0;padding:0;& .MuiTabs-indicator{display:none;}",
    map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtEdUIiLCJmaWxlIjoiVGFicy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBUYWJzLCBUYWIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IEJveCBmcm9tICdAbXVpL21hdGVyaWFsL0JveCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHNlbGVjdEN1cnJlbnRUYWJJbmRleCwgc2V0U2VsZWN0ZWRUYWJJbmRleCwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbGlicmFyeS9saWJyYXJ5U2xpY2VcIjtcclxuY29uc3QgVGFiUGFuZWxEaXYgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWVmMmY1JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgb3ZlcmZsb3dZOiAnYXV0bycsXHJcbn0pKTtcclxuY29uc3QgVGFiUGFuZWxCb3ggPSBzdHlsZWQoQm94KSh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBhbGlnbkl0ZW1zOiAnc3RhcnQnLFxyXG59KTtcclxuZnVuY3Rpb24gVGFiUGFuZWwoeyBjaGlsZHJlbiwgdmFsdWUsIGluZGV4IH0pIHtcclxuICAgIHJldHVybiAoX2pzeChUYWJQYW5lbERpdiwgeyByb2xlOiBcInRhYnBhbmVsXCIsIGhpZGRlbjogdmFsdWUgIT09IGluZGV4LCBpZDogaW5kZXgudG9TdHJpbmcoKSwgY2hpbGRyZW46IHZhbHVlID09PSBpbmRleCAmJiBfanN4KFRhYlBhbmVsQm94LCB7IGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gYTExeVByb3BzKGluZGV4KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXHJcbiAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBgc2ltcGxlLXRhYnBhbmVsLSR7aW5kZXh9YCxcclxuICAgIH07XHJcbn1cclxuZnVuY3Rpb24gQ3VzdG9tVGFicyhwcm9wcykge1xyXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VBcHBEaXNwYXRjaCgpO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRUYWJJbmRleCA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEN1cnJlbnRUYWJJbmRleCk7XHJcbiAgICBjb25zdCB7IHRhYnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgdGFiUGFuZWwgPSB0YWJzW3NlbGVjdGVkVGFiSW5kZXhdO1xyXG4gICAgY29uc3QgQ29tcG9uZW50ID0gdGFiUGFuZWw/LmNvbXBvbmVudDtcclxuICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gdGFiUGFuZWw/LnByb3BzO1xyXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKF9ldmVudCwgbmV3VGFiSW5kZXgpID0+IHtcclxuICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG5ld1RhYkluZGV4KSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgU3R5bGVkVGFicyA9IHN0eWxlZChUYWJzKSh7XHJcbiAgICAgICAgaGVpZ2h0OiAyNCxcclxuICAgICAgICBtaW5IZWlnaHQ6IDI0LFxyXG4gICAgICAgIGxpc3RTdHlsZVR5cGU6ICdub25lJyxcclxuICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAnJiAuTXVpVGFicy1pbmRpY2F0b3InOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcclxuICAgICAgICB9LFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBTdHlsZWRUYWIgPSBzdHlsZWQoVGFiKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgICAgIG1pbkhlaWdodDogMjQsXHJcbiAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgaGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRhYi5yZWd1bGFyLFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgbGlzdFN0eWxlVHlwZTogJ25vbmUnLFxyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmbGV4OiAnMSAxIGF1dG8nLFxyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCA0cHggMCAwJyxcclxuICAgICAgICAnJjpmaXJzdC1vZi10eXBlJzoge1xyXG4gICAgICAgICAgICBib3JkZXJMZWZ0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMCA0cHggMCAwICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XHJcbiAgICAgICAgICAgIGJvcmRlclJpZ2h0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4IDAgMCAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLnJlZ3VsYXIsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYuTXVpLXNlbGVjdGVkJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5wcmltYXJ5fWAsXHJcbiAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCB0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0pKTtcclxuICAgIGNvbnN0IFRhYlBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYgYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYDtcclxuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChTdHlsZWRUYWJzLCB7IHZhbHVlOiBzZWxlY3RlZFRhYkluZGV4LCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCBjaGlsZHJlbjogdGFicy5tYXAoKHRhYlBhbmVsLCBpbmRleCkgPT4gKF9qc3goU3R5bGVkVGFiLCB7IGxhYmVsOiB0YWJQYW5lbC5jYXB0aW9uLCBcImRhdGEtdGVzdGlkXCI6IHRhYlBhbmVsLnRlc3RJZCwgLi4uYTExeVByb3BzKGluZGV4KSB9LCBpbmRleCkpKSB9KSwgdGFiUGFuZWwgJiYgKF9qc3goVGFiUGFuZWwsIHsgdmFsdWU6IHNlbGVjdGVkVGFiSW5kZXgsIGluZGV4OiBzZWxlY3RlZFRhYkluZGV4LCBjaGlsZHJlbjogX2pzeChUYWJQYW5lbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29tcG9uZW50LCB7IC4uLmNvbXBvbmVudFByb3BzIH0pIH0pIH0pKV0gfSkpO1xyXG59XHJcbmV4cG9ydCB7IEN1c3RvbVRhYnMgYXMgVGFicyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1UYWJzLmpzLm1hcCJdfQ== */",
    toString: _EMOTION_STRINGIFIED_CSS_ERROR__$B
  });
  var StyledTab = _styled(Tab, process.env.NODE_ENV === "production" ? {
    target: "e1fsnjs51"
  } : {
    target: "e1fsnjs51",
    label: "StyledTab"
  })(function (_ref2) {
    var theme = _ref2.theme;
    return {
      minHeight: 24,
      minWidth: 0,
      height: 1,
      padding: 0,
      fontSize: theme.ketcher.font.size.regular,
      textTransform: 'none',
      cursor: 'pointer',
      textAlign: 'center',
      backgroundColor: theme.ketcher.color.tab.regular,
      color: theme.ketcher.color.text.light,
      listStyleType: 'none',
      margin: 0,
      flex: '1 1 auto',
      border: "1px solid transparent",
      borderBottom: "1px solid ".concat(theme.ketcher.color.border.primary),
      borderRadius: '4px 4px 0 0',
      '&:first-of-type': {
        borderLeftColor: 'transparent !important',
        borderRadius: '0 4px 0 0 '
      },
      '&:last-of-type': {
        borderRightColor: 'transparent !important',
        borderRadius: '4px 0 0 0'
      },
      '&:hover': {
        backgroundColor: theme.ketcher.color.tab.regular,
        color: theme.ketcher.color.text.primary,
        border: "1px solid ".concat(theme.ketcher.color.border.primary)
      },
      '&.Mui-selected': {
        backgroundColor: theme.ketcher.color.tab.active,
        color: theme.ketcher.color.text.primary,
        border: "1px solid ".concat(theme.ketcher.color.border.primary),
        borderBottom: '1px solid transparent'
      }
    };
  }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTREc0IiLCJmaWxlIjoiVGFicy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBUYWJzLCBUYWIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IEJveCBmcm9tICdAbXVpL21hdGVyaWFsL0JveCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHNlbGVjdEN1cnJlbnRUYWJJbmRleCwgc2V0U2VsZWN0ZWRUYWJJbmRleCwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbGlicmFyeS9saWJyYXJ5U2xpY2VcIjtcclxuY29uc3QgVGFiUGFuZWxEaXYgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWVmMmY1JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgb3ZlcmZsb3dZOiAnYXV0bycsXHJcbn0pKTtcclxuY29uc3QgVGFiUGFuZWxCb3ggPSBzdHlsZWQoQm94KSh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBhbGlnbkl0ZW1zOiAnc3RhcnQnLFxyXG59KTtcclxuZnVuY3Rpb24gVGFiUGFuZWwoeyBjaGlsZHJlbiwgdmFsdWUsIGluZGV4IH0pIHtcclxuICAgIHJldHVybiAoX2pzeChUYWJQYW5lbERpdiwgeyByb2xlOiBcInRhYnBhbmVsXCIsIGhpZGRlbjogdmFsdWUgIT09IGluZGV4LCBpZDogaW5kZXgudG9TdHJpbmcoKSwgY2hpbGRyZW46IHZhbHVlID09PSBpbmRleCAmJiBfanN4KFRhYlBhbmVsQm94LCB7IGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gYTExeVByb3BzKGluZGV4KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXHJcbiAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBgc2ltcGxlLXRhYnBhbmVsLSR7aW5kZXh9YCxcclxuICAgIH07XHJcbn1cclxuZnVuY3Rpb24gQ3VzdG9tVGFicyhwcm9wcykge1xyXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VBcHBEaXNwYXRjaCgpO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRUYWJJbmRleCA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEN1cnJlbnRUYWJJbmRleCk7XHJcbiAgICBjb25zdCB7IHRhYnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgdGFiUGFuZWwgPSB0YWJzW3NlbGVjdGVkVGFiSW5kZXhdO1xyXG4gICAgY29uc3QgQ29tcG9uZW50ID0gdGFiUGFuZWw/LmNvbXBvbmVudDtcclxuICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gdGFiUGFuZWw/LnByb3BzO1xyXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKF9ldmVudCwgbmV3VGFiSW5kZXgpID0+IHtcclxuICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG5ld1RhYkluZGV4KSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgU3R5bGVkVGFicyA9IHN0eWxlZChUYWJzKSh7XHJcbiAgICAgICAgaGVpZ2h0OiAyNCxcclxuICAgICAgICBtaW5IZWlnaHQ6IDI0LFxyXG4gICAgICAgIGxpc3RTdHlsZVR5cGU6ICdub25lJyxcclxuICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAnJiAuTXVpVGFicy1pbmRpY2F0b3InOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcclxuICAgICAgICB9LFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBTdHlsZWRUYWIgPSBzdHlsZWQoVGFiKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgICAgIG1pbkhlaWdodDogMjQsXHJcbiAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgaGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRhYi5yZWd1bGFyLFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgbGlzdFN0eWxlVHlwZTogJ25vbmUnLFxyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmbGV4OiAnMSAxIGF1dG8nLFxyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCA0cHggMCAwJyxcclxuICAgICAgICAnJjpmaXJzdC1vZi10eXBlJzoge1xyXG4gICAgICAgICAgICBib3JkZXJMZWZ0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMCA0cHggMCAwICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XHJcbiAgICAgICAgICAgIGJvcmRlclJpZ2h0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4IDAgMCAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLnJlZ3VsYXIsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYuTXVpLXNlbGVjdGVkJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5wcmltYXJ5fWAsXHJcbiAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCB0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0pKTtcclxuICAgIGNvbnN0IFRhYlBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYgYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYDtcclxuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChTdHlsZWRUYWJzLCB7IHZhbHVlOiBzZWxlY3RlZFRhYkluZGV4LCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCBjaGlsZHJlbjogdGFicy5tYXAoKHRhYlBhbmVsLCBpbmRleCkgPT4gKF9qc3goU3R5bGVkVGFiLCB7IGxhYmVsOiB0YWJQYW5lbC5jYXB0aW9uLCBcImRhdGEtdGVzdGlkXCI6IHRhYlBhbmVsLnRlc3RJZCwgLi4uYTExeVByb3BzKGluZGV4KSB9LCBpbmRleCkpKSB9KSwgdGFiUGFuZWwgJiYgKF9qc3goVGFiUGFuZWwsIHsgdmFsdWU6IHNlbGVjdGVkVGFiSW5kZXgsIGluZGV4OiBzZWxlY3RlZFRhYkluZGV4LCBjaGlsZHJlbjogX2pzeChUYWJQYW5lbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29tcG9uZW50LCB7IC4uLmNvbXBvbmVudFByb3BzIH0pIH0pIH0pKV0gfSkpO1xyXG59XHJcbmV4cG9ydCB7IEN1c3RvbVRhYnMgYXMgVGFicyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1UYWJzLmpzLm1hcCJdfQ== */");
  var TabPanelContent = _styled("div", process.env.NODE_ENV === "production" ? {
    target: "e1fsnjs50"
  } : {
    target: "e1fsnjs50",
    label: "TabPanelContent"
  })(process.env.NODE_ENV === "production" ? {
    name: "2r6rpv",
    styles: "display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;width:100%;height:100%"
  } : {
    name: "2r6rpv",
    styles: "display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;width:100%;height:100%",
    map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRhYnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlHdUMiLCJmaWxlIjoiVGFicy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBUYWJzLCBUYWIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IEJveCBmcm9tICdAbXVpL21hdGVyaWFsL0JveCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHNlbGVjdEN1cnJlbnRUYWJJbmRleCwgc2V0U2VsZWN0ZWRUYWJJbmRleCwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbGlicmFyeS9saWJyYXJ5U2xpY2VcIjtcclxuY29uc3QgVGFiUGFuZWxEaXYgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWVmMmY1JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgb3ZlcmZsb3dZOiAnYXV0bycsXHJcbn0pKTtcclxuY29uc3QgVGFiUGFuZWxCb3ggPSBzdHlsZWQoQm94KSh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBhbGlnbkl0ZW1zOiAnc3RhcnQnLFxyXG59KTtcclxuZnVuY3Rpb24gVGFiUGFuZWwoeyBjaGlsZHJlbiwgdmFsdWUsIGluZGV4IH0pIHtcclxuICAgIHJldHVybiAoX2pzeChUYWJQYW5lbERpdiwgeyByb2xlOiBcInRhYnBhbmVsXCIsIGhpZGRlbjogdmFsdWUgIT09IGluZGV4LCBpZDogaW5kZXgudG9TdHJpbmcoKSwgY2hpbGRyZW46IHZhbHVlID09PSBpbmRleCAmJiBfanN4KFRhYlBhbmVsQm94LCB7IGNoaWxkcmVuOiBjaGlsZHJlbiB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gYTExeVByb3BzKGluZGV4KSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGlkOiBgc2ltcGxlLXRhYi0ke2luZGV4fWAsXHJcbiAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBgc2ltcGxlLXRhYnBhbmVsLSR7aW5kZXh9YCxcclxuICAgIH07XHJcbn1cclxuZnVuY3Rpb24gQ3VzdG9tVGFicyhwcm9wcykge1xyXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VBcHBEaXNwYXRjaCgpO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWRUYWJJbmRleCA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEN1cnJlbnRUYWJJbmRleCk7XHJcbiAgICBjb25zdCB7IHRhYnMgfSA9IHByb3BzO1xyXG4gICAgY29uc3QgdGFiUGFuZWwgPSB0YWJzW3NlbGVjdGVkVGFiSW5kZXhdO1xyXG4gICAgY29uc3QgQ29tcG9uZW50ID0gdGFiUGFuZWw/LmNvbXBvbmVudDtcclxuICAgIGNvbnN0IGNvbXBvbmVudFByb3BzID0gdGFiUGFuZWw/LnByb3BzO1xyXG4gICAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKF9ldmVudCwgbmV3VGFiSW5kZXgpID0+IHtcclxuICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG5ld1RhYkluZGV4KSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgU3R5bGVkVGFicyA9IHN0eWxlZChUYWJzKSh7XHJcbiAgICAgICAgaGVpZ2h0OiAyNCxcclxuICAgICAgICBtaW5IZWlnaHQ6IDI0LFxyXG4gICAgICAgIGxpc3RTdHlsZVR5cGU6ICdub25lJyxcclxuICAgICAgICBtYXJnaW46IDAsXHJcbiAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAnJiAuTXVpVGFicy1pbmRpY2F0b3InOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJyxcclxuICAgICAgICB9LFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBTdHlsZWRUYWIgPSBzdHlsZWQoVGFiKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgICAgIG1pbkhlaWdodDogMjQsXHJcbiAgICAgICAgbWluV2lkdGg6IDAsXHJcbiAgICAgICAgaGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICAgICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRhYi5yZWd1bGFyLFxyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgbGlzdFN0eWxlVHlwZTogJ25vbmUnLFxyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmbGV4OiAnMSAxIGF1dG8nLFxyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCB0cmFuc3BhcmVudGAsXHJcbiAgICAgICAgYm9yZGVyQm90dG9tOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCA0cHggMCAwJyxcclxuICAgICAgICAnJjpmaXJzdC1vZi10eXBlJzoge1xyXG4gICAgICAgICAgICBib3JkZXJMZWZ0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMCA0cHggMCAwICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XHJcbiAgICAgICAgICAgIGJvcmRlclJpZ2h0Q29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4IDAgMCAwJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLnJlZ3VsYXIsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5ib3JkZXIucHJpbWFyeX1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJyYuTXVpLXNlbGVjdGVkJzoge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGFiLmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5wcmltYXJ5fWAsXHJcbiAgICAgICAgICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCB0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0pKTtcclxuICAgIGNvbnN0IFRhYlBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXYgYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgYDtcclxuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChTdHlsZWRUYWJzLCB7IHZhbHVlOiBzZWxlY3RlZFRhYkluZGV4LCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCBjaGlsZHJlbjogdGFicy5tYXAoKHRhYlBhbmVsLCBpbmRleCkgPT4gKF9qc3goU3R5bGVkVGFiLCB7IGxhYmVsOiB0YWJQYW5lbC5jYXB0aW9uLCBcImRhdGEtdGVzdGlkXCI6IHRhYlBhbmVsLnRlc3RJZCwgLi4uYTExeVByb3BzKGluZGV4KSB9LCBpbmRleCkpKSB9KSwgdGFiUGFuZWwgJiYgKF9qc3goVGFiUGFuZWwsIHsgdmFsdWU6IHNlbGVjdGVkVGFiSW5kZXgsIGluZGV4OiBzZWxlY3RlZFRhYkluZGV4LCBjaGlsZHJlbjogX2pzeChUYWJQYW5lbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29tcG9uZW50LCB7IC4uLmNvbXBvbmVudFByb3BzIH0pIH0pIH0pKV0gfSkpO1xyXG59XHJcbmV4cG9ydCB7IEN1c3RvbVRhYnMgYXMgVGFicyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1UYWJzLmpzLm1hcCJdfQ== */",
    toString: _EMOTION_STRINGIFIED_CSS_ERROR__$B
  });
  return jsxs(Fragment, {
    children: [jsx(StyledTabs, {
      value: selectedTabIndex,
      onChange: handleChange,
      children: tabs.map(function (tabPanel, index) {
        return jsx(StyledTab, _objectSpread$g({
          label: tabPanel.caption,
          "data-testid": tabPanel.testId
        }, a11yProps(index)), index);
      })
    }), tabPanel && jsx(TabPanel, {
      value: selectedTabIndex,
      index: selectedTabIndex,
      children: jsx(TabPanelContent, {
        children: jsx(Component, _objectSpread$g({}, componentProps))
      })
    })]
  });
}

var EmptyFunction = function EmptyFunction() {};

function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var getPresets = function getPresets(monomers, rnaPresetsTemplates, isDefault) {
  var monomerLibraryItemByMonomerIDMap = new Map(monomers.map(function (monomer) {
    var monomerID = isAmbiguousMonomerLibraryItem(monomer) ? setAmbiguousMonomerTemplatePrefix(monomer.id) : setMonomerTemplatePrefix(getMonomerUniqueKey(monomer));
    return [monomerID, monomer];
  }));
  return rnaPresetsTemplates.filter(function (rnaPresetsTemplate) {
    return rnaPresetsTemplate.templates.every(function (rnaPartsMonomerTemplateRef) {
      return Boolean(monomerLibraryItemByMonomerIDMap.get(rnaPartsMonomerTemplateRef.$ref));
    });
  }).map(function (rnaPresetsTemplate) {
    var rnaPartsMonomerLibraryItemByMonomerClassMap = new Map(rnaPresetsTemplate.templates.map(function (rnaPartsMonomerTemplateRef) {
      var monomer = monomerLibraryItemByMonomerIDMap.get(rnaPartsMonomerTemplateRef.$ref);
      var _monomerFactory = monomerFactory(monomer),
        _monomerFactory2 = _slicedToArray(_monomerFactory, 3),
        monomerClass = _monomerFactory2[2];
      return [monomerClass, monomer];
    }));
    var ribose = rnaPartsMonomerLibraryItemByMonomerClassMap.get(KetMonomerClass.Sugar);
    var rnaBase = rnaPartsMonomerLibraryItemByMonomerClassMap.get(KetMonomerClass.Base);
    var phosphate = rnaPartsMonomerLibraryItemByMonomerClassMap.get(KetMonomerClass.Phosphate);
    var result = {
      base: rnaBase ? _objectSpread$f(_objectSpread$f({}, rnaBase), {}, {
        label: rnaBase.label
      }) : undefined,
      name: rnaPresetsTemplate.name,
      phosphate: phosphate ? _objectSpread$f(_objectSpread$f({}, phosphate), {}, {
        label: phosphate.label
      }) : undefined,
      sugar: ribose ? _objectSpread$f(_objectSpread$f({}, ribose), {}, {
        label: ribose.label
      }) : undefined,
      favorite: rnaPresetsTemplate.favorite,
      "default": isDefault || rnaPresetsTemplate["default"]
    };
    if (!rnaPresetsTemplate.idtAliases) {
      return result;
    }
    return _objectSpread$f(_objectSpread$f({}, result), {}, {
      idtAliases: rnaPresetsTemplate.idtAliases
    });
  });
};

var getConnectedAttachmentPoints = function getConnectedAttachmentPoints(bonds) {
  return Object.entries(bonds).filter(function (_ref) {
    var _ref2 = _slicedToArray(_ref, 2);
      _ref2[0];
      var bond = _ref2[1];
    return Boolean(bond);
  }).map(function (_ref3) {
    var _ref4 = _slicedToArray(_ref3, 1),
      attachmentPoint = _ref4[0];
    return attachmentPoint;
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$A() { 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)."; }
var Card$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e719szw2"
} : {
  target: "e719szw2",
  label: "Card"
})("background:white;height:48px;text-align:center;cursor:", function (_ref) {
  var disabled = _ref.disabled;
  return disabled ? 'default' : 'pointer';
}, ";opacity:", function (_ref2) {
  var disabled = _ref2.disabled;
  return disabled ? '0.4' : '1';
}, ";display:flex;justify-content:space-between;align-items:center;padding:0 5px;font-size:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.font.size.small;
}, ";color:", function (_ref4) {
  var theme = _ref4.theme;
  return theme.ketcher.color.text.primary;
}, ";position:relative;overflow:hidden;border-radius:4px;box-shadow:0 2px 4px rgba(0, 0, 0, 0.15);margin:0;user-select:none;border-color:#167782;border-width:", function (_ref5) {
  var selected = _ref5.selected;
  return selected ? '2px 2px 2px' : '0px';
}, ";border-style:solid;box-sizing:border-box;z-index:", function (_ref6) {
  var selected = _ref6.selected;
  return selected ? 2 : undefined;
}, ";.hidden & .star{visibility:hidden!important;}&:hover{outline:1px solid #b4b9d6;>.star{visibility:visible;opacity:1;}}&::after{content:'';display:block;position:absolute;top:0;left:0;width:100%;height:8px;border-bottom:", function (_ref7) {
  var isVariantMonomer = _ref7.isVariantMonomer;
  return isVariantMonomer ? '1px solid #CAD3DD' : 'none';
}, ";background:", function (_ref8) {
  var _theme$ketcher$monome, _monomerItem$props, _theme$ketcher$peptid, _theme$ketcher$monome2, _theme$ketcher$monome3;
  var code = _ref8.code,
    theme = _ref8.theme,
    item = _ref8.item;
  if (!item) return (_theme$ketcher$monome = theme.ketcher.monomer.color["default"]) === null || _theme$ketcher$monome === void 0 ? void 0 : _theme$ketcher$monome.regular;
  var monomerItem = item;
  var isPeptideTab = ((_monomerItem$props = monomerItem.props) === null || _monomerItem$props === void 0 ? void 0 : _monomerItem$props.MonomerType) === 'PEPTIDE';
  if (isPeptideTab && (_theme$ketcher$peptid = theme.ketcher.peptide.color[code]) !== null && _theme$ketcher$peptid !== void 0 && _theme$ketcher$peptid.regular) {
    var _theme$ketcher$peptid2;
    return (_theme$ketcher$peptid2 = theme.ketcher.peptide.color[code]) === null || _theme$ketcher$peptid2 === void 0 ? void 0 : _theme$ketcher$peptid2.regular;
  }
  var monomerColor = ((_theme$ketcher$monome2 = theme.ketcher.monomer.color[code]) === null || _theme$ketcher$monome2 === void 0 ? void 0 : _theme$ketcher$monome2.regular) || ((_theme$ketcher$monome3 = theme.ketcher.monomer.color["default"]) === null || _theme$ketcher$monome3 === void 0 ? void 0 : _theme$ketcher$monome3.regular);
  return monomerColor;
}, ";},>span{position:absolute;bottom:", function (_ref9) {
  var selected = _ref9.selected;
  return selected ? '4px' : '6px';
}, ";left:", function (_ref10) {
  var selected = _ref10.selected;
  return selected ? '4px' : '6px';
}, ";overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:85%;}>.star{color:#e1e5ea;position:absolute;top:12px;right:3px;font-size:15px;opacity:0;transition:0.2s ease;flex-shrink:0;&.visible{visibility:visible;opacity:1;}&:active{transform:scale(1.4);}&:hover,&.visible{color:#faa500;}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQitCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBDYXJkID0gc3R5bGVkLmRpdiBgXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICdkZWZhdWx0JyA6ICdwb2ludGVyJyl9O1xuICBvcGFjaXR5OiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICcwLjQnIDogJzEnKX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBtYXJnaW46IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXItY29sb3I6ICMxNjc3ODI7XG4gIGJvcmRlci13aWR0aDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnMnB4IDJweCAycHgnIDogJzBweCcpfTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgei1pbmRleDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAyIDogdW5kZWZpbmVkKX07XG5cbiAgLmhpZGRlbiAmIC5zdGFyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAjYjRiOWQ2O1xuICAgID4gLnN0YXIge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogJHsoeyBpc1ZhcmlhbnRNb25vbWVyIH0pID0+IGlzVmFyaWFudE1vbm9tZXIgPyAnMXB4IHNvbGlkICNDQUQzREQnIDogJ25vbmUnfTtcbiAgICBiYWNrZ3JvdW5kOiAkeyh7IGNvZGUsIHRoZW1lLCBpdGVtIH0pID0+IHtcclxuICAgIGlmICghaXRlbSlcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICBjb25zdCBtb25vbWVySXRlbSA9IGl0ZW07XHJcbiAgICBjb25zdCBpc1BlcHRpZGVUYWIgPSBtb25vbWVySXRlbS5wcm9wcz8uTW9ub21lclR5cGUgPT09ICdQRVBUSURFJztcclxuICAgIGlmIChpc1BlcHRpZGVUYWIgJiZcclxuICAgICAgICB0aGVtZS5rZXRjaGVyLnBlcHRpZGUuY29sb3JbY29kZV0/LnJlZ3VsYXIpIHtcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5wZXB0aWRlLmNvbG9yW2NvZGVdPy5yZWd1bGFyO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbW9ub21lckNvbG9yID0gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yW2NvZGVdPy5yZWd1bGFyIHx8XHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICByZXR1cm4gbW9ub21lckNvbG9yO1xyXG59fTtcbiAgfVxuICAsXG4gID4gc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgbGVmdDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogODUlO1xuICB9XG4gID4gLnN0YXIge1xuICAgIGNvbG9yOiAjZTFlNWVhO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEycHg7XG4gICAgcmlnaHQ6IDNweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgJi52aXNpYmxlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJi52aXNpYmxlIHtcbiAgICAgIGNvbG9yOiAjZmFhNTAwO1xuICAgIH1cbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE51bWJlckNpcmNsZSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxNXB4O1xuICB3aWR0aDogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiAobW9ub21lcnNBbW91bnQgPj0gMTAgPyAnMjBweCcgOiAnMTVweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiBtb25vbWVyc0Ftb3VudCA+PSAxMCA/ICcyMHB4JyA6ICc1MCUnfTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjZWFlZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206ICR7KHsgc2VsZWN0ZWQgfSkgPT4gKHNlbGVjdGVkID8gJzRweCcgOiAnNnB4Jyl9O1xuICBsZWZ0OiAkeyh7IHNlbGVjdGVkIH0pID0+IChzZWxlY3RlZCA/ICcxOHB4JyA6ICcyMHB4Jyl9O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhcmRUaXRsZSA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC1zaXplOiAxMnB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));
var NumberCircle = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e719szw1"
} : {
  target: "e719szw1",
  label: "NumberCircle"
})("display:flex;justify-content:center;align-items:center;height:15px;width:", function (_ref11) {
  var monomersAmount = _ref11.monomersAmount;
  return monomersAmount >= 10 ? '20px' : '15px';
}, ";border-radius:", function (_ref12) {
  var monomersAmount = _ref12.monomersAmount;
  return monomersAmount >= 10 ? '20px' : '50%';
}, ";border:1px solid #cceaee;position:absolute;bottom:", function (_ref13) {
  var selected = _ref13.selected;
  return selected ? '4px' : '6px';
}, ";left:", function (_ref14) {
  var selected = _ref14.selected;
  return selected ? '18px' : '20px';
}, ";font-size:12px;line-height:12px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwR3VDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBDYXJkID0gc3R5bGVkLmRpdiBgXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICdkZWZhdWx0JyA6ICdwb2ludGVyJyl9O1xuICBvcGFjaXR5OiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICcwLjQnIDogJzEnKX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBtYXJnaW46IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXItY29sb3I6ICMxNjc3ODI7XG4gIGJvcmRlci13aWR0aDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnMnB4IDJweCAycHgnIDogJzBweCcpfTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgei1pbmRleDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAyIDogdW5kZWZpbmVkKX07XG5cbiAgLmhpZGRlbiAmIC5zdGFyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAjYjRiOWQ2O1xuICAgID4gLnN0YXIge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogJHsoeyBpc1ZhcmlhbnRNb25vbWVyIH0pID0+IGlzVmFyaWFudE1vbm9tZXIgPyAnMXB4IHNvbGlkICNDQUQzREQnIDogJ25vbmUnfTtcbiAgICBiYWNrZ3JvdW5kOiAkeyh7IGNvZGUsIHRoZW1lLCBpdGVtIH0pID0+IHtcclxuICAgIGlmICghaXRlbSlcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICBjb25zdCBtb25vbWVySXRlbSA9IGl0ZW07XHJcbiAgICBjb25zdCBpc1BlcHRpZGVUYWIgPSBtb25vbWVySXRlbS5wcm9wcz8uTW9ub21lclR5cGUgPT09ICdQRVBUSURFJztcclxuICAgIGlmIChpc1BlcHRpZGVUYWIgJiZcclxuICAgICAgICB0aGVtZS5rZXRjaGVyLnBlcHRpZGUuY29sb3JbY29kZV0/LnJlZ3VsYXIpIHtcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5wZXB0aWRlLmNvbG9yW2NvZGVdPy5yZWd1bGFyO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbW9ub21lckNvbG9yID0gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yW2NvZGVdPy5yZWd1bGFyIHx8XHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICByZXR1cm4gbW9ub21lckNvbG9yO1xyXG59fTtcbiAgfVxuICAsXG4gID4gc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgbGVmdDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogODUlO1xuICB9XG4gID4gLnN0YXIge1xuICAgIGNvbG9yOiAjZTFlNWVhO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEycHg7XG4gICAgcmlnaHQ6IDNweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgJi52aXNpYmxlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJi52aXNpYmxlIHtcbiAgICAgIGNvbG9yOiAjZmFhNTAwO1xuICAgIH1cbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE51bWJlckNpcmNsZSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxNXB4O1xuICB3aWR0aDogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiAobW9ub21lcnNBbW91bnQgPj0gMTAgPyAnMjBweCcgOiAnMTVweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiBtb25vbWVyc0Ftb3VudCA+PSAxMCA/ICcyMHB4JyA6ICc1MCUnfTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjZWFlZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206ICR7KHsgc2VsZWN0ZWQgfSkgPT4gKHNlbGVjdGVkID8gJzRweCcgOiAnNnB4Jyl9O1xuICBsZWZ0OiAkeyh7IHNlbGVjdGVkIH0pID0+IChzZWxlY3RlZCA/ICcxOHB4JyA6ICcyMHB4Jyl9O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhcmRUaXRsZSA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC1zaXplOiAxMnB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));
var CardTitle = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e719szw0"
} : {
  target: "e719szw0",
  label: "CardTitle"
})(process.env.NODE_ENV === "production" ? {
  name: "rnnx2x",
  styles: "font-size:12px"
} : {
  name: "rnnx2x",
  styles: "font-size:12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3SHFDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBDYXJkID0gc3R5bGVkLmRpdiBgXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICdkZWZhdWx0JyA6ICdwb2ludGVyJyl9O1xuICBvcGFjaXR5OiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICcwLjQnIDogJzEnKX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbH07XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBtYXJnaW46IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXItY29sb3I6ICMxNjc3ODI7XG4gIGJvcmRlci13aWR0aDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnMnB4IDJweCAycHgnIDogJzBweCcpfTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgei1pbmRleDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAyIDogdW5kZWZpbmVkKX07XG5cbiAgLmhpZGRlbiAmIC5zdGFyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAjYjRiOWQ2O1xuICAgID4gLnN0YXIge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogJHsoeyBpc1ZhcmlhbnRNb25vbWVyIH0pID0+IGlzVmFyaWFudE1vbm9tZXIgPyAnMXB4IHNvbGlkICNDQUQzREQnIDogJ25vbmUnfTtcbiAgICBiYWNrZ3JvdW5kOiAkeyh7IGNvZGUsIHRoZW1lLCBpdGVtIH0pID0+IHtcclxuICAgIGlmICghaXRlbSlcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICBjb25zdCBtb25vbWVySXRlbSA9IGl0ZW07XHJcbiAgICBjb25zdCBpc1BlcHRpZGVUYWIgPSBtb25vbWVySXRlbS5wcm9wcz8uTW9ub21lclR5cGUgPT09ICdQRVBUSURFJztcclxuICAgIGlmIChpc1BlcHRpZGVUYWIgJiZcclxuICAgICAgICB0aGVtZS5rZXRjaGVyLnBlcHRpZGUuY29sb3JbY29kZV0/LnJlZ3VsYXIpIHtcclxuICAgICAgICByZXR1cm4gdGhlbWUua2V0Y2hlci5wZXB0aWRlLmNvbG9yW2NvZGVdPy5yZWd1bGFyO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbW9ub21lckNvbG9yID0gdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yW2NvZGVdPy5yZWd1bGFyIHx8XHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5tb25vbWVyLmNvbG9yLmRlZmF1bHQ/LnJlZ3VsYXI7XHJcbiAgICByZXR1cm4gbW9ub21lckNvbG9yO1xyXG59fTtcbiAgfVxuICAsXG4gID4gc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgbGVmdDogJHsoeyBzZWxlY3RlZCB9KSA9PiAoc2VsZWN0ZWQgPyAnNHB4JyA6ICc2cHgnKX07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogODUlO1xuICB9XG4gID4gLnN0YXIge1xuICAgIGNvbG9yOiAjZTFlNWVhO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEycHg7XG4gICAgcmlnaHQ6IDNweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgJi52aXNpYmxlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJi52aXNpYmxlIHtcbiAgICAgIGNvbG9yOiAjZmFhNTAwO1xuICAgIH1cbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE51bWJlckNpcmNsZSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxNXB4O1xuICB3aWR0aDogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiAobW9ub21lcnNBbW91bnQgPj0gMTAgPyAnMjBweCcgOiAnMTVweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyBtb25vbWVyc0Ftb3VudCB9KSA9PiBtb25vbWVyc0Ftb3VudCA+PSAxMCA/ICcyMHB4JyA6ICc1MCUnfTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjZWFlZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206ICR7KHsgc2VsZWN0ZWQgfSkgPT4gKHNlbGVjdGVkID8gJzRweCcgOiAnNnB4Jyl9O1xuICBsZWZ0OiAkeyh7IHNlbGVjdGVkIH0pID0+IChzZWxlY3RlZCA/ICcxOHB4JyA6ICcyMHB4Jyl9O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhcmRUaXRsZSA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC1zaXplOiAxMnB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$A
});

var useDisabledForSequenceMode = function useDisabledForSequenceMode(item, groupName) {
  var _item$props9, _item$props10, _item$props11;
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var isSequenceFirstsOnlyNucleoelementsSelected = useSelector(selectIsSequenceFirstsOnlyNucleotidesSelected);
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    isDisabled = _useState2[0],
    setIsDisabled = _useState2[1];
  useEffect(function () {
    if (!isSequenceEditInRNABuilderMode) return setIsDisabled(false);
    if (groupName === MonomerGroups$1.BASES) {
      var _item$props;
      setIsDisabled(!(item !== null && item !== void 0 && (_item$props = item.props) !== null && _item$props !== void 0 && (_item$props = _item$props.MonomerCaps) !== null && _item$props !== void 0 && _item$props.R1));
    } else if (groupName === MonomerGroups$1.PHOSPHATES) {
      var _item$props2, _item$props3;
      setIsDisabled(!(item !== null && item !== void 0 && (_item$props2 = item.props) !== null && _item$props2 !== void 0 && (_item$props2 = _item$props2.MonomerCaps) !== null && _item$props2 !== void 0 && _item$props2.R1 && item !== null && item !== void 0 && (_item$props3 = item.props) !== null && _item$props3 !== void 0 && (_item$props3 = _item$props3.MonomerCaps) !== null && _item$props3 !== void 0 && _item$props3.R2));
    } else if (groupName === MonomerGroups$1.SUGARS) {
      if (isSequenceFirstsOnlyNucleoelementsSelected) {
        var _item$props4, _item$props5;
        setIsDisabled(!(item !== null && item !== void 0 && (_item$props4 = item.props) !== null && _item$props4 !== void 0 && (_item$props4 = _item$props4.MonomerCaps) !== null && _item$props4 !== void 0 && _item$props4.R3 && item !== null && item !== void 0 && (_item$props5 = item.props) !== null && _item$props5 !== void 0 && (_item$props5 = _item$props5.MonomerCaps) !== null && _item$props5 !== void 0 && _item$props5.R2));
      } else {
        var _item$props6, _item$props7, _item$props8;
        setIsDisabled(!(item !== null && item !== void 0 && (_item$props6 = item.props) !== null && _item$props6 !== void 0 && (_item$props6 = _item$props6.MonomerCaps) !== null && _item$props6 !== void 0 && _item$props6.R3 && item !== null && item !== void 0 && (_item$props7 = item.props) !== null && _item$props7 !== void 0 && (_item$props7 = _item$props7.MonomerCaps) !== null && _item$props7 !== void 0 && _item$props7.R2 && item !== null && item !== void 0 && (_item$props8 = item.props) !== null && _item$props8 !== void 0 && (_item$props8 = _item$props8.MonomerCaps) !== null && _item$props8 !== void 0 && _item$props8.R1));
      }
    }
  }, [groupName, isSequenceEditInRNABuilderMode, isSequenceFirstsOnlyNucleoelementsSelected, item === null || item === void 0 || (_item$props9 = item.props) === null || _item$props9 === void 0 || (_item$props9 = _item$props9.MonomerCaps) === null || _item$props9 === void 0 ? void 0 : _item$props9.R1, item === null || item === void 0 || (_item$props10 = item.props) === null || _item$props10 === void 0 || (_item$props10 = _item$props10.MonomerCaps) === null || _item$props10 === void 0 ? void 0 : _item$props10.R2, item === null || item === void 0 || (_item$props11 = item.props) === null || _item$props11 === void 0 || (_item$props11 = _item$props11.MonomerCaps) === null || _item$props11 === void 0 ? void 0 : _item$props11.R3, setIsDisabled]);
  return isDisabled;
};

function ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var MonomerItem = function MonomerItem(_ref) {
  var item = _ref.item,
    groupName = _ref.groupName,
    onMouseLeave = _ref.onMouseLeave,
    onMouseMove = _ref.onMouseMove,
    isSelected = _ref.isSelected,
    disabled = _ref.disabled,
    _ref$onClick = _ref.onClick,
    onClick = _ref$onClick === void 0 ? EmptyFunction : _ref$onClick;
  var _useState = useState(item.favorite),
    _useState2 = _slicedToArray(_useState, 2),
    favorite = _useState2[0],
    setFavorite = _useState2[1];
  var dispatch = useAppDispatch();
  var isDisabled = useDisabledForSequenceMode(item, groupName) || disabled;
  var colorCode = isAmbiguousMonomerLibraryItem(item) ? '' : item.props.MonomerType === MONOMER_TYPES.CHEM ? item.props.MonomerType : item.props.MonomerNaturalAnalogCode;
  var monomerKey = getMonomerUniqueKey(item);
  var monomerItem = isAmbiguousMonomerLibraryItem(item) ? undefined : item;
  return jsxs(Card$1, _objectSpread$e(_objectSpread$e({
    selected: isSelected,
    disabled: isDisabled,
    "data-testid": monomerKey,
    "data-monomer-item-id": monomerKey,
    item: monomerItem,
    isVariantMonomer: item.isAmbiguous,
    code: colorCode,
    onMouseLeave: onMouseLeave,
    onMouseMove: onMouseMove
  }, !isDisabled ? {
    onClick: onClick
  } : {}), {}, {
    children: [jsx(CardTitle, {
      children: item.label
    }), !isDisabled && jsx("div", {
      onClick: function onClick(event) {
        event.stopPropagation();
        setFavorite(!favorite);
        dispatch(toggleMonomerFavorites(item));
      },
      className: "star ".concat(favorite ? 'visible' : ''),
      children: "\u2605"
    }), isAmbiguousMonomerLibraryItem(item) && jsx(NumberCircle, {
      selected: isSelected,
      monomersAmount: item.monomers.length,
      children: item.monomers.length
    })]
  }));
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$z() { 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)."; }
var ItemsContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e10tnh3n3"
} : {
  target: "e10tnh3n3",
  label: "ItemsContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "183ulj8",
  styles: "display:grid;grid-template-columns:repeat(3, 1fr);grid-template-rows:auto;flex:1;gap:8px;&::after{content:'';flex:auto;}"
} : {
  name: "183ulj8",
  styles: "display:grid;grid-template-columns:repeat(3, 1fr);grid-template-rows:auto;flex:1;gap:8px;&::after{content:'';flex:auto;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQnlDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBJdGVtc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGZsZXg6IDE7XG4gIGdhcDogOHB4O1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmbGV4OiBhdXRvO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBDb250YWluZXJSb3cgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsfTtcbiAgZm9udC1mYW1pbHk6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5yb2JvdG99O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuICBtYXJnaW46IDA7XG4gIGdhcDogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEdyb3VwQ29udGFpbmVyQ29sdW1uID0gc3R5bGVkKEdyb3VwQ29udGFpbmVyUm93KSBgXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBUaXRsZSA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1iYXNpczogMTRweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBmb250LWZhbWlseTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LnJvYm90b307XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgbWFyZ2luOiAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$z
});
var GroupContainerRow = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e10tnh3n2"
} : {
  target: "e10tnh3n2",
  label: "GroupContainerRow"
})("position:relative;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;font-size:", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.font.size.small;
}, ";font-family:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.font.family.roboto;
}, ";color:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.color.divider;
}, ";margin:0;gap:8px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QjRDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBJdGVtc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGZsZXg6IDE7XG4gIGdhcDogOHB4O1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmbGV4OiBhdXRvO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBDb250YWluZXJSb3cgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsfTtcbiAgZm9udC1mYW1pbHk6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5yb2JvdG99O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuICBtYXJnaW46IDA7XG4gIGdhcDogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEdyb3VwQ29udGFpbmVyQ29sdW1uID0gc3R5bGVkKEdyb3VwQ29udGFpbmVyUm93KSBgXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBUaXRsZSA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1iYXNpczogMTRweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBmb250LWZhbWlseTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LnJvYm90b307XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgbWFyZ2luOiAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));
var GroupContainerColumn = _styled(GroupContainerRow, process.env.NODE_ENV === "production" ? {
  target: "e10tnh3n1"
} : {
  target: "e10tnh3n1",
  label: "GroupContainerColumn"
})(process.env.NODE_ENV === "production" ? {
  name: "qdeacm",
  styles: "flex-direction:column"
} : {
  name: "qdeacm",
  styles: "flex-direction:column",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QzhEIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBJdGVtc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGZsZXg6IDE7XG4gIGdhcDogOHB4O1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmbGV4OiBhdXRvO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBDb250YWluZXJSb3cgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsfTtcbiAgZm9udC1mYW1pbHk6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5yb2JvdG99O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuICBtYXJnaW46IDA7XG4gIGdhcDogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEdyb3VwQ29udGFpbmVyQ29sdW1uID0gc3R5bGVkKEdyb3VwQ29udGFpbmVyUm93KSBgXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBUaXRsZSA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1iYXNpczogMTRweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBmb250LWZhbWlseTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LnJvYm90b307XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgbWFyZ2luOiAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$z
});
var GroupTitle = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e10tnh3n0"
} : {
  target: "e10tnh3n0",
  label: "GroupTitle"
})("height:100%;display:flex;flex-grow:0;flex-basis:14px;flex-direction:column;flex-wrap:wrap;justify-content:flex-start;font-size:", function (_ref4) {
  var theme = _ref4.theme;
  return theme.ketcher.font.size.medium;
}, ";font-family:", function (_ref5) {
  var theme = _ref5.theme;
  return theme.ketcher.font.family.roboto;
}, ";color:", function (_ref6) {
  var theme = _ref6.theme;
  return theme.ketcher.color.text.primary;
}, ";margin:0;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ3FDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBJdGVtc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIGZsZXg6IDE7XG4gIGdhcDogOHB4O1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmbGV4OiBhdXRvO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBDb250YWluZXJSb3cgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsfTtcbiAgZm9udC1mYW1pbHk6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5yb2JvdG99O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuICBtYXJnaW46IDA7XG4gIGdhcDogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEdyb3VwQ29udGFpbmVyQ29sdW1uID0gc3R5bGVkKEdyb3VwQ29udGFpbmVyUm93KSBgXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5gO1xyXG5leHBvcnQgY29uc3QgR3JvdXBUaXRsZSA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1iYXNpczogMTRweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBmb250LWZhbWlseTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LnJvYm90b307XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgbWFyZ2luOiAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));

var MonomerGroup = function MonomerGroup(_ref) {
  var items = _ref.items,
    title = _ref.title,
    groupName = _ref.groupName,
    selectedMonomerUniqueKey = _ref.selectedMonomerUniqueKey,
    libraryName = _ref.libraryName,
    disabled = _ref.disabled,
    _ref$onItemClick = _ref.onItemClick,
    onItemClick = _ref$onItemClick === void 0 ? EmptyFunction : _ref$onItemClick;
  var dispatch = useAppDispatch();
  var editor = useAppSelector(selectEditor);
  var activeGroupItemValidations = useAppSelector(selectGroupItemValidations);
  var isMonomerDisabled = function isMonomerDisabled(monomer) {
    var monomerDisabled = false;
    if (isAmbiguousMonomerLibraryItem(monomer)) {
      return false;
    }
    if (disabled) {
      monomerDisabled = disabled;
    } else {
      var _monomer$props, _monomer$props2;
      var monomerValidations = activeGroupItemValidations["".concat((_monomer$props = monomer.props) === null || _monomer$props === void 0 ? void 0 : _monomer$props.MonomerClass, "s")];
      if ((monomerValidations === null || monomerValidations === void 0 ? void 0 : monomerValidations.length) > 0 && (_monomer$props2 = monomer.props) !== null && _monomer$props2 !== void 0 && _monomer$props2.MonomerCaps) {
        for (var i = 0; i < monomerValidations.length; i++) {
          if (!(monomerValidations[i] in monomer.props.MonomerCaps)) {
            monomerDisabled = true;
          }
        }
      }
    }
    return monomerDisabled;
  };
  var dispatchShowPreview = useCallback(function (payload) {
    return dispatch(showPreview(payload));
  }, [dispatch]);
  var debouncedShowPreview = useCallback(debounce(function (p) {
    return dispatchShowPreview(p);
  }, 500), [dispatchShowPreview]);
  var handleItemMouseLeave = function handleItemMouseLeave() {
    debouncedShowPreview.cancel();
    dispatch(showPreview(undefined));
  };
  var handleItemMouseMove = function handleItemMouseMove(monomer, e) {
    handleItemMouseLeave();
    var cardCoordinates = e.currentTarget.getBoundingClientRect();
    var style;
    var previewType;
    var top;
    if (isAmbiguousMonomerLibraryItem(monomer)) {
      top = monomer ? calculateAmbiguousMonomerPreviewTop(monomer)(cardCoordinates) : '';
      var left = "".concat(cardCoordinates.left + cardCoordinates.width / 2, "px");
      previewType = PreviewType.AmbiguousMonomer;
      style = {
        left: left,
        top: top,
        transform: 'translate(-50%, 0)'
      };
    } else {
      top = monomer ? calculateMonomerPreviewTop(cardCoordinates) : '';
      style = {
        right: '-88px',
        top: top,
        transform: 'translate(-50%, 0)'
      };
      previewType = PreviewType.Monomer;
    }
    var previewData = {
      type: previewType,
      monomer: monomer,
      style: style
    };
    debouncedShowPreview(previewData);
  };
  var selectMonomer = function selectMonomer(monomer) {
    dispatch(selectTool('monomer'));
    if (['FAVORITES', 'PEPTIDE', 'CHEM'].includes(libraryName !== null && libraryName !== void 0 ? libraryName : '')) {
      editor.events.selectMonomer.dispatch(monomer);
    }
    onItemClick(monomer);
  };
  var isMonomerSelected = function isMonomerSelected(monomer) {
    return selectedMonomerUniqueKey === getMonomerUniqueKey(monomer);
  };
  return jsxs(GroupContainerColumn, {
    children: [title && jsx(GroupTitle, {
      children: title
    }), jsx(ItemsContainer, {
      children: items.map(function (monomer) {
        return jsx(MonomerItem, {
          disabled: isMonomerDisabled(monomer),
          item: monomer,
          groupName: groupName,
          isSelected: isMonomerSelected(monomer),
          onMouseLeave: handleItemMouseLeave,
          onMouseMove: function onMouseMove(e) {
            return handleItemMouseMove(monomer, e);
          },
          onClick: function onClick() {
            return selectMonomer(monomer);
          }
        }, getMonomerUniqueKey(monomer));
      })
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$y() { 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)."; }
var MonomerListContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1bp6il60"
} : {
  target: "e1bp6il60",
  label: "MonomerListContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "jewv9i",
  styles: "width:100%;display:flex;flex-direction:column;justify-items:center;gap:24px;padding:16px 12px"
} : {
  name: "jewv9i",
  styles: "width:100%;display:flex;flex-direction:column;justify-items:center;gap:24px;padding:16px 12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQm9DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTGlzdENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGdhcDogJzI0cHgnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$y
});

var Card = _styled(Card$1, process.env.NODE_ENV === "production" ? {
  target: "e1txcvj90"
} : {
  target: "e1txcvj90",
  label: "Card"
})("&::after{content:'';background:", function (_ref) {
  var theme = _ref.theme,
    selected = _ref.selected;
  return selected ? theme.ketcher.color.button.primary.active : '#faa500';
}, ";}.dots{visibility:visible;position:absolute;right:2px;top:10px;}.hidden{visibility:hidden!important;}>.star{right:0;left:4px;top:10px;width:min-content;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQndDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IENhcmQgYXMgTW9ub21lckNhcmQgfSBmcm9tICcuLi9tb25vbWVyTGlicmFyeUl0ZW0vc3R5bGVzJztcclxuZXhwb3J0IGNvbnN0IENhcmQgPSBzdHlsZWQoTW9ub21lckNhcmQpIGBcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICR7KHsgdGhlbWUsIHNlbGVjdGVkIH0pID0+IHNlbGVjdGVkID8gdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmUgOiAnI2ZhYTUwMCd9O1xuICB9XG4gIC5kb3RzIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMnB4O1xuICAgIHRvcDogMTBweDtcbiAgfVxuICAuaGlkZGVuIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgfVxuICA+IC5zdGFyIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIHdpZHRoOiBtaW4tY29udGVudDtcbiAgfVxuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));

var SummaryContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ernj46o2"
} : {
  target: "ernj46o2",
  label: "SummaryContainer"
})(function (props) {
  return {
    minHeight: '32px',
    display: 'flex',
    alignItems: 'center',
    padding: '8px 12px',
    gap: '8px',
    borderBottom: props.theme.ketcher.border.small
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQmdDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBwYWRkaW5nOiAnOHB4IDEycHgnLFxyXG4gICAgZ2FwOiAnOHB4JyxcclxuICAgIGJvcmRlckJvdHRvbTogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIuc21hbGwsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlUZXh0ID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5pY29uLmdyZXksXHJcbiAgICB0cmFuc2l0aW9uOiBwcm9wcy50aGVtZS5rZXRjaGVyLnRyYW5zaXRpb24ucmVndWxhcixcclxuICAgIHRyYW5zZm9ybTogcHJvcHMuZXhwYW5kZWQgPyAncm90YXRlKDE4MGRlZyknIDogJ25vbmUnLFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var SummaryText = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "ernj46o1"
} : {
  target: "ernj46o1",
  label: "SummaryText"
})(function (props) {
  return {
    flexGrow: 1,
    fontSize: props.theme.ketcher.font.size.regular
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QjJCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBwYWRkaW5nOiAnOHB4IDEycHgnLFxyXG4gICAgZ2FwOiAnOHB4JyxcclxuICAgIGJvcmRlckJvdHRvbTogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIuc21hbGwsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlUZXh0ID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5pY29uLmdyZXksXHJcbiAgICB0cmFuc2l0aW9uOiBwcm9wcy50aGVtZS5rZXRjaGVyLnRyYW5zaXRpb24ucmVndWxhcixcclxuICAgIHRyYW5zZm9ybTogcHJvcHMuZXhwYW5kZWQgPyAncm90YXRlKDE4MGRlZyknIDogJ25vbmUnLFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var StyledIcon$2 = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "ernj46o0"
} : {
  target: "ernj46o0",
  label: "StyledIcon"
})(function (props) {
  return {
    width: '16px',
    height: '16px',
    color: props.theme.ketcher.color.icon.grey,
    transition: props.theme.ketcher.transition.regular,
    transform: props.expanded ? 'rotate(180deg)' : 'none'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QjBCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBwYWRkaW5nOiAnOHB4IDEycHgnLFxyXG4gICAgZ2FwOiAnOHB4JyxcclxuICAgIGJvcmRlckJvdHRvbTogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIuc21hbGwsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN1bW1hcnlUZXh0ID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxufSkpO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5pY29uLmdyZXksXHJcbiAgICB0cmFuc2l0aW9uOiBwcm9wcy50aGVtZS5rZXRjaGVyLnRyYW5zaXRpb24ucmVndWxhcixcclxuICAgIHRyYW5zZm9ybTogcHJvcHMuZXhwYW5kZWQgPyAncm90YXRlKDE4MGRlZyknIDogJ25vbmUnLFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");

var RnaPresetItem = function RnaPresetItem(_ref) {
  var preset = _ref.preset,
    isSelected = _ref.isSelected,
    _ref$onClick = _ref.onClick,
    onClick = _ref$onClick === void 0 ? EmptyFunction : _ref$onClick,
    _ref$onContextMenu = _ref.onContextMenu,
    onContextMenu = _ref$onContextMenu === void 0 ? EmptyFunction : _ref$onContextMenu,
    _ref$onMouseLeave = _ref.onMouseLeave,
    onMouseLeave = _ref$onMouseLeave === void 0 ? EmptyFunction : _ref$onMouseLeave,
    _ref$onMouseMove = _ref.onMouseMove,
    onMouseMove = _ref$onMouseMove === void 0 ? EmptyFunction : _ref$onMouseMove;
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    showDots = _useState2[0],
    setShowDots = _useState2[1];
  var _useState3 = useState(preset.favorite),
    _useState4 = _slicedToArray(_useState3, 2),
    favorite = _useState4[0],
    setFavorite = _useState4[1];
  var dispatch = useAppDispatch();
  var onMouseOver = function onMouseOver() {
    setShowDots(true);
  };
  var onMouseOut = function onMouseOut() {
    setShowDots(false);
  };
  var addFavorite = function addFavorite(event) {
    event.stopPropagation();
    setFavorite(!favorite);
    dispatch(togglePresetFavorites(preset));
  };
  return jsxs(Card, {
    "data-testid": getPresetUniqueKey(preset),
    onClick: onClick,
    onContextMenu: onContextMenu,
    onMouseLeave: onMouseLeave,
    onMouseMove: onMouseMove,
    onMouseOver: onMouseOver,
    onMouseOut: onMouseOut,
    selected: isSelected,
    code: preset.name,
    "data-rna-preset-item-name": preset.name,
    children: [jsx("span", {
      children: preset.name
    }), jsx(StyledIcon$2, {
      name: "vertical-dots",
      className: showDots ? 'dots' : 'dots hidden',
      onClick: onContextMenu
    }), jsx("div", {
      "aria-hidden": true,
      onClick: addFavorite,
      className: "star ".concat(favorite ? 'visible' : ''),
      children: "\u2605"
    })]
  });
};

var CONTEXT_MENU_ID;
(function (CONTEXT_MENU_ID) {
  CONTEXT_MENU_ID["FOR_RNA"] = "context-menu-for-RNA";
  CONTEXT_MENU_ID["FOR_SEQUENCE"] = "context-menu-for-sequence";
  CONTEXT_MENU_ID["FOR_POLYMER_BOND"] = "context-menu-for-polymer-bond";
  CONTEXT_MENU_ID["FOR_SELECTED_MONOMERS"] = "context-menu-for-selected-monomers";
})(CONTEXT_MENU_ID || (CONTEXT_MENU_ID = {}));

var StyledMenu = _styled(Menu$1, process.env.NODE_ENV === "production" ? {
  target: "ekj16lc0"
} : {
  target: "ekj16lc0",
  label: "StyledMenu"
})("--contexify-activeItem-bgColor:rgba(243, 245, 247, 1);--contexify-menu-minWidth:140px;--contexify-activeItem-color:rgba(51, 51, 51, 1);.contexify_itemContent{font-family:", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.font.family.inter;
}, ";font-size:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.font.size.regular;
}, ";}.contexify_separator{color:rgba(225, 229, 234, 1);}.contexify_item-title{opacity:1;font-weight:bold;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFdUMiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBNZW51IH0gZnJvbSAncmVhY3QtY29udGV4aWZ5JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZE1lbnUgPSBzdHlsZWQoTWVudSkgYFxuICAtLWNvbnRleGlmeS1hY3RpdmVJdGVtLWJnQ29sb3I6IHJnYmEoMjQzLCAyNDUsIDI0NywgMSk7XG4gIC0tY29udGV4aWZ5LW1lbnUtbWluV2lkdGg6IDE0MHB4O1xuICAtLWNvbnRleGlmeS1hY3RpdmVJdGVtLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDEpO1xuICAuY29udGV4aWZ5X2l0ZW1Db250ZW50IHtcbiAgICBmb250LWZhbWlseTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyfTtcbiAgICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIH1cbiAgLmNvbnRleGlmeV9zZXBhcmF0b3Ige1xuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjI5LCAyMzQsIDEpO1xuICB9XG4gIC5jb250ZXhpZnlfaXRlbS10aXRsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */"));

var assembleMenuItems = function assembleMenuItems(menuItems, handleMenuChange) {
  var items = [];
  menuItems.forEach(function (_ref, index) {
    var name = _ref.name,
      title = _ref.title,
      hidden = _ref.hidden,
      disabled = _ref.disabled,
      isMenuTitle = _ref.isMenuTitle,
      separator = _ref.separator;
    var item = jsx(Item, {
      id: name,
      onClick: handleMenuChange,
      "data-testid": name,
      hidden: hidden,
      disabled: disabled,
      className: isMenuTitle ? 'contexify_item-title' : '',
      children: jsx("span", {
        children: title
      })
    }, name);
    items.push(item);
    if (separator) {
      items.push(jsx(Separator, {}, index));
    }
  });
  return items;
};
var ContextMenu = function ContextMenu(_ref2) {
  var id = _ref2.id,
    handleMenuChange = _ref2.handleMenuChange,
    menuItems = _ref2.menuItems;
  return jsx(StyledMenu, {
    id: id,
    children: assembleMenuItems(menuItems, handleMenuChange)
  });
};

var RNAContextMenu = function RNAContextMenu() {
  var RNA_TAB_INDEX = LIBRARY_TAB_INDEX.RNA;
  var dispatch = useAppDispatch();
  var activePresetForContextMenu = useAppSelector(selectActivePresetForContextMenu);
  var selectedTabIndex = useAppSelector(selectCurrentTabIndex);
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var RNAMenus = [{
    name: 'duplicateandedit',
    title: 'Duplicate and Edit...',
    disabled: false
  }, {
    name: 'edit',
    title: 'Edit...',
    separator: true,
    disabled: activePresetForContextMenu === null || activePresetForContextMenu === void 0 ? void 0 : activePresetForContextMenu["default"]
  }, {
    name: 'deletepreset',
    title: 'Delete Preset',
    disabled: activePresetForContextMenu === null || activePresetForContextMenu === void 0 ? void 0 : activePresetForContextMenu["default"]
  }];
  var handleMenuChange = function handleMenuChange(_ref) {
    var id = _ref.id,
      props = _ref.props;
    switch (id) {
      case 'duplicateandedit':
        props.duplicatePreset(activePresetForContextMenu);
        if (selectedTabIndex !== RNA_TAB_INDEX) {
          dispatch(setSelectedTabIndex(RNA_TAB_INDEX));
        }
        break;
      case 'edit':
        props.editPreset(activePresetForContextMenu);
        if (selectedTabIndex !== RNA_TAB_INDEX) {
          dispatch(setSelectedTabIndex(RNA_TAB_INDEX));
        }
        break;
      case 'deletepreset':
        dispatch(openModal('delete'));
        break;
    }
  };
  var ketcherEditorRootElement = document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR);
  return ketcherEditorRootElement && !isSequenceEditInRNABuilderMode ? createPortal(jsx(ContextMenu, {
    id: CONTEXT_MENU_ID.FOR_RNA,
    menuItems: RNAMenus,
    handleMenuChange: handleMenuChange
  }), ketcherEditorRootElement) : null;
};

var RnaPresetGroup = function RnaPresetGroup(_ref) {
  var presets = _ref.presets,
    duplicatePreset = _ref.duplicatePreset,
    editPreset = _ref.editPreset;
  var activePreset = useAppSelector(selectActivePreset);
  var editor = useAppSelector(selectEditor);
  var _useContextMenu = useContextMenu({
      id: CONTEXT_MENU_ID.FOR_RNA
    }),
    show = _useContextMenu.show;
  var dispatch = useDispatch();
  var validatePreset = function validatePreset(preset) {
    var _preset$base, _preset$sugar, _preset$phosphate;
    var isBaseValid = true;
    var isSugarValid = true;
    var isPhosphateValid = true;
    if (preset !== null && preset !== void 0 && (_preset$base = preset.base) !== null && _preset$base !== void 0 && (_preset$base = _preset$base.props) !== null && _preset$base !== void 0 && _preset$base.MonomerCaps) {
      isBaseValid = 'R1' in preset.base.props.MonomerCaps;
    }
    if (preset !== null && preset !== void 0 && (_preset$sugar = preset.sugar) !== null && _preset$sugar !== void 0 && (_preset$sugar = _preset$sugar.props) !== null && _preset$sugar !== void 0 && _preset$sugar.MonomerCaps) {
      var _preset$base2;
      if (isBaseValid && preset !== null && preset !== void 0 && (_preset$base2 = preset.base) !== null && _preset$base2 !== void 0 && (_preset$base2 = _preset$base2.props) !== null && _preset$base2 !== void 0 && _preset$base2.MonomerCaps) {
        isSugarValid = 'R3' in preset.sugar.props.MonomerCaps;
      }
    }
    if (preset !== null && preset !== void 0 && (_preset$phosphate = preset.phosphate) !== null && _preset$phosphate !== void 0 && (_preset$phosphate = _preset$phosphate.props) !== null && _preset$phosphate !== void 0 && _preset$phosphate.MonomerCaps) {
      var _preset$sugar2;
      isPhosphateValid = 'R1' in preset.phosphate.props.MonomerCaps;
      if (isSugarValid && preset !== null && preset !== void 0 && (_preset$sugar2 = preset.sugar) !== null && _preset$sugar2 !== void 0 && (_preset$sugar2 = _preset$sugar2.props) !== null && _preset$sugar2 !== void 0 && _preset$sugar2.MonomerCaps) {
        isSugarValid = 'R2' in preset.sugar.props.MonomerCaps;
      }
    }
    return isBaseValid && isSugarValid && isPhosphateValid;
  };
  var selectPreset = function selectPreset(preset) {
    return function () {
      var isPresetValid = validatePreset(preset);
      if (!isPresetValid && preset.name) {
        dispatch(setInvalidPresetError(preset.name));
        return;
      }
      dispatch(setActivePreset(preset));
      editor.events.selectPreset.dispatch(preset);
      if (preset.name === activePreset.name) return;
      dispatch(setIsEditMode(false));
    };
  };
  var getMenuPosition = function getMenuPosition(currentPresetCard) {
    var _currentPresetCard$of;
    var isDivCard = currentPresetCard instanceof HTMLDivElement;
    if (!isDivCard && currentPresetCard.parentElement) {
      currentPresetCard = currentPresetCard.parentElement;
    }
    var boundingBox = currentPresetCard.getBoundingClientRect();
    var parentBox = (_currentPresetCard$of = currentPresetCard.offsetParent) === null || _currentPresetCard$of === void 0 ? void 0 : _currentPresetCard$of.getBoundingClientRect();
    var contextMenuWidth = 140;
    var x = boundingBox.right - contextMenuWidth;
    var y = boundingBox.y + boundingBox.height / 2;
    if (parentBox !== null && parentBox !== void 0 && parentBox.x && (parentBox === null || parentBox === void 0 ? void 0 : parentBox.x) > x) {
      x = boundingBox.x;
    }
    return {
      x: x,
      y: y
    };
  };
  var preview = useAppSelector(selectShowPreview);
  var dispatchShowPreview = useCallback(function (payload) {
    return dispatch(showPreview(payload));
  }, [dispatch]);
  var debouncedShowPreview = useCallback(debounce(function (p) {
    return dispatchShowPreview(p);
  }, 500), [dispatchShowPreview]);
  var handleItemMouseLeave = function handleItemMouseLeave() {
    debouncedShowPreview.cancel();
    dispatch(showPreview(undefined));
  };
  var handleItemMouseMove = function handleItemMouseMove(preset, e) {
    handleItemMouseLeave();
    if (preview.type === PreviewType.Preset || !e.currentTarget) {
      return;
    }
    var monomers = [preset.sugar, preset.base, preset.phosphate];
    var cardCoordinates = e.currentTarget.getBoundingClientRect();
    var style = {
      left: "".concat(cardCoordinates.left + cardCoordinates.width, "px"),
      top: isAmbiguousMonomerLibraryItem(preset.base) ? calculateAmbiguousMonomerPreviewTop(preset.base)(cardCoordinates) : calculateNucleoElementPreviewTop(cardCoordinates),
      transform: 'translate(-100%, 0)'
    };
    var previewData = isAmbiguousMonomerLibraryItem(preset.base) ? {
      type: PreviewType.AmbiguousMonomer,
      monomer: preset.base,
      presetMonomers: monomers,
      style: style
    } : {
      type: PreviewType.Preset,
      monomers: monomers,
      name: preset.name,
      idtAliases: preset.idtAliases,
      position: PresetPosition.Library,
      style: style
    };
    debouncedShowPreview(previewData);
  };
  var handleContextMenu = function handleContextMenu(preset) {
    return function (event) {
      event.stopPropagation();
      dispatch(setActivePresetForContextMenu(preset));
      show({
        event: event,
        props: {
          duplicatePreset: duplicatePreset,
          editPreset: editPreset
        },
        position: getMenuPosition(event.currentTarget)
      });
    };
  };
  return jsxs(GroupContainerRow, {
    "data-testid": "rna-preset-group",
    children: [jsx(ItemsContainer, {
      children: presets.map(function (preset, index) {
        return jsx(RnaPresetItem, {
          isSelected: (activePreset === null || activePreset === void 0 ? void 0 : activePreset.name) === preset.name,
          preset: preset,
          onClick: selectPreset(preset),
          onContextMenu: handleContextMenu(preset),
          onMouseMove: function onMouseMove(e) {
            return handleItemMouseMove(preset, e);
          },
          onMouseLeave: handleItemMouseLeave
        }, "".concat(preset.name).concat(index));
      })
    }), jsx(RNAContextMenu, {})]
  });
};

var MonomerList = function MonomerList(_ref) {
  var onItemClick = _ref.onItemClick,
    libraryName = _ref.libraryName,
    duplicatePreset = _ref.duplicatePreset,
    editPreset = _ref.editPreset;
  var monomers = useAppSelector(selectFilteredMonomers);
  var presets = useAppSelector(selectFilteredPresets);
  var activeTool = useAppSelector(selectEditorActiveTool);
  var isFavoriteTab = libraryName === MONOMER_LIBRARY_FAVORITES;
  var items = !isFavoriteTab ? selectMonomersInCategory(monomers, libraryName) : {
    monomers: selectMonomersInFavorites(monomers),
    presets: selectPresetsInFavorites(presets)
  };
  var monomerGroups = selectMonomerGroups(isFavoriteTab ? items.monomers : items);
  var ambiguousMonomers = isFavoriteTab ? selectAmbiguousMonomersInFavorites(monomers) : selectAmbiguousMonomersInCategory(monomers, MonomerGroups.PEPTIDES);
  var _useState = useState(''),
    _useState2 = _slicedToArray(_useState, 2),
    selectedMonomers = _useState2[0],
    setSelectedMonomers = _useState2[1];
  var selectMonomer = function selectMonomer(monomer) {
    setSelectedMonomers(getMonomerUniqueKey(monomer));
  };
  useEffect(function () {
    if (activeTool !== 'monomer') {
      setSelectedMonomers('');
    }
  }, [activeTool]);
  return jsxs(MonomerListContainer, {
    children: [isFavoriteTab && monomerGroups.length > 0 && jsx("div", {
      children: "Monomers"
    }), monomerGroups.map(function (_ref2, _index, groups) {
      var groupItems = _ref2.groupItems,
        groupTitle = _ref2.groupTitle;
      return jsx(MonomerGroup, {
        title: groups.length === 1 ? undefined : groupTitle,
        items: groupItems,
        libraryName: libraryName,
        onItemClick: onItemClick || selectMonomer,
        selectedMonomerUniqueKey: selectedMonomers
      }, groupTitle);
    }), isFavoriteTab && items.presets.length > 0 && jsxs(Fragment, {
      children: [jsx("div", {
        children: "Presets"
      }), jsx(RnaPresetGroup, {
        duplicatePreset: duplicatePreset,
        editPreset: editPreset,
        presets: items.presets
      })]
    }), jsx(Fragment, {
      children: (libraryName === MONOMER_LIBRARY_PEPTIDES || isFavoriteTab) && ambiguousMonomers.map(function (group) {
        return jsx(MonomerGroup, {
          title: group.groupTitle,
          items: group.groupItems,
          libraryName: libraryName,
          onItemClick: onItemClick || selectMonomer,
          selectedMonomerUniqueKey: selectedMonomers
        }, group.groupTitle);
      })
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$x() { 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)."; }
var RnaAccordionContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag5"
} : {
  target: "e1hdfnag5",
  label: "RnaAccordionContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "uawiic",
  styles: "display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;height:100%"
} : {
  name: "uawiic",
  styles: "display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;height:100%",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQnFDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$x
});
var StyledAccordion = _styled(Accordion, process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag4"
} : {
  target: "e1hdfnag4",
  label: "StyledAccordion"
})(process.env.NODE_ENV === "production" ? {
  name: "u6kpdv",
  styles: "min-height:32px"
} : {
  name: "u6kpdv",
  styles: "min-height:32px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QitCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$x
});
var StyledAccordionWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag3"
} : {
  target: "e1hdfnag3",
  label: "StyledAccordionWrapper"
})(process.env.NODE_ENV === "production" ? {
  name: "vz8pb8",
  styles: "flex-grow:2;min-height:32px"
} : {
  name: "vz8pb8",
  styles: "flex-grow:2;min-height:32px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQnNDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$x
});
var DetailsContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag2"
} : {
  target: "e1hdfnag2",
  label: "DetailsContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "gs2evd",
  styles: "position:relative;width:100%;display:flex;flex-direction:column;gap:24px;justify-content:start;padding:16px 12px"
} : {
  name: "gs2evd",
  styles: "position:relative;width:100%;display:flex;flex-direction:column;gap:24px;justify-content:start;padding:16px 12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQmdDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$x
});
var StyledButton$2 = _styled(Button, process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag1"
} : {
  target: "e1hdfnag1",
  label: "StyledButton"
})(function (props) {
  return {
    backgroundColor: props.theme.ketcher.color.button.transparent.active,
    color: props.theme.ketcher.color.text.light,
    borderColor: props.theme.ketcher.color.text.light
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QzRCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var DisabledArea = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1hdfnag0"
} : {
  target: "e1hdfnag0",
  label: "DisabledArea"
})(process.env.NODE_ENV === "production" ? {
  name: "1q5khk2",
  styles: "width:100%;height:100%;background-color:#eff2f594;position:absolute;top:0;left:0"
} : {
  name: "1q5khk2",
  styles: "width:100%;height:100%;background-color:#eff2f594;position:absolute;top:0;left:0",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQzRCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbiwgQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBSbmFBY2NvcmRpb25Db250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbiA9IHN0eWxlZChBY2NvcmRpb24pKHtcclxuICAgIG1pbkhlaWdodDogJzMycHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEFjY29yZGlvbldyYXBwZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGZsZXhHcm93OiAyLFxyXG4gICAgbWluSGVpZ2h0OiAnMzJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGV0YWlsc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICcyNHB4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzE2cHggMTJweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHByb3BzKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udHJhbnNwYXJlbnQuYWN0aXZlLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgIH07XHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRBcmVhID0gc3R5bGVkLmRpdih7XHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZWZmMmY1OTQnLFxyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6IDAsXHJcbiAgICBsZWZ0OiAwLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$x
});

var Summary = function Summary(_ref) {
  var groupName = _ref.groupName,
    quantity = _ref.quantity,
    expanded = _ref.expanded,
    iconName = _ref.iconName;
  return jsxs(SummaryContainer, {
    "data-testid": "summary-".concat(groupName),
    children: [jsx(StyledIcon$2, {
      name: iconName
    }), jsxs(SummaryText, {
      children: [groupName, " (", quantity, ")"]
    }), jsx(StyledIcon$2, {
      name: "chevron",
      expanded: expanded
    })]
  });
};

function ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var RnaAccordion = function RnaAccordion(_ref) {
  var libraryName = _ref.libraryName,
    duplicatePreset = _ref.duplicatePreset,
    editPreset = _ref.editPreset;
  var monomers = useAppSelector(selectFilteredMonomers);
  var items = selectMonomersInCategory(monomers, libraryName);
  var activeRnaBuilderItem = useAppSelector(selectActiveRnaBuilderItem);
  var activePreset = useAppSelector(selectActivePreset);
  var groups = selectMonomerGroups(items);
  var presets = useAppSelector(selectFilteredPresets);
  var nucleotideItems = selectUnsplitNucleotides(monomers);
  var nucleotideGroups = selectMonomerGroups(nucleotideItems);
  var isEditMode = useAppSelector(selectIsEditMode);
  var editor = useAppSelector(selectEditor);
  var isActivePresetNewAndEmpty = useAppSelector(selectIsActivePresetNewAndEmpty);
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var _useState = useState(activeRnaBuilderItem),
    _useState2 = _slicedToArray(_useState, 2),
    expandedAccordion = _useState2[0],
    setExpandedAccordion = _useState2[1];
  var _useState3 = useState(activePreset),
    _useState4 = _slicedToArray(_useState3, 2),
    newPreset = _useState4[0],
    setNewPreset = _useState4[1];
  var _useState5 = useState(''),
    _useState6 = _slicedToArray(_useState5, 2),
    activeMonomerKey = _useState6[0],
    setActiveMonomerKey = _useState6[1];
  var dispatch = useDispatch();
  var handleAccordionSummaryClick = function handleAccordionSummaryClick(rnaBuilderItem) {
    if (expandedAccordion === rnaBuilderItem) {
      setExpandedAccordion(null);
    } else {
      setExpandedAccordion(rnaBuilderItem);
      dispatch(recalculateRnaBuilderValidations({
        rnaPreset: newPreset,
        isEditMode: isEditMode
      }));
    }
  };
  var groupsData = [{
    groupName: RnaBuilderPresetsItem.Presets,
    iconName: 'preset',
    groups: [{
      groupItems: presets
    }]
  }, {
    groupName: MonomerGroups.SUGARS,
    iconName: 'sugar',
    groups: groups.filter(function (group) {
      return MonomerCodeToGroup[group.groupTitle] === MonomerGroups.SUGARS;
    })
  }, {
    groupName: MonomerGroups.BASES,
    iconName: 'base',
    groups: groups.filter(function (group) {
      return MonomerCodeToGroup[group.groupTitle] === MonomerGroups.BASES;
    }).map(function (group) {
      return _objectSpread$d(_objectSpread$d({}, group), {}, {
        groupItems: group.groupItems.filter(function (item) {
          var _item$props;
          return ((_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.MonomerClass) !== KetMonomerClass.RNA;
        })
      });
    })
  }, {
    groupName: MonomerGroups.PHOSPHATES,
    iconName: 'phosphate',
    groups: groups.filter(function (group) {
      return MonomerCodeToGroup[group.groupTitle] === MonomerGroups.PHOSPHATES;
    })
  }, {
    groupName: MonomerGroups.NUCLEOTIDES,
    iconName: 'nucleotide',
    groups: nucleotideGroups
  }];
  var selectItem = function selectItem(monomer, groupName) {
    var _monomer$monomers$0$m;
    setActiveMonomerKey(getMonomerUniqueKey(monomer));
    if (!isSequenceEditInRNABuilderMode && !isEditMode) {
      editor.events.selectMonomer.dispatch(monomer);
    }
    if (!isEditMode) {
      return;
    }
    var monomerClass = isAmbiguousMonomerLibraryItem(monomer) ? (_monomer$monomers$0$m = monomer.monomers[0].monomerItem.props.MonomerClass) === null || _monomer$monomers$0$m === void 0 ? void 0 : _monomer$monomers$0$m.toLowerCase() : monomer.props.MonomerClass.toLowerCase();
    var currentPreset = _objectSpread$d(_objectSpread$d({}, newPreset), {}, _defineProperty({}, monomerClass, monomer));
    setNewPreset(currentPreset);
    dispatch(setActivePresetMonomerGroup({
      groupName: groupName,
      groupItem: monomer
    }));
    dispatch(setActiveRnaBuilderItem(groupName));
  };
  useEffect(function () {
    setExpandedAccordion(activeRnaBuilderItem);
  }, [activeRnaBuilderItem]);
  useEffect(function () {
    dispatch(setActiveRnaBuilderItem(isEditMode && activePreset ? activeRnaBuilderItem : RnaBuilderPresetsItem.Presets));
  }, [isEditMode]);
  var onClickNewPreset = function onClickNewPreset() {
    dispatch(createNewPreset());
    dispatch(setActiveRnaBuilderItem(RnaBuilderPresetsItem.Presets));
    dispatch(setIsEditMode(true));
  };
  return jsx(RnaAccordionContainer, {
    "data-testid": "rna-accordion",
    children: groupsData.map(function (groupData) {
      var expanded = expandedAccordion === groupData.groupName;
      var variantMonomers = selectAmbiguousMonomersInCategory(monomers, groupData.groupName);
      var quantity = [].concat(_toConsumableArray(groupData.groups), _toConsumableArray(variantMonomers)).reduce(function (acc, group) {
        return acc + group.groupItems.length || 0;
      }, 0);
      var summary = jsx(Summary, {
        iconName: groupData.iconName,
        groupName: groupData.groupName,
        quantity: quantity,
        expanded: expanded
      });
      var details = groupData.groupName === RnaBuilderPresetsItem.Presets ? jsxs(DetailsContainer, {
        children: [jsx(StyledButton$2, {
          onClick: function onClick() {
            return onClickNewPreset();
          },
          children: "New Preset"
        }), jsx(RnaPresetGroup, {
          duplicatePreset: duplicatePreset,
          editPreset: editPreset,
          presets: presets
        }), isEditMode && !isActivePresetNewAndEmpty && jsx(DisabledArea, {})]
      }) : jsx(DetailsContainer, {
        children: jsxs(Fragment, {
          children: [groupData.groups.map(function (_ref2) {
            var groupItems = _ref2.groupItems,
              groupTitle = _ref2.groupTitle;
            return jsx(MonomerGroup, {
              title: groupData.groups.length > 1 ? groupTitle : undefined,
              groupName: groupData.groupName,
              items: groupItems,
              selectedMonomerUniqueKey: activeMonomerKey,
              onItemClick: function onItemClick(monomer) {
                return selectItem(monomer, groupData.groupName);
              }
            }, groupTitle);
          }), variantMonomers.map(function (group) {
            return jsx(MonomerGroup, {
              title: group.groupTitle,
              items: group.groupItems,
              libraryName: libraryName,
              selectedMonomerUniqueKey: activeMonomerKey,
              onItemClick: function onItemClick(monomer) {
                return selectItem(monomer, groupData.groupName);
              }
            }, group.groupTitle);
          })]
        })
      });
      var presetsExpanded = groupData.groupName === RnaBuilderPresetsItem.Presets && expanded;
      return presetsExpanded ? jsx(StyledAccordionWrapper, {
        children: jsx(StyledAccordion, {
          "data-testid": "styled-accordion",
          dataTestIdDetails: "rna-accordion-details-".concat(groupData.groupName),
          summary: summary,
          details: details,
          expanded: expanded,
          onSummaryClick: function onSummaryClick() {
            return handleAccordionSummaryClick(groupData.groupName);
          }
        })
      }, groupData.groupName) : jsx(StyledAccordion, {
        "data-testid": "styled-accordion",
        dataTestIdDetails: "rna-accordion-details-".concat(groupData.groupName),
        summary: summary,
        details: details,
        expanded: expanded,
        onSummaryClick: function onSummaryClick() {
          return handleAccordionSummaryClick(groupData.groupName);
        }
      }, groupData.groupName);
    })
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$w() { 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)."; }
var RnaEditorCollapsedContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1fsx6x2"
} : {
  target: "e1fsx6x2",
  label: "RnaEditorCollapsedContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "2zz6af",
  styles: "display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:10px"
} : {
  name: "2zz6af",
  styles: "display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:10px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQjJDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBSbmFFZGl0b3JDb2xsYXBzZWRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgcGFkZGluZzogJzEwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJOYW1lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcclxuICAgIGNvbG9yOiBwcm9wcy5ncmV5XHJcbiAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVGV4dENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$w
});
var MonomerName$3 = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1fsx6x1"
} : {
  target: "e1fsx6x1",
  label: "MonomerName"
})(function (props) {
  return {
    fontSize: props.theme.ketcher.font.size.medium,
    overflow: 'hidden',
    textOverflow: 'ellipsis',
    color: props.grey ? props.theme.ketcher.color.text.lightgrey : props.theme.ketcher.color.text.primary
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QjJCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBSbmFFZGl0b3JDb2xsYXBzZWRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgcGFkZGluZzogJzEwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJOYW1lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcclxuICAgIGNvbG9yOiBwcm9wcy5ncmV5XHJcbiAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVGV4dENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var TextContainer$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1fsx6x0"
} : {
  target: "e1fsx6x0",
  label: "TextContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "1x17g94",
  styles: "display:flex;align-items:center;width:100%"
} : {
  name: "1x17g94",
  styles: "display:flex;align-items:center;width:100%",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQjZCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBSbmFFZGl0b3JDb2xsYXBzZWRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgcGFkZGluZzogJzEwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IE1vbm9tZXJOYW1lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcclxuICAgIGNvbG9yOiBwcm9wcy5ncmV5XHJcbiAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVGV4dENvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$w
});

var RnaEditorCollapsed = function RnaEditorCollapsed(_ref) {
  var name = _ref.name,
    fullName = _ref.fullName;
  return name || fullName ? jsx(RnaEditorCollapsedContainer, {
    children: jsx(TextContainer$1, {
      children: jsx(MonomerName$3, {
        grey: !name && !fullName,
        children: name || fullName
      })
    })
  }) : jsx(Fragment, {});
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$v() { 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)."; }
var GroupBlockContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1ie5fzr4"
} : {
  target: "e1ie5fzr4",
  label: "GroupBlockContainer"
})(function (props) {
  return {
    height: '40px',
    position: 'relative',
    marginLeft: props.isEditMode ? '30px' : '28.5px',
    display: 'flex',
    alignItems: 'center',
    border: props.isEditMode ? 'none' : "1.5px solid ".concat(props.theme.ketcher.outline.color),
    backgroundColor: props.selected ? props.theme.ketcher.color.button.primary.active : props.isEditMode ? props.theme.ketcher.color.background.primary : 'transparent',
    borderRadius: props.theme.ketcher.border.radius.regular,
    boxShadow: props.isEditMode ? props.theme.ketcher.shadow.regular : 'none',
    padding: '5px 10px',
    color: props.selected ? 'white' : 'black',
    gap: '14px',
    cursor: 'pointer',
    outlineOffset: '1px',
    boxSizing: 'border-box',
    ':hover': {
      outline: props.theme.ketcher.outline.small
    },
    ':not(:last-child)': {
      ':after': {
        content: '""',
        position: 'absolute',
        right: '100%',
        bottom: 'calc(50% - 1px)',
        borderLeft: props.theme.ketcher.outline.medium,
        borderBottom: props.theme.ketcher.outline.medium,
        height: '2px',
        width: '17px'
      }
    },
    ':last-child': {
      ':after': {
        content: '""',
        position: 'absolute',
        right: '100%',
        bottom: 'calc(50% - 1px)',
        borderLeft: props.theme.ketcher.outline.medium,
        borderBottom: props.theme.ketcher.outline.medium,
        borderRadius: '0 0 0 4px',
        height: '130px',
        width: '17px'
      }
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQm1DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IEdyb3VwQmxvY2tDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIGhlaWdodDogJzQwcHgnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBtYXJnaW5MZWZ0OiBwcm9wcy5pc0VkaXRNb2RlID8gJzMwcHgnIDogJzI4LjVweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJvcmRlcjogcHJvcHMuaXNFZGl0TW9kZVxyXG4gICAgICAgID8gJ25vbmUnXHJcbiAgICAgICAgOiBgMS41cHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3J9YCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgOiBwcm9wcy5pc0VkaXRNb2RlXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcixcclxuICAgIGJveFNoYWRvdzogcHJvcHMuaXNFZGl0TW9kZSA/IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIgOiAnbm9uZScsXHJcbiAgICBwYWRkaW5nOiAnNXB4IDEwcHgnLFxyXG4gICAgY29sb3I6IHByb3BzLnNlbGVjdGVkID8gJ3doaXRlJyA6ICdibGFjaycsXHJcbiAgICBnYXA6ICcxNHB4JyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgb3V0bGluZU9mZnNldDogJzFweCcsXHJcbiAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgfSxcclxuICAgICc6bm90KDpsYXN0LWNoaWxkKSc6IHtcclxuICAgICAgICAnOmFmdGVyJzoge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXCJcIicsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgICAgICByaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICBib3R0b206ICdjYWxjKDUwJSAtIDFweCknLFxyXG4gICAgICAgICAgICBib3JkZXJMZWZ0OiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJCb3R0b206IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5tZWRpdW0sXHJcbiAgICAgICAgICAgIGhlaWdodDogJzJweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAnOmxhc3QtY2hpbGQnOiB7XHJcbiAgICAgICAgJzphZnRlcic6IHtcclxuICAgICAgICAgICAgY29udGVudDogJ1wiXCInLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgYm90dG9tOiAnY2FsYyg1MCUgLSAxcHgpJyxcclxuICAgICAgICAgICAgYm9yZGVyTGVmdDogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLm1lZGl1bSxcclxuICAgICAgICAgICAgYm9yZGVyQm90dG9tOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwIDAgMCA0cHgnLFxyXG4gICAgICAgICAgICBoZWlnaHQ6ICcxMzBweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRleHRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwTmFtZSA9IHN0eWxlZC5zcGFuKChwcm9wcykgPT4gKHtcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW5Ub3A6ICcxcHgnLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIGNvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gJ3doaXRlJ1xyXG4gICAgICAgIDogcHJvcHMuZW1wdHlcclxuICAgICAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgICAgIDogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICBjb2xvcjogcHJvcHMuZW1wdHlcclxuICAgICAgICA/ICd0cmFuc3BhcmVudCdcclxuICAgICAgICA6IHByb3BzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHN0cm9rZTogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHBhZGRpbmdSaWdodDogcHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICc1cHgnIDogcHJvcHMubmFtZSA9PT0gJ3Bob3NwaGF0ZScgPyAnMXB4JyA6IDAsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var TextContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1ie5fzr3"
} : {
  target: "e1ie5fzr3",
  label: "TextContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "1fttcpj",
  styles: "display:flex;flex-direction:column"
} : {
  name: "1fttcpj",
  styles: "display:flex;flex-direction:column",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRTZCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IEdyb3VwQmxvY2tDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIGhlaWdodDogJzQwcHgnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBtYXJnaW5MZWZ0OiBwcm9wcy5pc0VkaXRNb2RlID8gJzMwcHgnIDogJzI4LjVweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJvcmRlcjogcHJvcHMuaXNFZGl0TW9kZVxyXG4gICAgICAgID8gJ25vbmUnXHJcbiAgICAgICAgOiBgMS41cHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3J9YCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgOiBwcm9wcy5pc0VkaXRNb2RlXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcixcclxuICAgIGJveFNoYWRvdzogcHJvcHMuaXNFZGl0TW9kZSA/IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIgOiAnbm9uZScsXHJcbiAgICBwYWRkaW5nOiAnNXB4IDEwcHgnLFxyXG4gICAgY29sb3I6IHByb3BzLnNlbGVjdGVkID8gJ3doaXRlJyA6ICdibGFjaycsXHJcbiAgICBnYXA6ICcxNHB4JyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgb3V0bGluZU9mZnNldDogJzFweCcsXHJcbiAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgfSxcclxuICAgICc6bm90KDpsYXN0LWNoaWxkKSc6IHtcclxuICAgICAgICAnOmFmdGVyJzoge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXCJcIicsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgICAgICByaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICBib3R0b206ICdjYWxjKDUwJSAtIDFweCknLFxyXG4gICAgICAgICAgICBib3JkZXJMZWZ0OiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJCb3R0b206IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5tZWRpdW0sXHJcbiAgICAgICAgICAgIGhlaWdodDogJzJweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAnOmxhc3QtY2hpbGQnOiB7XHJcbiAgICAgICAgJzphZnRlcic6IHtcclxuICAgICAgICAgICAgY29udGVudDogJ1wiXCInLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgYm90dG9tOiAnY2FsYyg1MCUgLSAxcHgpJyxcclxuICAgICAgICAgICAgYm9yZGVyTGVmdDogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLm1lZGl1bSxcclxuICAgICAgICAgICAgYm9yZGVyQm90dG9tOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwIDAgMCA0cHgnLFxyXG4gICAgICAgICAgICBoZWlnaHQ6ICcxMzBweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRleHRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwTmFtZSA9IHN0eWxlZC5zcGFuKChwcm9wcykgPT4gKHtcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW5Ub3A6ICcxcHgnLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIGNvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gJ3doaXRlJ1xyXG4gICAgICAgIDogcHJvcHMuZW1wdHlcclxuICAgICAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgICAgIDogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICBjb2xvcjogcHJvcHMuZW1wdHlcclxuICAgICAgICA/ICd0cmFuc3BhcmVudCdcclxuICAgICAgICA6IHByb3BzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHN0cm9rZTogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHBhZGRpbmdSaWdodDogcHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICc1cHgnIDogcHJvcHMubmFtZSA9PT0gJ3Bob3NwaGF0ZScgPyAnMXB4JyA6IDAsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$v
});
var GroupName = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1ie5fzr2"
} : {
  target: "e1ie5fzr2",
  label: "GroupName"
})(function (props) {
  return {
    fontSize: props.theme.ketcher.font.size.small
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3RXlCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IEdyb3VwQmxvY2tDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIGhlaWdodDogJzQwcHgnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBtYXJnaW5MZWZ0OiBwcm9wcy5pc0VkaXRNb2RlID8gJzMwcHgnIDogJzI4LjVweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJvcmRlcjogcHJvcHMuaXNFZGl0TW9kZVxyXG4gICAgICAgID8gJ25vbmUnXHJcbiAgICAgICAgOiBgMS41cHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3J9YCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgOiBwcm9wcy5pc0VkaXRNb2RlXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcixcclxuICAgIGJveFNoYWRvdzogcHJvcHMuaXNFZGl0TW9kZSA/IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIgOiAnbm9uZScsXHJcbiAgICBwYWRkaW5nOiAnNXB4IDEwcHgnLFxyXG4gICAgY29sb3I6IHByb3BzLnNlbGVjdGVkID8gJ3doaXRlJyA6ICdibGFjaycsXHJcbiAgICBnYXA6ICcxNHB4JyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgb3V0bGluZU9mZnNldDogJzFweCcsXHJcbiAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgfSxcclxuICAgICc6bm90KDpsYXN0LWNoaWxkKSc6IHtcclxuICAgICAgICAnOmFmdGVyJzoge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXCJcIicsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgICAgICByaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICBib3R0b206ICdjYWxjKDUwJSAtIDFweCknLFxyXG4gICAgICAgICAgICBib3JkZXJMZWZ0OiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJCb3R0b206IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5tZWRpdW0sXHJcbiAgICAgICAgICAgIGhlaWdodDogJzJweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAnOmxhc3QtY2hpbGQnOiB7XHJcbiAgICAgICAgJzphZnRlcic6IHtcclxuICAgICAgICAgICAgY29udGVudDogJ1wiXCInLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgYm90dG9tOiAnY2FsYyg1MCUgLSAxcHgpJyxcclxuICAgICAgICAgICAgYm9yZGVyTGVmdDogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLm1lZGl1bSxcclxuICAgICAgICAgICAgYm9yZGVyQm90dG9tOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwIDAgMCA0cHgnLFxyXG4gICAgICAgICAgICBoZWlnaHQ6ICcxMzBweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRleHRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwTmFtZSA9IHN0eWxlZC5zcGFuKChwcm9wcykgPT4gKHtcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW5Ub3A6ICcxcHgnLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIGNvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gJ3doaXRlJ1xyXG4gICAgICAgIDogcHJvcHMuZW1wdHlcclxuICAgICAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgICAgIDogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICBjb2xvcjogcHJvcHMuZW1wdHlcclxuICAgICAgICA/ICd0cmFuc3BhcmVudCdcclxuICAgICAgICA6IHByb3BzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHN0cm9rZTogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHBhZGRpbmdSaWdodDogcHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICc1cHgnIDogcHJvcHMubmFtZSA9PT0gJ3Bob3NwaGF0ZScgPyAnMXB4JyA6IDAsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var MonomerName$2 = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1ie5fzr1"
} : {
  target: "e1ie5fzr1",
  label: "MonomerName"
})(function (props) {
  return {
    marginTop: '1px',
    fontSize: props.theme.ketcher.font.size.medium,
    color: props.selected ? 'white' : props.empty ? props.theme.ketcher.color.text.lightgrey : props.theme.ketcher.color.text.primary
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyRTJCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IEdyb3VwQmxvY2tDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIGhlaWdodDogJzQwcHgnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBtYXJnaW5MZWZ0OiBwcm9wcy5pc0VkaXRNb2RlID8gJzMwcHgnIDogJzI4LjVweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJvcmRlcjogcHJvcHMuaXNFZGl0TW9kZVxyXG4gICAgICAgID8gJ25vbmUnXHJcbiAgICAgICAgOiBgMS41cHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3J9YCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgOiBwcm9wcy5pc0VkaXRNb2RlXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcixcclxuICAgIGJveFNoYWRvdzogcHJvcHMuaXNFZGl0TW9kZSA/IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIgOiAnbm9uZScsXHJcbiAgICBwYWRkaW5nOiAnNXB4IDEwcHgnLFxyXG4gICAgY29sb3I6IHByb3BzLnNlbGVjdGVkID8gJ3doaXRlJyA6ICdibGFjaycsXHJcbiAgICBnYXA6ICcxNHB4JyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgb3V0bGluZU9mZnNldDogJzFweCcsXHJcbiAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgfSxcclxuICAgICc6bm90KDpsYXN0LWNoaWxkKSc6IHtcclxuICAgICAgICAnOmFmdGVyJzoge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXCJcIicsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgICAgICByaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICBib3R0b206ICdjYWxjKDUwJSAtIDFweCknLFxyXG4gICAgICAgICAgICBib3JkZXJMZWZ0OiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJCb3R0b206IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5tZWRpdW0sXHJcbiAgICAgICAgICAgIGhlaWdodDogJzJweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAnOmxhc3QtY2hpbGQnOiB7XHJcbiAgICAgICAgJzphZnRlcic6IHtcclxuICAgICAgICAgICAgY29udGVudDogJ1wiXCInLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgYm90dG9tOiAnY2FsYyg1MCUgLSAxcHgpJyxcclxuICAgICAgICAgICAgYm9yZGVyTGVmdDogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLm1lZGl1bSxcclxuICAgICAgICAgICAgYm9yZGVyQm90dG9tOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwIDAgMCA0cHgnLFxyXG4gICAgICAgICAgICBoZWlnaHQ6ICcxMzBweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRleHRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwTmFtZSA9IHN0eWxlZC5zcGFuKChwcm9wcykgPT4gKHtcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW5Ub3A6ICcxcHgnLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIGNvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gJ3doaXRlJ1xyXG4gICAgICAgIDogcHJvcHMuZW1wdHlcclxuICAgICAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgICAgIDogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICBjb2xvcjogcHJvcHMuZW1wdHlcclxuICAgICAgICA/ICd0cmFuc3BhcmVudCdcclxuICAgICAgICA6IHByb3BzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHN0cm9rZTogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHBhZGRpbmdSaWdodDogcHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICc1cHgnIDogcHJvcHMubmFtZSA9PT0gJ3Bob3NwaGF0ZScgPyAnMXB4JyA6IDAsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var GroupIcon = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "e1ie5fzr0"
} : {
  target: "e1ie5fzr0",
  label: "GroupIcon"
})(function (props) {
  return {
    color: props.empty ? 'transparent' : props.selected ? props.theme.ketcher.color.background.primary : props.theme.ketcher.color.icon.grey,
    stroke: props.selected ? props.theme.ketcher.color.background.primary : props.theme.ketcher.color.icon.grey,
    paddingRight: props.name === 'sugar' ? '5px' : props.name === 'phosphate' ? '1px' : 0
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRnlCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IEdyb3VwQmxvY2tDb250YWluZXIgPSBzdHlsZWQuZGl2KChwcm9wcykgPT4gKHtcclxuICAgIGhlaWdodDogJzQwcHgnLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICBtYXJnaW5MZWZ0OiBwcm9wcy5pc0VkaXRNb2RlID8gJzMwcHgnIDogJzI4LjVweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJvcmRlcjogcHJvcHMuaXNFZGl0TW9kZVxyXG4gICAgICAgID8gJ25vbmUnXHJcbiAgICAgICAgOiBgMS41cHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3J9YCxcclxuICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgOiBwcm9wcy5pc0VkaXRNb2RlXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcixcclxuICAgIGJveFNoYWRvdzogcHJvcHMuaXNFZGl0TW9kZSA/IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIgOiAnbm9uZScsXHJcbiAgICBwYWRkaW5nOiAnNXB4IDEwcHgnLFxyXG4gICAgY29sb3I6IHByb3BzLnNlbGVjdGVkID8gJ3doaXRlJyA6ICdibGFjaycsXHJcbiAgICBnYXA6ICcxNHB4JyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgb3V0bGluZU9mZnNldDogJzFweCcsXHJcbiAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgb3V0bGluZTogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgfSxcclxuICAgICc6bm90KDpsYXN0LWNoaWxkKSc6IHtcclxuICAgICAgICAnOmFmdGVyJzoge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXCJcIicsXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgICAgICByaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICBib3R0b206ICdjYWxjKDUwJSAtIDFweCknLFxyXG4gICAgICAgICAgICBib3JkZXJMZWZ0OiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJCb3R0b206IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5tZWRpdW0sXHJcbiAgICAgICAgICAgIGhlaWdodDogJzJweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICAnOmxhc3QtY2hpbGQnOiB7XHJcbiAgICAgICAgJzphZnRlcic6IHtcclxuICAgICAgICAgICAgY29udGVudDogJ1wiXCInLFxyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgcmlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgYm90dG9tOiAnY2FsYyg1MCUgLSAxcHgpJyxcclxuICAgICAgICAgICAgYm9yZGVyTGVmdDogcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLm1lZGl1bSxcclxuICAgICAgICAgICAgYm9yZGVyQm90dG9tOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUubWVkaXVtLFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwIDAgMCA0cHgnLFxyXG4gICAgICAgICAgICBoZWlnaHQ6ICcxMzBweCcsXHJcbiAgICAgICAgICAgIHdpZHRoOiAnMTdweCcsXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRleHRDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwTmFtZSA9IHN0eWxlZC5zcGFuKChwcm9wcykgPT4gKHtcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW5Ub3A6ICcxcHgnLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bSxcclxuICAgIGNvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gJ3doaXRlJ1xyXG4gICAgICAgIDogcHJvcHMuZW1wdHlcclxuICAgICAgICAgICAgPyBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5XHJcbiAgICAgICAgICAgIDogcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3VwSWNvbiA9IHN0eWxlZChJY29uKSgocHJvcHMpID0+ICh7XHJcbiAgICBjb2xvcjogcHJvcHMuZW1wdHlcclxuICAgICAgICA/ICd0cmFuc3BhcmVudCdcclxuICAgICAgICA6IHByb3BzLnNlbGVjdGVkXHJcbiAgICAgICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHN0cm9rZTogcHJvcHMuc2VsZWN0ZWRcclxuICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5XHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmljb24uZ3JleSxcclxuICAgIHBhZGRpbmdSaWdodDogcHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICc1cHgnIDogcHJvcHMubmFtZSA9PT0gJ3Bob3NwaGF0ZScgPyAnMXB4JyA6IDAsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");

var groupNameToLabel = _defineProperty(_defineProperty(_defineProperty({}, MonomerGroups.SUGARS, 'Select sugar'), MonomerGroups.BASES, 'Select base'), MonomerGroups.PHOSPHATES, 'Select phosphate');
var groupNameToRnaEditorItemLabel = _defineProperty(_defineProperty(_defineProperty({}, MonomerGroups.SUGARS, 'Sugar'), MonomerGroups.BASES, 'Base'), MonomerGroups.PHOSPHATES, 'Phosphate');

var GroupBlock = function GroupBlock(_ref) {
  var groupName = _ref.groupName,
    iconName = _ref.iconName,
    monomerName = _ref.monomerName,
    selected = _ref.selected,
    onClick = _ref.onClick,
    testid = _ref.testid;
  var isEditMode = useAppSelector(selectIsEditMode);
  return jsxs(GroupBlockContainer, {
    selected: selected,
    onClick: onClick,
    empty: !monomerName,
    isEditMode: isEditMode,
    "data-testid": testid,
    children: [jsx(GroupIcon, {
      empty: !monomerName,
      selected: selected,
      name: iconName
    }), jsxs(TextContainer, {
      children: [jsx(GroupName, {
        children: groupNameToRnaEditorItemLabel[groupName]
      }), jsx(MonomerName$2, {
        empty: !monomerName,
        selected: selected,
        children: monomerName || (selected ? groupNameToLabel[groupName] : 'Not selected')
      })]
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$u() { 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)."; }
var RnaEditorExpandedContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg7"
} : {
  target: "e18wzlbg7",
  label: "RnaEditorExpandedContainer"
})(function (props) {
  return {
    display: 'flex',
    flexDirection: 'column',
    padding: '10px',
    '&.rna-editor-expanded--sequence-edit-mode': {
      padding: '8px',
      paddingTop: '10px',
      border: "2px ".concat(props.theme.ketcher.color.editMode.sequenceInRNABuilder, " solid"),
      borderTop: 'none',
      borderBottomRightRadius: '4px',
      borderBottomLeftRadius: '4px'
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQjBDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var GroupsContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg6"
} : {
  target: "e18wzlbg6",
  label: "GroupsContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "1l5e953",
  styles: "margin-top:16px;width:100%;display:flex;flex-direction:column;gap:8px"
} : {
  name: "1l5e953",
  styles: "margin-top:16px;width:100%;display:flex;flex-direction:column;gap:8px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QitCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$u
});
var ButtonsContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg5"
} : {
  target: "e18wzlbg5",
  label: "ButtonsContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "zmhcg5",
  styles: "margin-top:16px;display:flex;justify-content:space-evenly;align-items:center;gap:8px"
} : {
  name: "zmhcg5",
  styles: "margin-top:16px;display:flex;justify-content:space-evenly;align-items:center;gap:8px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQ2dDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$u
});
var StyledButton$1 = _styled(Button, process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg4"
} : {
  target: "e18wzlbg4",
  label: "StyledButton"
})(function (props) {
  return {
    width: '100%',
    whiteSpace: 'nowrap',
    fontSize: props.theme.ketcher.font.size.regular,
    backgroundColor: props.primary ? props.theme.ketcher.color.button.primary.active : undefined,
    color: props.primary && !props.disabled ? props.theme.ketcher.color.button.text.primary : props.theme.ketcher.color.text.light,
    outline: props.primary && !props.disabled ? props.theme.ketcher.outline.selected.small : props.theme.ketcher.outline.grey.small
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QzRCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var NameContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg3"
} : {
  target: "e18wzlbg3",
  label: "NameContainer"
})(function (props) {
  return {
    position: 'relative',
    borderRadius: props.theme.ketcher.border.radius.regular,
    backgroundColor: props.theme.ketcher.color.background.primary,
    boxShadow: props.theme.ketcher.shadow.regular,
    cursor: 'pointer',
    overflow: 'hidden',
    padding: '0 6px 6px 6px',
    display: 'flex',
    alignItems: 'flex-end',
    height: '48px',
    outline: props.selected ? props.theme.ketcher.outline.selected.medium : 'none',
    ':hover': {
      outline: props.selected ? undefined : props.theme.ketcher.outline.small
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0RDZCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var NameLine = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg2"
} : {
  target: "e18wzlbg2",
  label: "NameLine"
})(function (props) {
  return {
    position: 'absolute',
    top: '0',
    left: '0',
    width: '100%',
    height: '8px',
    backgroundColor: props.selected ? props.theme.ketcher.outline.selected.color : props.theme.ketcher.outline.color
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4RXdCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */");
var NameInput = _styled(Input$1, process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg1"
} : {
  target: "e18wzlbg1",
  label: "NameInput"
})(process.env.NODE_ENV === "production" ? {
  name: "1jdipvd",
  styles: "width:100%;&:disabled{background:none;outline:none;color:inherit;}"
} : {
  name: "1jdipvd",
  styles: "width:100%;&:disabled{background:none;outline:none;color:inherit;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3RnlCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$u
});
var PresetName$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e18wzlbg0"
} : {
  target: "e18wzlbg0",
  label: "PresetName"
})(process.env.NODE_ENV === "production" ? {
  name: "1gz2b5f",
  styles: "overflow:hidden;text-overflow:ellipsis"
} : {
  name: "1gz2b5f",
  styles: "overflow:hidden;text-overflow:ellipsis",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRzBCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSW5wdXQgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFJuYUVkaXRvckV4cGFuZGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHBhZGRpbmc6ICcxMHB4JyxcclxuICAgICcmLnJuYS1lZGl0b3ItZXhwYW5kZWQtLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBwYWRkaW5nOiAnOHB4JyxcclxuICAgICAgICBwYWRkaW5nVG9wOiAnMTBweCcsXHJcbiAgICAgICAgYm9yZGVyOiBgMnB4ICR7cHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci5lZGl0TW9kZS5zZXF1ZW5jZUluUk5BQnVpbGRlcn0gc29saWRgLFxyXG4gICAgICAgIGJvcmRlclRvcDogJ25vbmUnLFxyXG4gICAgICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEdyb3Vwc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luVG9wOiAnMTZweCcsXHJcbiAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblRvcDogJzE2cHgnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1ldmVubHknLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICc4cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChCdXR0b24pKChwcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJvcHMucHJpbWFyeVxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuYWN0aXZlXHJcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGNvbG9yOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeVxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5wcmltYXJ5ICYmICFwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgICAgICA/IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5zbWFsbFxyXG4gICAgICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5ncmV5LnNtYWxsLFxyXG4gICAgfTtcclxufSk7XHJcbmV4cG9ydCBjb25zdCBOYW1lQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlclJhZGl1czogcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyLFxyXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBwYWRkaW5nOiAnMCA2cHggNnB4IDZweCcsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnZmxleC1lbmQnLFxyXG4gICAgaGVpZ2h0OiAnNDhweCcsXHJcbiAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLm1lZGl1bVxyXG4gICAgICAgIDogJ25vbmUnLFxyXG4gICAgJzpob3Zlcic6IHtcclxuICAgICAgICBvdXRsaW5lOiBwcm9wcy5zZWxlY3RlZCA/IHVuZGVmaW5lZCA6IHByb3BzLnRoZW1lLmtldGNoZXIub3V0bGluZS5zbWFsbCxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVMaW5lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXHJcbiAgICB0b3A6ICcwJyxcclxuICAgIGxlZnQ6ICcwJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBoZWlnaHQ6ICc4cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiBwcm9wcy5zZWxlY3RlZFxyXG4gICAgICAgID8gcHJvcHMudGhlbWUua2V0Y2hlci5vdXRsaW5lLnNlbGVjdGVkLmNvbG9yXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLm91dGxpbmUuY29sb3IsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE5hbWVJbnB1dCA9IHN0eWxlZChJbnB1dCkoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICdub25lJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICAgICAgY29sb3I6ICdpbmhlcml0JyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$u
});

var getNucleotideMonomerGroupName = function getNucleotideMonomerGroupName(nameSet) {
  if (nameSet.size === 0) return '';
  return nameSet.size === 1 ? _toConsumableArray(nameSet)[0] : '[multiple]';
};
var generateSequenceSelectionGroupNames = function generateSequenceSelectionGroupNames(labeledNucleotides) {
  if (!(labeledNucleotides !== null && labeledNucleotides !== void 0 && labeledNucleotides.length)) return;
  var namesSets = {
    sugarLabel: new Set(),
    baseLabel: new Set(),
    phosphateLabel: new Set()
  };
  for (var i = 0; i < labeledNucleotides.length; i++) {
    for (var _i = 0, _arr = ['sugarLabel', 'baseLabel', 'phosphateLabel']; _i < _arr.length; _i++) {
      var _labeledNucleotides$i, _labeledNucleotides$i2, _labeledNucleotides$i3;
      var item = _arr[_i];
      if ((_labeledNucleotides$i = labeledNucleotides[i]) !== null && _labeledNucleotides$i !== void 0 && _labeledNucleotides$i[item] || !((_labeledNucleotides$i2 = labeledNucleotides[i]) !== null && _labeledNucleotides$i2 !== void 0 && _labeledNucleotides$i2[item]) && labeledNucleotides[i].type === Entities.Nucleoside && !labeledNucleotides[i].isNucleosideConnectedAndSelectedWithPhosphate) namesSets[item].add((_labeledNucleotides$i3 = labeledNucleotides[i]) === null || _labeledNucleotides$i3 === void 0 ? void 0 : _labeledNucleotides$i3[item]);
    }
  }
  return {
    Sugars: getNucleotideMonomerGroupName(namesSets.sugarLabel),
    Bases: getNucleotideMonomerGroupName(namesSets.baseLabel),
    Phosphates: getNucleotideMonomerGroupName(namesSets.phosphateLabel)
  };
};
var generateSequenceSelectionName = function generateSequenceSelectionName(labeledNucleoelements) {
  var groupNames = generateSequenceSelectionGroupNames(labeledNucleoelements);
  return "".concat(groupNames === null || groupNames === void 0 ? void 0 : groupNames.Sugars, "(").concat(groupNames === null || groupNames === void 0 ? void 0 : groupNames.Bases, ")").concat((groupNames === null || groupNames === void 0 ? void 0 : groupNames.Phosphates) || '');
};

var resetRnaBuilderCommon = function resetRnaBuilderCommon(dispatch) {
  dispatch(setActivePresetMonomerGroup(null));
  dispatch(setIsEditMode(false));
};
var resetRnaBuilder = function resetRnaBuilder(dispatch) {
  resetRnaBuilderCommon(dispatch);
};
var resetRnaBuilderAfterSequenceUpdate = function resetRnaBuilderAfterSequenceUpdate(dispatch, editor) {
  resetRnaBuilderCommon(dispatch);
  dispatch(setSequenceSelection([]));
  editor.events.turnOffSequenceEditInRNABuilderMode.dispatch();
  if (editor.mode instanceof SequenceMode) editor.mode.turnOffEditMode();
};

var getCountOfNucleoelements = function getCountOfNucleoelements(selections) {
  return selections.filter(function (selection) {
    if (selection.type) {
      return selection.type === Entities.Nucleotide || selection.type === Entities.Nucleoside;
    } else if (selection.node) {
      return selection.node instanceof Nucleotide || selection.node instanceof Nucleoside;
    }
    return false;
  }).length;
};

function ownKeys$c(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$c(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$c(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$c(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var RnaEditorExpanded = function RnaEditorExpanded(_ref) {
  var isEditMode = _ref.isEditMode,
    onDuplicate = _ref.onDuplicate;
  var groupsData = [{
    groupName: MonomerGroups.SUGARS,
    iconName: 'sugar',
    testId: 'rna-builder-slot--sugar'
  }, {
    groupName: MonomerGroups.BASES,
    iconName: 'base',
    testId: 'rna-builder-slot--base'
  }, {
    groupName: MonomerGroups.PHOSPHATES,
    iconName: 'phosphate',
    testId: 'rna-builder-slot--phosphate'
  }];
  var dispatch = useDispatch();
  var activePreset = useAppSelector(selectActivePreset);
  var isActivePresetEmpty = useAppSelector(selectIsActivePresetNewAndEmpty);
  var activeMonomerGroup = useAppSelector(selectActiveRnaBuilderItem);
  var editor = useAppSelector(selectEditor);
  var presets = useAppSelector(selectAllPresets);
  var activePresetMonomerGroup = useAppSelector(selectActivePresetMonomerGroup);
  var _useState = useState(activePreset),
    _useState2 = _slicedToArray(_useState, 2),
    newPreset = _useState2[0],
    setNewPreset = _useState2[1];
  var sequenceSelection = useAppSelector(selectSequenceSelection);
  var sequenceSelectionName = useAppSelector(selectSequenceSelectionName);
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var _useState3 = useState(false),
    _useState4 = _slicedToArray(_useState3, 2),
    isSequenceSelectionUpdated = _useState4[0],
    setIsSequenceSelectionUpdated = _useState4[1];
  var _useState5 = useState(generateSequenceSelectionGroupNames(sequenceSelection)),
    _useState6 = _slicedToArray(_useState5, 2),
    sequenceSelectionGroupNames = _useState6[0],
    setSequenceSelectionGroupNames = _useState6[1];
  var isSequenceMode = useLayoutMode() === ModeTypes.sequence;
  var updatePresetMonomerGroup = function updatePresetMonomerGroup() {
    if (activePresetMonomerGroup) {
      var groupName = monomerGroupToPresetGroup[activePresetMonomerGroup.groupName];
      var currentPreset = _objectSpread$c(_objectSpread$c({}, newPreset), {}, _defineProperty({}, groupName, activePresetMonomerGroup.groupItem));
      setNewPreset(currentPreset);
      return currentPreset;
    }
    return newPreset;
  };
  useEffect(function () {
    setNewPreset(activePreset);
  }, [activePreset]);
  useEffect(function () {
    if (!sequenceSelection) return;
    if (getCountOfNucleoelements(sequenceSelection) === 1) {
      dispatch(setSequenceSelectionName(generateSequenceSelectionName(sequenceSelection)));
    }
    setSequenceSelectionGroupNames(generateSequenceSelectionGroupNames(sequenceSelection));
  }, [dispatch, sequenceSelection]);
  useEffect(function () {
    if (activeMonomerGroup !== RnaBuilderPresetsItem.Presets && isEditMode) {
      if (isSequenceEditInRNABuilderMode && activePresetMonomerGroup) {
        var monomerType = monomerGroupToPresetGroup[activePresetMonomerGroup.groupName];
        var field = "".concat(monomerType, "Label");
        var updatedSequenceSelection = sequenceSelection.map(function (node) {
          var _activePresetMonomerG;
          var naturalAnalog = field === 'baseLabel' && (_activePresetMonomerG = activePresetMonomerGroup.groupItem.props) !== null && _activePresetMonomerG !== void 0 && _activePresetMonomerG.MonomerNaturalAnalogCode ? activePresetMonomerGroup.groupItem.props.MonomerNaturalAnalogCode : activePresetMonomerGroup.groupItem.label;
          if (node.isNucleosideConnectedAndSelectedWithPhosphate && field === 'phosphateLabel' || node.type === Entities.Phosphate && (field === 'sugarLabel' || field === 'baseLabel')) return node;
          return _objectSpread$c(_objectSpread$c({}, node), {}, _defineProperty({}, field, naturalAnalog));
        });
        setIsSequenceSelectionUpdated(true);
        dispatch(setSequenceSelection(updatedSequenceSelection));
      } else {
        var currentPreset = updatePresetMonomerGroup();
        var presetFullName = newPreset === null || newPreset === void 0 ? void 0 : newPreset.name;
        if (!currentPreset.editedName) {
          presetFullName = selectPresetFullName(currentPreset);
        }
        setNewPreset(_objectSpread$c(_objectSpread$c({}, currentPreset), {}, {
          name: presetFullName
        }));
      }
    }
  }, [activePresetMonomerGroup === null || activePresetMonomerGroup === void 0 ? void 0 : activePresetMonomerGroup.groupItem, isSequenceEditInRNABuilderMode]);
  var scrollToActiveItemInLibrary = function scrollToActiveItemInLibrary(selectedGroup) {
    if (selectedGroup === RnaBuilderPresetsItem.Presets) {
      scrollToSelectedPreset(newPreset === null || newPreset === void 0 ? void 0 : newPreset.name);
      if (newPreset) {
        editor.events.selectPreset.dispatch(newPreset);
      }
      return;
    }
    var activeMonomerInSelectedGroup = newPreset[monomerGroupToPresetGroup[selectedGroup]];
    if (!activeMonomerInSelectedGroup) return;
    scrollToSelectedMonomer(getMonomerUniqueKey(activeMonomerInSelectedGroup));
  };
  var selectGroup = function selectGroup(selectedGroup) {
    return function () {
      var selectedRNAPartMonomer = selectCurrentMonomerGroup(newPreset, selectedGroup);
      if (selectedRNAPartMonomer && !isSequenceMode) {
        editor.events.selectMonomer.dispatch(selectedRNAPartMonomer);
      }
      scrollToActiveItemInLibrary(selectedGroup);
      dispatch(setActiveRnaBuilderItem(selectedGroup));
      dispatch(recalculateRnaBuilderValidations({
        rnaPreset: newPreset,
        isEditMode: isEditMode
      }));
    };
  };
  var onChangeName = function onChangeName(event) {
    if (isEditMode) {
      var newPresetName = event.target.value;
      setNewPreset(_objectSpread$c(_objectSpread$c({}, newPreset), {}, {
        name: newPresetName.trim(),
        editedName: true
      }));
    }
  };
  var onUpdateSequence = function onUpdateSequence() {
    if (getCountOfNucleoelements(sequenceSelection) > 1) {
      dispatch(openModal('updateSequenceInRNABuilder'));
    } else {
      editor.events.modifySequenceInRnaBuilder.dispatch(sequenceSelection);
      resetRnaBuilderAfterSequenceUpdate(dispatch, editor);
    }
  };
  var onSave = function onSave() {
    if (!(newPreset !== null && newPreset !== void 0 && newPreset.name)) {
      return;
    }
    var presetWithSameName = presets.find(function (preset) {
      return preset.name === newPreset.name;
    });
    if (presetWithSameName && activePreset.nameInList !== presetWithSameName.name) {
      dispatch(setUniqueNameError(newPreset.name));
      return;
    }
    dispatch(savePreset(newPreset));
    dispatch(setActivePreset(newPreset));
    if (!isSequenceMode) {
      editor.events.selectPreset.dispatch(newPreset);
    }
    setTimeout(function () {
      scrollToSelectedPreset(newPreset.name);
    }, 0);
    resetRnaBuilder(dispatch);
  };
  var onCancel = function onCancel() {
    if (isSequenceEditInRNABuilderMode) {
      resetRnaBuilderAfterSequenceUpdate(dispatch, editor);
    } else {
      setNewPreset(activePreset);
      resetRnaBuilder(dispatch);
    }
  };
  var turnOnEditMode = function turnOnEditMode() {
    dispatch(setIsEditMode(true));
  };
  var getMonomerName = function getMonomerName(groupName) {
    var _selectCurrentMonomer, _selectCurrentMonomer2;
    if (activePresetMonomerGroup && activePresetMonomerGroup.groupName === groupName) {
      return activePresetMonomerGroup.groupItem.label;
    }
    return ((_selectCurrentMonomer = selectCurrentMonomerGroup(newPreset, groupName)) === null || _selectCurrentMonomer === void 0 ? void 0 : _selectCurrentMonomer.label) || ((_selectCurrentMonomer2 = selectCurrentMonomerGroup(newPreset, groupName)) === null || _selectCurrentMonomer2 === void 0 ? void 0 : _selectCurrentMonomer2.props.MonomerName);
  };
  var getMonomersName = function getMonomersName(groupName) {
    if (!sequenceSelectionGroupNames) return '';
    return sequenceSelectionGroupNames[groupName];
  };
  useEffect(function () {
    var handleKeyDown = function handleKeyDown(event) {
      if (event.key === 'Escape') {
        onCancel();
        event.preventDefault();
        event.stopPropagation();
      } else if (event.key === 'Enter') {
        isSequenceEditInRNABuilderMode ? onUpdateSequence() : onSave();
        event.preventDefault();
        event.stopPropagation();
      }
    };
    editor === null || editor === void 0 || editor.events.keyDown.add(handleKeyDown);
    return function () {
      editor === null || editor === void 0 || editor.events.keyDown.remove(handleKeyDown);
    };
  }, [editor, sequenceSelection]);
  var mainButton;
  if (isActivePresetEmpty && !isSequenceEditInRNABuilderMode) {
    mainButton = jsx(StyledButton$1, {
      disabled: !selectIsPresetReadyToSave(newPreset),
      primary: true,
      "data-testid": "add-to-presets-btn",
      onClick: onSave,
      children: "Add to Presets"
    });
  } else if (isEditMode) {
    mainButton = jsx(StyledButton$1, {
      primary: true,
      disabled: isSequenceEditInRNABuilderMode ? !isSequenceSelectionUpdated : false,
      "data-testid": "save-btn",
      onClick: isSequenceEditInRNABuilderMode ? onUpdateSequence : onSave,
      children: isSequenceEditInRNABuilderMode ? 'Update' : 'Save'
    });
  } else {
    mainButton = jsx(StyledButton$1, {
      "data-testid": "edit-btn",
      onClick: turnOnEditMode,
      disabled: activePreset["default"],
      children: "Edit"
    });
  }
  return jsxs(RnaEditorExpandedContainer, {
    "data-testid": "rna-editor-expanded",
    className: isSequenceEditInRNABuilderMode ? 'rna-editor-expanded--sequence-edit-mode' : '',
    children: [jsxs(NameContainer, {
      selected: activeMonomerGroup === RnaBuilderPresetsItem.Presets,
      onClick: function onClick() {
        return selectGroup(RnaBuilderPresetsItem.Presets);
      },
      children: [isEditMode ? jsx(NameInput, {
        value: isSequenceEditInRNABuilderMode ? sequenceSelectionName : newPreset === null || newPreset === void 0 ? void 0 : newPreset.name,
        placeholder: "Name your structure",
        disabled: isSequenceEditInRNABuilderMode,
        onChange: onChangeName
      }) : jsx(PresetName$1, {
        children: newPreset === null || newPreset === void 0 ? void 0 : newPreset.name
      }), jsx(NameLine, {
        selected: activeMonomerGroup === RnaBuilderPresetsItem.Presets
      })]
    }), jsx(GroupsContainer, {
      children: groupsData.map(function (_ref2) {
        var groupName = _ref2.groupName,
          iconName = _ref2.iconName,
          testId = _ref2.testId;
        return jsx(GroupBlock, {
          selected: activeMonomerGroup === groupName,
          groupName: groupName,
          monomerName: isSequenceEditInRNABuilderMode ? getMonomersName(groupName) : getMonomerName(groupName),
          iconName: iconName,
          testid: testId,
          onClick: selectGroup(groupName)
        }, groupName);
      })
    }), jsxs(ButtonsContainer, {
      children: [isEditMode ? jsx(StyledButton$1, {
        "data-testid": "cancel-btn",
        onClick: onCancel,
        children: "Cancel"
      }) : jsx(StyledButton$1, {
        "data-testid": "duplicate-btn",
        disabled: !selectIsPresetReadyToSave(newPreset),
        onClick: function onClick() {
          return onDuplicate(newPreset);
        },
        children: "Duplicate and Edit"
      }), mainButton]
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$t() { 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)."; }
var RnaEditorContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1ms1w5g3"
} : {
  target: "e1ms1w5g3",
  label: "RnaEditorContainer"
})(function (props) {
  return {
    borderRadius: props.theme.ketcher.border.radius.regular,
    backgroundColor: '#F7F9FA',
    boxShadow: props.theme.ketcher.shadow.regular,
    overflow: 'hidden',
    margin: '12px',
    flexShrink: 0
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQmtDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgUm5hRWRpdG9yQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBib3JkZXJSYWRpdXM6IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJhZGl1cy5yZWd1bGFyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0Y3RjlGQScsXHJcbiAgICBib3hTaGFkb3c6IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBtYXJnaW46ICcxMnB4JyxcclxuICAgIGZsZXhTaHJpbms6IDAsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEhlYWRlciA9IHN0eWxlZC5kaXYoKHByb3BzKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzJweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIHBhZGRpbmdMZWZ0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgICcmLnN0eWxlZC1oZWFkZXItLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuZWRpdE1vZGUuc2VxdWVuY2VJblJOQUJ1aWxkZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBFeHBhbmRCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSh7XHJcbiAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgd2lkdGg6ICczMnB4JyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXHJcbiAgICBwYWRkaW5nOiAnMCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRXhwYW5kSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbn0sICh7IGV4cGFuZGVkIH0pID0+ICh7XHJcbiAgICB0cmFuc2Zvcm06IGV4cGFuZGVkID8gJ3JvdGF0ZSgxODBkZWcpJyA6ICdub25lJyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */");
var StyledHeader = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1ms1w5g2"
} : {
  target: "e1ms1w5g2",
  label: "StyledHeader"
})(function (props) {
  return {
    height: '32px',
    backgroundColor: '#fff',
    display: 'flex',
    justifyContent: 'space-between',
    alignItems: 'center',
    paddingLeft: '10px',
    fontSize: props.theme.ketcher.font.size.regular,
    '&.styled-header--sequence-edit-mode': {
      backgroundColor: props.theme.ketcher.color.editMode.sequenceInRNABuilder
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QjRCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgUm5hRWRpdG9yQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBib3JkZXJSYWRpdXM6IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJhZGl1cy5yZWd1bGFyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0Y3RjlGQScsXHJcbiAgICBib3hTaGFkb3c6IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBtYXJnaW46ICcxMnB4JyxcclxuICAgIGZsZXhTaHJpbms6IDAsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEhlYWRlciA9IHN0eWxlZC5kaXYoKHByb3BzKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzJweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIHBhZGRpbmdMZWZ0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgICcmLnN0eWxlZC1oZWFkZXItLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuZWRpdE1vZGUuc2VxdWVuY2VJblJOQUJ1aWxkZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBFeHBhbmRCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSh7XHJcbiAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgd2lkdGg6ICczMnB4JyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXHJcbiAgICBwYWRkaW5nOiAnMCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRXhwYW5kSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbn0sICh7IGV4cGFuZGVkIH0pID0+ICh7XHJcbiAgICB0cmFuc2Zvcm06IGV4cGFuZGVkID8gJ3JvdGF0ZSgxODBkZWcpJyA6ICdub25lJyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */");
var ExpandButton = _styled(Button, process.env.NODE_ENV === "production" ? {
  target: "e1ms1w5g1"
} : {
  target: "e1ms1w5g1",
  label: "ExpandButton"
})(process.env.NODE_ENV === "production" ? {
  name: "nqk7pj",
  styles: "background:transparent;width:32px;height:100%;outline:none;border-radius:0;padding:0"
} : {
  name: "nqk7pj",
  styles: "background:transparent;width:32px;height:100%;outline:none;border-radius:0;padding:0",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQzRCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgUm5hRWRpdG9yQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBib3JkZXJSYWRpdXM6IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJhZGl1cy5yZWd1bGFyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0Y3RjlGQScsXHJcbiAgICBib3hTaGFkb3c6IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBtYXJnaW46ICcxMnB4JyxcclxuICAgIGZsZXhTaHJpbms6IDAsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEhlYWRlciA9IHN0eWxlZC5kaXYoKHByb3BzKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzJweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIHBhZGRpbmdMZWZ0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgICcmLnN0eWxlZC1oZWFkZXItLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuZWRpdE1vZGUuc2VxdWVuY2VJblJOQUJ1aWxkZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBFeHBhbmRCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSh7XHJcbiAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgd2lkdGg6ICczMnB4JyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXHJcbiAgICBwYWRkaW5nOiAnMCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRXhwYW5kSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbn0sICh7IGV4cGFuZGVkIH0pID0+ICh7XHJcbiAgICB0cmFuc2Zvcm06IGV4cGFuZGVkID8gJ3JvdGF0ZSgxODBkZWcpJyA6ICdub25lJyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$t
});
var ExpandIcon = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "e1ms1w5g0"
} : {
  target: "e1ms1w5g0",
  label: "ExpandIcon"
})("height:16px;width:16px;", function (_ref) {
  var expanded = _ref.expanded;
  return {
    transform: expanded ? 'rotate(180deg)' : 'none'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QzBCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiwgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgUm5hRWRpdG9yQ29udGFpbmVyID0gc3R5bGVkLmRpdigocHJvcHMpID0+ICh7XHJcbiAgICBib3JkZXJSYWRpdXM6IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJhZGl1cy5yZWd1bGFyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0Y3RjlGQScsXHJcbiAgICBib3hTaGFkb3c6IHByb3BzLnRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXIsXHJcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICBtYXJnaW46ICcxMnB4JyxcclxuICAgIGZsZXhTaHJpbms6IDAsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEhlYWRlciA9IHN0eWxlZC5kaXYoKHByb3BzKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMzJweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIHBhZGRpbmdMZWZ0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgICcmLnN0eWxlZC1oZWFkZXItLXNlcXVlbmNlLWVkaXQtbW9kZSc6IHtcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuZWRpdE1vZGUuc2VxdWVuY2VJblJOQUJ1aWxkZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBFeHBhbmRCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSh7XHJcbiAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgd2lkdGg6ICczMnB4JyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgb3V0bGluZTogJ25vbmUnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXHJcbiAgICBwYWRkaW5nOiAnMCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgRXhwYW5kSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbn0sICh7IGV4cGFuZGVkIH0pID0+ICh7XHJcbiAgICB0cmFuc2Zvcm06IGV4cGFuZGVkID8gJ3JvdGF0ZSgxODBkZWcpJyA6ICdub25lJyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */");

var scrollToElement = function scrollToElement(selector) {
  var element = document.body.querySelector(selector);
  element === null || element === void 0 || element.scrollIntoView({
    behavior: 'smooth'
  });
};

var scrollToSelectedPreset = function scrollToSelectedPreset(presetName) {
  scrollToElement("[data-rna-preset-item-name=\"".concat(presetName, "\"]"));
};
var scrollToSelectedMonomer = function scrollToSelectedMonomer(monomerId) {
  scrollToElement("[data-monomer-item-id=\"".concat(monomerId, "\"]"));
};
var RnaEditor = function RnaEditor(_ref) {
  var duplicatePreset = _ref.duplicatePreset;
  var activePreset = useAppSelector(selectActivePreset);
  var isEditMode = useAppSelector(selectIsEditMode);
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var activePresetFullName = selectPresetFullName(activePreset);
  var dispatch = useAppDispatch();
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    expanded = _useState2[0],
    setExpanded = _useState2[1];
  useEffect(function () {
    if (activePreset) {
      if (activePreset.name || isEditMode) setExpanded(true);
      return;
    }
    dispatch(createNewPreset());
    dispatch(setActiveRnaBuilderItem(RnaBuilderPresetsItem.Presets));
  }, [activePreset]);
  useEffect(function () {
    dispatch(recalculateRnaBuilderValidations({
      rnaPreset: activePreset,
      isEditMode: isEditMode
    }));
  }, [isEditMode]);
  var expandEditor = function expandEditor() {
    setExpanded(!expanded);
    if (!(activePreset !== null && activePreset !== void 0 && activePreset.nameInList)) {
      dispatch(setIsEditMode(true));
    }
  };
  return jsxs(RnaEditorContainer, {
    "data-testid": "rna-editor",
    children: [jsxs(StyledHeader, {
      className: isSequenceEditInRNABuilderMode ? 'styled-header--sequence-edit-mode' : '',
      children: ["RNA Builder", jsx(ExpandButton, {
        onClick: expandEditor,
        "data-testid": "rna-builder-expand-button",
        children: jsx(ExpandIcon, {
          expanded: expanded,
          name: "chevron"
        })
      })]
    }), activePreset ? expanded ? jsx(RnaEditorExpanded, {
      isEditMode: isEditMode,
      onDuplicate: duplicatePreset
    }) : jsx(RnaEditorCollapsed, {
      name: activePreset.name,
      fullName: activePresetFullName
    }) : jsx(Fragment, {})]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$s() { 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)."; }
var RnaBuilderContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1ocltcl0"
} : {
  target: "e1ocltcl0",
  label: "RnaBuilderContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "16fpk5u",
  styles: "height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between"
} : {
  name: "16fpk5u",
  styles: "height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQm1DIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBSbmFCdWlsZGVyQ29udGFpbmVyID0gc3R5bGVkLmRpdih7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$s
});

var scrollbarThin = function scrollbarThin(_ref) {
  var theme = _ref.ketcher;
  return css("scrollbar-width:thin;scrollbar-color:", theme.color.scroll.regular, " ", theme.color.scroll.inactive, ";&::-webkit-scrollbar{width:4px;height:4px;background-color:", theme.color.scroll.inactive, ";border-radius:2px;-webkit-border-radius:2px;}&::-webkit-scrollbar-thumb{background-color:", theme.color.scroll.regular, ";border-radius:2px;-webkit-border-radius:2px;}&::-webkit-scrollbar-thumb:active{background-color:", theme.color.scroll.regular, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:scrollbarThin;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1peGlucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQnlEIiwiZmlsZSI6Im1peGlucy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBzY3JvbGxiYXJUaGluID0gKHsga2V0Y2hlcjogdGhlbWUgfSkgPT4gY3NzIGBcbiAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICBzY3JvbGxiYXItY29sb3I6ICR7dGhlbWUuY29sb3Iuc2Nyb2xsLnJlZ3VsYXJ9ICR7dGhlbWUuY29sb3Iuc2Nyb2xsLmluYWN0aXZlfTtcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvci5zY3JvbGwuaW5hY3RpdmV9O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvci5zY3JvbGwucmVndWxhcn07XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICB9XG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvci5zY3JvbGwucmVndWxhcn07XG4gIH1cbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW1peGlucy5qcy5tYXAiXX0= */");
};

var styles = {"expandButton":"Modal-module_expandButton__J1QYl"};

function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$r() { 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)."; }
var StyledDialog = _styled(Dialog, process.env.NODE_ENV === "production" ? {
  target: "e45wfhi5"
} : {
  target: "e45wfhi5",
  label: "StyledDialog"
})(process.env.NODE_ENV === "production" ? {
  name: "dzuq2w",
  styles: ".MuiPaper-root{min-width:304px;}"
} : {
  name: "dzuq2w",
  styles: ".MuiPaper-root{min-width:304px;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTb0MiLCJmaWxlIjoiTW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHsgRGlhbG9nLCBEaWFsb2dBY3Rpb25zLCBEaWFsb2dDb250ZW50LCBEaWFsb2dUaXRsZSwgSWNvbkJ1dHRvbiwgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24sIEtFVENIRVJfTUFDUk9NT0xFQ1VMRVNfUk9PVF9OT0RFX1NFTEVDVE9SIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IHNjcm9sbGJhclRoaW4gfSBmcm9tIFwiLi4vLi4vLi4vdGhlbWluZy9taXhpbnNcIjtcclxuaW1wb3J0IHsgRW1wdHlGdW5jdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzL2VtcHR5RnVuY3Rpb25cIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tICcuL01vZGFsLm1vZHVsZS5sZXNzJztcclxuY29uc3QgU3R5bGVkRGlhbG9nID0gc3R5bGVkKERpYWxvZykgYFxuICAuTXVpUGFwZXItcm9vdCB7XG4gICAgbWluLXdpZHRoOiAzMDRweDtcbiAgfVxuYDtcclxuY29uc3QgSGVhZGVyID0gc3R5bGVkKERpYWxvZ1RpdGxlKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgcGFkZGluZzogJzJweCA0cHggMnB4IDEycHg7JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGZvbnRGYW1pbHk6IGAke3RoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXJ9YCxcclxuICAgIGZvbnRTaXplOiBgJHt0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19YCxcclxuICAgIGZvbnRXZWlnaHQ6IDUwMCxcclxuICAgIHRleHRUcmFuc2Zvcm06ICdjYXBpdGFsaXplJyxcclxuICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCByZ2JhKDIwMiwgMjExLCAyMjEsIDEpJyxcclxufSkpO1xyXG5jb25zdCBUaXRsZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcclxuICAgIGZvbnRTaXplOiAnMTRweCcsXHJcbn0pO1xyXG5jb25zdCBTdHlsZWRJY29uID0gc3R5bGVkKEljb24pKHtcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIGNvbG9yOiAncmdiYSg1MSwgNTEsIDUxLCAxKScsXHJcbn0pO1xyXG5jb25zdCBDb250ZW50ID0gc3R5bGVkKERpYWxvZ0NvbnRlbnQpIGBcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bX07XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgJHsoeyB0aGVtZSB9KSA9PiBzY3JvbGxiYXJUaGluKHRoZW1lKX07XG5gO1xyXG5jb25zdCBGb290ZXIgPSBzdHlsZWQoRGlhbG9nQWN0aW9ucykgYFxuICBoZWlnaHQ6IDUycHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBib3JkZXItdG9wOiAkeyh7IHRoZW1lLCB3aXRoYm9yZGVyIH0pID0+IHdpdGhib3JkZXIgPT09ICd0cnVlJyA/IHRoZW1lLmtldGNoZXIuYm9yZGVyLnNtYWxsIDogJ25vbmUnfTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAuTXVpQnV0dG9uQmFzZS1yb290IHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgTW9kYWwgPSAoeyBjaGlsZHJlbiwgdGl0bGUsIGlzT3Blbiwgc2hvd0Nsb3NlQnV0dG9uID0gdHJ1ZSwgc2hvd0V4cGFuZEJ1dHRvbiA9IGZhbHNlLCBvbkNsb3NlLCBjbGFzc05hbWUsIG1vZGFsV2lkdGgsIGV4cGFuZGVkID0gZmFsc2UsIHNldEV4cGFuZGVkID0gRW1wdHlGdW5jdGlvbiwgfSkgPT4ge1xyXG4gICAgY29uc3QgdGhlbWUgPSB1c2VUaGVtZSgpO1xyXG4gICAgY29uc3QgcGFwZXJQcm9wcyA9IHVzZU1lbW8oKCkgPT4gKHtcclxuICAgICAgICBzdHlsZToge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnOHB4JyxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICAuLi4oc2hvd0V4cGFuZEJ1dHRvbiAmJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46ICdhdXRvJyxcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBleHBhbmRlZCA/ICcxMDAlJyA6IG1vZGFsV2lkdGgsXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGV4cGFuZGVkID8gJzEwMCUnIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgbWF4V2lkdGg6ICdjYWxjKG1pbigxMjgwcHgsIDEwMCUpKScsXHJcbiAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6ICdjYWxjKG1pbig5ODBweCwgMTAwJSkpJyxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSxcclxuICAgIH0pLCBbXHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgICAgICBleHBhbmRlZCxcclxuICAgIF0pO1xyXG4gICAgY29uc3QgYmFja2Ryb3BQcm9wcyA9IHVzZU1lbW8oKCkgPT4gKHtcclxuICAgICAgICBzdHlsZToge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQub3ZlcmxheSxcclxuICAgICAgICAgICAgb3BhY2l0eTogMC40LFxyXG4gICAgICAgIH0sXHJcbiAgICB9KSwgW3RoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5vdmVybGF5XSk7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIENvbnRlbnQ6IG51bGwsXHJcbiAgICAgICAgRm9vdGVyOiBudWxsLFxyXG4gICAgfTtcclxuICAgIFJlYWN0LkNoaWxkcmVuLmZvckVhY2goY2hpbGRyZW4sIChjaGlsZCkgPT4ge1xyXG4gICAgICAgIGlmIChjaGlsZC50eXBlID09PSBDb250ZW50KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuQ29udGVudCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBGb290ZXIpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Gb290ZXIgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkRGlhbG9nLCB7IEJhY2tkcm9wUHJvcHM6IGJhY2tkcm9wUHJvcHMsIFBhcGVyUHJvcHM6IHBhcGVyUHJvcHMsIG9wZW46IGlzT3Blbiwgb25DbG9zZTogb25DbG9zZSwgY29udGFpbmVyOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKEtFVENIRVJfTUFDUk9NT0xFQ1VMRVNfUk9PVF9OT0RFX1NFTEVDVE9SKSwgZGlzYWJsZUVzY2FwZUtleURvd246ICFzaG93Q2xvc2VCdXR0b24sIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBzeDogeyBwYWRkaW5nOiAnMjRweCcgfSwgY2hpbGRyZW46IFt0aXRsZSB8fCBzaG93Q2xvc2VCdXR0b24gfHwgc2hvd0V4cGFuZEJ1dHRvbiA/IChfanN4cyhIZWFkZXIsIHsgY2hpbGRyZW46IFtfanN4KFRpdGxlLCB7IGNoaWxkcmVuOiB0aXRsZSB9KSwgX2pzeHMoXCJzcGFuXCIsIHsgY2hpbGRyZW46IFtzaG93RXhwYW5kQnV0dG9uICYmIChfanN4KEljb25CdXR0b24sIHsgdGl0bGU6ICdleHBhbmQgd2luZG93JywgY2xhc3NOYW1lOiBzdHlsZXMuZXhwYW5kQnV0dG9uLCBvbkNsaWNrOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEV4cGFuZGVkKCFleHBhbmRlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgY2hpbGRyZW46IF9qc3goU3R5bGVkSWNvbiwgeyBuYW1lOiBleHBhbmRlZCA/ICdtaW5pbWl6ZS1leHBhbnNpb24nIDogJ2V4cGFuZCcgfSkgfSkpLCBzaG93Q2xvc2VCdXR0b24gJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyB0aXRsZTogJ0Nsb3NlIHdpbmRvdycsIG9uQ2xpY2s6IG9uQ2xvc2UsIGNoaWxkcmVuOiBfanN4KFN0eWxlZEljb24sIHsgbmFtZTogJ2Nsb3NlJyB9KSB9KSldIH0pXSB9KSkgOiAoJycpLCBzdWJjb21wb25lbnRzLkNvbnRlbnQsIHN1YmNvbXBvbmVudHMuRm9vdGVyXSB9KSk7XHJcbn07XHJcbk1vZGFsLkNvbnRlbnQgPSBDb250ZW50O1xyXG5Nb2RhbC5Gb290ZXIgPSBGb290ZXI7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU1vZGFsLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$r
});
var Header = _styled(DialogTitle, process.env.NODE_ENV === "production" ? {
  target: "e45wfhi4"
} : {
  target: "e45wfhi4",
  label: "Header"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    padding: '2px 4px 2px 12px;',
    display: 'flex',
    alignItems: 'center',
    justifyContent: 'space-between',
    fontFamily: "".concat(theme.ketcher.font.family.inter),
    fontSize: "".concat(theme.ketcher.font.size.medium),
    fontWeight: 500,
    textTransform: 'capitalize',
    borderBottom: '1px solid rgba(202, 211, 221, 1)'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjZSIsImZpbGUiOiJNb2RhbC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG5pbXBvcnQgeyBEaWFsb2csIERpYWxvZ0FjdGlvbnMsIERpYWxvZ0NvbnRlbnQsIERpYWxvZ1RpdGxlLCBJY29uQnV0dG9uLCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwnO1xyXG5pbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgdXNlVGhlbWUgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgSWNvbiwgS0VUQ0hFUl9NQUNST01PTEVDVUxFU19ST09UX05PREVfU0VMRUNUT1IgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuaW1wb3J0IHsgc2Nyb2xsYmFyVGhpbiB9IGZyb20gXCIuLi8uLi8uLi90aGVtaW5nL21peGluc1wiO1xyXG5pbXBvcnQgeyBFbXB0eUZ1bmN0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvZW1wdHlGdW5jdGlvblwiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vTW9kYWwubW9kdWxlLmxlc3MnO1xyXG5jb25zdCBTdHlsZWREaWFsb2cgPSBzdHlsZWQoRGlhbG9nKSBgXG4gIC5NdWlQYXBlci1yb290IHtcbiAgICBtaW4td2lkdGg6IDMwNHB4O1xuICB9XG5gO1xyXG5jb25zdCBIZWFkZXIgPSBzdHlsZWQoRGlhbG9nVGl0bGUpKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBwYWRkaW5nOiAnMnB4IDRweCAycHggMTJweDsnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgZm9udEZhbWlseTogYCR7dGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5pbnRlcn1gLFxyXG4gICAgZm9udFNpemU6IGAke3RoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bX1gLFxyXG4gICAgZm9udFdlaWdodDogNTAwLFxyXG4gICAgdGV4dFRyYW5zZm9ybTogJ2NhcGl0YWxpemUnLFxyXG4gICAgYm9yZGVyQm90dG9tOiAnMXB4IHNvbGlkIHJnYmEoMjAyLCAyMTEsIDIyMSwgMSknLFxyXG59KSk7XHJcbmNvbnN0IFRpdGxlID0gc3R5bGVkLmRpdih7XHJcbiAgICBtYXJnaW5SaWdodDogJzEwcHgnLFxyXG4gICAgZm9udFNpemU6ICcxNHB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZEljb24gPSBzdHlsZWQoSWNvbikoe1xyXG4gICAgd2lkdGg6ICcxNnB4JyxcclxuICAgIGhlaWdodDogJzE2cHgnLFxyXG4gICAgY29sb3I6ICdyZ2JhKDUxLCA1MSwgNTEsIDEpJyxcclxufSk7XHJcbmNvbnN0IENvbnRlbnQgPSBzdHlsZWQoRGlhbG9nQ29udGVudCkgYFxuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICAkeyh7IHRoZW1lIH0pID0+IHNjcm9sbGJhclRoaW4odGhlbWUpfTtcbmA7XHJcbmNvbnN0IEZvb3RlciA9IHN0eWxlZChEaWFsb2dBY3Rpb25zKSBgXG4gIGhlaWdodDogNTJweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIGJvcmRlci10b3A6ICR7KHsgdGhlbWUsIHdpdGhib3JkZXIgfSkgPT4gd2l0aGJvcmRlciA9PT0gJ3RydWUnID8gdGhlbWUua2V0Y2hlci5ib3JkZXIuc21hbGwgOiAnbm9uZSd9O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gIC5NdWlCdXR0b25CYXNlLXJvb3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBNb2RhbCA9ICh7IGNoaWxkcmVuLCB0aXRsZSwgaXNPcGVuLCBzaG93Q2xvc2VCdXR0b24gPSB0cnVlLCBzaG93RXhwYW5kQnV0dG9uID0gZmFsc2UsIG9uQ2xvc2UsIGNsYXNzTmFtZSwgbW9kYWxXaWR0aCwgZXhwYW5kZWQgPSBmYWxzZSwgc2V0RXhwYW5kZWQgPSBFbXB0eUZ1bmN0aW9uLCB9KSA9PiB7XHJcbiAgICBjb25zdCB0aGVtZSA9IHVzZVRoZW1lKCk7XHJcbiAgICBjb25zdCBwYXBlclByb3BzID0gdXNlTWVtbygoKSA9PiAoe1xyXG4gICAgICAgIHN0eWxlOiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICc4cHgnLFxyXG4gICAgICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgICAgIC4uLihzaG93RXhwYW5kQnV0dG9uICYmIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogJ2F1dG8nLFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGV4cGFuZGVkID8gJzEwMCUnIDogbW9kYWxXaWR0aCxcclxuICAgICAgICAgICAgICAgIGhlaWdodDogZXhwYW5kZWQgPyAnMTAwJScgOiB1bmRlZmluZWQsXHJcbiAgICAgICAgICAgICAgICBtYXhXaWR0aDogJ2NhbGMobWluKDEyODBweCwgMTAwJSkpJyxcclxuICAgICAgICAgICAgICAgIG1heEhlaWdodDogJ2NhbGMobWluKDk4MHB4LCAxMDAlKSknLFxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICB9LFxyXG4gICAgfSksIFtcclxuICAgICAgICB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQuY2FudmFzLFxyXG4gICAgICAgIGV4cGFuZGVkLFxyXG4gICAgXSk7XHJcbiAgICBjb25zdCBiYWNrZHJvcFByb3BzID0gdXNlTWVtbygoKSA9PiAoe1xyXG4gICAgICAgIHN0eWxlOiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5vdmVybGF5LFxyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQsXHJcbiAgICAgICAgfSxcclxuICAgIH0pLCBbdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLm92ZXJsYXldKTtcclxuICAgIGNvbnN0IHN1YmNvbXBvbmVudHMgPSB7XHJcbiAgICAgICAgQ29udGVudDogbnVsbCxcclxuICAgICAgICBGb290ZXI6IG51bGwsXHJcbiAgICB9O1xyXG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgaWYgKGNoaWxkLnR5cGUgPT09IENvbnRlbnQpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Db250ZW50ID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGNoaWxkLnR5cGUgPT09IEZvb3Rlcikge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkZvb3RlciA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIChfanN4cyhTdHlsZWREaWFsb2csIHsgQmFja2Ryb3BQcm9wczogYmFja2Ryb3BQcm9wcywgUGFwZXJQcm9wczogcGFwZXJQcm9wcywgb3BlbjogaXNPcGVuLCBvbkNsb3NlOiBvbkNsb3NlLCBjb250YWluZXI6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoS0VUQ0hFUl9NQUNST01PTEVDVUxFU19ST09UX05PREVfU0VMRUNUT1IpLCBkaXNhYmxlRXNjYXBlS2V5RG93bjogIXNob3dDbG9zZUJ1dHRvbiwgY2xhc3NOYW1lOiBjbGFzc05hbWUsIHN4OiB7IHBhZGRpbmc6ICcyNHB4JyB9LCBjaGlsZHJlbjogW3RpdGxlIHx8IHNob3dDbG9zZUJ1dHRvbiB8fCBzaG93RXhwYW5kQnV0dG9uID8gKF9qc3hzKEhlYWRlciwgeyBjaGlsZHJlbjogW19qc3goVGl0bGUsIHsgY2hpbGRyZW46IHRpdGxlIH0pLCBfanN4cyhcInNwYW5cIiwgeyBjaGlsZHJlbjogW3Nob3dFeHBhbmRCdXR0b24gJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyB0aXRsZTogJ2V4cGFuZCB3aW5kb3cnLCBjbGFzc05hbWU6IHN0eWxlcy5leHBhbmRCdXR0b24sIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0RXhwYW5kZWQoIWV4cGFuZGVkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBjaGlsZHJlbjogX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6IGV4cGFuZGVkID8gJ21pbmltaXplLWV4cGFuc2lvbicgOiAnZXhwYW5kJyB9KSB9KSksIHNob3dDbG9zZUJ1dHRvbiAmJiAoX2pzeChJY29uQnV0dG9uLCB7IHRpdGxlOiAnQ2xvc2Ugd2luZG93Jywgb25DbGljazogb25DbG9zZSwgY2hpbGRyZW46IF9qc3goU3R5bGVkSWNvbiwgeyBuYW1lOiAnY2xvc2UnIH0pIH0pKV0gfSldIH0pKSA6ICgnJyksIHN1YmNvbXBvbmVudHMuQ29udGVudCwgc3ViY29tcG9uZW50cy5Gb290ZXJdIH0pKTtcclxufTtcclxuTW9kYWwuQ29udGVudCA9IENvbnRlbnQ7XHJcbk1vZGFsLkZvb3RlciA9IEZvb3RlcjtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9kYWwuanMubWFwIl19 */");
var Title = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e45wfhi3"
} : {
  target: "e45wfhi3",
  label: "Title"
})(process.env.NODE_ENV === "production" ? {
  name: "10by1a4",
  styles: "margin-right:10px;font-size:14px"
} : {
  name: "10by1a4",
  styles: "margin-right:10px;font-size:14px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QmMiLCJmaWxlIjoiTW9kYWwudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHsgRGlhbG9nLCBEaWFsb2dBY3Rpb25zLCBEaWFsb2dDb250ZW50LCBEaWFsb2dUaXRsZSwgSWNvbkJ1dHRvbiwgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24sIEtFVENIRVJfTUFDUk9NT0xFQ1VMRVNfUk9PVF9OT0RFX1NFTEVDVE9SIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IHNjcm9sbGJhclRoaW4gfSBmcm9tIFwiLi4vLi4vLi4vdGhlbWluZy9taXhpbnNcIjtcclxuaW1wb3J0IHsgRW1wdHlGdW5jdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzL2VtcHR5RnVuY3Rpb25cIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tICcuL01vZGFsLm1vZHVsZS5sZXNzJztcclxuY29uc3QgU3R5bGVkRGlhbG9nID0gc3R5bGVkKERpYWxvZykgYFxuICAuTXVpUGFwZXItcm9vdCB7XG4gICAgbWluLXdpZHRoOiAzMDRweDtcbiAgfVxuYDtcclxuY29uc3QgSGVhZGVyID0gc3R5bGVkKERpYWxvZ1RpdGxlKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgcGFkZGluZzogJzJweCA0cHggMnB4IDEycHg7JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGZvbnRGYW1pbHk6IGAke3RoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXJ9YCxcclxuICAgIGZvbnRTaXplOiBgJHt0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19YCxcclxuICAgIGZvbnRXZWlnaHQ6IDUwMCxcclxuICAgIHRleHRUcmFuc2Zvcm06ICdjYXBpdGFsaXplJyxcclxuICAgIGJvcmRlckJvdHRvbTogJzFweCBzb2xpZCByZ2JhKDIwMiwgMjExLCAyMjEsIDEpJyxcclxufSkpO1xyXG5jb25zdCBUaXRsZSA9IHN0eWxlZC5kaXYoe1xyXG4gICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcclxuICAgIGZvbnRTaXplOiAnMTRweCcsXHJcbn0pO1xyXG5jb25zdCBTdHlsZWRJY29uID0gc3R5bGVkKEljb24pKHtcclxuICAgIHdpZHRoOiAnMTZweCcsXHJcbiAgICBoZWlnaHQ6ICcxNnB4JyxcclxuICAgIGNvbG9yOiAncmdiYSg1MSwgNTEsIDUxLCAxKScsXHJcbn0pO1xyXG5jb25zdCBDb250ZW50ID0gc3R5bGVkKERpYWxvZ0NvbnRlbnQpIGBcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLm1lZGl1bX07XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgJHsoeyB0aGVtZSB9KSA9PiBzY3JvbGxiYXJUaGluKHRoZW1lKX07XG5gO1xyXG5jb25zdCBGb290ZXIgPSBzdHlsZWQoRGlhbG9nQWN0aW9ucykgYFxuICBoZWlnaHQ6IDUycHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBib3JkZXItdG9wOiAkeyh7IHRoZW1lLCB3aXRoYm9yZGVyIH0pID0+IHdpdGhib3JkZXIgPT09ICd0cnVlJyA/IHRoZW1lLmtldGNoZXIuYm9yZGVyLnNtYWxsIDogJ25vbmUnfTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAuTXVpQnV0dG9uQmFzZS1yb290IHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgTW9kYWwgPSAoeyBjaGlsZHJlbiwgdGl0bGUsIGlzT3Blbiwgc2hvd0Nsb3NlQnV0dG9uID0gdHJ1ZSwgc2hvd0V4cGFuZEJ1dHRvbiA9IGZhbHNlLCBvbkNsb3NlLCBjbGFzc05hbWUsIG1vZGFsV2lkdGgsIGV4cGFuZGVkID0gZmFsc2UsIHNldEV4cGFuZGVkID0gRW1wdHlGdW5jdGlvbiwgfSkgPT4ge1xyXG4gICAgY29uc3QgdGhlbWUgPSB1c2VUaGVtZSgpO1xyXG4gICAgY29uc3QgcGFwZXJQcm9wcyA9IHVzZU1lbW8oKCkgPT4gKHtcclxuICAgICAgICBzdHlsZToge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnOHB4JyxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgICAgICAuLi4oc2hvd0V4cGFuZEJ1dHRvbiAmJiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46ICdhdXRvJyxcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBleHBhbmRlZCA/ICcxMDAlJyA6IG1vZGFsV2lkdGgsXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGV4cGFuZGVkID8gJzEwMCUnIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgbWF4V2lkdGg6ICdjYWxjKG1pbigxMjgwcHgsIDEwMCUpKScsXHJcbiAgICAgICAgICAgICAgICBtYXhIZWlnaHQ6ICdjYWxjKG1pbig5ODBweCwgMTAwJSkpJyxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSxcclxuICAgIH0pLCBbXHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLmNhbnZhcyxcclxuICAgICAgICBleHBhbmRlZCxcclxuICAgIF0pO1xyXG4gICAgY29uc3QgYmFja2Ryb3BQcm9wcyA9IHVzZU1lbW8oKCkgPT4gKHtcclxuICAgICAgICBzdHlsZToge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQub3ZlcmxheSxcclxuICAgICAgICAgICAgb3BhY2l0eTogMC40LFxyXG4gICAgICAgIH0sXHJcbiAgICB9KSwgW3RoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5vdmVybGF5XSk7XHJcbiAgICBjb25zdCBzdWJjb21wb25lbnRzID0ge1xyXG4gICAgICAgIENvbnRlbnQ6IG51bGwsXHJcbiAgICAgICAgRm9vdGVyOiBudWxsLFxyXG4gICAgfTtcclxuICAgIFJlYWN0LkNoaWxkcmVuLmZvckVhY2goY2hpbGRyZW4sIChjaGlsZCkgPT4ge1xyXG4gICAgICAgIGlmIChjaGlsZC50eXBlID09PSBDb250ZW50KSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuQ29udGVudCA9IGNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChjaGlsZC50eXBlID09PSBGb290ZXIpIHtcclxuICAgICAgICAgICAgc3ViY29tcG9uZW50cy5Gb290ZXIgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkRGlhbG9nLCB7IEJhY2tkcm9wUHJvcHM6IGJhY2tkcm9wUHJvcHMsIFBhcGVyUHJvcHM6IHBhcGVyUHJvcHMsIG9wZW46IGlzT3Blbiwgb25DbG9zZTogb25DbG9zZSwgY29udGFpbmVyOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKEtFVENIRVJfTUFDUk9NT0xFQ1VMRVNfUk9PVF9OT0RFX1NFTEVDVE9SKSwgZGlzYWJsZUVzY2FwZUtleURvd246ICFzaG93Q2xvc2VCdXR0b24sIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBzeDogeyBwYWRkaW5nOiAnMjRweCcgfSwgY2hpbGRyZW46IFt0aXRsZSB8fCBzaG93Q2xvc2VCdXR0b24gfHwgc2hvd0V4cGFuZEJ1dHRvbiA/IChfanN4cyhIZWFkZXIsIHsgY2hpbGRyZW46IFtfanN4KFRpdGxlLCB7IGNoaWxkcmVuOiB0aXRsZSB9KSwgX2pzeHMoXCJzcGFuXCIsIHsgY2hpbGRyZW46IFtzaG93RXhwYW5kQnV0dG9uICYmIChfanN4KEljb25CdXR0b24sIHsgdGl0bGU6ICdleHBhbmQgd2luZG93JywgY2xhc3NOYW1lOiBzdHlsZXMuZXhwYW5kQnV0dG9uLCBvbkNsaWNrOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEV4cGFuZGVkKCFleHBhbmRlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgY2hpbGRyZW46IF9qc3goU3R5bGVkSWNvbiwgeyBuYW1lOiBleHBhbmRlZCA/ICdtaW5pbWl6ZS1leHBhbnNpb24nIDogJ2V4cGFuZCcgfSkgfSkpLCBzaG93Q2xvc2VCdXR0b24gJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyB0aXRsZTogJ0Nsb3NlIHdpbmRvdycsIG9uQ2xpY2s6IG9uQ2xvc2UsIGNoaWxkcmVuOiBfanN4KFN0eWxlZEljb24sIHsgbmFtZTogJ2Nsb3NlJyB9KSB9KSldIH0pXSB9KSkgOiAoJycpLCBzdWJjb21wb25lbnRzLkNvbnRlbnQsIHN1YmNvbXBvbmVudHMuRm9vdGVyXSB9KSk7XHJcbn07XHJcbk1vZGFsLkNvbnRlbnQgPSBDb250ZW50O1xyXG5Nb2RhbC5Gb290ZXIgPSBGb290ZXI7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU1vZGFsLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$r
});
var StyledIcon$1 = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "e45wfhi2"
} : {
  target: "e45wfhi2",
  label: "StyledIcon"
})(process.env.NODE_ENV === "production" ? {
  name: "4jxctt",
  styles: "width:16px;height:16px;color:rgba(51, 51, 51, 1)"
} : {
  name: "4jxctt",
  styles: "width:16px;height:16px;color:rgba(51, 51, 51, 1)",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2Qm1CIiwiZmlsZSI6Ik1vZGFsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCB7IERpYWxvZywgRGlhbG9nQWN0aW9ucywgRGlhbG9nQ29udGVudCwgRGlhbG9nVGl0bGUsIEljb25CdXR0b24sIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCBSZWFjdCwgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyB1c2VUaGVtZSB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uLCBLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBzY3JvbGxiYXJUaGluIH0gZnJvbSBcIi4uLy4uLy4uL3RoZW1pbmcvbWl4aW5zXCI7XHJcbmltcG9ydCB7IEVtcHR5RnVuY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9lbXB0eUZ1bmN0aW9uXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9Nb2RhbC5tb2R1bGUubGVzcyc7XHJcbmNvbnN0IFN0eWxlZERpYWxvZyA9IHN0eWxlZChEaWFsb2cpIGBcbiAgLk11aVBhcGVyLXJvb3Qge1xuICAgIG1pbi13aWR0aDogMzA0cHg7XG4gIH1cbmA7XHJcbmNvbnN0IEhlYWRlciA9IHN0eWxlZChEaWFsb2dUaXRsZSkoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHBhZGRpbmc6ICcycHggNHB4IDJweCAxMnB4OycsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBmb250RmFtaWx5OiBgJHt0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyfWAsXHJcbiAgICBmb250U2l6ZTogYCR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWAsXHJcbiAgICBmb250V2VpZ2h0OiA1MDAsXHJcbiAgICB0ZXh0VHJhbnNmb3JtOiAnY2FwaXRhbGl6ZScsXHJcbiAgICBib3JkZXJCb3R0b206ICcxcHggc29saWQgcmdiYSgyMDIsIDIxMSwgMjIxLCAxKScsXHJcbn0pKTtcclxuY29uc3QgVGl0bGUgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblJpZ2h0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogJzE0cHgnLFxyXG59KTtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogJ3JnYmEoNTEsIDUxLCA1MSwgMSknLFxyXG59KTtcclxuY29uc3QgQ29udGVudCA9IHN0eWxlZChEaWFsb2dDb250ZW50KSBgXG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gICR7KHsgdGhlbWUgfSkgPT4gc2Nyb2xsYmFyVGhpbih0aGVtZSl9O1xuYDtcclxuY29uc3QgRm9vdGVyID0gc3R5bGVkKERpYWxvZ0FjdGlvbnMpIGBcbiAgaGVpZ2h0OiA1MnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgYm9yZGVyLXRvcDogJHsoeyB0aGVtZSwgd2l0aGJvcmRlciB9KSA9PiB3aXRoYm9yZGVyID09PSAndHJ1ZScgPyB0aGVtZS5rZXRjaGVyLmJvcmRlci5zbWFsbCA6ICdub25lJ307XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgLk11aUJ1dHRvbkJhc2Utcm9vdCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE1vZGFsID0gKHsgY2hpbGRyZW4sIHRpdGxlLCBpc09wZW4sIHNob3dDbG9zZUJ1dHRvbiA9IHRydWUsIHNob3dFeHBhbmRCdXR0b24gPSBmYWxzZSwgb25DbG9zZSwgY2xhc3NOYW1lLCBtb2RhbFdpZHRoLCBleHBhbmRlZCA9IGZhbHNlLCBzZXRFeHBhbmRlZCA9IEVtcHR5RnVuY3Rpb24sIH0pID0+IHtcclxuICAgIGNvbnN0IHRoZW1lID0gdXNlVGhlbWUoKTtcclxuICAgIGNvbnN0IHBhcGVyUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzhweCcsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgLi4uKHNob3dFeHBhbmRCdXR0b24gJiYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAnYXV0bycsXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogZXhwYW5kZWQgPyAnMTAwJScgOiBtb2RhbFdpZHRoLFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBleHBhbmRlZCA/ICcxMDAlJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgIG1heFdpZHRoOiAnY2FsYyhtaW4oMTI4MHB4LCAxMDAlKSknLFxyXG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiAnY2FsYyhtaW4oOTgwcHgsIDEwMCUpKScsXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0sXHJcbiAgICB9KSwgW1xyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICAgICAgZXhwYW5kZWQsXHJcbiAgICBdKTtcclxuICAgIGNvbnN0IGJhY2tkcm9wUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLm92ZXJsYXksXHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICB9LFxyXG4gICAgfSksIFt0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQub3ZlcmxheV0pO1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBDb250ZW50OiBudWxsLFxyXG4gICAgICAgIEZvb3RlcjogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gQ29udGVudCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkNvbnRlbnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuRm9vdGVyID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZERpYWxvZywgeyBCYWNrZHJvcFByb3BzOiBiYWNrZHJvcFByb3BzLCBQYXBlclByb3BzOiBwYXBlclByb3BzLCBvcGVuOiBpc09wZW4sIG9uQ2xvc2U6IG9uQ2xvc2UsIGNvbnRhaW5lcjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcihLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiksIGRpc2FibGVFc2NhcGVLZXlEb3duOiAhc2hvd0Nsb3NlQnV0dG9uLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc3g6IHsgcGFkZGluZzogJzI0cHgnIH0sIGNoaWxkcmVuOiBbdGl0bGUgfHwgc2hvd0Nsb3NlQnV0dG9uIHx8IHNob3dFeHBhbmRCdXR0b24gPyAoX2pzeHMoSGVhZGVyLCB7IGNoaWxkcmVuOiBbX2pzeChUaXRsZSwgeyBjaGlsZHJlbjogdGl0bGUgfSksIF9qc3hzKFwic3BhblwiLCB7IGNoaWxkcmVuOiBbc2hvd0V4cGFuZEJ1dHRvbiAmJiAoX2pzeChJY29uQnV0dG9uLCB7IHRpdGxlOiAnZXhwYW5kIHdpbmRvdycsIGNsYXNzTmFtZTogc3R5bGVzLmV4cGFuZEJ1dHRvbiwgb25DbGljazogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRFeHBhbmRlZCghZXhwYW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBfanN4KFN0eWxlZEljb24sIHsgbmFtZTogZXhwYW5kZWQgPyAnbWluaW1pemUtZXhwYW5zaW9uJyA6ICdleHBhbmQnIH0pIH0pKSwgc2hvd0Nsb3NlQnV0dG9uICYmIChfanN4KEljb25CdXR0b24sIHsgdGl0bGU6ICdDbG9zZSB3aW5kb3cnLCBvbkNsaWNrOiBvbkNsb3NlLCBjaGlsZHJlbjogX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6ICdjbG9zZScgfSkgfSkpXSB9KV0gfSkpIDogKCcnKSwgc3ViY29tcG9uZW50cy5Db250ZW50LCBzdWJjb21wb25lbnRzLkZvb3Rlcl0gfSkpO1xyXG59O1xyXG5Nb2RhbC5Db250ZW50ID0gQ29udGVudDtcclxuTW9kYWwuRm9vdGVyID0gRm9vdGVyO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb2RhbC5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$r
});
var Content = _styled(DialogContent, process.env.NODE_ENV === "production" ? {
  target: "e45wfhi1"
} : {
  target: "e45wfhi1",
  label: "Content"
})("padding:0;font-size:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.font.size.medium;
}, ";line-height:17px;color:#000000;", function (_ref3) {
  var theme = _ref3.theme;
  return scrollbarThin(theme);
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQ3NDIiwiZmlsZSI6Ik1vZGFsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCB7IERpYWxvZywgRGlhbG9nQWN0aW9ucywgRGlhbG9nQ29udGVudCwgRGlhbG9nVGl0bGUsIEljb25CdXR0b24sIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCBSZWFjdCwgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyB1c2VUaGVtZSB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uLCBLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBzY3JvbGxiYXJUaGluIH0gZnJvbSBcIi4uLy4uLy4uL3RoZW1pbmcvbWl4aW5zXCI7XHJcbmltcG9ydCB7IEVtcHR5RnVuY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9lbXB0eUZ1bmN0aW9uXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9Nb2RhbC5tb2R1bGUubGVzcyc7XHJcbmNvbnN0IFN0eWxlZERpYWxvZyA9IHN0eWxlZChEaWFsb2cpIGBcbiAgLk11aVBhcGVyLXJvb3Qge1xuICAgIG1pbi13aWR0aDogMzA0cHg7XG4gIH1cbmA7XHJcbmNvbnN0IEhlYWRlciA9IHN0eWxlZChEaWFsb2dUaXRsZSkoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHBhZGRpbmc6ICcycHggNHB4IDJweCAxMnB4OycsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBmb250RmFtaWx5OiBgJHt0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyfWAsXHJcbiAgICBmb250U2l6ZTogYCR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWAsXHJcbiAgICBmb250V2VpZ2h0OiA1MDAsXHJcbiAgICB0ZXh0VHJhbnNmb3JtOiAnY2FwaXRhbGl6ZScsXHJcbiAgICBib3JkZXJCb3R0b206ICcxcHggc29saWQgcmdiYSgyMDIsIDIxMSwgMjIxLCAxKScsXHJcbn0pKTtcclxuY29uc3QgVGl0bGUgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblJpZ2h0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogJzE0cHgnLFxyXG59KTtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogJ3JnYmEoNTEsIDUxLCA1MSwgMSknLFxyXG59KTtcclxuY29uc3QgQ29udGVudCA9IHN0eWxlZChEaWFsb2dDb250ZW50KSBgXG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gICR7KHsgdGhlbWUgfSkgPT4gc2Nyb2xsYmFyVGhpbih0aGVtZSl9O1xuYDtcclxuY29uc3QgRm9vdGVyID0gc3R5bGVkKERpYWxvZ0FjdGlvbnMpIGBcbiAgaGVpZ2h0OiA1MnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgYm9yZGVyLXRvcDogJHsoeyB0aGVtZSwgd2l0aGJvcmRlciB9KSA9PiB3aXRoYm9yZGVyID09PSAndHJ1ZScgPyB0aGVtZS5rZXRjaGVyLmJvcmRlci5zbWFsbCA6ICdub25lJ307XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgLk11aUJ1dHRvbkJhc2Utcm9vdCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE1vZGFsID0gKHsgY2hpbGRyZW4sIHRpdGxlLCBpc09wZW4sIHNob3dDbG9zZUJ1dHRvbiA9IHRydWUsIHNob3dFeHBhbmRCdXR0b24gPSBmYWxzZSwgb25DbG9zZSwgY2xhc3NOYW1lLCBtb2RhbFdpZHRoLCBleHBhbmRlZCA9IGZhbHNlLCBzZXRFeHBhbmRlZCA9IEVtcHR5RnVuY3Rpb24sIH0pID0+IHtcclxuICAgIGNvbnN0IHRoZW1lID0gdXNlVGhlbWUoKTtcclxuICAgIGNvbnN0IHBhcGVyUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzhweCcsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgLi4uKHNob3dFeHBhbmRCdXR0b24gJiYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAnYXV0bycsXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogZXhwYW5kZWQgPyAnMTAwJScgOiBtb2RhbFdpZHRoLFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBleHBhbmRlZCA/ICcxMDAlJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgIG1heFdpZHRoOiAnY2FsYyhtaW4oMTI4MHB4LCAxMDAlKSknLFxyXG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiAnY2FsYyhtaW4oOTgwcHgsIDEwMCUpKScsXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0sXHJcbiAgICB9KSwgW1xyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICAgICAgZXhwYW5kZWQsXHJcbiAgICBdKTtcclxuICAgIGNvbnN0IGJhY2tkcm9wUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLm92ZXJsYXksXHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICB9LFxyXG4gICAgfSksIFt0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQub3ZlcmxheV0pO1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBDb250ZW50OiBudWxsLFxyXG4gICAgICAgIEZvb3RlcjogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gQ29udGVudCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkNvbnRlbnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuRm9vdGVyID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZERpYWxvZywgeyBCYWNrZHJvcFByb3BzOiBiYWNrZHJvcFByb3BzLCBQYXBlclByb3BzOiBwYXBlclByb3BzLCBvcGVuOiBpc09wZW4sIG9uQ2xvc2U6IG9uQ2xvc2UsIGNvbnRhaW5lcjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcihLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiksIGRpc2FibGVFc2NhcGVLZXlEb3duOiAhc2hvd0Nsb3NlQnV0dG9uLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc3g6IHsgcGFkZGluZzogJzI0cHgnIH0sIGNoaWxkcmVuOiBbdGl0bGUgfHwgc2hvd0Nsb3NlQnV0dG9uIHx8IHNob3dFeHBhbmRCdXR0b24gPyAoX2pzeHMoSGVhZGVyLCB7IGNoaWxkcmVuOiBbX2pzeChUaXRsZSwgeyBjaGlsZHJlbjogdGl0bGUgfSksIF9qc3hzKFwic3BhblwiLCB7IGNoaWxkcmVuOiBbc2hvd0V4cGFuZEJ1dHRvbiAmJiAoX2pzeChJY29uQnV0dG9uLCB7IHRpdGxlOiAnZXhwYW5kIHdpbmRvdycsIGNsYXNzTmFtZTogc3R5bGVzLmV4cGFuZEJ1dHRvbiwgb25DbGljazogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRFeHBhbmRlZCghZXhwYW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBfanN4KFN0eWxlZEljb24sIHsgbmFtZTogZXhwYW5kZWQgPyAnbWluaW1pemUtZXhwYW5zaW9uJyA6ICdleHBhbmQnIH0pIH0pKSwgc2hvd0Nsb3NlQnV0dG9uICYmIChfanN4KEljb25CdXR0b24sIHsgdGl0bGU6ICdDbG9zZSB3aW5kb3cnLCBvbkNsaWNrOiBvbkNsb3NlLCBjaGlsZHJlbjogX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6ICdjbG9zZScgfSkgfSkpXSB9KV0gfSkpIDogKCcnKSwgc3ViY29tcG9uZW50cy5Db250ZW50LCBzdWJjb21wb25lbnRzLkZvb3Rlcl0gfSkpO1xyXG59O1xyXG5Nb2RhbC5Db250ZW50ID0gQ29udGVudDtcclxuTW9kYWwuRm9vdGVyID0gRm9vdGVyO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb2RhbC5qcy5tYXAiXX0= */"));
var Footer = _styled(DialogActions, process.env.NODE_ENV === "production" ? {
  target: "e45wfhi0"
} : {
  target: "e45wfhi0",
  label: "Footer"
})("height:52px;margin:0;padding:0 12px;border-top:", function (_ref4) {
  var theme = _ref4.theme,
    withborder = _ref4.withborder;
  return withborder === 'true' ? theme.ketcher.border.small : 'none';
}, ";justify-content:flex-end;.MuiButtonBase-root{border-radius:4px;font-size:", function (_ref5) {
  var theme = _ref5.theme;
  return theme.ketcher.font.size.regular;
}, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vZGFsLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5Q3FDIiwiZmlsZSI6Ik1vZGFsLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCB7IERpYWxvZywgRGlhbG9nQWN0aW9ucywgRGlhbG9nQ29udGVudCwgRGlhbG9nVGl0bGUsIEljb25CdXR0b24sIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCBSZWFjdCwgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyB1c2VUaGVtZSB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uLCBLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBzY3JvbGxiYXJUaGluIH0gZnJvbSBcIi4uLy4uLy4uL3RoZW1pbmcvbWl4aW5zXCI7XHJcbmltcG9ydCB7IEVtcHR5RnVuY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9lbXB0eUZ1bmN0aW9uXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9Nb2RhbC5tb2R1bGUubGVzcyc7XHJcbmNvbnN0IFN0eWxlZERpYWxvZyA9IHN0eWxlZChEaWFsb2cpIGBcbiAgLk11aVBhcGVyLXJvb3Qge1xuICAgIG1pbi13aWR0aDogMzA0cHg7XG4gIH1cbmA7XHJcbmNvbnN0IEhlYWRlciA9IHN0eWxlZChEaWFsb2dUaXRsZSkoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHBhZGRpbmc6ICcycHggNHB4IDJweCAxMnB4OycsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICBmb250RmFtaWx5OiBgJHt0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyfWAsXHJcbiAgICBmb250U2l6ZTogYCR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWAsXHJcbiAgICBmb250V2VpZ2h0OiA1MDAsXHJcbiAgICB0ZXh0VHJhbnNmb3JtOiAnY2FwaXRhbGl6ZScsXHJcbiAgICBib3JkZXJCb3R0b206ICcxcHggc29saWQgcmdiYSgyMDIsIDIxMSwgMjIxLCAxKScsXHJcbn0pKTtcclxuY29uc3QgVGl0bGUgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1hcmdpblJpZ2h0OiAnMTBweCcsXHJcbiAgICBmb250U2l6ZTogJzE0cHgnLFxyXG59KTtcclxuY29uc3QgU3R5bGVkSWNvbiA9IHN0eWxlZChJY29uKSh7XHJcbiAgICB3aWR0aDogJzE2cHgnLFxyXG4gICAgaGVpZ2h0OiAnMTZweCcsXHJcbiAgICBjb2xvcjogJ3JnYmEoNTEsIDUxLCA1MSwgMSknLFxyXG59KTtcclxuY29uc3QgQ29udGVudCA9IHN0eWxlZChEaWFsb2dDb250ZW50KSBgXG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gICR7KHsgdGhlbWUgfSkgPT4gc2Nyb2xsYmFyVGhpbih0aGVtZSl9O1xuYDtcclxuY29uc3QgRm9vdGVyID0gc3R5bGVkKERpYWxvZ0FjdGlvbnMpIGBcbiAgaGVpZ2h0OiA1MnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgYm9yZGVyLXRvcDogJHsoeyB0aGVtZSwgd2l0aGJvcmRlciB9KSA9PiB3aXRoYm9yZGVyID09PSAndHJ1ZScgPyB0aGVtZS5rZXRjaGVyLmJvcmRlci5zbWFsbCA6ICdub25lJ307XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgLk11aUJ1dHRvbkJhc2Utcm9vdCB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IE1vZGFsID0gKHsgY2hpbGRyZW4sIHRpdGxlLCBpc09wZW4sIHNob3dDbG9zZUJ1dHRvbiA9IHRydWUsIHNob3dFeHBhbmRCdXR0b24gPSBmYWxzZSwgb25DbG9zZSwgY2xhc3NOYW1lLCBtb2RhbFdpZHRoLCBleHBhbmRlZCA9IGZhbHNlLCBzZXRFeHBhbmRlZCA9IEVtcHR5RnVuY3Rpb24sIH0pID0+IHtcclxuICAgIGNvbnN0IHRoZW1lID0gdXNlVGhlbWUoKTtcclxuICAgIGNvbnN0IHBhcGVyUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzhweCcsXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICAgICAgLi4uKHNob3dFeHBhbmRCdXR0b24gJiYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAnYXV0bycsXHJcbiAgICAgICAgICAgICAgICB3aWR0aDogZXhwYW5kZWQgPyAnMTAwJScgOiBtb2RhbFdpZHRoLFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBleHBhbmRlZCA/ICcxMDAlJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgIG1heFdpZHRoOiAnY2FsYyhtaW4oMTI4MHB4LCAxMDAlKSknLFxyXG4gICAgICAgICAgICAgICAgbWF4SGVpZ2h0OiAnY2FsYyhtaW4oOTgwcHgsIDEwMCUpKScsXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgIH0sXHJcbiAgICB9KSwgW1xyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5jYW52YXMsXHJcbiAgICAgICAgZXhwYW5kZWQsXHJcbiAgICBdKTtcclxuICAgIGNvbnN0IGJhY2tkcm9wUHJvcHMgPSB1c2VNZW1vKCgpID0+ICh7XHJcbiAgICAgICAgc3R5bGU6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLm92ZXJsYXksXHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICB9LFxyXG4gICAgfSksIFt0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQub3ZlcmxheV0pO1xyXG4gICAgY29uc3Qgc3ViY29tcG9uZW50cyA9IHtcclxuICAgICAgICBDb250ZW50OiBudWxsLFxyXG4gICAgICAgIEZvb3RlcjogbnVsbCxcclxuICAgIH07XHJcbiAgICBSZWFjdC5DaGlsZHJlbi5mb3JFYWNoKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcclxuICAgICAgICBpZiAoY2hpbGQudHlwZSA9PT0gQ29udGVudCkge1xyXG4gICAgICAgICAgICBzdWJjb21wb25lbnRzLkNvbnRlbnQgPSBjaGlsZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoY2hpbGQudHlwZSA9PT0gRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHN1YmNvbXBvbmVudHMuRm9vdGVyID0gY2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZERpYWxvZywgeyBCYWNrZHJvcFByb3BzOiBiYWNrZHJvcFByb3BzLCBQYXBlclByb3BzOiBwYXBlclByb3BzLCBvcGVuOiBpc09wZW4sIG9uQ2xvc2U6IG9uQ2xvc2UsIGNvbnRhaW5lcjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcihLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUiksIGRpc2FibGVFc2NhcGVLZXlEb3duOiAhc2hvd0Nsb3NlQnV0dG9uLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc3g6IHsgcGFkZGluZzogJzI0cHgnIH0sIGNoaWxkcmVuOiBbdGl0bGUgfHwgc2hvd0Nsb3NlQnV0dG9uIHx8IHNob3dFeHBhbmRCdXR0b24gPyAoX2pzeHMoSGVhZGVyLCB7IGNoaWxkcmVuOiBbX2pzeChUaXRsZSwgeyBjaGlsZHJlbjogdGl0bGUgfSksIF9qc3hzKFwic3BhblwiLCB7IGNoaWxkcmVuOiBbc2hvd0V4cGFuZEJ1dHRvbiAmJiAoX2pzeChJY29uQnV0dG9uLCB7IHRpdGxlOiAnZXhwYW5kIHdpbmRvdycsIGNsYXNzTmFtZTogc3R5bGVzLmV4cGFuZEJ1dHRvbiwgb25DbGljazogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRFeHBhbmRlZCghZXhwYW5kZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBfanN4KFN0eWxlZEljb24sIHsgbmFtZTogZXhwYW5kZWQgPyAnbWluaW1pemUtZXhwYW5zaW9uJyA6ICdleHBhbmQnIH0pIH0pKSwgc2hvd0Nsb3NlQnV0dG9uICYmIChfanN4KEljb25CdXR0b24sIHsgdGl0bGU6ICdDbG9zZSB3aW5kb3cnLCBvbkNsaWNrOiBvbkNsb3NlLCBjaGlsZHJlbjogX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6ICdjbG9zZScgfSkgfSkpXSB9KV0gfSkpIDogKCcnKSwgc3ViY29tcG9uZW50cy5Db250ZW50LCBzdWJjb21wb25lbnRzLkZvb3Rlcl0gfSkpO1xyXG59O1xyXG5Nb2RhbC5Db250ZW50ID0gQ29udGVudDtcclxuTW9kYWwuRm9vdGVyID0gRm9vdGVyO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb2RhbC5qcy5tYXAiXX0= */"));
var Modal = function Modal(_ref6) {
  var children = _ref6.children,
    title = _ref6.title,
    isOpen = _ref6.isOpen,
    _ref6$showCloseButton = _ref6.showCloseButton,
    showCloseButton = _ref6$showCloseButton === void 0 ? true : _ref6$showCloseButton,
    _ref6$showExpandButto = _ref6.showExpandButton,
    showExpandButton = _ref6$showExpandButto === void 0 ? false : _ref6$showExpandButto,
    onClose = _ref6.onClose,
    className = _ref6.className,
    modalWidth = _ref6.modalWidth,
    _ref6$expanded = _ref6.expanded,
    expanded = _ref6$expanded === void 0 ? false : _ref6$expanded,
    _ref6$setExpanded = _ref6.setExpanded,
    setExpanded = _ref6$setExpanded === void 0 ? EmptyFunction : _ref6$setExpanded;
  var theme = useTheme();
  var paperProps = useMemo(function () {
    return {
      style: _objectSpread$b({
        background: theme.ketcher.color.background.primary,
        borderRadius: '8px',
        color: theme.ketcher.color.text.primary
      }, showExpandButton && {
        margin: 'auto',
        width: expanded ? '100%' : modalWidth,
        height: expanded ? '100%' : undefined,
        maxWidth: 'calc(min(1280px, 100%))',
        maxHeight: 'calc(min(980px, 100%))'
      })
    };
  }, [theme.ketcher.color.text.primary, theme.ketcher.color.background.canvas, expanded]);
  var backdropProps = useMemo(function () {
    return {
      style: {
        background: theme.ketcher.color.background.overlay,
        opacity: 0.4
      }
    };
  }, [theme.ketcher.color.background.overlay]);
  var subcomponents = {
    Content: null,
    Footer: null
  };
  React__default.Children.forEach(children, function (child) {
    if (child.type === Content) {
      subcomponents.Content = child;
    } else if (child.type === Footer) {
      subcomponents.Footer = child;
    }
  });
  return jsxs(StyledDialog, {
    BackdropProps: backdropProps,
    PaperProps: paperProps,
    open: isOpen,
    onClose: onClose,
    container: document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR),
    disableEscapeKeyDown: !showCloseButton,
    className: className,
    sx: {
      padding: '24px'
    },
    children: [title || showCloseButton || showExpandButton ? jsxs(Header, {
      children: [jsx(Title, {
        children: title
      }), jsxs("span", {
        children: [showExpandButton && jsx(IconButton$1, {
          title: 'expand window',
          className: styles.expandButton,
          onClick: function onClick() {
            setExpanded(!expanded);
          },
          children: jsx(StyledIcon$1, {
            name: expanded ? 'minimize-expansion' : 'expand'
          })
        }), showCloseButton && jsx(IconButton$1, {
          title: 'Close window',
          onClick: onClose,
          children: jsx(StyledIcon$1, {
            name: 'close'
          })
        })]
      })]
    }) : '', subcomponents.Content, subcomponents.Footer]
  });
};
Modal.Content = Content;
Modal.Footer = Footer;

var RnaBuilder = function RnaBuilder(_ref) {
  var libraryName = _ref.libraryName,
    duplicatePreset = _ref.duplicatePreset,
    editPreset = _ref.editPreset;
  var dispatch = useAppDispatch();
  var uniqueNameError = useAppSelector(selectUniqueNameError);
  var invalidPresetError = useAppSelector(selectInvalidPresetError);
  var closeErrorModal = function closeErrorModal() {
    if (uniqueNameError.length > 0) {
      dispatch(setUniqueNameError(''));
    }
    if (invalidPresetError.length > 0) {
      dispatch(setInvalidPresetError(''));
    }
  };
  return jsxs(RnaBuilderContainer, {
    children: [jsx(RnaEditor, {
      duplicatePreset: duplicatePreset
    }), jsx(RnaAccordion, {
      libraryName: libraryName,
      duplicatePreset: duplicatePreset,
      editPreset: editPreset
    }), jsxs(Modal, {
      isOpen: !!uniqueNameError || !!invalidPresetError,
      title: "Error Message",
      onClose: closeErrorModal,
      children: [jsx(Modal.Content, {
        children: jsxs("div", {
          style: {
            padding: '12px'
          },
          children: [uniqueNameError && "Preset with name \"".concat(uniqueNameError, "\" already exists. Please choose another name."), invalidPresetError && "Preset with name \"".concat(invalidPresetError, "\" can't be used. Because it is impossible to establish bonds between monomers. Edit it's structure or choose another one.")]
        })
      }), jsx(Modal.Footer, {
        children: jsx(StyledButton$2, {
          onClick: closeErrorModal,
          children: "Close"
        })
      })]
    })]
  });
};

var tabsContent = function tabsContent(duplicatePreset, editPreset) {
  return [{
    caption: 'Favorites',
    component: MonomerList,
    testId: 'FAVORITES-TAB',
    props: {
      libraryName: MONOMER_LIBRARY_FAVORITES,
      duplicatePreset: duplicatePreset,
      editPreset: editPreset
    }
  }, {
    caption: 'Peptides',
    component: MonomerList,
    testId: 'PEPTIDES-TAB',
    props: {
      libraryName: MONOMER_TYPES.PEPTIDE
    }
  }, {
    caption: 'RNA',
    testId: 'RNA-TAB',
    component: RnaBuilder,
    props: {
      libraryName: MONOMER_TYPES.RNA,
      duplicatePreset: duplicatePreset,
      editPreset: editPreset
    }
  }, {
    caption: 'CHEM',
    component: MonomerList,
    testId: 'CHEM-TAB',
    props: {
      libraryName: MONOMER_TYPES.CHEM
    }
  }];
};

function ownKeys$a(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$a(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$a(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var COPY = '_Copy';
var MonomerLibrary = function MonomerLibrary() {
  var presetsRef = useRef([]);
  var dispatch = useAppDispatch();
  useEffect(function () {
    dispatch(setSearchFilter(''));
  }, [dispatch]);
  useAppSelector(selectAllPresets, function (presets) {
    presetsRef.current = presets;
    return true;
  });
  var filterResults = function filterResults(event) {
    dispatch(setSearchFilter(event.target.value));
  };
  var duplicatePreset = function duplicatePreset(preset) {
    var name = "".concat(preset === null || preset === void 0 ? void 0 : preset.name).concat(COPY);
    var presetWithSameName;
    do {
      presetWithSameName = presetsRef.current.find(function (preset) {
        return preset.name === name;
      });
      if (presetWithSameName) name += COPY;
    } while (presetWithSameName);
    if (presetWithSameName) {
      dispatch(setUniqueNameError(name));
      return;
    }
    var nameToSet = presetWithSameName ? "".concat(name, "_Copy") : name;
    var duplicatedPreset = _objectSpread$a(_objectSpread$a({}, preset), {}, {
      name: nameToSet,
      nameInList: nameToSet,
      "default": false,
      favorite: false
    });
    dispatch(setActivePreset(duplicatedPreset));
    dispatch(setIsEditMode(true));
    scrollToSelectedPreset(preset === null || preset === void 0 ? void 0 : preset.name);
  };
  var editPreset = function editPreset(preset) {
    dispatch(setActivePreset(preset));
    dispatch(setIsEditMode(true));
  };
  return jsxs(MonomerLibraryContainer, {
    "data-testid": "monomer-library",
    children: [jsxs(MonomerLibraryHeader, {
      children: [jsx(MonomerLibraryTitle, {
        children: "Library"
      }), jsx(MonomerLibrarySearch, {
        children: jsxs("div", {
          children: [jsx("span", {
            children: jsx(Icon, {
              name: "search"
            })
          }), jsx(MonomerLibraryInput, {
            type: "search",
            "data-testid": "monomer-library-input",
            onChange: filterResults,
            placeholder: "Search by name..."
          })]
        })
      })]
    }), jsx(CustomTabs, {
      tabs: tabsContent(duplicatePreset, editPreset)
    })]
  });
};

var StyledMonomerLibraryToggle = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "emj253a0"
} : {
  target: "emj253a0",
  label: "StyledMonomerLibraryToggle"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    margin: 0,
    fontSize: theme.ketcher.font.size.regular,
    color: theme.ketcher.color.text.secondary,
    position: 'absolute',
    cursor: 'pointer',
    top: 'calc(8px + 12px)',
    right: 'calc(4px + 12px)',
    visibility: 'visible',
    opacity: 1,
    whiteSpace: 'nowrap',
    display: 'flex',
    lineHeight: 1,
    padding: '5px 8px',
    borderRadius: '4px',
    userSelect: 'none',
    '& > span': {
      display: 'flex',
      justifyContent: 'center',
      alignItems: 'center',
      '&.icon': {
        marginRight: '2px'
      }
    },
    '&.hidden': {
      backgroundColor: theme.ketcher.color.button.primary.active,
      color: theme.ketcher.color.button.text.primary
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJMaWJyYXJ5VG9nZ2xlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHbUMiLCJmaWxlIjoiTW9ub21lckxpYnJhcnlUb2dnbGUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmNvbnN0IFN0eWxlZE1vbm9tZXJMaWJyYXJ5VG9nZ2xlID0gc3R5bGVkLmRpdigoeyB0aGVtZSB9KSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIG1hcmdpbjogMCxcclxuICAgICAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnNlY29uZGFyeSxcclxuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcclxuICAgICAgICB0b3A6ICdjYWxjKDhweCArIDEycHgpJyxcclxuICAgICAgICByaWdodDogJ2NhbGMoNHB4ICsgMTJweCknLFxyXG4gICAgICAgIHZpc2liaWxpdHk6ICd2aXNpYmxlJyxcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICBsaW5lSGVpZ2h0OiAxLFxyXG4gICAgICAgIHBhZGRpbmc6ICc1cHggOHB4JyxcclxuICAgICAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG4gICAgICAgIHVzZXJTZWxlY3Q6ICdub25lJyxcclxuICAgICAgICAnJiA+IHNwYW4nOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgICAgICAgICAgJyYuaWNvbic6IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpblJpZ2h0OiAnMnB4JyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICcmLmhpZGRlbic6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeSxcclxuICAgICAgICB9LFxyXG4gICAgfTtcclxufSk7XHJcbmNvbnN0IE1vbm9tZXJMaWJyYXJ5VG9nZ2xlID0gKHsgaXNIaWRkZW4sIG9uQ2xpY2sgfSkgPT4ge1xyXG4gICAgcmV0dXJuIChfanN4cyhTdHlsZWRNb25vbWVyTGlicmFyeVRvZ2dsZSwgeyBjbGFzc05hbWU6IGlzSGlkZGVuID8gJ2hpZGRlbicgOiAnJywgb25DbGljazogb25DbGljaywgY2hpbGRyZW46IFtfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogXCJpY29uXCIsIGNoaWxkcmVuOiBpc0hpZGRlbiA/IF9qc3goSWNvbiwgeyBuYW1lOiBcImFycm93cy1sZWZ0XCIgfSkgOiBfanN4KEljb24sIHsgbmFtZTogXCJhcnJvd3MtcmlnaHRcIiB9KSB9KSwgX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogaXNIaWRkZW4gPyAnU2hvdyBMaWJyYXJ5JyA6ICdIaWRlJyB9KV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBNb25vbWVyTGlicmFyeVRvZ2dsZSB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyTGlicmFyeVRvZ2dsZS5qcy5tYXAiXX0= */");
var MonomerLibraryToggle = function MonomerLibraryToggle(_ref2) {
  var isHidden = _ref2.isHidden,
    onClick = _ref2.onClick;
  return jsxs(StyledMonomerLibraryToggle, {
    className: isHidden ? 'hidden' : '',
    onClick: onClick,
    children: [jsx("span", {
      className: "icon",
      children: isHidden ? jsx(Icon, {
        name: "arrows-left"
      }) : jsx(Icon, {
        name: "arrows-right"
      })
    }), jsx("span", {
      children: isHidden ? 'Show Library' : 'Hide'
    })]
  });
};

var LoadContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e10ckbgw0"
} : {
  target: "e10ckbgw0",
  label: "LoadContainer"
})("display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;width:40px;height:12px;margin-top:10px;& span{display:inline-block;width:8px;height:8px;border:2px solid ", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.color.spinner;
}, ";border-radius:100%;box-sizing:border-box;&:nth-of-type(1){animation:bounce 1s ease-in-out infinite;}&:nth-of-type(2){animation:bounce 1s ease-in-out 0.33s infinite;}&:nth-of-type(3){animation:bounce 1s ease-in-out 0.66s infinite;}}@keyframes bounce{0%,75%,100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0);}25%{-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%);}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxvYWRpbmdDaXJjbGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQmlDIiwiZmlsZSI6IkxvYWRpbmdDaXJjbGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmNvbnN0IExvYWRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcblxuICAmIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5zcGlubmVyfTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICAgIGFuaW1hdGlvbjogYm91bmNlIDFzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgYW5pbWF0aW9uOiBib3VuY2UgMXMgZWFzZS1pbi1vdXQgMC4zM3MgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgICBhbmltYXRpb246IGJvdW5jZSAxcyBlYXNlLWluLW91dCAwLjY2cyBpbmZpbml0ZTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIGJvdW5jZSB7XG4gICAgMCUsXG4gICAgNzUlLFxuICAgIDEwMCUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIH1cbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IExvYWRpbmdDaXJjbGVzID0gKCkgPT4gKF9qc3hzKExvYWRDb250YWluZXIsIHsgY2xhc3NOYW1lOiBcImxvYWRpbmctc3Bpbm5lclwiLCBjaGlsZHJlbjogW19qc3goXCJzcGFuXCIsIHt9KSwgX2pzeChcInNwYW5cIiwge30pLCBfanN4KFwic3BhblwiLCB7fSldIH0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TG9hZGluZ0NpcmNsZXMuanMubWFwIl19 */"));
var LoadingCircles = function LoadingCircles() {
  return jsxs(LoadContainer, {
    className: "loading-spinner",
    children: [jsx("span", {}), jsx("span", {}), jsx("span", {})]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$q() { 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)."; }
var ICON_NAME = 'file-thumbnail';
var RootContainer$2 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ep0evuw1"
} : {
  target: "ep0evuw1",
  label: "RootContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "1btsn9l",
  styles: "width:410px;min-height:23em;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center"
} : {
  name: "1btsn9l",
  styles: "width:410px;min-height:23em;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFuYWx5emluZ0ZpbGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9CaUMiLCJmaWxlIjoiQW5hbHl6aW5nRmlsZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBMb2FkaW5nQ2lyY2xlcyB9IGZyb20gJy4vTG9hZGluZ0NpcmNsZXMnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmNvbnN0IElDT05fTkFNRSA9ICdmaWxlLXRodW1ibmFpbCc7XHJcbmNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDQxMHB4O1xuICBtaW4taGVpZ2h0OiAyM2VtO1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbmA7XHJcbmNvbnN0IEZpbGVCb3ggPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMTNweDtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjNTg1ODU4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IEFuYWx5emluZ0ZpbGUgPSAoeyBmaWxlTmFtZSB9KSA9PiB7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvb3RDb250YWluZXIsIHsgY2hpbGRyZW46IFtmaWxlTmFtZSAmJiAoX2pzeHMoRmlsZUJveCwgeyBjaGlsZHJlbjogW19qc3goSWNvbiwgeyBuYW1lOiBJQ09OX05BTUUgfSksIF9qc3goXCJwXCIsIHsgY2hpbGRyZW46IGZpbGVOYW1lIH0pXSB9KSksIF9qc3goTG9hZGluZ0NpcmNsZXMsIHt9KV0gfSkpO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1BbmFseXppbmdGaWxlLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$q
});
var FileBox = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ep0evuw0"
} : {
  target: "ep0evuw0",
  label: "FileBox"
})(process.env.NODE_ENV === "production" ? {
  name: "vbftiw",
  styles: "display:flex;flex-direction:row;align-items:center;svg{margin-right:13px;}p{color:#585858;font-size:16px;line-height:19px;}"
} : {
  name: "vbftiw",
  styles: "display:flex;flex-direction:row;align-items:center;svg{margin-right:13px;}p{color:#585858;font-size:16px;line-height:19px;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFuYWx5emluZ0ZpbGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCMkIiLCJmaWxlIjoiQW5hbHl6aW5nRmlsZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBMb2FkaW5nQ2lyY2xlcyB9IGZyb20gJy4vTG9hZGluZ0NpcmNsZXMnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmNvbnN0IElDT05fTkFNRSA9ICdmaWxlLXRodW1ibmFpbCc7XHJcbmNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDQxMHB4O1xuICBtaW4taGVpZ2h0OiAyM2VtO1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbmA7XHJcbmNvbnN0IEZpbGVCb3ggPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMTNweDtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjNTg1ODU4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTlweDtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IEFuYWx5emluZ0ZpbGUgPSAoeyBmaWxlTmFtZSB9KSA9PiB7XHJcbiAgICByZXR1cm4gKF9qc3hzKFJvb3RDb250YWluZXIsIHsgY2hpbGRyZW46IFtmaWxlTmFtZSAmJiAoX2pzeHMoRmlsZUJveCwgeyBjaGlsZHJlbjogW19qc3goSWNvbiwgeyBuYW1lOiBJQ09OX05BTUUgfSksIF9qc3goXCJwXCIsIHsgY2hpbGRyZW46IGZpbGVOYW1lIH0pXSB9KSksIF9qc3goTG9hZGluZ0NpcmNsZXMsIHt9KV0gfSkpO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1BbmFseXppbmdGaWxlLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$q
});
var AnalyzingFile = function AnalyzingFile(_ref) {
  var fileName = _ref.fileName;
  return jsxs(RootContainer$2, {
    children: [fileName && jsxs(FileBox, {
      children: [jsx(Icon, {
        name: ICON_NAME
      }), jsx("p", {
        children: fileName
      })]
    }), jsx(LoadingCircles, {})]
  });
};

var _excluded$2 = ["textLabel", "iconName", "disabled", "disabledText"];
function ownKeys$9(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var baseStyle = {
  width: '100%',
  height: '100%',
  display: 'flex',
  alignItems: 'center',
  flexDirection: 'column',
  justifyContent: 'space-between'
};
var StyledIcon = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "erk2iw51"
} : {
  target: "erk2iw51",
  label: "StyledIcon"
})("filter:", function (_ref) {
  var disabled = _ref.disabled;
  return disabled ? 'grayscale(1)' : '';
}, ";opacity:", function (_ref2) {
  var disabled = _ref2.disabled;
  return disabled ? '0.6' : '1';
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpbGVEcm9wLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QmdDIiwiZmlsZSI6IkZpbGVEcm9wLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IHVzZURyb3B6b25lIH0gZnJvbSAncmVhY3QtZHJvcHpvbmUnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgT3Blbk9wdGlvblRleHQsIERpc2FibGVkVGV4dCB9IGZyb20gJy4uL09wZW5PcHRpb25zJztcclxuY29uc3QgYmFzZVN0eWxlID0ge1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbn07XHJcbmNvbnN0IFN0eWxlZEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBmaWx0ZXI6ICR7KHsgZGlzYWJsZWQgfSkgPT4gKGRpc2FibGVkID8gJ2dyYXlzY2FsZSgxKScgOiAnJyl9O1xuICBvcGFjaXR5OiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICcwLjYnIDogJzEnKX07XG5gO1xyXG5jb25zdCBhY3RpdmVTdHlsZSA9IHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGOEZFRkZGRicsXHJcbn07XHJcbmNvbnN0IEJ1dHRvbkNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgPiBzcGFuIHtcbiAgICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUuc21hbGx9O1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgICBvcGFjaXR5OiA1MCU7XG4gIH1cbiAgJiA+IHN2ZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG5gO1xyXG5jb25zdCBGaWxlRHJvcCA9ICh7IHRleHRMYWJlbCwgaWNvbk5hbWUsIGRpc2FibGVkLCBkaXNhYmxlZFRleHQsIC4uLnJlc3QgfSkgPT4ge1xyXG4gICAgY29uc3QgeyBnZXRSb290UHJvcHMsIGdldElucHV0UHJvcHMsIGlzRHJhZ0FjdGl2ZSwgb3BlbiB9ID0gdXNlRHJvcHpvbmUoe1xyXG4gICAgICAgIG11bHRpcGxlOiBmYWxzZSxcclxuICAgICAgICBub0NsaWNrOiB0cnVlLFxyXG4gICAgICAgIGRpc2FibGVkLFxyXG4gICAgICAgIC4uLnJlc3QsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHN0eWxlID0gdXNlTWVtbygoKSA9PiAoe1xyXG4gICAgICAgIC4uLmJhc2VTdHlsZSxcclxuICAgICAgICAuLi4oaXNEcmFnQWN0aXZlID8gYWN0aXZlU3R5bGUgOiB7fSksXHJcbiAgICB9KSwgW2lzRHJhZ0FjdGl2ZV0pO1xyXG4gICAgcmV0dXJuIChfanN4cyhcImRpdlwiLCB7IC4uLmdldFJvb3RQcm9wcyh7IHN0eWxlIH0pLCBvbkNsaWNrOiBvcGVuLCBjaGlsZHJlbjogW19qc3goXCJpbnB1dFwiLCB7IC4uLmdldElucHV0UHJvcHMoKSB9KSwgX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6IGljb25OYW1lLCBkaXNhYmxlZDogZGlzYWJsZWQgfSksIGRpc2FibGVkID8gKF9qc3goRGlzYWJsZWRUZXh0LCB7IGNoaWxkcmVuOiBkaXNhYmxlZFRleHQgfSkpIDogKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW19qc3goQnV0dG9uQ29udGFpbmVyLCB7IGNoaWxkcmVuOiB0ZXh0TGFiZWwgJiYgX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogdGV4dExhYmVsIH0pIH0pLCBfanN4KE9wZW5PcHRpb25UZXh0LCB7IGNoaWxkcmVuOiBcIk9wZW4gZnJvbSBmaWxlXCIgfSldIH0pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBGaWxlRHJvcCB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1GaWxlRHJvcC5qcy5tYXAiXX0= */"));
var activeStyle = {
  backgroundColor: '#F8FEFFFF'
};
var ButtonContainer$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "erk2iw50"
} : {
  target: "erk2iw50",
  label: "ButtonContainer"
})("display:flex;flex-direction:column;align-items:center;&>span{font-size:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.font.size.small;
}, ";color:", function (_ref4) {
  var theme = _ref4.theme;
  return theme.ketcher.color.text.primary;
}, ";opacity:50%;}&>svg{margin-bottom:8px;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpbGVEcm9wLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQ21DIiwiZmlsZSI6IkZpbGVEcm9wLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IHVzZURyb3B6b25lIH0gZnJvbSAncmVhY3QtZHJvcHpvbmUnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgT3Blbk9wdGlvblRleHQsIERpc2FibGVkVGV4dCB9IGZyb20gJy4uL09wZW5PcHRpb25zJztcclxuY29uc3QgYmFzZVN0eWxlID0ge1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbn07XHJcbmNvbnN0IFN0eWxlZEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBmaWx0ZXI6ICR7KHsgZGlzYWJsZWQgfSkgPT4gKGRpc2FibGVkID8gJ2dyYXlzY2FsZSgxKScgOiAnJyl9O1xuICBvcGFjaXR5OiAkeyh7IGRpc2FibGVkIH0pID0+IChkaXNhYmxlZCA/ICcwLjYnIDogJzEnKX07XG5gO1xyXG5jb25zdCBhY3RpdmVTdHlsZSA9IHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGOEZFRkZGRicsXHJcbn07XHJcbmNvbnN0IEJ1dHRvbkNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgPiBzcGFuIHtcbiAgICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUuc21hbGx9O1xuICAgIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgICBvcGFjaXR5OiA1MCU7XG4gIH1cbiAgJiA+IHN2ZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG5gO1xyXG5jb25zdCBGaWxlRHJvcCA9ICh7IHRleHRMYWJlbCwgaWNvbk5hbWUsIGRpc2FibGVkLCBkaXNhYmxlZFRleHQsIC4uLnJlc3QgfSkgPT4ge1xyXG4gICAgY29uc3QgeyBnZXRSb290UHJvcHMsIGdldElucHV0UHJvcHMsIGlzRHJhZ0FjdGl2ZSwgb3BlbiB9ID0gdXNlRHJvcHpvbmUoe1xyXG4gICAgICAgIG11bHRpcGxlOiBmYWxzZSxcclxuICAgICAgICBub0NsaWNrOiB0cnVlLFxyXG4gICAgICAgIGRpc2FibGVkLFxyXG4gICAgICAgIC4uLnJlc3QsXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHN0eWxlID0gdXNlTWVtbygoKSA9PiAoe1xyXG4gICAgICAgIC4uLmJhc2VTdHlsZSxcclxuICAgICAgICAuLi4oaXNEcmFnQWN0aXZlID8gYWN0aXZlU3R5bGUgOiB7fSksXHJcbiAgICB9KSwgW2lzRHJhZ0FjdGl2ZV0pO1xyXG4gICAgcmV0dXJuIChfanN4cyhcImRpdlwiLCB7IC4uLmdldFJvb3RQcm9wcyh7IHN0eWxlIH0pLCBvbkNsaWNrOiBvcGVuLCBjaGlsZHJlbjogW19qc3goXCJpbnB1dFwiLCB7IC4uLmdldElucHV0UHJvcHMoKSB9KSwgX2pzeChTdHlsZWRJY29uLCB7IG5hbWU6IGljb25OYW1lLCBkaXNhYmxlZDogZGlzYWJsZWQgfSksIGRpc2FibGVkID8gKF9qc3goRGlzYWJsZWRUZXh0LCB7IGNoaWxkcmVuOiBkaXNhYmxlZFRleHQgfSkpIDogKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW19qc3goQnV0dG9uQ29udGFpbmVyLCB7IGNoaWxkcmVuOiB0ZXh0TGFiZWwgJiYgX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogdGV4dExhYmVsIH0pIH0pLCBfanN4KE9wZW5PcHRpb25UZXh0LCB7IGNoaWxkcmVuOiBcIk9wZW4gZnJvbSBmaWxlXCIgfSldIH0pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBGaWxlRHJvcCB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1GaWxlRHJvcC5qcy5tYXAiXX0= */"));
var FileDrop = function FileDrop(_ref5) {
  var textLabel = _ref5.textLabel,
    iconName = _ref5.iconName,
    disabled = _ref5.disabled,
    disabledText = _ref5.disabledText,
    rest = _objectWithoutProperties(_ref5, _excluded$2);
  var _useDropzone = useDropzone(_objectSpread$9({
      multiple: false,
      noClick: true,
      disabled: disabled
    }, rest)),
    getRootProps = _useDropzone.getRootProps,
    getInputProps = _useDropzone.getInputProps,
    isDragActive = _useDropzone.isDragActive,
    open = _useDropzone.open;
  var style = useMemo(function () {
    return _objectSpread$9(_objectSpread$9({}, baseStyle), isDragActive ? activeStyle : {});
  }, [isDragActive]);
  return jsxs("div", _objectSpread$9(_objectSpread$9({}, getRootProps({
    style: style
  })), {}, {
    onClick: open,
    children: [jsx("input", _objectSpread$9({}, getInputProps())), jsx(StyledIcon, {
      name: iconName,
      disabled: disabled
    }), disabled ? jsx(DisabledText, {
      children: disabledText
    }) : jsxs(Fragment, {
      children: [jsx(ButtonContainer$1, {
        children: textLabel && jsx("span", {
          children: textLabel
        })
      }), jsx(OpenOptionText, {
        children: "Open from file"
      })]
    })]
  }));
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$p() { 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)."; }
var ICON_NAMES = {
  PASTE: 'open-window-paste-icon',
  FILE: 'open-window-upload-icon',
  IMAGE: 'image-frame'
};
var OpenOptionText = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1035cyz3"
} : {
  target: "e1035cyz3",
  label: "OpenOptionText"
})("font-size:10px;text-transform:uppercase;color:", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.color.text.light;
}, ";margin:0;text-align:center;line-height:12px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW5PcHRpb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QnVDIiwiZmlsZSI6Ik9wZW5PcHRpb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRmlsZURyb3AgfSBmcm9tICcuL0ZpbGVEcm9wJztcclxuY29uc3QgSUNPTl9OQU1FUyA9IHtcclxuICAgIFBBU1RFOiAnb3Blbi13aW5kb3ctcGFzdGUtaWNvbicsXHJcbiAgICBGSUxFOiAnb3Blbi13aW5kb3ctdXBsb2FkLWljb24nLFxyXG4gICAgSU1BR0U6ICdpbWFnZS1mcmFtZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBPcGVuT3B0aW9uVGV4dCA9IHN0eWxlZC5wIGBcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRUZXh0ID0gc3R5bGVkLnAgYFxuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIG9wYWNpdHk6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5jb25zdCBSb290Q29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICYgPiAqIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gIH1cblxuICAmIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDEyOHB4O1xuICBoZWlnaHQ6IDEzNHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMTAzLCAxMDQsIDEzMiwgMC4xOCk7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IHAge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmV9O1xuICB9XG5gO1xyXG5jb25zdCBPcGVuT3B0aW9ucyA9ICh7IHNlbGVjdENsaXBib2FyZCwgZmlsZUxvYWRIYW5kbGVyLCBlcnJvckhhbmRsZXIsIH0pID0+IHtcclxuICAgIHJldHVybiAoX2pzeHMoUm9vdENvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3hzKERyb3BDb250YWluZXIsIHsgXCJkYXRhLXRlc3RpZFwiOiBcInBhc3RlLWZyb20tY2xpcGJvYXJkLWJ1dHRvblwiLCBvbkNsaWNrOiBzZWxlY3RDbGlwYm9hcmQsIGNoaWxkcmVuOiBbX2pzeChJY29uLCB7IG5hbWU6IElDT05fTkFNRVMuUEFTVEUgfSksIF9qc3goT3Blbk9wdGlvblRleHQsIHsgY2hpbGRyZW46IFwiUGFzdGUgZnJvbSBjbGlwYm9hcmRcIiB9KV0gfSksIF9qc3goRHJvcENvbnRhaW5lciwgeyBjaGlsZHJlbjogX2pzeChGaWxlRHJvcCwgeyBvbkRyb3BBY2NlcHRlZDogZmlsZUxvYWRIYW5kbGVyLCBvbkRyb3BSZWplY3RlZDogKGUpID0+IGVycm9ySGFuZGxlcihgVW5hYmxlIHRvIGFjY2VwdCBmaWxlKHMpLiAke2V9YCksIGJ1dHRvbkxhYmVsOiBcIk9wZW4gZnJvbSBmaWxlXCIsIHRleHRMYWJlbDogXCJvciBkcmFnIGZpbGUgaGVyZVwiLCBpY29uTmFtZTogSUNPTl9OQU1FUy5GSUxFIH0pIH0pLCBfanN4KERyb3BDb250YWluZXIsIHsgY2hpbGRyZW46IF9qc3goRmlsZURyb3AsIHsgYWNjZXB0OiBcImltYWdlLypcIiwgb25Ecm9wQWNjZXB0ZWQ6IGZpbGVMb2FkSGFuZGxlciwgb25Ecm9wUmVqZWN0ZWQ6IChlKSA9PiBlcnJvckhhbmRsZXIoYFVuYWJsZSB0byBhY2NlcHQgZmlsZShzKS4gJHtlfWApLCBidXR0b25MYWJlbDogXCJPcGVuIGZyb20gaW1hZ2VcIiwgdGV4dExhYmVsOiBcIm9yIGRyYWcgZmlsZSBoZXJlXCIsIGljb25OYW1lOiBJQ09OX05BTUVTLklNQUdFLCBkaXNhYmxlZDogdHJ1ZSwgZGlzYWJsZWRUZXh0OiBcIkltYWdlIFJlY29nbml0aW9uIHNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZVwiIH0pIH0pXSB9KSk7XHJcbn07XHJcbmV4cG9ydCB7IE9wZW5PcHRpb25zIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW5PcHRpb25zLmpzLm1hcCJdfQ== */"));
var DisabledText = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1035cyz2"
} : {
  target: "e1035cyz2",
  label: "DisabledText"
})("font-size:10px;margin:0;text-align:center;color:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.color.text.primary;
}, ";opacity:50%;line-height:12px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW5PcHRpb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQ3FDIiwiZmlsZSI6Ik9wZW5PcHRpb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRmlsZURyb3AgfSBmcm9tICcuL0ZpbGVEcm9wJztcclxuY29uc3QgSUNPTl9OQU1FUyA9IHtcclxuICAgIFBBU1RFOiAnb3Blbi13aW5kb3ctcGFzdGUtaWNvbicsXHJcbiAgICBGSUxFOiAnb3Blbi13aW5kb3ctdXBsb2FkLWljb24nLFxyXG4gICAgSU1BR0U6ICdpbWFnZS1mcmFtZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBPcGVuT3B0aW9uVGV4dCA9IHN0eWxlZC5wIGBcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRUZXh0ID0gc3R5bGVkLnAgYFxuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIG9wYWNpdHk6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5jb25zdCBSb290Q29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICYgPiAqIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gIH1cblxuICAmIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDEyOHB4O1xuICBoZWlnaHQ6IDEzNHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMTAzLCAxMDQsIDEzMiwgMC4xOCk7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IHAge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmV9O1xuICB9XG5gO1xyXG5jb25zdCBPcGVuT3B0aW9ucyA9ICh7IHNlbGVjdENsaXBib2FyZCwgZmlsZUxvYWRIYW5kbGVyLCBlcnJvckhhbmRsZXIsIH0pID0+IHtcclxuICAgIHJldHVybiAoX2pzeHMoUm9vdENvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3hzKERyb3BDb250YWluZXIsIHsgXCJkYXRhLXRlc3RpZFwiOiBcInBhc3RlLWZyb20tY2xpcGJvYXJkLWJ1dHRvblwiLCBvbkNsaWNrOiBzZWxlY3RDbGlwYm9hcmQsIGNoaWxkcmVuOiBbX2pzeChJY29uLCB7IG5hbWU6IElDT05fTkFNRVMuUEFTVEUgfSksIF9qc3goT3Blbk9wdGlvblRleHQsIHsgY2hpbGRyZW46IFwiUGFzdGUgZnJvbSBjbGlwYm9hcmRcIiB9KV0gfSksIF9qc3goRHJvcENvbnRhaW5lciwgeyBjaGlsZHJlbjogX2pzeChGaWxlRHJvcCwgeyBvbkRyb3BBY2NlcHRlZDogZmlsZUxvYWRIYW5kbGVyLCBvbkRyb3BSZWplY3RlZDogKGUpID0+IGVycm9ySGFuZGxlcihgVW5hYmxlIHRvIGFjY2VwdCBmaWxlKHMpLiAke2V9YCksIGJ1dHRvbkxhYmVsOiBcIk9wZW4gZnJvbSBmaWxlXCIsIHRleHRMYWJlbDogXCJvciBkcmFnIGZpbGUgaGVyZVwiLCBpY29uTmFtZTogSUNPTl9OQU1FUy5GSUxFIH0pIH0pLCBfanN4KERyb3BDb250YWluZXIsIHsgY2hpbGRyZW46IF9qc3goRmlsZURyb3AsIHsgYWNjZXB0OiBcImltYWdlLypcIiwgb25Ecm9wQWNjZXB0ZWQ6IGZpbGVMb2FkSGFuZGxlciwgb25Ecm9wUmVqZWN0ZWQ6IChlKSA9PiBlcnJvckhhbmRsZXIoYFVuYWJsZSB0byBhY2NlcHQgZmlsZShzKS4gJHtlfWApLCBidXR0b25MYWJlbDogXCJPcGVuIGZyb20gaW1hZ2VcIiwgdGV4dExhYmVsOiBcIm9yIGRyYWcgZmlsZSBoZXJlXCIsIGljb25OYW1lOiBJQ09OX05BTUVTLklNQUdFLCBkaXNhYmxlZDogdHJ1ZSwgZGlzYWJsZWRUZXh0OiBcIkltYWdlIFJlY29nbml0aW9uIHNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZVwiIH0pIH0pXSB9KSk7XHJcbn07XHJcbmV4cG9ydCB7IE9wZW5PcHRpb25zIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW5PcHRpb25zLmpzLm1hcCJdfQ== */"));
var RootContainer$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1035cyz1"
} : {
  target: "e1035cyz1",
  label: "RootContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "h9hj7s",
  styles: "display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;margin-bottom:20px;&>*{margin-right:18px;}& :last-child{margin-right:0;}"
} : {
  name: "h9hj7s",
  styles: "display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;margin-bottom:20px;&>*{margin-right:18px;}& :last-child{margin-right:0;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW5PcHRpb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3Q2lDIiwiZmlsZSI6Ik9wZW5PcHRpb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRmlsZURyb3AgfSBmcm9tICcuL0ZpbGVEcm9wJztcclxuY29uc3QgSUNPTl9OQU1FUyA9IHtcclxuICAgIFBBU1RFOiAnb3Blbi13aW5kb3ctcGFzdGUtaWNvbicsXHJcbiAgICBGSUxFOiAnb3Blbi13aW5kb3ctdXBsb2FkLWljb24nLFxyXG4gICAgSU1BR0U6ICdpbWFnZS1mcmFtZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBPcGVuT3B0aW9uVGV4dCA9IHN0eWxlZC5wIGBcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRUZXh0ID0gc3R5bGVkLnAgYFxuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIG9wYWNpdHk6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5jb25zdCBSb290Q29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICYgPiAqIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gIH1cblxuICAmIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDEyOHB4O1xuICBoZWlnaHQ6IDEzNHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMTAzLCAxMDQsIDEzMiwgMC4xOCk7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IHAge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmV9O1xuICB9XG5gO1xyXG5jb25zdCBPcGVuT3B0aW9ucyA9ICh7IHNlbGVjdENsaXBib2FyZCwgZmlsZUxvYWRIYW5kbGVyLCBlcnJvckhhbmRsZXIsIH0pID0+IHtcclxuICAgIHJldHVybiAoX2pzeHMoUm9vdENvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3hzKERyb3BDb250YWluZXIsIHsgXCJkYXRhLXRlc3RpZFwiOiBcInBhc3RlLWZyb20tY2xpcGJvYXJkLWJ1dHRvblwiLCBvbkNsaWNrOiBzZWxlY3RDbGlwYm9hcmQsIGNoaWxkcmVuOiBbX2pzeChJY29uLCB7IG5hbWU6IElDT05fTkFNRVMuUEFTVEUgfSksIF9qc3goT3Blbk9wdGlvblRleHQsIHsgY2hpbGRyZW46IFwiUGFzdGUgZnJvbSBjbGlwYm9hcmRcIiB9KV0gfSksIF9qc3goRHJvcENvbnRhaW5lciwgeyBjaGlsZHJlbjogX2pzeChGaWxlRHJvcCwgeyBvbkRyb3BBY2NlcHRlZDogZmlsZUxvYWRIYW5kbGVyLCBvbkRyb3BSZWplY3RlZDogKGUpID0+IGVycm9ySGFuZGxlcihgVW5hYmxlIHRvIGFjY2VwdCBmaWxlKHMpLiAke2V9YCksIGJ1dHRvbkxhYmVsOiBcIk9wZW4gZnJvbSBmaWxlXCIsIHRleHRMYWJlbDogXCJvciBkcmFnIGZpbGUgaGVyZVwiLCBpY29uTmFtZTogSUNPTl9OQU1FUy5GSUxFIH0pIH0pLCBfanN4KERyb3BDb250YWluZXIsIHsgY2hpbGRyZW46IF9qc3goRmlsZURyb3AsIHsgYWNjZXB0OiBcImltYWdlLypcIiwgb25Ecm9wQWNjZXB0ZWQ6IGZpbGVMb2FkSGFuZGxlciwgb25Ecm9wUmVqZWN0ZWQ6IChlKSA9PiBlcnJvckhhbmRsZXIoYFVuYWJsZSB0byBhY2NlcHQgZmlsZShzKS4gJHtlfWApLCBidXR0b25MYWJlbDogXCJPcGVuIGZyb20gaW1hZ2VcIiwgdGV4dExhYmVsOiBcIm9yIGRyYWcgZmlsZSBoZXJlXCIsIGljb25OYW1lOiBJQ09OX05BTUVTLklNQUdFLCBkaXNhYmxlZDogdHJ1ZSwgZGlzYWJsZWRUZXh0OiBcIkltYWdlIFJlY29nbml0aW9uIHNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZVwiIH0pIH0pXSB9KSk7XHJcbn07XHJcbmV4cG9ydCB7IE9wZW5PcHRpb25zIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW5PcHRpb25zLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$p
});
var DropContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1035cyz0"
} : {
  target: "e1035cyz0",
  label: "DropContainer"
})("width:128px;height:134px;box-shadow:0 4px 12px rgba(103, 104, 132, 0.18);padding:16px;border-radius:12px;flex:1;display:flex;flex-direction:column;justify-content:space-between;align-items:center;box-sizing:border-box;position:relative;cursor:pointer;&>p{margin-top:6px;text-align:center;}svg{fill:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.color.button.primary.active;
}, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW5PcHRpb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzRGlDIiwiZmlsZSI6Ik9wZW5PcHRpb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRmlsZURyb3AgfSBmcm9tICcuL0ZpbGVEcm9wJztcclxuY29uc3QgSUNPTl9OQU1FUyA9IHtcclxuICAgIFBBU1RFOiAnb3Blbi13aW5kb3ctcGFzdGUtaWNvbicsXHJcbiAgICBGSUxFOiAnb3Blbi13aW5kb3ctdXBsb2FkLWljb24nLFxyXG4gICAgSU1BR0U6ICdpbWFnZS1mcmFtZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBPcGVuT3B0aW9uVGV4dCA9IHN0eWxlZC5wIGBcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgRGlzYWJsZWRUZXh0ID0gc3R5bGVkLnAgYFxuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIG9wYWNpdHk6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDEycHg7XG5gO1xyXG5jb25zdCBSb290Q29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICYgPiAqIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gIH1cblxuICAmIDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgd2lkdGg6IDEyOHB4O1xuICBoZWlnaHQ6IDEzNHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMTAzLCAxMDQsIDEzMiwgMC4xOCk7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IHAge1xuICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIGZpbGw6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmV9O1xuICB9XG5gO1xyXG5jb25zdCBPcGVuT3B0aW9ucyA9ICh7IHNlbGVjdENsaXBib2FyZCwgZmlsZUxvYWRIYW5kbGVyLCBlcnJvckhhbmRsZXIsIH0pID0+IHtcclxuICAgIHJldHVybiAoX2pzeHMoUm9vdENvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3hzKERyb3BDb250YWluZXIsIHsgXCJkYXRhLXRlc3RpZFwiOiBcInBhc3RlLWZyb20tY2xpcGJvYXJkLWJ1dHRvblwiLCBvbkNsaWNrOiBzZWxlY3RDbGlwYm9hcmQsIGNoaWxkcmVuOiBbX2pzeChJY29uLCB7IG5hbWU6IElDT05fTkFNRVMuUEFTVEUgfSksIF9qc3goT3Blbk9wdGlvblRleHQsIHsgY2hpbGRyZW46IFwiUGFzdGUgZnJvbSBjbGlwYm9hcmRcIiB9KV0gfSksIF9qc3goRHJvcENvbnRhaW5lciwgeyBjaGlsZHJlbjogX2pzeChGaWxlRHJvcCwgeyBvbkRyb3BBY2NlcHRlZDogZmlsZUxvYWRIYW5kbGVyLCBvbkRyb3BSZWplY3RlZDogKGUpID0+IGVycm9ySGFuZGxlcihgVW5hYmxlIHRvIGFjY2VwdCBmaWxlKHMpLiAke2V9YCksIGJ1dHRvbkxhYmVsOiBcIk9wZW4gZnJvbSBmaWxlXCIsIHRleHRMYWJlbDogXCJvciBkcmFnIGZpbGUgaGVyZVwiLCBpY29uTmFtZTogSUNPTl9OQU1FUy5GSUxFIH0pIH0pLCBfanN4KERyb3BDb250YWluZXIsIHsgY2hpbGRyZW46IF9qc3goRmlsZURyb3AsIHsgYWNjZXB0OiBcImltYWdlLypcIiwgb25Ecm9wQWNjZXB0ZWQ6IGZpbGVMb2FkSGFuZGxlciwgb25Ecm9wUmVqZWN0ZWQ6IChlKSA9PiBlcnJvckhhbmRsZXIoYFVuYWJsZSB0byBhY2NlcHQgZmlsZShzKS4gJHtlfWApLCBidXR0b25MYWJlbDogXCJPcGVuIGZyb20gaW1hZ2VcIiwgdGV4dExhYmVsOiBcIm9yIGRyYWcgZmlsZSBoZXJlXCIsIGljb25OYW1lOiBJQ09OX05BTUVTLklNQUdFLCBkaXNhYmxlZDogdHJ1ZSwgZGlzYWJsZWRUZXh0OiBcIkltYWdlIFJlY29nbml0aW9uIHNlcnZpY2UgaXMgbm90IGF2YWlsYWJsZVwiIH0pIH0pXSB9KSk7XHJcbn07XHJcbmV4cG9ydCB7IE9wZW5PcHRpb25zIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW5PcHRpb25zLmpzLm1hcCJdfQ== */"));
var OpenOptions = function OpenOptions(_ref4) {
  var selectClipboard = _ref4.selectClipboard,
    fileLoadHandler = _ref4.fileLoadHandler,
    errorHandler = _ref4.errorHandler;
  return jsxs(RootContainer$1, {
    children: [jsxs(DropContainer, {
      "data-testid": "paste-from-clipboard-button",
      onClick: selectClipboard,
      children: [jsx(Icon, {
        name: ICON_NAMES.PASTE
      }), jsx(OpenOptionText, {
        children: "Paste from clipboard"
      })]
    }), jsx(DropContainer, {
      children: jsx(FileDrop, {
        onDropAccepted: fileLoadHandler,
        onDropRejected: function onDropRejected(e) {
          return errorHandler("Unable to accept file(s). ".concat(e));
        },
        buttonLabel: "Open from file",
        textLabel: "or drag file here",
        iconName: ICON_NAMES.FILE
      })
    }), jsx(DropContainer, {
      children: jsx(FileDrop, {
        accept: "image/*",
        onDropAccepted: fileLoadHandler,
        onDropRejected: function onDropRejected(e) {
          return errorHandler("Unable to accept file(s). ".concat(e));
        },
        buttonLabel: "Open from image",
        textLabel: "or drag file here",
        iconName: ICON_NAMES.IMAGE,
        disabled: true,
        disabledText: "Image Recognition service is not available"
      })
    })]
  });
};

var StyledTextarea = _styled("textarea", process.env.NODE_ENV === "production" ? {
  target: "e1q335jk0"
} : {
  target: "e1q335jk0",
  label: "StyledTextarea"
})("min-width:430px;padding:12px;width:100%;height:100%;overflow:auto;white-space:pre-wrap;resize:none;box-sizing:border-box;outline:transparent;border:none;color:", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.color.input.text.active;
}, ";font-size:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.font.size.regular;
}, ";background-color:", function (_ref3) {
  var theme = _ref3.theme,
    readOnly = _ref3.readOnly;
  return readOnly ? theme.ketcher.color.input.background.disabled : theme.ketcher.color.input.background.primary;
}, ";", function (_ref4) {
  var theme = _ref4.theme;
  return scrollbarThin(theme);
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRleHRBcmVhLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQnVDIiwiZmlsZSI6IlRleHRBcmVhLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHNjcm9sbGJhclRoaW4gfSBmcm9tIFwiLi4vLi4vLi4vdGhlbWluZy9taXhpbnNcIjtcclxuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XHJcbmNvbnN0IFN0eWxlZFRleHRhcmVhID0gc3R5bGVkLnRleHRhcmVhIGBcbiAgbWluLXdpZHRoOiA0MzBweDtcbiAgcGFkZGluZzogMTJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgcmVzaXplOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdXRsaW5lOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LnRleHQuYWN0aXZlfTtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lLCByZWFkT25seSB9KSA9PiByZWFkT25seVxyXG4gICAgPyB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJhY2tncm91bmQuZGlzYWJsZWRcclxuICAgIDogdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5iYWNrZ3JvdW5kLnByaW1hcnl9O1xuXG4gICR7KHsgdGhlbWUgfSkgPT4gc2Nyb2xsYmFyVGhpbih0aGVtZSl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFRleHRBcmVhID0gKHsgdmFsdWUsIGlucHV0SGFuZGxlciwgcmVhZG9ubHkgPSBmYWxzZSwgc2VsZWN0T25Jbml0ID0gZmFsc2UsIGNsYXNzTmFtZSwgdGVzdElkLCB9KSA9PiB7XHJcbiAgICBjb25zdCB0ZXh0QXJlYSA9IHVzZVJlZihudWxsKTtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKHNlbGVjdE9uSW5pdCkge1xyXG4gICAgICAgICAgICB0ZXh0QXJlYS5jdXJyZW50Py5zZWxlY3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9LCBbdGV4dEFyZWEsIHZhbHVlLCBzZWxlY3RPbkluaXRdKTtcclxuICAgIHJldHVybiAoX2pzeChTdHlsZWRUZXh0YXJlYSwgeyB2YWx1ZTogdmFsdWUsIHJlYWRPbmx5OiByZWFkb25seSwgb25DaGFuZ2U6IGlucHV0SGFuZGxlciAmJiAoKGV2ZW50KSA9PiBpbnB1dEhhbmRsZXIoZXZlbnQudGFyZ2V0LnZhbHVlKSksIHJlZjogdGV4dEFyZWEsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVRleHRBcmVhLmpzLm1hcCJdfQ== */"));
var TextArea = function TextArea(_ref5) {
  var value = _ref5.value,
    inputHandler = _ref5.inputHandler,
    _ref5$readonly = _ref5.readonly,
    readonly = _ref5$readonly === void 0 ? false : _ref5$readonly,
    _ref5$selectOnInit = _ref5.selectOnInit,
    selectOnInit = _ref5$selectOnInit === void 0 ? false : _ref5$selectOnInit,
    className = _ref5.className,
    testId = _ref5.testId;
  var textArea = useRef(null);
  useEffect(function () {
    if (selectOnInit) {
      var _textArea$current;
      (_textArea$current = textArea.current) === null || _textArea$current === void 0 || _textArea$current.select();
    }
  }, [textArea, value, selectOnInit]);
  return jsx(StyledTextarea, {
    value: value,
    readOnly: readonly,
    onChange: inputHandler && function (event) {
      return inputHandler(event.target.value);
    },
    ref: textArea,
    className: className,
    "data-testid": testId
  });
};

function ownKeys$8(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$8(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$o() { 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)."; }
var StyledTextField = _styled(TextArea, process.env.NODE_ENV === "production" ? {
  target: "e17hogtk0"
} : {
  target: "e17hogtk0",
  label: "StyledTextField"
})(process.env.NODE_ENV === "production" ? {
  name: "17fmpnb",
  styles: "width:100%;height:320px"
} : {
  name: "17fmpnb",
  styles: "width:100%;height:320px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlZpZXdTd2l0Y2hlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0J5QyIsImZpbGUiOiJWaWV3U3dpdGNoZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IEFuYWx5emluZ0ZpbGUgfSBmcm9tICcuLi9BbmFseXppbmdGaWxlJztcclxuaW1wb3J0IHsgT3Blbk9wdGlvbnMgfSBmcm9tICcuLi9PcGVuT3B0aW9ucyc7XHJcbmltcG9ydCB7IFRleHRBcmVhIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL1RleHRBcmVhJztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBTdHlsZWRUZXh0RmllbGQgPSBzdHlsZWQoVGV4dEFyZWEpIGBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzIwcHg7XG5gO1xyXG5leHBvcnQgY29uc3QgVmlld1N3aXRjaGVyID0gKHByb3BzKSA9PiB7XHJcbiAgICBpZiAocHJvcHMuaXNBbmFseXppbmdGaWxlKSB7XHJcbiAgICAgICAgcmV0dXJuIF9qc3goQW5hbHl6aW5nRmlsZSwgeyBmaWxlTmFtZTogcHJvcHMuZmlsZU5hbWUgfSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgICBzd2l0Y2ggKHByb3BzLmN1cnJlbnRTdGF0ZSkge1xyXG4gICAgICAgICAgICBjYXNlIHByb3BzLnN0YXRlcy5vcGVuT3B0aW9uczpcclxuICAgICAgICAgICAgICAgIHJldHVybiBfanN4KE9wZW5PcHRpb25zLCB7IC4uLnByb3BzIH0pO1xyXG4gICAgICAgICAgICBjYXNlIHByb3BzLnN0YXRlcy50ZXh0RWRpdG9yOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIF9qc3goU3R5bGVkVGV4dEZpZWxkLCB7IHRlc3RJZDogXCJvcGVuLXN0cnVjdHVyZS10ZXh0YXJlYVwiLCAuLi5wcm9wcyB9KTtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Vmlld1N3aXRjaGVyLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$o
});
var ViewSwitcher = function ViewSwitcher(props) {
  if (props.isAnalyzingFile) {
    return jsx(AnalyzingFile, {
      fileName: props.fileName
    });
  } else {
    switch (props.currentState) {
      case props.states.openOptions:
        return jsx(OpenOptions, _objectSpread$8({}, props));
      case props.states.textEditor:
        return jsx(StyledTextField, _objectSpread$8({
          testId: "open-structure-textarea"
        }, props));
      default:
        return null;
    }
  }
};

var _excluded$1 = ["label", "clickHandler", "children", "styleType"];
function ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$n() { 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)."; }
var baseButtonStyle = process.env.NODE_ENV === "production" ? {
  name: "zlt300",
  styles: "padding:5px 8px;border-radius:2px;text-transform:none;line-height:14px;font-size:12px;text-align:center;&.MuiButtonBase-root{width:unset;min-width:70px;}"
} : {
  name: "ihw2cq-baseButtonStyle",
  styles: "padding:5px 8px;border-radius:2px;text-transform:none;line-height:14px;font-size:12px;text-align:center;&.MuiButtonBase-root{width:unset;min-width:70px;};label:baseButtonStyle;",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFjdGlvbkJ1dHRvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbUJ3QiIsImZpbGUiOiJBY3Rpb25CdXR0b24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBNdWlCdXR0b24gZnJvbSAnQG11aS9tYXRlcmlhbC9CdXR0b25CYXNlJztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmNvbnN0IGJhc2VCdXR0b25TdHlsZSA9IGNzcyh7XHJcbiAgICBwYWRkaW5nOiAnNXB4IDhweCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgbGluZUhlaWdodDogJzE0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAnJi5NdWlCdXR0b25CYXNlLXJvb3QnOiB7XHJcbiAgICAgICAgd2lkdGg6ICd1bnNldCcsXHJcbiAgICAgICAgbWluV2lkdGg6ICc3MHB4JyxcclxuICAgIH0sXHJcbn0pO1xyXG5jb25zdCBQcmltYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmUsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZX1gLFxyXG4gICAgY29sb3I6ICdyZ2IoMjQ1LCAyNDUsIDI0NSknLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc2MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmhvdmVyLFxyXG4gICAgfSxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsXHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkIHRyYW5zcGFyZW50YCxcclxuICAgICAgICBvcGFjaXR5OiAwLjQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuY29uc3QgU2Vjb25kYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogJ3RyYW5zcGFyZW50JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmV9YCxcclxuICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc3MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyfWAsXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5ob3ZlcixcclxuICAgIH0sXHJcbiAgICAnJjpkaXNhYmxlZCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLFxyXG4gICAgfSxcclxuICAgICcmOmNsaWNrZWQnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuZXhwb3J0IGNvbnN0IEFjdGlvbkJ1dHRvbiA9ICh7IGxhYmVsLCBjbGlja0hhbmRsZXIsIGNoaWxkcmVuLCBzdHlsZVR5cGUsIC4uLnJlc3QgfSkgPT4ge1xyXG4gICAgcmV0dXJuIHN0eWxlVHlwZSA9PT0gJ3NlY29uZGFyeScgPyAoX2pzeChTZWNvbmRhcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKSA6IChfanN4KFByaW1hcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QWN0aW9uQnV0dG9uLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$n
};
var PrimaryButton = _styled(MuiButton, process.env.NODE_ENV === "production" ? {
  target: "ejign8b1"
} : {
  target: "ejign8b1",
  label: "PrimaryButton"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    backgroundColor: theme.ketcher.color.button.primary.active,
    border: "1px solid ".concat(theme.ketcher.color.button.primary.active),
    color: 'rgb(245, 245, 245)',
    fontWeight: theme.ketcher.font.weight.regular,
    width: '62px',
    height: '24px',
    '&:hover': {
      backgroundColor: theme.ketcher.color.button.primary.hover
    },
    '&:disabled': {
      background: theme.ketcher.color.button.primary.disabled,
      border: "1px solid transparent",
      opacity: 0.4
    }
  };
}, baseButtonStyle, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFjdGlvbkJ1dHRvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0JzQiIsImZpbGUiOiJBY3Rpb25CdXR0b24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBNdWlCdXR0b24gZnJvbSAnQG11aS9tYXRlcmlhbC9CdXR0b25CYXNlJztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmNvbnN0IGJhc2VCdXR0b25TdHlsZSA9IGNzcyh7XHJcbiAgICBwYWRkaW5nOiAnNXB4IDhweCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgbGluZUhlaWdodDogJzE0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAnJi5NdWlCdXR0b25CYXNlLXJvb3QnOiB7XHJcbiAgICAgICAgd2lkdGg6ICd1bnNldCcsXHJcbiAgICAgICAgbWluV2lkdGg6ICc3MHB4JyxcclxuICAgIH0sXHJcbn0pO1xyXG5jb25zdCBQcmltYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmUsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZX1gLFxyXG4gICAgY29sb3I6ICdyZ2IoMjQ1LCAyNDUsIDI0NSknLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc2MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmhvdmVyLFxyXG4gICAgfSxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsXHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkIHRyYW5zcGFyZW50YCxcclxuICAgICAgICBvcGFjaXR5OiAwLjQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuY29uc3QgU2Vjb25kYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogJ3RyYW5zcGFyZW50JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmV9YCxcclxuICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc3MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyfWAsXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5ob3ZlcixcclxuICAgIH0sXHJcbiAgICAnJjpkaXNhYmxlZCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLFxyXG4gICAgfSxcclxuICAgICcmOmNsaWNrZWQnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuZXhwb3J0IGNvbnN0IEFjdGlvbkJ1dHRvbiA9ICh7IGxhYmVsLCBjbGlja0hhbmRsZXIsIGNoaWxkcmVuLCBzdHlsZVR5cGUsIC4uLnJlc3QgfSkgPT4ge1xyXG4gICAgcmV0dXJuIHN0eWxlVHlwZSA9PT0gJ3NlY29uZGFyeScgPyAoX2pzeChTZWNvbmRhcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKSA6IChfanN4KFByaW1hcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QWN0aW9uQnV0dG9uLmpzLm1hcCJdfQ== */");
var SecondaryButton = _styled(MuiButton, process.env.NODE_ENV === "production" ? {
  target: "ejign8b0"
} : {
  target: "ejign8b0",
  label: "SecondaryButton"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    backgroundColor: 'transparent',
    border: "1px solid ".concat(theme.ketcher.color.button.secondary.active),
    color: theme.ketcher.color.button.secondary.active,
    fontWeight: theme.ketcher.font.weight.regular,
    width: '72px',
    height: '24px',
    '&:hover': {
      border: "1px solid ".concat(theme.ketcher.color.button.secondary.hover),
      color: theme.ketcher.color.button.secondary.hover
    },
    '&:disabled': {
      border: "1px solid ".concat(theme.ketcher.color.button.secondary.disabled),
      color: theme.ketcher.color.button.secondary.disabled
    },
    '&:clicked': {
      border: "1px solid ".concat(theme.ketcher.color.button.secondary.clicked),
      color: theme.ketcher.color.button.secondary.clicked
    }
  };
}, baseButtonStyle, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkFjdGlvbkJ1dHRvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0N3QiIsImZpbGUiOiJBY3Rpb25CdXR0b24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBNdWlCdXR0b24gZnJvbSAnQG11aS9tYXRlcmlhbC9CdXR0b25CYXNlJztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XHJcbmNvbnN0IGJhc2VCdXR0b25TdHlsZSA9IGNzcyh7XHJcbiAgICBwYWRkaW5nOiAnNXB4IDhweCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxyXG4gICAgbGluZUhlaWdodDogJzE0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICAnJi5NdWlCdXR0b25CYXNlLXJvb3QnOiB7XHJcbiAgICAgICAgd2lkdGg6ICd1bnNldCcsXHJcbiAgICAgICAgbWluV2lkdGg6ICc3MHB4JyxcclxuICAgIH0sXHJcbn0pO1xyXG5jb25zdCBQcmltYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24ucHJpbWFyeS5hY3RpdmUsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmFjdGl2ZX1gLFxyXG4gICAgY29sb3I6ICdyZ2IoMjQ1LCAyNDUsIDI0NSknLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc2MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5wcmltYXJ5LmhvdmVyLFxyXG4gICAgfSxcclxuICAgICcmOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsXHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkIHRyYW5zcGFyZW50YCxcclxuICAgICAgICBvcGFjaXR5OiAwLjQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuY29uc3QgU2Vjb25kYXJ5QnV0dG9uID0gc3R5bGVkKE11aUJ1dHRvbikoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGJhY2tncm91bmRDb2xvcjogJ3RyYW5zcGFyZW50JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5hY3RpdmV9YCxcclxuICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuYWN0aXZlLFxyXG4gICAgZm9udFdlaWdodDogdGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgd2lkdGg6ICc3MnB4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgJyY6aG92ZXInOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyfWAsXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5ob3ZlcixcclxuICAgIH0sXHJcbiAgICAnJjpkaXNhYmxlZCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLFxyXG4gICAgfSxcclxuICAgICcmOmNsaWNrZWQnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWR9YCxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmNsaWNrZWQsXHJcbiAgICB9LFxyXG59KSwgYmFzZUJ1dHRvblN0eWxlKTtcclxuZXhwb3J0IGNvbnN0IEFjdGlvbkJ1dHRvbiA9ICh7IGxhYmVsLCBjbGlja0hhbmRsZXIsIGNoaWxkcmVuLCBzdHlsZVR5cGUsIC4uLnJlc3QgfSkgPT4ge1xyXG4gICAgcmV0dXJuIHN0eWxlVHlwZSA9PT0gJ3NlY29uZGFyeScgPyAoX2pzeChTZWNvbmRhcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKSA6IChfanN4KFByaW1hcnlCdXR0b24sIHsgb25DbGljazogY2xpY2tIYW5kbGVyLCB0aXRsZTogcmVzdC50aXRsZSB8fCBsYWJlbCwgcm9sZTogXCJidXR0b25cIiwgLi4ucmVzdCwgY2hpbGRyZW46IGNoaWxkcmVuIHx8IGxhYmVsIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9QWN0aW9uQnV0dG9uLmpzLm1hcCJdfQ== */");
var ActionButton = function ActionButton(_ref3) {
  var label = _ref3.label,
    clickHandler = _ref3.clickHandler,
    children = _ref3.children,
    styleType = _ref3.styleType,
    rest = _objectWithoutProperties(_ref3, _excluded$1);
  return styleType === 'secondary' ? jsx(SecondaryButton, _objectSpread$7(_objectSpread$7({
    onClick: clickHandler,
    title: rest.title || label,
    role: "button"
  }, rest), {}, {
    children: children || label
  })) : jsx(PrimaryButton, _objectSpread$7(_objectSpread$7({
    onClick: clickHandler,
    title: rest.title || label,
    role: "button"
  }, rest), {}, {
    children: children || label
  }));
};

function fileOpener() {
  return new Promise(function (resolve, reject) {
    if (global.FileReader) {
      resolve(throughFileReader);
    } else {
      reject(new Error('Your browser does not support opening files locally'));
    }
  });
}
function throughFileReader(file) {
  return new Promise(function (resolve, reject) {
    var rd = new FileReader();
    rd.onload = function () {
      var content = rd.result;
      if (file.msClose) file.msClose();
      resolve(content);
    };
    rd.onerror = function (event) {
      reject(event);
    };
    rd.readAsText(file, 'UTF-8');
  });
}

function _EMOTION_STRINGIFIED_CSS_ERROR__$m() { 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)."; }
var OpenFileWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "efvrr8x1"
} : {
  target: "efvrr8x1",
  label: "OpenFileWrapper"
})("position:relative;padding:", function (_ref) {
  var currentState = _ref.currentState;
  return currentState === MODAL_STATES.openOptions ? '10px 12px' : '0';
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4uc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUcwQyIsImZpbGUiOiJPcGVuLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9EQUxfU1RBVEVTIH0gZnJvbSAnLi9PcGVuJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuZXhwb3J0IGNvbnN0IE9wZW5GaWxlV3JhcHBlciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICR7KHsgY3VycmVudFN0YXRlIH0pID0+IGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zID8gJzEwcHggMTJweCcgOiAnMCd9O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhbmNlbEJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pIGBcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9T3Blbi5zdHlsZXMuanMubWFwIl19 */"));
_styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "efvrr8x0"
} : {
  target: "efvrr8x0",
  label: "CancelButton"
})(process.env.NODE_ENV === "production" ? {
  name: "1tx1l5v",
  styles: "margin-right:auto"
} : {
  name: "1tx1l5v",
  styles: "margin-right:auto",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4uc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9pRCIsImZpbGUiOiJPcGVuLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgTU9EQUxfU1RBVEVTIH0gZnJvbSAnLi9PcGVuJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuZXhwb3J0IGNvbnN0IE9wZW5GaWxlV3JhcHBlciA9IHN0eWxlZC5kaXYgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICR7KHsgY3VycmVudFN0YXRlIH0pID0+IGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zID8gJzEwcHggMTJweCcgOiAnMCd9O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhbmNlbEJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pIGBcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9T3Blbi5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$m
});

function _EMOTION_STRINGIFIED_CSS_ERROR__$l() { 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)."; }
_styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "e23iben1"
} : {
  target: "e23iben1",
  label: "CheckMarkStyled"
})(process.env.NODE_ENV === "production" ? {
  name: "1ux2zfx",
  styles: "fill:#343434"
} : {
  name: "1ux2zfx",
  styles: "fill:#343434",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZEljb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQnFDIiwiZmlsZSI6InN0eWxlZEljb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuY29uc3QgQ2hlY2tNYXJrU3R5bGVkID0gc3R5bGVkKEljb24pIGBcbiAgZmlsbDogIzM0MzQzNDtcbmA7XHJcbmNvbnN0IENoZXZyb25TdHlsZWQgPSBzdHlsZWQoSWNvbikgYFxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiBmaWxsIDIwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSkgMG1zO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogN3B4O1xuICB0b3A6IGNhbGMoNTAlIC0gMC41ZW0pO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmlsbDogIzViNjA3NztcbmA7XHJcbmNvbnN0IENoZXZyb25JY29uID0gKHsgY2xhc3NOYW1lIH0pID0+IChfanN4KENoZXZyb25TdHlsZWQsIHsgbmFtZTogXCJjaGV2cm9uXCIsIGNsYXNzTmFtZTogY2xhc3NOYW1lIH0pKTtcclxuY29uc3QgQ2hlY2tNYXJrSWNvbiA9ICh7IGlzU2VsZWN0ZWQgfSkgPT4ge1xyXG4gICAgaWYgKCFpc1NlbGVjdGVkKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gX2pzeChDaGVja01hcmtTdHlsZWQsIHsgbmFtZTogXCJjaGVja1wiIH0pO1xyXG59O1xyXG5leHBvcnQgeyBDaGV2cm9uSWNvbiwgQ2hlY2tNYXJrSWNvbiB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZWRJY29ucy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$l
});
var ChevronStyled = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "e23iben0"
} : {
  target: "e23iben0",
  label: "ChevronStyled"
})(process.env.NODE_ENV === "production" ? {
  name: "wpnrak",
  styles: "user-select:none;width:16px;height:1em;display:inline-block;flex-shrink:0;transition:fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;font-size:1.5rem;position:absolute;right:7px;top:calc(50% - 0.5em);pointer-events:none;fill:#5b6077"
} : {
  name: "wpnrak",
  styles: "user-select:none;width:16px;height:1em;display:inline-block;flex-shrink:0;transition:fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;font-size:1.5rem;position:absolute;right:7px;top:calc(50% - 0.5em);pointer-events:none;fill:#5b6077",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZEljb25zLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQm1DIiwiZmlsZSI6InN0eWxlZEljb25zLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuY29uc3QgQ2hlY2tNYXJrU3R5bGVkID0gc3R5bGVkKEljb24pIGBcbiAgZmlsbDogIzM0MzQzNDtcbmA7XHJcbmNvbnN0IENoZXZyb25TdHlsZWQgPSBzdHlsZWQoSWNvbikgYFxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiBmaWxsIDIwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSkgMG1zO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogN3B4O1xuICB0b3A6IGNhbGMoNTAlIC0gMC41ZW0pO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgZmlsbDogIzViNjA3NztcbmA7XHJcbmNvbnN0IENoZXZyb25JY29uID0gKHsgY2xhc3NOYW1lIH0pID0+IChfanN4KENoZXZyb25TdHlsZWQsIHsgbmFtZTogXCJjaGV2cm9uXCIsIGNsYXNzTmFtZTogY2xhc3NOYW1lIH0pKTtcclxuY29uc3QgQ2hlY2tNYXJrSWNvbiA9ICh7IGlzU2VsZWN0ZWQgfSkgPT4ge1xyXG4gICAgaWYgKCFpc1NlbGVjdGVkKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gX2pzeChDaGVja01hcmtTdHlsZWQsIHsgbmFtZTogXCJjaGVja1wiIH0pO1xyXG59O1xyXG5leHBvcnQgeyBDaGV2cm9uSWNvbiwgQ2hlY2tNYXJrSWNvbiB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZWRJY29ucy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$l
});
var ChevronIcon = function ChevronIcon(_ref) {
  var className = _ref.className;
  return jsx(ChevronStyled, {
    name: "chevron",
    className: className
  });
};

function ownKeys$6(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$k() { 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)."; }
var StyledFormControl = _styled(FormControl, process.env.NODE_ENV === "production" ? {
  target: "e944g1i2"
} : {
  target: "e944g1i2",
  label: "StyledFormControl"
})(process.env.NODE_ENV === "production" ? {
  name: "1pt8ucq",
  styles: "width:100%;padding:0 8px;& label{font-size:12px;line-height:unset;}"
} : {
  name: "1pt8ucq",
  styles: "width:100%;padding:0 8px;& label{font-size:12px;line-height:unset;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRyb3BEb3duLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQjhDIiwiZmlsZSI6ImRyb3BEb3duLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgU2VsZWN0LCBGb3JtQ29udHJvbCwgTWVudUl0ZW0sIExpc3RJdGVtVGV4dCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHsgQ2hldnJvbkljb24gfSBmcm9tICcuL3N0eWxlZEljb25zJztcclxuY29uc3QgU3R5bGVkRm9ybUNvbnRyb2wgPSBzdHlsZWQoRm9ybUNvbnRyb2wpIGBcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgOHB4O1xuXG4gICYgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogdW5zZXQ7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BEb3duU2VsZWN0ID0gc3R5bGVkKFNlbGVjdCkgYFxuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1YjYwNzc7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gICR7KHsgb3BlbiB9KSA9PiBvcGVuICYmXHJcbiAgICBjc3MgYFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYH1cblxuICAmIC5NdWlTZWxlY3Qtc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAwIDI0cHggMCA4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJiBzcGFuIHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cblxuICAmIC5NdWlPdXRsaW5lZElucHV0LW5vdGNoZWRPdXRsaW5lIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgd2lkdGg6ICcxMjBweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICd3aGl0ZScsXHJcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzVCNjA3NycsXHJcbiAgICBib3JkZXJUb3BXaWR0aDogJzAnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMHB4IDBweCAycHggMnB4JyxcclxuICAgIGJveFNoYWRvdzogJzAgNnB4IDEwcHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbn07XHJcbmNvbnN0IERyb3BEb3duSXRlbSA9IHN0eWxlZChNZW51SXRlbSkgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcblxuICAmLk11aUJ1dHRvbkJhc2Utcm9vdDpob3ZlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMTY3NzgyO1xuICB9XG5cbiAgJiAuTXVpVHlwb2dyYXBoeS1yb290IHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93biA9ICh7IG9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb24sIHNlbGVjdGlvbkhhbmRsZXIsIGNsYXNzTmFtZSwgbGFiZWwsIHRlc3RJZCwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgPSB7fSwgZGlzYWJsZWQgPSBmYWxzZSwgfSkgPT4ge1xyXG4gICAgY29uc3QgW2V4cGFuZGVkLCBzZXRFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCByZW5kZXJMYWJlbEJ5SWQgPSAodmFsdWUpID0+IHtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5pZCA9PT0gdmFsdWUpWzBdO1xyXG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBzZWxlY3RlZE9wdGlvbi5sYWJlbCB9KTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVTZWxlY3Rpb24gPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBzZWxlY3Rpb25IYW5kbGVyKGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlRXhwYW5kID0gKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldEV4cGFuZGVkKHRydWUpO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IGhhbmRsZUNvbGxhcHNlID0gKCkgPT4ge1xyXG4gICAgICAgIHNldEV4cGFuZGVkKGZhbHNlKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZEZvcm1Db250cm9sLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBjaGlsZHJlbjogW2xhYmVsICYmIF9qc3goXCJsYWJlbFwiLCB7IGh0bWxGb3I6IFwiZmlsZWZvcm1hdFwiLCBjaGlsZHJlbjogXCJGaWxlIGZvcm1hdDpcIiB9KSwgX2pzeChEcm9wRG93blNlbGVjdCwgeyB2YWx1ZTogY3VycmVudFNlbGVjdGlvbiwgb25DaGFuZ2U6IGhhbmRsZVNlbGVjdGlvbiwgb3BlbjogZXhwYW5kZWQsIG9uT3BlbjogaGFuZGxlRXhwYW5kLCBvbkNsb3NlOiBoYW5kbGVDb2xsYXBzZSwgcmVuZGVyVmFsdWU6IHJlbmRlckxhYmVsQnlJZCwgSWNvbkNvbXBvbmVudDogQ2hldnJvbkljb24sIGRpc2FibGVkOiBkaXNhYmxlZCwgZnVsbFdpZHRoOiB0cnVlLCBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCB8fCAnZHJvcGRvd24tc2VsZWN0JywgTWVudVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgUGFwZXJQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogeyAuLi5zdHlsZXNGb3JFeHBhbmRlZCwgLi4uY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgfSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIE1lbnVMaXN0UHJvcHM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHsgcGFkZGluZzogJzAnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBvcHRpb25zLm1hcCgoaXRlbSkgPT4gKF9qc3goRHJvcERvd25JdGVtLCB7IHZhbHVlOiBpdGVtLmlkLCBjaGlsZHJlbjogX2pzeChMaXN0SXRlbVRleHQsIHsgcHJpbWFyeTogaXRlbS5sYWJlbCB9KSB9LCBpdGVtLmlkKSkpIH0pXSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRyb3BEb3duLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$k
});
var _ref = process.env.NODE_ENV === "production" ? {
  name: "af34ib",
  styles: "background-color:white;border-bottom-left-radius:0;border-bottom-right-radius:0"
} : {
  name: "197j6nv-DropDownSelect",
  styles: "background-color:white;border-bottom-left-radius:0;border-bottom-right-radius:0;label:DropDownSelect;",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRyb3BEb3duLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQ1EiLCJmaWxlIjoiZHJvcERvd24udHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyBTZWxlY3QsIEZvcm1Db250cm9sLCBNZW51SXRlbSwgTGlzdEl0ZW1UZXh0IH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xyXG5pbXBvcnQgeyBDaGV2cm9uSWNvbiB9IGZyb20gJy4vc3R5bGVkSWNvbnMnO1xyXG5jb25zdCBTdHlsZWRGb3JtQ29udHJvbCA9IHN0eWxlZChGb3JtQ29udHJvbCkgYFxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA4cHg7XG5cbiAgJiBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiB1bnNldDtcbiAgfVxuYDtcclxuY29uc3QgRHJvcERvd25TZWxlY3QgPSBzdHlsZWQoU2VsZWN0KSBgXG4gIGhlaWdodDogMjRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzViNjA3NztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgJHsoeyBvcGVuIH0pID0+IG9wZW4gJiZcclxuICAgIGNzcyBgXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICBgfVxuXG4gICYgLk11aVNlbGVjdC1zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDAgMjRweCAwIDhweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAmIHNwYW4ge1xuICAgICR7KHsgdGhlbWUgfSkgPT4gYGZvbnQtc2l6ZTogJHt0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19YH1cbiAgfVxuXG4gICYgLk11aU91dGxpbmVkSW5wdXQtbm90Y2hlZE91dGxpbmUge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuYDtcclxuY29uc3Qgc3R5bGVzRm9yRXhwYW5kZWQgPSB7XHJcbiAgICB3aWR0aDogJzEyMHB4JyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogJ3doaXRlJyxcclxuICAgIGJvcmRlcjogJzFweCBzb2xpZCAjNUI2MDc3JyxcclxuICAgIGJvcmRlclRvcFdpZHRoOiAnMCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICcwcHggMHB4IDJweCAycHgnLFxyXG4gICAgYm94U2hhZG93OiAnMCA2cHggMTBweCByZ2JhKDEwMywgMTA0LCAxMzIsIDAuMTUpJyxcclxufTtcclxuY29uc3QgRHJvcERvd25JdGVtID0gc3R5bGVkKE1lbnVJdGVtKSBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gICYuTXVpQnV0dG9uQmFzZS1yb290OmhvdmVyIHtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICMxNjc3ODI7XG4gIH1cblxuICAmIC5NdWlUeXBvZ3JhcGh5LXJvb3Qge1xuICAgICR7KHsgdGhlbWUgfSkgPT4gYGZvbnQtc2l6ZTogJHt0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19YH1cbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duID0gKHsgb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlciwgY2xhc3NOYW1lLCBsYWJlbCwgdGVzdElkLCBjdXN0b21TdHlsZXNGb3JFeHBhbmRlZCA9IHt9LCBkaXNhYmxlZCA9IGZhbHNlLCB9KSA9PiB7XHJcbiAgICBjb25zdCBbZXhwYW5kZWQsIHNldEV4cGFuZGVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IHJlbmRlckxhYmVsQnlJZCA9ICh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gb3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4gb3B0aW9uLmlkID09PSB2YWx1ZSlbMF07XHJcbiAgICAgICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IHNlbGVjdGVkT3B0aW9uLmxhYmVsIH0pO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IGhhbmRsZVNlbGVjdGlvbiA9IChldmVudCkgPT4ge1xyXG4gICAgICAgIHNlbGVjdGlvbkhhbmRsZXIoZXZlbnQudGFyZ2V0LnZhbHVlKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVFeHBhbmQgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0RXhwYW5kZWQodHJ1ZSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlQ29sbGFwc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgc2V0RXhwYW5kZWQoZmFsc2UpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkRm9ybUNvbnRyb2wsIHsgY2xhc3NOYW1lOiBjbGFzc05hbWUsIGNoaWxkcmVuOiBbbGFiZWwgJiYgX2pzeChcImxhYmVsXCIsIHsgaHRtbEZvcjogXCJmaWxlZm9ybWF0XCIsIGNoaWxkcmVuOiBcIkZpbGUgZm9ybWF0OlwiIH0pLCBfanN4KERyb3BEb3duU2VsZWN0LCB7IHZhbHVlOiBjdXJyZW50U2VsZWN0aW9uLCBvbkNoYW5nZTogaGFuZGxlU2VsZWN0aW9uLCBvcGVuOiBleHBhbmRlZCwgb25PcGVuOiBoYW5kbGVFeHBhbmQsIG9uQ2xvc2U6IGhhbmRsZUNvbGxhcHNlLCByZW5kZXJWYWx1ZTogcmVuZGVyTGFiZWxCeUlkLCBJY29uQ29tcG9uZW50OiBDaGV2cm9uSWNvbiwgZGlzYWJsZWQ6IGRpc2FibGVkLCBmdWxsV2lkdGg6IHRydWUsIFwiZGF0YS10ZXN0aWRcIjogdGVzdElkIHx8ICdkcm9wZG93bi1zZWxlY3QnLCBNZW51UHJvcHM6IHtcclxuICAgICAgICAgICAgICAgICAgICBQYXBlclByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7IC4uLnN0eWxlc0ZvckV4cGFuZGVkLCAuLi5jdXN0b21TdHlsZXNGb3JFeHBhbmRlZCB9LFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgTWVudUxpc3RQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogeyBwYWRkaW5nOiAnMCcgfSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSwgY2hpbGRyZW46IG9wdGlvbnMubWFwKChpdGVtKSA9PiAoX2pzeChEcm9wRG93bkl0ZW0sIHsgdmFsdWU6IGl0ZW0uaWQsIGNoaWxkcmVuOiBfanN4KExpc3RJdGVtVGV4dCwgeyBwcmltYXJ5OiBpdGVtLmxhYmVsIH0pIH0sIGl0ZW0uaWQpKSkgfSldIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZHJvcERvd24uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$k
};
var DropDownSelect = _styled(Select, process.env.NODE_ENV === "production" ? {
  target: "e944g1i1"
} : {
  target: "e944g1i1",
  label: "DropDownSelect"
})("height:24px;border:1px solid #5b6077;border-radius:4px;font-size:14px;", function (_ref2) {
  var open = _ref2.open;
  return open && _ref;
}, " & .MuiSelect-select{padding:0 24px 0 8px;height:100%;}& span{", function (_ref3) {
  var theme = _ref3.theme;
  return "font-size: ".concat(theme.ketcher.font.size.medium);
}, ";}& .MuiOutlinedInput-notchedOutline{border:0;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRyb3BEb3duLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QnNDIiwiZmlsZSI6ImRyb3BEb3duLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgU2VsZWN0LCBGb3JtQ29udHJvbCwgTWVudUl0ZW0sIExpc3RJdGVtVGV4dCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHsgQ2hldnJvbkljb24gfSBmcm9tICcuL3N0eWxlZEljb25zJztcclxuY29uc3QgU3R5bGVkRm9ybUNvbnRyb2wgPSBzdHlsZWQoRm9ybUNvbnRyb2wpIGBcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgOHB4O1xuXG4gICYgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogdW5zZXQ7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BEb3duU2VsZWN0ID0gc3R5bGVkKFNlbGVjdCkgYFxuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1YjYwNzc7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gICR7KHsgb3BlbiB9KSA9PiBvcGVuICYmXHJcbiAgICBjc3MgYFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYH1cblxuICAmIC5NdWlTZWxlY3Qtc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAwIDI0cHggMCA4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJiBzcGFuIHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cblxuICAmIC5NdWlPdXRsaW5lZElucHV0LW5vdGNoZWRPdXRsaW5lIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgd2lkdGg6ICcxMjBweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICd3aGl0ZScsXHJcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzVCNjA3NycsXHJcbiAgICBib3JkZXJUb3BXaWR0aDogJzAnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMHB4IDBweCAycHggMnB4JyxcclxuICAgIGJveFNoYWRvdzogJzAgNnB4IDEwcHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbn07XHJcbmNvbnN0IERyb3BEb3duSXRlbSA9IHN0eWxlZChNZW51SXRlbSkgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcblxuICAmLk11aUJ1dHRvbkJhc2Utcm9vdDpob3ZlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMTY3NzgyO1xuICB9XG5cbiAgJiAuTXVpVHlwb2dyYXBoeS1yb290IHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93biA9ICh7IG9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb24sIHNlbGVjdGlvbkhhbmRsZXIsIGNsYXNzTmFtZSwgbGFiZWwsIHRlc3RJZCwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgPSB7fSwgZGlzYWJsZWQgPSBmYWxzZSwgfSkgPT4ge1xyXG4gICAgY29uc3QgW2V4cGFuZGVkLCBzZXRFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCByZW5kZXJMYWJlbEJ5SWQgPSAodmFsdWUpID0+IHtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5pZCA9PT0gdmFsdWUpWzBdO1xyXG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBzZWxlY3RlZE9wdGlvbi5sYWJlbCB9KTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVTZWxlY3Rpb24gPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBzZWxlY3Rpb25IYW5kbGVyKGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlRXhwYW5kID0gKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldEV4cGFuZGVkKHRydWUpO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IGhhbmRsZUNvbGxhcHNlID0gKCkgPT4ge1xyXG4gICAgICAgIHNldEV4cGFuZGVkKGZhbHNlKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZEZvcm1Db250cm9sLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBjaGlsZHJlbjogW2xhYmVsICYmIF9qc3goXCJsYWJlbFwiLCB7IGh0bWxGb3I6IFwiZmlsZWZvcm1hdFwiLCBjaGlsZHJlbjogXCJGaWxlIGZvcm1hdDpcIiB9KSwgX2pzeChEcm9wRG93blNlbGVjdCwgeyB2YWx1ZTogY3VycmVudFNlbGVjdGlvbiwgb25DaGFuZ2U6IGhhbmRsZVNlbGVjdGlvbiwgb3BlbjogZXhwYW5kZWQsIG9uT3BlbjogaGFuZGxlRXhwYW5kLCBvbkNsb3NlOiBoYW5kbGVDb2xsYXBzZSwgcmVuZGVyVmFsdWU6IHJlbmRlckxhYmVsQnlJZCwgSWNvbkNvbXBvbmVudDogQ2hldnJvbkljb24sIGRpc2FibGVkOiBkaXNhYmxlZCwgZnVsbFdpZHRoOiB0cnVlLCBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCB8fCAnZHJvcGRvd24tc2VsZWN0JywgTWVudVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgUGFwZXJQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogeyAuLi5zdHlsZXNGb3JFeHBhbmRlZCwgLi4uY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgfSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIE1lbnVMaXN0UHJvcHM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHsgcGFkZGluZzogJzAnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBvcHRpb25zLm1hcCgoaXRlbSkgPT4gKF9qc3goRHJvcERvd25JdGVtLCB7IHZhbHVlOiBpdGVtLmlkLCBjaGlsZHJlbjogX2pzeChMaXN0SXRlbVRleHQsIHsgcHJpbWFyeTogaXRlbS5sYWJlbCB9KSB9LCBpdGVtLmlkKSkpIH0pXSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRyb3BEb3duLmpzLm1hcCJdfQ== */"));
var stylesForExpanded$1 = {
  width: '120px',
  backgroundColor: 'white',
  border: '1px solid #5B6077',
  borderTopWidth: '0',
  borderRadius: '0px 0px 2px 2px',
  boxShadow: '0 6px 10px rgba(103, 104, 132, 0.15)'
};
var DropDownItem = _styled(MenuItem$1, process.env.NODE_ENV === "production" ? {
  target: "e944g1i0"
} : {
  target: "e944g1i0",
  label: "DropDownItem"
})("display:flex;flex-direction:row;justify-content:space-between;padding:0 8px;height:28px;font-size:14px;&.MuiButtonBase-root:hover{border-left:2px solid #167782;}& .MuiTypography-root{", function (_ref4) {
  var theme = _ref4.theme;
  return "font-size: ".concat(theme.ketcher.font.size.medium);
}, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRyb3BEb3duLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRXNDIiwiZmlsZSI6ImRyb3BEb3duLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgU2VsZWN0LCBGb3JtQ29udHJvbCwgTWVudUl0ZW0sIExpc3RJdGVtVGV4dCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcclxuaW1wb3J0IHsgQ2hldnJvbkljb24gfSBmcm9tICcuL3N0eWxlZEljb25zJztcclxuY29uc3QgU3R5bGVkRm9ybUNvbnRyb2wgPSBzdHlsZWQoRm9ybUNvbnRyb2wpIGBcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgOHB4O1xuXG4gICYgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogdW5zZXQ7XG4gIH1cbmA7XHJcbmNvbnN0IERyb3BEb3duU2VsZWN0ID0gc3R5bGVkKFNlbGVjdCkgYFxuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1YjYwNzc7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gICR7KHsgb3BlbiB9KSA9PiBvcGVuICYmXHJcbiAgICBjc3MgYFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYH1cblxuICAmIC5NdWlTZWxlY3Qtc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAwIDI0cHggMCA4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJiBzcGFuIHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cblxuICAmIC5NdWlPdXRsaW5lZElucHV0LW5vdGNoZWRPdXRsaW5lIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbmA7XHJcbmNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgd2lkdGg6ICcxMjBweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICd3aGl0ZScsXHJcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzVCNjA3NycsXHJcbiAgICBib3JkZXJUb3BXaWR0aDogJzAnLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnMHB4IDBweCAycHggMnB4JyxcclxuICAgIGJveFNoYWRvdzogJzAgNnB4IDEwcHggcmdiYSgxMDMsIDEwNCwgMTMyLCAwLjE1KScsXHJcbn07XHJcbmNvbnN0IERyb3BEb3duSXRlbSA9IHN0eWxlZChNZW51SXRlbSkgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcblxuICAmLk11aUJ1dHRvbkJhc2Utcm9vdDpob3ZlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMTY3NzgyO1xuICB9XG5cbiAgJiAuTXVpVHlwb2dyYXBoeS1yb290IHtcbiAgICAkeyh7IHRoZW1lIH0pID0+IGBmb250LXNpemU6ICR7dGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfWB9XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93biA9ICh7IG9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb24sIHNlbGVjdGlvbkhhbmRsZXIsIGNsYXNzTmFtZSwgbGFiZWwsIHRlc3RJZCwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgPSB7fSwgZGlzYWJsZWQgPSBmYWxzZSwgfSkgPT4ge1xyXG4gICAgY29uc3QgW2V4cGFuZGVkLCBzZXRFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCByZW5kZXJMYWJlbEJ5SWQgPSAodmFsdWUpID0+IHtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnMuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5pZCA9PT0gdmFsdWUpWzBdO1xyXG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBzZWxlY3RlZE9wdGlvbi5sYWJlbCB9KTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVTZWxlY3Rpb24gPSAoZXZlbnQpID0+IHtcclxuICAgICAgICBzZWxlY3Rpb25IYW5kbGVyKGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlRXhwYW5kID0gKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldEV4cGFuZGVkKHRydWUpO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IGhhbmRsZUNvbGxhcHNlID0gKCkgPT4ge1xyXG4gICAgICAgIHNldEV4cGFuZGVkKGZhbHNlKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3hzKFN0eWxlZEZvcm1Db250cm9sLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBjaGlsZHJlbjogW2xhYmVsICYmIF9qc3goXCJsYWJlbFwiLCB7IGh0bWxGb3I6IFwiZmlsZWZvcm1hdFwiLCBjaGlsZHJlbjogXCJGaWxlIGZvcm1hdDpcIiB9KSwgX2pzeChEcm9wRG93blNlbGVjdCwgeyB2YWx1ZTogY3VycmVudFNlbGVjdGlvbiwgb25DaGFuZ2U6IGhhbmRsZVNlbGVjdGlvbiwgb3BlbjogZXhwYW5kZWQsIG9uT3BlbjogaGFuZGxlRXhwYW5kLCBvbkNsb3NlOiBoYW5kbGVDb2xsYXBzZSwgcmVuZGVyVmFsdWU6IHJlbmRlckxhYmVsQnlJZCwgSWNvbkNvbXBvbmVudDogQ2hldnJvbkljb24sIGRpc2FibGVkOiBkaXNhYmxlZCwgZnVsbFdpZHRoOiB0cnVlLCBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCB8fCAnZHJvcGRvd24tc2VsZWN0JywgTWVudVByb3BzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgUGFwZXJQcm9wczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogeyAuLi5zdHlsZXNGb3JFeHBhbmRlZCwgLi4uY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQgfSxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIE1lbnVMaXN0UHJvcHM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU6IHsgcGFkZGluZzogJzAnIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0sIGNoaWxkcmVuOiBvcHRpb25zLm1hcCgoaXRlbSkgPT4gKF9qc3goRHJvcERvd25JdGVtLCB7IHZhbHVlOiBpdGVtLmlkLCBjaGlsZHJlbjogX2pzeChMaXN0SXRlbVRleHQsIHsgcHJpbWFyeTogaXRlbS5sYWJlbCB9KSB9LCBpdGVtLmlkKSkpIH0pXSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRyb3BEb3duLmpzLm1hcCJdfQ== */"));
var DropDown = function DropDown(_ref5) {
  var options = _ref5.options,
    currentSelection = _ref5.currentSelection,
    selectionHandler = _ref5.selectionHandler,
    className = _ref5.className,
    label = _ref5.label,
    testId = _ref5.testId,
    _ref5$customStylesFor = _ref5.customStylesForExpanded,
    customStylesForExpanded = _ref5$customStylesFor === void 0 ? {} : _ref5$customStylesFor,
    _ref5$disabled = _ref5.disabled,
    disabled = _ref5$disabled === void 0 ? false : _ref5$disabled;
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    expanded = _useState2[0],
    setExpanded = _useState2[1];
  var renderLabelById = function renderLabelById(value) {
    var selectedOption = options.filter(function (option) {
      return option.id === value;
    })[0];
    return jsx("span", {
      children: selectedOption.label
    });
  };
  var handleSelection = function handleSelection(event) {
    selectionHandler(event.target.value);
  };
  var handleExpand = function handleExpand(event) {
    if (event.type === 'keydown') {
      return;
    }
    setExpanded(true);
  };
  var handleCollapse = function handleCollapse() {
    setExpanded(false);
  };
  return jsxs(StyledFormControl, {
    className: className,
    children: [label && jsx("label", {
      htmlFor: "fileformat",
      children: "File format:"
    }), jsx(DropDownSelect, {
      value: currentSelection,
      onChange: handleSelection,
      open: expanded,
      onOpen: handleExpand,
      onClose: handleCollapse,
      renderValue: renderLabelById,
      IconComponent: ChevronIcon,
      disabled: disabled,
      fullWidth: true,
      "data-testid": testId || 'dropdown-select',
      MenuProps: {
        PaperProps: {
          style: _objectSpread$6(_objectSpread$6({}, stylesForExpanded$1), customStylesForExpanded)
        },
        MenuListProps: {
          style: {
            padding: '0'
          }
        }
      },
      children: options.map(function (item) {
        return jsx(DropDownItem, {
          value: item.id,
          children: jsx(ListItemText, {
            primary: item.label
          })
        }, item.id);
      })
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$j() { 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)."; }
var Form = _styled("form", process.env.NODE_ENV === "production" ? {
  target: "el6v3ot5"
} : {
  target: "el6v3ot5",
  label: "Form"
})(process.env.NODE_ENV === "production" ? {
  name: "9pd72t",
  styles: "display:flex;flex-direction:column;height:300px"
} : {
  name: "9pd72t",
  styles: "display:flex;flex-direction:column;height:300px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVvQiIsImZpbGUiOiJTYXZlLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRHJvcERvd24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2Ryb3BEb3duXCI7XHJcbmV4cG9ydCBjb25zdCBGb3JtID0gc3R5bGVkLmZvcm0oe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBoZWlnaHQ6ICczMDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUm93ID0gc3R5bGVkLmRpdih7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnMTZweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd24gPSBzdHlsZWQoRHJvcERvd24pKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICB3aWR0aDogJ2NhbGMoNTAlIC0gNnB4KScsXHJcbiAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3Q6aG92ZXI6bm90KC5NdWktZGlzYWJsZWQpJzoge1xyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLmhvdmVyfWAsXHJcbiAgICB9LFxyXG4gICAgJyYgLk11aU91dGxpbmVkSW5wdXQtcm9vdCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5yZWd1bGFyfWAsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgZm9udEZhbWlseTogdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5pbnRlcixcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgYm9yZGVyOiAnbm9uZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBMb2FkZXIgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN2Z1ByZXZpZXcgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBQcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgICcmIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgIHJpZ2h0OiAnMTJweCcsXHJcbiAgICAgICAgdG9wOiAnMTJweCcsXHJcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBwYWRkaW5nOiAnMnB4JyxcclxuICAgICAgICB3aWR0aDogJzI4cHgnLFxyXG4gICAgICAgIGhlaWdodDogJzI4cHgnLFxyXG4gICAgICAgICcmOm5vdCg6YWN0aXZlKSc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgJyY6aG92ZXIgYnV0dG9uJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG4gICAgJyY6Zm9jdXMtd2l0aGluIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b246aG92ZXInOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMSxcclxuICAgIH0sXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U2F2ZS5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
});
var Row = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "el6v3ot4"
} : {
  target: "el6v3ot4",
  label: "Row"
})(process.env.NODE_ENV === "production" ? {
  name: "itz7qk",
  styles: "display:flex;justify-content:space-between;margin-bottom:16px"
} : {
  name: "itz7qk",
  styles: "display:flex;justify-content:space-between;margin-bottom:16px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9tQiIsImZpbGUiOiJTYXZlLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRHJvcERvd24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2Ryb3BEb3duXCI7XHJcbmV4cG9ydCBjb25zdCBGb3JtID0gc3R5bGVkLmZvcm0oe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBoZWlnaHQ6ICczMDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUm93ID0gc3R5bGVkLmRpdih7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnMTZweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd24gPSBzdHlsZWQoRHJvcERvd24pKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICB3aWR0aDogJ2NhbGMoNTAlIC0gNnB4KScsXHJcbiAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3Q6aG92ZXI6bm90KC5NdWktZGlzYWJsZWQpJzoge1xyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLmhvdmVyfWAsXHJcbiAgICB9LFxyXG4gICAgJyYgLk11aU91dGxpbmVkSW5wdXQtcm9vdCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5yZWd1bGFyfWAsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgZm9udEZhbWlseTogdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5pbnRlcixcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgYm9yZGVyOiAnbm9uZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBMb2FkZXIgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN2Z1ByZXZpZXcgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBQcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgICcmIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgIHJpZ2h0OiAnMTJweCcsXHJcbiAgICAgICAgdG9wOiAnMTJweCcsXHJcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBwYWRkaW5nOiAnMnB4JyxcclxuICAgICAgICB3aWR0aDogJzI4cHgnLFxyXG4gICAgICAgIGhlaWdodDogJzI4cHgnLFxyXG4gICAgICAgICcmOm5vdCg6YWN0aXZlKSc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgJyY6aG92ZXIgYnV0dG9uJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG4gICAgJyY6Zm9jdXMtd2l0aGluIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b246aG92ZXInOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMSxcclxuICAgIH0sXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U2F2ZS5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
});
var StyledDropdown$1 = _styled(DropDown, process.env.NODE_ENV === "production" ? {
  target: "el6v3ot3"
} : {
  target: "el6v3ot3",
  label: "StyledDropdown"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    width: 'calc(50% - 6px)',
    height: '28px',
    '& .MuiOutlinedInput-root:hover:not(.Mui-disabled)': {
      border: "1px solid ".concat(theme.ketcher.color.input.border.hover)
    },
    '& .MuiOutlinedInput-root': {
      border: "1px solid ".concat(theme.ketcher.color.input.border.regular),
      backgroundColor: theme.ketcher.color.background.primary,
      color: theme.ketcher.color.text.primary,
      fontFamily: theme.ketcher.font.family.inter
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVk4QiIsImZpbGUiOiJTYXZlLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgRHJvcERvd24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2Ryb3BEb3duXCI7XHJcbmV4cG9ydCBjb25zdCBGb3JtID0gc3R5bGVkLmZvcm0oe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBoZWlnaHQ6ICczMDBweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgUm93ID0gc3R5bGVkLmRpdih7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgbWFyZ2luQm90dG9tOiAnMTZweCcsXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd24gPSBzdHlsZWQoRHJvcERvd24pKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICB3aWR0aDogJ2NhbGMoNTAlIC0gNnB4KScsXHJcbiAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3Q6aG92ZXI6bm90KC5NdWktZGlzYWJsZWQpJzoge1xyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLmhvdmVyfWAsXHJcbiAgICB9LFxyXG4gICAgJyYgLk11aU91dGxpbmVkSW5wdXQtcm9vdCc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5yZWd1bGFyfWAsXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICAgICAgZm9udEZhbWlseTogdGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5pbnRlcixcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IHN0eWxlc0ZvckV4cGFuZGVkID0ge1xyXG4gICAgYm9yZGVyOiAnbm9uZScsXHJcbn07XHJcbmV4cG9ydCBjb25zdCBMb2FkZXIgPSBzdHlsZWQuZGl2IGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN2Z1ByZXZpZXcgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxyXG4gICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBQcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleEdyb3c6IDEsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgICcmIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgICAgIHJpZ2h0OiAnMTJweCcsXHJcbiAgICAgICAgdG9wOiAnMTJweCcsXHJcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgICAgICBwYWRkaW5nOiAnMnB4JyxcclxuICAgICAgICB3aWR0aDogJzI4cHgnLFxyXG4gICAgICAgIGhlaWdodDogJzI4cHgnLFxyXG4gICAgICAgICcmOm5vdCg6YWN0aXZlKSc6IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgICAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgJyY6aG92ZXIgYnV0dG9uJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG4gICAgJyY6Zm9jdXMtd2l0aGluIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b246aG92ZXInOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMSxcclxuICAgIH0sXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U2F2ZS5zdHlsZXMuanMubWFwIl19 */");
var stylesForExpanded = {
  border: 'none'
};
var Loader$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "el6v3ot2"
} : {
  target: "el6v3ot2",
  label: "Loader"
})(process.env.NODE_ENV === "production" ? {
  name: "kq43v2",
  styles: "position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background:#fff"
} : {
  name: "kq43v2",
  styles: "position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background:#fff",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCaUMiLCJmaWxlIjoiU2F2ZS5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IERyb3BEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9kcm9wRG93blwiO1xyXG5leHBvcnQgY29uc3QgRm9ybSA9IHN0eWxlZC5mb3JtKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgaGVpZ2h0OiAnMzAwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIG1hcmdpbkJvdHRvbTogJzE2cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKERyb3BEb3duKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgd2lkdGg6ICdjYWxjKDUwJSAtIDZweCknLFxyXG4gICAgaGVpZ2h0OiAnMjhweCcsXHJcbiAgICAnJiAuTXVpT3V0bGluZWRJbnB1dC1yb290OmhvdmVyOm5vdCguTXVpLWRpc2FibGVkKSc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5ob3Zlcn1gLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3QnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBzdHlsZXNGb3JFeHBhbmRlZCA9IHtcclxuICAgIGJvcmRlcjogJ25vbmUnLFxyXG59O1xyXG5leHBvcnQgY29uc3QgTG9hZGVyID0gc3R5bGVkLmRpdiBgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbmA7XHJcbmV4cG9ydCBjb25zdCBTdmdQcmV2aWV3ID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLnJlZ3VsYXJ9YCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgUHJldmlld0NvbnRhaW5lciA9IHN0eWxlZCgnZGl2JykoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICAnJiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICByaWdodDogJzEycHgnLFxyXG4gICAgICAgIHRvcDogJzEycHgnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzJweCcsXHJcbiAgICAgICAgd2lkdGg6ICcyOHB4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICAgICAnJjpub3QoOmFjdGl2ZSknOiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgICcmOmhvdmVyIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgIH0sXHJcbiAgICAnJjpmb2N1cy13aXRoaW4gYnV0dG9uOmhvdmVyJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNhdmUuc3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
});
var SvgPreview = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "el6v3ot1"
} : {
  target: "el6v3ot1",
  label: "SvgPreview"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    height: '100%',
    position: 'relative',
    border: "1px solid ".concat(theme.ketcher.color.input.border.regular)
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVDMEIiLCJmaWxlIjoiU2F2ZS5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IERyb3BEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9kcm9wRG93blwiO1xyXG5leHBvcnQgY29uc3QgRm9ybSA9IHN0eWxlZC5mb3JtKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgaGVpZ2h0OiAnMzAwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIG1hcmdpbkJvdHRvbTogJzE2cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKERyb3BEb3duKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgd2lkdGg6ICdjYWxjKDUwJSAtIDZweCknLFxyXG4gICAgaGVpZ2h0OiAnMjhweCcsXHJcbiAgICAnJiAuTXVpT3V0bGluZWRJbnB1dC1yb290OmhvdmVyOm5vdCguTXVpLWRpc2FibGVkKSc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5ob3Zlcn1gLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3QnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBzdHlsZXNGb3JFeHBhbmRlZCA9IHtcclxuICAgIGJvcmRlcjogJ25vbmUnLFxyXG59O1xyXG5leHBvcnQgY29uc3QgTG9hZGVyID0gc3R5bGVkLmRpdiBgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbmA7XHJcbmV4cG9ydCBjb25zdCBTdmdQcmV2aWV3ID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLnJlZ3VsYXJ9YCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgUHJldmlld0NvbnRhaW5lciA9IHN0eWxlZCgnZGl2JykoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICAnJiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICByaWdodDogJzEycHgnLFxyXG4gICAgICAgIHRvcDogJzEycHgnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzJweCcsXHJcbiAgICAgICAgd2lkdGg6ICcyOHB4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICAgICAnJjpub3QoOmFjdGl2ZSknOiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgICcmOmhvdmVyIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgIH0sXHJcbiAgICAnJjpmb2N1cy13aXRoaW4gYnV0dG9uOmhvdmVyJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNhdmUuc3R5bGVzLmpzLm1hcCJdfQ== */");
var PreviewContainer$1 = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "el6v3ot0"
} : {
  target: "el6v3ot0",
  label: "PreviewContainer"
})(function (_ref3) {
  var theme = _ref3.theme;
  return {
    display: 'flex',
    flexGrow: 1,
    position: 'relative',
    '& button': {
      opacity: 0,
      position: 'absolute',
      right: '12px',
      top: '12px',
      borderRadius: '4px',
      padding: '2px',
      width: '28px',
      height: '28px',
      '&:not(:active)': {
        backgroundColor: theme.ketcher.color.background.primary,
        color: theme.ketcher.color.text.primary
      }
    },
    '&:hover button': {
      opacity: 1
    },
    '&:focus-within button': {
      opacity: 0
    },
    '&:focus-within button:hover': {
      opacity: 1
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRDZ0MiLCJmaWxlIjoiU2F2ZS5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IERyb3BEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9kcm9wRG93blwiO1xyXG5leHBvcnQgY29uc3QgRm9ybSA9IHN0eWxlZC5mb3JtKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgaGVpZ2h0OiAnMzAwcHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFJvdyA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIG1hcmdpbkJvdHRvbTogJzE2cHgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKERyb3BEb3duKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgd2lkdGg6ICdjYWxjKDUwJSAtIDZweCknLFxyXG4gICAgaGVpZ2h0OiAnMjhweCcsXHJcbiAgICAnJiAuTXVpT3V0bGluZWRJbnB1dC1yb290OmhvdmVyOm5vdCguTXVpLWRpc2FibGVkKSc6IHtcclxuICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5ob3Zlcn1gLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlPdXRsaW5lZElucHV0LXJvb3QnOiB7XHJcbiAgICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIucmVndWxhcn1gLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5LFxyXG4gICAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBzdHlsZXNGb3JFeHBhbmRlZCA9IHtcclxuICAgIGJvcmRlcjogJ25vbmUnLFxyXG59O1xyXG5leHBvcnQgY29uc3QgTG9hZGVyID0gc3R5bGVkLmRpdiBgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbmA7XHJcbmV4cG9ydCBjb25zdCBTdmdQcmV2aWV3ID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLnJlZ3VsYXJ9YCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgUHJldmlld0NvbnRhaW5lciA9IHN0eWxlZCgnZGl2JykoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhHcm93OiAxLFxyXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXHJcbiAgICAnJiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICByaWdodDogJzEycHgnLFxyXG4gICAgICAgIHRvcDogJzEycHgnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzJweCcsXHJcbiAgICAgICAgd2lkdGg6ICcyOHB4JyxcclxuICAgICAgICBoZWlnaHQ6ICcyOHB4JyxcclxuICAgICAgICAnJjpub3QoOmFjdGl2ZSknOiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICAgICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgICcmOmhvdmVyIGJ1dHRvbic6IHtcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgfSxcclxuICAgICcmOmZvY3VzLXdpdGhpbiBidXR0b24nOiB7XHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgIH0sXHJcbiAgICAnJjpmb2N1cy13aXRoaW4gYnV0dG9uOmhvdmVyJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDEsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVNhdmUuc3R5bGVzLmpzLm1hcCJdfQ== */");

function _EMOTION_STRINGIFIED_CSS_ERROR__$i() { 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)."; }
var OpenModal = _styled(Modal, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu38"
} : {
  target: "e1oaegu38",
  label: "OpenModal"
})(function (_ref) {
  var modalWidth = _ref.modalWidth;
  return "\n    .MuiPaper-root {\n      width: ".concat(modalWidth, ";\n      max-width: ").concat(modalWidth, ";\n    }");
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCa0IiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */");
var OpenFooter = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1oaegu37"
} : {
  target: "e1oaegu37",
  label: "OpenFooter"
})(process.env.NODE_ENV === "production" ? {
  name: "kj5rtd",
  styles: "width:100%;display:flex;flex-direction:row;justify-content:space-between;align-items:center"
} : {
  name: "kj5rtd",
  styles: "width:100%;display:flex;flex-direction:row;justify-content:space-between;align-items:center",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtDbUIiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var FooterSelectorContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1oaegu36"
} : {
  target: "e1oaegu36",
  label: "FooterSelectorContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "rpuipy",
  styles: "display:flex;height:24px;font-size:12px"
} : {
  name: "rpuipy",
  styles: "display:flex;height:24px;font-size:12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlDZ0MiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var StyledDropdown = _styled(StyledDropdown$1, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu35"
} : {
  target: "e1oaegu35",
  label: "StyledDropdown"
})(process.env.NODE_ENV === "production" ? {
  name: "7nflbq",
  styles: "padding:0;font-size:12px;& .MuiSelect-select{display:flex;align-items:center;padding:0 20px 0 8px;padding-right:20px !important;height:100%;}& span{font-size:12px;}"
} : {
  name: "7nflbq",
  styles: "padding:0;font-size:12px;& .MuiSelect-select{display:flex;align-items:center;padding:0 20px 0 8px;padding-right:20px !important;height:100%;}& span{font-size:12px;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDdUIiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var FooterFormatSelector = _styled(StyledDropdown, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu34"
} : {
  target: "e1oaegu34",
  label: "FooterFormatSelector"
})(function () {
  return {
    width: '140px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRENkIiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */");
var FooterSequenceSelector = _styled(StyledDropdown, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu33"
} : {
  target: "e1oaegu33",
  label: "FooterSequenceSelector"
})(process.env.NODE_ENV === "production" ? {
  name: "16zm0c",
  styles: "width:76px;margin-left:8px"
} : {
  name: "16zm0c",
  styles: "width:76px;margin-left:8px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStEK0IiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var FooterPeptideLettersSelector = _styled(StyledDropdown, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu32"
} : {
  target: "e1oaegu32",
  label: "FooterPeptideLettersSelector"
})(process.env.NODE_ENV === "production" ? {
  name: "l4tg7k",
  styles: "width:105px;margin-left:8px"
} : {
  name: "l4tg7k",
  styles: "width:105px;margin-left:8px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1FcUMiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var FooterButtonContainer = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "e1oaegu31"
} : {
  target: "e1oaegu31",
  label: "FooterButtonContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "oq6u0f",
  styles: "display:flex;gap:10px"
} : {
  name: "oq6u0f",
  styles: "display:flex;gap:10px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVFOEIiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var FooterButton = _styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "e1oaegu30"
} : {
  target: "e1oaegu30",
  label: "FooterButton"
})(process.env.NODE_ENV === "production" ? {
  name: "b9l38d",
  styles: "width:min-content"
} : {
  name: "b9l38d",
  styles: "width:min-content",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk9wZW4udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJFcUIiLCJmaWxlIjoiT3Blbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cywgRnJhZ21lbnQgYXMgX0ZyYWdtZW50IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IFZpZXdTd2l0Y2hlciB9IGZyb20gJy4vVmlld1N3aXRjaGVyJztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9hY3Rpb25CdXR0b25cIjtcclxuaW1wb3J0IHsgZmlsZU9wZW5lciB9IGZyb20gJy4vZmlsZU9wZW5lcic7XHJcbmltcG9ydCB7IENoZW1pY2FsTWltZVR5cGUsIEtldFNlcmlhbGl6ZXIsIENvcmVFZGl0b3IsIEtldGNoZXJMb2dnZXIsIEVkaXRvckhpc3RvcnksIFNlcXVlbmNlTW9kZSwgbWFjcm9tb2xlY3VsZXNGaWxlc0lucHV0Rm9ybWF0cywgTW9kZVR5cGVzLCBTbmFrZU1vZGUsIEZsZXhNb2RlLCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IEluZGlnb1Byb3ZpZGVyIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IE9wZW5GaWxlV3JhcHBlciB9IGZyb20gJy4vT3Blbi5zdHlsZXMnO1xyXG5pbXBvcnQgeyBMb2FkZXIsIFN0eWxlZERyb3Bkb3duIGFzIFNhdmVEcm9wZG93biwgc3R5bGVzRm9yRXhwYW5kZWQsIH0gZnJvbSAnLi4vc2F2ZS9TYXZlLnN0eWxlcyc7XHJcbmltcG9ydCB7IExvYWRpbmdDaXJjbGVzIH0gZnJvbSAnLi9BbmFseXppbmdGaWxlL0xvYWRpbmdDaXJjbGVzJztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2ggfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgb3BlbkVycm9yTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvbW9kYWxcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBPcGVuTW9kYWwgPSBzdHlsZWQoTW9kYWwpKCh7IG1vZGFsV2lkdGggfSkgPT4gYFxuICAgIC5NdWlQYXBlci1yb290IHtcbiAgICAgIHdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgICAgbWF4LXdpZHRoOiAke21vZGFsV2lkdGh9O1xuICAgIH1gKTtcclxuY29uc3QgT3BlbkZvb3RlciA9IHN0eWxlZC5kaXYoe1xyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcclxuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG59KTtcclxuY29uc3QgRm9vdGVyU2VsZWN0b3JDb250YWluZXIgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGhlaWdodDogJzI0cHgnLFxyXG4gICAgZm9udFNpemU6ICcxMnB4JyxcclxufSk7XHJcbmNvbnN0IFN0eWxlZERyb3Bkb3duID0gc3R5bGVkKFNhdmVEcm9wZG93bikoe1xyXG4gICAgcGFkZGluZzogMCxcclxuICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAnJiAuTXVpU2VsZWN0LXNlbGVjdCc6IHtcclxuICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICAgICAgcGFkZGluZzogJzAgMjBweCAwIDhweCcsXHJcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiAnMjBweCAhaW1wb3J0YW50JyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbiAgICAnJiBzcGFuJzoge1xyXG4gICAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICB9LFxyXG59KTtcclxuY29uc3QgRm9vdGVyRm9ybWF0U2VsZWN0b3IgPSBzdHlsZWQoU3R5bGVkRHJvcGRvd24pKCgpID0+ICh7XHJcbiAgICB3aWR0aDogJzE0MHB4JyxcclxufSkpO1xyXG5jb25zdCBGb290ZXJTZXF1ZW5jZVNlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzc2cHgnLFxyXG4gICAgbWFyZ2luTGVmdDogJzhweCcsXHJcbn0pO1xyXG5jb25zdCBGb290ZXJQZXB0aWRlTGV0dGVyc1NlbGVjdG9yID0gc3R5bGVkKFN0eWxlZERyb3Bkb3duKSh7XHJcbiAgICB3aWR0aDogJzEwNXB4JyxcclxuICAgIG1hcmdpbkxlZnQ6ICc4cHgnLFxyXG59KTtcclxuY29uc3QgRm9vdGVyQnV0dG9uQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBnYXA6ICcxMHB4JyxcclxufSk7XHJcbmNvbnN0IEZvb3RlckJ1dHRvbiA9IHN0eWxlZChBY3Rpb25CdXR0b24pKHtcclxuICAgIHdpZHRoOiAnbWluLWNvbnRlbnQnLFxyXG59KTtcclxuY29uc3QgS0VUID0gJ2tldCc7XHJcbmNvbnN0IFNFUSA9ICdzZXEnO1xyXG5jb25zdCBSTkEgPSAncm5hJztcclxuY29uc3QgUEVQVElERSA9ICdwZXB0aWRlJztcclxuY29uc3QgRkFTVEEgPSAnZmFzdGEnO1xyXG5jb25zdCBPTkVfTEVUVEVSID0gJ29uZS1sZXR0ZXInO1xyXG5jb25zdCBUSFJFRV9MRVRURVIgPSAndGhyZWUtbGV0dGVyJztcclxuY29uc3Qgb3B0aW9ucyA9IFtcclxuICAgIHsgaWQ6ICdrZXQnLCBsYWJlbDogJ0tldCcgfSxcclxuICAgIHsgaWQ6ICdtb2wnLCBsYWJlbDogJ01ETCBNb2xmaWxlIFYzMDAwJyB9LFxyXG4gICAgeyBpZDogJ3NlcScsIGxhYmVsOiAnU2VxdWVuY2UnIH0sXHJcbiAgICB7IGlkOiAnZmFzdGEnLCBsYWJlbDogJ0ZBU1RBJyB9LFxyXG4gICAgeyBpZDogJ2lkdCcsIGxhYmVsOiAnSURUJyB9LFxyXG4gICAgeyBpZDogJ2hlbG0nLCBsYWJlbDogJ0hFTE0nIH0sXHJcbl07XHJcbmNvbnN0IGFkZGl0aW9uYWxPcHRpb25zID0gW1xyXG4gICAgeyBpZDogUk5BLCBsYWJlbDogJ1JOQScgfSxcclxuICAgIHsgaWQ6ICdkbmEnLCBsYWJlbDogJ0ROQScgfSxcclxuICAgIHsgaWQ6IFBFUFRJREUsIGxhYmVsOiAnUGVwdGlkZScgfSxcclxuXTtcclxuY29uc3QgcGVwdGlkZUxldHRlcnNGb3JtYXRPcHRpb25zID0gW1xyXG4gICAgeyBpZDogT05FX0xFVFRFUiwgbGFiZWw6ICcxLWxldHRlciBjb2RlJyB9LFxyXG4gICAgeyBpZDogVEhSRUVfTEVUVEVSLCBsYWJlbDogJzMtbGV0dGVyIGNvZGUnIH0sXHJcbl07XHJcbmNvbnN0IGlucHV0Rm9ybWF0cyA9IG1hY3JvbW9sZWN1bGVzRmlsZXNJbnB1dEZvcm1hdHM7XHJcbmV4cG9ydCBjb25zdCBNT0RBTF9TVEFURVMgPSB7XHJcbiAgICBvcGVuT3B0aW9uczogJ29wZW5PcHRpb25zJyxcclxuICAgIHRleHRFZGl0b3I6ICd0ZXh0RWRpdG9yJyxcclxufTtcclxuY29uc3QgYWRkVG9DYW52YXMgPSAoeyBrZXRTZXJpYWxpemVyLCBlZGl0b3IsIHN0cnVjdCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNDYW52YXNFbXB0eUJlZm9yZU9wZW5TdHJ1Y3R1cmUgPSAhZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIuaGFzRHJhd2luZ0VudGl0aWVzO1xyXG4gICAgY29uc3QgZGVzZXJpYWxpc2VkS2V0ID0ga2V0U2VyaWFsaXplci5kZXNlcmlhbGl6ZVRvRHJhd2luZ0VudGl0aWVzKHN0cnVjdCk7XHJcbiAgICBpZiAoIWRlc2VyaWFsaXNlZEtldCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZHVyaW5nIHBhcnNpbmcgZmlsZScpO1xyXG4gICAgfVxyXG4gICAgZGVzZXJpYWxpc2VkS2V0LmRyYXdpbmdFbnRpdGllc01hbmFnZXIuY2VudGVyTWFjcm9TdHJ1Y3R1cmUoKTtcclxuICAgIGNvbnN0IHsgY29tbWFuZDogbW9kZWxDaGFuZ2VzIH0gPSBkZXNlcmlhbGlzZWRLZXQuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5tZXJnZUludG8oZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIpO1xyXG4gICAgY29uc3QgZWRpdG9ySGlzdG9yeSA9IG5ldyBFZGl0b3JIaXN0b3J5KGVkaXRvcik7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGVkaXRvci5tb2RlIGluc3RhbmNlb2YgU2VxdWVuY2VNb2RlO1xyXG4gICAgY29uc3QgaXNTbmFrZU1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIFNuYWtlTW9kZTtcclxuICAgIGNvbnN0IGlzRmxleE1vZGUgPSBlZGl0b3IubW9kZSBpbnN0YW5jZW9mIEZsZXhNb2RlO1xyXG4gICAgaWYgKGlzRmxleE1vZGUpIHtcclxuICAgICAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5yZWNhbGN1bGF0ZUFudGlzZW5zZUNoYWlucygpO1xyXG4gICAgICAgIGlmIChlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5oYXNBbnRpc2Vuc2VDaGFpbnMpIHtcclxuICAgICAgICAgICAgbW9kZWxDaGFuZ2VzLm1lcmdlKGVkaXRvci5kcmF3aW5nRW50aXRpZXNNYW5hZ2VyLmFwcGx5U25ha2VMYXlvdXQoZWRpdG9yLmNhbnZhcy53aWR0aC5iYXNlVmFsLnZhbHVlLCB0cnVlLCB0cnVlLCB0cnVlKSk7XHJcbiAgICAgICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uc0J5UHJpb3JpdHkoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZXRlY3RCb25kc092ZXJsYXBwZWRCeU1vbm9tZXJzKCk7XHJcbiAgICBlZGl0b3IucmVuZGVyZXJzQ29udGFpbmVyLnVwZGF0ZShtb2RlbENoYW5nZXMpO1xyXG4gICAgZWRpdG9ySGlzdG9yeS51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgIGlmIChpc1NlcXVlbmNlTW9kZSkge1xyXG4gICAgICAgIG1vZGVsQ2hhbmdlcy5zZXRVbmRvT3BlcmF0aW9uUmV2ZXJzZSgpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuc2VsZWN0TW9kZS5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIG1vZGU6IE1vZGVUeXBlcy5zZXF1ZW5jZSxcclxuICAgICAgICAgICAgbWVyZ2VXaXRoTGF0ZXN0SGlzdG9yeUNvbW1hbmQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNTbmFrZU1vZGUpIHtcclxuICAgICAgICBtb2RlbENoYW5nZXMuc2V0VW5kb09wZXJhdGlvblJldmVyc2UoKTtcclxuICAgICAgICBlZGl0b3IuZXZlbnRzLnNlbGVjdE1vZGUuZGlzcGF0Y2goe1xyXG4gICAgICAgICAgICBtb2RlOiBNb2RlVHlwZXMuc25ha2UsXHJcbiAgICAgICAgICAgIG1lcmdlV2l0aExhdGVzdEhpc3RvcnlDb21tYW5kOiB0cnVlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzQ2FudmFzRW1wdHlCZWZvcmVPcGVuU3RydWN0dXJlKSB7XHJcbiAgICAgICAgZWRpdG9yLnpvb21Ub1N0cnVjdHVyZXNJZk5lZWRlZCgpO1xyXG4gICAgfVxyXG59O1xyXG4vLyBUT0RPOiByZXBsYWNlIGFmdGVyIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgdGhlIHN0cnVjdHVyZSBmcm9tIHRoZSBmaWxlXHJcbmNvbnN0IG9uT2sgPSBhc3luYyAoeyBzdHJ1Y3QsIGZvcm1hdFNlbGVjdGlvbiwgYWRkaXRpb25hbFNlbGVjdGlvbiwgcGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb24sIG9uQ2xvc2VDYWxsYmFjaywgc2V0SXNMb2FkaW5nLCBkaXNwYXRjaCwgfSkgPT4ge1xyXG4gICAgY29uc3QgaXNLZXQgPSBmb3JtYXRTZWxlY3Rpb24gPT09IEtFVDtcclxuICAgIGNvbnN0IGlzU2VxID0gZm9ybWF0U2VsZWN0aW9uID09PSBTRVE7XHJcbiAgICBjb25zdCBpc0Zhc3RhID0gZm9ybWF0U2VsZWN0aW9uID09PSBGQVNUQTtcclxuICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgIGxldCBpbnB1dEZvcm1hdDtcclxuICAgIGxldCBmaWxlRGF0YSA9IHN0cnVjdDtcclxuICAgIGNvbnN0IHNob3dQYXJzaW5nRXJyb3IgPSAoc3RyaW5nRXJyb3IpID0+IHtcclxuICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnQ29udmVydCBlcnJvciEgJyArIHN0cmluZ0Vycm9yO1xyXG4gICAgICAgIGRpc3BhdGNoKG9wZW5FcnJvck1vZGFsKHtcclxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvclRpdGxlOiBpc1NlcSB8fCBpc0Zhc3RhID8gJ1Vuc3VwcG9ydGVkIHN5bWJvbHMnIDogJycsXHJcbiAgICAgICAgfSkpO1xyXG4gICAgfTtcclxuICAgIGlmIChpc0tldCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGFkZFRvQ2FudmFzKHsgc3RydWN0LCBrZXRTZXJpYWxpemVyLCBlZGl0b3IgfSk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBzaG93UGFyc2luZ0Vycm9yKCdFcnJvciBkdXJpbmcgZmlsZSBwYXJzaW5nLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc0Zhc3RhIHx8XHJcbiAgICAgICAgKGlzU2VxICYmIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uICE9PSBUSFJFRV9MRVRURVIpKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXVthZGRpdGlvbmFsU2VsZWN0aW9uXTtcclxuICAgICAgICBmaWxlRGF0YSA9IGZpbGVEYXRhLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpc1NlcSAmJiBwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiA9PT0gVEhSRUVfTEVUVEVSKSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHMuc2VxLnBlcHRpZGUzTGV0dGVyO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaW5wdXRGb3JtYXQgPSBpbnB1dEZvcm1hdHNbZm9ybWF0U2VsZWN0aW9uXTtcclxuICAgIH1cclxuICAgIGNvbnN0IGluZGlnbyA9IEluZGlnb1Byb3ZpZGVyLmdldEluZGlnbygpO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcodHJ1ZSk7XHJcbiAgICAgICAgY29uc3Qga2V0U3RydWN0ID0gYXdhaXQgaW5kaWdvLmNvbnZlcnQoe1xyXG4gICAgICAgICAgICBzdHJ1Y3Q6IGZpbGVEYXRhLFxyXG4gICAgICAgICAgICBvdXRwdXRfZm9ybWF0OiBDaGVtaWNhbE1pbWVUeXBlLktFVCxcclxuICAgICAgICAgICAgaW5wdXRfZm9ybWF0OiBpbnB1dEZvcm1hdCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBhZGRUb0NhbnZhcyh7IHN0cnVjdDoga2V0U3RydWN0LnN0cnVjdCwga2V0U2VyaWFsaXplciwgZWRpdG9yIH0pO1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgc2hvd1BhcnNpbmdFcnJvcihzdHJpbmdFcnJvcik7XHJcbiAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcihlcnJvcik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgICBzZXRJc0xvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG59O1xyXG5jb25zdCBpc0FuYWx5emluZ0ZpbGUgPSBmYWxzZTtcclxuY29uc3QgZXJyb3JIYW5kbGVyID0gKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcik7XHJcbmNvbnN0IE9wZW4gPSAoeyBpc01vZGFsT3Blbiwgb25DbG9zZSB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbc3RydWN0U3RyLCBzZXRTdHJ1Y3RTdHJdID0gdXNlU3RhdGUoJycpO1xyXG4gICAgY29uc3QgW2ZpbGVOYW1lLCBzZXRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgnJyk7XHJcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW29wZW5lciwgc2V0T3BlbmVyXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbY3VycmVudFN0YXRlLCBzZXRDdXJyZW50U3RhdGVdID0gdXNlU3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgIGNvbnN0IFtmb3JtYXRTZWxlY3Rpb24sIHNldEZvcm1hdFNlbGVjdGlvbl0gPSB1c2VTdGF0ZShLRVQpO1xyXG4gICAgY29uc3QgW2FkZGl0aW9uYWxTZWxlY3Rpb24sIHNldEFkZGl0aW9uYWxTZWxlY3Rpb25dID0gdXNlU3RhdGUoUk5BKTtcclxuICAgIGNvbnN0IFtwZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgc2V0UGVwdGlkZUxldHRlcnNGb3JtYXRTZWxlY3Rpb25dID0gdXNlU3RhdGUoT05FX0xFVFRFUik7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHNwbGl0dGVkRmlsZW5hbWVCeURvdCA9IGZpbGVOYW1lPy5zcGxpdCgnLicpO1xyXG4gICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBzcGxpdHRlZEZpbGVuYW1lQnlEb3Rbc3BsaXR0ZWRGaWxlbmFtZUJ5RG90Lmxlbmd0aCAtIDFdO1xyXG4gICAgICAgIGlmIChmaWxlRXh0ZW5zaW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnMuZmluZCgoZWwpID0+IGVsLmlkID09PSBmaWxlRXh0ZW5zaW9uKTtcclxuICAgICAgICAgICAgY29uc3QgaWQgPSBvcHRpb24/LmlkID8gb3B0aW9uLmlkIDogU0VRO1xyXG4gICAgICAgICAgICBzZXRGb3JtYXRTZWxlY3Rpb24oaWQpO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtmaWxlTmFtZV0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBmaWxlT3BlbmVyKCkudGhlbigoY2hvc2VuT3BlbmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHNldE9wZW5lcih7IGNob3Nlbk9wZW5lciB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH0sIFtdKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLm9wZW5PcHRpb25zKTtcclxuICAgICAgICBzZXRTdHJ1Y3RTdHIoJycpO1xyXG4gICAgICAgIHNldEZvcm1hdFNlbGVjdGlvbihLRVQpO1xyXG4gICAgICAgIHNldEFkZGl0aW9uYWxTZWxlY3Rpb24oUk5BKTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3Qgb25GaWxlTG9hZCA9IChmaWxlcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9uTG9hZCA9IChmaWxlQ29udGVudCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3RTdHIoZmlsZUNvbnRlbnQpO1xyXG4gICAgICAgICAgICBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb25FcnJvciA9ICgpID0+IGVycm9ySGFuZGxlcignRXJyb3IgcHJvY2Vzc2luZyBmaWxlJyk7XHJcbiAgICAgICAgc2V0RmlsZU5hbWUoZmlsZXNbMF0ubmFtZSk7XHJcbiAgICAgICAgb3BlbmVyPy5jaG9zZW5PcGVuZXIoZmlsZXNbMF0pLnRoZW4ob25Mb2FkLCBvbkVycm9yKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBhZGRUb0NhbnZhc0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3Qgb3BlbkhhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZWRpdG9yID0gQ29yZUVkaXRvci5wcm92aWRlRWRpdG9ySW5zdGFuY2UoKTtcclxuICAgICAgICBjb25zdCBoaXN0b3J5ID0gbmV3IEVkaXRvckhpc3RvcnkoZWRpdG9yKTtcclxuICAgICAgICBjb25zdCBtb2RlbENoYW5nZXMgPSBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlci5kZWxldGVBbGxFbnRpdGllcygpO1xyXG4gICAgICAgIGhpc3RvcnkudXBkYXRlKG1vZGVsQ2hhbmdlcyk7XHJcbiAgICAgICAgZWRpdG9yLnJlbmRlcmVyc0NvbnRhaW5lci51cGRhdGUobW9kZWxDaGFuZ2VzKTtcclxuICAgICAgICBlZGl0b3Iuem9vbVRvU3RydWN0dXJlc0lmTmVlZGVkKCk7XHJcbiAgICAgICAgb25Payh7XHJcbiAgICAgICAgICAgIHN0cnVjdDogc3RydWN0U3RyLFxyXG4gICAgICAgICAgICBmb3JtYXRTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIGFkZGl0aW9uYWxTZWxlY3Rpb24sXHJcbiAgICAgICAgICAgIHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLFxyXG4gICAgICAgICAgICBvbkNsb3NlQ2FsbGJhY2ssXHJcbiAgICAgICAgICAgIHNldElzTG9hZGluZyxcclxuICAgICAgICAgICAgZGlzcGF0Y2gsXHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgcmVuZGVyRm9vdGVyID0gKCkgPT4gKF9qc3hzKE9wZW5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4cyhGb290ZXJTZWxlY3RvckNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyRm9ybWF0U2VsZWN0b3IsIHsgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogZm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRGb3JtYXRTZWxlY3Rpb24sIGN1c3RvbVN0eWxlc0ZvckV4cGFuZGVkOiBzdHlsZXNGb3JFeHBhbmRlZCB9LCBmb3JtYXRTZWxlY3Rpb24pLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSB8fCBmb3JtYXRTZWxlY3Rpb24gPT09IEZBU1RBID8gKF9qc3goRm9vdGVyU2VxdWVuY2VTZWxlY3RvciwgeyBvcHRpb25zOiBhZGRpdGlvbmFsT3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogYWRkaXRpb25hbFNlbGVjdGlvbiwgc2VsZWN0aW9uSGFuZGxlcjogc2V0QWRkaXRpb25hbFNlbGVjdGlvbiwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkLCB0ZXN0SWQ6IFwiZHJvcGRvd24tc2VsZWN0LXR5cGVcIiB9LCBhZGRpdGlvbmFsU2VsZWN0aW9uKSkgOiBudWxsLCBmb3JtYXRTZWxlY3Rpb24gPT09IFNFUSAmJiBhZGRpdGlvbmFsU2VsZWN0aW9uID09PSBQRVBUSURFID8gKF9qc3goRm9vdGVyUGVwdGlkZUxldHRlcnNTZWxlY3RvciwgeyBvcHRpb25zOiBwZXB0aWRlTGV0dGVyc0Zvcm1hdE9wdGlvbnMsIGN1cnJlbnRTZWxlY3Rpb246IHBlcHRpZGVMZXR0ZXJzRm9ybWF0U2VsZWN0aW9uLCBzZWxlY3Rpb25IYW5kbGVyOiBzZXRQZXB0aWRlTGV0dGVyc0Zvcm1hdFNlbGVjdGlvbiwgdGVzdElkOiBcImRyb3Bkb3duLXNlbGVjdC1wZXB0aWRlLWxldHRlcnMtZm9ybWF0XCIgfSkpIDogbnVsbF0gfSksIF9qc3hzKEZvb3RlckJ1dHRvbkNvbnRhaW5lciwgeyBjaGlsZHJlbjogW19qc3goRm9vdGVyQnV0dG9uLCB7IGRpc2FibGVkOiAhc3RydWN0U3RyLCBjbGlja0hhbmRsZXI6IG9wZW5IYW5kbGVyLCBsYWJlbDogXCJPcGVuIGFzIE5ld1wiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJvcGVuQnV0dG9uXCIpLCBfanN4KEZvb3RlckJ1dHRvbiwgeyBkaXNhYmxlZDogIXN0cnVjdFN0ciwgY2xpY2tIYW5kbGVyOiBhZGRUb0NhbnZhc0hhbmRsZXIsIGxhYmVsOiBcIkFkZCB0byBDYW52YXNcIiwgdGl0bGU6IFwiU3RydWN0dXJlIHdpbGwgYmUgbG9hZGVkIGFzIGZyYWdtZW50IGFuZCBhZGRlZCB0byBDbGlwYm9hcmRcIiwgXCJkYXRhLXRlc3RpZFwiOiBcImFkZC10by1jYW52YXMtYnV0dG9uXCIgfSwgXCJjb3B5QnV0dG9uXCIpXSB9KV0gfSkpO1xyXG4gICAgcmV0dXJuIChfanN4cyhPcGVuTW9kYWwsIHsgaXNPcGVuOiBpc01vZGFsT3BlbiwgdGl0bGU6IFwiT3BlbiBTdHJ1Y3R1cmVcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBtb2RhbFdpZHRoOiBjdXJyZW50U3RhdGUgPT09IE1PREFMX1NUQVRFUy50ZXh0RWRpdG9yID8gJzYyMHB4JyA6ICcnLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoT3BlbkZpbGVXcmFwcGVyLCB7IGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBjaGlsZHJlbjogW19qc3goVmlld1N3aXRjaGVyLCB7IGlzQW5hbHl6aW5nRmlsZTogaXNBbmFseXppbmdGaWxlLCBmaWxlTmFtZTogZmlsZU5hbWUsIGN1cnJlbnRTdGF0ZTogY3VycmVudFN0YXRlLCBzdGF0ZXM6IE1PREFMX1NUQVRFUywgc2VsZWN0Q2xpcGJvYXJkOiAoKSA9PiBzZXRDdXJyZW50U3RhdGUoTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IpLCBmaWxlTG9hZEhhbmRsZXI6IG9uRmlsZUxvYWQsIGVycm9ySGFuZGxlcjogZXJyb3JIYW5kbGVyLCB2YWx1ZTogc3RydWN0U3RyLCBpbnB1dEhhbmRsZXI6IHNldFN0cnVjdFN0ciB9KSwgaXNMb2FkaW5nICYmIChfanN4KExvYWRlciwgeyBjaGlsZHJlbjogX2pzeChMb2FkaW5nQ2lyY2xlcywge30pIH0pKV0gfSkgfSksIGN1cnJlbnRTdGF0ZSA9PT0gTU9EQUxfU1RBVEVTLnRleHRFZGl0b3IgJiYgIWlzQW5hbHl6aW5nRmlsZSA/IChfanN4KE1vZGFsLkZvb3RlciwgeyB3aXRoYm9yZGVyOiBcInRydWVcIiwgY2hpbGRyZW46IHJlbmRlckZvb3RlcigpIH0pKSA6IChfanN4KF9GcmFnbWVudCwge30pKV0gfSkpO1xyXG59O1xyXG5leHBvcnQgeyBPcGVuIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU9wZW4uanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
});
var KET = 'ket';
var SEQ = 'seq';
var RNA = 'rna';
var PEPTIDE = 'peptide';
var FASTA = 'fasta';
var ONE_LETTER = 'one-letter';
var THREE_LETTER = 'three-letter';
var options$1 = [{
  id: 'ket',
  label: 'Ket'
}, {
  id: 'mol',
  label: 'MDL Molfile V3000'
}, {
  id: 'seq',
  label: 'Sequence'
}, {
  id: 'fasta',
  label: 'FASTA'
}, {
  id: 'idt',
  label: 'IDT'
}, {
  id: 'helm',
  label: 'HELM'
}];
var additionalOptions = [{
  id: RNA,
  label: 'RNA'
}, {
  id: 'dna',
  label: 'DNA'
}, {
  id: PEPTIDE,
  label: 'Peptide'
}];
var peptideLettersFormatOptions = [{
  id: ONE_LETTER,
  label: '1-letter code'
}, {
  id: THREE_LETTER,
  label: '3-letter code'
}];
var inputFormats = macromoleculesFilesInputFormats;
var MODAL_STATES = {
  openOptions: 'openOptions',
  textEditor: 'textEditor'
};
var addToCanvas = function addToCanvas(_ref2) {
  var ketSerializer = _ref2.ketSerializer,
    editor = _ref2.editor,
    struct = _ref2.struct;
  var isCanvasEmptyBeforeOpenStructure = !editor.drawingEntitiesManager.hasDrawingEntities;
  var deserialisedKet = ketSerializer.deserializeToDrawingEntities(struct);
  if (!deserialisedKet) {
    throw new Error('Error during parsing file');
  }
  deserialisedKet.drawingEntitiesManager.centerMacroStructure();
  var _deserialisedKet$draw = deserialisedKet.drawingEntitiesManager.mergeInto(editor.drawingEntitiesManager),
    modelChanges = _deserialisedKet$draw.command;
  var editorHistory = new EditorHistory(editor);
  var isSequenceMode = editor.mode instanceof SequenceMode;
  var isSnakeMode = editor.mode instanceof SnakeMode;
  var isFlexMode = editor.mode instanceof FlexMode;
  if (isFlexMode) {
    editor.drawingEntitiesManager.recalculateAntisenseChains();
    if (editor.drawingEntitiesManager.hasAntisenseChains) {
      modelChanges.merge(editor.drawingEntitiesManager.applySnakeLayout(editor.canvas.width.baseVal.value, true, true, true));
      modelChanges.setUndoOperationsByPriority();
    }
  }
  editor.drawingEntitiesManager.detectBondsOverlappedByMonomers();
  editor.renderersContainer.update(modelChanges);
  editorHistory.update(modelChanges);
  if (isSequenceMode) {
    modelChanges.setUndoOperationReverse();
    editor.events.selectMode.dispatch({
      mode: ModeTypes.sequence,
      mergeWithLatestHistoryCommand: true
    });
  }
  if (isSnakeMode) {
    modelChanges.setUndoOperationReverse();
    editor.events.selectMode.dispatch({
      mode: ModeTypes.snake,
      mergeWithLatestHistoryCommand: true
    });
  }
  if (isCanvasEmptyBeforeOpenStructure) {
    editor.zoomToStructuresIfNeeded();
  }
};
var onOk = function () {
  var _ref4 = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(_ref3) {
    var struct, formatSelection, additionalSelection, peptideLettersFormatSelection, onCloseCallback, setIsLoading, dispatch, isKet, isSeq, isFasta, ketSerializer, editor, inputFormat, fileData, showParsingError, indigo, ketStruct, stringError;
    return _regeneratorRuntime.wrap(function _callee$(_context) {
      while (1) switch (_context.prev = _context.next) {
        case 0:
          struct = _ref3.struct, formatSelection = _ref3.formatSelection, additionalSelection = _ref3.additionalSelection, peptideLettersFormatSelection = _ref3.peptideLettersFormatSelection, onCloseCallback = _ref3.onCloseCallback, setIsLoading = _ref3.setIsLoading, dispatch = _ref3.dispatch;
          isKet = formatSelection === KET;
          isSeq = formatSelection === SEQ;
          isFasta = formatSelection === FASTA;
          ketSerializer = new KetSerializer();
          editor = CoreEditor.provideEditorInstance();
          fileData = struct;
          showParsingError = function showParsingError(stringError) {
            var errorMessage = 'Convert error! ' + stringError;
            dispatch(openErrorModal({
              errorMessage: errorMessage,
              errorTitle: isSeq || isFasta ? 'Unsupported symbols' : ''
            }));
          };
          if (!isKet) {
            _context.next = 13;
            break;
          }
          try {
            addToCanvas({
              struct: struct,
              ketSerializer: ketSerializer,
              editor: editor
            });
            onCloseCallback();
          } catch (e) {
            showParsingError('Error during file parsing.');
          }
          return _context.abrupt("return");
        case 13:
          if (isFasta || isSeq && peptideLettersFormatSelection !== THREE_LETTER) {
            inputFormat = inputFormats[formatSelection][additionalSelection];
            fileData = fileData.toUpperCase();
          } else if (isSeq && peptideLettersFormatSelection === THREE_LETTER) {
            inputFormat = inputFormats.seq.peptide3Letter;
          } else {
            inputFormat = inputFormats[formatSelection];
          }
        case 14:
          indigo = IndigoProvider.getIndigo();
          _context.prev = 15;
          setIsLoading(true);
          _context.next = 19;
          return indigo.convert({
            struct: fileData,
            output_format: ChemicalMimeType$1.KET,
            input_format: inputFormat
          });
        case 19:
          ketStruct = _context.sent;
          addToCanvas({
            struct: ketStruct.struct,
            ketSerializer: ketSerializer,
            editor: editor
          });
          onCloseCallback();
          _context.next = 29;
          break;
        case 24:
          _context.prev = 24;
          _context.t0 = _context["catch"](15);
          stringError = typeof _context.t0 === 'string' ? _context.t0 : JSON.stringify(_context.t0);
          showParsingError(stringError);
          KetcherLogger.error(_context.t0);
        case 29:
          _context.prev = 29;
          setIsLoading(false);
          return _context.finish(29);
        case 32:
        case "end":
          return _context.stop();
      }
    }, _callee, null, [[15, 24, 29, 32]]);
  }));
  return function onOk(_x) {
    return _ref4.apply(this, arguments);
  };
}();
var isAnalyzingFile = false;
var errorHandler = function errorHandler(error) {
  return (void 0);
};
var Open = function Open(_ref5) {
  var isModalOpen = _ref5.isModalOpen,
    onClose = _ref5.onClose;
  var dispatch = useAppDispatch();
  var _useState = useState(''),
    _useState2 = _slicedToArray(_useState, 2),
    structStr = _useState2[0],
    setStructStr = _useState2[1];
  var _useState3 = useState(''),
    _useState4 = _slicedToArray(_useState3, 2),
    fileName = _useState4[0],
    setFileName = _useState4[1];
  var _useState5 = useState(false),
    _useState6 = _slicedToArray(_useState5, 2),
    isLoading = _useState6[0],
    setIsLoading = _useState6[1];
  var _useState7 = useState(),
    _useState8 = _slicedToArray(_useState7, 2),
    opener = _useState8[0],
    setOpener = _useState8[1];
  var _useState9 = useState(MODAL_STATES.openOptions),
    _useState10 = _slicedToArray(_useState9, 2),
    currentState = _useState10[0],
    setCurrentState = _useState10[1];
  var _useState11 = useState(KET),
    _useState12 = _slicedToArray(_useState11, 2),
    formatSelection = _useState12[0],
    setFormatSelection = _useState12[1];
  var _useState13 = useState(RNA),
    _useState14 = _slicedToArray(_useState13, 2),
    additionalSelection = _useState14[0],
    setAdditionalSelection = _useState14[1];
  var _useState15 = useState(ONE_LETTER),
    _useState16 = _slicedToArray(_useState15, 2),
    peptideLettersFormatSelection = _useState16[0],
    setPeptideLettersFormatSelection = _useState16[1];
  useEffect(function () {
    var splittedFilenameByDot = fileName === null || fileName === void 0 ? void 0 : fileName.split('.');
    var fileExtension = splittedFilenameByDot[splittedFilenameByDot.length - 1];
    if (fileExtension) {
      var option = options$1.find(function (el) {
        return el.id === fileExtension;
      });
      var id = option !== null && option !== void 0 && option.id ? option.id : SEQ;
      setFormatSelection(id);
    }
  }, [fileName]);
  useEffect(function () {
    fileOpener().then(function (chosenOpener) {
      setOpener({
        chosenOpener: chosenOpener
      });
    });
  }, []);
  var onCloseCallback = useCallback(function () {
    setCurrentState(MODAL_STATES.openOptions);
    setStructStr('');
    setFormatSelection(KET);
    setAdditionalSelection(RNA);
    onClose();
  }, [onClose]);
  var onFileLoad = function onFileLoad(files) {
    var onLoad = function onLoad(fileContent) {
      setStructStr(fileContent);
      setCurrentState(MODAL_STATES.textEditor);
    };
    var onError = function onError() {
      return errorHandler();
    };
    setFileName(files[0].name);
    opener === null || opener === void 0 || opener.chosenOpener(files[0]).then(onLoad, onError);
  };
  var addToCanvasHandler = function addToCanvasHandler() {
    onOk({
      struct: structStr,
      formatSelection: formatSelection,
      additionalSelection: additionalSelection,
      peptideLettersFormatSelection: peptideLettersFormatSelection,
      onCloseCallback: onCloseCallback,
      setIsLoading: setIsLoading,
      dispatch: dispatch
    });
  };
  var openHandler = function openHandler() {
    var editor = CoreEditor.provideEditorInstance();
    var history = new EditorHistory(editor);
    var modelChanges = editor.drawingEntitiesManager.deleteAllEntities();
    history.update(modelChanges);
    editor.renderersContainer.update(modelChanges);
    editor.zoomToStructuresIfNeeded();
    onOk({
      struct: structStr,
      formatSelection: formatSelection,
      additionalSelection: additionalSelection,
      peptideLettersFormatSelection: peptideLettersFormatSelection,
      onCloseCallback: onCloseCallback,
      setIsLoading: setIsLoading,
      dispatch: dispatch
    });
  };
  var renderFooter = function renderFooter() {
    return jsxs(OpenFooter, {
      children: [jsxs(FooterSelectorContainer, {
        children: [jsx(FooterFormatSelector, {
          options: options$1,
          currentSelection: formatSelection,
          selectionHandler: setFormatSelection,
          customStylesForExpanded: stylesForExpanded
        }, formatSelection), formatSelection === SEQ || formatSelection === FASTA ? jsx(FooterSequenceSelector, {
          options: additionalOptions,
          currentSelection: additionalSelection,
          selectionHandler: setAdditionalSelection,
          customStylesForExpanded: stylesForExpanded,
          testId: "dropdown-select-type"
        }, additionalSelection) : null, formatSelection === SEQ && additionalSelection === PEPTIDE ? jsx(FooterPeptideLettersSelector, {
          options: peptideLettersFormatOptions,
          currentSelection: peptideLettersFormatSelection,
          selectionHandler: setPeptideLettersFormatSelection,
          testId: "dropdown-select-peptide-letters-format"
        }) : null]
      }), jsxs(FooterButtonContainer, {
        children: [jsx(FooterButton, {
          disabled: !structStr,
          clickHandler: openHandler,
          label: "Open as New",
          styleType: "secondary"
        }, "openButton"), jsx(FooterButton, {
          disabled: !structStr,
          clickHandler: addToCanvasHandler,
          label: "Add to Canvas",
          title: "Structure will be loaded as fragment and added to Clipboard",
          "data-testid": "add-to-canvas-button"
        }, "copyButton")]
      })]
    });
  };
  return jsxs(OpenModal, {
    isOpen: isModalOpen,
    title: "Open Structure",
    onClose: onCloseCallback,
    modalWidth: currentState === MODAL_STATES.textEditor ? '620px' : '',
    children: [jsx(Modal.Content, {
      children: jsxs(OpenFileWrapper, {
        currentState: currentState,
        children: [jsx(ViewSwitcher, {
          isAnalyzingFile: isAnalyzingFile,
          fileName: fileName,
          currentState: currentState,
          states: MODAL_STATES,
          selectClipboard: function selectClipboard() {
            return setCurrentState(MODAL_STATES.textEditor);
          },
          fileLoadHandler: onFileLoad,
          errorHandler: errorHandler,
          value: structStr,
          inputHandler: setStructStr
        }), isLoading && jsx(Loader$1, {
          children: jsx(LoadingCircles, {})
        })]
      })
    }), currentState === MODAL_STATES.textEditor && !isAnalyzingFile ? jsx(Modal.Footer, {
      withborder: "true",
      children: renderFooter()
    }) : jsx(Fragment, {})]
  });
};

var _excluded = ["value", "id", "onChange", "label"];
function ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var Label = _styled("label", process.env.NODE_ENV === "production" ? {
  target: "e10m4n7r1"
} : {
  target: "e10m4n7r1",
  label: "Label"
})(function (_ref) {
  var theme = _ref.theme;
  return {
    display: 'flex',
    flexDirection: 'column',
    marginRight: '8px',
    color: theme.ketcher.color.text.primary,
    fontSize: '12px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRleHRJbnB1dEZpZWxkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQmMiLCJmaWxlIjoiVGV4dElucHV0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMsIEZyYWdtZW50IGFzIF9GcmFnbWVudCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBMYWJlbCA9IHN0eWxlZC5sYWJlbCgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBtYXJnaW5SaWdodDogJzhweCcsXHJcbiAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICBmb250U2l6ZTogJzEycHgnLFxyXG59KSk7XHJcbmNvbnN0IElucHV0ID0gc3R5bGVkLmlucHV0KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgIHBhZGRpbmc6ICczcHggN3B4JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLnJlZ3VsYXJ9YCxcclxuICAgIGZvbnRTaXplOiAnMTRweCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgIG91dGxpbmU6ICd0cmFuc3BhcmVudCcsXHJcbiAgICB3aWR0aDogJzE2NHB4JyxcclxuICAgIGxldHRlclNwYWNpbmc6ICdub3JtYWwnLFxyXG4gICAgJyY6YWN0aXZlLCAmOmZvY3VzJzoge1xyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LnRleHQuYWN0aXZlLFxyXG4gICAgfSxcclxuICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLmhvdmVyfWAsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBUZXh0SW5wdXRGaWVsZCA9ICh7IHZhbHVlLCBpZCwgb25DaGFuZ2UsIGxhYmVsLCAuLi5yZXN0IH0pID0+IHtcclxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudCkgPT4ge1xyXG4gICAgICAgIG9uQ2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChfanN4KF9GcmFnbWVudCwgeyBjaGlsZHJlbjogX2pzeHMoTGFiZWwsIHsgaHRtbEZvcjogaWQsIGNoaWxkcmVuOiBbbGFiZWwgJiYgX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogbGFiZWwgfSksIF9qc3goSW5wdXQsIHsgdHlwZTogXCJ0ZXh0XCIsIGlkOiBpZCwgdmFsdWU6IHZhbHVlLCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCAuLi5yZXN0IH0pXSB9KSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVRleHRJbnB1dEZpZWxkLmpzLm1hcCJdfQ== */");
var Input = _styled("input", process.env.NODE_ENV === "production" ? {
  target: "e10m4n7r0"
} : {
  target: "e10m4n7r0",
  label: "Input"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    height: '24px',
    padding: '3px 7px',
    border: "1px solid ".concat(theme.ketcher.color.input.border.regular),
    fontSize: '14px',
    borderRadius: '4px',
    backgroundColor: theme.ketcher.color.input.background.primary,
    color: theme.ketcher.color.text.primary,
    outline: 'transparent',
    width: '164px',
    letterSpacing: 'normal',
    '&:active, &:focus': {
      color: theme.ketcher.color.input.text.active
    },
    '&:hover': {
      border: "1px solid ".concat(theme.ketcher.color.input.border.hover)
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRleHRJbnB1dEZpZWxkLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QmMiLCJmaWxlIjoiVGV4dElucHV0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMsIEZyYWdtZW50IGFzIF9GcmFnbWVudCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5jb25zdCBMYWJlbCA9IHN0eWxlZC5sYWJlbCgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICBtYXJnaW5SaWdodDogJzhweCcsXHJcbiAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnksXHJcbiAgICBmb250U2l6ZTogJzEycHgnLFxyXG59KSk7XHJcbmNvbnN0IElucHV0ID0gc3R5bGVkLmlucHV0KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICBoZWlnaHQ6ICcyNHB4JyxcclxuICAgIHBhZGRpbmc6ICczcHggN3B4JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLnJlZ3VsYXJ9YCxcclxuICAgIGZvbnRTaXplOiAnMTRweCcsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJhY2tncm91bmQucHJpbWFyeSxcclxuICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeSxcclxuICAgIG91dGxpbmU6ICd0cmFuc3BhcmVudCcsXHJcbiAgICB3aWR0aDogJzE2NHB4JyxcclxuICAgIGxldHRlclNwYWNpbmc6ICdub3JtYWwnLFxyXG4gICAgJyY6YWN0aXZlLCAmOmZvY3VzJzoge1xyXG4gICAgICAgIGNvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LnRleHQuYWN0aXZlLFxyXG4gICAgfSxcclxuICAgICcmOmhvdmVyJzoge1xyXG4gICAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3RoZW1lLmtldGNoZXIuY29sb3IuaW5wdXQuYm9yZGVyLmhvdmVyfWAsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBUZXh0SW5wdXRGaWVsZCA9ICh7IHZhbHVlLCBpZCwgb25DaGFuZ2UsIGxhYmVsLCAuLi5yZXN0IH0pID0+IHtcclxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudCkgPT4ge1xyXG4gICAgICAgIG9uQ2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChfanN4KF9GcmFnbWVudCwgeyBjaGlsZHJlbjogX2pzeHMoTGFiZWwsIHsgaHRtbEZvcjogaWQsIGNoaWxkcmVuOiBbbGFiZWwgJiYgX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogbGFiZWwgfSksIF9qc3goSW5wdXQsIHsgdHlwZTogXCJ0ZXh0XCIsIGlkOiBpZCwgdmFsdWU6IHZhbHVlLCBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLCAuLi5yZXN0IH0pXSB9KSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVRleHRJbnB1dEZpZWxkLmpzLm1hcCJdfQ== */");
var TextInputField = function TextInputField(_ref3) {
  var value = _ref3.value,
    id = _ref3.id,
    onChange = _ref3.onChange,
    label = _ref3.label,
    rest = _objectWithoutProperties(_ref3, _excluded);
  var handleChange = function handleChange(event) {
    onChange(event.target.value);
  };
  return jsx(Fragment, {
    children: jsxs(Label, {
      htmlFor: id,
      children: [label && jsx("span", {
        children: label
      }), jsx(Input, _objectSpread$5({
        type: "text",
        id: id,
        value: value,
        onChange: handleChange
      }, rest))]
    })
  });
};

var ChemicalMimeType;
(function (ChemicalMimeType) {
  ChemicalMimeType["Ket"] = "chemical/x-ket";
  ChemicalMimeType["Mol"] = "chemical/x-mdl-molfile";
  ChemicalMimeType["HELM"] = "chemincal/x-helm";
  ChemicalMimeType["Fasta"] = "chemical/x-fasta";
  ChemicalMimeType["Sequence"] = "chemical/x-sequence";
  ChemicalMimeType["Idt"] = "chemical/x-idt";
  ChemicalMimeType["Svg"] = "image/svg+xml";
})(ChemicalMimeType || (ChemicalMimeType = {}));
var SupportedFormatProperties = _createClass(function SupportedFormatProperties(name, mime, extensions, supportsCoords, options) {
  _classCallCheck(this, SupportedFormatProperties);
  this.name = name;
  this.mime = mime;
  this.extensions = extensions;
  this.supportsCoords = supportsCoords || false;
  this.options = options || {};
});

var formatProperties = {
  ket: new SupportedFormatProperties('Ket file', ChemicalMimeType.Ket, ['.ket'], true, {}),
  mol: new SupportedFormatProperties('MDL Molfile V3000', ChemicalMimeType.Mol, ['.mol'], true, {
    'molfile-saving-mode': '3000'
  }),
  fasta: new SupportedFormatProperties('FASTA', ChemicalMimeType.Fasta, ['.fasta'], false, {}),
  sequence: new SupportedFormatProperties('SEQUENCE', ChemicalMimeType.Sequence, ['.seq'], false, {}),
  'sequence-3-letter': new SupportedFormatProperties('SEQUENCE (3-letter code)', ChemicalMimeType.Sequence, ['.seq'], false, {}),
  idt: new SupportedFormatProperties('IDT', ChemicalMimeType.Idt, ['.idt'], false, {}),
  helm: new SupportedFormatProperties('HELM', ChemicalMimeType.HELM, ['.helm']),
  svg: new SupportedFormatProperties('SVG Document', ChemicalMimeType.Svg, ['.svg'])
};
var getPropertiesByFormat = function getPropertiesByFormat(format) {
  return formatProperties[format];
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$h() { 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)."; }
var options = [{
  id: 'ket',
  label: 'Ket'
}, {
  id: 'mol',
  label: 'MDL Molfile V3000'
}, {
  id: 'sequence',
  label: 'Sequence (1-letter code)'
}, {
  id: 'sequence-3-letter',
  label: 'Sequence (3-letter code)'
}, {
  id: 'fasta',
  label: 'FASTA'
}, {
  id: 'idt',
  label: 'IDT'
}, {
  id: 'svg',
  label: 'SVG Document'
}, {
  id: 'helm',
  label: 'HELM'
}];
var formatDetector = {
  mol: ChemicalMimeType$1.Mol,
  fasta: ChemicalMimeType$1.FASTA,
  sequence: ChemicalMimeType$1.SEQUENCE,
  'sequence-3-letter': ChemicalMimeType$1.PeptideSequenceThreeLetter,
  idt: ChemicalMimeType$1.IDT,
  helm: ChemicalMimeType$1.HELM
};
var StyledModal$1 = _styled(Modal, process.env.NODE_ENV === "production" ? {
  target: "e12csxs60"
} : {
  target: "e12csxs60",
  label: "StyledModal"
})(process.env.NODE_ENV === "production" ? {
  name: "krpfk5",
  styles: "& div.MuiPaper-root{background:white;min-height:400px;min-width:430px;}& .MuiDialogContent-root{overflow:hidden;height:100%;}"
} : {
  name: "krpfk5",
  styles: "& div.MuiPaper-root{background:white;min-height:400px;min-width:430px;}& .MuiDialogContent-root{overflow:hidden;height:100%;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNhdmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlEb0IiLCJmaWxlIjoiU2F2ZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgTW9kYWwgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL21vZGFsXCI7XHJcbmltcG9ydCB7IFRleHRBcmVhIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9UZXh0QXJlYVwiO1xyXG5pbXBvcnQgeyBUZXh0SW5wdXRGaWVsZCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdGV4dElucHV0RmllbGRcIjtcclxuaW1wb3J0IHsgZ2V0UHJvcGVydGllc0J5Rm9ybWF0IH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvZm9ybWF0c1wiO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2FjdGlvbkJ1dHRvblwiO1xyXG5pbXBvcnQgeyBJY29uQnV0dG9uLCBJbmRpZ29Qcm92aWRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBDaGVtaWNhbE1pbWVUeXBlLCBLZXRTZXJpYWxpemVyLCBDb3JlRWRpdG9yLCBLZXRjaGVyTG9nZ2VyLCBnZXRTdmdGcm9tRHJhd25TdHJ1Y3R1cmVzLCBpc0NsaXBib2FyZEFQSUF2YWlsYWJsZSwgbGVnYWN5Q29weSwgfSBmcm9tICdrZXRjaGVyLWNvcmUnO1xyXG5pbXBvcnQgeyBzYXZlQXMgfSBmcm9tICdmaWxlLXNhdmVyJztcclxuaW1wb3J0IHsgTG9hZGluZ0NpcmNsZXMgfSBmcm9tICcuLi9PcGVuL0FuYWx5emluZ0ZpbGUvTG9hZGluZ0NpcmNsZXMnO1xyXG5pbXBvcnQgeyBGb3JtLCBMb2FkZXIsIFByZXZpZXdDb250YWluZXIsIFJvdywgU3R5bGVkRHJvcGRvd24sIHN0eWxlc0ZvckV4cGFuZGVkLCBTdmdQcmV2aWV3LCB9IGZyb20gJy4vU2F2ZS5zdHlsZXMnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHVzZUFwcERpc3BhdGNoIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IG9wZW5FcnJvck1vZGFsIH0gZnJvbSBcIi4uLy4uLy4uL3N0YXRlL21vZGFsXCI7XHJcbi8vIFRPRE86IE1ha2UgaXQgdHlwZSBzYWZlIGJ5IHVzaW5nIGBTdXBwb3J0ZWRGb3JtYXRzYCBhcyBpZFxyXG5jb25zdCBvcHRpb25zID0gW1xyXG4gICAgeyBpZDogJ2tldCcsIGxhYmVsOiAnS2V0JyB9LFxyXG4gICAgeyBpZDogJ21vbCcsIGxhYmVsOiAnTURMIE1vbGZpbGUgVjMwMDAnIH0sXHJcbiAgICB7IGlkOiAnc2VxdWVuY2UnLCBsYWJlbDogJ1NlcXVlbmNlICgxLWxldHRlciBjb2RlKScgfSxcclxuICAgIHsgaWQ6ICdzZXF1ZW5jZS0zLWxldHRlcicsIGxhYmVsOiAnU2VxdWVuY2UgKDMtbGV0dGVyIGNvZGUpJyB9LFxyXG4gICAgeyBpZDogJ2Zhc3RhJywgbGFiZWw6ICdGQVNUQScgfSxcclxuICAgIHsgaWQ6ICdpZHQnLCBsYWJlbDogJ0lEVCcgfSxcclxuICAgIHsgaWQ6ICdzdmcnLCBsYWJlbDogJ1NWRyBEb2N1bWVudCcgfSxcclxuICAgIHsgaWQ6ICdoZWxtJywgbGFiZWw6ICdIRUxNJyB9LFxyXG5dO1xyXG5jb25zdCBmb3JtYXREZXRlY3RvciA9IHtcclxuICAgIG1vbDogQ2hlbWljYWxNaW1lVHlwZS5Nb2wsXHJcbiAgICBmYXN0YTogQ2hlbWljYWxNaW1lVHlwZS5GQVNUQSxcclxuICAgIHNlcXVlbmNlOiBDaGVtaWNhbE1pbWVUeXBlLlNFUVVFTkNFLFxyXG4gICAgJ3NlcXVlbmNlLTMtbGV0dGVyJzogQ2hlbWljYWxNaW1lVHlwZS5QZXB0aWRlU2VxdWVuY2VUaHJlZUxldHRlcixcclxuICAgIGlkdDogQ2hlbWljYWxNaW1lVHlwZS5JRFQsXHJcbiAgICBoZWxtOiBDaGVtaWNhbE1pbWVUeXBlLkhFTE0sXHJcbn07XHJcbmNvbnN0IFN0eWxlZE1vZGFsID0gc3R5bGVkKE1vZGFsKSh7XHJcbiAgICAnJiBkaXYuTXVpUGFwZXItcm9vdCc6IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAnd2hpdGUnLFxyXG4gICAgICAgIG1pbkhlaWdodDogJzQwMHB4JyxcclxuICAgICAgICBtaW5XaWR0aDogJzQzMHB4JyxcclxuICAgIH0sXHJcbiAgICAnJiAuTXVpRGlhbG9nQ29udGVudC1yb290Jzoge1xyXG4gICAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcclxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIH0sXHJcbn0pO1xyXG5leHBvcnQgY29uc3QgU2F2ZSA9ICh7IG9uQ2xvc2UsIGlzTW9kYWxPcGVuLCB9KSA9PiB7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBbY3VycmVudEZpbGVGb3JtYXQsIHNldEN1cnJlbnRGaWxlRm9ybWF0XSA9IHVzZVN0YXRlKCdrZXQnKTtcclxuICAgIGNvbnN0IFtjdXJyZW50RmlsZU5hbWUsIHNldEN1cnJlbnRGaWxlTmFtZV0gPSB1c2VTdGF0ZSgna2V0Y2hlcicpO1xyXG4gICAgY29uc3QgW3N0cnVjdCwgc2V0U3RydWN0XSA9IHVzZVN0YXRlKCcnKTtcclxuICAgIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbc3ZnRGF0YSwgc2V0U3ZnRGF0YV0gPSB1c2VTdGF0ZSgpO1xyXG4gICAgY29uc3QgaW5kaWdvID0gSW5kaWdvUHJvdmlkZXIuZ2V0SW5kaWdvKCk7XHJcbiAgICBjb25zdCBlZGl0b3IgPSBDb3JlRWRpdG9yLnByb3ZpZGVFZGl0b3JJbnN0YW5jZSgpO1xyXG4gICAgY29uc3QgaGFuZGxlU2VsZWN0Q2hhbmdlID0gYXN5bmMgKGZpbGVGb3JtYXQpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50RmlsZUZvcm1hdChmaWxlRm9ybWF0KTtcclxuICAgICAgICBjb25zdCBrZXRTZXJpYWxpemVyID0gbmV3IEtldFNlcmlhbGl6ZXIoKTtcclxuICAgICAgICBjb25zdCBzZXJpYWxpemVkS2V0ID0ga2V0U2VyaWFsaXplci5zZXJpYWxpemUoZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIubWljcm9tb2xlY3VsZXNIaWRkZW5FbnRpdGllcy5jbG9uZSgpLCBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlcik7XHJcbiAgICAgICAgc2V0U3ZnRGF0YSh1bmRlZmluZWQpO1xyXG4gICAgICAgIGlmIChmaWxlRm9ybWF0ID09PSAna2V0Jykge1xyXG4gICAgICAgICAgICBzZXRTdHJ1Y3Qoc2VyaWFsaXplZEtldCk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpbGVGb3JtYXQgPT09ICdzdmcnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN2Z0RhdGEgPSBnZXRTdmdGcm9tRHJhd25TdHJ1Y3R1cmVzKGVkaXRvci5jYW52YXMsICdwcmV2aWV3Jyk7XHJcbiAgICAgICAgICAgIHNldFN2Z0RhdGEoc3ZnRGF0YSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgc2V0SXNMb2FkaW5nKHRydWUpO1xyXG4gICAgICAgICAgICBpZiAoZmlsZUZvcm1hdCA9PT0gJ2Zhc3RhJyB8fCBmaWxlRm9ybWF0ID09PSAnc2VxdWVuY2UnKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIudmFsaWRhdGVJZkFwcGxpY2FibGVGb3JGYXN0YSgpO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFpc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFcnJvciBkdXJpbmcgc2VxdWVuY2UgdHlwZSByZWNvZ25pdGlvbihSTkEsIEROQSBvciBQZXB0aWRlKScpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGluZGlnby5jb252ZXJ0KHtcclxuICAgICAgICAgICAgICAgIHN0cnVjdDogc2VyaWFsaXplZEtldCxcclxuICAgICAgICAgICAgICAgIG91dHB1dF9mb3JtYXQ6IGZvcm1hdERldGVjdG9yW2ZpbGVGb3JtYXRdLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgc2V0U3RydWN0KHJlc3VsdC5zdHJ1Y3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgbGV0IHN0cmluZ0Vycm9yO1xyXG4gICAgICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xyXG4gICAgICAgICAgICAgICAgc3RyaW5nRXJyb3IgPSBlcnJvci5tZXNzYWdlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgc3RyaW5nRXJyb3IgPSB0eXBlb2YgZXJyb3IgPT09ICdzdHJpbmcnID8gZXJyb3IgOiBKU09OLnN0cmluZ2lmeShlcnJvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gJ0NvbnZlcnQgZXJyb3IhICcgKyBzdHJpbmdFcnJvcjtcclxuICAgICAgICAgICAgZGlzcGF0Y2gob3BlbkVycm9yTW9kYWwoZXJyb3JNZXNzYWdlKSk7XHJcbiAgICAgICAgICAgIEtldGNoZXJMb2dnZXIuZXJyb3IoZXJyb3JNZXNzYWdlKTtcclxuICAgICAgICAgICAgc2V0Q3VycmVudEZpbGVGb3JtYXQoJ2tldCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHtcclxuICAgICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlSW5wdXRDaGFuZ2UgPSAodmFsdWUpID0+IHtcclxuICAgICAgICBzZXRDdXJyZW50RmlsZU5hbWUodmFsdWUpO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IGhhbmRsZVNhdmUgPSAoKSA9PiB7XHJcbiAgICAgICAgbGV0IGJsb2JQYXJ0O1xyXG4gICAgICAgIGlmIChjdXJyZW50RmlsZUZvcm1hdCA9PT0gJ3N2ZycpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3ZnRGF0YSA9IGdldFN2Z0Zyb21EcmF3blN0cnVjdHVyZXMoZWRpdG9yLmNhbnZhcywgJ2ZpbGUnKTtcclxuICAgICAgICAgICAgaWYgKCFzdmdEYXRhKSB7XHJcbiAgICAgICAgICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYmxvYlBhcnQgPSBzdmdEYXRhO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgYmxvYlBhcnQgPSBzdHJ1Y3Q7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYmxvYlBhcnRdLCB7XHJcbiAgICAgICAgICAgIHR5cGU6IGdldFByb3BlcnRpZXNCeUZvcm1hdChjdXJyZW50RmlsZUZvcm1hdCkubWltZSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBjb25zdCBmb3JtYXRQcm9wZXJ0aWVzID0gZ2V0UHJvcGVydGllc0J5Rm9ybWF0KGN1cnJlbnRGaWxlRm9ybWF0KTtcclxuICAgICAgICBzYXZlQXMoYmxvYiwgYCR7Y3VycmVudEZpbGVOYW1lfSR7Zm9ybWF0UHJvcGVydGllcy5leHRlbnNpb25zWzBdfWApO1xyXG4gICAgICAgIG9uQ2xvc2UoKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVDb3B5ID0gKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBpZiAoaXNDbGlwYm9hcmRBUElBdmFpbGFibGUoKSkge1xyXG4gICAgICAgICAgICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoc3RydWN0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxlZ2FjeUNvcHkoZXZlbnQuY2xpcGJvYXJkRGF0YSwge1xyXG4gICAgICAgICAgICAgICAgICAgICd0ZXh0L3BsYWluJzogc3RydWN0LFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgS2V0Y2hlckxvZ2dlci5lcnJvcignY29weUFzLmpzOjpjb3B5QXMnLCBlKTtcclxuICAgICAgICAgICAgZGlzcGF0Y2gob3BlbkVycm9yTW9kYWwoJ1RoaXMgZmVhdHVyZSBpcyBub3QgYXZhaWxhYmxlIGluIHlvdXIgYnJvd3NlcicpKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAoY3VycmVudEZpbGVGb3JtYXQgPT09ICdrZXQnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGtldFNlcmlhbGl6ZXIgPSBuZXcgS2V0U2VyaWFsaXplcigpO1xyXG4gICAgICAgICAgICBjb25zdCBzZXJpYWxpemVkS2V0ID0ga2V0U2VyaWFsaXplci5zZXJpYWxpemUoZWRpdG9yLmRyYXdpbmdFbnRpdGllc01hbmFnZXIubWljcm9tb2xlY3VsZXNIaWRkZW5FbnRpdGllcy5jbG9uZSgpLCBlZGl0b3IuZHJhd2luZ0VudGl0aWVzTWFuYWdlcik7XHJcbiAgICAgICAgICAgIHNldFN0cnVjdChzZXJpYWxpemVkS2V0KTtcclxuICAgICAgICB9XHJcbiAgICB9LCBbY3VycmVudEZpbGVGb3JtYXRdKTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkTW9kYWwsIHsgdGl0bGU6IFwic2F2ZSBzdHJ1Y3R1cmVcIiwgaXNPcGVuOiBpc01vZGFsT3Blbiwgb25DbG9zZTogb25DbG9zZSwgY2hpbGRyZW46IFtfanN4KE1vZGFsLkNvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3hzKEZvcm0sIHsgb25TdWJtaXQ6IGhhbmRsZVNhdmUsIGlkOiBcInNhdmVcIiwgY2hpbGRyZW46IFtfanN4cyhSb3csIHsgc3R5bGU6IHsgcGFkZGluZzogJzEycHggMTJweCAxMHB4JyB9LCBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgeyBjaGlsZHJlbjogX2pzeChUZXh0SW5wdXRGaWVsZCwgeyB2YWx1ZTogY3VycmVudEZpbGVOYW1lLCBpZDogXCJmaWxlbmFtZVwiLCBvbkNoYW5nZTogaGFuZGxlSW5wdXRDaGFuZ2UsIGxhYmVsOiBcIkZpbGUgbmFtZTpcIiB9KSB9KSwgX2pzeChTdHlsZWREcm9wZG93biwgeyBsYWJlbDogXCJGaWxlIGZvcm1hdDpcIiwgb3B0aW9uczogb3B0aW9ucywgY3VycmVudFNlbGVjdGlvbjogY3VycmVudEZpbGVGb3JtYXQsIHNlbGVjdGlvbkhhbmRsZXI6IGhhbmRsZVNlbGVjdENoYW5nZSwgY3VzdG9tU3R5bGVzRm9yRXhwYW5kZWQ6IHN0eWxlc0ZvckV4cGFuZGVkIH0pXSB9KSwgc3ZnRGF0YSA/IChfanN4KFN2Z1ByZXZpZXcsIHsgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6IHsgX19odG1sOiBzdmdEYXRhIH0gfSkpIDogKF9qc3hzKFByZXZpZXdDb250YWluZXIsIHsgY2hpbGRyZW46IFtfanN4KFRleHRBcmVhLCB7IHRlc3RJZDogXCJwcmV2aWV3LWFyZWEtdGV4dFwiLCB2YWx1ZTogc3RydWN0LCByZWFkb25seTogdHJ1ZSB9KSwgX2pzeChJY29uQnV0dG9uLCB7IG9uQ2xpY2s6IGhhbmRsZUNvcHksIGljb25OYW1lOiBcImNvcHlcIiwgdGl0bGU6IFwiQ29weSB0byBjbGlwYm9hcmRcIiwgdGVzdElkOiBcImNvcHktdG8tY2xpcGJvYXJkXCIgfSksIGlzTG9hZGluZyAmJiAoX2pzeChMb2FkZXIsIHsgY2hpbGRyZW46IF9qc3goTG9hZGluZ0NpcmNsZXMsIHt9KSB9KSldIH0pKV0gfSkgfSksIF9qc3hzKE1vZGFsLkZvb3RlciwgeyBjaGlsZHJlbjogW19qc3goQWN0aW9uQnV0dG9uLCB7IGxhYmVsOiBcIkNhbmNlbFwiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIsIGNsaWNrSGFuZGxlcjogb25DbG9zZSB9KSwgX2pzeChBY3Rpb25CdXR0b24sIHsgbGFiZWw6IFwiU2F2ZVwiLCBjbGlja0hhbmRsZXI6IGhhbmRsZVNhdmUsIGRpc2FibGVkOiAhY3VycmVudEZpbGVOYW1lIH0pXSB9KV0gfSkpO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1TYXZlLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$h
});
var Save = function Save(_ref) {
  var onClose = _ref.onClose,
    isModalOpen = _ref.isModalOpen;
  var dispatch = useAppDispatch();
  var _useState = useState('ket'),
    _useState2 = _slicedToArray(_useState, 2),
    currentFileFormat = _useState2[0],
    setCurrentFileFormat = _useState2[1];
  var _useState3 = useState('ketcher'),
    _useState4 = _slicedToArray(_useState3, 2),
    currentFileName = _useState4[0],
    setCurrentFileName = _useState4[1];
  var _useState5 = useState(''),
    _useState6 = _slicedToArray(_useState5, 2),
    struct = _useState6[0],
    setStruct = _useState6[1];
  var _useState7 = useState(false),
    _useState8 = _slicedToArray(_useState7, 2),
    isLoading = _useState8[0],
    setIsLoading = _useState8[1];
  var _useState9 = useState(),
    _useState10 = _slicedToArray(_useState9, 2),
    svgData = _useState10[0],
    setSvgData = _useState10[1];
  var indigo = IndigoProvider.getIndigo();
  var editor = CoreEditor.provideEditorInstance();
  var handleSelectChange = function () {
    var _ref2 = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(fileFormat) {
      var ketSerializer, serializedKet, _svgData, isValid, result, stringError, errorMessage;
      return _regeneratorRuntime.wrap(function _callee$(_context) {
        while (1) switch (_context.prev = _context.next) {
          case 0:
            setCurrentFileFormat(fileFormat);
            ketSerializer = new KetSerializer();
            serializedKet = ketSerializer.serialize(editor.drawingEntitiesManager.micromoleculesHiddenEntities.clone(), editor.drawingEntitiesManager);
            setSvgData(undefined);
            if (!(fileFormat === 'ket')) {
              _context.next = 7;
              break;
            }
            setStruct(serializedKet);
            return _context.abrupt("return");
          case 7:
            if (!(fileFormat === 'svg')) {
              _context.next = 11;
              break;
            }
            _svgData = getSvgFromDrawnStructures(editor.canvas, 'preview');
            setSvgData(_svgData);
            return _context.abrupt("return");
          case 11:
            _context.prev = 11;
            setIsLoading(true);
            if (!(fileFormat === 'fasta' || fileFormat === 'sequence')) {
              _context.next = 17;
              break;
            }
            isValid = editor.drawingEntitiesManager.validateIfApplicableForFasta();
            if (isValid) {
              _context.next = 17;
              break;
            }
            throw new Error('Error during sequence type recognition(RNA, DNA or Peptide)');
          case 17:
            _context.next = 19;
            return indigo.convert({
              struct: serializedKet,
              output_format: formatDetector[fileFormat]
            });
          case 19:
            result = _context.sent;
            setStruct(result.struct);
            _context.next = 30;
            break;
          case 23:
            _context.prev = 23;
            _context.t0 = _context["catch"](11);
            if (_context.t0 instanceof Error) {
              stringError = _context.t0.message;
            } else {
              stringError = typeof _context.t0 === 'string' ? _context.t0 : JSON.stringify(_context.t0);
            }
            errorMessage = 'Convert error! ' + stringError;
            dispatch(openErrorModal(errorMessage));
            KetcherLogger.error(errorMessage);
            setCurrentFileFormat('ket');
          case 30:
            _context.prev = 30;
            setIsLoading(false);
            return _context.finish(30);
          case 33:
          case "end":
            return _context.stop();
        }
      }, _callee, null, [[11, 23, 30, 33]]);
    }));
    return function handleSelectChange(_x) {
      return _ref2.apply(this, arguments);
    };
  }();
  var handleInputChange = function handleInputChange(value) {
    setCurrentFileName(value);
  };
  var handleSave = function handleSave() {
    var blobPart;
    if (currentFileFormat === 'svg') {
      var _svgData2 = getSvgFromDrawnStructures(editor.canvas, 'file');
      if (!_svgData2) {
        onClose();
        return;
      }
      blobPart = _svgData2;
    } else {
      blobPart = struct;
    }
    var blob = new Blob([blobPart], {
      type: getPropertiesByFormat(currentFileFormat).mime
    });
    var formatProperties = getPropertiesByFormat(currentFileFormat);
    saveAs(blob, "".concat(currentFileName).concat(formatProperties.extensions[0]));
    onClose();
  };
  var handleCopy = function handleCopy(event) {
    event.preventDefault();
    try {
      if (isClipboardAPIAvailable()) {
        navigator.clipboard.writeText(struct);
      } else {
        legacyCopy(event.clipboardData, {
          'text/plain': struct
        });
      }
    } catch (e) {
      KetcherLogger.error('copyAs.js::copyAs', e);
      dispatch(openErrorModal('This feature is not available in your browser'));
    }
  };
  useEffect(function () {
    if (currentFileFormat === 'ket') {
      var ketSerializer = new KetSerializer();
      var serializedKet = ketSerializer.serialize(editor.drawingEntitiesManager.micromoleculesHiddenEntities.clone(), editor.drawingEntitiesManager);
      setStruct(serializedKet);
    }
  }, [currentFileFormat]);
  return jsxs(StyledModal$1, {
    title: "save structure",
    isOpen: isModalOpen,
    onClose: onClose,
    children: [jsx(Modal.Content, {
      children: jsxs(Form, {
        onSubmit: handleSave,
        id: "save",
        children: [jsxs(Row, {
          style: {
            padding: '12px 12px 10px'
          },
          children: [jsx("div", {
            children: jsx(TextInputField, {
              value: currentFileName,
              id: "filename",
              onChange: handleInputChange,
              label: "File name:"
            })
          }), jsx(StyledDropdown$1, {
            label: "File format:",
            options: options,
            currentSelection: currentFileFormat,
            selectionHandler: handleSelectChange,
            customStylesForExpanded: stylesForExpanded
          })]
        }), svgData ? jsx(SvgPreview, {
          dangerouslySetInnerHTML: {
            __html: svgData
          }
        }) : jsxs(PreviewContainer$1, {
          children: [jsx(TextArea, {
            testId: "preview-area-text",
            value: struct,
            readonly: true
          }), jsx(IconButton, {
            onClick: handleCopy,
            iconName: "copy",
            title: "Copy to clipboard",
            testId: "copy-to-clipboard"
          }), isLoading && jsx(Loader$1, {
            children: jsx(LoadingCircles, {})
          })]
        })]
      })
    }), jsxs(Modal.Footer, {
      children: [jsx(ActionButton, {
        label: "Cancel",
        styleType: "secondary",
        clickHandler: onClose
      }), jsx(ActionButton, {
        label: "Save",
        clickHandler: handleSave,
        disabled: !currentFileName
      })]
    })]
  });
};

var StyledActionButton = _styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "e1kgbmg80"
} : {
  target: "e1kgbmg80",
  label: "StyledActionButton"
})(function () {
  return {
    width: '72px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRWtDIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjdGlvbkJ1dHRvbiB9IGZyb20gXCIuLi8uLi9zaGFyZWQvYWN0aW9uQnV0dG9uXCI7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRBY3Rpb25CdXR0b24gPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgoKSA9PiAoe1xyXG4gICAgd2lkdGg6ICc3MnB4JyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZWRDb21wb25lbnRzLmpzLm1hcCJdfQ== */");

function _EMOTION_STRINGIFIED_CSS_ERROR__$g() { 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)."; }
var DeleteTextWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e11sfr0q0"
} : {
  target: "e11sfr0q0",
  label: "DeleteTextWrapper"
})(process.env.NODE_ENV === "production" ? {
  name: "606i4c",
  styles: "padding:12px"
} : {
  name: "606i4c",
  styles: "padding:12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkRlbGV0ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUJxQyIsImZpbGUiOiJEZWxldGUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RhbFwiO1xyXG5pbXBvcnQgeyB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgdXNlQXBwRGlzcGF0Y2gsIHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IGNyZWF0ZU5ld1ByZXNldCwgZGVsZXRlUHJlc2V0LCBzZWxlY3RBY3RpdmVQcmVzZXRGb3JDb250ZXh0TWVudSwgc2V0SXNFZGl0TW9kZSwgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvcm5hLWJ1aWxkZXJcIjtcclxuaW1wb3J0IHsgU3R5bGVkQWN0aW9uQnV0dG9uIH0gZnJvbSBcIi4vc3R5bGVkQ29tcG9uZW50c1wiO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHNlbGVjdEVkaXRvciB9IGZyb20gXCIuLi8uLi8uLi9zdGF0ZS9jb21tb25cIjtcclxuY29uc3QgRGVsZXRlVGV4dFdyYXBwZXIgPSBzdHlsZWQuZGl2IGBcbiAgcGFkZGluZzogMTJweDtcbmA7XHJcbmNvbnN0IERlbGV0ZSA9ICh7IGlzTW9kYWxPcGVuLCBvbkNsb3NlIH0pID0+IHtcclxuICAgIGNvbnN0IGRpc3BhdGNoID0gdXNlQXBwRGlzcGF0Y2goKTtcclxuICAgIGNvbnN0IGFjdGl2ZVByZXNldEZvckNvbnRleHRNZW51ID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0QWN0aXZlUHJlc2V0Rm9yQ29udGV4dE1lbnUpO1xyXG4gICAgY29uc3QgZWRpdG9yID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0RWRpdG9yKTtcclxuICAgIGNvbnN0IG9uQ2xvc2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9LCBbb25DbG9zZV0pO1xyXG4gICAgY29uc3QgY2FuY2VsSGFuZGxlciA9ICgpID0+IHtcclxuICAgICAgICBvbkNsb3NlQ2FsbGJhY2soKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBkZWxldGVIYW5kbGVyID0gKCkgPT4ge1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIGRpc3BhdGNoKGRlbGV0ZVByZXNldChhY3RpdmVQcmVzZXRGb3JDb250ZXh0TWVudSkpO1xyXG4gICAgICAgIGRpc3BhdGNoKHNldElzRWRpdE1vZGUoZmFsc2UpKTtcclxuICAgICAgICBkaXNwYXRjaChjcmVhdGVOZXdQcmVzZXQoKSk7XHJcbiAgICAgICAgZWRpdG9yLmV2ZW50cy5zZWxlY3RQcmVzZXQuZGlzcGF0Y2gobnVsbCk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChfanN4cyhNb2RhbCwgeyBpc09wZW46IGlzTW9kYWxPcGVuLCB0aXRsZTogXCJEZWxldGUgUk5BIFByZXNldFwiLCBvbkNsb3NlOiBvbkNsb3NlQ2FsbGJhY2ssIGNoaWxkcmVuOiBbX2pzeChNb2RhbC5Db250ZW50LCB7IGNoaWxkcmVuOiBfanN4cyhEZWxldGVUZXh0V3JhcHBlciwgeyBcImRhdGEtdGVzdGlkXCI6IFwiZGVsZXRlLXByZXNldC1wb3B1cC1jb250ZW50XCIsIGNoaWxkcmVuOiBbX2pzeChcImRpdlwiLCB7IGNoaWxkcmVuOiBcIllvdSBhcmUgYWJvdXQgdG8gZGVsZXRlXCIgfSksIF9qc3hzKFwiZGl2XCIsIHsgY2hpbGRyZW46IFtcIlxcXCJcIiwgYWN0aXZlUHJlc2V0Rm9yQ29udGV4dE1lbnUubmFtZSwgXCJcXFwiIFJOQSBwcmVzZXQuXCJdIH0pLCBfanN4KFwiZGl2XCIsIHsgY2hpbGRyZW46IFwiVGhpcyBvcGVyYXRpb24gY2Fubm90IGJlIHVuZG9uZS5cIiB9KV0gfSkgfSksIF9qc3hzKE1vZGFsLkZvb3RlciwgeyBjaGlsZHJlbjogW19qc3goU3R5bGVkQWN0aW9uQnV0dG9uLCB7IGNsaWNrSGFuZGxlcjogY2FuY2VsSGFuZGxlciwgbGFiZWw6IFwiQ2FuY2VsXCIsIHN0eWxlVHlwZTogXCJzZWNvbmRhcnlcIiB9LCBcImNhbmNlbFwiKSwgX2pzeChTdHlsZWRBY3Rpb25CdXR0b24sIHsgY2xpY2tIYW5kbGVyOiBkZWxldGVIYW5kbGVyLCBsYWJlbDogXCJEZWxldGVcIiB9LCBcImRlbGV0ZVwiKV0gfSldIH0pKTtcclxufTtcclxuZXhwb3J0IHsgRGVsZXRlIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPURlbGV0ZS5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$g
});
var Delete = function Delete(_ref) {
  var isModalOpen = _ref.isModalOpen,
    onClose = _ref.onClose;
  var dispatch = useAppDispatch();
  var activePresetForContextMenu = useAppSelector(selectActivePresetForContextMenu);
  var editor = useAppSelector(selectEditor);
  var onCloseCallback = useCallback(function () {
    onClose();
  }, [onClose]);
  var cancelHandler = function cancelHandler() {
    onCloseCallback();
  };
  var deleteHandler = function deleteHandler() {
    onCloseCallback();
    dispatch(deletePreset(activePresetForContextMenu));
    dispatch(setIsEditMode(false));
    dispatch(createNewPreset());
    editor.events.selectPreset.dispatch(null);
  };
  return jsxs(Modal, {
    isOpen: isModalOpen,
    title: "Delete RNA Preset",
    onClose: onCloseCallback,
    children: [jsx(Modal.Content, {
      children: jsxs(DeleteTextWrapper, {
        "data-testid": "delete-preset-popup-content",
        children: [jsx("div", {
          children: "You are about to delete"
        }), jsxs("div", {
          children: ["\"", activePresetForContextMenu.name, "\" RNA preset."]
        }), jsx("div", {
          children: "This operation cannot be undone."
        })]
      })
    }), jsxs(Modal.Footer, {
      children: [jsx(StyledActionButton, {
        clickHandler: cancelHandler,
        label: "Cancel",
        styleType: "secondary"
      }, "cancel"), jsx(StyledActionButton, {
        clickHandler: deleteHandler,
        label: "Delete"
      }, "delete")]
    })]
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$f() { 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)."; }
var TextWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1wvbgsi0"
} : {
  target: "e1wvbgsi0",
  label: "TextWrapper"
})(process.env.NODE_ENV === "production" ? {
  name: "606i4c",
  styles: "padding:12px"
} : {
  name: "606i4c",
  styles: "padding:12px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlVwZGF0ZVNlcXVlbmNlSW5STkFCdWlsZGVyLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QitCIiwiZmlsZSI6IlVwZGF0ZVNlcXVlbmNlSW5STkFCdWlsZGVyLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeHMgYXMgX2pzeHMsIGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZUFwcERpc3BhdGNoLCB1c2VBcHBTZWxlY3RvciB9IGZyb20gXCIuLi8uLi8uLi9ob29rc1wiO1xyXG5pbXBvcnQgeyBzZWxlY3RTZXF1ZW5jZVNlbGVjdGlvbiB9IGZyb20gXCIuLi8uLi8uLi9zdGF0ZS9ybmEtYnVpbGRlclwiO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2FjdGlvbkJ1dHRvblwiO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHNlbGVjdEVkaXRvciB9IGZyb20gXCIuLi8uLi8uLi9zdGF0ZS9jb21tb25cIjtcclxuaW1wb3J0IHsgZ2V0Q291bnRPZk51Y2xlb2VsZW1lbnRzIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvY291bnROdWNsZW9lbGVudHNcIjtcclxuaW1wb3J0IHsgcmVzZXRSbmFCdWlsZGVyQWZ0ZXJTZXF1ZW5jZVVwZGF0ZSB9IGZyb20gXCIuLi8uLi9tb25vbWVyTGlicmFyeS9SbmFCdWlsZGVyL1JuYUVkaXRvci9SbmFFZGl0b3JFeHBhbmRlZC9oZWxwZXJzXCI7XHJcbmNvbnN0IFRleHRXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIHBhZGRpbmc6IDEycHg7XG5gO1xyXG5jb25zdCBVcGRhdGVTZXF1ZW5jZUluUk5BQnVpbGRlciA9ICh7IGlzTW9kYWxPcGVuLCBvbkNsb3NlIH0pID0+IHtcclxuICAgIGNvbnN0IGRpc3BhdGNoID0gdXNlQXBwRGlzcGF0Y2goKTtcclxuICAgIGNvbnN0IHNlcXVlbmNlU2VsZWN0aW9uID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0U2VxdWVuY2VTZWxlY3Rpb24pO1xyXG4gICAgY29uc3QgZWRpdG9yID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0RWRpdG9yKTtcclxuICAgIGNvbnN0IGNvdW50T2ZOdWNsZW9lbGVtZW50cyA9IGdldENvdW50T2ZOdWNsZW9lbGVtZW50cyhzZXF1ZW5jZVNlbGVjdGlvbik7XHJcbiAgICBjb25zdCBvbkNsb3NlQ2FsbGJhY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XHJcbiAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgfSwgW29uQ2xvc2VdKTtcclxuICAgIGNvbnN0IHJlc2V0ID0gKCkgPT4ge1xyXG4gICAgICAgIHJlc2V0Um5hQnVpbGRlckFmdGVyU2VxdWVuY2VVcGRhdGUoZGlzcGF0Y2gsIGVkaXRvcik7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgY2FuY2VsSGFuZGxlciA9ICgpID0+IHtcclxuICAgICAgICBvbkNsb3NlQ2FsbGJhY2soKTtcclxuICAgIH07XHJcbiAgICBjb25zdCB1cGRhdGVIYW5kbGVyID0gKCkgPT4ge1xyXG4gICAgICAgIG9uQ2xvc2VDYWxsYmFjaygpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMubW9kaWZ5U2VxdWVuY2VJblJuYUJ1aWxkZXIuZGlzcGF0Y2goc2VxdWVuY2VTZWxlY3Rpb24pO1xyXG4gICAgICAgIHJlc2V0KCk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChfanN4cyhNb2RhbCwgeyBpc09wZW46IGlzTW9kYWxPcGVuLCB0aXRsZTogXCJVcGRhdGUgc2VxdWVuY2VcIiwgb25DbG9zZTogb25DbG9zZUNhbGxiYWNrLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeHMoVGV4dFdyYXBwZXIsIHsgY2hpbGRyZW46IFtcIllvdSBhcmUgZ29pbmcgdG8gbW9kaWZ5IFwiLCBjb3VudE9mTnVjbGVvZWxlbWVudHMsIFwiIG51Y2xlb3RpZGVzLiBBcmUgeW91IHN1cmU/XCJdIH0pIH0pLCBfanN4cyhNb2RhbC5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4KEFjdGlvbkJ1dHRvbiwgeyBjbGlja0hhbmRsZXI6IGNhbmNlbEhhbmRsZXIsIGxhYmVsOiBcIkNhbmNlbFwiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIgfSwgXCJjYW5jZWxcIiksIF9qc3goQWN0aW9uQnV0dG9uLCB7IGNsaWNrSGFuZGxlcjogdXBkYXRlSGFuZGxlciwgbGFiZWw6IFwiWWVzXCIgfSwgXCJ1cGRhdGVcIildIH0pXSB9KSk7XHJcbn07XHJcbmV4cG9ydCB7IFVwZGF0ZVNlcXVlbmNlSW5STkFCdWlsZGVyIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVVwZGF0ZVNlcXVlbmNlSW5STkFCdWlsZGVyLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$f
});
var UpdateSequenceInRNABuilder = function UpdateSequenceInRNABuilder(_ref) {
  var isModalOpen = _ref.isModalOpen,
    onClose = _ref.onClose;
  var dispatch = useAppDispatch();
  var sequenceSelection = useAppSelector(selectSequenceSelection);
  var editor = useAppSelector(selectEditor);
  var countOfNucleoelements = getCountOfNucleoelements(sequenceSelection);
  var onCloseCallback = useCallback(function () {
    onClose();
  }, [onClose]);
  var reset = function reset() {
    resetRnaBuilderAfterSequenceUpdate(dispatch, editor);
  };
  var cancelHandler = function cancelHandler() {
    onCloseCallback();
  };
  var updateHandler = function updateHandler() {
    onCloseCallback();
    editor.events.modifySequenceInRnaBuilder.dispatch(sequenceSelection);
    reset();
  };
  return jsxs(Modal, {
    isOpen: isModalOpen,
    title: "Update sequence",
    onClose: onCloseCallback,
    children: [jsx(Modal.Content, {
      children: jsxs(TextWrapper, {
        children: ["You are going to modify ", countOfNucleoelements, " nucleotides. Are you sure?"]
      })
    }), jsxs(Modal.Footer, {
      children: [jsx(ActionButton, {
        clickHandler: cancelHandler,
        label: "Cancel",
        styleType: "secondary"
      }, "cancel"), jsx(ActionButton, {
        clickHandler: updateHandler,
        label: "Yes"
      }, "update")]
    })]
  });
};

var AttachmentPoint$2 = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "e1tvvbc92"
} : {
  target: "e1tvvbc92",
  label: "AttachmentPoint"
})(function () {
  return {
    display: 'flex',
    flexDirection: 'column',
    rowGap: '2px',
    alignItems: 'center',
    marginBottom: '5px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQytCIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnQgPSBzdHlsZWQoJ2RpdicpKCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHJvd0dhcDogJzJweCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIG1hcmdpbkJvdHRvbTogJzVweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludE5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAwLFxyXG4gICAgdGV4dEFsaWduOiAnY2VudGVyJyxcclxuICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICBmb250OiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsLFxyXG4gICAgZm9udFdlaWdodDogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgY29sb3I6IHByb3BzLmRpc2FibGVkXHJcbiAgICAgICAgPyAncmdiYSgxODAsIDE4NSwgMjE0LCAxKSdcclxuICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9kYWxDb250ZW50ID0gc3R5bGVkLmRpdigoKSA9PiAoeyBoZWlnaHQ6ICcxMDAlJyB9KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlZENvbXBvbmVudHMuanMubWFwIl19 */");
var AttachmentPointName$1 = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1tvvbc91"
} : {
  target: "e1tvvbc91",
  label: "AttachmentPointName"
})(function (props) {
  return {
    margin: 0,
    padding: 0,
    textAlign: 'center',
    display: 'block',
    font: props.theme.ketcher.font.family.inter,
    fontSize: props.theme.ketcher.font.size.small,
    fontWeight: props.theme.ketcher.font.weight.regular,
    color: props.disabled ? 'rgba(180, 185, 214, 1)' : props.theme.ketcher.color.text.light
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUW1DIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnQgPSBzdHlsZWQoJ2RpdicpKCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcclxuICAgIHJvd0dhcDogJzJweCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIG1hcmdpbkJvdHRvbTogJzVweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludE5hbWUgPSBzdHlsZWQuc3BhbigocHJvcHMpID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAwLFxyXG4gICAgdGV4dEFsaWduOiAnY2VudGVyJyxcclxuICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICBmb250OiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyLFxyXG4gICAgZm9udFNpemU6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsLFxyXG4gICAgZm9udFdlaWdodDogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LndlaWdodC5yZWd1bGFyLFxyXG4gICAgY29sb3I6IHByb3BzLmRpc2FibGVkXHJcbiAgICAgICAgPyAncmdiYSgxODAsIDE4NSwgMjE0LCAxKSdcclxuICAgICAgICA6IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodCxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgTW9kYWxDb250ZW50ID0gc3R5bGVkLmRpdigoKSA9PiAoeyBoZWlnaHQ6ICcxMDAlJyB9KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlZENvbXBvbmVudHMuanMubWFwIl19 */");
var ModalContent = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1tvvbc90"
} : {
  target: "e1tvvbc90",
  label: "ModalContent"
})(function () {
  return {
    height: '100%'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0I0QiIsImZpbGUiOiJzdHlsZWRDb21wb25lbnRzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkKCdkaXYnKSgoKSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXHJcbiAgICByb3dHYXA6ICcycHgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBtYXJnaW5Cb3R0b206ICc1cHgnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnROYW1lID0gc3R5bGVkLnNwYW4oKHByb3BzKSA9PiAoe1xyXG4gICAgbWFyZ2luOiAwLFxyXG4gICAgcGFkZGluZzogMCxcclxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICBkaXNwbGF5OiAnYmxvY2snLFxyXG4gICAgZm9udDogcHJvcHMudGhlbWUua2V0Y2hlci5mb250LmZhbWlseS5pbnRlcixcclxuICAgIGZvbnRTaXplOiBwcm9wcy50aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5zbWFsbCxcclxuICAgIGZvbnRXZWlnaHQ6IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxuICAgIGNvbG9yOiBwcm9wcy5kaXNhYmxlZFxyXG4gICAgICAgID8gJ3JnYmEoMTgwLCAxODUsIDIxNCwgMSknXHJcbiAgICAgICAgOiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHQsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IE1vZGFsQ29udGVudCA9IHN0eWxlZC5kaXYoKCkgPT4gKHsgaGVpZ2h0OiAnMTAwJScgfSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZWRDb21wb25lbnRzLmpzLm1hcCJdfQ== */");

var hydrateLeavingGroup = function hydrateLeavingGroup(leavingGroup) {
  return leavingGroup === 'O' ? 'OH' : leavingGroup;
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$e() { 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)."; }
var StyledStructRender$1 = _styled(StructRender, process.env.NODE_ENV === "production" ? {
  target: "e1huhxto1"
} : {
  target: "e1huhxto1",
  label: "StyledStructRender"
})(function (_ref) {
  var theme = _ref.theme,
    isExpanded = _ref.isExpanded;
  return {
    display: 'flex',
    border: "1.5px solid ".concat(theme.ketcher.outline.color),
    borderRadius: '6px',
    padding: 5,
    maxHeight: '100%',
    minHeight: '150px',
    height: isExpanded ? 'auto' : '150px',
    width: isExpanded ? 'auto' : '150px',
    alignSelf: 'stretch',
    '& svg': {
      maxWidth: 'fit-content',
      margin: 'auto'
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJPdmVydmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRWtDIiwiZmlsZSI6Ik1vbm9tZXJPdmVydmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFN0cnVjdFJlbmRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkU3RydWN0UmVuZGVyID0gc3R5bGVkKFN0cnVjdFJlbmRlcikoKHsgdGhlbWUsIGlzRXhwYW5kZWQgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGJvcmRlcjogYDEuNXB4IHNvbGlkICR7dGhlbWUua2V0Y2hlci5vdXRsaW5lLmNvbG9yfWAsXHJcbiAgICBib3JkZXJSYWRpdXM6ICc2cHgnLFxyXG4gICAgcGFkZGluZzogNSxcclxuICAgIG1heEhlaWdodDogJzEwMCUnLFxyXG4gICAgbWluSGVpZ2h0OiAnMTUwcHgnLFxyXG4gICAgaGVpZ2h0OiBpc0V4cGFuZGVkID8gJ2F1dG8nIDogJzE1MHB4JyxcclxuICAgIHdpZHRoOiBpc0V4cGFuZGVkID8gJ2F1dG8nIDogJzE1MHB4JyxcclxuICAgIGFsaWduU2VsZjogJ3N0cmV0Y2gnLFxyXG4gICAgJyYgc3ZnJzoge1xyXG4gICAgICAgIG1heFdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgICAgIG1hcmdpbjogJ2F1dG8nLFxyXG4gICAgfSxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50TGlzdCA9IHN0eWxlZC5kaXYoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgZmxleFdyYXA6ICd3cmFwJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgIGFsaWduU2VsZjogJ2ZsZXgtc3RhcnQnLFxyXG4gICAgd2lkdGg6ICcxMDAlJyxcclxuICAgIGdhcDogJzdweCcsXHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyT3ZlcnZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */");
var AttachmentPointList = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1huhxto0"
} : {
  target: "e1huhxto0",
  label: "AttachmentPointList"
})(process.env.NODE_ENV === "production" ? {
  name: "wfzm1y",
  styles: "display:flex;flex-wrap:wrap;justify-content:center;align-self:flex-start;width:100%;gap:7px"
} : {
  name: "wfzm1y",
  styles: "display:flex;flex-wrap:wrap;justify-content:center;align-self:flex-start;width:100%;gap:7px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJPdmVydmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJtQyIsImZpbGUiOiJNb25vbWVyT3ZlcnZpZXcuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBTdHJ1Y3RSZW5kZXIgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZFN0cnVjdFJlbmRlciA9IHN0eWxlZChTdHJ1Y3RSZW5kZXIpKCh7IHRoZW1lLCBpc0V4cGFuZGVkIH0pID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBib3JkZXI6IGAxLjVweCBzb2xpZCAke3RoZW1lLmtldGNoZXIub3V0bGluZS5jb2xvcn1gLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNnB4JyxcclxuICAgIHBhZGRpbmc6IDUsXHJcbiAgICBtYXhIZWlnaHQ6ICcxMDAlJyxcclxuICAgIG1pbkhlaWdodDogJzE1MHB4JyxcclxuICAgIGhlaWdodDogaXNFeHBhbmRlZCA/ICdhdXRvJyA6ICcxNTBweCcsXHJcbiAgICB3aWR0aDogaXNFeHBhbmRlZCA/ICdhdXRvJyA6ICcxNTBweCcsXHJcbiAgICBhbGlnblNlbGY6ICdzdHJldGNoJyxcclxuICAgICcmIHN2Zyc6IHtcclxuICAgICAgICBtYXhXaWR0aDogJ2ZpdC1jb250ZW50JyxcclxuICAgICAgICBtYXJnaW46ICdhdXRvJyxcclxuICAgIH0sXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludExpc3QgPSBzdHlsZWQuZGl2KHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhXcmFwOiAnd3JhcCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXHJcbiAgICBhbGlnblNlbGY6ICdmbGV4LXN0YXJ0JyxcclxuICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICBnYXA6ICc3cHgnLFxyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9ub21lck92ZXJ2aWV3LnN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$e
});

function _EMOTION_STRINGIFIED_CSS_ERROR__$d() { 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)."; }
var StyledContent = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e8i5wzj0"
} : {
  target: "e8i5wzj0",
  label: "StyledContent"
})(process.env.NODE_ENV === "production" ? {
  name: "2oefzz",
  styles: "display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:8px;color:#7c7c7f;border:1px solid #cad3dd;width:100%;height:100%"
} : {
  name: "2oefzz",
  styles: "display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:8px;color:#7c7c7f;border:1px solid #cad3dd;width:100%;height:100%",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlVucmVzb2x2ZWRNb25vbWVyUHJldmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ3dDIiwiZmlsZSI6IlVucmVzb2x2ZWRNb25vbWVyUHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRDb250ZW50ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogIzdjN2M3ZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVVucmVzb2x2ZWRNb25vbWVyUHJldmlldy5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$d
});

var UnresolvedMonomerPreview = function UnresolvedMonomerPreview() {
  return jsxs(StyledContent, {
    children: [jsx(Icon, {
      name: "questionMark"
    }), "Unknown structure"]
  });
};

var noop = {value: () => {}};

function dispatch() {
  for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {
    if (!(t = arguments[i] + "") || (t in _) || /[\s.]/.test(t)) throw new Error("illegal type: " + t);
    _[t] = [];
  }
  return new Dispatch(_);
}

function Dispatch(_) {
  this._ = _;
}

function parseTypenames$1(typenames, types) {
  return typenames.trim().split(/^|\s+/).map(function(t) {
    var name = "", i = t.indexOf(".");
    if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);
    if (t && !types.hasOwnProperty(t)) throw new Error("unknown type: " + t);
    return {type: t, name: name};
  });
}

Dispatch.prototype = dispatch.prototype = {
  constructor: Dispatch,
  on: function(typename, callback) {
    var _ = this._,
        T = parseTypenames$1(typename + "", _),
        t,
        i = -1,
        n = T.length;

    // If no callback was specified, return the callback of the given type and name.
    if (arguments.length < 2) {
      while (++i < n) if ((t = (typename = T[i]).type) && (t = get$1(_[t], typename.name))) return t;
      return;
    }

    // If a type was specified, set the callback for the given type and name.
    // Otherwise, if a null callback was specified, remove callbacks of the given name.
    if (callback != null && typeof callback !== "function") throw new Error("invalid callback: " + callback);
    while (++i < n) {
      if (t = (typename = T[i]).type) _[t] = set$1(_[t], typename.name, callback);
      else if (callback == null) for (t in _) _[t] = set$1(_[t], typename.name, null);
    }

    return this;
  },
  copy: function() {
    var copy = {}, _ = this._;
    for (var t in _) copy[t] = _[t].slice();
    return new Dispatch(copy);
  },
  call: function(type, that) {
    if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];
    if (!this._.hasOwnProperty(type)) throw new Error("unknown type: " + type);
    for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);
  },
  apply: function(type, that, args) {
    if (!this._.hasOwnProperty(type)) throw new Error("unknown type: " + type);
    for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);
  }
};

function get$1(type, name) {
  for (var i = 0, n = type.length, c; i < n; ++i) {
    if ((c = type[i]).name === name) {
      return c.value;
    }
  }
}

function set$1(type, name, callback) {
  for (var i = 0, n = type.length; i < n; ++i) {
    if (type[i].name === name) {
      type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));
      break;
    }
  }
  if (callback != null) type.push({name: name, value: callback});
  return type;
}

var xhtml = "http://www.w3.org/1999/xhtml";

var namespaces = {
  svg: "http://www.w3.org/2000/svg",
  xhtml: xhtml,
  xlink: "http://www.w3.org/1999/xlink",
  xml: "http://www.w3.org/XML/1998/namespace",
  xmlns: "http://www.w3.org/2000/xmlns/"
};

function namespace(name) {
  var prefix = name += "", i = prefix.indexOf(":");
  if (i >= 0 && (prefix = name.slice(0, i)) !== "xmlns") name = name.slice(i + 1);
  return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins
}

function creatorInherit(name) {
  return function() {
    var document = this.ownerDocument,
        uri = this.namespaceURI;
    return uri === xhtml && document.documentElement.namespaceURI === xhtml
        ? document.createElement(name)
        : document.createElementNS(uri, name);
  };
}

function creatorFixed(fullname) {
  return function() {
    return this.ownerDocument.createElementNS(fullname.space, fullname.local);
  };
}

function creator(name) {
  var fullname = namespace(name);
  return (fullname.local
      ? creatorFixed
      : creatorInherit)(fullname);
}

function none() {}

function selector(selector) {
  return selector == null ? none : function() {
    return this.querySelector(selector);
  };
}

function selection_select(select) {
  if (typeof select !== "function") select = selector(select);

  for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {
      if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {
        if ("__data__" in node) subnode.__data__ = node.__data__;
        subgroup[i] = subnode;
      }
    }
  }

  return new Selection$1(subgroups, this._parents);
}

// Given something array like (or null), returns something that is strictly an
// array. This is used to ensure that array-like objects passed to d3.selectAll
// or selection.selectAll are converted into proper arrays when creating a
// selection; we don’t ever want to create a selection backed by a live
// HTMLCollection or NodeList. However, note that selection.selectAll will use a
// static NodeList as a group, since it safely derived from querySelectorAll.
function array(x) {
  return x == null ? [] : Array.isArray(x) ? x : Array.from(x);
}

function empty() {
  return [];
}

function selectorAll(selector) {
  return selector == null ? empty : function() {
    return this.querySelectorAll(selector);
  };
}

function arrayAll(select) {
  return function() {
    return array(select.apply(this, arguments));
  };
}

function selection_selectAll(select) {
  if (typeof select === "function") select = arrayAll(select);
  else select = selectorAll(select);

  for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
      if (node = group[i]) {
        subgroups.push(select.call(node, node.__data__, i, group));
        parents.push(node);
      }
    }
  }

  return new Selection$1(subgroups, parents);
}

function matcher(selector) {
  return function() {
    return this.matches(selector);
  };
}

function childMatcher(selector) {
  return function(node) {
    return node.matches(selector);
  };
}

var find = Array.prototype.find;

function childFind(match) {
  return function() {
    return find.call(this.children, match);
  };
}

function childFirst() {
  return this.firstElementChild;
}

function selection_selectChild(match) {
  return this.select(match == null ? childFirst
      : childFind(typeof match === "function" ? match : childMatcher(match)));
}

var filter = Array.prototype.filter;

function children() {
  return Array.from(this.children);
}

function childrenFilter(match) {
  return function() {
    return filter.call(this.children, match);
  };
}

function selection_selectChildren(match) {
  return this.selectAll(match == null ? children
      : childrenFilter(typeof match === "function" ? match : childMatcher(match)));
}

function selection_filter(match) {
  if (typeof match !== "function") match = matcher(match);

  for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {
      if ((node = group[i]) && match.call(node, node.__data__, i, group)) {
        subgroup.push(node);
      }
    }
  }

  return new Selection$1(subgroups, this._parents);
}

function sparse(update) {
  return new Array(update.length);
}

function selection_enter() {
  return new Selection$1(this._enter || this._groups.map(sparse), this._parents);
}

function EnterNode(parent, datum) {
  this.ownerDocument = parent.ownerDocument;
  this.namespaceURI = parent.namespaceURI;
  this._next = null;
  this._parent = parent;
  this.__data__ = datum;
}

EnterNode.prototype = {
  constructor: EnterNode,
  appendChild: function(child) { return this._parent.insertBefore(child, this._next); },
  insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },
  querySelector: function(selector) { return this._parent.querySelector(selector); },
  querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }
};

function constant$1(x) {
  return function() {
    return x;
  };
}

function bindIndex(parent, group, enter, update, exit, data) {
  var i = 0,
      node,
      groupLength = group.length,
      dataLength = data.length;

  // Put any non-null nodes that fit into update.
  // Put any null nodes into enter.
  // Put any remaining data into enter.
  for (; i < dataLength; ++i) {
    if (node = group[i]) {
      node.__data__ = data[i];
      update[i] = node;
    } else {
      enter[i] = new EnterNode(parent, data[i]);
    }
  }

  // Put any non-null nodes that don’t fit into exit.
  for (; i < groupLength; ++i) {
    if (node = group[i]) {
      exit[i] = node;
    }
  }
}

function bindKey(parent, group, enter, update, exit, data, key) {
  var i,
      node,
      nodeByKeyValue = new Map,
      groupLength = group.length,
      dataLength = data.length,
      keyValues = new Array(groupLength),
      keyValue;

  // Compute the key for each node.
  // If multiple nodes have the same key, the duplicates are added to exit.
  for (i = 0; i < groupLength; ++i) {
    if (node = group[i]) {
      keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + "";
      if (nodeByKeyValue.has(keyValue)) {
        exit[i] = node;
      } else {
        nodeByKeyValue.set(keyValue, node);
      }
    }
  }

  // Compute the key for each datum.
  // If there a node associated with this key, join and add it to update.
  // If there is not (or the key is a duplicate), add it to enter.
  for (i = 0; i < dataLength; ++i) {
    keyValue = key.call(parent, data[i], i, data) + "";
    if (node = nodeByKeyValue.get(keyValue)) {
      update[i] = node;
      node.__data__ = data[i];
      nodeByKeyValue.delete(keyValue);
    } else {
      enter[i] = new EnterNode(parent, data[i]);
    }
  }

  // Add any remaining nodes that were not bound to data to exit.
  for (i = 0; i < groupLength; ++i) {
    if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {
      exit[i] = node;
    }
  }
}

function datum(node) {
  return node.__data__;
}

function selection_data(value, key) {
  if (!arguments.length) return Array.from(this, datum);

  var bind = key ? bindKey : bindIndex,
      parents = this._parents,
      groups = this._groups;

  if (typeof value !== "function") value = constant$1(value);

  for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {
    var parent = parents[j],
        group = groups[j],
        groupLength = group.length,
        data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),
        dataLength = data.length,
        enterGroup = enter[j] = new Array(dataLength),
        updateGroup = update[j] = new Array(dataLength),
        exitGroup = exit[j] = new Array(groupLength);

    bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);

    // Now connect the enter nodes to their following update node, such that
    // appendChild can insert the materialized enter node before this node,
    // rather than at the end of the parent node.
    for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {
      if (previous = enterGroup[i0]) {
        if (i0 >= i1) i1 = i0 + 1;
        while (!(next = updateGroup[i1]) && ++i1 < dataLength);
        previous._next = next || null;
      }
    }
  }

  update = new Selection$1(update, parents);
  update._enter = enter;
  update._exit = exit;
  return update;
}

// Given some data, this returns an array-like view of it: an object that
// exposes a length property and allows numeric indexing. Note that unlike
// selectAll, this isn’t worried about “live” collections because the resulting
// array will only be used briefly while data is being bound. (It is possible to
// cause the data to change while iterating by using a key function, but please
// don’t; we’d rather avoid a gratuitous copy.)
function arraylike(data) {
  return typeof data === "object" && "length" in data
    ? data // Array, TypedArray, NodeList, array-like
    : Array.from(data); // Map, Set, iterable, string, or anything else
}

function selection_exit() {
  return new Selection$1(this._exit || this._groups.map(sparse), this._parents);
}

function selection_join(onenter, onupdate, onexit) {
  var enter = this.enter(), update = this, exit = this.exit();
  if (typeof onenter === "function") {
    enter = onenter(enter);
    if (enter) enter = enter.selection();
  } else {
    enter = enter.append(onenter + "");
  }
  if (onupdate != null) {
    update = onupdate(update);
    if (update) update = update.selection();
  }
  if (onexit == null) exit.remove(); else onexit(exit);
  return enter && update ? enter.merge(update).order() : update;
}

function selection_merge(context) {
  var selection = context.selection ? context.selection() : context;

  for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {
    for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {
      if (node = group0[i] || group1[i]) {
        merge[i] = node;
      }
    }
  }

  for (; j < m0; ++j) {
    merges[j] = groups0[j];
  }

  return new Selection$1(merges, this._parents);
}

function selection_order() {

  for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {
    for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {
      if (node = group[i]) {
        if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);
        next = node;
      }
    }
  }

  return this;
}

function selection_sort(compare) {
  if (!compare) compare = ascending;

  function compareNode(a, b) {
    return a && b ? compare(a.__data__, b.__data__) : !a - !b;
  }

  for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {
      if (node = group[i]) {
        sortgroup[i] = node;
      }
    }
    sortgroup.sort(compareNode);
  }

  return new Selection$1(sortgroups, this._parents).order();
}

function ascending(a, b) {
  return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
}

function selection_call() {
  var callback = arguments[0];
  arguments[0] = this;
  callback.apply(null, arguments);
  return this;
}

function selection_nodes() {
  return Array.from(this);
}

function selection_node() {

  for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
    for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {
      var node = group[i];
      if (node) return node;
    }
  }

  return null;
}

function selection_size() {
  let size = 0;
  for (const node of this) ++size; // eslint-disable-line no-unused-vars
  return size;
}

function selection_empty() {
  return !this.node();
}

function selection_each(callback) {

  for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
    for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {
      if (node = group[i]) callback.call(node, node.__data__, i, group);
    }
  }

  return this;
}

function attrRemove$1(name) {
  return function() {
    this.removeAttribute(name);
  };
}

function attrRemoveNS$1(fullname) {
  return function() {
    this.removeAttributeNS(fullname.space, fullname.local);
  };
}

function attrConstant$1(name, value) {
  return function() {
    this.setAttribute(name, value);
  };
}

function attrConstantNS$1(fullname, value) {
  return function() {
    this.setAttributeNS(fullname.space, fullname.local, value);
  };
}

function attrFunction$1(name, value) {
  return function() {
    var v = value.apply(this, arguments);
    if (v == null) this.removeAttribute(name);
    else this.setAttribute(name, v);
  };
}

function attrFunctionNS$1(fullname, value) {
  return function() {
    var v = value.apply(this, arguments);
    if (v == null) this.removeAttributeNS(fullname.space, fullname.local);
    else this.setAttributeNS(fullname.space, fullname.local, v);
  };
}

function selection_attr(name, value) {
  var fullname = namespace(name);

  if (arguments.length < 2) {
    var node = this.node();
    return fullname.local
        ? node.getAttributeNS(fullname.space, fullname.local)
        : node.getAttribute(fullname);
  }

  return this.each((value == null
      ? (fullname.local ? attrRemoveNS$1 : attrRemove$1) : (typeof value === "function"
      ? (fullname.local ? attrFunctionNS$1 : attrFunction$1)
      : (fullname.local ? attrConstantNS$1 : attrConstant$1)))(fullname, value));
}

function defaultView(node) {
  return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node
      || (node.document && node) // node is a Window
      || node.defaultView; // node is a Document
}

function styleRemove$1(name) {
  return function() {
    this.style.removeProperty(name);
  };
}

function styleConstant$1(name, value, priority) {
  return function() {
    this.style.setProperty(name, value, priority);
  };
}

function styleFunction$1(name, value, priority) {
  return function() {
    var v = value.apply(this, arguments);
    if (v == null) this.style.removeProperty(name);
    else this.style.setProperty(name, v, priority);
  };
}

function selection_style(name, value, priority) {
  return arguments.length > 1
      ? this.each((value == null
            ? styleRemove$1 : typeof value === "function"
            ? styleFunction$1
            : styleConstant$1)(name, value, priority == null ? "" : priority))
      : styleValue(this.node(), name);
}

function styleValue(node, name) {
  return node.style.getPropertyValue(name)
      || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);
}

function propertyRemove(name) {
  return function() {
    delete this[name];
  };
}

function propertyConstant(name, value) {
  return function() {
    this[name] = value;
  };
}

function propertyFunction(name, value) {
  return function() {
    var v = value.apply(this, arguments);
    if (v == null) delete this[name];
    else this[name] = v;
  };
}

function selection_property(name, value) {
  return arguments.length > 1
      ? this.each((value == null
          ? propertyRemove : typeof value === "function"
          ? propertyFunction
          : propertyConstant)(name, value))
      : this.node()[name];
}

function classArray(string) {
  return string.trim().split(/^|\s+/);
}

function classList(node) {
  return node.classList || new ClassList(node);
}

function ClassList(node) {
  this._node = node;
  this._names = classArray(node.getAttribute("class") || "");
}

ClassList.prototype = {
  add: function(name) {
    var i = this._names.indexOf(name);
    if (i < 0) {
      this._names.push(name);
      this._node.setAttribute("class", this._names.join(" "));
    }
  },
  remove: function(name) {
    var i = this._names.indexOf(name);
    if (i >= 0) {
      this._names.splice(i, 1);
      this._node.setAttribute("class", this._names.join(" "));
    }
  },
  contains: function(name) {
    return this._names.indexOf(name) >= 0;
  }
};

function classedAdd(node, names) {
  var list = classList(node), i = -1, n = names.length;
  while (++i < n) list.add(names[i]);
}

function classedRemove(node, names) {
  var list = classList(node), i = -1, n = names.length;
  while (++i < n) list.remove(names[i]);
}

function classedTrue(names) {
  return function() {
    classedAdd(this, names);
  };
}

function classedFalse(names) {
  return function() {
    classedRemove(this, names);
  };
}

function classedFunction(names, value) {
  return function() {
    (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);
  };
}

function selection_classed(name, value) {
  var names = classArray(name + "");

  if (arguments.length < 2) {
    var list = classList(this.node()), i = -1, n = names.length;
    while (++i < n) if (!list.contains(names[i])) return false;
    return true;
  }

  return this.each((typeof value === "function"
      ? classedFunction : value
      ? classedTrue
      : classedFalse)(names, value));
}

function textRemove() {
  this.textContent = "";
}

function textConstant$1(value) {
  return function() {
    this.textContent = value;
  };
}

function textFunction$1(value) {
  return function() {
    var v = value.apply(this, arguments);
    this.textContent = v == null ? "" : v;
  };
}

function selection_text(value) {
  return arguments.length
      ? this.each(value == null
          ? textRemove : (typeof value === "function"
          ? textFunction$1
          : textConstant$1)(value))
      : this.node().textContent;
}

function htmlRemove() {
  this.innerHTML = "";
}

function htmlConstant(value) {
  return function() {
    this.innerHTML = value;
  };
}

function htmlFunction(value) {
  return function() {
    var v = value.apply(this, arguments);
    this.innerHTML = v == null ? "" : v;
  };
}

function selection_html(value) {
  return arguments.length
      ? this.each(value == null
          ? htmlRemove : (typeof value === "function"
          ? htmlFunction
          : htmlConstant)(value))
      : this.node().innerHTML;
}

function raise() {
  if (this.nextSibling) this.parentNode.appendChild(this);
}

function selection_raise() {
  return this.each(raise);
}

function lower() {
  if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);
}

function selection_lower() {
  return this.each(lower);
}

function selection_append(name) {
  var create = typeof name === "function" ? name : creator(name);
  return this.select(function() {
    return this.appendChild(create.apply(this, arguments));
  });
}

function constantNull() {
  return null;
}

function selection_insert(name, before) {
  var create = typeof name === "function" ? name : creator(name),
      select = before == null ? constantNull : typeof before === "function" ? before : selector(before);
  return this.select(function() {
    return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);
  });
}

function remove() {
  var parent = this.parentNode;
  if (parent) parent.removeChild(this);
}

function selection_remove() {
  return this.each(remove);
}

function selection_cloneShallow() {
  var clone = this.cloneNode(false), parent = this.parentNode;
  return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
}

function selection_cloneDeep() {
  var clone = this.cloneNode(true), parent = this.parentNode;
  return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
}

function selection_clone(deep) {
  return this.select(deep ? selection_cloneDeep : selection_cloneShallow);
}

function selection_datum(value) {
  return arguments.length
      ? this.property("__data__", value)
      : this.node().__data__;
}

function contextListener(listener) {
  return function(event) {
    listener.call(this, event, this.__data__);
  };
}

function parseTypenames(typenames) {
  return typenames.trim().split(/^|\s+/).map(function(t) {
    var name = "", i = t.indexOf(".");
    if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);
    return {type: t, name: name};
  });
}

function onRemove(typename) {
  return function() {
    var on = this.__on;
    if (!on) return;
    for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {
      if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {
        this.removeEventListener(o.type, o.listener, o.options);
      } else {
        on[++i] = o;
      }
    }
    if (++i) on.length = i;
    else delete this.__on;
  };
}

function onAdd(typename, value, options) {
  return function() {
    var on = this.__on, o, listener = contextListener(value);
    if (on) for (var j = 0, m = on.length; j < m; ++j) {
      if ((o = on[j]).type === typename.type && o.name === typename.name) {
        this.removeEventListener(o.type, o.listener, o.options);
        this.addEventListener(o.type, o.listener = listener, o.options = options);
        o.value = value;
        return;
      }
    }
    this.addEventListener(typename.type, listener, options);
    o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};
    if (!on) this.__on = [o];
    else on.push(o);
  };
}

function selection_on(typename, value, options) {
  var typenames = parseTypenames(typename + ""), i, n = typenames.length, t;

  if (arguments.length < 2) {
    var on = this.node().__on;
    if (on) for (var j = 0, m = on.length, o; j < m; ++j) {
      for (i = 0, o = on[j]; i < n; ++i) {
        if ((t = typenames[i]).type === o.type && t.name === o.name) {
          return o.value;
        }
      }
    }
    return;
  }

  on = value ? onAdd : onRemove;
  for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));
  return this;
}

function dispatchEvent(node, type, params) {
  var window = defaultView(node),
      event = window.CustomEvent;

  if (typeof event === "function") {
    event = new event(type, params);
  } else {
    event = window.document.createEvent("Event");
    if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;
    else event.initEvent(type, false, false);
  }

  node.dispatchEvent(event);
}

function dispatchConstant(type, params) {
  return function() {
    return dispatchEvent(this, type, params);
  };
}

function dispatchFunction(type, params) {
  return function() {
    return dispatchEvent(this, type, params.apply(this, arguments));
  };
}

function selection_dispatch(type, params) {
  return this.each((typeof params === "function"
      ? dispatchFunction
      : dispatchConstant)(type, params));
}

function* selection_iterator() {
  for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {
    for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {
      if (node = group[i]) yield node;
    }
  }
}

var root = [null];

function Selection$1(groups, parents) {
  this._groups = groups;
  this._parents = parents;
}

function selection() {
  return new Selection$1([[document.documentElement]], root);
}

function selection_selection() {
  return this;
}

Selection$1.prototype = selection.prototype = {
  constructor: Selection$1,
  select: selection_select,
  selectAll: selection_selectAll,
  selectChild: selection_selectChild,
  selectChildren: selection_selectChildren,
  filter: selection_filter,
  data: selection_data,
  enter: selection_enter,
  exit: selection_exit,
  join: selection_join,
  merge: selection_merge,
  selection: selection_selection,
  order: selection_order,
  sort: selection_sort,
  call: selection_call,
  nodes: selection_nodes,
  node: selection_node,
  size: selection_size,
  empty: selection_empty,
  each: selection_each,
  attr: selection_attr,
  style: selection_style,
  property: selection_property,
  classed: selection_classed,
  text: selection_text,
  html: selection_html,
  raise: selection_raise,
  lower: selection_lower,
  append: selection_append,
  insert: selection_insert,
  remove: selection_remove,
  clone: selection_clone,
  datum: selection_datum,
  on: selection_on,
  dispatch: selection_dispatch,
  [Symbol.iterator]: selection_iterator
};

function select(selector) {
  return typeof selector === "string"
      ? new Selection$1([[document.querySelector(selector)]], [document.documentElement])
      : new Selection$1([[selector]], root);
}

function define(constructor, factory, prototype) {
  constructor.prototype = factory.prototype = prototype;
  prototype.constructor = constructor;
}

function extend(parent, definition) {
  var prototype = Object.create(parent.prototype);
  for (var key in definition) prototype[key] = definition[key];
  return prototype;
}

function Color() {}

var darker = 0.7;
var brighter = 1 / darker;

var reI = "\\s*([+-]?\\d+)\\s*",
    reN = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",
    reP = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",
    reHex = /^#([0-9a-f]{3,8})$/,
    reRgbInteger = new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),
    reRgbPercent = new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),
    reRgbaInteger = new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),
    reRgbaPercent = new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),
    reHslPercent = new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),
    reHslaPercent = new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`);

var named = {
  aliceblue: 0xf0f8ff,
  antiquewhite: 0xfaebd7,
  aqua: 0x00ffff,
  aquamarine: 0x7fffd4,
  azure: 0xf0ffff,
  beige: 0xf5f5dc,
  bisque: 0xffe4c4,
  black: 0x000000,
  blanchedalmond: 0xffebcd,
  blue: 0x0000ff,
  blueviolet: 0x8a2be2,
  brown: 0xa52a2a,
  burlywood: 0xdeb887,
  cadetblue: 0x5f9ea0,
  chartreuse: 0x7fff00,
  chocolate: 0xd2691e,
  coral: 0xff7f50,
  cornflowerblue: 0x6495ed,
  cornsilk: 0xfff8dc,
  crimson: 0xdc143c,
  cyan: 0x00ffff,
  darkblue: 0x00008b,
  darkcyan: 0x008b8b,
  darkgoldenrod: 0xb8860b,
  darkgray: 0xa9a9a9,
  darkgreen: 0x006400,
  darkgrey: 0xa9a9a9,
  darkkhaki: 0xbdb76b,
  darkmagenta: 0x8b008b,
  darkolivegreen: 0x556b2f,
  darkorange: 0xff8c00,
  darkorchid: 0x9932cc,
  darkred: 0x8b0000,
  darksalmon: 0xe9967a,
  darkseagreen: 0x8fbc8f,
  darkslateblue: 0x483d8b,
  darkslategray: 0x2f4f4f,
  darkslategrey: 0x2f4f4f,
  darkturquoise: 0x00ced1,
  darkviolet: 0x9400d3,
  deeppink: 0xff1493,
  deepskyblue: 0x00bfff,
  dimgray: 0x696969,
  dimgrey: 0x696969,
  dodgerblue: 0x1e90ff,
  firebrick: 0xb22222,
  floralwhite: 0xfffaf0,
  forestgreen: 0x228b22,
  fuchsia: 0xff00ff,
  gainsboro: 0xdcdcdc,
  ghostwhite: 0xf8f8ff,
  gold: 0xffd700,
  goldenrod: 0xdaa520,
  gray: 0x808080,
  green: 0x008000,
  greenyellow: 0xadff2f,
  grey: 0x808080,
  honeydew: 0xf0fff0,
  hotpink: 0xff69b4,
  indianred: 0xcd5c5c,
  indigo: 0x4b0082,
  ivory: 0xfffff0,
  khaki: 0xf0e68c,
  lavender: 0xe6e6fa,
  lavenderblush: 0xfff0f5,
  lawngreen: 0x7cfc00,
  lemonchiffon: 0xfffacd,
  lightblue: 0xadd8e6,
  lightcoral: 0xf08080,
  lightcyan: 0xe0ffff,
  lightgoldenrodyellow: 0xfafad2,
  lightgray: 0xd3d3d3,
  lightgreen: 0x90ee90,
  lightgrey: 0xd3d3d3,
  lightpink: 0xffb6c1,
  lightsalmon: 0xffa07a,
  lightseagreen: 0x20b2aa,
  lightskyblue: 0x87cefa,
  lightslategray: 0x778899,
  lightslategrey: 0x778899,
  lightsteelblue: 0xb0c4de,
  lightyellow: 0xffffe0,
  lime: 0x00ff00,
  limegreen: 0x32cd32,
  linen: 0xfaf0e6,
  magenta: 0xff00ff,
  maroon: 0x800000,
  mediumaquamarine: 0x66cdaa,
  mediumblue: 0x0000cd,
  mediumorchid: 0xba55d3,
  mediumpurple: 0x9370db,
  mediumseagreen: 0x3cb371,
  mediumslateblue: 0x7b68ee,
  mediumspringgreen: 0x00fa9a,
  mediumturquoise: 0x48d1cc,
  mediumvioletred: 0xc71585,
  midnightblue: 0x191970,
  mintcream: 0xf5fffa,
  mistyrose: 0xffe4e1,
  moccasin: 0xffe4b5,
  navajowhite: 0xffdead,
  navy: 0x000080,
  oldlace: 0xfdf5e6,
  olive: 0x808000,
  olivedrab: 0x6b8e23,
  orange: 0xffa500,
  orangered: 0xff4500,
  orchid: 0xda70d6,
  palegoldenrod: 0xeee8aa,
  palegreen: 0x98fb98,
  paleturquoise: 0xafeeee,
  palevioletred: 0xdb7093,
  papayawhip: 0xffefd5,
  peachpuff: 0xffdab9,
  peru: 0xcd853f,
  pink: 0xffc0cb,
  plum: 0xdda0dd,
  powderblue: 0xb0e0e6,
  purple: 0x800080,
  rebeccapurple: 0x663399,
  red: 0xff0000,
  rosybrown: 0xbc8f8f,
  royalblue: 0x4169e1,
  saddlebrown: 0x8b4513,
  salmon: 0xfa8072,
  sandybrown: 0xf4a460,
  seagreen: 0x2e8b57,
  seashell: 0xfff5ee,
  sienna: 0xa0522d,
  silver: 0xc0c0c0,
  skyblue: 0x87ceeb,
  slateblue: 0x6a5acd,
  slategray: 0x708090,
  slategrey: 0x708090,
  snow: 0xfffafa,
  springgreen: 0x00ff7f,
  steelblue: 0x4682b4,
  tan: 0xd2b48c,
  teal: 0x008080,
  thistle: 0xd8bfd8,
  tomato: 0xff6347,
  turquoise: 0x40e0d0,
  violet: 0xee82ee,
  wheat: 0xf5deb3,
  white: 0xffffff,
  whitesmoke: 0xf5f5f5,
  yellow: 0xffff00,
  yellowgreen: 0x9acd32
};

define(Color, color, {
  copy(channels) {
    return Object.assign(new this.constructor, this, channels);
  },
  displayable() {
    return this.rgb().displayable();
  },
  hex: color_formatHex, // Deprecated! Use color.formatHex.
  formatHex: color_formatHex,
  formatHex8: color_formatHex8,
  formatHsl: color_formatHsl,
  formatRgb: color_formatRgb,
  toString: color_formatRgb
});

function color_formatHex() {
  return this.rgb().formatHex();
}

function color_formatHex8() {
  return this.rgb().formatHex8();
}

function color_formatHsl() {
  return hslConvert(this).formatHsl();
}

function color_formatRgb() {
  return this.rgb().formatRgb();
}

function color(format) {
  var m, l;
  format = (format + "").trim().toLowerCase();
  return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000
      : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00
      : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000
      : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000
      : null) // invalid hex
      : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)
      : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)
      : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)
      : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)
      : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)
      : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)
      : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins
      : format === "transparent" ? new Rgb(NaN, NaN, NaN, 0)
      : null;
}

function rgbn(n) {
  return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);
}

function rgba(r, g, b, a) {
  if (a <= 0) r = g = b = NaN;
  return new Rgb(r, g, b, a);
}

function rgbConvert(o) {
  if (!(o instanceof Color)) o = color(o);
  if (!o) return new Rgb;
  o = o.rgb();
  return new Rgb(o.r, o.g, o.b, o.opacity);
}

function rgb(r, g, b, opacity) {
  return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);
}

function Rgb(r, g, b, opacity) {
  this.r = +r;
  this.g = +g;
  this.b = +b;
  this.opacity = +opacity;
}

define(Rgb, rgb, extend(Color, {
  brighter(k) {
    k = k == null ? brighter : Math.pow(brighter, k);
    return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);
  },
  darker(k) {
    k = k == null ? darker : Math.pow(darker, k);
    return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);
  },
  rgb() {
    return this;
  },
  clamp() {
    return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));
  },
  displayable() {
    return (-0.5 <= this.r && this.r < 255.5)
        && (-0.5 <= this.g && this.g < 255.5)
        && (-0.5 <= this.b && this.b < 255.5)
        && (0 <= this.opacity && this.opacity <= 1);
  },
  hex: rgb_formatHex, // Deprecated! Use color.formatHex.
  formatHex: rgb_formatHex,
  formatHex8: rgb_formatHex8,
  formatRgb: rgb_formatRgb,
  toString: rgb_formatRgb
}));

function rgb_formatHex() {
  return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;
}

function rgb_formatHex8() {
  return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;
}

function rgb_formatRgb() {
  const a = clampa(this.opacity);
  return `${a === 1 ? "rgb(" : "rgba("}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? ")" : `, ${a})`}`;
}

function clampa(opacity) {
  return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));
}

function clampi(value) {
  return Math.max(0, Math.min(255, Math.round(value) || 0));
}

function hex(value) {
  value = clampi(value);
  return (value < 16 ? "0" : "") + value.toString(16);
}

function hsla(h, s, l, a) {
  if (a <= 0) h = s = l = NaN;
  else if (l <= 0 || l >= 1) h = s = NaN;
  else if (s <= 0) h = NaN;
  return new Hsl(h, s, l, a);
}

function hslConvert(o) {
  if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);
  if (!(o instanceof Color)) o = color(o);
  if (!o) return new Hsl;
  if (o instanceof Hsl) return o;
  o = o.rgb();
  var r = o.r / 255,
      g = o.g / 255,
      b = o.b / 255,
      min = Math.min(r, g, b),
      max = Math.max(r, g, b),
      h = NaN,
      s = max - min,
      l = (max + min) / 2;
  if (s) {
    if (r === max) h = (g - b) / s + (g < b) * 6;
    else if (g === max) h = (b - r) / s + 2;
    else h = (r - g) / s + 4;
    s /= l < 0.5 ? max + min : 2 - max - min;
    h *= 60;
  } else {
    s = l > 0 && l < 1 ? 0 : h;
  }
  return new Hsl(h, s, l, o.opacity);
}

function hsl(h, s, l, opacity) {
  return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);
}

function Hsl(h, s, l, opacity) {
  this.h = +h;
  this.s = +s;
  this.l = +l;
  this.opacity = +opacity;
}

define(Hsl, hsl, extend(Color, {
  brighter(k) {
    k = k == null ? brighter : Math.pow(brighter, k);
    return new Hsl(this.h, this.s, this.l * k, this.opacity);
  },
  darker(k) {
    k = k == null ? darker : Math.pow(darker, k);
    return new Hsl(this.h, this.s, this.l * k, this.opacity);
  },
  rgb() {
    var h = this.h % 360 + (this.h < 0) * 360,
        s = isNaN(h) || isNaN(this.s) ? 0 : this.s,
        l = this.l,
        m2 = l + (l < 0.5 ? l : 1 - l) * s,
        m1 = 2 * l - m2;
    return new Rgb(
      hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),
      hsl2rgb(h, m1, m2),
      hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),
      this.opacity
    );
  },
  clamp() {
    return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));
  },
  displayable() {
    return (0 <= this.s && this.s <= 1 || isNaN(this.s))
        && (0 <= this.l && this.l <= 1)
        && (0 <= this.opacity && this.opacity <= 1);
  },
  formatHsl() {
    const a = clampa(this.opacity);
    return `${a === 1 ? "hsl(" : "hsla("}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? ")" : `, ${a})`}`;
  }
}));

function clamph(value) {
  value = (value || 0) % 360;
  return value < 0 ? value + 360 : value;
}

function clampt(value) {
  return Math.max(0, Math.min(1, value || 0));
}

/* From FvD 13.37, CSS Color Module Level 3 */
function hsl2rgb(h, m1, m2) {
  return (h < 60 ? m1 + (m2 - m1) * h / 60
      : h < 180 ? m2
      : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60
      : m1) * 255;
}

var constant = x => () => x;

function linear(a, d) {
  return function(t) {
    return a + t * d;
  };
}

function exponential(a, b, y) {
  return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {
    return Math.pow(a + t * b, y);
  };
}

function gamma(y) {
  return (y = +y) === 1 ? nogamma : function(a, b) {
    return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);
  };
}

function nogamma(a, b) {
  var d = b - a;
  return d ? linear(a, d) : constant(isNaN(a) ? b : a);
}

var interpolateRgb = (function rgbGamma(y) {
  var color = gamma(y);

  function rgb$1(start, end) {
    var r = color((start = rgb(start)).r, (end = rgb(end)).r),
        g = color(start.g, end.g),
        b = color(start.b, end.b),
        opacity = nogamma(start.opacity, end.opacity);
    return function(t) {
      start.r = r(t);
      start.g = g(t);
      start.b = b(t);
      start.opacity = opacity(t);
      return start + "";
    };
  }

  rgb$1.gamma = rgbGamma;

  return rgb$1;
})(1);

function interpolateNumber(a, b) {
  return a = +a, b = +b, function(t) {
    return a * (1 - t) + b * t;
  };
}

var reA = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,
    reB = new RegExp(reA.source, "g");

function zero(b) {
  return function() {
    return b;
  };
}

function one(b) {
  return function(t) {
    return b(t) + "";
  };
}

function interpolateString(a, b) {
  var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b
      am, // current match in a
      bm, // current match in b
      bs, // string preceding current number in b, if any
      i = -1, // index in s
      s = [], // string constants and placeholders
      q = []; // number interpolators

  // Coerce inputs to strings.
  a = a + "", b = b + "";

  // Interpolate pairs of numbers in a & b.
  while ((am = reA.exec(a))
      && (bm = reB.exec(b))) {
    if ((bs = bm.index) > bi) { // a string precedes the next number in b
      bs = b.slice(bi, bs);
      if (s[i]) s[i] += bs; // coalesce with previous string
      else s[++i] = bs;
    }
    if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match
      if (s[i]) s[i] += bm; // coalesce with previous string
      else s[++i] = bm;
    } else { // interpolate non-matching numbers
      s[++i] = null;
      q.push({i: i, x: interpolateNumber(am, bm)});
    }
    bi = reB.lastIndex;
  }

  // Add remains of b.
  if (bi < b.length) {
    bs = b.slice(bi);
    if (s[i]) s[i] += bs; // coalesce with previous string
    else s[++i] = bs;
  }

  // Special optimization for only a single match.
  // Otherwise, interpolate each of the numbers and rejoin the string.
  return s.length < 2 ? (q[0]
      ? one(q[0].x)
      : zero(b))
      : (b = q.length, function(t) {
          for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);
          return s.join("");
        });
}

var degrees = 180 / Math.PI;

var identity = {
  translateX: 0,
  translateY: 0,
  rotate: 0,
  skewX: 0,
  scaleX: 1,
  scaleY: 1
};

function decompose(a, b, c, d, e, f) {
  var scaleX, scaleY, skewX;
  if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;
  if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;
  if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;
  if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;
  return {
    translateX: e,
    translateY: f,
    rotate: Math.atan2(b, a) * degrees,
    skewX: Math.atan(skewX) * degrees,
    scaleX: scaleX,
    scaleY: scaleY
  };
}

var svgNode;

/* eslint-disable no-undef */
function parseCss(value) {
  const m = new (typeof DOMMatrix === "function" ? DOMMatrix : WebKitCSSMatrix)(value + "");
  return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);
}

function parseSvg(value) {
  if (value == null) return identity;
  if (!svgNode) svgNode = document.createElementNS("http://www.w3.org/2000/svg", "g");
  svgNode.setAttribute("transform", value);
  if (!(value = svgNode.transform.baseVal.consolidate())) return identity;
  value = value.matrix;
  return decompose(value.a, value.b, value.c, value.d, value.e, value.f);
}

function interpolateTransform(parse, pxComma, pxParen, degParen) {

  function pop(s) {
    return s.length ? s.pop() + " " : "";
  }

  function translate(xa, ya, xb, yb, s, q) {
    if (xa !== xb || ya !== yb) {
      var i = s.push("translate(", null, pxComma, null, pxParen);
      q.push({i: i - 4, x: interpolateNumber(xa, xb)}, {i: i - 2, x: interpolateNumber(ya, yb)});
    } else if (xb || yb) {
      s.push("translate(" + xb + pxComma + yb + pxParen);
    }
  }

  function rotate(a, b, s, q) {
    if (a !== b) {
      if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path
      q.push({i: s.push(pop(s) + "rotate(", null, degParen) - 2, x: interpolateNumber(a, b)});
    } else if (b) {
      s.push(pop(s) + "rotate(" + b + degParen);
    }
  }

  function skewX(a, b, s, q) {
    if (a !== b) {
      q.push({i: s.push(pop(s) + "skewX(", null, degParen) - 2, x: interpolateNumber(a, b)});
    } else if (b) {
      s.push(pop(s) + "skewX(" + b + degParen);
    }
  }

  function scale(xa, ya, xb, yb, s, q) {
    if (xa !== xb || ya !== yb) {
      var i = s.push(pop(s) + "scale(", null, ",", null, ")");
      q.push({i: i - 4, x: interpolateNumber(xa, xb)}, {i: i - 2, x: interpolateNumber(ya, yb)});
    } else if (xb !== 1 || yb !== 1) {
      s.push(pop(s) + "scale(" + xb + "," + yb + ")");
    }
  }

  return function(a, b) {
    var s = [], // string constants and placeholders
        q = []; // number interpolators
    a = parse(a), b = parse(b);
    translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);
    rotate(a.rotate, b.rotate, s, q);
    skewX(a.skewX, b.skewX, s, q);
    scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);
    a = b = null; // gc
    return function(t) {
      var i = -1, n = q.length, o;
      while (++i < n) s[(o = q[i]).i] = o.x(t);
      return s.join("");
    };
  };
}

var interpolateTransformCss = interpolateTransform(parseCss, "px, ", "px)", "deg)");
var interpolateTransformSvg = interpolateTransform(parseSvg, ", ", ")", ")");

var frame = 0, // is an animation frame pending?
    timeout$1 = 0, // is a timeout pending?
    interval = 0, // are any timers active?
    pokeDelay = 1000, // how frequently we check for clock skew
    taskHead,
    taskTail,
    clockLast = 0,
    clockNow = 0,
    clockSkew = 0,
    clock = typeof performance === "object" && performance.now ? performance : Date,
    setFrame = typeof window === "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };

function now() {
  return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);
}

function clearNow() {
  clockNow = 0;
}

function Timer() {
  this._call =
  this._time =
  this._next = null;
}

Timer.prototype = timer.prototype = {
  constructor: Timer,
  restart: function(callback, delay, time) {
    if (typeof callback !== "function") throw new TypeError("callback is not a function");
    time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);
    if (!this._next && taskTail !== this) {
      if (taskTail) taskTail._next = this;
      else taskHead = this;
      taskTail = this;
    }
    this._call = callback;
    this._time = time;
    sleep();
  },
  stop: function() {
    if (this._call) {
      this._call = null;
      this._time = Infinity;
      sleep();
    }
  }
};

function timer(callback, delay, time) {
  var t = new Timer;
  t.restart(callback, delay, time);
  return t;
}

function timerFlush() {
  now(); // Get the current time, if not already set.
  ++frame; // Pretend we’ve set an alarm, if we haven’t already.
  var t = taskHead, e;
  while (t) {
    if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);
    t = t._next;
  }
  --frame;
}

function wake() {
  clockNow = (clockLast = clock.now()) + clockSkew;
  frame = timeout$1 = 0;
  try {
    timerFlush();
  } finally {
    frame = 0;
    nap();
    clockNow = 0;
  }
}

function poke() {
  var now = clock.now(), delay = now - clockLast;
  if (delay > pokeDelay) clockSkew -= delay, clockLast = now;
}

function nap() {
  var t0, t1 = taskHead, t2, time = Infinity;
  while (t1) {
    if (t1._call) {
      if (time > t1._time) time = t1._time;
      t0 = t1, t1 = t1._next;
    } else {
      t2 = t1._next, t1._next = null;
      t1 = t0 ? t0._next = t2 : taskHead = t2;
    }
  }
  taskTail = t0;
  sleep(time);
}

function sleep(time) {
  if (frame) return; // Soonest alarm already set, or will be.
  if (timeout$1) timeout$1 = clearTimeout(timeout$1);
  var delay = time - clockNow; // Strictly less than if we recomputed clockNow.
  if (delay > 24) {
    if (time < Infinity) timeout$1 = setTimeout(wake, time - clock.now() - clockSkew);
    if (interval) interval = clearInterval(interval);
  } else {
    if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);
    frame = 1, setFrame(wake);
  }
}

function timeout(callback, delay, time) {
  var t = new Timer;
  delay = delay == null ? 0 : +delay;
  t.restart(elapsed => {
    t.stop();
    callback(elapsed + delay);
  }, delay, time);
  return t;
}

var emptyOn = dispatch("start", "end", "cancel", "interrupt");
var emptyTween = [];

var CREATED = 0;
var SCHEDULED = 1;
var STARTING = 2;
var STARTED = 3;
var RUNNING = 4;
var ENDING = 5;
var ENDED = 6;

function schedule(node, name, id, index, group, timing) {
  var schedules = node.__transition;
  if (!schedules) node.__transition = {};
  else if (id in schedules) return;
  create(node, id, {
    name: name,
    index: index, // For context during callback.
    group: group, // For context during callback.
    on: emptyOn,
    tween: emptyTween,
    time: timing.time,
    delay: timing.delay,
    duration: timing.duration,
    ease: timing.ease,
    timer: null,
    state: CREATED
  });
}

function init(node, id) {
  var schedule = get(node, id);
  if (schedule.state > CREATED) throw new Error("too late; already scheduled");
  return schedule;
}

function set(node, id) {
  var schedule = get(node, id);
  if (schedule.state > STARTED) throw new Error("too late; already running");
  return schedule;
}

function get(node, id) {
  var schedule = node.__transition;
  if (!schedule || !(schedule = schedule[id])) throw new Error("transition not found");
  return schedule;
}

function create(node, id, self) {
  var schedules = node.__transition,
      tween;

  // Initialize the self timer when the transition is created.
  // Note the actual delay is not known until the first callback!
  schedules[id] = self;
  self.timer = timer(schedule, 0, self.time);

  function schedule(elapsed) {
    self.state = SCHEDULED;
    self.timer.restart(start, self.delay, self.time);

    // If the elapsed delay is less than our first sleep, start immediately.
    if (self.delay <= elapsed) start(elapsed - self.delay);
  }

  function start(elapsed) {
    var i, j, n, o;

    // If the state is not SCHEDULED, then we previously errored on start.
    if (self.state !== SCHEDULED) return stop();

    for (i in schedules) {
      o = schedules[i];
      if (o.name !== self.name) continue;

      // While this element already has a starting transition during this frame,
      // defer starting an interrupting transition until that transition has a
      // chance to tick (and possibly end); see d3/d3-transition#54!
      if (o.state === STARTED) return timeout(start);

      // Interrupt the active transition, if any.
      if (o.state === RUNNING) {
        o.state = ENDED;
        o.timer.stop();
        o.on.call("interrupt", node, node.__data__, o.index, o.group);
        delete schedules[i];
      }

      // Cancel any pre-empted transitions.
      else if (+i < id) {
        o.state = ENDED;
        o.timer.stop();
        o.on.call("cancel", node, node.__data__, o.index, o.group);
        delete schedules[i];
      }
    }

    // Defer the first tick to end of the current frame; see d3/d3#1576.
    // Note the transition may be canceled after start and before the first tick!
    // Note this must be scheduled before the start event; see d3/d3-transition#16!
    // Assuming this is successful, subsequent callbacks go straight to tick.
    timeout(function() {
      if (self.state === STARTED) {
        self.state = RUNNING;
        self.timer.restart(tick, self.delay, self.time);
        tick(elapsed);
      }
    });

    // Dispatch the start event.
    // Note this must be done before the tween are initialized.
    self.state = STARTING;
    self.on.call("start", node, node.__data__, self.index, self.group);
    if (self.state !== STARTING) return; // interrupted
    self.state = STARTED;

    // Initialize the tween, deleting null tween.
    tween = new Array(n = self.tween.length);
    for (i = 0, j = -1; i < n; ++i) {
      if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {
        tween[++j] = o;
      }
    }
    tween.length = j + 1;
  }

  function tick(elapsed) {
    var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),
        i = -1,
        n = tween.length;

    while (++i < n) {
      tween[i].call(node, t);
    }

    // Dispatch the end event.
    if (self.state === ENDING) {
      self.on.call("end", node, node.__data__, self.index, self.group);
      stop();
    }
  }

  function stop() {
    self.state = ENDED;
    self.timer.stop();
    delete schedules[id];
    for (var i in schedules) return; // eslint-disable-line no-unused-vars
    delete node.__transition;
  }
}

function interrupt(node, name) {
  var schedules = node.__transition,
      schedule,
      active,
      empty = true,
      i;

  if (!schedules) return;

  name = name == null ? null : name + "";

  for (i in schedules) {
    if ((schedule = schedules[i]).name !== name) { empty = false; continue; }
    active = schedule.state > STARTING && schedule.state < ENDING;
    schedule.state = ENDED;
    schedule.timer.stop();
    schedule.on.call(active ? "interrupt" : "cancel", node, node.__data__, schedule.index, schedule.group);
    delete schedules[i];
  }

  if (empty) delete node.__transition;
}

function selection_interrupt(name) {
  return this.each(function() {
    interrupt(this, name);
  });
}

function tweenRemove(id, name) {
  var tween0, tween1;
  return function() {
    var schedule = set(this, id),
        tween = schedule.tween;

    // If this node shared tween with the previous node,
    // just assign the updated shared tween and we’re done!
    // Otherwise, copy-on-write.
    if (tween !== tween0) {
      tween1 = tween0 = tween;
      for (var i = 0, n = tween1.length; i < n; ++i) {
        if (tween1[i].name === name) {
          tween1 = tween1.slice();
          tween1.splice(i, 1);
          break;
        }
      }
    }

    schedule.tween = tween1;
  };
}

function tweenFunction(id, name, value) {
  var tween0, tween1;
  if (typeof value !== "function") throw new Error;
  return function() {
    var schedule = set(this, id),
        tween = schedule.tween;

    // If this node shared tween with the previous node,
    // just assign the updated shared tween and we’re done!
    // Otherwise, copy-on-write.
    if (tween !== tween0) {
      tween1 = (tween0 = tween).slice();
      for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {
        if (tween1[i].name === name) {
          tween1[i] = t;
          break;
        }
      }
      if (i === n) tween1.push(t);
    }

    schedule.tween = tween1;
  };
}

function transition_tween(name, value) {
  var id = this._id;

  name += "";

  if (arguments.length < 2) {
    var tween = get(this.node(), id).tween;
    for (var i = 0, n = tween.length, t; i < n; ++i) {
      if ((t = tween[i]).name === name) {
        return t.value;
      }
    }
    return null;
  }

  return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));
}

function tweenValue(transition, name, value) {
  var id = transition._id;

  transition.each(function() {
    var schedule = set(this, id);
    (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);
  });

  return function(node) {
    return get(node, id).value[name];
  };
}

function interpolate(a, b) {
  var c;
  return (typeof b === "number" ? interpolateNumber
      : b instanceof color ? interpolateRgb
      : (c = color(b)) ? (b = c, interpolateRgb)
      : interpolateString)(a, b);
}

function attrRemove(name) {
  return function() {
    this.removeAttribute(name);
  };
}

function attrRemoveNS(fullname) {
  return function() {
    this.removeAttributeNS(fullname.space, fullname.local);
  };
}

function attrConstant(name, interpolate, value1) {
  var string00,
      string1 = value1 + "",
      interpolate0;
  return function() {
    var string0 = this.getAttribute(name);
    return string0 === string1 ? null
        : string0 === string00 ? interpolate0
        : interpolate0 = interpolate(string00 = string0, value1);
  };
}

function attrConstantNS(fullname, interpolate, value1) {
  var string00,
      string1 = value1 + "",
      interpolate0;
  return function() {
    var string0 = this.getAttributeNS(fullname.space, fullname.local);
    return string0 === string1 ? null
        : string0 === string00 ? interpolate0
        : interpolate0 = interpolate(string00 = string0, value1);
  };
}

function attrFunction(name, interpolate, value) {
  var string00,
      string10,
      interpolate0;
  return function() {
    var string0, value1 = value(this), string1;
    if (value1 == null) return void this.removeAttribute(name);
    string0 = this.getAttribute(name);
    string1 = value1 + "";
    return string0 === string1 ? null
        : string0 === string00 && string1 === string10 ? interpolate0
        : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
  };
}

function attrFunctionNS(fullname, interpolate, value) {
  var string00,
      string10,
      interpolate0;
  return function() {
    var string0, value1 = value(this), string1;
    if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);
    string0 = this.getAttributeNS(fullname.space, fullname.local);
    string1 = value1 + "";
    return string0 === string1 ? null
        : string0 === string00 && string1 === string10 ? interpolate0
        : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
  };
}

function transition_attr(name, value) {
  var fullname = namespace(name), i = fullname === "transform" ? interpolateTransformSvg : interpolate;
  return this.attrTween(name, typeof value === "function"
      ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, "attr." + name, value))
      : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)
      : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));
}

function attrInterpolate(name, i) {
  return function(t) {
    this.setAttribute(name, i.call(this, t));
  };
}

function attrInterpolateNS(fullname, i) {
  return function(t) {
    this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));
  };
}

function attrTweenNS(fullname, value) {
  var t0, i0;
  function tween() {
    var i = value.apply(this, arguments);
    if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);
    return t0;
  }
  tween._value = value;
  return tween;
}

function attrTween(name, value) {
  var t0, i0;
  function tween() {
    var i = value.apply(this, arguments);
    if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);
    return t0;
  }
  tween._value = value;
  return tween;
}

function transition_attrTween(name, value) {
  var key = "attr." + name;
  if (arguments.length < 2) return (key = this.tween(key)) && key._value;
  if (value == null) return this.tween(key, null);
  if (typeof value !== "function") throw new Error;
  var fullname = namespace(name);
  return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));
}

function delayFunction(id, value) {
  return function() {
    init(this, id).delay = +value.apply(this, arguments);
  };
}

function delayConstant(id, value) {
  return value = +value, function() {
    init(this, id).delay = value;
  };
}

function transition_delay(value) {
  var id = this._id;

  return arguments.length
      ? this.each((typeof value === "function"
          ? delayFunction
          : delayConstant)(id, value))
      : get(this.node(), id).delay;
}

function durationFunction(id, value) {
  return function() {
    set(this, id).duration = +value.apply(this, arguments);
  };
}

function durationConstant(id, value) {
  return value = +value, function() {
    set(this, id).duration = value;
  };
}

function transition_duration(value) {
  var id = this._id;

  return arguments.length
      ? this.each((typeof value === "function"
          ? durationFunction
          : durationConstant)(id, value))
      : get(this.node(), id).duration;
}

function easeConstant(id, value) {
  if (typeof value !== "function") throw new Error;
  return function() {
    set(this, id).ease = value;
  };
}

function transition_ease(value) {
  var id = this._id;

  return arguments.length
      ? this.each(easeConstant(id, value))
      : get(this.node(), id).ease;
}

function easeVarying(id, value) {
  return function() {
    var v = value.apply(this, arguments);
    if (typeof v !== "function") throw new Error;
    set(this, id).ease = v;
  };
}

function transition_easeVarying(value) {
  if (typeof value !== "function") throw new Error;
  return this.each(easeVarying(this._id, value));
}

function transition_filter(match) {
  if (typeof match !== "function") match = matcher(match);

  for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {
      if ((node = group[i]) && match.call(node, node.__data__, i, group)) {
        subgroup.push(node);
      }
    }
  }

  return new Transition(subgroups, this._parents, this._name, this._id);
}

function transition_merge(transition) {
  if (transition._id !== this._id) throw new Error;

  for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {
    for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {
      if (node = group0[i] || group1[i]) {
        merge[i] = node;
      }
    }
  }

  for (; j < m0; ++j) {
    merges[j] = groups0[j];
  }

  return new Transition(merges, this._parents, this._name, this._id);
}

function start(name) {
  return (name + "").trim().split(/^|\s+/).every(function(t) {
    var i = t.indexOf(".");
    if (i >= 0) t = t.slice(0, i);
    return !t || t === "start";
  });
}

function onFunction(id, name, listener) {
  var on0, on1, sit = start(name) ? init : set;
  return function() {
    var schedule = sit(this, id),
        on = schedule.on;

    // If this node shared a dispatch with the previous node,
    // just assign the updated shared dispatch and we’re done!
    // Otherwise, copy-on-write.
    if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);

    schedule.on = on1;
  };
}

function transition_on(name, listener) {
  var id = this._id;

  return arguments.length < 2
      ? get(this.node(), id).on.on(name)
      : this.each(onFunction(id, name, listener));
}

function removeFunction(id) {
  return function() {
    var parent = this.parentNode;
    for (var i in this.__transition) if (+i !== id) return;
    if (parent) parent.removeChild(this);
  };
}

function transition_remove() {
  return this.on("end.remove", removeFunction(this._id));
}

function transition_select(select) {
  var name = this._name,
      id = this._id;

  if (typeof select !== "function") select = selector(select);

  for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {
      if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {
        if ("__data__" in node) subnode.__data__ = node.__data__;
        subgroup[i] = subnode;
        schedule(subgroup[i], name, id, i, subgroup, get(node, id));
      }
    }
  }

  return new Transition(subgroups, this._parents, name, id);
}

function transition_selectAll(select) {
  var name = this._name,
      id = this._id;

  if (typeof select !== "function") select = selectorAll(select);

  for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
      if (node = group[i]) {
        for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {
          if (child = children[k]) {
            schedule(child, name, id, k, children, inherit);
          }
        }
        subgroups.push(children);
        parents.push(node);
      }
    }
  }

  return new Transition(subgroups, parents, name, id);
}

var Selection = selection.prototype.constructor;

function transition_selection() {
  return new Selection(this._groups, this._parents);
}

function styleNull(name, interpolate) {
  var string00,
      string10,
      interpolate0;
  return function() {
    var string0 = styleValue(this, name),
        string1 = (this.style.removeProperty(name), styleValue(this, name));
    return string0 === string1 ? null
        : string0 === string00 && string1 === string10 ? interpolate0
        : interpolate0 = interpolate(string00 = string0, string10 = string1);
  };
}

function styleRemove(name) {
  return function() {
    this.style.removeProperty(name);
  };
}

function styleConstant(name, interpolate, value1) {
  var string00,
      string1 = value1 + "",
      interpolate0;
  return function() {
    var string0 = styleValue(this, name);
    return string0 === string1 ? null
        : string0 === string00 ? interpolate0
        : interpolate0 = interpolate(string00 = string0, value1);
  };
}

function styleFunction(name, interpolate, value) {
  var string00,
      string10,
      interpolate0;
  return function() {
    var string0 = styleValue(this, name),
        value1 = value(this),
        string1 = value1 + "";
    if (value1 == null) string1 = value1 = (this.style.removeProperty(name), styleValue(this, name));
    return string0 === string1 ? null
        : string0 === string00 && string1 === string10 ? interpolate0
        : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
  };
}

function styleMaybeRemove(id, name) {
  var on0, on1, listener0, key = "style." + name, event = "end." + key, remove;
  return function() {
    var schedule = set(this, id),
        on = schedule.on,
        listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;

    // If this node shared a dispatch with the previous node,
    // just assign the updated shared dispatch and we’re done!
    // Otherwise, copy-on-write.
    if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);

    schedule.on = on1;
  };
}

function transition_style(name, value, priority) {
  var i = (name += "") === "transform" ? interpolateTransformCss : interpolate;
  return value == null ? this
      .styleTween(name, styleNull(name, i))
      .on("end.style." + name, styleRemove(name))
    : typeof value === "function" ? this
      .styleTween(name, styleFunction(name, i, tweenValue(this, "style." + name, value)))
      .each(styleMaybeRemove(this._id, name))
    : this
      .styleTween(name, styleConstant(name, i, value), priority)
      .on("end.style." + name, null);
}

function styleInterpolate(name, i, priority) {
  return function(t) {
    this.style.setProperty(name, i.call(this, t), priority);
  };
}

function styleTween(name, value, priority) {
  var t, i0;
  function tween() {
    var i = value.apply(this, arguments);
    if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);
    return t;
  }
  tween._value = value;
  return tween;
}

function transition_styleTween(name, value, priority) {
  var key = "style." + (name += "");
  if (arguments.length < 2) return (key = this.tween(key)) && key._value;
  if (value == null) return this.tween(key, null);
  if (typeof value !== "function") throw new Error;
  return this.tween(key, styleTween(name, value, priority == null ? "" : priority));
}

function textConstant(value) {
  return function() {
    this.textContent = value;
  };
}

function textFunction(value) {
  return function() {
    var value1 = value(this);
    this.textContent = value1 == null ? "" : value1;
  };
}

function transition_text(value) {
  return this.tween("text", typeof value === "function"
      ? textFunction(tweenValue(this, "text", value))
      : textConstant(value == null ? "" : value + ""));
}

function textInterpolate(i) {
  return function(t) {
    this.textContent = i.call(this, t);
  };
}

function textTween(value) {
  var t0, i0;
  function tween() {
    var i = value.apply(this, arguments);
    if (i !== i0) t0 = (i0 = i) && textInterpolate(i);
    return t0;
  }
  tween._value = value;
  return tween;
}

function transition_textTween(value) {
  var key = "text";
  if (arguments.length < 1) return (key = this.tween(key)) && key._value;
  if (value == null) return this.tween(key, null);
  if (typeof value !== "function") throw new Error;
  return this.tween(key, textTween(value));
}

function transition_transition() {
  var name = this._name,
      id0 = this._id,
      id1 = newId();

  for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
      if (node = group[i]) {
        var inherit = get(node, id0);
        schedule(node, name, id1, i, group, {
          time: inherit.time + inherit.delay + inherit.duration,
          delay: 0,
          duration: inherit.duration,
          ease: inherit.ease
        });
      }
    }
  }

  return new Transition(groups, this._parents, name, id1);
}

function transition_end() {
  var on0, on1, that = this, id = that._id, size = that.size();
  return new Promise(function(resolve, reject) {
    var cancel = {value: reject},
        end = {value: function() { if (--size === 0) resolve(); }};

    that.each(function() {
      var schedule = set(this, id),
          on = schedule.on;

      // If this node shared a dispatch with the previous node,
      // just assign the updated shared dispatch and we’re done!
      // Otherwise, copy-on-write.
      if (on !== on0) {
        on1 = (on0 = on).copy();
        on1._.cancel.push(cancel);
        on1._.interrupt.push(cancel);
        on1._.end.push(end);
      }

      schedule.on = on1;
    });

    // The selection was empty, resolve end immediately
    if (size === 0) resolve();
  });
}

var id = 0;

function Transition(groups, parents, name, id) {
  this._groups = groups;
  this._parents = parents;
  this._name = name;
  this._id = id;
}

function newId() {
  return ++id;
}

var selection_prototype = selection.prototype;

Transition.prototype = {
  constructor: Transition,
  select: transition_select,
  selectAll: transition_selectAll,
  selectChild: selection_prototype.selectChild,
  selectChildren: selection_prototype.selectChildren,
  filter: transition_filter,
  merge: transition_merge,
  selection: transition_selection,
  transition: transition_transition,
  call: selection_prototype.call,
  nodes: selection_prototype.nodes,
  node: selection_prototype.node,
  size: selection_prototype.size,
  empty: selection_prototype.empty,
  each: selection_prototype.each,
  on: transition_on,
  attr: transition_attr,
  attrTween: transition_attrTween,
  style: transition_style,
  styleTween: transition_styleTween,
  text: transition_text,
  textTween: transition_textTween,
  remove: transition_remove,
  tween: transition_tween,
  delay: transition_delay,
  duration: transition_duration,
  ease: transition_ease,
  easeVarying: transition_easeVarying,
  end: transition_end,
  [Symbol.iterator]: selection_prototype[Symbol.iterator]
};

function cubicInOut(t) {
  return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;
}

var defaultTiming = {
  time: null, // Set on use.
  delay: 0,
  duration: 250,
  ease: cubicInOut
};

function inherit(node, id) {
  var timing;
  while (!(timing = node.__transition) || !(timing = timing[id])) {
    if (!(node = node.parentNode)) {
      throw new Error(`transition ${id} not found`);
    }
  }
  return timing;
}

function selection_transition(name) {
  var id,
      timing;

  if (name instanceof Transition) {
    id = name._id, name = name._name;
  } else {
    id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + "";
  }

  for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {
    for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
      if (node = group[i]) {
        schedule(node, name, id, i, group, timing || inherit(node, id));
      }
    }
  }

  return new Transition(groups, this._parents, name, id);
}

selection.prototype.interrupt = selection_interrupt;
selection.prototype.transition = selection_transition;

function Transform(k, x, y) {
  this.k = k;
  this.x = x;
  this.y = y;
}

Transform.prototype = {
  constructor: Transform,
  scale: function(k) {
    return k === 1 ? this : new Transform(this.k * k, this.x, this.y);
  },
  translate: function(x, y) {
    return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);
  },
  apply: function(point) {
    return [point[0] * this.k + this.x, point[1] * this.k + this.y];
  },
  applyX: function(x) {
    return x * this.k + this.x;
  },
  applyY: function(y) {
    return y * this.k + this.y;
  },
  invert: function(location) {
    return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];
  },
  invertX: function(x) {
    return (x - this.x) / this.k;
  },
  invertY: function(y) {
    return (y - this.y) / this.k;
  },
  rescaleX: function(x) {
    return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));
  },
  rescaleY: function(y) {
    return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));
  },
  toString: function() {
    return "translate(" + this.x + "," + this.y + ") scale(" + this.k + ")";
  }
};

new Transform(1, 0, 0);

Transform.prototype;

var Container$2 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1q9gayd0"
} : {
  target: "e1q9gayd0",
  label: "Container"
})(function (_ref) {
  var theme = _ref.theme,
    expanded = _ref.expanded;
  return {
    display: 'flex',
    border: "1.5px solid ".concat(theme.ketcher.outline.color),
    borderRadius: '6px',
    padding: 5,
    maxHeight: '100%',
    minHeight: '150px',
    height: expanded ? 'auto' : '150px',
    width: expanded ? 'auto' : '150px',
    alignSelf: 'stretch',
    '& svg': {
      maxWidth: 'fit-content',
      margin: 'auto'
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJNaW5pYXR1cmUuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUN5QiIsImZpbGUiOiJNb25vbWVyTWluaWF0dXJlLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuZXhwb3J0IGNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXYoKHsgdGhlbWUsIGV4cGFuZGVkIH0pID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBib3JkZXI6IGAxLjVweCBzb2xpZCAke3RoZW1lLmtldGNoZXIub3V0bGluZS5jb2xvcn1gLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNnB4JyxcclxuICAgIHBhZGRpbmc6IDUsXHJcbiAgICBtYXhIZWlnaHQ6ICcxMDAlJyxcclxuICAgIG1pbkhlaWdodDogJzE1MHB4JyxcclxuICAgIGhlaWdodDogZXhwYW5kZWQgPyAnYXV0bycgOiAnMTUwcHgnLFxyXG4gICAgd2lkdGg6IGV4cGFuZGVkID8gJ2F1dG8nIDogJzE1MHB4JyxcclxuICAgIGFsaWduU2VsZjogJ3N0cmV0Y2gnLFxyXG4gICAgJyYgc3ZnJzoge1xyXG4gICAgICAgIG1heFdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgICAgIG1hcmdpbjogJ2F1dG8nLFxyXG4gICAgfSxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyTWluaWF0dXJlLnN0eWxlcy5qcy5tYXAiXX0= */");

var MonomerMiniature = function MonomerMiniature(_ref) {
  var monomer = _ref.monomer,
    expanded = _ref.expanded,
    selectedAttachmentPoint = _ref.selectedAttachmentPoint,
    connectedAttachmentPoints = _ref.connectedAttachmentPoints,
    usage = _ref.usage;
  var svgRef = useRef(null);
  useLayoutEffect(function () {
    var svg = svgRef.current;
    if (svg) {
      var svgElement = select(svg);
      if (monomer instanceof AmbiguousMonomer) {
        var centerX = (svg.width.baseVal.value - svg.x.baseVal.value) / 2;
        var centerY = (svg.height.baseVal.value - svg.y.baseVal.value) / 2;
        var position = new Vec2(centerX, centerY);
        var positionInAngstrom = Coordinates.canvasToModel(position);
        var variantMonomer = new AmbiguousMonomer(monomer.variantMonomerItem, positionInAngstrom);
        var renderer = new AmbiguousMonomerRenderer(variantMonomer);
        renderer.showExternal({
          canvas: svgElement,
          usage: usage,
          selectedAttachmentPoint: selectedAttachmentPoint,
          connectedAttachmentPoints: connectedAttachmentPoints
        });
      }
    }
  }, [selectedAttachmentPoint, connectedAttachmentPoints]);
  return jsx(Container$2, {
    expanded: expanded,
    children: jsx("svg", {
      ref: svgRef
    })
  });
};

var MonomerOverview = function MonomerOverview(_ref) {
  var monomer = _ref.monomer,
    attachmentPoints = _ref.attachmentPoints,
    connectedAttachmentPoints = _ref.connectedAttachmentPoints,
    selectedAttachmentPoint = _ref.selectedAttachmentPoint,
    usage = _ref.usage,
    needCache = _ref.needCache,
    update = _ref.update,
    expanded = _ref.expanded;
  var isAmbiguousMonomer = monomer instanceof AmbiguousMonomer;
  var isUnresolvedMonomer = monomer.monomerItem.props.unresolved;
  return jsxs(Fragment, {
    children: [isAmbiguousMonomer ? jsx(MonomerMiniature, {
      monomer: monomer,
      expanded: expanded,
      selectedAttachmentPoint: selectedAttachmentPoint,
      connectedAttachmentPoints: connectedAttachmentPoints,
      usage: usage
    }) : isUnresolvedMonomer ? jsx(UnresolvedMonomerPreview, {}) : jsx(StyledStructRender$1, {
      struct: monomer.monomerItem.struct,
      options: {
        connectedMonomerAttachmentPoints: connectedAttachmentPoints,
        currentlySelectedMonomerAttachmentPoint: selectedAttachmentPoint !== null && selectedAttachmentPoint !== void 0 ? selectedAttachmentPoint : undefined,
        usageInMacromolecule: usage,
        labelInMonomerConnectionsModal: true,
        needCache: needCache !== null && needCache !== void 0 ? needCache : false
      },
      update: update,
      isExpanded: expanded
    }), jsx(AttachmentPointList, {
      children: attachmentPoints
    })]
  });
};

var MonomerName$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e14t14ao2"
} : {
  target: "e14t14ao2",
  label: "MonomerName"
})(function (_ref) {
  var theme = _ref.theme,
    isExpanded = _ref.isExpanded;
  return {
    margin: 0,
    padding: 0,
    textAlign: 'center',
    alignSelf: 'flex-end',
    display: 'block',
    font: theme.ketcher.font.family.inter,
    fontSize: theme.ketcher.font.size.regular,
    fontWeight: theme.ketcher.font.weight.regular,
    flexBasis: '200px',
    lineHeight: '14px',
    maxWidth: isExpanded ? undefined : '150px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQzJCIiwiZmlsZSI6IkNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTmFtZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUsIGlzRXhwYW5kZWQgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxyXG4gICAgYWxpZ25TZWxmOiAnZmxleC1lbmQnLFxyXG4gICAgZGlzcGxheTogJ2Jsb2NrJyxcclxuICAgIGZvbnQ6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxuICAgIGZsZXhCYXNpczogJzIwMHB4JyxcclxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcclxuICAgIG1heFdpZHRoOiBpc0V4cGFuZGVkID8gdW5kZWZpbmVkIDogJzE1MHB4JyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQ29ubmVjdGlvblN5bWJvbCA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiAxMCxcclxuICAgIGhlaWdodDogMixcclxuICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuaG92ZXIsXHJcbiAgICBib3JkZXJSYWRpdXM6IDIwLFxyXG4gICAgbWFyZ2luOiAnYXV0bycsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludHNSb3cgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZ3JpZCcsXHJcbiAgICBncmlkQXV0b0Zsb3c6ICdjb2x1bW4nLFxyXG4gICAgZ3JpZFRlbXBsYXRlUm93czogJ2F1dG8gYXV0byBhdXRvJyxcclxuICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM6ICcxZnIgMTBweCAxZnInLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxyXG4gICAgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgY29sdW1uR2FwOiAnMTJweCcsXHJcbiAgICByb3dHYXA6ICc4cHgnLFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMuanMubWFwIl19 */");
var ConnectionSymbol = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e14t14ao1"
} : {
  target: "e14t14ao1",
  label: "ConnectionSymbol"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    width: 10,
    height: 2,
    display: 'block',
    color: theme.ketcher.color.button.secondary.hover,
    backgroundColor: theme.ketcher.color.button.secondary.hover,
    borderRadius: 20,
    margin: 'auto'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY2dDIiwiZmlsZSI6IkNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNb25vbWVyTmFtZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUsIGlzRXhwYW5kZWQgfSkgPT4gKHtcclxuICAgIG1hcmdpbjogMCxcclxuICAgIHBhZGRpbmc6IDAsXHJcbiAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxyXG4gICAgYWxpZ25TZWxmOiAnZmxleC1lbmQnLFxyXG4gICAgZGlzcGxheTogJ2Jsb2NrJyxcclxuICAgIGZvbnQ6IHRoZW1lLmtldGNoZXIuZm9udC5mYW1pbHkuaW50ZXIsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxuICAgIGZsZXhCYXNpczogJzIwMHB4JyxcclxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcclxuICAgIG1heFdpZHRoOiBpc0V4cGFuZGVkID8gdW5kZWZpbmVkIDogJzE1MHB4JyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQ29ubmVjdGlvblN5bWJvbCA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiAxMCxcclxuICAgIGhlaWdodDogMixcclxuICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICBjb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyLFxyXG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5zZWNvbmRhcnkuaG92ZXIsXHJcbiAgICBib3JkZXJSYWRpdXM6IDIwLFxyXG4gICAgbWFyZ2luOiAnYXV0bycsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludHNSb3cgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZ3JpZCcsXHJcbiAgICBncmlkQXV0b0Zsb3c6ICdjb2x1bW4nLFxyXG4gICAgZ3JpZFRlbXBsYXRlUm93czogJ2F1dG8gYXV0byBhdXRvJyxcclxuICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM6ICcxZnIgMTBweCAxZnInLFxyXG4gICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxyXG4gICAgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLFxyXG4gICAgcGFkZGluZzogJzEycHgnLFxyXG4gICAgcGFkZGluZ0JvdHRvbTogMCxcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgY29sdW1uR2FwOiAnMTJweCcsXHJcbiAgICByb3dHYXA6ICc4cHgnLFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMuanMubWFwIl19 */");
var AttachmentPointsRow = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e14t14ao0"
} : {
  target: "e14t14ao0",
  label: "AttachmentPointsRow"
})(function () {
  return {
    display: 'grid',
    gridAutoFlow: 'column',
    gridTemplateRows: 'auto auto auto',
    gridTemplateColumns: '1fr 10px 1fr',
    justifyContent: 'center',
    alignItems: 'flex-start',
    padding: '12px',
    paddingBottom: 0,
    height: '100%',
    columnGap: '12px',
    rowGap: '8px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbm5lY3Rpb25PdmVydmlldy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUJtQyIsImZpbGUiOiJDb25uZWN0aW9uT3ZlcnZpZXcuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQuZGl2KCh7IHRoZW1lLCBpc0V4cGFuZGVkIH0pID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAwLFxyXG4gICAgdGV4dEFsaWduOiAnY2VudGVyJyxcclxuICAgIGFsaWduU2VsZjogJ2ZsZXgtZW5kJyxcclxuICAgIGRpc3BsYXk6ICdibG9jaycsXHJcbiAgICBmb250OiB0aGVtZS5rZXRjaGVyLmZvbnQuZmFtaWx5LmludGVyLFxyXG4gICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXIsXHJcbiAgICBmb250V2VpZ2h0OiB0aGVtZS5rZXRjaGVyLmZvbnQud2VpZ2h0LnJlZ3VsYXIsXHJcbiAgICBmbGV4QmFzaXM6ICcyMDBweCcsXHJcbiAgICBsaW5lSGVpZ2h0OiAnMTRweCcsXHJcbiAgICBtYXhXaWR0aDogaXNFeHBhbmRlZCA/IHVuZGVmaW5lZCA6ICcxNTBweCcsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IENvbm5lY3Rpb25TeW1ib2wgPSBzdHlsZWQuZGl2KCh7IHRoZW1lIH0pID0+ICh7XHJcbiAgICB3aWR0aDogMTAsXHJcbiAgICBoZWlnaHQ6IDIsXHJcbiAgICBkaXNwbGF5OiAnYmxvY2snLFxyXG4gICAgY29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnNlY29uZGFyeS5ob3ZlcixcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24uc2Vjb25kYXJ5LmhvdmVyLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAyMCxcclxuICAgIG1hcmdpbjogJ2F1dG8nLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRzUm93ID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2dyaWQnLFxyXG4gICAgZ3JpZEF1dG9GbG93OiAnY29sdW1uJyxcclxuICAgIGdyaWRUZW1wbGF0ZVJvd3M6ICdhdXRvIGF1dG8gYXV0bycsXHJcbiAgICBncmlkVGVtcGxhdGVDb2x1bW5zOiAnMWZyIDEwcHggMWZyJyxcclxuICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcclxuICAgIGFsaWduSXRlbXM6ICdmbGV4LXN0YXJ0JyxcclxuICAgIHBhZGRpbmc6ICcxMnB4JyxcclxuICAgIHBhZGRpbmdCb3R0b206IDAsXHJcbiAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgIGNvbHVtbkdhcDogJzEycHgnLFxyXG4gICAgcm93R2FwOiAnOHB4JyxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Db25uZWN0aW9uT3ZlcnZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */");

var getMonomerName = function getMonomerName(monomer) {
  if (monomer instanceof AmbiguousMonomer) {
    return "Ambiguous ".concat(monomer.monomerClass);
  }
  return monomer.monomerItem.props.Name;
};

var ConnectionOverview = function ConnectionOverview(_ref) {
  var firstMonomer = _ref.firstMonomer,
    secondMonomer = _ref.secondMonomer,
    expanded = _ref.expanded,
    firstMonomerOverview = _ref.firstMonomerOverview,
    secondMonomerOverview = _ref.secondMonomerOverview;
  var firstMonomerName = getMonomerName(firstMonomer);
  var secondMonomerName = getMonomerName(secondMonomer);
  return jsxs(AttachmentPointsRow, {
    children: [jsx(MonomerName$1, {
      isExpanded: expanded,
      children: firstMonomerName
    }), firstMonomerOverview, jsx("span", {}), jsx(ConnectionSymbol, {}), jsx("span", {}), jsx(MonomerName$1, {
      isExpanded: expanded,
      children: secondMonomerName
    }), secondMonomerOverview]
  });
};

function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _EMOTION_STRINGIFIED_CSS_ERROR__$c() { 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)."; }
var StyledModal = _styled(Modal, process.env.NODE_ENV === "production" ? {
  target: "e1byht5d3"
} : {
  target: "e1byht5d3",
  label: "StyledModal"
})(process.env.NODE_ENV === "production" ? {
  name: "1j7jcep",
  styles: "& .MuiPaper-root{background:#fff !important;}& .MuiDialogContent-root{overflow:hidden;}"
} : {
  name: "1j7jcep",
  styles: "& .MuiPaper-root{background:#fff !important;}& .MuiDialogContent-root{overflow:hidden;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJDb25uZWN0aW9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYW9CIiwiZmlsZSI6Ik1vbm9tZXJDb25uZWN0aW9ucy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEFjdGlvbkJ1dHRvbiB9IGZyb20gXCIuLi8uLi9zaGFyZWQvYWN0aW9uQnV0dG9uXCI7XHJcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RhbFwiO1xyXG5pbXBvcnQgeyB1c2VBcHBTZWxlY3RvciB9IGZyb20gXCIuLi8uLi8uLi9ob29rc1wiO1xyXG5pbXBvcnQgeyBzZWxlY3RFZGl0b3IgfSBmcm9tIFwiLi4vLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgQXR0YWNobWVudFBvaW50LCBBdHRhY2htZW50UG9pbnROYW1lIGFzIEF0dGFjaG1lbnRQb2ludE5hbWVDb21wb25lbnQsIE1vZGFsQ29udGVudCwgfSBmcm9tICcuL3N0eWxlZENvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBBbWJpZ3VvdXNNb25vbWVyLCBVc2FnZUluTWFjcm9tb2xlY3VsZSwgfSBmcm9tICdrZXRjaGVyLWNvcmUnO1xyXG5pbXBvcnQgaHlkcmF0ZUxlYXZpbmdHcm91cCBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9oeWRyYXRlTGVhdmluZ0dyb3VwXCI7XHJcbmltcG9ydCB7IGdldENvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMgfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVyc1wiO1xyXG5pbXBvcnQgTW9ub21lck92ZXJ2aWV3IGZyb20gXCIuLi8uLi9zaGFyZWQvQ29ubmVjdGlvbk92ZXJ2aWV3L2NvbXBvbmVudHMvTW9ub21lck92ZXJ2aWV3L01vbm9tZXJPdmVydmlld1wiO1xyXG5pbXBvcnQgQ29ubmVjdGlvbk92ZXJ2aWV3IGZyb20gXCIuLi8uLi9zaGFyZWQvQ29ubmVjdGlvbk92ZXJ2aWV3L0Nvbm5lY3Rpb25PdmVydmlld1wiO1xyXG5jb25zdCBTdHlsZWRNb2RhbCA9IHN0eWxlZChNb2RhbCkoe1xyXG4gICAgJyYgLk11aVBhcGVyLXJvb3QnOiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJyNmZmYgIWltcG9ydGFudCcsXHJcbiAgICB9LFxyXG4gICAgJyYgLk11aURpYWxvZ0NvbnRlbnQtcm9vdCc6IHtcclxuICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICB9LFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IEFjdGlvbkJ1dHRvbkxlZnQgPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgoKSA9PiAoe1xyXG4gICAgd2lkdGg6ICc5N3B4ICFpbXBvcnRhbnQnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBBY3Rpb25CdXR0b25SaWdodCA9IHN0eWxlZChBY3Rpb25CdXR0b24pKChwcm9wcykgPT4gKHtcclxuICAgIHdpZHRoOiAnOTdweCAhaW1wb3J0YW50JyxcclxuICAgIGNvbG9yOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDUxLCA1MSwgNTEsIDAuNiknIDogJycsXHJcbiAgICBiYWNrZ3JvdW5kOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDIyNSwgMjI5LCAyMzQsIDEpICFpbXBvcnRhbnQnIDogJycsXHJcbiAgICBvcGFjaXR5OiAnMSAhaW1wb3J0YW50JyxcclxuICAgIG1pbkhlaWdodDogJzAnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBBY3Rpb25CdXR0b25BdHRhY2htZW50UG9pbnQgPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgocHJvcHMpID0+ICh7XHJcbiAgICBib3JkZXJSYWRpdXM6IDUsXHJcbiAgICBtaW5XaWR0aDogJzQ1cHggIWltcG9ydGFudCcsXHJcbiAgICBwYWRkaW5nOiAnNHB4JyxcclxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke3Byb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYm9yZGVyLnNlY29uZGFyeX1gLFxyXG4gICAgY29sb3I6IHByb3BzLmRpc2FibGVkID8gJ3JnYmEoNTEsIDUxLCA1MSwgMC42KSAhaW1wb3J0YW50JyA6ICcnLFxyXG4gICAgYmFja2dyb3VuZDogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0KScgOiAnJyxcclxuICAgIGJvcmRlckNvbG9yOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDIyNSwgMjI5LCAyMzQpICFpbXBvcnRhbnQnIDogJycsXHJcbn0pKTtcclxuY29uc3QgTW9ub21lckNvbm5lY3Rpb24gPSAoeyBvbkNsb3NlLCBpc01vZGFsT3BlbiwgZmlyc3RNb25vbWVyLCBzZWNvbmRNb25vbWVyLCBwb2x5bWVyQm9uZCwgaXNSZWNvbm5lY3Rpb25EaWFsb2csIH0pID0+IHtcclxuICAgIGNvbnN0IGVkaXRvciA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEVkaXRvcik7XHJcbiAgICBjb25zdCBpbml0aWFsRmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50UmVmID0gdXNlUmVmKHBvbHltZXJCb25kPy5maXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgY29uc3QgaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYgPSB1c2VSZWYocG9seW1lckJvbmQ/LnNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgY29uc3QgaGFzRnJlZUF0dGFjaG1lbnRQb2ludHNSZWYgPSB1c2VSZWYoZmlyc3RNb25vbWVyPy5oYXNGcmVlQXR0YWNobWVudFBvaW50IHx8XHJcbiAgICAgICAgc2Vjb25kTW9ub21lcj8uaGFzRnJlZUF0dGFjaG1lbnRQb2ludCk7XHJcbiAgICBpZiAoIWZpcnN0TW9ub21lciB8fCAhc2Vjb25kTW9ub21lcikge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTW9ub21lcnMgbXVzdCBleGlzdCEnKTtcclxuICAgIH1cclxuICAgIGNvbnN0IFtmaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBzZXRGaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50XSA9IHVzZVN0YXRlKGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCB8fFxyXG4gICAgICAgIGdldERlZmF1bHRBdHRhY2htZW50UG9pbnQoZmlyc3RNb25vbWVyKSk7XHJcbiAgICBjb25zdCBbc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIHNldFNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50XSA9IHVzZVN0YXRlKGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQgfHxcclxuICAgICAgICBnZXREZWZhdWx0QXR0YWNobWVudFBvaW50KHNlY29uZE1vbm9tZXIpKTtcclxuICAgIGNvbnN0IFttb2RhbEV4cGFuZGVkLCBzZXRNb2RhbEV4cGFuZGVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGNhbmNlbEJvbmRDcmVhdGlvbkFuZENsb3NlID0gKCkgPT4ge1xyXG4gICAgICAgIGlmIChpc1JlY29ubmVjdGlvbkRpYWxvZykge1xyXG4gICAgICAgICAgICBwb2x5bWVyQm9uZD8uZmlyc3RNb25vbWVyLnNldEJvbmQoaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50LCBwb2x5bWVyQm9uZCk7XHJcbiAgICAgICAgICAgIHBvbHltZXJCb25kPy5zZWNvbmRNb25vbWVyPy5zZXRCb25kKGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQsIHBvbHltZXJCb25kKTtcclxuICAgICAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgZWRpdG9yLmV2ZW50cy5jYW5jZWxCb25kQ3JlYXRpb25WaWFNb2RhbC5kaXNwYXRjaChzZWNvbmRNb25vbWVyKTtcclxuICAgICAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbiAgICBjb25zdCBjb25uZWN0TW9ub21lcnMgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFmaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50IHx8ICFzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0F0dGFjaG1lbnQgcG9pbnRzIGNhbm5vdCBiZSBmYWxzeScpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCA9PT1cclxuICAgICAgICAgICAgaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50ICYmXHJcbiAgICAgICAgICAgIHNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50ID09PVxyXG4gICAgICAgICAgICAgICAgaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCkge1xyXG4gICAgICAgICAgICBjYW5jZWxCb25kQ3JlYXRpb25BbmRDbG9zZSgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVkaXRvci5ldmVudHMuY3JlYXRlQm9uZFZpYU1vZGFsLmRpc3BhdGNoKHtcclxuICAgICAgICAgICAgZmlyc3RNb25vbWVyLFxyXG4gICAgICAgICAgICBzZWNvbmRNb25vbWVyLFxyXG4gICAgICAgICAgICBmaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50LFxyXG4gICAgICAgICAgICBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCxcclxuICAgICAgICAgICAgcG9seW1lckJvbmQsXHJcbiAgICAgICAgICAgIGlzUmVjb25uZWN0aW9uOiBpc1JlY29ubmVjdGlvbkRpYWxvZyxcclxuICAgICAgICAgICAgaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludDogaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50LFxyXG4gICAgICAgICAgICBpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludDogaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBvbkNsb3NlKCk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChfanN4cyhTdHlsZWRNb2RhbCwgeyB0aXRsZTogaXNSZWNvbm5lY3Rpb25EaWFsb2dcclxuICAgICAgICAgICAgPyAnRWRpdCBDb25uZWN0aW9uIFBvaW50cydcclxuICAgICAgICAgICAgOiAnU2VsZWN0IGNvbm5lY3Rpb24gcG9pbnRzJywgaXNPcGVuOiBpc01vZGFsT3Blbiwgb25DbG9zZTogY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UsIHNob3dFeHBhbmRCdXR0b246IHRydWUsIG1vZGFsV2lkdGg6IFwiMzU4cHhcIiwgZXhwYW5kZWQ6IG1vZGFsRXhwYW5kZWQsIHNldEV4cGFuZGVkOiBzZXRNb2RhbEV4cGFuZGVkLCBjaGlsZHJlbjogW19qc3goTW9kYWwuQ29udGVudCwgeyBjaGlsZHJlbjogX2pzeChNb2RhbENvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goQ29ubmVjdGlvbk92ZXJ2aWV3LCB7IGZpcnN0TW9ub21lcjogZmlyc3RNb25vbWVyLCBzZWNvbmRNb25vbWVyOiBzZWNvbmRNb25vbWVyLCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCwgZmlyc3RNb25vbWVyT3ZlcnZpZXc6IF9qc3goQXR0YWNobWVudFBvaW50U2VsZWN0aW9uUGFuZWwsIHsgbW9ub21lcjogZmlyc3RNb25vbWVyLCBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludDogZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgb25TZWxlY3RBdHRhY2htZW50UG9pbnQ6IHNldEZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIGV4cGFuZGVkOiBtb2RhbEV4cGFuZGVkIH0pLCBzZWNvbmRNb25vbWVyT3ZlcnZpZXc6IF9qc3goQXR0YWNobWVudFBvaW50U2VsZWN0aW9uUGFuZWwsIHsgbW9ub21lcjogc2Vjb25kTW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IHNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBvblNlbGVjdEF0dGFjaG1lbnRQb2ludDogc2V0U2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIGV4cGFuZGVkOiBtb2RhbEV4cGFuZGVkIH0pIH0pIH0pIH0pLCBfanN4cyhNb2RhbC5Gb290ZXIsIHsgY2hpbGRyZW46IFtfanN4KEFjdGlvbkJ1dHRvbkxlZnQsIHsgbGFiZWw6IFwiQ2FuY2VsXCIsIHN0eWxlVHlwZTogXCJzZWNvbmRhcnlcIiwgY2xpY2tIYW5kbGVyOiBjYW5jZWxCb25kQ3JlYXRpb25BbmRDbG9zZSB9KSwgX2pzeChBY3Rpb25CdXR0b25SaWdodCwgeyBsYWJlbDogaXNSZWNvbm5lY3Rpb25EaWFsb2cgPyAnUmVjb25uZWN0JyA6ICdDb25uZWN0JywgZGlzYWJsZWQ6ICFmaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50IHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICFoYXNGcmVlQXR0YWNobWVudFBvaW50c1JlZi5jdXJyZW50LCBjbGlja0hhbmRsZXI6IGNvbm5lY3RNb25vbWVycyB9KV0gfSldIH0pKTtcclxufTtcclxuZnVuY3Rpb24gQXR0YWNobWVudFBvaW50U2VsZWN0aW9uUGFuZWwoeyBtb25vbWVyLCBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgb25TZWxlY3RBdHRhY2htZW50UG9pbnQsIGV4cGFuZGVkID0gZmFsc2UsIH0pIHtcclxuICAgIGNvbnN0IFtib25kcywgc2V0Qm9uZHNdID0gdXNlU3RhdGUobW9ub21lci5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyk7XHJcbiAgICBjb25zdCBbY29ubmVjdGVkQXR0YWNobWVudFBvaW50cywgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50c10gPSB1c2VTdGF0ZSgoKSA9PiBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKGJvbmRzKSk7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIHNldEJvbmRzKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpO1xyXG4gICAgfSwgW3NlbGVjdGVkQXR0YWNobWVudFBvaW50XSk7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMgPSBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKGJvbmRzKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKG5ld0Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMpO1xyXG4gICAgfSwgW2JvbmRzXSk7XHJcbiAgICBjb25zdCBnZXRMZWF2aW5nR3JvdXAgPSAoYXR0YWNobWVudFBvaW50KSA9PiB7XHJcbiAgICAgICAgY29uc3QgTW9ub21lckNhcHMgPSBtb25vbWVyLm1vbm9tZXJDYXBzO1xyXG4gICAgICAgIGNvbnN0IGlzQW1iaWd1b3VzTW9ub21lciA9IG1vbm9tZXIgaW5zdGFuY2VvZiBBbWJpZ3VvdXNNb25vbWVyO1xyXG4gICAgICAgIGlmICghTW9ub21lckNhcHMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGlzQW1iaWd1b3VzTW9ub21lciA/IG51bGwgOiAnSCc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGxlYXZpbmdHcm91cCA9IE1vbm9tZXJDYXBzW2F0dGFjaG1lbnRQb2ludF07XHJcbiAgICAgICAgcmV0dXJuIGh5ZHJhdGVMZWF2aW5nR3JvdXAobGVhdmluZ0dyb3VwKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBoYW5kbGVTZWxlY3RBdHRhY2htZW50UG9pbnQgPSAoYXR0YWNobWVudFBvaW50KSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3Qm9uZHMgPSB7IC4uLm1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMgfTtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZEJvbmQgPSBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludFxyXG4gICAgICAgICAgICA/IG5ld0JvbmRzW3NlbGVjdGVkQXR0YWNobWVudFBvaW50XVxyXG4gICAgICAgICAgICA6IG51bGw7XHJcbiAgICAgICAgaWYgKHNlbGVjdGVkQXR0YWNobWVudFBvaW50ICYmIHNlbGVjdGVkQm9uZCkge1xyXG4gICAgICAgICAgICBtb25vbWVyLnJlbW92ZUJvbmQoc2VsZWN0ZWRCb25kKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgcG90ZW50aWFsQm9uZCA9IG1vbm9tZXIuZ2V0UG90ZW50aWFsQm9uZChhdHRhY2htZW50UG9pbnQpO1xyXG4gICAgICAgIG5ld0JvbmRzW2F0dGFjaG1lbnRQb2ludF0gPSBwb3RlbnRpYWxCb25kO1xyXG4gICAgICAgIHNldEJvbmRzKG5ld0JvbmRzKTtcclxuICAgICAgICBvblNlbGVjdEF0dGFjaG1lbnRQb2ludChhdHRhY2htZW50UG9pbnQpO1xyXG4gICAgICAgIGNvbnN0IG5ld0Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMgPSBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKG5ld0JvbmRzKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKG5ld0Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeChNb25vbWVyT3ZlcnZpZXcsIHsgbW9ub21lcjogbW9ub21lciwgY29ubmVjdGVkQXR0YWNobWVudFBvaW50czogY29ubmVjdGVkQXR0YWNobWVudFBvaW50cywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IHNlbGVjdGVkQXR0YWNobWVudFBvaW50LCB1c2FnZTogVXNhZ2VJbk1hY3JvbW9sZWN1bGUuTW9ub21lckNvbm5lY3Rpb25zTW9kYWwsIHVwZGF0ZTogZXhwYW5kZWQsIGV4cGFuZGVkOiBleHBhbmRlZCwgYXR0YWNobWVudFBvaW50czogbW9ub21lci5saXN0T2ZBdHRhY2htZW50UG9pbnRzLm1hcCgoYXR0YWNobWVudFBvaW50KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkID0gQm9vbGVhbihjb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzLmluY2x1ZGVzKGF0dGFjaG1lbnRQb2ludCkgJiZcclxuICAgICAgICAgICAgICAgIGF0dGFjaG1lbnRQb2ludCAhPT0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgICAgICAgICByZXR1cm4gKF9qc3hzKEF0dGFjaG1lbnRQb2ludCwgeyBjaGlsZHJlbjogW19qc3goQWN0aW9uQnV0dG9uQXR0YWNobWVudFBvaW50LCB7IGxhYmVsOiBhdHRhY2htZW50UG9pbnQsIHN0eWxlVHlwZTogYXR0YWNobWVudFBvaW50ID09PSBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAncHJpbWFyeSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJ3NlY29uZGFyeScsIGNsaWNrSGFuZGxlcjogKCkgPT4gaGFuZGxlU2VsZWN0QXR0YWNobWVudFBvaW50KGF0dGFjaG1lbnRQb2ludCksIGRpc2FibGVkOiBkaXNhYmxlZCB9KSwgX2pzeChBdHRhY2htZW50UG9pbnROYW1lQ29tcG9uZW50LCB7IFwiZGF0YS10ZXN0aWRcIjogXCJsZWF2aW5nLWdyb3VwLXZhbHVlXCIsIGRpc2FibGVkOiBkaXNhYmxlZCwgY2hpbGRyZW46IGdldExlYXZpbmdHcm91cChhdHRhY2htZW50UG9pbnQpIH0pXSB9LCBhdHRhY2htZW50UG9pbnQpKTtcclxuICAgICAgICB9KSB9KSk7XHJcbn1cclxuZnVuY3Rpb24gZ2V0RGVmYXVsdEF0dGFjaG1lbnRQb2ludChtb25vbWVyKSB7XHJcbiAgICBpZiAobW9ub21lci5jaG9zZW5GaXJzdEF0dGFjaG1lbnRQb2ludEZvckJvbmQpXHJcbiAgICAgICAgcmV0dXJuIG1vbm9tZXIuY2hvc2VuRmlyc3RBdHRhY2htZW50UG9pbnRGb3JCb25kO1xyXG4gICAgaWYgKG1vbm9tZXIuY2hvc2VuU2Vjb25kQXR0YWNobWVudFBvaW50Rm9yQm9uZClcclxuICAgICAgICByZXR1cm4gbW9ub21lci5jaG9zZW5TZWNvbmRBdHRhY2htZW50UG9pbnRGb3JCb25kO1xyXG4gICAgY29uc3QgcG9zc2libGVBdHRhY2htZW50UG9pbnRzID0gT2JqZWN0LmVudHJpZXMobW9ub21lci5hdHRhY2htZW50UG9pbnRzVG9Cb25kcykuZmlsdGVyKChbXywgYm9uZF0pID0+IGJvbmQgPT0gbnVsbCk7XHJcbiAgICBpZiAocG9zc2libGVBdHRhY2htZW50UG9pbnRzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgIGNvbnN0IFthdHRhY2htZW50UG9pbnROYW1lXSA9IHBvc3NpYmxlQXR0YWNobWVudFBvaW50c1swXTtcclxuICAgICAgICByZXR1cm4gYXR0YWNobWVudFBvaW50TmFtZTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG59XHJcbmV4cG9ydCB7IE1vbm9tZXJDb25uZWN0aW9uIH07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPU1vbm9tZXJDb25uZWN0aW9ucy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
});
var ActionButtonLeft = _styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "e1byht5d2"
} : {
  target: "e1byht5d2",
  label: "ActionButtonLeft"
})(function () {
  return {
    width: '97px !important'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJDb25uZWN0aW9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJnQyIsImZpbGUiOiJNb25vbWVyQ29ubmVjdGlvbnMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2FjdGlvbkJ1dHRvblwiO1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0RWRpdG9yIH0gZnJvbSBcIi4uLy4uLy4uL3N0YXRlL2NvbW1vblwiO1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQb2ludCwgQXR0YWNobWVudFBvaW50TmFtZSBhcyBBdHRhY2htZW50UG9pbnROYW1lQ29tcG9uZW50LCBNb2RhbENvbnRlbnQsIH0gZnJvbSAnLi9zdHlsZWRDb21wb25lbnRzJztcclxuaW1wb3J0IHsgQW1iaWd1b3VzTW9ub21lciwgVXNhZ2VJbk1hY3JvbW9sZWN1bGUsIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IGh5ZHJhdGVMZWF2aW5nR3JvdXAgZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaHlkcmF0ZUxlYXZpbmdHcm91cFwiO1xyXG5pbXBvcnQgeyBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnNcIjtcclxuaW1wb3J0IE1vbm9tZXJPdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9jb21wb25lbnRzL01vbm9tZXJPdmVydmlldy9Nb25vbWVyT3ZlcnZpZXdcIjtcclxuaW1wb3J0IENvbm5lY3Rpb25PdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9Db25uZWN0aW9uT3ZlcnZpZXdcIjtcclxuY29uc3QgU3R5bGVkTW9kYWwgPSBzdHlsZWQoTW9kYWwpKHtcclxuICAgICcmIC5NdWlQYXBlci1yb290Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICcjZmZmICFpbXBvcnRhbnQnLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlEaWFsb2dDb250ZW50LXJvb3QnOiB7XHJcbiAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBBY3Rpb25CdXR0b25MZWZ0ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKCkgPT4gKHtcclxuICAgIHdpZHRoOiAnOTdweCAhaW1wb3J0YW50JyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uUmlnaHQgPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzk3cHggIWltcG9ydGFudCcsXHJcbiAgICBjb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSg1MSwgNTEsIDUxLCAwLjYpJyA6ICcnLFxyXG4gICAgYmFja2dyb3VuZDogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0LCAxKSAhaW1wb3J0YW50JyA6ICcnLFxyXG4gICAgb3BhY2l0eTogJzEgIWltcG9ydGFudCcsXHJcbiAgICBtaW5IZWlnaHQ6ICcwJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uQXR0YWNobWVudFBvaW50ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKHByb3BzKSA9PiAoe1xyXG4gICAgYm9yZGVyUmFkaXVzOiA1LFxyXG4gICAgbWluV2lkdGg6ICc0NXB4ICFpbXBvcnRhbnQnLFxyXG4gICAgcGFkZGluZzogJzRweCcsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5zZWNvbmRhcnl9YCxcclxuICAgIGNvbG9yOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDUxLCA1MSwgNTEsIDAuNikgIWltcG9ydGFudCcgOiAnJyxcclxuICAgIGJhY2tncm91bmQ6IHByb3BzLmRpc2FibGVkID8gJ3JnYmEoMjI1LCAyMjksIDIzNCknIDogJycsXHJcbiAgICBib3JkZXJDb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0KSAhaW1wb3J0YW50JyA6ICcnLFxyXG59KSk7XHJcbmNvbnN0IE1vbm9tZXJDb25uZWN0aW9uID0gKHsgb25DbG9zZSwgaXNNb2RhbE9wZW4sIGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lciwgcG9seW1lckJvbmQsIGlzUmVjb25uZWN0aW9uRGlhbG9nLCB9KSA9PiB7XHJcbiAgICBjb25zdCBlZGl0b3IgPSB1c2VBcHBTZWxlY3RvcihzZWxlY3RFZGl0b3IpO1xyXG4gICAgY29uc3QgaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZiA9IHVzZVJlZihwb2x5bWVyQm9uZD8uZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmID0gdXNlUmVmKHBvbHltZXJCb25kPy5zZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGhhc0ZyZWVBdHRhY2htZW50UG9pbnRzUmVmID0gdXNlUmVmKGZpcnN0TW9ub21lcj8uaGFzRnJlZUF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgIHNlY29uZE1vbm9tZXI/Lmhhc0ZyZWVBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vbm9tZXJzIG11c3QgZXhpc3QhJyk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBbZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgc2V0Rmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsRmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQgfHxcclxuICAgICAgICBnZXREZWZhdWx0QXR0YWNobWVudFBvaW50KGZpcnN0TW9ub21lcikpO1xyXG4gICAgY29uc3QgW3NlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBzZXRTZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50IHx8XHJcbiAgICAgICAgZ2V0RGVmYXVsdEF0dGFjaG1lbnRQb2ludChzZWNvbmRNb25vbWVyKSk7XHJcbiAgICBjb25zdCBbbW9kYWxFeHBhbmRlZCwgc2V0TW9kYWxFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBjYW5jZWxCb25kQ3JlYXRpb25BbmRDbG9zZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoaXNSZWNvbm5lY3Rpb25EaWFsb2cpIHtcclxuICAgICAgICAgICAgcG9seW1lckJvbmQ/LmZpcnN0TW9ub21lci5zZXRCb25kKGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCwgcG9seW1lckJvbmQpO1xyXG4gICAgICAgICAgICBwb2x5bWVyQm9uZD8uc2Vjb25kTW9ub21lcj8uc2V0Qm9uZChpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50LCBwb2x5bWVyQm9uZCk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGVkaXRvci5ldmVudHMuY2FuY2VsQm9uZENyZWF0aW9uVmlhTW9kYWwuZGlzcGF0Y2goc2Vjb25kTW9ub21lcik7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgY29uc3QgY29ubmVjdE1vbm9tZXJzID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICghZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fCAhc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRhY2htZW50IHBvaW50cyBjYW5ub3QgYmUgZmFsc3knKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQgPT09XHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCAmJlxyXG4gICAgICAgICAgICBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCA9PT1cclxuICAgICAgICAgICAgICAgIGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQpIHtcclxuICAgICAgICAgICAgY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UoKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlZGl0b3IuZXZlbnRzLmNyZWF0ZUJvbmRWaWFNb2RhbC5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIGZpcnN0TW9ub21lcixcclxuICAgICAgICAgICAgc2Vjb25kTW9ub21lcixcclxuICAgICAgICAgICAgZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCxcclxuICAgICAgICAgICAgc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsXHJcbiAgICAgICAgICAgIHBvbHltZXJCb25kLFxyXG4gICAgICAgICAgICBpc1JlY29ubmVjdGlvbjogaXNSZWNvbm5lY3Rpb25EaWFsb2csXHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCxcclxuICAgICAgICAgICAgaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkTW9kYWwsIHsgdGl0bGU6IGlzUmVjb25uZWN0aW9uRGlhbG9nXHJcbiAgICAgICAgICAgID8gJ0VkaXQgQ29ubmVjdGlvbiBQb2ludHMnXHJcbiAgICAgICAgICAgIDogJ1NlbGVjdCBjb25uZWN0aW9uIHBvaW50cycsIGlzT3BlbjogaXNNb2RhbE9wZW4sIG9uQ2xvc2U6IGNhbmNlbEJvbmRDcmVhdGlvbkFuZENsb3NlLCBzaG93RXhwYW5kQnV0dG9uOiB0cnVlLCBtb2RhbFdpZHRoOiBcIjM1OHB4XCIsIGV4cGFuZGVkOiBtb2RhbEV4cGFuZGVkLCBzZXRFeHBhbmRlZDogc2V0TW9kYWxFeHBhbmRlZCwgY2hpbGRyZW46IFtfanN4KE1vZGFsLkNvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goTW9kYWxDb250ZW50LCB7IGNoaWxkcmVuOiBfanN4KENvbm5lY3Rpb25PdmVydmlldywgeyBmaXJzdE1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lcjogc2Vjb25kTW9ub21lciwgZXhwYW5kZWQ6IG1vZGFsRXhwYW5kZWQsIGZpcnN0TW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50OiBzZXRGaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSwgc2Vjb25kTW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgb25TZWxlY3RBdHRhY2htZW50UG9pbnQ6IHNldFNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSB9KSB9KSB9KSwgX2pzeHMoTW9kYWwuRm9vdGVyLCB7IGNoaWxkcmVuOiBbX2pzeChBY3Rpb25CdXR0b25MZWZ0LCB7IGxhYmVsOiBcIkNhbmNlbFwiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIsIGNsaWNrSGFuZGxlcjogY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UgfSksIF9qc3goQWN0aW9uQnV0dG9uUmlnaHQsIHsgbGFiZWw6IGlzUmVjb25uZWN0aW9uRGlhbG9nID8gJ1JlY29ubmVjdCcgOiAnQ29ubmVjdCcsIGRpc2FibGVkOiAhZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50IHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaGFzRnJlZUF0dGFjaG1lbnRQb2ludHNSZWYuY3VycmVudCwgY2xpY2tIYW5kbGVyOiBjb25uZWN0TW9ub21lcnMgfSldIH0pXSB9KSk7XHJcbn07XHJcbmZ1bmN0aW9uIEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsKHsgbW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50LCBleHBhbmRlZCA9IGZhbHNlLCB9KSB7XHJcbiAgICBjb25zdCBbYm9uZHMsIHNldEJvbmRzXSA9IHVzZVN0YXRlKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpO1xyXG4gICAgY29uc3QgW2Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNldENvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHNdID0gdXNlU3RhdGUoKCkgPT4gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcykpO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBzZXRCb25kcyhtb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzKTtcclxuICAgIH0sIFtzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH0sIFtib25kc10pO1xyXG4gICAgY29uc3QgZ2V0TGVhdmluZ0dyb3VwID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IE1vbm9tZXJDYXBzID0gbW9ub21lci5tb25vbWVyQ2FwcztcclxuICAgICAgICBjb25zdCBpc0FtYmlndW91c01vbm9tZXIgPSBtb25vbWVyIGluc3RhbmNlb2YgQW1iaWd1b3VzTW9ub21lcjtcclxuICAgICAgICBpZiAoIU1vbm9tZXJDYXBzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpc0FtYmlndW91c01vbm9tZXIgPyBudWxsIDogJ0gnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsZWF2aW5nR3JvdXAgPSBNb25vbWVyQ2Fwc1thdHRhY2htZW50UG9pbnRdO1xyXG4gICAgICAgIHJldHVybiBoeWRyYXRlTGVhdmluZ0dyb3VwKGxlYXZpbmdHcm91cCk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlU2VsZWN0QXR0YWNobWVudFBvaW50ID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0JvbmRzID0geyAuLi5tb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzIH07XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRCb25kID0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgPyBuZXdCb25kc1tzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF1cclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIGlmIChzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCAmJiBzZWxlY3RlZEJvbmQpIHtcclxuICAgICAgICAgICAgbW9ub21lci5yZW1vdmVCb25kKHNlbGVjdGVkQm9uZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHBvdGVudGlhbEJvbmQgPSBtb25vbWVyLmdldFBvdGVudGlhbEJvbmQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBuZXdCb25kc1thdHRhY2htZW50UG9pbnRdID0gcG90ZW50aWFsQm9uZDtcclxuICAgICAgICBzZXRCb25kcyhuZXdCb25kcyk7XHJcbiAgICAgICAgb25TZWxlY3RBdHRhY2htZW50UG9pbnQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdCb25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IG1vbm9tZXIsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgdXNhZ2U6IFVzYWdlSW5NYWNyb21vbGVjdWxlLk1vbm9tZXJDb25uZWN0aW9uc01vZGFsLCB1cGRhdGU6IGV4cGFuZGVkLCBleHBhbmRlZDogZXhwYW5kZWQsIGF0dGFjaG1lbnRQb2ludHM6IG1vbm9tZXIubGlzdE9mQXR0YWNobWVudFBvaW50cy5tYXAoKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZCA9IEJvb2xlYW4oY29ubmVjdGVkQXR0YWNobWVudFBvaW50cy5pbmNsdWRlcyhhdHRhY2htZW50UG9pbnQpICYmXHJcbiAgICAgICAgICAgICAgICBhdHRhY2htZW50UG9pbnQgIT09IHNlbGVjdGVkQXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhBdHRhY2htZW50UG9pbnQsIHsgY2hpbGRyZW46IFtfanN4KEFjdGlvbkJ1dHRvbkF0dGFjaG1lbnRQb2ludCwgeyBsYWJlbDogYXR0YWNobWVudFBvaW50LCBzdHlsZVR5cGU6IGF0dGFjaG1lbnRQb2ludCA9PT0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ3ByaW1hcnknXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdzZWNvbmRhcnknLCBjbGlja0hhbmRsZXI6ICgpID0+IGhhbmRsZVNlbGVjdEF0dGFjaG1lbnRQb2ludChhdHRhY2htZW50UG9pbnQpLCBkaXNhYmxlZDogZGlzYWJsZWQgfSksIF9qc3goQXR0YWNobWVudFBvaW50TmFtZUNvbXBvbmVudCwgeyBcImRhdGEtdGVzdGlkXCI6IFwibGVhdmluZy1ncm91cC12YWx1ZVwiLCBkaXNhYmxlZDogZGlzYWJsZWQsIGNoaWxkcmVuOiBnZXRMZWF2aW5nR3JvdXAoYXR0YWNobWVudFBvaW50KSB9KV0gfSwgYXR0YWNobWVudFBvaW50KSk7XHJcbiAgICAgICAgfSkgfSkpO1xyXG59XHJcbmZ1bmN0aW9uIGdldERlZmF1bHRBdHRhY2htZW50UG9pbnQobW9ub21lcikge1xyXG4gICAgaWYgKG1vbm9tZXIuY2hvc2VuRmlyc3RBdHRhY2htZW50UG9pbnRGb3JCb25kKVxyXG4gICAgICAgIHJldHVybiBtb25vbWVyLmNob3NlbkZpcnN0QXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGlmIChtb25vbWVyLmNob3NlblNlY29uZEF0dGFjaG1lbnRQb2ludEZvckJvbmQpXHJcbiAgICAgICAgcmV0dXJuIG1vbm9tZXIuY2hvc2VuU2Vjb25kQXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGNvbnN0IHBvc3NpYmxlQXR0YWNobWVudFBvaW50cyA9IE9iamVjdC5lbnRyaWVzKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpLmZpbHRlcigoW18sIGJvbmRdKSA9PiBib25kID09IG51bGwpO1xyXG4gICAgaWYgKHBvc3NpYmxlQXR0YWNobWVudFBvaW50cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCBbYXR0YWNobWVudFBvaW50TmFtZV0gPSBwb3NzaWJsZUF0dGFjaG1lbnRQb2ludHNbMF07XHJcbiAgICAgICAgcmV0dXJuIGF0dGFjaG1lbnRQb2ludE5hbWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxufVxyXG5leHBvcnQgeyBNb25vbWVyQ29ubmVjdGlvbiB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyQ29ubmVjdGlvbnMuanMubWFwIl19 */");
var ActionButtonRight = _styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "e1byht5d1"
} : {
  target: "e1byht5d1",
  label: "ActionButtonRight"
})(function (props) {
  return {
    width: '97px !important',
    color: props.disabled ? 'rgba(51, 51, 51, 0.6)' : '',
    background: props.disabled ? 'rgba(225, 229, 234, 1) !important' : '',
    opacity: '1 !important',
    minHeight: '0'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJDb25uZWN0aW9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0JpQyIsImZpbGUiOiJNb25vbWVyQ29ubmVjdGlvbnMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2FjdGlvbkJ1dHRvblwiO1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0RWRpdG9yIH0gZnJvbSBcIi4uLy4uLy4uL3N0YXRlL2NvbW1vblwiO1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQb2ludCwgQXR0YWNobWVudFBvaW50TmFtZSBhcyBBdHRhY2htZW50UG9pbnROYW1lQ29tcG9uZW50LCBNb2RhbENvbnRlbnQsIH0gZnJvbSAnLi9zdHlsZWRDb21wb25lbnRzJztcclxuaW1wb3J0IHsgQW1iaWd1b3VzTW9ub21lciwgVXNhZ2VJbk1hY3JvbW9sZWN1bGUsIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IGh5ZHJhdGVMZWF2aW5nR3JvdXAgZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaHlkcmF0ZUxlYXZpbmdHcm91cFwiO1xyXG5pbXBvcnQgeyBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnNcIjtcclxuaW1wb3J0IE1vbm9tZXJPdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9jb21wb25lbnRzL01vbm9tZXJPdmVydmlldy9Nb25vbWVyT3ZlcnZpZXdcIjtcclxuaW1wb3J0IENvbm5lY3Rpb25PdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9Db25uZWN0aW9uT3ZlcnZpZXdcIjtcclxuY29uc3QgU3R5bGVkTW9kYWwgPSBzdHlsZWQoTW9kYWwpKHtcclxuICAgICcmIC5NdWlQYXBlci1yb290Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICcjZmZmICFpbXBvcnRhbnQnLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlEaWFsb2dDb250ZW50LXJvb3QnOiB7XHJcbiAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBBY3Rpb25CdXR0b25MZWZ0ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKCkgPT4gKHtcclxuICAgIHdpZHRoOiAnOTdweCAhaW1wb3J0YW50JyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uUmlnaHQgPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzk3cHggIWltcG9ydGFudCcsXHJcbiAgICBjb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSg1MSwgNTEsIDUxLCAwLjYpJyA6ICcnLFxyXG4gICAgYmFja2dyb3VuZDogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0LCAxKSAhaW1wb3J0YW50JyA6ICcnLFxyXG4gICAgb3BhY2l0eTogJzEgIWltcG9ydGFudCcsXHJcbiAgICBtaW5IZWlnaHQ6ICcwJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uQXR0YWNobWVudFBvaW50ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKHByb3BzKSA9PiAoe1xyXG4gICAgYm9yZGVyUmFkaXVzOiA1LFxyXG4gICAgbWluV2lkdGg6ICc0NXB4ICFpbXBvcnRhbnQnLFxyXG4gICAgcGFkZGluZzogJzRweCcsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5zZWNvbmRhcnl9YCxcclxuICAgIGNvbG9yOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDUxLCA1MSwgNTEsIDAuNikgIWltcG9ydGFudCcgOiAnJyxcclxuICAgIGJhY2tncm91bmQ6IHByb3BzLmRpc2FibGVkID8gJ3JnYmEoMjI1LCAyMjksIDIzNCknIDogJycsXHJcbiAgICBib3JkZXJDb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0KSAhaW1wb3J0YW50JyA6ICcnLFxyXG59KSk7XHJcbmNvbnN0IE1vbm9tZXJDb25uZWN0aW9uID0gKHsgb25DbG9zZSwgaXNNb2RhbE9wZW4sIGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lciwgcG9seW1lckJvbmQsIGlzUmVjb25uZWN0aW9uRGlhbG9nLCB9KSA9PiB7XHJcbiAgICBjb25zdCBlZGl0b3IgPSB1c2VBcHBTZWxlY3RvcihzZWxlY3RFZGl0b3IpO1xyXG4gICAgY29uc3QgaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZiA9IHVzZVJlZihwb2x5bWVyQm9uZD8uZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmID0gdXNlUmVmKHBvbHltZXJCb25kPy5zZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGhhc0ZyZWVBdHRhY2htZW50UG9pbnRzUmVmID0gdXNlUmVmKGZpcnN0TW9ub21lcj8uaGFzRnJlZUF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgIHNlY29uZE1vbm9tZXI/Lmhhc0ZyZWVBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vbm9tZXJzIG11c3QgZXhpc3QhJyk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBbZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgc2V0Rmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsRmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQgfHxcclxuICAgICAgICBnZXREZWZhdWx0QXR0YWNobWVudFBvaW50KGZpcnN0TW9ub21lcikpO1xyXG4gICAgY29uc3QgW3NlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBzZXRTZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50IHx8XHJcbiAgICAgICAgZ2V0RGVmYXVsdEF0dGFjaG1lbnRQb2ludChzZWNvbmRNb25vbWVyKSk7XHJcbiAgICBjb25zdCBbbW9kYWxFeHBhbmRlZCwgc2V0TW9kYWxFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBjYW5jZWxCb25kQ3JlYXRpb25BbmRDbG9zZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoaXNSZWNvbm5lY3Rpb25EaWFsb2cpIHtcclxuICAgICAgICAgICAgcG9seW1lckJvbmQ/LmZpcnN0TW9ub21lci5zZXRCb25kKGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCwgcG9seW1lckJvbmQpO1xyXG4gICAgICAgICAgICBwb2x5bWVyQm9uZD8uc2Vjb25kTW9ub21lcj8uc2V0Qm9uZChpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50LCBwb2x5bWVyQm9uZCk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGVkaXRvci5ldmVudHMuY2FuY2VsQm9uZENyZWF0aW9uVmlhTW9kYWwuZGlzcGF0Y2goc2Vjb25kTW9ub21lcik7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgY29uc3QgY29ubmVjdE1vbm9tZXJzID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICghZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fCAhc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRhY2htZW50IHBvaW50cyBjYW5ub3QgYmUgZmFsc3knKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQgPT09XHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCAmJlxyXG4gICAgICAgICAgICBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCA9PT1cclxuICAgICAgICAgICAgICAgIGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQpIHtcclxuICAgICAgICAgICAgY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UoKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlZGl0b3IuZXZlbnRzLmNyZWF0ZUJvbmRWaWFNb2RhbC5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIGZpcnN0TW9ub21lcixcclxuICAgICAgICAgICAgc2Vjb25kTW9ub21lcixcclxuICAgICAgICAgICAgZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCxcclxuICAgICAgICAgICAgc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsXHJcbiAgICAgICAgICAgIHBvbHltZXJCb25kLFxyXG4gICAgICAgICAgICBpc1JlY29ubmVjdGlvbjogaXNSZWNvbm5lY3Rpb25EaWFsb2csXHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCxcclxuICAgICAgICAgICAgaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkTW9kYWwsIHsgdGl0bGU6IGlzUmVjb25uZWN0aW9uRGlhbG9nXHJcbiAgICAgICAgICAgID8gJ0VkaXQgQ29ubmVjdGlvbiBQb2ludHMnXHJcbiAgICAgICAgICAgIDogJ1NlbGVjdCBjb25uZWN0aW9uIHBvaW50cycsIGlzT3BlbjogaXNNb2RhbE9wZW4sIG9uQ2xvc2U6IGNhbmNlbEJvbmRDcmVhdGlvbkFuZENsb3NlLCBzaG93RXhwYW5kQnV0dG9uOiB0cnVlLCBtb2RhbFdpZHRoOiBcIjM1OHB4XCIsIGV4cGFuZGVkOiBtb2RhbEV4cGFuZGVkLCBzZXRFeHBhbmRlZDogc2V0TW9kYWxFeHBhbmRlZCwgY2hpbGRyZW46IFtfanN4KE1vZGFsLkNvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goTW9kYWxDb250ZW50LCB7IGNoaWxkcmVuOiBfanN4KENvbm5lY3Rpb25PdmVydmlldywgeyBmaXJzdE1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lcjogc2Vjb25kTW9ub21lciwgZXhwYW5kZWQ6IG1vZGFsRXhwYW5kZWQsIGZpcnN0TW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50OiBzZXRGaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSwgc2Vjb25kTW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgb25TZWxlY3RBdHRhY2htZW50UG9pbnQ6IHNldFNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSB9KSB9KSB9KSwgX2pzeHMoTW9kYWwuRm9vdGVyLCB7IGNoaWxkcmVuOiBbX2pzeChBY3Rpb25CdXR0b25MZWZ0LCB7IGxhYmVsOiBcIkNhbmNlbFwiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIsIGNsaWNrSGFuZGxlcjogY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UgfSksIF9qc3goQWN0aW9uQnV0dG9uUmlnaHQsIHsgbGFiZWw6IGlzUmVjb25uZWN0aW9uRGlhbG9nID8gJ1JlY29ubmVjdCcgOiAnQ29ubmVjdCcsIGRpc2FibGVkOiAhZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50IHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaGFzRnJlZUF0dGFjaG1lbnRQb2ludHNSZWYuY3VycmVudCwgY2xpY2tIYW5kbGVyOiBjb25uZWN0TW9ub21lcnMgfSldIH0pXSB9KSk7XHJcbn07XHJcbmZ1bmN0aW9uIEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsKHsgbW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50LCBleHBhbmRlZCA9IGZhbHNlLCB9KSB7XHJcbiAgICBjb25zdCBbYm9uZHMsIHNldEJvbmRzXSA9IHVzZVN0YXRlKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpO1xyXG4gICAgY29uc3QgW2Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNldENvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHNdID0gdXNlU3RhdGUoKCkgPT4gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcykpO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBzZXRCb25kcyhtb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzKTtcclxuICAgIH0sIFtzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH0sIFtib25kc10pO1xyXG4gICAgY29uc3QgZ2V0TGVhdmluZ0dyb3VwID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IE1vbm9tZXJDYXBzID0gbW9ub21lci5tb25vbWVyQ2FwcztcclxuICAgICAgICBjb25zdCBpc0FtYmlndW91c01vbm9tZXIgPSBtb25vbWVyIGluc3RhbmNlb2YgQW1iaWd1b3VzTW9ub21lcjtcclxuICAgICAgICBpZiAoIU1vbm9tZXJDYXBzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpc0FtYmlndW91c01vbm9tZXIgPyBudWxsIDogJ0gnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsZWF2aW5nR3JvdXAgPSBNb25vbWVyQ2Fwc1thdHRhY2htZW50UG9pbnRdO1xyXG4gICAgICAgIHJldHVybiBoeWRyYXRlTGVhdmluZ0dyb3VwKGxlYXZpbmdHcm91cCk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlU2VsZWN0QXR0YWNobWVudFBvaW50ID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0JvbmRzID0geyAuLi5tb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzIH07XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRCb25kID0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgPyBuZXdCb25kc1tzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF1cclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIGlmIChzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCAmJiBzZWxlY3RlZEJvbmQpIHtcclxuICAgICAgICAgICAgbW9ub21lci5yZW1vdmVCb25kKHNlbGVjdGVkQm9uZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHBvdGVudGlhbEJvbmQgPSBtb25vbWVyLmdldFBvdGVudGlhbEJvbmQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBuZXdCb25kc1thdHRhY2htZW50UG9pbnRdID0gcG90ZW50aWFsQm9uZDtcclxuICAgICAgICBzZXRCb25kcyhuZXdCb25kcyk7XHJcbiAgICAgICAgb25TZWxlY3RBdHRhY2htZW50UG9pbnQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdCb25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IG1vbm9tZXIsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgdXNhZ2U6IFVzYWdlSW5NYWNyb21vbGVjdWxlLk1vbm9tZXJDb25uZWN0aW9uc01vZGFsLCB1cGRhdGU6IGV4cGFuZGVkLCBleHBhbmRlZDogZXhwYW5kZWQsIGF0dGFjaG1lbnRQb2ludHM6IG1vbm9tZXIubGlzdE9mQXR0YWNobWVudFBvaW50cy5tYXAoKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZCA9IEJvb2xlYW4oY29ubmVjdGVkQXR0YWNobWVudFBvaW50cy5pbmNsdWRlcyhhdHRhY2htZW50UG9pbnQpICYmXHJcbiAgICAgICAgICAgICAgICBhdHRhY2htZW50UG9pbnQgIT09IHNlbGVjdGVkQXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhBdHRhY2htZW50UG9pbnQsIHsgY2hpbGRyZW46IFtfanN4KEFjdGlvbkJ1dHRvbkF0dGFjaG1lbnRQb2ludCwgeyBsYWJlbDogYXR0YWNobWVudFBvaW50LCBzdHlsZVR5cGU6IGF0dGFjaG1lbnRQb2ludCA9PT0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ3ByaW1hcnknXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdzZWNvbmRhcnknLCBjbGlja0hhbmRsZXI6ICgpID0+IGhhbmRsZVNlbGVjdEF0dGFjaG1lbnRQb2ludChhdHRhY2htZW50UG9pbnQpLCBkaXNhYmxlZDogZGlzYWJsZWQgfSksIF9qc3goQXR0YWNobWVudFBvaW50TmFtZUNvbXBvbmVudCwgeyBcImRhdGEtdGVzdGlkXCI6IFwibGVhdmluZy1ncm91cC12YWx1ZVwiLCBkaXNhYmxlZDogZGlzYWJsZWQsIGNoaWxkcmVuOiBnZXRMZWF2aW5nR3JvdXAoYXR0YWNobWVudFBvaW50KSB9KV0gfSwgYXR0YWNobWVudFBvaW50KSk7XHJcbiAgICAgICAgfSkgfSkpO1xyXG59XHJcbmZ1bmN0aW9uIGdldERlZmF1bHRBdHRhY2htZW50UG9pbnQobW9ub21lcikge1xyXG4gICAgaWYgKG1vbm9tZXIuY2hvc2VuRmlyc3RBdHRhY2htZW50UG9pbnRGb3JCb25kKVxyXG4gICAgICAgIHJldHVybiBtb25vbWVyLmNob3NlbkZpcnN0QXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGlmIChtb25vbWVyLmNob3NlblNlY29uZEF0dGFjaG1lbnRQb2ludEZvckJvbmQpXHJcbiAgICAgICAgcmV0dXJuIG1vbm9tZXIuY2hvc2VuU2Vjb25kQXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGNvbnN0IHBvc3NpYmxlQXR0YWNobWVudFBvaW50cyA9IE9iamVjdC5lbnRyaWVzKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpLmZpbHRlcigoW18sIGJvbmRdKSA9PiBib25kID09IG51bGwpO1xyXG4gICAgaWYgKHBvc3NpYmxlQXR0YWNobWVudFBvaW50cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCBbYXR0YWNobWVudFBvaW50TmFtZV0gPSBwb3NzaWJsZUF0dGFjaG1lbnRQb2ludHNbMF07XHJcbiAgICAgICAgcmV0dXJuIGF0dGFjaG1lbnRQb2ludE5hbWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxufVxyXG5leHBvcnQgeyBNb25vbWVyQ29ubmVjdGlvbiB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyQ29ubmVjdGlvbnMuanMubWFwIl19 */");
var ActionButtonAttachmentPoint = _styled(ActionButton, process.env.NODE_ENV === "production" ? {
  target: "e1byht5d0"
} : {
  target: "e1byht5d0",
  label: "ActionButtonAttachmentPoint"
})(function (props) {
  return {
    borderRadius: 5,
    minWidth: '45px !important',
    padding: '4px',
    border: "1px solid ".concat(props.theme.ketcher.color.border.secondary),
    color: props.disabled ? 'rgba(51, 51, 51, 0.6) !important' : '',
    background: props.disabled ? 'rgba(225, 229, 234)' : '',
    borderColor: props.disabled ? 'rgba(225, 229, 234) !important' : ''
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJDb25uZWN0aW9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0IyQyIsImZpbGUiOiJNb25vbWVyQ29ubmVjdGlvbnMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2FjdGlvbkJ1dHRvblwiO1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kYWxcIjtcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0RWRpdG9yIH0gZnJvbSBcIi4uLy4uLy4uL3N0YXRlL2NvbW1vblwiO1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQb2ludCwgQXR0YWNobWVudFBvaW50TmFtZSBhcyBBdHRhY2htZW50UG9pbnROYW1lQ29tcG9uZW50LCBNb2RhbENvbnRlbnQsIH0gZnJvbSAnLi9zdHlsZWRDb21wb25lbnRzJztcclxuaW1wb3J0IHsgQW1iaWd1b3VzTW9ub21lciwgVXNhZ2VJbk1hY3JvbW9sZWN1bGUsIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IGh5ZHJhdGVMZWF2aW5nR3JvdXAgZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaHlkcmF0ZUxlYXZpbmdHcm91cFwiO1xyXG5pbXBvcnQgeyBnZXRDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnNcIjtcclxuaW1wb3J0IE1vbm9tZXJPdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9jb21wb25lbnRzL01vbm9tZXJPdmVydmlldy9Nb25vbWVyT3ZlcnZpZXdcIjtcclxuaW1wb3J0IENvbm5lY3Rpb25PdmVydmlldyBmcm9tIFwiLi4vLi4vc2hhcmVkL0Nvbm5lY3Rpb25PdmVydmlldy9Db25uZWN0aW9uT3ZlcnZpZXdcIjtcclxuY29uc3QgU3R5bGVkTW9kYWwgPSBzdHlsZWQoTW9kYWwpKHtcclxuICAgICcmIC5NdWlQYXBlci1yb290Jzoge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICcjZmZmICFpbXBvcnRhbnQnLFxyXG4gICAgfSxcclxuICAgICcmIC5NdWlEaWFsb2dDb250ZW50LXJvb3QnOiB7XHJcbiAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgfSxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBBY3Rpb25CdXR0b25MZWZ0ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKCkgPT4gKHtcclxuICAgIHdpZHRoOiAnOTdweCAhaW1wb3J0YW50JyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uUmlnaHQgPSBzdHlsZWQoQWN0aW9uQnV0dG9uKSgocHJvcHMpID0+ICh7XHJcbiAgICB3aWR0aDogJzk3cHggIWltcG9ydGFudCcsXHJcbiAgICBjb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSg1MSwgNTEsIDUxLCAwLjYpJyA6ICcnLFxyXG4gICAgYmFja2dyb3VuZDogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0LCAxKSAhaW1wb3J0YW50JyA6ICcnLFxyXG4gICAgb3BhY2l0eTogJzEgIWltcG9ydGFudCcsXHJcbiAgICBtaW5IZWlnaHQ6ICcwJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQWN0aW9uQnV0dG9uQXR0YWNobWVudFBvaW50ID0gc3R5bGVkKEFjdGlvbkJ1dHRvbikoKHByb3BzKSA9PiAoe1xyXG4gICAgYm9yZGVyUmFkaXVzOiA1LFxyXG4gICAgbWluV2lkdGg6ICc0NXB4ICFpbXBvcnRhbnQnLFxyXG4gICAgcGFkZGluZzogJzRweCcsXHJcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHtwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJvcmRlci5zZWNvbmRhcnl9YCxcclxuICAgIGNvbG9yOiBwcm9wcy5kaXNhYmxlZCA/ICdyZ2JhKDUxLCA1MSwgNTEsIDAuNikgIWltcG9ydGFudCcgOiAnJyxcclxuICAgIGJhY2tncm91bmQ6IHByb3BzLmRpc2FibGVkID8gJ3JnYmEoMjI1LCAyMjksIDIzNCknIDogJycsXHJcbiAgICBib3JkZXJDb2xvcjogcHJvcHMuZGlzYWJsZWQgPyAncmdiYSgyMjUsIDIyOSwgMjM0KSAhaW1wb3J0YW50JyA6ICcnLFxyXG59KSk7XHJcbmNvbnN0IE1vbm9tZXJDb25uZWN0aW9uID0gKHsgb25DbG9zZSwgaXNNb2RhbE9wZW4sIGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lciwgcG9seW1lckJvbmQsIGlzUmVjb25uZWN0aW9uRGlhbG9nLCB9KSA9PiB7XHJcbiAgICBjb25zdCBlZGl0b3IgPSB1c2VBcHBTZWxlY3RvcihzZWxlY3RFZGl0b3IpO1xyXG4gICAgY29uc3QgaW5pdGlhbEZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludFJlZiA9IHVzZVJlZihwb2x5bWVyQm9uZD8uZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmID0gdXNlUmVmKHBvbHltZXJCb25kPy5zZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50KTtcclxuICAgIGNvbnN0IGhhc0ZyZWVBdHRhY2htZW50UG9pbnRzUmVmID0gdXNlUmVmKGZpcnN0TW9ub21lcj8uaGFzRnJlZUF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgIHNlY29uZE1vbm9tZXI/Lmhhc0ZyZWVBdHRhY2htZW50UG9pbnQpO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01vbm9tZXJzIG11c3QgZXhpc3QhJyk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBbZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgc2V0Rmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsRmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQgfHxcclxuICAgICAgICBnZXREZWZhdWx0QXR0YWNobWVudFBvaW50KGZpcnN0TW9ub21lcikpO1xyXG4gICAgY29uc3QgW3NlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBzZXRTZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0gPSB1c2VTdGF0ZShpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50IHx8XHJcbiAgICAgICAgZ2V0RGVmYXVsdEF0dGFjaG1lbnRQb2ludChzZWNvbmRNb25vbWVyKSk7XHJcbiAgICBjb25zdCBbbW9kYWxFeHBhbmRlZCwgc2V0TW9kYWxFeHBhbmRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBjYW5jZWxCb25kQ3JlYXRpb25BbmRDbG9zZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoaXNSZWNvbm5lY3Rpb25EaWFsb2cpIHtcclxuICAgICAgICAgICAgcG9seW1lckJvbmQ/LmZpcnN0TW9ub21lci5zZXRCb25kKGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCwgcG9seW1lckJvbmQpO1xyXG4gICAgICAgICAgICBwb2x5bWVyQm9uZD8uc2Vjb25kTW9ub21lcj8uc2V0Qm9uZChpbml0aWFsU2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludFJlZi5jdXJyZW50LCBwb2x5bWVyQm9uZCk7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGVkaXRvci5ldmVudHMuY2FuY2VsQm9uZENyZWF0aW9uVmlhTW9kYWwuZGlzcGF0Y2goc2Vjb25kTW9ub21lcik7XHJcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG4gICAgY29uc3QgY29ubmVjdE1vbm9tZXJzID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICghZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fCAhc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQpIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRhY2htZW50IHBvaW50cyBjYW5ub3QgYmUgZmFsc3knKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQgPT09XHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCAmJlxyXG4gICAgICAgICAgICBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCA9PT1cclxuICAgICAgICAgICAgICAgIGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQpIHtcclxuICAgICAgICAgICAgY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UoKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlZGl0b3IuZXZlbnRzLmNyZWF0ZUJvbmRWaWFNb2RhbC5kaXNwYXRjaCh7XHJcbiAgICAgICAgICAgIGZpcnN0TW9ub21lcixcclxuICAgICAgICAgICAgc2Vjb25kTW9ub21lcixcclxuICAgICAgICAgICAgZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCxcclxuICAgICAgICAgICAgc2Vjb25kU2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsXHJcbiAgICAgICAgICAgIHBvbHltZXJCb25kLFxyXG4gICAgICAgICAgICBpc1JlY29ubmVjdGlvbjogaXNSZWNvbm5lY3Rpb25EaWFsb2csXHJcbiAgICAgICAgICAgIGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxGaXJzdE1vbm9tZXJBdHRhY2htZW50UG9pbnRSZWYuY3VycmVudCxcclxuICAgICAgICAgICAgaW5pdGlhbFNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQ6IGluaXRpYWxTZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50UmVmLmN1cnJlbnQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb25DbG9zZSgpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeHMoU3R5bGVkTW9kYWwsIHsgdGl0bGU6IGlzUmVjb25uZWN0aW9uRGlhbG9nXHJcbiAgICAgICAgICAgID8gJ0VkaXQgQ29ubmVjdGlvbiBQb2ludHMnXHJcbiAgICAgICAgICAgIDogJ1NlbGVjdCBjb25uZWN0aW9uIHBvaW50cycsIGlzT3BlbjogaXNNb2RhbE9wZW4sIG9uQ2xvc2U6IGNhbmNlbEJvbmRDcmVhdGlvbkFuZENsb3NlLCBzaG93RXhwYW5kQnV0dG9uOiB0cnVlLCBtb2RhbFdpZHRoOiBcIjM1OHB4XCIsIGV4cGFuZGVkOiBtb2RhbEV4cGFuZGVkLCBzZXRFeHBhbmRlZDogc2V0TW9kYWxFeHBhbmRlZCwgY2hpbGRyZW46IFtfanN4KE1vZGFsLkNvbnRlbnQsIHsgY2hpbGRyZW46IF9qc3goTW9kYWxDb250ZW50LCB7IGNoaWxkcmVuOiBfanN4KENvbm5lY3Rpb25PdmVydmlldywgeyBmaXJzdE1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2Vjb25kTW9ub21lcjogc2Vjb25kTW9ub21lciwgZXhwYW5kZWQ6IG1vZGFsRXhwYW5kZWQsIGZpcnN0TW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IGZpcnN0TW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0U2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50OiBzZXRGaXJzdFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSwgc2Vjb25kTW9ub21lck92ZXJ2aWV3OiBfanN4KEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsLCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWNvbmRTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgb25TZWxlY3RBdHRhY2htZW50UG9pbnQ6IHNldFNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50LCBleHBhbmRlZDogbW9kYWxFeHBhbmRlZCB9KSB9KSB9KSB9KSwgX2pzeHMoTW9kYWwuRm9vdGVyLCB7IGNoaWxkcmVuOiBbX2pzeChBY3Rpb25CdXR0b25MZWZ0LCB7IGxhYmVsOiBcIkNhbmNlbFwiLCBzdHlsZVR5cGU6IFwic2Vjb25kYXJ5XCIsIGNsaWNrSGFuZGxlcjogY2FuY2VsQm9uZENyZWF0aW9uQW5kQ2xvc2UgfSksIF9qc3goQWN0aW9uQnV0dG9uUmlnaHQsIHsgbGFiZWw6IGlzUmVjb25uZWN0aW9uRGlhbG9nID8gJ1JlY29ubmVjdCcgOiAnQ29ubmVjdCcsIGRpc2FibGVkOiAhZmlyc3RTZWxlY3RlZEF0dGFjaG1lbnRQb2ludCB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIXNlY29uZFNlbGVjdGVkQXR0YWNobWVudFBvaW50IHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhaGFzRnJlZUF0dGFjaG1lbnRQb2ludHNSZWYuY3VycmVudCwgY2xpY2tIYW5kbGVyOiBjb25uZWN0TW9ub21lcnMgfSldIH0pXSB9KSk7XHJcbn07XHJcbmZ1bmN0aW9uIEF0dGFjaG1lbnRQb2ludFNlbGVjdGlvblBhbmVsKHsgbW9ub21lciwgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQsIG9uU2VsZWN0QXR0YWNobWVudFBvaW50LCBleHBhbmRlZCA9IGZhbHNlLCB9KSB7XHJcbiAgICBjb25zdCBbYm9uZHMsIHNldEJvbmRzXSA9IHVzZVN0YXRlKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpO1xyXG4gICAgY29uc3QgW2Nvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNldENvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHNdID0gdXNlU3RhdGUoKCkgPT4gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcykpO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBzZXRCb25kcyhtb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzKTtcclxuICAgIH0sIFtzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF0pO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhib25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH0sIFtib25kc10pO1xyXG4gICAgY29uc3QgZ2V0TGVhdmluZ0dyb3VwID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IE1vbm9tZXJDYXBzID0gbW9ub21lci5tb25vbWVyQ2FwcztcclxuICAgICAgICBjb25zdCBpc0FtYmlndW91c01vbm9tZXIgPSBtb25vbWVyIGluc3RhbmNlb2YgQW1iaWd1b3VzTW9ub21lcjtcclxuICAgICAgICBpZiAoIU1vbm9tZXJDYXBzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpc0FtYmlndW91c01vbm9tZXIgPyBudWxsIDogJ0gnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBsZWF2aW5nR3JvdXAgPSBNb25vbWVyQ2Fwc1thdHRhY2htZW50UG9pbnRdO1xyXG4gICAgICAgIHJldHVybiBoeWRyYXRlTGVhdmluZ0dyb3VwKGxlYXZpbmdHcm91cCk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgaGFuZGxlU2VsZWN0QXR0YWNobWVudFBvaW50ID0gKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld0JvbmRzID0geyAuLi5tb25vbWVyLmF0dGFjaG1lbnRQb2ludHNUb0JvbmRzIH07XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRCb25kID0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgPyBuZXdCb25kc1tzZWxlY3RlZEF0dGFjaG1lbnRQb2ludF1cclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIGlmIChzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCAmJiBzZWxlY3RlZEJvbmQpIHtcclxuICAgICAgICAgICAgbW9ub21lci5yZW1vdmVCb25kKHNlbGVjdGVkQm9uZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHBvdGVudGlhbEJvbmQgPSBtb25vbWVyLmdldFBvdGVudGlhbEJvbmQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBuZXdCb25kc1thdHRhY2htZW50UG9pbnRdID0gcG90ZW50aWFsQm9uZDtcclxuICAgICAgICBzZXRCb25kcyhuZXdCb25kcyk7XHJcbiAgICAgICAgb25TZWxlY3RBdHRhY2htZW50UG9pbnQoYXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICBjb25zdCBuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzID0gZ2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdCb25kcyk7XHJcbiAgICAgICAgc2V0Q29ubmVjdGVkQXR0YWNobWVudFBvaW50cyhuZXdDb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gKF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IG1vbm9tZXIsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsIHNlbGVjdGVkQXR0YWNobWVudFBvaW50OiBzZWxlY3RlZEF0dGFjaG1lbnRQb2ludCwgdXNhZ2U6IFVzYWdlSW5NYWNyb21vbGVjdWxlLk1vbm9tZXJDb25uZWN0aW9uc01vZGFsLCB1cGRhdGU6IGV4cGFuZGVkLCBleHBhbmRlZDogZXhwYW5kZWQsIGF0dGFjaG1lbnRQb2ludHM6IG1vbm9tZXIubGlzdE9mQXR0YWNobWVudFBvaW50cy5tYXAoKGF0dGFjaG1lbnRQb2ludCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBkaXNhYmxlZCA9IEJvb2xlYW4oY29ubmVjdGVkQXR0YWNobWVudFBvaW50cy5pbmNsdWRlcyhhdHRhY2htZW50UG9pbnQpICYmXHJcbiAgICAgICAgICAgICAgICBhdHRhY2htZW50UG9pbnQgIT09IHNlbGVjdGVkQXR0YWNobWVudFBvaW50KTtcclxuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhBdHRhY2htZW50UG9pbnQsIHsgY2hpbGRyZW46IFtfanN4KEFjdGlvbkJ1dHRvbkF0dGFjaG1lbnRQb2ludCwgeyBsYWJlbDogYXR0YWNobWVudFBvaW50LCBzdHlsZVR5cGU6IGF0dGFjaG1lbnRQb2ludCA9PT0gc2VsZWN0ZWRBdHRhY2htZW50UG9pbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ3ByaW1hcnknXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdzZWNvbmRhcnknLCBjbGlja0hhbmRsZXI6ICgpID0+IGhhbmRsZVNlbGVjdEF0dGFjaG1lbnRQb2ludChhdHRhY2htZW50UG9pbnQpLCBkaXNhYmxlZDogZGlzYWJsZWQgfSksIF9qc3goQXR0YWNobWVudFBvaW50TmFtZUNvbXBvbmVudCwgeyBcImRhdGEtdGVzdGlkXCI6IFwibGVhdmluZy1ncm91cC12YWx1ZVwiLCBkaXNhYmxlZDogZGlzYWJsZWQsIGNoaWxkcmVuOiBnZXRMZWF2aW5nR3JvdXAoYXR0YWNobWVudFBvaW50KSB9KV0gfSwgYXR0YWNobWVudFBvaW50KSk7XHJcbiAgICAgICAgfSkgfSkpO1xyXG59XHJcbmZ1bmN0aW9uIGdldERlZmF1bHRBdHRhY2htZW50UG9pbnQobW9ub21lcikge1xyXG4gICAgaWYgKG1vbm9tZXIuY2hvc2VuRmlyc3RBdHRhY2htZW50UG9pbnRGb3JCb25kKVxyXG4gICAgICAgIHJldHVybiBtb25vbWVyLmNob3NlbkZpcnN0QXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGlmIChtb25vbWVyLmNob3NlblNlY29uZEF0dGFjaG1lbnRQb2ludEZvckJvbmQpXHJcbiAgICAgICAgcmV0dXJuIG1vbm9tZXIuY2hvc2VuU2Vjb25kQXR0YWNobWVudFBvaW50Rm9yQm9uZDtcclxuICAgIGNvbnN0IHBvc3NpYmxlQXR0YWNobWVudFBvaW50cyA9IE9iamVjdC5lbnRyaWVzKG1vbm9tZXIuYXR0YWNobWVudFBvaW50c1RvQm9uZHMpLmZpbHRlcigoW18sIGJvbmRdKSA9PiBib25kID09IG51bGwpO1xyXG4gICAgaWYgKHBvc3NpYmxlQXR0YWNobWVudFBvaW50cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCBbYXR0YWNobWVudFBvaW50TmFtZV0gPSBwb3NzaWJsZUF0dGFjaG1lbnRQb2ludHNbMF07XHJcbiAgICAgICAgcmV0dXJuIGF0dGFjaG1lbnRQb2ludE5hbWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxufVxyXG5leHBvcnQgeyBNb25vbWVyQ29ubmVjdGlvbiB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyQ29ubmVjdGlvbnMuanMubWFwIl19 */");
var MonomerConnection = function MonomerConnection(_ref) {
  var onClose = _ref.onClose,
    isModalOpen = _ref.isModalOpen,
    firstMonomer = _ref.firstMonomer,
    secondMonomer = _ref.secondMonomer,
    polymerBond = _ref.polymerBond,
    isReconnectionDialog = _ref.isReconnectionDialog;
  var editor = useAppSelector(selectEditor);
  var initialFirstMonomerAttachmentPointRef = useRef(polymerBond === null || polymerBond === void 0 ? void 0 : polymerBond.firstMonomerAttachmentPoint);
  var initialSecondMonomerAttachmentPointRef = useRef(polymerBond === null || polymerBond === void 0 ? void 0 : polymerBond.secondMonomerAttachmentPoint);
  var hasFreeAttachmentPointsRef = useRef((firstMonomer === null || firstMonomer === void 0 ? void 0 : firstMonomer.hasFreeAttachmentPoint) || (secondMonomer === null || secondMonomer === void 0 ? void 0 : secondMonomer.hasFreeAttachmentPoint));
  if (!firstMonomer || !secondMonomer) {
    throw new Error('Monomers must exist!');
  }
  var _useState = useState(initialFirstMonomerAttachmentPointRef.current || getDefaultAttachmentPoint(firstMonomer)),
    _useState2 = _slicedToArray(_useState, 2),
    firstSelectedAttachmentPoint = _useState2[0],
    setFirstSelectedAttachmentPoint = _useState2[1];
  var _useState3 = useState(initialSecondMonomerAttachmentPointRef.current || getDefaultAttachmentPoint(secondMonomer)),
    _useState4 = _slicedToArray(_useState3, 2),
    secondSelectedAttachmentPoint = _useState4[0],
    setSecondSelectedAttachmentPoint = _useState4[1];
  var _useState5 = useState(false),
    _useState6 = _slicedToArray(_useState5, 2),
    modalExpanded = _useState6[0],
    setModalExpanded = _useState6[1];
  var cancelBondCreationAndClose = function cancelBondCreationAndClose() {
    if (isReconnectionDialog) {
      var _polymerBond$secondMo;
      polymerBond === null || polymerBond === void 0 || polymerBond.firstMonomer.setBond(initialFirstMonomerAttachmentPointRef.current, polymerBond);
      polymerBond === null || polymerBond === void 0 || (_polymerBond$secondMo = polymerBond.secondMonomer) === null || _polymerBond$secondMo === void 0 || _polymerBond$secondMo.setBond(initialSecondMonomerAttachmentPointRef.current, polymerBond);
      onClose();
    } else {
      editor.events.cancelBondCreationViaModal.dispatch(secondMonomer);
      onClose();
    }
  };
  var connectMonomers = function connectMonomers() {
    if (!firstSelectedAttachmentPoint || !secondSelectedAttachmentPoint) {
      throw new Error('Attachment points cannot be falsy');
    }
    if (firstSelectedAttachmentPoint === initialFirstMonomerAttachmentPointRef.current && secondSelectedAttachmentPoint === initialSecondMonomerAttachmentPointRef.current) {
      cancelBondCreationAndClose();
      return;
    }
    editor.events.createBondViaModal.dispatch({
      firstMonomer: firstMonomer,
      secondMonomer: secondMonomer,
      firstSelectedAttachmentPoint: firstSelectedAttachmentPoint,
      secondSelectedAttachmentPoint: secondSelectedAttachmentPoint,
      polymerBond: polymerBond,
      isReconnection: isReconnectionDialog,
      initialFirstMonomerAttachmentPoint: initialFirstMonomerAttachmentPointRef.current,
      initialSecondMonomerAttachmentPoint: initialSecondMonomerAttachmentPointRef.current
    });
    onClose();
  };
  return jsxs(StyledModal, {
    title: isReconnectionDialog ? 'Edit Connection Points' : 'Select connection points',
    isOpen: isModalOpen,
    onClose: cancelBondCreationAndClose,
    showExpandButton: true,
    modalWidth: "358px",
    expanded: modalExpanded,
    setExpanded: setModalExpanded,
    children: [jsx(Modal.Content, {
      children: jsx(ModalContent, {
        children: jsx(ConnectionOverview, {
          firstMonomer: firstMonomer,
          secondMonomer: secondMonomer,
          expanded: modalExpanded,
          firstMonomerOverview: jsx(AttachmentPointSelectionPanel, {
            monomer: firstMonomer,
            selectedAttachmentPoint: firstSelectedAttachmentPoint,
            onSelectAttachmentPoint: setFirstSelectedAttachmentPoint,
            expanded: modalExpanded
          }),
          secondMonomerOverview: jsx(AttachmentPointSelectionPanel, {
            monomer: secondMonomer,
            selectedAttachmentPoint: secondSelectedAttachmentPoint,
            onSelectAttachmentPoint: setSecondSelectedAttachmentPoint,
            expanded: modalExpanded
          })
        })
      })
    }), jsxs(Modal.Footer, {
      children: [jsx(ActionButtonLeft, {
        label: "Cancel",
        styleType: "secondary",
        clickHandler: cancelBondCreationAndClose
      }), jsx(ActionButtonRight, {
        label: isReconnectionDialog ? 'Reconnect' : 'Connect',
        disabled: !firstSelectedAttachmentPoint || !secondSelectedAttachmentPoint || !hasFreeAttachmentPointsRef.current,
        clickHandler: connectMonomers
      })]
    })]
  });
};
function AttachmentPointSelectionPanel(_ref2) {
  var monomer = _ref2.monomer,
    selectedAttachmentPoint = _ref2.selectedAttachmentPoint,
    onSelectAttachmentPoint = _ref2.onSelectAttachmentPoint,
    _ref2$expanded = _ref2.expanded,
    expanded = _ref2$expanded === void 0 ? false : _ref2$expanded;
  var _useState7 = useState(monomer.attachmentPointsToBonds),
    _useState8 = _slicedToArray(_useState7, 2),
    bonds = _useState8[0],
    setBonds = _useState8[1];
  var _useState9 = useState(function () {
      return getConnectedAttachmentPoints(bonds);
    }),
    _useState10 = _slicedToArray(_useState9, 2),
    connectedAttachmentPoints = _useState10[0],
    setConnectedAttachmentPoints = _useState10[1];
  useEffect(function () {
    setBonds(monomer.attachmentPointsToBonds);
  }, [selectedAttachmentPoint]);
  useEffect(function () {
    var newConnectedAttachmentPoints = getConnectedAttachmentPoints(bonds);
    setConnectedAttachmentPoints(newConnectedAttachmentPoints);
  }, [bonds]);
  var getLeavingGroup = function getLeavingGroup(attachmentPoint) {
    var MonomerCaps = monomer.monomerCaps;
    var isAmbiguousMonomer = monomer instanceof AmbiguousMonomer;
    if (!MonomerCaps) {
      return isAmbiguousMonomer ? null : 'H';
    }
    var leavingGroup = MonomerCaps[attachmentPoint];
    return hydrateLeavingGroup(leavingGroup);
  };
  var handleSelectAttachmentPoint = function handleSelectAttachmentPoint(attachmentPoint) {
    var newBonds = _objectSpread$4({}, monomer.attachmentPointsToBonds);
    var selectedBond = selectedAttachmentPoint ? newBonds[selectedAttachmentPoint] : null;
    if (selectedAttachmentPoint && selectedBond) {
      monomer.removeBond(selectedBond);
    }
    var potentialBond = monomer.getPotentialBond(attachmentPoint);
    newBonds[attachmentPoint] = potentialBond;
    setBonds(newBonds);
    onSelectAttachmentPoint(attachmentPoint);
    var newConnectedAttachmentPoints = getConnectedAttachmentPoints(newBonds);
    setConnectedAttachmentPoints(newConnectedAttachmentPoints);
  };
  return jsx(MonomerOverview, {
    monomer: monomer,
    connectedAttachmentPoints: connectedAttachmentPoints,
    selectedAttachmentPoint: selectedAttachmentPoint,
    usage: UsageInMacromolecule.MonomerConnectionsModal,
    update: expanded,
    expanded: expanded,
    attachmentPoints: monomer.listOfAttachmentPoints.map(function (attachmentPoint) {
      var disabled = Boolean(connectedAttachmentPoints.includes(attachmentPoint) && attachmentPoint !== selectedAttachmentPoint);
      return jsxs(AttachmentPoint$2, {
        children: [jsx(ActionButtonAttachmentPoint, {
          label: attachmentPoint,
          styleType: attachmentPoint === selectedAttachmentPoint ? 'primary' : 'secondary',
          clickHandler: function clickHandler() {
            return handleSelectAttachmentPoint(attachmentPoint);
          },
          disabled: disabled
        }), jsx(AttachmentPointName$1, {
          "data-testid": "leaving-group-value",
          disabled: disabled,
          children: getLeavingGroup(attachmentPoint)
        })]
      }, attachmentPoint);
    })
  });
}
function getDefaultAttachmentPoint(monomer) {
  if (monomer.chosenFirstAttachmentPointForBond) return monomer.chosenFirstAttachmentPointForBond;
  if (monomer.chosenSecondAttachmentPointForBond) return monomer.chosenSecondAttachmentPointForBond;
  var possibleAttachmentPoints = Object.entries(monomer.attachmentPointsToBonds).filter(function (_ref3) {
    var _ref4 = _slicedToArray(_ref3, 2);
      _ref4[0];
      var bond = _ref4[1];
    return bond == null;
  });
  if (possibleAttachmentPoints.length === 1) {
    var _possibleAttachmentPo = _slicedToArray(possibleAttachmentPoints[0], 1),
      attachmentPointName = _possibleAttachmentPo[0];
    return attachmentPointName;
  }
  return null;
}

function _EMOTION_STRINGIFIED_CSS_ERROR__$b() { 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)."; }
var ConfirmationText = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1e4h5hm0"
} : {
  target: "e1e4h5hm0",
  label: "ConfirmationText"
})(process.env.NODE_ENV === "production" ? {
  name: "1fayh9l",
  styles: "padding:12px;font-size:12px;color:#000"
} : {
  name: "1fayh9l",
  styles: "padding:12px;font-size:12px;color:#000",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNvbmZpcm1hdGlvbkRpYWxvZy5zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ3lDIiwiZmlsZSI6IkNvbmZpcm1hdGlvbkRpYWxvZy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBDb25maXJtYXRpb25UZXh0ID0gc3R5bGVkLnAgYFxuICBwYWRkaW5nOiAxMnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjMDAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Q29uZmlybWF0aW9uRGlhbG9nLnN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$b
});

var ConfirmationDialog = function ConfirmationDialog(_ref) {
  var title = _ref.title,
    confirmationText = _ref.confirmationText,
    onConfirm = _ref.onConfirm,
    isModalOpen = _ref.isModalOpen,
    onClose = _ref.onClose;
  var handleConfirm = function handleConfirm() {
    onConfirm();
    onClose();
  };
  return jsxs(Modal, {
    isOpen: isModalOpen,
    title: title || 'Confirm your action',
    onClose: onClose,
    children: [jsx(Modal.Content, {
      children: jsx(ConfirmationText, {
        children: confirmationText
      })
    }), jsxs(Modal.Footer, {
      children: [jsx(ActionButton, {
        label: "Cancel",
        clickHandler: onClose
      }), jsx(ActionButton, {
        label: "Yes",
        clickHandler: handleConfirm,
        styleType: "secondary"
      })]
    })]
  });
};

var modalComponentList = {
  open: Open,
  save: Save,
  "delete": Delete,
  updateSequenceInRNABuilder: UpdateSequenceInRNABuilder,
  monomerConnection: MonomerConnection,
  confirmationDialog: ConfirmationDialog
};

function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var ModalContainer = function ModalContainer() {
  var isOpen = useAppSelector(selectModalIsOpen);
  var modalName = useAppSelector(selectModalName);
  var additionalProps = useAppSelector(selectAdditionalProps);
  var dispatch = useAppDispatch();
  var handleClose = useCallback(function () {
    dispatch(closeModal());
  }, [dispatch]);
  if (!modalName) return null;
  var Component = modalComponentList[modalName];
  if (!Component) throw new Error("There is no modal window named ".concat(modalName));
  return additionalProps ? jsx(Component, _objectSpread$3({
    onClose: handleClose,
    isModalOpen: isOpen
  }, additionalProps)) : jsx(Component, {
    onClose: handleClose,
    isModalOpen: isOpen
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$a() { 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)."; }
var StyledToast = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e15avtnm2"
} : {
  target: "e15avtnm2",
  label: "StyledToast"
})(process.env.NODE_ENV === "production" ? {
  name: "1bweptz",
  styles: "background-color:#333333;max-height:40px;display:flex;align-items:stretch"
} : {
  name: "1bweptz",
  styles: "background-color:#333333;max-height:40px;display:flex;align-items:stretch",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFMkIiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdCA9IHN0eWxlZC5kaXYoe1xyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzMzMzMzMycsXHJcbiAgICBtYXhIZWlnaHQ6ICc0MHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGFsaWduSXRlbXM6ICdzdHJldGNoJyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdENvbnRlbnQgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1heFdpZHRoOiAnMzU2cHgnLFxyXG4gICAgcGFkZGluZzogJzRweCAxMHB4IDRweCAxMHB4JyxcclxuICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEljb25CdXR0b24gPSBzdHlsZWQoSWNvbkJ1dHRvbikgYFxuICBjb2xvcjogd2hpdGU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1ODU4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
});
var StyledToastContent = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e15avtnm1"
} : {
  target: "e15avtnm1",
  label: "StyledToastContent"
})(process.env.NODE_ENV === "production" ? {
  name: "1my6l07",
  styles: "max-width:356px;padding:4px 10px 4px 10px;color:white;display:flex"
} : {
  name: "1my6l07",
  styles: "max-width:356px;padding:4px 10px 4px 10px;color:white;display:flex",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRa0MiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdCA9IHN0eWxlZC5kaXYoe1xyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzMzMzMzMycsXHJcbiAgICBtYXhIZWlnaHQ6ICc0MHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGFsaWduSXRlbXM6ICdzdHJldGNoJyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdENvbnRlbnQgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1heFdpZHRoOiAnMzU2cHgnLFxyXG4gICAgcGFkZGluZzogJzRweCAxMHB4IDRweCAxMHB4JyxcclxuICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEljb25CdXR0b24gPSBzdHlsZWQoSWNvbkJ1dHRvbikgYFxuICBjb2xvcjogd2hpdGU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1ODU4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
});
var StyledIconButton$1 = _styled(IconButton, process.env.NODE_ENV === "production" ? {
  target: "e15avtnm0"
} : {
  target: "e15avtnm0",
  label: "StyledIconButton"
})(process.env.NODE_ENV === "production" ? {
  name: "1c8hqv0",
  styles: "color:white;width:24px;height:auto;display:flex;align-items:center;justify-content:center;&:hover{background-color:#585858;color:white;}svg{width:16px;height:16px;}"
} : {
  name: "1c8hqv0",
  styles: "color:white;width:24px;height:auto;display:flex;align-items:center;justify-content:center;&:hover{background-color:#585858;color:white;}svg{width:16px;height:16px;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjbUQiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uQnV0dG9uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdCA9IHN0eWxlZC5kaXYoe1xyXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzMzMzMzMycsXHJcbiAgICBtYXhIZWlnaHQ6ICc0MHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGFsaWduSXRlbXM6ICdzdHJldGNoJyxcclxufSk7XHJcbmV4cG9ydCBjb25zdCBTdHlsZWRUb2FzdENvbnRlbnQgPSBzdHlsZWQuZGl2KHtcclxuICAgIG1heFdpZHRoOiAnMzU2cHgnLFxyXG4gICAgcGFkZGluZzogJzRweCAxMHB4IDRweCAxMHB4JyxcclxuICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG59KTtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEljb25CdXR0b24gPSBzdHlsZWQoSWNvbkJ1dHRvbikgYFxuICBjb2xvcjogd2hpdGU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1ODU4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
});

var ChemAvatar = function ChemAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "chem",
      viewBox: "0 0 59 59",
      width: "59",
      height: "59",
      children: jsx("rect", {
        className: "monomer-body",
        width: "29.5",
        height: "29.5",
        "data-actual-width": "29.5",
        "data-actual-height": "29.5",
        x: "0.5",
        y: "0.5",
        rx: "0.75",
        fill: "#F5F6F7"
      })
    }), jsx("symbol", {
      id: "chem-selection",
      viewBox: "0 0 59 59",
      width: "59",
      height: "59",
      children: jsx("rect", {
        width: "29.5",
        height: "29.5",
        x: "0.5",
        y: "0.5",
        rx: "0.75",
        stroke: "#0097A8",
        fill: "none",
        strokeWidth: "1.5"
      })
    })]
  });
};

var PeptideAvatar = function PeptideAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "peptide",
      viewBox: "0 0 70 61",
      width: "70",
      height: "61",
      children: jsx("path", {
        className: "monomer-body",
        transform: "scale(0.5)",
        "data-actual-width": "35",
        "data-actual-height": "30.5",
        d: "M16.9236 1.00466C17.2801 0.383231 17.9418 6.10888e-07 18.6583 5.98224e-07L51.3417 2.04752e-08C52.0582 7.81036e-09 52.7199 0.383234 53.0764 1.00466L69.4289 29.5047C69.7826 30.1211 69.7826 30.8789 69.4289 31.4953L53.0764 59.9953C52.7199 60.6168 52.0582 61 51.3417 61H18.6583C17.9418 61 17.2801 60.6168 16.9236 59.9953L0.571095 31.4953C0.217407 30.8789 0.217408 30.1211 0.571096 29.5047L16.9236 1.00466Z"
      })
    }), jsxs("symbol", {
      id: "peptide-hover",
      viewBox: "0 0 70 61",
      width: "70",
      height: "61",
      children: [jsx("path", {
        d: "M18.2246 1.75116C18.3137 1.59581 18.4792 1.5 18.6583 1.5L51.3417 1.5C51.5208 1.5 51.6863 1.59581 51.7754 1.75116L53.06 1.01408L51.7754 1.75117L68.1279 30.2512C68.2163 30.4053 68.2163 30.5947 68.1279 30.7488L51.7754 59.2488C51.6863 59.4042 51.5208 59.5 51.3417 59.5H18.6583C18.4792 59.5 18.3137 59.4042 18.2246 59.2488L1.87215 30.7488C1.78372 30.5947 1.78372 30.4053 1.87215 30.2512L18.2246 1.75116Z",
        fill: "none",
        transform: "scale(0.5)",
        stroke: "#0097A8",
        strokeWidth: "3"
      }), ' ']
    }), jsx("symbol", {
      id: "peptide-selection",
      viewBox: "0 0 70 61",
      width: "70",
      height: "61",
      children: jsx("path", {
        xmlns: "http://www.w3.org/2000/svg",
        d: "M17.3572 1.25349C17.6247 0.787424 18.1209 0.500001 18.6583 0.500001L51.3417 0.5C51.8791 0.5 52.3753 0.787425 52.6428 1.2535L53.0665 1.01035L52.6428 1.2535L68.9952 29.7535C69.2605 30.2158 69.2605 30.7842 68.9952 31.2465L52.6428 59.7465C52.3753 60.2126 51.8791 60.5 51.3417 60.5H18.6583C18.1209 60.5 17.6247 60.2126 17.3572 59.7465L1.00478 31.2465C0.739513 30.7842 0.739513 30.2158 1.00478 29.7535L17.3572 1.25349Z",
        fill: "none",
        transform: "scale(0.5)",
        stroke: "#0097A8"
      })
    }), jsx("symbol", {
      id: "modified-background",
      viewBox: "0 0 60 20",
      width: "30",
      height: "20",
      x: "2.5",
      y: "5",
      children: jsx("path", {
        xmlns: "http://www.w3.org/2000/svg",
        d: "M6.52702 20C5.81057 20 5.14885 19.6168 4.79229 18.9953L0.570974 11.6382C0.217285 11.0218 \n           0.217285 10.2639 0.570974 9.64751L5.52999 1.00466C5.88654 0.383235 6.54827 0 7.26472 0H52.735C53.4515\n           0 54.1132 0.383234 54.4698 1.00466L59.4288 9.64751C59.7825 10.2639 59.7825 11.0218 59.4288 11.6382\n           L55.2075 18.9953C54.8509 19.6168 54.1892 20 53.4727 20H6.52702Z",
        fillOpacity: "0.6"
      })
    })]
  });
};

var SugarAvatar = function SugarAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "sugar",
      viewBox: "0 0 70 70",
      width: "70",
      height: "70",
      children: jsx("rect", {
        className: "monomer-body",
        width: "28.5",
        height: "28.5",
        "data-actual-width": "28.5",
        "data-actual-height": "28.5",
        rx: "5"
      })
    }), jsx("symbol", {
      id: "sugar-selection",
      viewBox: "-1 -1 100 100",
      width: "70",
      height: "70",
      children: jsx("rect", {
        width: "39",
        height: "39",
        rx: "5",
        fill: "none",
        stroke: "#0097A8",
        strokeWidth: "2.5"
      })
    }), jsx("symbol", {
      id: "sugar-variant",
      viewBox: "0 0 72 72",
      width: "70",
      height: "70",
      children: jsx("rect", {
        className: "monomer-body",
        width: "28.5",
        height: "28.5",
        "data-actual-width": "28.5",
        "data-actual-height": "28.5",
        x: "0.5",
        y: "0.5",
        rx: "5",
        stroke: "#585858",
        strokeWidth: "0.5"
      })
    }), jsx("symbol", {
      id: "sugar-modified-background",
      viewBox: "0 0 28 10",
      width: "27",
      height: "10",
      x: "0.7",
      y: "10",
      children: jsx("path", {
        d: "M1.5 10C0.947715 10 0.5 9.55229 0.5 9V1C0.5 0.447715 0.947715 0 1.5 0H26.5C27.0523 0 27.5 0.447715 27.5 1V9C27.5 9.55228 27.0523 10 26.5 10H1.5Z",
        fill: "white",
        fillOpacity: "0.6"
      })
    })]
  });
};

var PhosphateAvatar = function PhosphateAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "phosphate",
      viewBox: "0 0 70 70",
      width: "70",
      height: "70",
      children: jsx("rect", {
        className: "monomer-body",
        width: "28",
        height: "28",
        "data-actual-width": "28",
        "data-actual-height": "28",
        rx: "15"
      })
    }), jsx("symbol", {
      id: "phosphate-selection",
      viewBox: "-1 -1 75 75",
      width: "70",
      height: "70",
      children: jsx("rect", {
        width: "28",
        height: "28",
        rx: "15",
        fill: "none",
        stroke: "#0097A8",
        strokeWidth: "1.5"
      })
    }), jsx("symbol", {
      id: "phosphate-variant",
      viewBox: "0 0 70 70",
      width: "70",
      height: "70",
      children: jsx("rect", {
        className: "monomer-body",
        width: "27",
        height: "27",
        "data-actual-width": "27",
        "data-actual-height": "27",
        stroke: "#585858",
        strokeWidth: "0.5",
        x: "0.5",
        y: "0.5",
        rx: "15"
      })
    }), jsx("symbol", {
      id: "phosphate-modified-background",
      viewBox: "0 0 28 10",
      width: "26",
      height: "10",
      x: "1",
      y: "9.5",
      children: jsx("path", {
        d: "M2.13388 0C1.72465 0 1.35333 0.248229 1.22109 0.635509C0.753639 2.00455 0.5 3.47265 0.5 5C0.5 6.52735 0.753639 7.99545 1.22109 9.36449C1.35333 9.75177 1.72465 10 2.13389 10H25.8661C26.2753 10 26.6467 9.75177 26.7789 9.36449C27.2464 7.99545 27.5 6.52735 27.5 5C27.5 3.47265 27.2464 2.00455 26.7789 0.635509C26.6467 0.248229 26.2753 0 25.8661 0H2.13388Z",
        fill: "#333333",
        fillOpacity: "0.6"
      })
    })]
  });
};

var RNABaseAvatar = function RNABaseAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "rna-base",
      viewBox: "-16 0 65 65",
      width: "65",
      height: "95",
      children: jsx("rect", {
        width: "22.5",
        height: "22.5",
        "data-actual-width": "31.82",
        "data-actual-height": "31.82",
        rx: "1",
        x: "-11.25",
        y: "-11.25",
        transform: "rotate(45)",
        className: "monomer-body"
      })
    }), jsx("symbol", {
      id: "rna-base-selection",
      viewBox: "-15.75 -0.25 65 65",
      width: "65",
      height: "95",
      children: jsx("rect", {
        width: "21",
        height: "21",
        rx: "1",
        x: "-10.5",
        y: "-10.5",
        transform: "rotate(45)",
        stroke: "#0097A8",
        strokeWidth: "1.5",
        fill: "none"
      })
    }), jsx("symbol", {
      id: "rna-base-variant",
      viewBox: "-16 0 65 65",
      width: "65",
      height: "94",
      children: jsx("rect", {
        width: "21.5",
        height: "21.5",
        "data-actual-width": "30",
        "data-actual-height": "30",
        stroke: "#585858",
        strokeWidth: "0.5",
        rx: "1",
        x: "-10.25",
        y: "-10.25",
        transform: "rotate(45)",
        className: "monomer-body"
      })
    }), jsx("symbol", {
      id: "rna-base-modified-background",
      viewBox: "0 0 32 10",
      width: "30",
      height: "9",
      x: "0.8",
      y: "10.8",
      children: jsx("path", {
        fillRule: "evenodd",
        clipRule: "evenodd",
        d: "M6.30156 10C6.03634 10 5.78199 9.89464 5.59445 9.70711L1.1508 5.26346C0.760279 4.87293 0.760279 4.23977 1.1508 3.84924L4.70715 0.292893C4.89469 0.105357 5.14904 0 5.41426 0H26.5858C26.851 0 27.1054 0.105357 27.2929 0.292893L30.8493 3.84924C31.2398 4.23977 31.2398 4.87293 30.8493 5.26346L26.4056 9.70711C26.2181 9.89464 25.9637 10 25.6985 10H6.30156Z",
        fill: "#333333",
        fillOpacity: "0.6"
      })
    })]
  });
};

var UnresolvedMonomerAvatar = function UnresolvedMonomerAvatar() {
  return jsxs(Fragment, {
    children: [jsxs("symbol", {
      id: "unresolved-monomer",
      viewBox: "0 0 59 59",
      width: "59",
      height: "59",
      children: [jsx("rect", {
        className: "monomer-body",
        width: "29.5",
        height: "29.5",
        "data-actual-width": "29.5",
        "data-actual-height": "29.5",
        x: "0.5",
        y: "0.5",
        rx: "1.5",
        stroke: "#333333"
      }), jsx("rect", {
        width: "29.5",
        height: "29.5",
        "data-actual-width": "29.5",
        "data-actual-height": "29.5",
        x: "0.5",
        y: "0.5",
        rx: "1.5",
        fill: "#585858"
      })]
    }), jsx("symbol", {
      id: "unresolved-monomer-selection",
      children: jsx("rect", {
        width: "29.5",
        height: "29.5",
        x: "0.5",
        y: "0.5",
        rx: "1.5",
        fill: "none",
        stroke: "#0097A8"
      })
    }), jsx("symbol", {
      id: "unresolved-monomer-hover",
      children: jsx("rect", {
        width: "29.5",
        height: "29.5",
        x: "0.5",
        y: "0.5",
        rx: "1.5",
        fill: "none",
        stroke: "#0097A8",
        strokeWidth: "1.5"
      })
    })]
  });
};

var NucleotideAvatar = function NucleotideAvatar() {
  return jsxs(Fragment, {
    children: [jsx("symbol", {
      id: "nucleotide",
      viewBox: "0 0 84 84",
      width: "42",
      height: "42",
      children: jsx("path", {
        className: "monomer-body",
        "data-actual-width": "42",
        "data-actual-height": "42",
        d: "M43.0152 71.4019C42.3887 71.771 41.6113 71.771 40.9848 71.4019L9.25584 52.7093C8.50744 52.2684 8.1292 51.3948 8.31974 50.5473L16.6358 13.5613C16.841 12.6485 17.6516 12 18.5871 12L65.4129 12C66.3484 12 67.159 12.6485 67.3642 13.5613L75.6803 50.5473C75.8708 51.3948 75.4926 52.2684 74.7442 52.7093L43.0152 71.4019Z",
        transform: "rotate(180, 42, 42)"
      })
    }), jsx("symbol", {
      id: "nucleotide-selection",
      viewBox: "0 0 84 84",
      width: "42",
      height: "42",
      children: jsx("path", {
        "data-actual-width": "42",
        "data-actual-height": "42",
        d: "M43.0152 71.4019C42.3887 71.771 41.6113 71.771 40.9848 71.4019L9.25584 52.7093C8.50744 52.2684 8.1292 51.3948 8.31974 50.5473L16.6358 13.5613C16.841 12.6485 17.6516 12 18.5871 12L65.4129 12C66.3484 12 67.159 12.6485 67.3642 13.5613L75.6803 50.5473C75.8708 51.3948 75.4926 52.2684 74.7442 52.7093L43.0152 71.4019Z",
        transform: "rotate(180, 42, 42)",
        fill: "none",
        stroke: "#0097A8"
      })
    }), jsx("symbol", {
      id: "nucleotide-hover",
      viewBox: "0 0 84 84",
      width: "42",
      height: "42",
      children: jsx("path", {
        "data-actual-width": "42",
        "data-actual-height": "42",
        d: "M43.0152 71.4019C42.3887 71.771 41.6113 71.771 40.9848 71.4019L9.25584 52.7093C8.50744 52.2684 8.1292 51.3948 8.31974 50.5473L16.6358 13.5613C16.841 12.6485 17.6516 12 18.5871 12L65.4129 12C66.3484 12 67.159 12.6485 67.3642 13.5613L75.6803 50.5473C75.8708 51.3948 75.4926 52.2684 74.7442 52.7093L43.0152 71.4019Z",
        transform: "rotate(180, 42, 42)",
        fill: "none",
        stroke: "#0097A8",
        strokeWidth: "3"
      })
    })]
  });
};

var ArrowMarker = function ArrowMarker() {
  return jsxs(Fragment, {
    children: [jsx("path", {
      strokeLinecap: "round",
      d: "M5,0 0,2.5 5,5z",
      id: "arrow-marker-content"
    }), jsx("marker", {
      id: "arrow-marker",
      markerHeight: "3",
      markerWidth: "5",
      orient: "auto",
      refX: "2.5",
      refY: "1.5",
      children: jsx("use", {
        href: "#arrow-marker-content",
        transform: "rotate(180 2.5 1.5) scale(1,0.6)",
        strokeWidth: "1.2500",
        fill: "black",
        stroke: "none"
      })
    }), jsx("marker", {
      id: "arrow-marker-arc",
      markerWidth: "5",
      markerHeight: "5",
      viewBox: "0 0 5 5",
      refX: "5",
      refY: "2.5",
      orient: "auto",
      children: jsx("use", {
        href: "#arrow-marker-content",
        transform: "rotate(180, 2.5, 2.5)",
        fill: "#365CFF",
        stroke: "none"
      })
    })]
  });
};

var SequenceStartArrow = function SequenceStartArrow() {
  return jsx(Fragment, {
    children: jsx("symbol", {
      id: "sequence-start-arrow",
      viewBox: "0 0 65 65",
      width: "65",
      height: "95",
      children: jsx("svg", {
        width: "12",
        height: "12",
        viewBox: "0 0 12 12",
        fill: "none",
        xmlns: "http://www.w3.org/2000/svg",
        children: jsx("path", {
          d: "M10.2802 5.09664C10.9756 5.49813 10.9756 6.50187 10.2802 6.90336L2.56467 11.3579C1.86926 11.7594 1 11.2576 1 10.4546V1.54541C1 0.742426 1.86926 0.240558 2.56467 0.642053L10.2802 5.09664Z",
          stroke: "#7C7C7F"
        })
      })
    })
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$9() { 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)."; }
var ErrorTextWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1phidy70"
} : {
  target: "e1phidy70",
  label: "ErrorTextWrapper"
})(process.env.NODE_ENV === "production" ? {
  name: "1fayh9l",
  styles: "padding:12px;font-size:12px;color:#000"
} : {
  name: "1fayh9l",
  styles: "padding:12px;font-size:12px;color:#000",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkVycm9yLnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDMkMiLCJmaWxlIjoiRXJyb3Iuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgRXJyb3JUZXh0V3JhcHBlciA9IHN0eWxlZC5kaXYgYFxuICBwYWRkaW5nOiAxMnB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjMDAwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9RXJyb3Iuc3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
});

var ErrorModal = function ErrorModal() {
  var dispatch = useAppDispatch();
  var errorMessage = useAppSelector(selectErrorModalText);
  var errorTitle = useAppSelector(selectErrorModalTitle) || 'Error message';
  var isModalOpen = errorMessage !== '';
  var onClose = function onClose() {
    dispatch(closeErrorModal());
  };
  return jsxs(Modal, {
    isOpen: isModalOpen,
    title: errorTitle,
    onClose: onClose,
    children: [jsx(Modal.Content, {
      children: jsx(ErrorTextWrapper, {
        children: errorMessage
      })
    }), jsx(Modal.Footer, {
      children: jsx(ActionButton, {
        label: "Close",
        clickHandler: onClose
      })
    })]
  });
};

var EditorWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "embh3ih3"
} : {
  target: "embh3ih3",
  label: "EditorWrapper"
})(function () {
  return {
    height: '100%'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQzZCIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBFZGl0b3JXcmFwcGVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRvcE1lbnVSaWdodFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVG9nZ2xlckNvbXBvbmVudFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kOiAnJyxcclxuICAgICcmLnRvZ2dsZXItY29tcG9uZW50LXdyYXBwZXItLWRpc2FibGVkJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXHJcbiAgICAgICAgY3Vyc29yOiAnZGVmYXVsdCcsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBDYW52YXNXcmFwcGVyID0gc3R5bGVkLnN2ZygoKSA9PiAoe1xyXG4gICAgJyYuaGFuZEN1cnNvcic6IHtcclxuICAgICAgICBjdXJzb3I6IGBcbiAgICAgIHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWndvZ0lDQWdJQ0FnSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlLSUNBZ0lDQWdJQ0IzYVdSMGFEMGlNalFpQ2lBZ0lDQWdJQ0FnYUdWcFoyaDBQU0l5TkNJS0lDQWdJQ0FnSUNCbWFXeHNQU0p1YjI1bElnb2dJQ0FnSUNBZ0lIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqTURBd0lnb2dJQ0FnSUNBZ0lDQWdJQ0JrUFNKTk1qQXVORE0wSURjdU5qY3pZeTB1TVMwdU5pMHVOekV6TFRFdU56TXhMVEl1TXpJdE1TNDNNekV0TGpFeU5pQXdMUzR5TlRJdU1EQTNMUzR6TnpjdU1ESXpkaTB1TnpsaE1TNHdNU0F4TGpBeElEQWdNQ0F3TFM0d05EVXRMak5qTFM0eE56Y3RMalUyTkMwdU9EYzJMVEV1TmpNeExUSXVNall5TFRFdU5qTXhZVEl1TlRrNUlESXVOVGs1SURBZ01DQXdMUzQyTnpZdU1EZzJJREl1TXprMElESXVNemswSURBZ01DQXdMUzR4TkRZdExqSXpZeTB1TkRVekxTNDJORFV0TVM0eE9EWXRNUzB5TGpBMk15MHhMUzQ0TnpjZ01DMHhMalU0TkM0ek5pMHlMakF5TlNBeExqQXhOMkV5TGpRMk1TQXlMalEyTVNBd0lEQWdNQzB1TXpZeExqZzFJREl1TmpZeklESXVOall6SURBZ01DQXdMUzQwTURndExqQXpZeTB4TGpRM05DQXdMVEl1TVRJMElERXVNVFV0TWk0eU5qSWdNUzQzTlRkaE1TNHdNelFnTVM0d016UWdNQ0F3SURBdExqQXlOQzR5TWpKV01URXVNV3d0TGpFekxTNHhZeTB1TlRnNExTNDFMVEl1TURNMExURXVNVEl4TFRNdU16a3hMakF5T1MweExqTTFOeUF4TGpFMUxURXVNREUxSURJdU5qWTBMUzQwTXpFZ015NDBOVEl1TkRVekxqYzNNeUEwTGpVeE1pQTNMalF5TlNBeE1DNHlNak1nTnk0ME1qVWdNeTR5TlNBd0lEUXVPVEV0TVM0MU1USWdOUzQzTWprdE1pNDNPREZoTmk0eU9URWdOaTR5T1RFZ01DQXdJREFnTGprNExUSXVPRlkzTGpnek9HTXVNREF4TFM0d05UWXRMakF3TXkwdU1URXRMakF4TVMwdU1UWTFXaUlLSUNBZ0lDOCtDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqWm1abUlnb2dJQ0FnSUNBZ0lDQWdJQ0J6ZEhKdmEyVTlJaU5tWm1ZaUNpQWdJQ0FnSUNBZ0lDQWdJR1E5SWsweE9DNDBORGdnTVRZdU1qRTFZVFF1TkRjMElEUXVORGMwSURBZ01DQXhMUzQzSURFdU9EZzNZeTB1T0RBMUlERXVNaTB5TGpFMU15QXhMamd0TkM0d01EZ2dNUzQ0TFRRdU56WTRJREF0T0M0ME9EUXROaTQwTVRJdE9DNDFNaTAyTGpRM05tRXVOalk1TGpZMk9TQXdJREFnTUMwdU1Ea3RMakV5Tm1NdExqSTVOQzB1TkRBNElEQXRMalkxTlM0eE1EY3RMamMwT0M0eU5qY3RMakl5Tnk0MU5DMHVNak0zTGpneExTNHdNekZzTVM0M055QXhMalExTW1FeElERWdNQ0F3SURBZ01TNDJORFF0TGpjMk0xWTJMakE0WVM0eU9EY3VNamczSURBZ01DQXhJQzR5T1MwdU1UUTRMalEwTGpRMElEQWdNQ0F4SUM0ek56SXVNVFoyTkM0M1lURWdNU0F3SURFZ01DQXlJREIyTFRZdU5EVmpMakEyT0MwdU1qUTRMak10TGpJME9DNDBNakl0TGpJME9DNHlJREFnTGpReE5DNHdNekl1TkRneUxqSTFOWFkyTGpRMFlURWdNU0F3SURFZ01DQXlJREIyTFRVdU1tRXVOelV1TnpVZ01DQXdJREVnTGpBM05DMHVNVGxqTGpBME9TMHVNRGd4TGpFd09DMHVNVFV1TXpJMUxTNHhOV0V1TXpVdU16VWdNQ0F3SURFZ0xqTXdOeTR4TlhZMUxqTTVZVEVnTVNBd0lERWdNQ0F5SURCV09DNHdORGRoTGpVNE15NDFPRE1nTUNBd0lERWdMak0zTnkwdU1XTXVNRFkxSURBZ0xqSTFPQzR3TURZdU16TTBMakEzT0d3dU1EQTBJRGd1TVRsYUlnb2dJQ0FnTHo0S1BDOXpkbWMrQ2c9PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG4gICAgJyYuaGFuZEN1cnNvckdyYWJiaW5nJzoge1xyXG4gICAgICAgIGN1cnNvcjogYFxuICAgICAgdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJad29nSUNBZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWdvZ0lDQWdkMmxrZEdnOUlqSTBJZ29nSUNBZ2FHVnBaMmgwUFNJeU5DSUtJQ0FnSUdacGJHdzlJbTV2Ym1VaUNpQWdJQ0IyYVdWM1FtOTRQU0l3SURBZ016QWdNekFpQ2lBZ1Bnb2dJQ0FnUEhCaGRHZ0tJQ0FnSUNBZ1ptbHNiRDBpSTJabVppSUtJQ0FnSUNBZ1pEMGlUVEV3TGpjME5DQXpRemd1T0RrZ015QTNMak00TkNBMExqVXlOU0EzTGpNNE5DQTJMalIyTGpJeWFDMHVNREV5WXkweExqazVOeUF3TFRNdU5qSXlJREV1TmpBeUxUTXVOakl5SURNdU5UWTRiQzR3TURFZ055NHdNbU13SURFdU56Y2dNUzQxTVRJZ015NDFNVFVnTXk0eE1USWdOUzR6TmpFdU56SXVPRE1nTVM0NU1Ua2dNaTR5TVRZZ01pNHdNelFnTWk0M016RjJNUzQxTWpKb01UTXVORFF5ZGkweExqVTFOR013TFM0MU9TNDJNVGd0TVM0M055QXhMakUyTXkweUxqZ3hMamt6T0MweExqYzRPU0F4TGprNU9DMHpMamd4TlNBeExqazVPQzAxTGprNU1TQXdMVE11TWpVNExTNHdNUzAyTGpJME9DMHVNREV0Tmk0eU5EZ2dNQzB4TGpZNU5pMHhMak01TFRNdU1EZ3RNeTR4TFRNdU1EZ3RMakl3TXlBd0xTNDBMakF5TFM0MU9USXVNRFUzWVRNdU5qVWdNeTQyTlNBd0lEQWdNQzB6TGpBek15MHhMall3TjJNdExqTTJOeUF3TFM0M01pNHdOVE10TVM0d05UVXVNVFV6WVRNdU5qTTJJRE11TmpNMklEQWdNQ0F3TFRNdU1Ea3RNUzQzTURWakxTNDBORFFnTUMwdU9EY3VNRGd0TVM0eU5qUXVNakkxUVRNdU16UTFJRE11TXpRMUlEQWdNQ0F3SURFd0xqYzBOQ0F6V2lJS0lDQWdJQzgrQ2lBZ0lDQThjR0YwYUFvZ0lDQWdJQ0JtYVd4c1BTSWpNREF3SWdvZ0lDQWdJQ0JrUFNKTk1UQXVOelEwSURRdU5UVTBZekVnTUNBeExqZ3dPQzQ0TWpZZ01TNDRNRGdnTVM0NE5EVjJNUzR4T1Rkak1DMHhMakV3T1M0NU1qY3RNaTR3TURnZ01pNHdOamd0TWk0d01EZ2dNUzR4TkRNZ01DQXlMakEyT0M0NUlESXVNRFk0SURJdU1EQTRkakV1TlRVeVl6QXRNUzR4TVM0NU15MHlMakF3T0NBeUxqQTNOeTB5TGpBd09DQXhMakUwTnlBd0lESXVNRGMyTGpnNU9TQXlMakEzTmlBeUxqQXdPSFl4TGpBMk9FRXhMalUwSURFdU5UUWdNQ0F3SURFZ01qSXVNemtnT0M0Mk9XTXVPRFUySURBZ01TNDFORGd1TmpnMElERXVOVFE0SURFdU5UTWdNQ0F3SUM0d01TQXlMams0T0M0d01TQTJMakkwTkNBd0lETXVNalUzTFRNdU1UWXhJRFl1TmpNMkxUTXVNVFl4SURndU9EQXlTREV3TGpRMVl6QXRNUzQ1TkMwMUxqRTBOaTAxTGpjM015MDFMakUwTmkwNExqQTJNWFl0Tnk0d01tTXdMVEV1TVRFeUxqa3lOaTB5TGpBeE5DQXlMakEzTFRJdU1ERTFkalF1TURVeFl6QWdMak0wTWk0ek5TNDJNaTQzT0RFdU5qSXVORE15SURBZ0xqYzRNaTB1TWpjNExqYzRNaTB1TmpKV05pNDBZekF0TVM0d01pNDRNRGt0TVM0NE5EVWdNUzQ0TURjdE1TNDRORFZhYlRBdE1TNDFOVFJET0M0NE9TQXpJRGN1TXpnMElEUXVOVEkxSURjdU16ZzBJRFl1TkhZdU1qSm9MUzR3TVRKakxURXVPVGszSURBdE15NDJNaklnTVM0Mk1ESXRNeTQyTWpJZ015NDFOamhzTGpBd01TQTNMakF5WXpBZ01TNDNOeUF4TGpVeE1pQXpMalV4TlNBekxqRXhNaUExTGpNMk1TNDNNaTQ0TXlBeExqa3hPU0F5TGpJeE5pQXlMakF6TkNBeUxqY3pNWFl4TGpVeU1tZ3hNeTQwTkRKMkxURXVOVFUwWXpBdExqVTVMall4T0MweExqYzNJREV1TVRZekxUSXVPREV1T1RNNExURXVOemc1SURFdU9UazRMVE11T0RFMUlERXVPVGs0TFRVdU9Ua3hJREF0TXk0eU5UZ3RMakF4TFRZdU1qUTRMUzR3TVMwMkxqSTBPQ0F3TFRFdU5qazJMVEV1TXprdE15NHdPQzB6TGpFdE15NHdPQzB1TWpBeklEQXRMalF1TURJdExqVTVNaTR3TlRkaE15NDJOU0F6TGpZMUlEQWdNQ0F3TFRNdU1ETXpMVEV1TmpBM1l5MHVNelkzSURBdExqY3lMakExTXkweExqQTFOUzR4TlROaE15NDJNellnTXk0Mk16WWdNQ0F3SURBdE15NHdPUzB4TGpjd05XTXRMalEwTkNBd0xTNDROeTR3T0MweExqSTJOQzR5TWpWQk15NHpORFVnTXk0ek5EVWdNQ0F3SURBZ01UQXVOelEwSUROYUlnb2dJQ0FnTHo0S0lDQThMM04yWno0PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlZENvbXBvbmVudHMuanMubWFwIl19 */");
var TopMenuRightWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "embh3ih2"
} : {
  target: "embh3ih2",
  label: "TopMenuRightWrapper"
})(function () {
  return {
    display: 'flex',
    alignItems: 'center'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSW1DIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBFZGl0b3JXcmFwcGVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRvcE1lbnVSaWdodFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVG9nZ2xlckNvbXBvbmVudFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kOiAnJyxcclxuICAgICcmLnRvZ2dsZXItY29tcG9uZW50LXdyYXBwZXItLWRpc2FibGVkJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXHJcbiAgICAgICAgY3Vyc29yOiAnZGVmYXVsdCcsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBDYW52YXNXcmFwcGVyID0gc3R5bGVkLnN2ZygoKSA9PiAoe1xyXG4gICAgJyYuaGFuZEN1cnNvcic6IHtcclxuICAgICAgICBjdXJzb3I6IGBcbiAgICAgIHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWndvZ0lDQWdJQ0FnSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlLSUNBZ0lDQWdJQ0IzYVdSMGFEMGlNalFpQ2lBZ0lDQWdJQ0FnYUdWcFoyaDBQU0l5TkNJS0lDQWdJQ0FnSUNCbWFXeHNQU0p1YjI1bElnb2dJQ0FnSUNBZ0lIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqTURBd0lnb2dJQ0FnSUNBZ0lDQWdJQ0JrUFNKTk1qQXVORE0wSURjdU5qY3pZeTB1TVMwdU5pMHVOekV6TFRFdU56TXhMVEl1TXpJdE1TNDNNekV0TGpFeU5pQXdMUzR5TlRJdU1EQTNMUzR6TnpjdU1ESXpkaTB1TnpsaE1TNHdNU0F4TGpBeElEQWdNQ0F3TFM0d05EVXRMak5qTFM0eE56Y3RMalUyTkMwdU9EYzJMVEV1TmpNeExUSXVNall5TFRFdU5qTXhZVEl1TlRrNUlESXVOVGs1SURBZ01DQXdMUzQyTnpZdU1EZzJJREl1TXprMElESXVNemswSURBZ01DQXdMUzR4TkRZdExqSXpZeTB1TkRVekxTNDJORFV0TVM0eE9EWXRNUzB5TGpBMk15MHhMUzQ0TnpjZ01DMHhMalU0TkM0ek5pMHlMakF5TlNBeExqQXhOMkV5TGpRMk1TQXlMalEyTVNBd0lEQWdNQzB1TXpZeExqZzFJREl1TmpZeklESXVOall6SURBZ01DQXdMUzQwTURndExqQXpZeTB4TGpRM05DQXdMVEl1TVRJMElERXVNVFV0TWk0eU5qSWdNUzQzTlRkaE1TNHdNelFnTVM0d016UWdNQ0F3SURBdExqQXlOQzR5TWpKV01URXVNV3d0TGpFekxTNHhZeTB1TlRnNExTNDFMVEl1TURNMExURXVNVEl4TFRNdU16a3hMakF5T1MweExqTTFOeUF4TGpFMUxURXVNREUxSURJdU5qWTBMUzQwTXpFZ015NDBOVEl1TkRVekxqYzNNeUEwTGpVeE1pQTNMalF5TlNBeE1DNHlNak1nTnk0ME1qVWdNeTR5TlNBd0lEUXVPVEV0TVM0MU1USWdOUzQzTWprdE1pNDNPREZoTmk0eU9URWdOaTR5T1RFZ01DQXdJREFnTGprNExUSXVPRlkzTGpnek9HTXVNREF4TFM0d05UWXRMakF3TXkwdU1URXRMakF4TVMwdU1UWTFXaUlLSUNBZ0lDOCtDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqWm1abUlnb2dJQ0FnSUNBZ0lDQWdJQ0J6ZEhKdmEyVTlJaU5tWm1ZaUNpQWdJQ0FnSUNBZ0lDQWdJR1E5SWsweE9DNDBORGdnTVRZdU1qRTFZVFF1TkRjMElEUXVORGMwSURBZ01DQXhMUzQzSURFdU9EZzNZeTB1T0RBMUlERXVNaTB5TGpFMU15QXhMamd0TkM0d01EZ2dNUzQ0TFRRdU56WTRJREF0T0M0ME9EUXROaTQwTVRJdE9DNDFNaTAyTGpRM05tRXVOalk1TGpZMk9TQXdJREFnTUMwdU1Ea3RMakV5Tm1NdExqSTVOQzB1TkRBNElEQXRMalkxTlM0eE1EY3RMamMwT0M0eU5qY3RMakl5Tnk0MU5DMHVNak0zTGpneExTNHdNekZzTVM0M055QXhMalExTW1FeElERWdNQ0F3SURBZ01TNDJORFF0TGpjMk0xWTJMakE0WVM0eU9EY3VNamczSURBZ01DQXhJQzR5T1MwdU1UUTRMalEwTGpRMElEQWdNQ0F4SUM0ek56SXVNVFoyTkM0M1lURWdNU0F3SURFZ01DQXlJREIyTFRZdU5EVmpMakEyT0MwdU1qUTRMak10TGpJME9DNDBNakl0TGpJME9DNHlJREFnTGpReE5DNHdNekl1TkRneUxqSTFOWFkyTGpRMFlURWdNU0F3SURFZ01DQXlJREIyTFRVdU1tRXVOelV1TnpVZ01DQXdJREVnTGpBM05DMHVNVGxqTGpBME9TMHVNRGd4TGpFd09DMHVNVFV1TXpJMUxTNHhOV0V1TXpVdU16VWdNQ0F3SURFZ0xqTXdOeTR4TlhZMUxqTTVZVEVnTVNBd0lERWdNQ0F5SURCV09DNHdORGRoTGpVNE15NDFPRE1nTUNBd0lERWdMak0zTnkwdU1XTXVNRFkxSURBZ0xqSTFPQzR3TURZdU16TTBMakEzT0d3dU1EQTBJRGd1TVRsYUlnb2dJQ0FnTHo0S1BDOXpkbWMrQ2c9PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG4gICAgJyYuaGFuZEN1cnNvckdyYWJiaW5nJzoge1xyXG4gICAgICAgIGN1cnNvcjogYFxuICAgICAgdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJad29nSUNBZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWdvZ0lDQWdkMmxrZEdnOUlqSTBJZ29nSUNBZ2FHVnBaMmgwUFNJeU5DSUtJQ0FnSUdacGJHdzlJbTV2Ym1VaUNpQWdJQ0IyYVdWM1FtOTRQU0l3SURBZ016QWdNekFpQ2lBZ1Bnb2dJQ0FnUEhCaGRHZ0tJQ0FnSUNBZ1ptbHNiRDBpSTJabVppSUtJQ0FnSUNBZ1pEMGlUVEV3TGpjME5DQXpRemd1T0RrZ015QTNMak00TkNBMExqVXlOU0EzTGpNNE5DQTJMalIyTGpJeWFDMHVNREV5WXkweExqazVOeUF3TFRNdU5qSXlJREV1TmpBeUxUTXVOakl5SURNdU5UWTRiQzR3TURFZ055NHdNbU13SURFdU56Y2dNUzQxTVRJZ015NDFNVFVnTXk0eE1USWdOUzR6TmpFdU56SXVPRE1nTVM0NU1Ua2dNaTR5TVRZZ01pNHdNelFnTWk0M016RjJNUzQxTWpKb01UTXVORFF5ZGkweExqVTFOR013TFM0MU9TNDJNVGd0TVM0M055QXhMakUyTXkweUxqZ3hMamt6T0MweExqYzRPU0F4TGprNU9DMHpMamd4TlNBeExqazVPQzAxTGprNU1TQXdMVE11TWpVNExTNHdNUzAyTGpJME9DMHVNREV0Tmk0eU5EZ2dNQzB4TGpZNU5pMHhMak01TFRNdU1EZ3RNeTR4TFRNdU1EZ3RMakl3TXlBd0xTNDBMakF5TFM0MU9USXVNRFUzWVRNdU5qVWdNeTQyTlNBd0lEQWdNQzB6TGpBek15MHhMall3TjJNdExqTTJOeUF3TFM0M01pNHdOVE10TVM0d05UVXVNVFV6WVRNdU5qTTJJRE11TmpNMklEQWdNQ0F3TFRNdU1Ea3RNUzQzTURWakxTNDBORFFnTUMwdU9EY3VNRGd0TVM0eU5qUXVNakkxUVRNdU16UTFJRE11TXpRMUlEQWdNQ0F3SURFd0xqYzBOQ0F6V2lJS0lDQWdJQzgrQ2lBZ0lDQThjR0YwYUFvZ0lDQWdJQ0JtYVd4c1BTSWpNREF3SWdvZ0lDQWdJQ0JrUFNKTk1UQXVOelEwSURRdU5UVTBZekVnTUNBeExqZ3dPQzQ0TWpZZ01TNDRNRGdnTVM0NE5EVjJNUzR4T1Rkak1DMHhMakV3T1M0NU1qY3RNaTR3TURnZ01pNHdOamd0TWk0d01EZ2dNUzR4TkRNZ01DQXlMakEyT0M0NUlESXVNRFk0SURJdU1EQTRkakV1TlRVeVl6QXRNUzR4TVM0NU15MHlMakF3T0NBeUxqQTNOeTB5TGpBd09DQXhMakUwTnlBd0lESXVNRGMyTGpnNU9TQXlMakEzTmlBeUxqQXdPSFl4TGpBMk9FRXhMalUwSURFdU5UUWdNQ0F3SURFZ01qSXVNemtnT0M0Mk9XTXVPRFUySURBZ01TNDFORGd1TmpnMElERXVOVFE0SURFdU5UTWdNQ0F3SUM0d01TQXlMams0T0M0d01TQTJMakkwTkNBd0lETXVNalUzTFRNdU1UWXhJRFl1TmpNMkxUTXVNVFl4SURndU9EQXlTREV3TGpRMVl6QXRNUzQ1TkMwMUxqRTBOaTAxTGpjM015MDFMakUwTmkwNExqQTJNWFl0Tnk0d01tTXdMVEV1TVRFeUxqa3lOaTB5TGpBeE5DQXlMakEzTFRJdU1ERTFkalF1TURVeFl6QWdMak0wTWk0ek5TNDJNaTQzT0RFdU5qSXVORE15SURBZ0xqYzRNaTB1TWpjNExqYzRNaTB1TmpKV05pNDBZekF0TVM0d01pNDRNRGt0TVM0NE5EVWdNUzQ0TURjdE1TNDRORFZhYlRBdE1TNDFOVFJET0M0NE9TQXpJRGN1TXpnMElEUXVOVEkxSURjdU16ZzBJRFl1TkhZdU1qSm9MUzR3TVRKakxURXVPVGszSURBdE15NDJNaklnTVM0Mk1ESXRNeTQyTWpJZ015NDFOamhzTGpBd01TQTNMakF5WXpBZ01TNDNOeUF4TGpVeE1pQXpMalV4TlNBekxqRXhNaUExTGpNMk1TNDNNaTQ0TXlBeExqa3hPU0F5TGpJeE5pQXlMakF6TkNBeUxqY3pNWFl4TGpVeU1tZ3hNeTQwTkRKMkxURXVOVFUwWXpBdExqVTVMall4T0MweExqYzNJREV1TVRZekxUSXVPREV1T1RNNExURXVOemc1SURFdU9UazRMVE11T0RFMUlERXVPVGs0TFRVdU9Ua3hJREF0TXk0eU5UZ3RMakF4TFRZdU1qUTRMUzR3TVMwMkxqSTBPQ0F3TFRFdU5qazJMVEV1TXprdE15NHdPQzB6TGpFdE15NHdPQzB1TWpBeklEQXRMalF1TURJdExqVTVNaTR3TlRkaE15NDJOU0F6TGpZMUlEQWdNQ0F3TFRNdU1ETXpMVEV1TmpBM1l5MHVNelkzSURBdExqY3lMakExTXkweExqQTFOUzR4TlROaE15NDJNellnTXk0Mk16WWdNQ0F3SURBdE15NHdPUzB4TGpjd05XTXRMalEwTkNBd0xTNDROeTR3T0MweExqSTJOQzR5TWpWQk15NHpORFVnTXk0ek5EVWdNQ0F3SURBZ01UQXVOelEwSUROYUlnb2dJQ0FnTHo0S0lDQThMM04yWno0PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlZENvbXBvbmVudHMuanMubWFwIl19 */");
var TogglerComponentWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "embh3ih1"
} : {
  target: "embh3ih1",
  label: "TogglerComponentWrapper"
})(function () {
  return {
    background: '',
    '&.toggler-component-wrapper--disabled': {
      opacity: 0.4,
      pointerEvents: 'none',
      cursor: 'default'
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUXVDIiwiZmlsZSI6InN0eWxlZENvbXBvbmVudHMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBFZGl0b3JXcmFwcGVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgaGVpZ2h0OiAnMTAwJScsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRvcE1lbnVSaWdodFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgVG9nZ2xlckNvbXBvbmVudFdyYXBwZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kOiAnJyxcclxuICAgICcmLnRvZ2dsZXItY29tcG9uZW50LXdyYXBwZXItLWRpc2FibGVkJzoge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNCxcclxuICAgICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXHJcbiAgICAgICAgY3Vyc29yOiAnZGVmYXVsdCcsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBDYW52YXNXcmFwcGVyID0gc3R5bGVkLnN2ZygoKSA9PiAoe1xyXG4gICAgJyYuaGFuZEN1cnNvcic6IHtcclxuICAgICAgICBjdXJzb3I6IGBcbiAgICAgIHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWndvZ0lDQWdJQ0FnSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlLSUNBZ0lDQWdJQ0IzYVdSMGFEMGlNalFpQ2lBZ0lDQWdJQ0FnYUdWcFoyaDBQU0l5TkNJS0lDQWdJQ0FnSUNCbWFXeHNQU0p1YjI1bElnb2dJQ0FnSUNBZ0lIWnBaWGRDYjNnOUlqQWdNQ0F5TkNBeU5DSStDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqTURBd0lnb2dJQ0FnSUNBZ0lDQWdJQ0JrUFNKTk1qQXVORE0wSURjdU5qY3pZeTB1TVMwdU5pMHVOekV6TFRFdU56TXhMVEl1TXpJdE1TNDNNekV0TGpFeU5pQXdMUzR5TlRJdU1EQTNMUzR6TnpjdU1ESXpkaTB1TnpsaE1TNHdNU0F4TGpBeElEQWdNQ0F3TFM0d05EVXRMak5qTFM0eE56Y3RMalUyTkMwdU9EYzJMVEV1TmpNeExUSXVNall5TFRFdU5qTXhZVEl1TlRrNUlESXVOVGs1SURBZ01DQXdMUzQyTnpZdU1EZzJJREl1TXprMElESXVNemswSURBZ01DQXdMUzR4TkRZdExqSXpZeTB1TkRVekxTNDJORFV0TVM0eE9EWXRNUzB5TGpBMk15MHhMUzQ0TnpjZ01DMHhMalU0TkM0ek5pMHlMakF5TlNBeExqQXhOMkV5TGpRMk1TQXlMalEyTVNBd0lEQWdNQzB1TXpZeExqZzFJREl1TmpZeklESXVOall6SURBZ01DQXdMUzQwTURndExqQXpZeTB4TGpRM05DQXdMVEl1TVRJMElERXVNVFV0TWk0eU5qSWdNUzQzTlRkaE1TNHdNelFnTVM0d016UWdNQ0F3SURBdExqQXlOQzR5TWpKV01URXVNV3d0TGpFekxTNHhZeTB1TlRnNExTNDFMVEl1TURNMExURXVNVEl4TFRNdU16a3hMakF5T1MweExqTTFOeUF4TGpFMUxURXVNREUxSURJdU5qWTBMUzQwTXpFZ015NDBOVEl1TkRVekxqYzNNeUEwTGpVeE1pQTNMalF5TlNBeE1DNHlNak1nTnk0ME1qVWdNeTR5TlNBd0lEUXVPVEV0TVM0MU1USWdOUzQzTWprdE1pNDNPREZoTmk0eU9URWdOaTR5T1RFZ01DQXdJREFnTGprNExUSXVPRlkzTGpnek9HTXVNREF4TFM0d05UWXRMakF3TXkwdU1URXRMakF4TVMwdU1UWTFXaUlLSUNBZ0lDOCtDaUFnSUNBOGNHRjBhQW9nSUNBZ0lDQWdJQ0FnSUNCbWFXeHNQU0lqWm1abUlnb2dJQ0FnSUNBZ0lDQWdJQ0J6ZEhKdmEyVTlJaU5tWm1ZaUNpQWdJQ0FnSUNBZ0lDQWdJR1E5SWsweE9DNDBORGdnTVRZdU1qRTFZVFF1TkRjMElEUXVORGMwSURBZ01DQXhMUzQzSURFdU9EZzNZeTB1T0RBMUlERXVNaTB5TGpFMU15QXhMamd0TkM0d01EZ2dNUzQ0TFRRdU56WTRJREF0T0M0ME9EUXROaTQwTVRJdE9DNDFNaTAyTGpRM05tRXVOalk1TGpZMk9TQXdJREFnTUMwdU1Ea3RMakV5Tm1NdExqSTVOQzB1TkRBNElEQXRMalkxTlM0eE1EY3RMamMwT0M0eU5qY3RMakl5Tnk0MU5DMHVNak0zTGpneExTNHdNekZzTVM0M055QXhMalExTW1FeElERWdNQ0F3SURBZ01TNDJORFF0TGpjMk0xWTJMakE0WVM0eU9EY3VNamczSURBZ01DQXhJQzR5T1MwdU1UUTRMalEwTGpRMElEQWdNQ0F4SUM0ek56SXVNVFoyTkM0M1lURWdNU0F3SURFZ01DQXlJREIyTFRZdU5EVmpMakEyT0MwdU1qUTRMak10TGpJME9DNDBNakl0TGpJME9DNHlJREFnTGpReE5DNHdNekl1TkRneUxqSTFOWFkyTGpRMFlURWdNU0F3SURFZ01DQXlJREIyTFRVdU1tRXVOelV1TnpVZ01DQXdJREVnTGpBM05DMHVNVGxqTGpBME9TMHVNRGd4TGpFd09DMHVNVFV1TXpJMUxTNHhOV0V1TXpVdU16VWdNQ0F3SURFZ0xqTXdOeTR4TlhZMUxqTTVZVEVnTVNBd0lERWdNQ0F5SURCV09DNHdORGRoTGpVNE15NDFPRE1nTUNBd0lERWdMak0zTnkwdU1XTXVNRFkxSURBZ0xqSTFPQzR3TURZdU16TTBMakEzT0d3dU1EQTBJRGd1TVRsYUlnb2dJQ0FnTHo0S1BDOXpkbWMrQ2c9PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG4gICAgJyYuaGFuZEN1cnNvckdyYWJiaW5nJzoge1xyXG4gICAgICAgIGN1cnNvcjogYFxuICAgICAgdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJad29nSUNBZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWdvZ0lDQWdkMmxrZEdnOUlqSTBJZ29nSUNBZ2FHVnBaMmgwUFNJeU5DSUtJQ0FnSUdacGJHdzlJbTV2Ym1VaUNpQWdJQ0IyYVdWM1FtOTRQU0l3SURBZ016QWdNekFpQ2lBZ1Bnb2dJQ0FnUEhCaGRHZ0tJQ0FnSUNBZ1ptbHNiRDBpSTJabVppSUtJQ0FnSUNBZ1pEMGlUVEV3TGpjME5DQXpRemd1T0RrZ015QTNMak00TkNBMExqVXlOU0EzTGpNNE5DQTJMalIyTGpJeWFDMHVNREV5WXkweExqazVOeUF3TFRNdU5qSXlJREV1TmpBeUxUTXVOakl5SURNdU5UWTRiQzR3TURFZ055NHdNbU13SURFdU56Y2dNUzQxTVRJZ015NDFNVFVnTXk0eE1USWdOUzR6TmpFdU56SXVPRE1nTVM0NU1Ua2dNaTR5TVRZZ01pNHdNelFnTWk0M016RjJNUzQxTWpKb01UTXVORFF5ZGkweExqVTFOR013TFM0MU9TNDJNVGd0TVM0M055QXhMakUyTXkweUxqZ3hMamt6T0MweExqYzRPU0F4TGprNU9DMHpMamd4TlNBeExqazVPQzAxTGprNU1TQXdMVE11TWpVNExTNHdNUzAyTGpJME9DMHVNREV0Tmk0eU5EZ2dNQzB4TGpZNU5pMHhMak01TFRNdU1EZ3RNeTR4TFRNdU1EZ3RMakl3TXlBd0xTNDBMakF5TFM0MU9USXVNRFUzWVRNdU5qVWdNeTQyTlNBd0lEQWdNQzB6TGpBek15MHhMall3TjJNdExqTTJOeUF3TFM0M01pNHdOVE10TVM0d05UVXVNVFV6WVRNdU5qTTJJRE11TmpNMklEQWdNQ0F3TFRNdU1Ea3RNUzQzTURWakxTNDBORFFnTUMwdU9EY3VNRGd0TVM0eU5qUXVNakkxUVRNdU16UTFJRE11TXpRMUlEQWdNQ0F3SURFd0xqYzBOQ0F6V2lJS0lDQWdJQzgrQ2lBZ0lDQThjR0YwYUFvZ0lDQWdJQ0JtYVd4c1BTSWpNREF3SWdvZ0lDQWdJQ0JrUFNKTk1UQXVOelEwSURRdU5UVTBZekVnTUNBeExqZ3dPQzQ0TWpZZ01TNDRNRGdnTVM0NE5EVjJNUzR4T1Rkak1DMHhMakV3T1M0NU1qY3RNaTR3TURnZ01pNHdOamd0TWk0d01EZ2dNUzR4TkRNZ01DQXlMakEyT0M0NUlESXVNRFk0SURJdU1EQTRkakV1TlRVeVl6QXRNUzR4TVM0NU15MHlMakF3T0NBeUxqQTNOeTB5TGpBd09DQXhMakUwTnlBd0lESXVNRGMyTGpnNU9TQXlMakEzTmlBeUxqQXdPSFl4TGpBMk9FRXhMalUwSURFdU5UUWdNQ0F3SURFZ01qSXVNemtnT0M0Mk9XTXVPRFUySURBZ01TNDFORGd1TmpnMElERXVOVFE0SURFdU5UTWdNQ0F3SUM0d01TQXlMams0T0M0d01TQTJMakkwTkNBd0lETXVNalUzTFRNdU1UWXhJRFl1TmpNMkxUTXVNVFl4SURndU9EQXlTREV3TGpRMVl6QXRNUzQ1TkMwMUxqRTBOaTAxTGpjM015MDFMakUwTmkwNExqQTJNWFl0Tnk0d01tTXdMVEV1TVRFeUxqa3lOaTB5TGpBeE5DQXlMakEzTFRJdU1ERTFkalF1TURVeFl6QWdMak0wTWk0ek5TNDJNaTQzT0RFdU5qSXVORE15SURBZ0xqYzRNaTB1TWpjNExqYzRNaTB1TmpKV05pNDBZekF0TVM0d01pNDRNRGt0TVM0NE5EVWdNUzQ0TURjdE1TNDRORFZhYlRBdE1TNDFOVFJET0M0NE9TQXpJRGN1TXpnMElEUXVOVEkxSURjdU16ZzBJRFl1TkhZdU1qSm9MUzR3TVRKakxURXVPVGszSURBdE15NDJNaklnTVM0Mk1ESXRNeTQyTWpJZ015NDFOamhzTGpBd01TQTNMakF5WXpBZ01TNDNOeUF4TGpVeE1pQXpMalV4TlNBekxqRXhNaUExTGpNMk1TNDNNaTQ0TXlBeExqa3hPU0F5TGpJeE5pQXlMakF6TkNBeUxqY3pNWFl4TGpVeU1tZ3hNeTQwTkRKMkxURXVOVFUwWXpBdExqVTVMall4T0MweExqYzNJREV1TVRZekxUSXVPREV1T1RNNExURXVOemc1SURFdU9UazRMVE11T0RFMUlERXVPVGs0TFRVdU9Ua3hJREF0TXk0eU5UZ3RMakF4TFRZdU1qUTRMUzR3TVMwMkxqSTBPQ0F3TFRFdU5qazJMVEV1TXprdE15NHdPQzB6TGpFdE15NHdPQzB1TWpBeklEQXRMalF1TURJdExqVTVNaTR3TlRkaE15NDJOU0F6TGpZMUlEQWdNQ0F3TFRNdU1ETXpMVEV1TmpBM1l5MHVNelkzSURBdExqY3lMakExTXkweExqQTFOUzR4TlROaE15NDJNellnTXk0Mk16WWdNQ0F3SURBdE15NHdPUzB4TGpjd05XTXRMalEwTkNBd0xTNDROeTR3T0MweExqSTJOQzR5TWpWQk15NHpORFVnTXk0ek5EVWdNQ0F3SURBZ01UQXVOelEwSUROYUlnb2dJQ0FnTHo0S0lDQThMM04yWno0PScpLFxuICAgICAgYXV0b1xuICAgIGAsXHJcbiAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlZENvbXBvbmVudHMuanMubWFwIl19 */");
var CanvasWrapper = _styled("svg", process.env.NODE_ENV === "production" ? {
  target: "embh3ih0"
} : {
  target: "embh3ih0",
  label: "CanvasWrapper"
})(function () {
  return {
    '&.handCursor': {
      cursor: "\n      url('data:image/svg+xml;base64,PHN2ZwogICAgICAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgICAgICB3aWR0aD0iMjQiCiAgICAgICAgaGVpZ2h0PSIyNCIKICAgICAgICBmaWxsPSJub25lIgogICAgICAgIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgICA8cGF0aAogICAgICAgICAgICBmaWxsPSIjMDAwIgogICAgICAgICAgICBkPSJNMjAuNDM0IDcuNjczYy0uMS0uNi0uNzEzLTEuNzMxLTIuMzItMS43MzEtLjEyNiAwLS4yNTIuMDA3LS4zNzcuMDIzdi0uNzlhMS4wMSAxLjAxIDAgMCAwLS4wNDUtLjNjLS4xNzctLjU2NC0uODc2LTEuNjMxLTIuMjYyLTEuNjMxYTIuNTk5IDIuNTk5IDAgMCAwLS42NzYuMDg2IDIuMzk0IDIuMzk0IDAgMCAwLS4xNDYtLjIzYy0uNDUzLS42NDUtMS4xODYtMS0yLjA2My0xLS44NzcgMC0xLjU4NC4zNi0yLjAyNSAxLjAxN2EyLjQ2MSAyLjQ2MSAwIDAgMC0uMzYxLjg1IDIuNjYzIDIuNjYzIDAgMCAwLS40MDgtLjAzYy0xLjQ3NCAwLTIuMTI0IDEuMTUtMi4yNjIgMS43NTdhMS4wMzQgMS4wMzQgMCAwIDAtLjAyNC4yMjJWMTEuMWwtLjEzLS4xYy0uNTg4LS41LTIuMDM0LTEuMTIxLTMuMzkxLjAyOS0xLjM1NyAxLjE1LTEuMDE1IDIuNjY0LS40MzEgMy40NTIuNDUzLjc3MyA0LjUxMiA3LjQyNSAxMC4yMjMgNy40MjUgMy4yNSAwIDQuOTEtMS41MTIgNS43MjktMi43ODFhNi4yOTEgNi4yOTEgMCAwIDAgLjk4LTIuOFY3LjgzOGMuMDAxLS4wNTYtLjAwMy0uMTEtLjAxMS0uMTY1WiIKICAgIC8+CiAgICA8cGF0aAogICAgICAgICAgICBmaWxsPSIjZmZmIgogICAgICAgICAgICBzdHJva2U9IiNmZmYiCiAgICAgICAgICAgIGQ9Ik0xOC40NDggMTYuMjE1YTQuNDc0IDQuNDc0IDAgMCAxLS43IDEuODg3Yy0uODA1IDEuMi0yLjE1MyAxLjgtNC4wMDggMS44LTQuNzY4IDAtOC40ODQtNi40MTItOC41Mi02LjQ3NmEuNjY5LjY2OSAwIDAgMC0uMDktLjEyNmMtLjI5NC0uNDA4IDAtLjY1NS4xMDctLjc0OC4yNjctLjIyNy41NC0uMjM3LjgxLS4wMzFsMS43NyAxLjQ1MmExIDEgMCAwIDAgMS42NDQtLjc2M1Y2LjA4YS4yODcuMjg3IDAgMCAxIC4yOS0uMTQ4LjQ0LjQ0IDAgMCAxIC4zNzIuMTZ2NC43YTEgMSAwIDEgMCAyIDB2LTYuNDVjLjA2OC0uMjQ4LjMtLjI0OC40MjItLjI0OC4yIDAgLjQxNC4wMzIuNDgyLjI1NXY2LjQ0YTEgMSAwIDEgMCAyIDB2LTUuMmEuNzUuNzUgMCAwIDEgLjA3NC0uMTljLjA0OS0uMDgxLjEwOC0uMTUuMzI1LS4xNWEuMzUuMzUgMCAwIDEgLjMwNy4xNXY1LjM5YTEgMSAwIDEgMCAyIDBWOC4wNDdhLjU4My41ODMgMCAwIDEgLjM3Ny0uMWMuMDY1IDAgLjI1OC4wMDYuMzM0LjA3OGwuMDA0IDguMTlaIgogICAgLz4KPC9zdmc+Cg=='),\n      auto\n    "
    },
    '&.handCursorGrabbing': {
      cursor: "\n      url('data:image/svg+xml;base64,PHN2ZwogICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICAgd2lkdGg9IjI0IgogICAgaGVpZ2h0PSIyNCIKICAgIGZpbGw9Im5vbmUiCiAgICB2aWV3Qm94PSIwIDAgMzAgMzAiCiAgPgogICAgPHBhdGgKICAgICAgZmlsbD0iI2ZmZiIKICAgICAgZD0iTTEwLjc0NCAzQzguODkgMyA3LjM4NCA0LjUyNSA3LjM4NCA2LjR2LjIyaC0uMDEyYy0xLjk5NyAwLTMuNjIyIDEuNjAyLTMuNjIyIDMuNTY4bC4wMDEgNy4wMmMwIDEuNzcgMS41MTIgMy41MTUgMy4xMTIgNS4zNjEuNzIuODMgMS45MTkgMi4yMTYgMi4wMzQgMi43MzF2MS41MjJoMTMuNDQydi0xLjU1NGMwLS41OS42MTgtMS43NyAxLjE2My0yLjgxLjkzOC0xLjc4OSAxLjk5OC0zLjgxNSAxLjk5OC01Ljk5MSAwLTMuMjU4LS4wMS02LjI0OC0uMDEtNi4yNDggMC0xLjY5Ni0xLjM5LTMuMDgtMy4xLTMuMDgtLjIwMyAwLS40LjAyLS41OTIuMDU3YTMuNjUgMy42NSAwIDAgMC0zLjAzMy0xLjYwN2MtLjM2NyAwLS43Mi4wNTMtMS4wNTUuMTUzYTMuNjM2IDMuNjM2IDAgMCAwLTMuMDktMS43MDVjLS40NDQgMC0uODcuMDgtMS4yNjQuMjI1QTMuMzQ1IDMuMzQ1IDAgMCAwIDEwLjc0NCAzWiIKICAgIC8+CiAgICA8cGF0aAogICAgICBmaWxsPSIjMDAwIgogICAgICBkPSJNMTAuNzQ0IDQuNTU0YzEgMCAxLjgwOC44MjYgMS44MDggMS44NDV2MS4xOTdjMC0xLjEwOS45MjctMi4wMDggMi4wNjgtMi4wMDggMS4xNDMgMCAyLjA2OC45IDIuMDY4IDIuMDA4djEuNTUyYzAtMS4xMS45My0yLjAwOCAyLjA3Ny0yLjAwOCAxLjE0NyAwIDIuMDc2Ljg5OSAyLjA3NiAyLjAwOHYxLjA2OEExLjU0IDEuNTQgMCAwIDEgMjIuMzkgOC42OWMuODU2IDAgMS41NDguNjg0IDEuNTQ4IDEuNTMgMCAwIC4wMSAyLjk4OC4wMSA2LjI0NCAwIDMuMjU3LTMuMTYxIDYuNjM2LTMuMTYxIDguODAySDEwLjQ1YzAtMS45NC01LjE0Ni01Ljc3My01LjE0Ni04LjA2MXYtNy4wMmMwLTEuMTEyLjkyNi0yLjAxNCAyLjA3LTIuMDE1djQuMDUxYzAgLjM0Mi4zNS42Mi43ODEuNjIuNDMyIDAgLjc4Mi0uMjc4Ljc4Mi0uNjJWNi40YzAtMS4wMi44MDktMS44NDUgMS44MDctMS44NDVabTAtMS41NTRDOC44OSAzIDcuMzg0IDQuNTI1IDcuMzg0IDYuNHYuMjJoLS4wMTJjLTEuOTk3IDAtMy42MjIgMS42MDItMy42MjIgMy41NjhsLjAwMSA3LjAyYzAgMS43NyAxLjUxMiAzLjUxNSAzLjExMiA1LjM2MS43Mi44MyAxLjkxOSAyLjIxNiAyLjAzNCAyLjczMXYxLjUyMmgxMy40NDJ2LTEuNTU0YzAtLjU5LjYxOC0xLjc3IDEuMTYzLTIuODEuOTM4LTEuNzg5IDEuOTk4LTMuODE1IDEuOTk4LTUuOTkxIDAtMy4yNTgtLjAxLTYuMjQ4LS4wMS02LjI0OCAwLTEuNjk2LTEuMzktMy4wOC0zLjEtMy4wOC0uMjAzIDAtLjQuMDItLjU5Mi4wNTdhMy42NSAzLjY1IDAgMCAwLTMuMDMzLTEuNjA3Yy0uMzY3IDAtLjcyLjA1My0xLjA1NS4xNTNhMy42MzYgMy42MzYgMCAwIDAtMy4wOS0xLjcwNWMtLjQ0NCAwLS44Ny4wOC0xLjI2NC4yMjVBMy4zNDUgMy4zNDUgMCAwIDAgMTAuNzQ0IDNaIgogICAgLz4KICA8L3N2Zz4='),\n      auto\n    "
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlZENvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0I2QiIsImZpbGUiOiJzdHlsZWRDb21wb25lbnRzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgRWRpdG9yV3JhcHBlciA9IHN0eWxlZC5kaXYoKCkgPT4gKHtcclxuICAgIGhlaWdodDogJzEwMCUnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBUb3BNZW51UmlnaHRXcmFwcGVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgZGlzcGxheTogJ2ZsZXgnLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IFRvZ2dsZXJDb21wb25lbnRXcmFwcGVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xyXG4gICAgYmFja2dyb3VuZDogJycsXHJcbiAgICAnJi50b2dnbGVyLWNvbXBvbmVudC13cmFwcGVyLS1kaXNhYmxlZCc6IHtcclxuICAgICAgICBvcGFjaXR5OiAwLjQsXHJcbiAgICAgICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxyXG4gICAgICAgIGN1cnNvcjogJ2RlZmF1bHQnLFxyXG4gICAgfSxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgQ2FudmFzV3JhcHBlciA9IHN0eWxlZC5zdmcoKCkgPT4gKHtcclxuICAgICcmLmhhbmRDdXJzb3InOiB7XHJcbiAgICAgICAgY3Vyc29yOiBgXG4gICAgICB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp3b2dJQ0FnSUNBZ0lIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJS0lDQWdJQ0FnSUNCM2FXUjBhRDBpTWpRaUNpQWdJQ0FnSUNBZ2FHVnBaMmgwUFNJeU5DSUtJQ0FnSUNBZ0lDQm1hV3hzUFNKdWIyNWxJZ29nSUNBZ0lDQWdJSFpwWlhkQ2IzZzlJakFnTUNBeU5DQXlOQ0krQ2lBZ0lDQThjR0YwYUFvZ0lDQWdJQ0FnSUNBZ0lDQm1hV3hzUFNJak1EQXdJZ29nSUNBZ0lDQWdJQ0FnSUNCa1BTSk5NakF1TkRNMElEY3VOamN6WXkwdU1TMHVOaTB1TnpFekxURXVOek14TFRJdU16SXRNUzQzTXpFdExqRXlOaUF3TFM0eU5USXVNREEzTFM0ek56Y3VNREl6ZGkwdU56bGhNUzR3TVNBeExqQXhJREFnTUNBd0xTNHdORFV0TGpOakxTNHhOemN0TGpVMk5DMHVPRGMyTFRFdU5qTXhMVEl1TWpZeUxURXVOak14WVRJdU5UazVJREl1TlRrNUlEQWdNQ0F3TFM0Mk56WXVNRGcySURJdU16azBJREl1TXprMElEQWdNQ0F3TFM0eE5EWXRMakl6WXkwdU5EVXpMUzQyTkRVdE1TNHhPRFl0TVMweUxqQTJNeTB4TFM0NE56Y2dNQzB4TGpVNE5DNHpOaTB5TGpBeU5TQXhMakF4TjJFeUxqUTJNU0F5TGpRMk1TQXdJREFnTUMwdU16WXhMamcxSURJdU5qWXpJREl1TmpZeklEQWdNQ0F3TFM0ME1EZ3RMakF6WXkweExqUTNOQ0F3TFRJdU1USTBJREV1TVRVdE1pNHlOaklnTVM0M05UZGhNUzR3TXpRZ01TNHdNelFnTUNBd0lEQXRMakF5TkM0eU1qSldNVEV1TVd3dExqRXpMUzR4WXkwdU5UZzRMUzQxTFRJdU1ETTBMVEV1TVRJeExUTXVNemt4TGpBeU9TMHhMak0xTnlBeExqRTFMVEV1TURFMUlESXVOalkwTFM0ME16RWdNeTQwTlRJdU5EVXpMamMzTXlBMExqVXhNaUEzTGpReU5TQXhNQzR5TWpNZ055NDBNalVnTXk0eU5TQXdJRFF1T1RFdE1TNDFNVElnTlM0M01qa3RNaTQzT0RGaE5pNHlPVEVnTmk0eU9URWdNQ0F3SURBZ0xqazRMVEl1T0ZZM0xqZ3pPR011TURBeExTNHdOVFl0TGpBd015MHVNVEV0TGpBeE1TMHVNVFkxV2lJS0lDQWdJQzgrQ2lBZ0lDQThjR0YwYUFvZ0lDQWdJQ0FnSUNBZ0lDQm1hV3hzUFNJalptWm1JZ29nSUNBZ0lDQWdJQ0FnSUNCemRISnZhMlU5SWlObVptWWlDaUFnSUNBZ0lDQWdJQ0FnSUdROUlrMHhPQzQwTkRnZ01UWXVNakUxWVRRdU5EYzBJRFF1TkRjMElEQWdNQ0F4TFM0M0lERXVPRGczWXkwdU9EQTFJREV1TWkweUxqRTFNeUF4TGpndE5DNHdNRGdnTVM0NExUUXVOelk0SURBdE9DNDBPRFF0Tmk0ME1USXRPQzQxTWkwMkxqUTNObUV1TmpZNUxqWTJPU0F3SURBZ01DMHVNRGt0TGpFeU5tTXRMakk1TkMwdU5EQTRJREF0TGpZMU5TNHhNRGN0TGpjME9DNHlOamN0TGpJeU55NDFOQzB1TWpNM0xqZ3hMUzR3TXpGc01TNDNOeUF4TGpRMU1tRXhJREVnTUNBd0lEQWdNUzQyTkRRdExqYzJNMVkyTGpBNFlTNHlPRGN1TWpnM0lEQWdNQ0F4SUM0eU9TMHVNVFE0TGpRMExqUTBJREFnTUNBeElDNHpOekl1TVRaMk5DNDNZVEVnTVNBd0lERWdNQ0F5SURCMkxUWXVORFZqTGpBMk9DMHVNalE0TGpNdExqSTBPQzQwTWpJdExqSTBPQzR5SURBZ0xqUXhOQzR3TXpJdU5EZ3lMakkxTlhZMkxqUTBZVEVnTVNBd0lERWdNQ0F5SURCMkxUVXVNbUV1TnpVdU56VWdNQ0F3SURFZ0xqQTNOQzB1TVRsakxqQTBPUzB1TURneExqRXdPQzB1TVRVdU16STFMUzR4TldFdU16VXVNelVnTUNBd0lERWdMak13Tnk0eE5YWTFMak01WVRFZ01TQXdJREVnTUNBeUlEQldPQzR3TkRkaExqVTRNeTQxT0RNZ01DQXdJREVnTGpNM055MHVNV011TURZMUlEQWdMakkxT0M0d01EWXVNek0wTGpBM09Hd3VNREEwSURndU1UbGFJZ29nSUNBZ0x6NEtQQzl6ZG1jK0NnPT0nKSxcbiAgICAgIGF1dG9cbiAgICBgLFxyXG4gICAgfSxcclxuICAgICcmLmhhbmRDdXJzb3JHcmFiYmluZyc6IHtcclxuICAgICAgICBjdXJzb3I6IGBcbiAgICAgIHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWndvZ0lDQWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklnb2dJQ0FnZDJsa2RHZzlJakkwSWdvZ0lDQWdhR1ZwWjJoMFBTSXlOQ0lLSUNBZ0lHWnBiR3c5SW01dmJtVWlDaUFnSUNCMmFXVjNRbTk0UFNJd0lEQWdNekFnTXpBaUNpQWdQZ29nSUNBZ1BIQmhkR2dLSUNBZ0lDQWdabWxzYkQwaUkyWm1aaUlLSUNBZ0lDQWdaRDBpVFRFd0xqYzBOQ0F6UXpndU9Ea2dNeUEzTGpNNE5DQTBMalV5TlNBM0xqTTROQ0EyTGpSMkxqSXlhQzB1TURFeVl5MHhMams1TnlBd0xUTXVOakl5SURFdU5qQXlMVE11TmpJeUlETXVOVFk0YkM0d01ERWdOeTR3TW1Nd0lERXVOemNnTVM0MU1USWdNeTQxTVRVZ015NHhNVElnTlM0ek5qRXVOekl1T0RNZ01TNDVNVGtnTWk0eU1UWWdNaTR3TXpRZ01pNDNNekYyTVM0MU1qSm9NVE11TkRReWRpMHhMalUxTkdNd0xTNDFPUzQyTVRndE1TNDNOeUF4TGpFMk15MHlMamd4TGprek9DMHhMamM0T1NBeExqazVPQzB6TGpneE5TQXhMams1T0MwMUxqazVNU0F3TFRNdU1qVTRMUzR3TVMwMkxqSTBPQzB1TURFdE5pNHlORGdnTUMweExqWTVOaTB4TGpNNUxUTXVNRGd0TXk0eExUTXVNRGd0TGpJd015QXdMUzQwTGpBeUxTNDFPVEl1TURVM1lUTXVOalVnTXk0Mk5TQXdJREFnTUMwekxqQXpNeTB4TGpZd04yTXRMak0yTnlBd0xTNDNNaTR3TlRNdE1TNHdOVFV1TVRVellUTXVOak0ySURNdU5qTTJJREFnTUNBd0xUTXVNRGt0TVM0M01EVmpMUzQwTkRRZ01DMHVPRGN1TURndE1TNHlOalF1TWpJMVFUTXVNelExSURNdU16UTFJREFnTUNBd0lERXdMamMwTkNBeldpSUtJQ0FnSUM4K0NpQWdJQ0E4Y0dGMGFBb2dJQ0FnSUNCbWFXeHNQU0lqTURBd0lnb2dJQ0FnSUNCa1BTSk5NVEF1TnpRMElEUXVOVFUwWXpFZ01DQXhMamd3T0M0NE1qWWdNUzQ0TURnZ01TNDRORFYyTVM0eE9UZGpNQzB4TGpFd09TNDVNamN0TWk0d01EZ2dNaTR3TmpndE1pNHdNRGdnTVM0eE5ETWdNQ0F5TGpBMk9DNDVJREl1TURZNElESXVNREE0ZGpFdU5UVXlZekF0TVM0eE1TNDVNeTB5TGpBd09DQXlMakEzTnkweUxqQXdPQ0F4TGpFME55QXdJREl1TURjMkxqZzVPU0F5TGpBM05pQXlMakF3T0hZeExqQTJPRUV4TGpVMElERXVOVFFnTUNBd0lERWdNakl1TXprZ09DNDJPV011T0RVMklEQWdNUzQxTkRndU5qZzBJREV1TlRRNElERXVOVE1nTUNBd0lDNHdNU0F5TGprNE9DNHdNU0EyTGpJME5DQXdJRE11TWpVM0xUTXVNVFl4SURZdU5qTTJMVE11TVRZeElEZ3VPREF5U0RFd0xqUTFZekF0TVM0NU5DMDFMakUwTmkwMUxqYzNNeTAxTGpFME5pMDRMakEyTVhZdE55NHdNbU13TFRFdU1URXlMamt5TmkweUxqQXhOQ0F5TGpBM0xUSXVNREUxZGpRdU1EVXhZekFnTGpNME1pNHpOUzQyTWk0M09ERXVOakl1TkRNeUlEQWdMamM0TWkwdU1qYzRMamM0TWkwdU5qSldOaTQwWXpBdE1TNHdNaTQ0TURrdE1TNDRORFVnTVM0NE1EY3RNUzQ0TkRWYWJUQXRNUzQxTlRSRE9DNDRPU0F6SURjdU16ZzBJRFF1TlRJMUlEY3VNemcwSURZdU5IWXVNakpvTFM0d01USmpMVEV1T1RrM0lEQXRNeTQyTWpJZ01TNDJNREl0TXk0Mk1qSWdNeTQxTmpoc0xqQXdNU0EzTGpBeVl6QWdNUzQzTnlBeExqVXhNaUF6TGpVeE5TQXpMakV4TWlBMUxqTTJNUzQzTWk0NE15QXhMamt4T1NBeUxqSXhOaUF5TGpBek5DQXlMamN6TVhZeExqVXlNbWd4TXk0ME5ESjJMVEV1TlRVMFl6QXRMalU1TGpZeE9DMHhMamMzSURFdU1UWXpMVEl1T0RFdU9UTTRMVEV1TnpnNUlERXVPVGs0TFRNdU9ERTFJREV1T1RrNExUVXVPVGt4SURBdE15NHlOVGd0TGpBeExUWXVNalE0TFM0d01TMDJMakkwT0NBd0xURXVOamsyTFRFdU16a3RNeTR3T0MwekxqRXRNeTR3T0MwdU1qQXpJREF0TGpRdU1ESXRMalU1TWk0d05UZGhNeTQyTlNBekxqWTFJREFnTUNBd0xUTXVNRE16TFRFdU5qQTNZeTB1TXpZM0lEQXRMamN5TGpBMU15MHhMakExTlM0eE5UTmhNeTQyTXpZZ015NDJNellnTUNBd0lEQXRNeTR3T1MweExqY3dOV010TGpRME5DQXdMUzQ0Tnk0d09DMHhMakkyTkM0eU1qVkJNeTR6TkRVZ015NHpORFVnTUNBd0lEQWdNVEF1TnpRMElETmFJZ29nSUNBZ0x6NEtJQ0E4TDNOMlp6ND0nKSxcbiAgICAgIGF1dG9cbiAgICBgLFxyXG4gICAgfSxcclxufSkpO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZWRDb21wb25lbnRzLmpzLm1hcCJdfQ== */");

function useLoading() {
  var ketcher = ketcherProvider.getKetcher();
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    isLoading = _useState2[0],
    setIsLoading = _useState2[1];
  var onLoadingStart = useCallback(function () {
    return setIsLoading(true);
  }, [setIsLoading]);
  var onLoadingFinish = useCallback(function () {
    return setIsLoading(false);
  }, [setIsLoading]);
  useEffect(function () {
    ketcher.eventBus.addListener(KetcherAsyncEvents.LOADING, onLoadingStart);
    ketcher.eventBus.addListener(KetcherAsyncEvents.SUCCESS, onLoadingFinish);
    ketcher.eventBus.addListener(KetcherAsyncEvents.FAILURE, onLoadingFinish);
    return function () {
      ketcher.eventBus.removeListener(KetcherAsyncEvents.LOADING, onLoadingStart);
      ketcher.eventBus.removeListener(KetcherAsyncEvents.SUCCESS, onLoadingFinish);
      ketcher.eventBus.removeListener(KetcherAsyncEvents.FAILURE, onLoadingFinish);
    };
  }, [ketcher.eventBus, onLoadingFinish, onLoadingStart]);
  return isLoading;
}

function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _createForOfIteratorHelper$1(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$1(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }
function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function useSetRnaPresets() {
  var dispatch = useAppDispatch();
  var editor = useAppSelector(selectEditor);
  useEffect(function () {
    if (!editor) return;
    var monomersLibrary = editor.monomersLibrary;
    var defaultPresetsTemplates = editor.defaultRnaPresetsLibraryItems;
    var defaultPresets = _toConsumableArray(getPresets(monomersLibrary, defaultPresetsTemplates, true));
    var customLabeledPresets = getCachedCustomRnaPresets();
    var customPresets = [];
    var presetsDefaultNames = defaultPresets.map(function (preset) {
      return preset.name;
    });
    if (customLabeledPresets) {
      var _iterator = _createForOfIteratorHelper$1(customLabeledPresets),
        _step;
      try {
        for (_iterator.s(); !(_step = _iterator.n()).done;) {
          var customLabeledPreset = _step.value;
          var i = 0;
          var presetUniqName = customLabeledPreset.name;
          while (presetsDefaultNames.includes(presetUniqName)) {
            i++;
            presetUniqName = "".concat(customLabeledPreset.name).concat('_Copy'.repeat(i));
          }
          if (presetUniqName !== customLabeledPreset.name) {
            setCachedCustomRnaPreset(_objectSpread$2(_objectSpread$2({}, customLabeledPreset), {}, {
              name: presetUniqName
            }));
          }
        }
      } catch (err) {
        _iterator.e(err);
      } finally {
        _iterator.f();
      }
      customLabeledPresets = getCachedCustomRnaPresets();
      customPresets = getPresets(monomersLibrary, customLabeledPresets);
    }
    dispatch(loadMonomerLibrary(monomersLibrary));
    dispatch(setFavoriteMonomersFromLocalStorage(null));
    dispatch(setDefaultPresets(defaultPresets));
    customLabeledPresets && dispatch(setCustomPresets(customPresets));
    dispatch(setFavoritePresetsFromLocalStorage());
    return function () {
      dispatch(loadMonomerLibrary([]));
      dispatch(clearFavorites());
    };
  }, [editor]);
}

function _EMOTION_STRINGIFIED_CSS_ERROR__$8() { 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)."; }
var LoadingCirclesWrapper = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ex562360"
} : {
  target: "ex562360",
  label: "LoadingCirclesWrapper"
})(process.env.NODE_ENV === "production" ? {
  name: "1vtgpt7",
  styles: "position:absolute;top:0;left:0;height:100%;width:100%;display:flex;justify-content:center;align-items:center"
} : {
  name: "1vtgpt7",
  styles: "position:absolute;top:0;left:0;height:100%;width:100%;display:flex;justify-content:center;align-items:center",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHeUMiLCJmaWxlIjoiaW5kZXgudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBMb2FkaW5nQ2lyY2xlcyB9IGZyb20gXCIuLi9tb2RhbC9PcGVuL0FuYWx5emluZ0ZpbGUvTG9hZGluZ0NpcmNsZXNcIjtcclxuY29uc3QgTG9hZGluZ0NpcmNsZXNXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XHJcbmV4cG9ydCBjb25zdCBMb2FkZXIgPSAoKSA9PiB7XHJcbiAgICByZXR1cm4gKF9qc3goTG9hZGluZ0NpcmNsZXNXcmFwcGVyLCB7IGNoaWxkcmVuOiBfanN4KExvYWRpbmdDaXJjbGVzLCB7fSkgfSkpO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
});
var Loader = function Loader() {
  return jsx(LoadingCirclesWrapper, {
    children: jsx(LoadingCircles, {})
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$7() { 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)."; }
var requestFullscreen = function requestFullscreen(element) {
  element.requestFullscreen && element.requestFullscreen() || element.msRequestFullscreen && element.msRequestFullscreen() || element.mozRequestFullScreen && element.mozRequestFullScreen() || element.webkitRequestFullscreen && element.webkitRequestFullscreen();
};
var exitFullscreen = function exitFullscreen() {
  document.exitFullscreen && document.exitFullscreen() || document.msExitFullscreen && document.msExitFullscreen() || document.mozCancelFullScreen && document.mozCancelFullScreen() || document.webkitExitFullscreen && document.webkitExitFullscreen();
};
var isFullScreen = function isFullScreen() {
  return !!(document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement);
};
var ButtonContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1yct69a0"
} : {
  target: "e1yct69a0",
  label: "ButtonContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "14ocoqf",
  styles: "display:flex;& svg:first-of-type{display:flex;justify-content:center;align-items:center;width:24px;height:24px;padding:2px;border-radius:4px;}"
} : {
  name: "14ocoqf",
  styles: "display:flex;& svg:first-of-type{display:flex;justify-content:center;align-items:center;width:24px;height:24px;padding:2px;border-radius:4px;}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZ1bGxzY3JlZW5CdXR0b24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFDbUMiLCJmaWxlIjoiRnVsbHNjcmVlbkJ1dHRvbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgS0VUQ0hFUl9NQUNST01PTEVDVUxFU19ST09UX05PREVfU0VMRUNUT1IsIEljb25CdXR0b24sIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmNvbnN0IHJlcXVlc3RGdWxsc2NyZWVuID0gKGVsZW1lbnQpID0+IHtcclxuICAgIChlbGVtZW50LnJlcXVlc3RGdWxsc2NyZWVuICYmIGVsZW1lbnQucmVxdWVzdEZ1bGxzY3JlZW4oKSkgfHxcclxuICAgICAgICAoZWxlbWVudC5tc1JlcXVlc3RGdWxsc2NyZWVuICYmIGVsZW1lbnQubXNSZXF1ZXN0RnVsbHNjcmVlbigpKSB8fFxyXG4gICAgICAgIChlbGVtZW50Lm1velJlcXVlc3RGdWxsU2NyZWVuICYmIGVsZW1lbnQubW96UmVxdWVzdEZ1bGxTY3JlZW4oKSkgfHxcclxuICAgICAgICAoZWxlbWVudC53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbiAmJiBlbGVtZW50LndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKCkpO1xyXG59O1xyXG5jb25zdCBleGl0RnVsbHNjcmVlbiA9ICgpID0+IHtcclxuICAgIChkb2N1bWVudC5leGl0RnVsbHNjcmVlbiAmJiBkb2N1bWVudC5leGl0RnVsbHNjcmVlbigpKSB8fFxyXG4gICAgICAgIChkb2N1bWVudC5tc0V4aXRGdWxsc2NyZWVuICYmIGRvY3VtZW50Lm1zRXhpdEZ1bGxzY3JlZW4oKSkgfHxcclxuICAgICAgICAoZG9jdW1lbnQubW96Q2FuY2VsRnVsbFNjcmVlbiAmJiBkb2N1bWVudC5tb3pDYW5jZWxGdWxsU2NyZWVuKCkpIHx8XHJcbiAgICAgICAgKGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuICYmIGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCkpO1xyXG59O1xyXG5jb25zdCBpc0Z1bGxTY3JlZW4gPSAoKSA9PiB7XHJcbiAgICByZXR1cm4gISEoZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnQgfHxcclxuICAgICAgICBkb2N1bWVudC5tb3pGdWxsU2NyZWVuRWxlbWVudCB8fFxyXG4gICAgICAgIGRvY3VtZW50LndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50IHx8XHJcbiAgICAgICAgZG9jdW1lbnQubXNGdWxsc2NyZWVuRWxlbWVudCk7XHJcbn07XHJcbmNvbnN0IEJ1dHRvbkNvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgc3ZnOmZpcnN0LW9mLXR5cGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IEZ1bGxzY3JlZW5CdXR0b24gPSAocHJvcHMpID0+IHtcclxuICAgIGNvbnN0IFtmdWxsU2NyZWVuTW9kZSwgc2V0RnVsbFNjcmVlbk1vZGVdID0gdXNlU3RhdGUoaXNGdWxsU2NyZWVuKCkpO1xyXG4gICAgY29uc3QgdG9nZ2xlRnVsbHNjcmVlbiA9ICgpID0+IHtcclxuICAgICAgICAvLyBUT0RPOiBhZGQgc2VsZWN0b3IgLyByZWYgcHJvcCB3aGVuIHdpbGwgYmUgc2hhcmVkIGNvbXBvbmVudFxyXG4gICAgICAgIGNvbnN0IGZ1bGxzY3JlZW5FbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihLRVRDSEVSX01BQ1JPTU9MRUNVTEVTX1JPT1RfTk9ERV9TRUxFQ1RPUikgfHxcclxuICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xyXG4gICAgICAgIGZ1bGxTY3JlZW5Nb2RlID8gZXhpdEZ1bGxzY3JlZW4oKSA6IHJlcXVlc3RGdWxsc2NyZWVuKGZ1bGxzY3JlZW5FbGVtZW50KTtcclxuICAgICAgICBzZXRGdWxsU2NyZWVuTW9kZSghZnVsbFNjcmVlbk1vZGUpO1xyXG4gICAgfTtcclxuICAgIHJldHVybiAoX2pzeChCdXR0b25Db250YWluZXIsIHsgY2xhc3NOYW1lOiBwcm9wcy5jbGFzc05hbWUsIGNoaWxkcmVuOiBfanN4KEljb25CdXR0b24sIHsgb25DbGljazogdG9nZ2xlRnVsbHNjcmVlbiwgaWNvbk5hbWU6IGZ1bGxTY3JlZW5Nb2RlID8gJ2Z1bGxzY3JlZW4tZXhpdCcgOiAnZnVsbHNjcmVlbi1lbnRlcicgfSkgfSkpO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1GdWxsc2NyZWVuQnV0dG9uLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
});
var FullscreenButton = function FullscreenButton(props) {
  var _useState = useState(isFullScreen()),
    _useState2 = _slicedToArray(_useState, 2),
    fullScreenMode = _useState2[0],
    setFullScreenMode = _useState2[1];
  var toggleFullscreen = function toggleFullscreen() {
    var fullscreenElement = document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR) || document.documentElement;
    fullScreenMode ? exitFullscreen() : requestFullscreen(fullscreenElement);
    setFullScreenMode(!fullScreenMode);
  };
  return jsx(ButtonContainer, {
    className: props.className,
    children: jsx(IconButton, {
      onClick: toggleFullscreen,
      iconName: fullScreenMode ? 'fullscreen-exit' : 'fullscreen-enter'
    })
  });
};

var MenuContext = React__default.createContext({});

var useMenuContext = function useMenuContext() {
  return React__default.useContext(MenuContext);
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { 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)."; }
var StyledIconButton = _styled(IconButton, process.env.NODE_ENV === "production" ? {
  target: "e1erwxoo0"
} : {
  target: "e1erwxoo0",
  label: "StyledIconButton"
})(process.env.NODE_ENV === "production" ? {
  name: "1y95nj0",
  styles: "margin:2px;outline:none"
} : {
  name: "1y95nj0",
  styles: "margin:2px;outline:none",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQm1EIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEljb25CdXR0b24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZEljb25CdXR0b24gPSBzdHlsZWQoSWNvbkJ1dHRvbikgYFxuICBtYXJnaW46IDJweDtcbiAgb3V0bGluZTogbm9uZTtcbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
});

function blurActiveElement() {
  var _document$activeEleme;
  (_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 || _document$activeEleme.blur();
}

var MenuItem = function MenuItem(_ref) {
  var itemId = _ref.itemId,
    _ref$title = _ref.title,
    title = _ref$title === void 0 ? '' : _ref$title,
    disabled = _ref.disabled,
    testId = _ref.testId,
    onClick = _ref.onClick;
  var _useMenuContext = useMenuContext(),
    isActive = _useMenuContext.isActive,
    activate = _useMenuContext.activate;
  var onClickCallback = useCallback(function () {
    activate(itemId);
    blurActiveElement();
    if (onClick) {
      onClick();
    }
  }, [activate, itemId]);
  var isActiveItem = isActive(itemId);
  var activeClass = isActiveItem ? ' active' : '';
  return jsx(StyledIconButton, {
    title: title,
    className: itemId + activeClass,
    isActive: isActiveItem,
    onClick: onClickCallback,
    iconName: itemId,
    testId: testId,
    disabled: disabled
  });
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$5() { 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)."; }
var StyledDropdownIcon = _styled(Icon, process.env.NODE_ENV === "production" ? {
  shouldForwardProp: function shouldForwardProp(prop) {
    return prop !== 'isActive';
  },
  target: "e13kdqxv4"
} : {
  shouldForwardProp: function shouldForwardProp(prop) {
    return prop !== 'isActive';
  },
  target: "e13kdqxv4",
  label: "StyledDropdownIcon"
})("position:absolute;height:7px;width:7px;right:2px;bottom:2px;cursor:pointer;path{fill:", function (_ref) {
  var isActive = _ref.isActive;
  return isActive ? 'white' : undefined;
}, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQkciLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQ29sbGFwc2UgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkRHJvcGRvd25JY29uID0gc3R5bGVkKEljb24sIHtcclxuICAgIHNob3VsZEZvcndhcmRQcm9wOiAocHJvcCkgPT4gcHJvcCAhPT0gJ2lzQWN0aXZlJyxcclxufSkgYFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogN3B4O1xuICB3aWR0aDogN3B4O1xuICByaWdodDogMnB4O1xuICBib3R0b206IDJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHBhdGgge1xuICAgIGZpbGw6ICR7KHsgaXNBY3RpdmUgfSkgPT4gKGlzQWN0aXZlID8gJ3doaXRlJyA6IHVuZGVmaW5lZCl9O1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgUm9vdENvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJjphY3RpdmUge1xuICAgIC5kcm9wZG93biB7XG4gICAgICBmaWxsOiB3aGl0ZTtcbiAgICB9XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBPcHRpb25zQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogJHsoeyBpc1ZlcnRpY2FsIH0pID0+IChpc1ZlcnRpY2FsID8gJy0zNHB4JyA6ICc1cHgnKX07XG4gIHRvcDogJHsoeyBpc1ZlcnRpY2FsLCBpc2xheW91dE1vZGVCdXR0b24gfSkgPT4gaXNWZXJ0aWNhbCAmJiBpc2xheW91dE1vZGVCdXR0b24gPyAnMjRweCcgOiBpc1ZlcnRpY2FsID8gJzM4cHgnIDogJzBweCd9O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiAkeyh7IGlzVmVydGljYWwgfSkgPT4gKGlzVmVydGljYWwgPyAnY29sdW1uJyA6ICdyb3cnKX07XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgT3B0aW9uc0l0ZW1zQ29sbGFwc2UgPSBzdHlsZWQoQ29sbGFwc2UpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFZpc2libGVJdGVtID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgcGFkZGluZzogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */"));
var RootContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e13kdqxv3"
} : {
  target: "e13kdqxv3",
  label: "RootContainer"
})(process.env.NODE_ENV === "production" ? {
  name: "k5saax",
  styles: "display:flex;position:relative;align-items:center;&:active{.dropdown{fill:white;}}"
} : {
  name: "k5saax",
  styles: "display:flex;position:relative;align-items:center;&:active{.dropdown{fill:white;}}",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQ3dDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IENvbGxhcHNlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duSWNvbiA9IHN0eWxlZChJY29uLCB7XHJcbiAgICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3ApID0+IHByb3AgIT09ICdpc0FjdGl2ZScsXHJcbn0pIGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDdweDtcbiAgcmlnaHQ6IDJweDtcbiAgYm90dG9tOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBwYXRoIHtcbiAgICBmaWxsOiAkeyh7IGlzQWN0aXZlIH0pID0+IChpc0FjdGl2ZSA/ICd3aGl0ZScgOiB1bmRlZmluZWQpfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6YWN0aXZlIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgT3B0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6ICR7KHsgaXNWZXJ0aWNhbCB9KSA9PiAoaXNWZXJ0aWNhbCA/ICctMzRweCcgOiAnNXB4Jyl9O1xuICB0b3A6ICR7KHsgaXNWZXJ0aWNhbCwgaXNsYXlvdXRNb2RlQnV0dG9uIH0pID0+IGlzVmVydGljYWwgJiYgaXNsYXlvdXRNb2RlQnV0dG9uID8gJzI0cHgnIDogaXNWZXJ0aWNhbCA/ICczOHB4JyA6ICcwcHgnfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LWRpcmVjdGlvbjogJHsoeyBpc1ZlcnRpY2FsIH0pID0+IChpc1ZlcnRpY2FsID8gJ2NvbHVtbicgOiAncm93Jyl9O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IE9wdGlvbnNJdGVtc0NvbGxhcHNlID0gc3R5bGVkKENvbGxhcHNlKSBgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XHJcbmV4cG9ydCBjb25zdCBWaXNpYmxlSXRlbSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
});
var OptionsContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e13kdqxv2"
} : {
  target: "e13kdqxv2",
  label: "OptionsContainer"
})("display:flex;position:absolute;left:", function (_ref2) {
  var isVertical = _ref2.isVertical;
  return isVertical ? '-34px' : '5px';
}, ";top:", function (_ref3) {
  var isVertical = _ref3.isVertical,
    islayoutModeButton = _ref3.islayoutModeButton;
  return isVertical && islayoutModeButton ? '24px' : isVertical ? '38px' : '0px';
}, ";border-radius:4px;flex-direction:", function (_ref4) {
  var isVertical = _ref4.isVertical;
  return isVertical ? 'column' : 'row';
}, ";z-index:1;background-color:white;padding:2px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQzJDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IENvbGxhcHNlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duSWNvbiA9IHN0eWxlZChJY29uLCB7XHJcbiAgICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3ApID0+IHByb3AgIT09ICdpc0FjdGl2ZScsXHJcbn0pIGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDdweDtcbiAgcmlnaHQ6IDJweDtcbiAgYm90dG9tOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBwYXRoIHtcbiAgICBmaWxsOiAkeyh7IGlzQWN0aXZlIH0pID0+IChpc0FjdGl2ZSA/ICd3aGl0ZScgOiB1bmRlZmluZWQpfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6YWN0aXZlIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgT3B0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6ICR7KHsgaXNWZXJ0aWNhbCB9KSA9PiAoaXNWZXJ0aWNhbCA/ICctMzRweCcgOiAnNXB4Jyl9O1xuICB0b3A6ICR7KHsgaXNWZXJ0aWNhbCwgaXNsYXlvdXRNb2RlQnV0dG9uIH0pID0+IGlzVmVydGljYWwgJiYgaXNsYXlvdXRNb2RlQnV0dG9uID8gJzI0cHgnIDogaXNWZXJ0aWNhbCA/ICczOHB4JyA6ICcwcHgnfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LWRpcmVjdGlvbjogJHsoeyBpc1ZlcnRpY2FsIH0pID0+IChpc1ZlcnRpY2FsID8gJ2NvbHVtbicgOiAncm93Jyl9O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IE9wdGlvbnNJdGVtc0NvbGxhcHNlID0gc3R5bGVkKENvbGxhcHNlKSBgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XHJcbmV4cG9ydCBjb25zdCBWaXNpYmxlSXRlbSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */"));
var OptionsItemsCollapse = _styled(Collapse, process.env.NODE_ENV === "production" ? {
  target: "e13kdqxv1"
} : {
  target: "e13kdqxv1",
  label: "OptionsItemsCollapse"
})(process.env.NODE_ENV === "production" ? {
  name: "bjn8wh",
  styles: "position:relative"
} : {
  name: "bjn8wh",
  styles: "position:relative",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzRHFEIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IENvbGxhcHNlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duSWNvbiA9IHN0eWxlZChJY29uLCB7XHJcbiAgICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3ApID0+IHByb3AgIT09ICdpc0FjdGl2ZScsXHJcbn0pIGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDdweDtcbiAgcmlnaHQ6IDJweDtcbiAgYm90dG9tOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBwYXRoIHtcbiAgICBmaWxsOiAkeyh7IGlzQWN0aXZlIH0pID0+IChpc0FjdGl2ZSA/ICd3aGl0ZScgOiB1bmRlZmluZWQpfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6YWN0aXZlIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgT3B0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6ICR7KHsgaXNWZXJ0aWNhbCB9KSA9PiAoaXNWZXJ0aWNhbCA/ICctMzRweCcgOiAnNXB4Jyl9O1xuICB0b3A6ICR7KHsgaXNWZXJ0aWNhbCwgaXNsYXlvdXRNb2RlQnV0dG9uIH0pID0+IGlzVmVydGljYWwgJiYgaXNsYXlvdXRNb2RlQnV0dG9uID8gJzI0cHgnIDogaXNWZXJ0aWNhbCA/ICczOHB4JyA6ICcwcHgnfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LWRpcmVjdGlvbjogJHsoeyBpc1ZlcnRpY2FsIH0pID0+IChpc1ZlcnRpY2FsID8gJ2NvbHVtbicgOiAncm93Jyl9O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IE9wdGlvbnNJdGVtc0NvbGxhcHNlID0gc3R5bGVkKENvbGxhcHNlKSBgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XHJcbmV4cG9ydCBjb25zdCBWaXNpYmxlSXRlbSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
});
var VisibleItem = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e13kdqxv0"
} : {
  target: "e13kdqxv0",
  label: "VisibleItem"
})(process.env.NODE_ENV === "production" ? {
  name: "a1qh1t",
  styles: "display:flex;align-items:center;position:relative;width:32px;height:32px;padding:0;justify-content:center;border-radius:2px"
} : {
  name: "a1qh1t",
  styles: "display:flex;align-items:center;position:relative;width:32px;height:32px;padding:0;justify-content:center;border-radius:2px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5RHNDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IENvbGxhcHNlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IEljb24gfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuZXhwb3J0IGNvbnN0IFN0eWxlZERyb3Bkb3duSWNvbiA9IHN0eWxlZChJY29uLCB7XHJcbiAgICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3ApID0+IHByb3AgIT09ICdpc0FjdGl2ZScsXHJcbn0pIGBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDdweDtcbiAgd2lkdGg6IDdweDtcbiAgcmlnaHQ6IDJweDtcbiAgYm90dG9tOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBwYXRoIHtcbiAgICBmaWxsOiAkeyh7IGlzQWN0aXZlIH0pID0+IChpc0FjdGl2ZSA/ICd3aGl0ZScgOiB1bmRlZmluZWQpfTtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6YWN0aXZlIHtcbiAgICAuZHJvcGRvd24ge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgT3B0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6ICR7KHsgaXNWZXJ0aWNhbCB9KSA9PiAoaXNWZXJ0aWNhbCA/ICctMzRweCcgOiAnNXB4Jyl9O1xuICB0b3A6ICR7KHsgaXNWZXJ0aWNhbCwgaXNsYXlvdXRNb2RlQnV0dG9uIH0pID0+IGlzVmVydGljYWwgJiYgaXNsYXlvdXRNb2RlQnV0dG9uID8gJzI0cHgnIDogaXNWZXJ0aWNhbCA/ICczOHB4JyA6ICcwcHgnfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmbGV4LWRpcmVjdGlvbjogJHsoeyBpc1ZlcnRpY2FsIH0pID0+IChpc1ZlcnRpY2FsID8gJ2NvbHVtbicgOiAncm93Jyl9O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMnB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IE9wdGlvbnNJdGVtc0NvbGxhcHNlID0gc3R5bGVkKENvbGxhcHNlKSBgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XHJcbmV4cG9ydCBjb25zdCBWaXNpYmxlSXRlbSA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
});

var SubMenu = function SubMenu(_ref) {
  var children = _ref.children,
    _ref$vertical = _ref.vertical,
    vertical = _ref$vertical === void 0 ? false : _ref$vertical,
    _ref$disabled = _ref.disabled,
    disabled = _ref$disabled === void 0 ? false : _ref$disabled,
    _ref$needOpenByMenuIt = _ref.needOpenByMenuItemClick,
    needOpenByMenuItemClick = _ref$needOpenByMenuIt === void 0 ? false : _ref$needOpenByMenuIt,
    testId = _ref.testId,
    _ref$layoutModeButton = _ref.layoutModeButton,
    layoutModeButton = _ref$layoutModeButton === void 0 ? false : _ref$layoutModeButton;
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    open = _useState2[0],
    setOpen = _useState2[1];
  var _useMenuContext = useMenuContext(),
    isActive = _useMenuContext.isActive;
  var handleDropDownClick = function handleDropDownClick() {
    if (disabled) return;
    setOpen(function (prev) {
      return !prev;
    });
  };
  var hideCollapse = function hideCollapse() {
    open && setOpen(false);
  };
  var subComponents = React__default.Children.map(children, function (child) {
    return child.type === MenuItem ? child : null;
  });
  var options = subComponents.map(function (item) {
    return item.props.itemId;
  }).filter(function (item) {
    return item;
  });
  var activeOption = options.filter(function (itemKey) {
    return isActive(itemKey);
  });
  var visibleItemId = activeOption.length ? activeOption[0] : options[0];
  var visibleItem = subComponents.find(function (option) {
    return option.props.itemId === visibleItemId;
  });
  var visibleItemTestId = visibleItem === null || visibleItem === void 0 ? void 0 : visibleItem.props.testId;
  var visibleItemTitle = visibleItem === null || visibleItem === void 0 ? void 0 : visibleItem.props.title;
  return jsxs(RootContainer, {
    "data-testid": testId,
    children: [jsxs(VisibleItem, {
      children: [jsx(MenuItem, {
        disabled: disabled,
        itemId: visibleItemId,
        title: visibleItemTitle,
        testId: visibleItemTestId,
        onClick: needOpenByMenuItemClick ? handleDropDownClick : EmptyFunction
      }), open || jsx(StyledDropdownIcon, {
        className: "dropdown",
        name: "dropdown",
        onClick: handleDropDownClick,
        isActive: isActive(visibleItemId)
      })]
    }), jsx(OptionsItemsCollapse, {
      "in": open,
      timeout: "auto",
      unmountOnExit: true,
      onClick: hideCollapse,
      children: jsx(ClickAwayListener, {
        onClickAway: hideCollapse,
        children: jsx(OptionsContainer, {
          isVertical: vertical,
          islayoutModeButton: layoutModeButton,
          children: subComponents.map(function (component) {
            return component;
          })
        })
      })
    })]
  });
};

var MenuLayout = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1fh0ozy3"
} : {
  target: "e1fh0ozy3",
  label: "MenuLayout"
})(function (_ref) {
  var theme = _ref.theme,
    isHorizontal = _ref.isHorizontal;
  return {
    backgroundColor: theme.ketcher.color.background.primary,
    borderRadius: '4px',
    display: 'flex',
    flexDirection: isHorizontal ? 'row' : 'column'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQjBCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNZW51TGF5b3V0ID0gc3R5bGVkLmRpdigoeyB0aGVtZSwgaXNIb3Jpem9udGFsIH0pID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IERpdmlkZXIgPSBzdHlsZWQuaHIgYFxuICB3aWR0aDogMThweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBib3JkZXItd2lkdGg6IHRoaW4gMHB4IDBweCAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFZlcnRpY2FsRGl2aWRlciA9IHN0eWxlZC5ociBgXG4gIGhlaWdodDogMThweDtcbiAgbWFyZ2luOiAwcHggNnB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJvcmRlci13aWR0aDogMHB4IHRoaW4gMHB4IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZGl2aWRlcn07XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkR3JvdXAgPSBzdHlsZWQuZGl2KCh7IHRoZW1lLCBpc0hvcml6b250YWwgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbiAgICBmbGV4V3JhcDogJ25vd3JhcCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgd2lkdGg6IGlzSG9yaXpvbnRhbCA/IHVuZGVmaW5lZCA6ICczMnB4JyxcclxuICAgIG1hcmdpbkJvdHRvbTogaXNIb3Jpem9udGFsID8gdW5kZWZpbmVkIDogJzhweCcsXHJcbiAgICAnPiA6bGFzdC1jaGlsZCc6IGlzSG9yaXpvbnRhbFxyXG4gICAgICAgID8gdW5kZWZpbmVkXHJcbiAgICAgICAgOiB7XHJcbiAgICAgICAgICAgIG1hcmdpbkJvdHRvbTogMCxcclxuICAgICAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");
var Divider = _styled("hr", process.env.NODE_ENV === "production" ? {
  target: "e1fh0ozy2"
} : {
  target: "e1fh0ozy2",
  label: "Divider"
})("width:18px;margin:6px 0;align-self:center;border-width:thin 0px 0px 0px;border-style:solid;border-color:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.color.divider;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQmlDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNZW51TGF5b3V0ID0gc3R5bGVkLmRpdigoeyB0aGVtZSwgaXNIb3Jpem9udGFsIH0pID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IERpdmlkZXIgPSBzdHlsZWQuaHIgYFxuICB3aWR0aDogMThweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBib3JkZXItd2lkdGg6IHRoaW4gMHB4IDBweCAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFZlcnRpY2FsRGl2aWRlciA9IHN0eWxlZC5ociBgXG4gIGhlaWdodDogMThweDtcbiAgbWFyZ2luOiAwcHggNnB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJvcmRlci13aWR0aDogMHB4IHRoaW4gMHB4IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZGl2aWRlcn07XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkR3JvdXAgPSBzdHlsZWQuZGl2KCh7IHRoZW1lLCBpc0hvcml6b250YWwgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbiAgICBmbGV4V3JhcDogJ25vd3JhcCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgd2lkdGg6IGlzSG9yaXpvbnRhbCA/IHVuZGVmaW5lZCA6ICczMnB4JyxcclxuICAgIG1hcmdpbkJvdHRvbTogaXNIb3Jpem9udGFsID8gdW5kZWZpbmVkIDogJzhweCcsXHJcbiAgICAnPiA6bGFzdC1jaGlsZCc6IGlzSG9yaXpvbnRhbFxyXG4gICAgICAgID8gdW5kZWZpbmVkXHJcbiAgICAgICAgOiB7XHJcbiAgICAgICAgICAgIG1hcmdpbkJvdHRvbTogMCxcclxuICAgICAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */"));
var VerticalDivider = _styled("hr", process.env.NODE_ENV === "production" ? {
  target: "e1fh0ozy1"
} : {
  target: "e1fh0ozy1",
  label: "VerticalDivider"
})("height:18px;margin:0px 6px;align-self:center;border-width:0px thin 0px 0px;border-style:solid;border-color:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.color.divider;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QnlDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNZW51TGF5b3V0ID0gc3R5bGVkLmRpdigoeyB0aGVtZSwgaXNIb3Jpem9udGFsIH0pID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IERpdmlkZXIgPSBzdHlsZWQuaHIgYFxuICB3aWR0aDogMThweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBib3JkZXItd2lkdGg6IHRoaW4gMHB4IDBweCAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFZlcnRpY2FsRGl2aWRlciA9IHN0eWxlZC5ociBgXG4gIGhlaWdodDogMThweDtcbiAgbWFyZ2luOiAwcHggNnB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJvcmRlci13aWR0aDogMHB4IHRoaW4gMHB4IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZGl2aWRlcn07XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkR3JvdXAgPSBzdHlsZWQuZGl2KCh7IHRoZW1lLCBpc0hvcml6b250YWwgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbiAgICBmbGV4V3JhcDogJ25vd3JhcCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgd2lkdGg6IGlzSG9yaXpvbnRhbCA/IHVuZGVmaW5lZCA6ICczMnB4JyxcclxuICAgIG1hcmdpbkJvdHRvbTogaXNIb3Jpem9udGFsID8gdW5kZWZpbmVkIDogJzhweCcsXHJcbiAgICAnPiA6bGFzdC1jaGlsZCc6IGlzSG9yaXpvbnRhbFxyXG4gICAgICAgID8gdW5kZWZpbmVkXHJcbiAgICAgICAgOiB7XHJcbiAgICAgICAgICAgIG1hcmdpbkJvdHRvbTogMCxcclxuICAgICAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */"));
var StyledGroup = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1fh0ozy0"
} : {
  target: "e1fh0ozy0",
  label: "StyledGroup"
})(function (_ref4) {
  var theme = _ref4.theme,
    isHorizontal = _ref4.isHorizontal;
  return {
    display: 'flex',
    flexDirection: isHorizontal ? 'row' : 'column',
    flexWrap: 'nowrap',
    alignItems: 'center',
    backgroundColor: theme.ketcher.color.background.primary,
    borderRadius: '2px',
    width: isHorizontal ? undefined : '32px',
    marginBottom: isHorizontal ? undefined : '8px',
    '> :last-child': isHorizontal ? undefined : {
      marginBottom: 0
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQzJCIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBNZW51TGF5b3V0ID0gc3R5bGVkLmRpdigoeyB0aGVtZSwgaXNIb3Jpem9udGFsIH0pID0+ICh7XHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IERpdmlkZXIgPSBzdHlsZWQuaHIgYFxuICB3aWR0aDogMThweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBib3JkZXItd2lkdGg6IHRoaW4gMHB4IDBweCAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRpdmlkZXJ9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFZlcnRpY2FsRGl2aWRlciA9IHN0eWxlZC5ociBgXG4gIGhlaWdodDogMThweDtcbiAgbWFyZ2luOiAwcHggNnB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJvcmRlci13aWR0aDogMHB4IHRoaW4gMHB4IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZGl2aWRlcn07XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkR3JvdXAgPSBzdHlsZWQuZGl2KCh7IHRoZW1lLCBpc0hvcml6b250YWwgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246IGlzSG9yaXpvbnRhbCA/ICdyb3cnIDogJ2NvbHVtbicsXHJcbiAgICBmbGV4V3JhcDogJ25vd3JhcCcsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnksXHJcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxyXG4gICAgd2lkdGg6IGlzSG9yaXpvbnRhbCA/IHVuZGVmaW5lZCA6ICczMnB4JyxcclxuICAgIG1hcmdpbkJvdHRvbTogaXNIb3Jpem9udGFsID8gdW5kZWZpbmVkIDogJzhweCcsXHJcbiAgICAnPiA6bGFzdC1jaGlsZCc6IGlzSG9yaXpvbnRhbFxyXG4gICAgICAgID8gdW5kZWZpbmVkXHJcbiAgICAgICAgOiB7XHJcbiAgICAgICAgICAgIG1hcmdpbkJvdHRvbTogMCxcclxuICAgICAgICB9LFxyXG59KSk7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */");

var Group = function Group(_ref) {
  var children = _ref.children,
    _ref$divider = _ref.divider,
    divider = _ref$divider === void 0 ? false : _ref$divider,
    isHorizontal = _ref.isHorizontal;
  var subComponents = React__default.Children.map(children, function (child) {
    return child.type === MenuItem || child.type === SubMenu ? child : null;
  });
  return jsxs(Fragment, {
    children: [jsx(StyledGroup, {
      isHorizontal: isHorizontal,
      children: subComponents.map(function (component) {
        return component;
      })
    }), divider && (isHorizontal ? jsx(VerticalDivider, {}) : jsx(Divider, {}))]
  });
};
var Menu = function Menu(_ref2) {
  var children = _ref2.children,
    onItemClick = _ref2.onItemClick,
    activeMenuItems = _ref2.activeMenuItems,
    testId = _ref2.testId,
    isHorizontal = _ref2.isHorizontal;
  var context = React__default.useMemo(function () {
    return {
      isActive: function isActive(itemKey) {
        return activeMenuItems ? activeMenuItems.includes(itemKey) : false;
      },
      activate: function activate(itemKey) {
        onItemClick(itemKey);
      }
    };
  }, [activeMenuItems, onItemClick]);
  var subComponents = React__default.Children.map(children, function (child) {
    return child.type === Group ? child : null;
  });
  return jsx(MenuContext.Provider, {
    value: context,
    children: jsx(MenuLayout, {
      "data-testid": testId,
      isHorizontal: isHorizontal,
      children: subComponents.map(function (component) {
        return component;
      })
    })
  });
};
Menu.Group = Group;
Menu.Item = MenuItem;
Menu.Submenu = SubMenu;

var LayoutModeButton = function LayoutModeButton() {
  var editor = useAppSelector(selectEditor);
  var layoutMode = useLayoutMode();
  var _useState = useState(layoutMode),
    _useState2 = _slicedToArray(_useState, 2),
    activeMode = _useState2[0],
    setActiveMode = _useState2[1];
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var menuContext = {
    isActive: function isActive(mode) {
      return activeMode === mode;
    },
    activate: function activate(mode) {
      if (mode === activeMode) {
        return;
      }
      setActiveMode(mode);
      editor.events.selectMode.dispatch(mode);
      editor.events.layoutModeChange.dispatch(mode);
    }
  };
  useEffect(function () {
    setActiveMode(layoutMode);
  }, [layoutMode]);
  return jsx(MenuContext.Provider, {
    value: menuContext,
    children: jsxs(Menu.Submenu, {
      disabled: isSequenceEditInRNABuilderMode,
      testId: "layout-mode",
      vertical: true,
      needOpenByMenuItemClick: true,
      layoutModeButton: true,
      children: [jsx(Menu.Item, {
        itemId: "sequence-layout-mode",
        testId: "sequence-layout-mode",
        title: "Switch to sequence layout mode"
      }), jsx(Menu.Item, {
        itemId: "snake-layout-mode",
        testId: "snake-layout-mode",
        title: "Switch to snake layout mode"
      }), jsx(Menu.Item, {
        itemId: "flex-layout-mode",
        testId: "flex-layout-mode",
        title: "Switch to flex layout mode"
      })]
    })
  });
};

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var generateLabeledNodes = function generateLabeledNodes(selectionsFlatten) {
  var labeledNodes = [];
  var _iterator = _createForOfIteratorHelper(selectionsFlatten),
    _step;
  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var selection = _step.value;
      var node = selection.node,
        nodeIndexOverall = selection.nodeIndexOverall,
        isNucleosideConnectedAndSelectedWithPhosphate = selection.isNucleosideConnectedAndSelectedWithPhosphate,
        hasR1Connection = selection.hasR1Connection,
        twoStrandedNode = selection.twoStrandedNode;
      var hasAntisense = Boolean(twoStrandedNode === null || twoStrandedNode === void 0 ? void 0 : twoStrandedNode.antisenseNode);
      if (node instanceof Nucleotide) {
        var _node$rnaBase, _node$sugar, _node$phosphate;
        labeledNodes.push({
          type: Entities.Nucleotide,
          baseLabel: node === null || node === void 0 || (_node$rnaBase = node.rnaBase) === null || _node$rnaBase === void 0 ? void 0 : _node$rnaBase.label,
          sugarLabel: node === null || node === void 0 || (_node$sugar = node.sugar) === null || _node$sugar === void 0 ? void 0 : _node$sugar.label,
          phosphateLabel: node === null || node === void 0 || (_node$phosphate = node.phosphate) === null || _node$phosphate === void 0 ? void 0 : _node$phosphate.label,
          hasR1Connection: hasR1Connection,
          nodeIndexOverall: nodeIndexOverall,
          hasAntisense: hasAntisense
        });
      } else if (node instanceof Nucleoside) {
        var _node$rnaBase2, _node$sugar2;
        labeledNodes.push({
          type: Entities.Nucleoside,
          baseLabel: node === null || node === void 0 || (_node$rnaBase2 = node.rnaBase) === null || _node$rnaBase2 === void 0 ? void 0 : _node$rnaBase2.label,
          sugarLabel: node === null || node === void 0 || (_node$sugar2 = node.sugar) === null || _node$sugar2 === void 0 ? void 0 : _node$sugar2.label,
          isNucleosideConnectedAndSelectedWithPhosphate: isNucleosideConnectedAndSelectedWithPhosphate,
          hasR1Connection: hasR1Connection,
          nodeIndexOverall: nodeIndexOverall,
          hasAntisense: hasAntisense
        });
      } else if ((node === null || node === void 0 ? void 0 : node.monomer) instanceof Phosphate) {
        var _node$monomer;
        labeledNodes.push({
          type: Entities.Phosphate,
          phosphateLabel: node === null || node === void 0 || (_node$monomer = node.monomer) === null || _node$monomer === void 0 ? void 0 : _node$monomer.label,
          nodeIndexOverall: nodeIndexOverall,
          hasAntisense: hasAntisense
        });
      }
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
  return labeledNodes;
};
function isNucleotideNucleosideOrPhosphate(selection) {
  var node = selection.node;
  return node instanceof Nucleotide || node instanceof Nucleoside || (node === null || node === void 0 ? void 0 : node.monomer) instanceof Phosphate;
}
var generateNucleoelementTitle = function generateNucleoelementTitle(elements) {
  var tempTitle = '';
  var element = elements.length === 1 ? elements[0] : merge.apply(void 0, [{}].concat(_toConsumableArray(elements)));
  for (var _i = 0, _arr = ['sugarLabel', 'baseLabel', 'phosphateLabel']; _i < _arr.length; _i++) {
    var property = _arr[_i];
    var label = get$2(element, property, '');
    if (property === 'baseLabel') {
      tempTitle += "(".concat(label, ")");
    } else {
      tempTitle += label;
    }
  }
  return tempTitle;
};
var generateSequenceContextMenuProps = function generateSequenceContextMenuProps(selections) {
  if (!(selections !== null && selections !== void 0 && selections.length)) return;
  var selectionsFlatten = flatten(selections);
  var countOfSelections = selectionsFlatten.length;
  var countOfNucleoelements = getCountOfNucleoelements(selectionsFlatten);
  var title;
  var isSelectedAtLeastOneNucleoelement = false;
  var isSelectedOnlyNucleoelements = true;
  var hasAntisense = false;
  var isSequenceFirstsOnlyNucleoelementsSelected = true;
  var selectedSequenceLabeledNodes = generateLabeledNodes(selectionsFlatten);
  for (var i = 0; i < selectedSequenceLabeledNodes.length; i++) {
    var node = selectedSequenceLabeledNodes[i];
    var prevNode = selectedSequenceLabeledNodes[i - 1];
    var isNodeNucleotideOrNucleoside = node.type === Entities.Nucleotide || node.type === Entities.Nucleoside;
    var isNucleotideConnection = prevNode === null || prevNode === void 0 ? void 0 : prevNode.isNucleosideConnectedAndSelectedWithPhosphate;
    if (isNodeNucleotideOrNucleoside) {
      isSelectedAtLeastOneNucleoelement = true;
    }
    if (isNodeNucleotideOrNucleoside || isNucleotideConnection) {
      if (node.hasR1Connection) isSequenceFirstsOnlyNucleoelementsSelected = false;
    } else {
      isSequenceFirstsOnlyNucleoelementsSelected = false;
      isSelectedOnlyNucleoelements = false;
    }
    if (node.hasAntisense) {
      hasAntisense = true;
    }
  }
  if (countOfSelections > countOfNucleoelements) {
    if (!selectionsFlatten.every(isNucleotideNucleosideOrPhosphate)) {
      isSelectedOnlyNucleoelements = false;
    }
  }
  if (countOfSelections === 1 || countOfNucleoelements === 1 && isSelectedOnlyNucleoelements) {
    title = generateNucleoelementTitle(selectedSequenceLabeledNodes);
  } else {
    title = isSelectedOnlyNucleoelements ? "".concat(countOfNucleoelements, " nucleotides") : "".concat(countOfSelections, " elements");
  }
  return {
    title: title,
    selectedSequenceLabeledNodes: selectedSequenceLabeledNodes,
    isSelectedOnlyNucleoelements: isSelectedOnlyNucleoelements,
    isSelectedAtLeastOneNucleoelement: isSelectedAtLeastOneNucleoelement,
    isSequenceFirstsOnlyNucleoelementsSelected: isSequenceFirstsOnlyNucleoelementsSelected,
    hasAntisense: hasAntisense
  };
};
function isEstablishHydrogenBondDisabled() {
  var selections = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
  return selections.every(function (selectionRange) {
    return selectionRange.every(function (selection) {
      return isTwoStrandedNodeRestrictedForHydrogenBondCreation(selection.twoStrandedNode);
    });
  });
}
function isNodeContainHydrogenBonds(node) {
  return node === null || node === void 0 ? void 0 : node.monomers.some(function (monomer) {
    return monomer.hydrogenBonds.length !== 0;
  });
}

var getMonomersCode = function getMonomersCode(monomers) {
  return monomers.map(function (monomer) {
    return monomer.monomerItem.props.MonomerNaturalAnalogCode;
  }).sort().join('');
};
var isSenseBase = function isSenseBase(monomer) {
  var monomerItem = monomer.monomerItem;
  var isNaturalAnalogue = monomerItem.props.MonomerNaturalAnalogCode === 'A' || monomerItem.props.MonomerNaturalAnalogCode === 'C' || monomerItem.props.MonomerNaturalAnalogCode === 'G' || monomerItem.props.MonomerNaturalAnalogCode === 'T' || monomerItem.props.MonomerNaturalAnalogCode === 'U';
  if (isNaturalAnalogue) {
    return true;
  }
  if (!monomer.monomerItem.isAmbiguous) {
    return false;
  }
  if (monomer.subtype === KetAmbiguousMonomerTemplateSubType.MIXTURE) {
    return false;
  }
  var N1 = 'ACGT';
  var N2 = 'ACGU';
  var B1 = 'CGT';
  var B2 = 'CGU';
  var D1 = 'AGT';
  var D2 = 'AGU';
  var H1 = 'ACT';
  var H2 = 'ACU';
  var K1 = 'GT';
  var K2 = 'GU';
  var W1 = 'AT';
  var W2 = 'AU';
  var Y1 = 'CT';
  var Y2 = 'CU';
  var M = 'AC';
  var R = 'AG';
  var S = 'CG';
  var V = 'ACG';
  var ambigues = [N1, N2, B1, B2, D1, D2, H1, H2, K1, K2, W1, W2, Y1, Y2, M, R, S, V];
  var code = getMonomersCode(monomer.monomers);
  return ambigues.some(function (v) {
    return v === code;
  });
};
var isAntisenseCreationDisabled = function isAntisenseCreationDisabled(selectedMonomers) {
  return selectedMonomers === null || selectedMonomers === void 0 ? void 0 : selectedMonomers.some(function (selectedMonomer) {
    var rnaBaseForSugar = selectedMonomer instanceof Sugar && getRnaBaseFromSugar(selectedMonomer);
    return selectedMonomer instanceof RNABase && (selectedMonomer.hydrogenBonds.length > 0 || selectedMonomer.covalentBonds.length > 1) || isRnaBaseOrAmbiguousRnaBase(selectedMonomer) && !isSenseBase(selectedMonomer) || rnaBaseForSugar && (rnaBaseForSugar.hydrogenBonds.length > 0 || !isSenseBase(rnaBaseForSugar));
  });
};

var SequenceItemContextMenuNames;
(function (SequenceItemContextMenuNames) {
  SequenceItemContextMenuNames["title"] = "sequence_menu_title";
  SequenceItemContextMenuNames["createRnaAntisenseStrand"] = "create_rna_antisense_strand";
  SequenceItemContextMenuNames["createDnaAntisenseStrand"] = "create_dna_antisense_strand";
  SequenceItemContextMenuNames["modifyInRnaBuilder"] = "modify_in_rna_builder";
  SequenceItemContextMenuNames["establishHydrogenBond"] = "establish_hydrogen_bond";
  SequenceItemContextMenuNames["deleteHydrogenBond"] = "delete_hydrogen_bond";
  SequenceItemContextMenuNames["editSequence"] = "edit_sequence";
  SequenceItemContextMenuNames["startNewSequence"] = "start_new_sequence";
})(SequenceItemContextMenuNames || (SequenceItemContextMenuNames = {}));
var SequenceItemContextMenu = function SequenceItemContextMenu(_ref) {
  var _selections$;
  var selections = _ref.selections;
  var editor = useAppSelector(selectEditor);
  var dispatch = useAppDispatch();
  var menuProps = generateSequenceContextMenuProps(selections);
  var extractedBaseMonomers = (selections === null || selections === void 0 || (_selections$ = selections[0]) === null || _selections$ === void 0 ? void 0 : _selections$.flatMap(function (item) {
    var node = item.node;
    return node ? [node.sugar, node.rnaBase, node.phosphate, node.monomer] : [];
  }).filter(function (baseMonomer) {
    return baseMonomer !== undefined;
  })) || [];
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var isSequenceMode = useLayoutMode() === ModeTypes.sequence;
  var isAntisenseOptionHidden = function isAntisenseOptionHidden(_ref2) {
    var props = _ref2.props;
    return !(props !== null && props !== void 0 && props.sequenceItemRenderer) || !(extractedBaseMonomers !== null && extractedBaseMonomers !== void 0 && extractedBaseMonomers.some(function (selectedMonomer) {
      return selectedMonomer instanceof RNABase && getSugarFromRnaBase(selectedMonomer) || selectedMonomer instanceof Sugar && getRnaBaseFromSugar(selectedMonomer);
    }));
  };
  var menuItems = [{
    name: SequenceItemContextMenuNames.title,
    title: menuProps === null || menuProps === void 0 ? void 0 : menuProps.title,
    isMenuTitle: true,
    disabled: true,
    hidden: function hidden(_ref3) {
      var props = _ref3.props;
      return !(props !== null && props !== void 0 && props.sequenceItemRenderer) || !(menuProps !== null && menuProps !== void 0 && menuProps.isSelectedAtLeastOneNucleoelement);
    }
  }, {
    name: SequenceItemContextMenuNames.createRnaAntisenseStrand,
    title: 'Create RNA antisense strand',
    disabled: isAntisenseCreationDisabled(extractedBaseMonomers),
    hidden: isAntisenseOptionHidden
  }, {
    name: SequenceItemContextMenuNames.createDnaAntisenseStrand,
    title: 'Create DNA antisense strand',
    disabled: isAntisenseCreationDisabled(extractedBaseMonomers),
    hidden: isAntisenseOptionHidden
  }, {
    name: SequenceItemContextMenuNames.modifyInRnaBuilder,
    title: 'Modify in RNA Builder...',
    disabled: !(menuProps !== null && menuProps !== void 0 && menuProps.isSelectedOnlyNucleoelements) || menuProps.hasAntisense,
    hidden: function hidden(_ref4) {
      var props = _ref4.props;
      return !(props !== null && props !== void 0 && props.sequenceItemRenderer) || !(menuProps !== null && menuProps !== void 0 && menuProps.isSelectedAtLeastOneNucleoelement);
    }
  }, {
    name: SequenceItemContextMenuNames.editSequence,
    title: 'Edit sequence',
    disabled: false,
    hidden: function hidden(_ref5) {
      var props = _ref5.props;
      return !(props !== null && props !== void 0 && props.sequenceItemRenderer);
    }
  }, {
    name: SequenceItemContextMenuNames.startNewSequence,
    title: 'Start new sequence',
    disabled: false
  }, {
    name: SequenceItemContextMenuNames.establishHydrogenBond,
    title: 'Establish Hydrogen Bonds',
    disabled: function disabled(_ref6) {
      var _props$sequenceItemRe;
      var props = _ref6.props;
      return (selections === null || selections === void 0 ? void 0 : selections.length) === 0 ? isTwoStrandedNodeRestrictedForHydrogenBondCreation(props === null || props === void 0 || (_props$sequenceItemRe = props.sequenceItemRenderer) === null || _props$sequenceItemRe === void 0 ? void 0 : _props$sequenceItemRe.twoStrandedNode) : isEstablishHydrogenBondDisabled(selections);
    },
    hidden: function hidden(_ref7) {
      var props = _ref7.props;
      return !(props !== null && props !== void 0 && props.sequenceItemRenderer);
    }
  }, {
    name: SequenceItemContextMenuNames.deleteHydrogenBond,
    title: 'Delete Hydrogen Bonds',
    disabled: function disabled(_ref8) {
      var _props$sequenceItemRe2;
      var props = _ref8.props;
      return (selections === null || selections === void 0 ? void 0 : selections.length) === 0 ? !isNodeContainHydrogenBonds(props === null || props === void 0 || (_props$sequenceItemRe2 = props.sequenceItemRenderer) === null || _props$sequenceItemRe2 === void 0 ? void 0 : _props$sequenceItemRe2.node) : !(selections !== null && selections !== void 0 && selections.some(function (selectionRange) {
        return selectionRange.some(function (selection) {
          return isNodeContainHydrogenBonds(selection.node);
        });
      }));
    },
    hidden: function hidden(_ref9) {
      var props = _ref9.props;
      return !(props !== null && props !== void 0 && props.sequenceItemRenderer);
    }
  }];
  var handleMenuChange = function handleMenuChange(_ref10) {
    var _menuProps$selectedSe;
    var id = _ref10.id,
      props = _ref10.props;
    switch (id) {
      case SequenceItemContextMenuNames.modifyInRnaBuilder:
        editor.events.turnOnSequenceEditInRNABuilderMode.dispatch();
        dispatch(setSelectedTabIndex(LIBRARY_TAB_INDEX.RNA));
        dispatch(setIsEditMode(true));
        dispatch(setActivePreset({}));
        dispatch(setActiveRnaBuilderItem(null));
        if (menuProps !== null && menuProps !== void 0 && (_menuProps$selectedSe = menuProps.selectedSequenceLabeledNodes) !== null && _menuProps$selectedSe !== void 0 && _menuProps$selectedSe.length && menuProps !== null && menuProps !== void 0 && menuProps.title) {
          dispatch(setSequenceSelectionName(menuProps === null || menuProps === void 0 ? void 0 : menuProps.title));
          dispatch(setSequenceSelection(menuProps === null || menuProps === void 0 ? void 0 : menuProps.selectedSequenceLabeledNodes));
          dispatch(setIsSequenceFirstsOnlyNucleoelementsSelected(menuProps === null || menuProps === void 0 ? void 0 : menuProps.isSequenceFirstsOnlyNucleoelementsSelected));
        }
        break;
      case SequenceItemContextMenuNames.startNewSequence:
        editor.events.startNewSequence.dispatch(props.sequenceItemRenderer);
        break;
      case SequenceItemContextMenuNames.editSequence:
        editor.events.editSequence.dispatch(props.sequenceItemRenderer);
        break;
      case SequenceItemContextMenuNames.createRnaAntisenseStrand:
        editor.events.createAntisenseChain.dispatch(false);
        break;
      case SequenceItemContextMenuNames.createDnaAntisenseStrand:
        editor.events.createAntisenseChain.dispatch(true);
        break;
      case SequenceItemContextMenuNames.establishHydrogenBond:
        editor.events.establishHydrogenBond.dispatch(props.sequenceItemRenderer);
        break;
      case SequenceItemContextMenuNames.deleteHydrogenBond:
        {
          var _props$sequenceItemRe3;
          var sequenceViewModel = SequenceRenderer.sequenceViewModel;
          var monomerToChain = sequenceViewModel.chainsCollection.monomerToChain;
          var antisenseChainToSelectedNodeMap = new Map();
          var selectedTwoStrandedNodes = selections !== null && selections !== void 0 && selections.length ? selections.reduce(function (acc, selectionRange) {
            return [].concat(_toConsumableArray(acc), _toConsumableArray(selectionRange));
          }, []).map(function (nodeSelection) {
            return nodeSelection.twoStrandedNode;
          }) : [(_props$sequenceItemRe3 = props.sequenceItemRenderer) === null || _props$sequenceItemRe3 === void 0 ? void 0 : _props$sequenceItemRe3.twoStrandedNode];
          selectedTwoStrandedNodes.forEach(function (selectedTwoStrandedNode) {
            if (selectedTwoStrandedNode.antisenseChain && selectedTwoStrandedNode.antisenseNode && !(selectedTwoStrandedNode.antisenseNode instanceof EmptySequenceNode || selectedTwoStrandedNode.antisenseNode instanceof BackBoneSequenceNode)) {
              if (!antisenseChainToSelectedNodeMap.has(selectedTwoStrandedNode.antisenseChain)) {
                antisenseChainToSelectedNodeMap.set(selectedTwoStrandedNode.antisenseChain, new Set());
              }
              var antisenseChainSelectedNodes = antisenseChainToSelectedNodeMap.get(selectedTwoStrandedNode.antisenseChain);
              if (!antisenseChainSelectedNodes) {
                return;
              }
              antisenseChainSelectedNodes.add(selectedTwoStrandedNode);
            }
          });
          var isGoingToDeleteAllHydrogenBondsForAnyChain = false;
          antisenseChainToSelectedNodeMap.forEach(function (selectedTwoStrandedNodes, chain) {
            var firstSelectedTwoStrandedNode = _toConsumableArray(selectedTwoStrandedNodes.values())[0];
            var senseChain = firstSelectedTwoStrandedNode.chain;
            var selectedAntisenseNodes = new Set(_toConsumableArray(selectedTwoStrandedNodes.values()).map(function (node) {
              return node.antisenseNode;
            }));
            var hasMoreHydrogenConnectionsThanSelected = chain.nodes.some(function (node) {
              return !selectedAntisenseNodes.has(node) && node.monomers.some(function (monomer) {
                return monomer.hydrogenBonds.some(function (hydrogenBond) {
                  var anotherMonomer = hydrogenBond.getAnotherMonomer(monomer);
                  var anotherChain = anotherMonomer && monomerToChain.get(anotherMonomer);
                  return anotherChain === senseChain;
                });
              });
            });
            if (!hasMoreHydrogenConnectionsThanSelected) {
              isGoingToDeleteAllHydrogenBondsForAnyChain = true;
            }
          });
          if (isGoingToDeleteAllHydrogenBondsForAnyChain) {
            editor.events.openConfirmationDialog.dispatch({
              title: 'Deletion of all Hydrogen Bonds',
              confirmationText: 'Deleting all hydrogen bonds will cause the separation of two chains. Do you wish to proceed?',
              onConfirm: function onConfirm() {
                editor.events.deleteHydrogenBond.dispatch(props.sequenceItemRenderer);
              }
            });
          } else {
            editor.events.deleteHydrogenBond.dispatch(props.sequenceItemRenderer);
          }
          break;
        }
    }
  };
  var ketcherEditorRootElement = document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR);
  return ketcherEditorRootElement && isSequenceMode && !isSequenceEditInRNABuilderMode ? createPortal(jsx(ContextMenu, {
    id: CONTEXT_MENU_ID.FOR_SEQUENCE,
    handleMenuChange: handleMenuChange,
    menuItems: menuItems
  }), ketcherEditorRootElement) : null;
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$4() { 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)."; }
var Container$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1amohl43"
} : {
  target: "e1amohl43",
  label: "Container"
})("display:flex;flex-direction:column;align-items:start;gap:8px;background:", function (props) {
  return props.theme.ketcher.color.background.primary;
}, ";border:", function (props) {
  return props.theme.ketcher.border.regular;
}, ";border-radius:", function (props) {
  return props.theme.ketcher.border.radius.regular;
}, ";box-shadow:", function (props) {
  return props.theme.ketcher.shadow.regular;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQm9DIiwiZmlsZSI6Ik1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFN0cnVjdFJlbmRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeX07XG4gIGJvcmRlcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJlZ3VsYXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXJ9O1xuICBib3gtc2hhZG93OiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG5gO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQucCBgXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZWFlZTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZFN0cnVjdFJlbmRlciA9IHN0eWxlZChTdHJ1Y3RSZW5kZXIpIGBcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA4cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgSW5mb0Jsb2NrID0gc3R5bGVkLmRpdiBgXG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDhweDtcbiAgcGFkZGluZzogMCA4cHggNHB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9ub21lclByZXZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */"));
var MonomerName = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1amohl42"
} : {
  target: "e1amohl42",
  label: "MonomerName"
})("width:calc(100% - 16px);padding:8px;color:", function (props) {
  return props.theme.ketcher.color.text.primary;
}, ";background-color:#cceaee;font-size:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";font-weight:700;word-break:break-all;text-align:left;margin:0;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQm9DIiwiZmlsZSI6Ik1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFN0cnVjdFJlbmRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeX07XG4gIGJvcmRlcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJlZ3VsYXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXJ9O1xuICBib3gtc2hhZG93OiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG5gO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQucCBgXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZWFlZTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZFN0cnVjdFJlbmRlciA9IHN0eWxlZChTdHJ1Y3RSZW5kZXIpIGBcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA4cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgSW5mb0Jsb2NrID0gc3R5bGVkLmRpdiBgXG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDhweDtcbiAgcGFkZGluZzogMCA4cHggNHB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9ub21lclByZXZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */"));
var StyledStructRender = _styled(StructRender, process.env.NODE_ENV === "production" ? {
  target: "e1amohl41"
} : {
  target: "e1amohl41",
  label: "StyledStructRender"
})(process.env.NODE_ENV === "production" ? {
  name: "156nqlv",
  styles: "height:100%;width:100%;padding:0 8px"
} : {
  name: "156nqlv",
  styles: "height:100%;width:100%;padding:0 8px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQ3VEIiwiZmlsZSI6Ik1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFN0cnVjdFJlbmRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeX07XG4gIGJvcmRlcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJlZ3VsYXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXJ9O1xuICBib3gtc2hhZG93OiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG5gO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQucCBgXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZWFlZTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZFN0cnVjdFJlbmRlciA9IHN0eWxlZChTdHJ1Y3RSZW5kZXIpIGBcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA4cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgSW5mb0Jsb2NrID0gc3R5bGVkLmRpdiBgXG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDhweDtcbiAgcGFkZGluZzogMCA4cHggNHB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9ub21lclByZXZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$4
});
var InfoBlock = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1amohl40"
} : {
  target: "e1amohl40",
  label: "InfoBlock"
})(process.env.NODE_ENV === "production" ? {
  name: "10sp49k",
  styles: "width:100%;display:flex;gap:8px;padding:0 8px 4px"
} : {
  name: "10sp49k",
  styles: "width:100%;display:flex;gap:8px;padding:0 8px 4px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ29DIiwiZmlsZSI6Ik1vbm9tZXJQcmV2aWV3LnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IFN0cnVjdFJlbmRlciB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5leHBvcnQgY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeX07XG4gIGJvcmRlcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJlZ3VsYXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXJ9O1xuICBib3gtc2hhZG93OiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG5gO1xyXG5leHBvcnQgY29uc3QgTW9ub21lck5hbWUgPSBzdHlsZWQucCBgXG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5wcmltYXJ5fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjZWFlZTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZFN0cnVjdFJlbmRlciA9IHN0eWxlZChTdHJ1Y3RSZW5kZXIpIGBcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA4cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgSW5mb0Jsb2NrID0gc3R5bGVkLmRpdiBgXG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDhweDtcbiAgcGFkZGluZzogMCA4cHggNHB4O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9TW9ub21lclByZXZpZXcuc3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$4
});

var useAttachmentPoints = function useAttachmentPoints(_ref) {
  var monomerCaps = _ref.monomerCaps,
    attachmentPointsToBonds = _ref.attachmentPointsToBonds;
  return useMemo(function () {
    var preparedAttachmentPointsData = [];
    var connectedAttachmentPoints = [];
    if (!monomerCaps) {
      return {
        preparedAttachmentPointsData: preparedAttachmentPointsData,
        connectedAttachmentPoints: connectedAttachmentPoints
      };
    }
    Object.entries(monomerCaps).forEach(function (_ref2) {
      var _ref3 = _slicedToArray(_ref2, 2),
        id = _ref3[0],
        label = _ref3[1];
      var connected = Boolean(attachmentPointsToBonds === null || attachmentPointsToBonds === void 0 ? void 0 : attachmentPointsToBonds[id]);
      if (connected) {
        connectedAttachmentPoints.push(id);
      }
      var preparedData = {
        id: id,
        label: hydrateLeavingGroup(label),
        connected: connected
      };
      preparedAttachmentPointsData.push(preparedData);
    });
    return {
      preparedAttachmentPointsData: preparedAttachmentPointsData,
      connectedAttachmentPoints: connectedAttachmentPoints
    };
  }, [monomerCaps, attachmentPointsToBonds]);
};

var useIDTAliasesTextForMonomer = function useIDTAliasesTextForMonomer(_ref) {
  var idtAliases = _ref.idtAliases,
    attachmentPointsToBonds = _ref.attachmentPointsToBonds,
    monomerClass = _ref.monomerClass;
  return useMemo(function () {
    if (!idtAliases) {
      return null;
    }
    var base = idtAliases.base,
      modifications = idtAliases.modifications;
    if (attachmentPointsToBonds) {
      if (!modifications) {
        return base;
      }
      var endpoint5 = modifications.endpoint5,
        internal = modifications.internal,
        endpoint3 = modifications.endpoint3;
      var R1 = attachmentPointsToBonds.R1,
        R2 = attachmentPointsToBonds.R2;
      if (monomerClass === KetMonomerClass.Phosphate) {
        if (R1 && !(R1 instanceof MonomerToAtomBond) && R1.firstMonomer instanceof Sugar) {
          return null;
        }
      }
      if (R1 !== null && R2 === null) {
        return endpoint3 !== null && endpoint3 !== void 0 ? endpoint3 : internal;
      } else if (R1 === null && R2 !== null) {
        return endpoint5 !== null && endpoint5 !== void 0 ? endpoint5 : internal;
      } else if (R1 !== null && R2 !== null) {
        var _ref2;
        return (_ref2 = internal !== null && internal !== void 0 ? internal : endpoint5) !== null && _ref2 !== void 0 ? _ref2 : endpoint3;
      } else {
        var _ref3;
        return (_ref3 = endpoint5 !== null && endpoint5 !== void 0 ? endpoint5 : internal) !== null && _ref3 !== void 0 ? _ref3 : endpoint3;
      }
    }
    if (!modifications) {
      return base;
    }
    var allModificationsHaveSameBase = Object.values(modifications).every(function (modification) {
      return modification.includes(base);
    });
    if (allModificationsHaveSameBase) {
      return base;
    }
    var baseToPositionsMap = {};
    Object.values(modifications).forEach(function (modification) {
      var _ref4 = [modification.charAt(0), modification.slice(1)],
        position = _ref4[0],
        base = _ref4[1];
      baseToPositionsMap[base] = baseToPositionsMap[base] ? [].concat(_toConsumableArray(baseToPositionsMap[base]), [position]) : [position];
    });
    return Object.entries(baseToPositionsMap).map(function (_ref5) {
      var _ref6 = _slicedToArray(_ref5, 2),
        base = _ref6[0],
        positions = _ref6[1];
      return "(".concat(positions.join(', '), ")").concat(base);
    }).join(', ');
  }, [idtAliases, attachmentPointsToBonds, monomerClass]);
};

function _EMOTION_STRINGIFIED_CSS_ERROR__$3() { 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)."; }
var AttachmentPointsList = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e112ss7f3"
} : {
  target: "e112ss7f3",
  label: "AttachmentPointsList"
})(process.env.NODE_ENV === "production" ? {
  name: "1m2mukt",
  styles: "flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;line-height:14px"
} : {
  name: "1m2mukt",
  styles: "flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;line-height:14px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUMrQyIsImZpbGUiOiJBdHRhY2htZW50UG9pbnRzLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludHNMaXN0ID0gc3R5bGVkLmRpdiBgXG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgY29ubmVjdGVkIH0pID0+IGNvbm5lY3RlZCA/ICcjRTFFNUVBJyA6ICd0cmFuc3BhcmVudCd9O1xuICBwYWRkaW5nOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiAoY29ubmVjdGVkID8gJzRweCcgOiAnMCcpfTtcbiAgY29sb3I6ICR7KHsgY29ubmVjdGVkIH0pID0+IChjb25uZWN0ZWQgPyAnIzhBOEI4RScgOiAnaW5oZXJpdCcpfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRJRCA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbmA7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRMYWJlbCA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLmpzLm1hcCJdfQ== */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
});
var AttachmentPoint$1 = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e112ss7f2"
} : {
  target: "e112ss7f2",
  label: "AttachmentPoint"
})("display:flex;align-items:center;gap:2px;border-radius:4px;background-color:", function (_ref) {
  var connected = _ref.connected;
  return connected ? '#E1E5EA' : 'transparent';
}, ";padding:", function (_ref2) {
  var connected = _ref2.connected;
  return connected ? '4px' : '0';
}, ";color:", function (_ref3) {
  var connected = _ref3.connected;
  return connected ? '#8A8B8E' : 'inherit';
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVUwQyIsImZpbGUiOiJBdHRhY2htZW50UG9pbnRzLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludHNMaXN0ID0gc3R5bGVkLmRpdiBgXG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgY29ubmVjdGVkIH0pID0+IGNvbm5lY3RlZCA/ICcjRTFFNUVBJyA6ICd0cmFuc3BhcmVudCd9O1xuICBwYWRkaW5nOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiAoY29ubmVjdGVkID8gJzRweCcgOiAnMCcpfTtcbiAgY29sb3I6ICR7KHsgY29ubmVjdGVkIH0pID0+IChjb25uZWN0ZWQgPyAnIzhBOEI4RScgOiAnaW5oZXJpdCcpfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRJRCA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbmA7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRMYWJlbCA9IHN0eWxlZC5zcGFuIGBcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLmpzLm1hcCJdfQ== */"));
var AttachmentPointID = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e112ss7f1"
} : {
  target: "e112ss7f1",
  label: "AttachmentPointID"
})(process.env.NODE_ENV === "production" ? {
  name: "f3vz0n",
  styles: "font-weight:500"
} : {
  name: "f3vz0n",
  styles: "font-weight:500",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1CNkMiLCJmaWxlIjoiQXR0YWNobWVudFBvaW50cy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRzTGlzdCA9IHN0eWxlZC5kaXYgYFxuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogOHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludCA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiBjb25uZWN0ZWQgPyAnI0UxRTVFQScgOiAndHJhbnNwYXJlbnQnfTtcbiAgcGFkZGluZzogJHsoeyBjb25uZWN0ZWQgfSkgPT4gKGNvbm5lY3RlZCA/ICc0cHgnIDogJzAnKX07XG4gIGNvbG9yOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiAoY29ubmVjdGVkID8gJyM4QThCOEUnIDogJ2luaGVyaXQnKX07XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50SUQgPSBzdHlsZWQuc3BhbiBgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50TGFiZWwgPSBzdHlsZWQuc3BhbiBgXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1BdHRhY2htZW50UG9pbnRzLnN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
});
var AttachmentPointLabel = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e112ss7f0"
} : {
  target: "e112ss7f0",
  label: "AttachmentPointLabel"
})(process.env.NODE_ENV === "production" ? {
  name: "16ceglb",
  styles: "font-weight:600"
} : {
  name: "16ceglb",
  styles: "font-weight:600",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCZ0QiLCJmaWxlIjoiQXR0YWNobWVudFBvaW50cy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmV4cG9ydCBjb25zdCBBdHRhY2htZW50UG9pbnRzTGlzdCA9IHN0eWxlZC5kaXYgYFxuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogOHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludCA9IHN0eWxlZC5kaXYgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiBjb25uZWN0ZWQgPyAnI0UxRTVFQScgOiAndHJhbnNwYXJlbnQnfTtcbiAgcGFkZGluZzogJHsoeyBjb25uZWN0ZWQgfSkgPT4gKGNvbm5lY3RlZCA/ICc0cHgnIDogJzAnKX07XG4gIGNvbG9yOiAkeyh7IGNvbm5lY3RlZCB9KSA9PiAoY29ubmVjdGVkID8gJyM4QThCOEUnIDogJ2luaGVyaXQnKX07XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50SUQgPSBzdHlsZWQuc3BhbiBgXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5gO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50TGFiZWwgPSBzdHlsZWQuc3BhbiBgXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1BdHRhY2htZW50UG9pbnRzLnN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
});

var AttachmentPoints = memo(function (_ref) {
  var preparedAttachmentPointsData = _ref.preparedAttachmentPointsData;
  if (!preparedAttachmentPointsData.length) {
    return null;
  }
  return jsx(AttachmentPointsList, {
    children: preparedAttachmentPointsData.map(function (_ref2) {
      var id = _ref2.id,
        connected = _ref2.connected,
        label = _ref2.label;
      return jsxs(AttachmentPoint$1, {
        connected: connected,
        children: [jsxs(AttachmentPointID, {
          children: [id, !connected && ':']
        }), !connected && jsx(AttachmentPointLabel, {
          children: label
        })]
      }, id);
    })
  });
});

function _EMOTION_STRINGIFIED_CSS_ERROR__$2() { 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)."; }
var IDTAliasesContainer = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1v1msbx3"
} : {
  target: "e1v1msbx3",
  label: "IDTAliasesContainer"
})("max-width:", function (_ref) {
  var preset = _ref.preset;
  return preset ? '100%' : '50%';
}, ";display:flex;align-items:center;font-size:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";font-weight:500;line-height:normal;color:", function (props) {
  return props.theme.ketcher.color.text.lightgrey;
}, ";padding-left:", function (_ref2) {
  var preset = _ref2.preset;
  return preset ? '0' : '8px';
}, ";border-left:", function (_ref3) {
  var preset = _ref3.preset;
  return preset ? 'none' : '1px solid #D9DCEA';
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIklEVEFsaWFzZXMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdCK0MiLCJmaWxlIjoiSURUQWxpYXNlcy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgSURUQWxpYXNlc0NvbnRhaW5lciA9IHN0eWxlZC5zcGFuIGBcbiAgbWF4LXdpZHRoOiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJzEwMCUnIDogJzUwJScpfTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LmxpZ2h0Z3JleX07XG4gIHBhZGRpbmctbGVmdDogJHsoeyBwcmVzZXQgfSkgPT4gKHByZXNldCA/ICcwJyA6ICc4cHgnKX07XG4gIGJvcmRlci1sZWZ0OiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJ25vbmUnIDogJzFweCBzb2xpZCAjRDlEQ0VBJyl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNUZXh0ID0gc3R5bGVkLnAgYFxuICBtYXJnaW46IDA7XG5gO1xyXG5leHBvcnQgY29uc3QgSURUVGl0bGUgPSBzdHlsZWQuc3BhbiBgXG4gIGNvbG9yOiAjN2M3YzdjO1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNMaXN0ID0gc3R5bGVkLnNwYW4gYFxuICBjb2xvcjogIzU4NTg1ODtcbiAgdGV4dC13cmFwOiB3cmFwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SURUQWxpYXNlcy5zdHlsZXMuanMubWFwIl19 */"));
var IDTAliasesText = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1v1msbx2"
} : {
  target: "e1v1msbx2",
  label: "IDTAliasesText"
})(process.env.NODE_ENV === "production" ? {
  name: "ti75j2",
  styles: "margin:0"
} : {
  name: "ti75j2",
  styles: "margin:0",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIklEVEFsaWFzZXMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJCdUMiLCJmaWxlIjoiSURUQWxpYXNlcy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgSURUQWxpYXNlc0NvbnRhaW5lciA9IHN0eWxlZC5zcGFuIGBcbiAgbWF4LXdpZHRoOiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJzEwMCUnIDogJzUwJScpfTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LmxpZ2h0Z3JleX07XG4gIHBhZGRpbmctbGVmdDogJHsoeyBwcmVzZXQgfSkgPT4gKHByZXNldCA/ICcwJyA6ICc4cHgnKX07XG4gIGJvcmRlci1sZWZ0OiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJ25vbmUnIDogJzFweCBzb2xpZCAjRDlEQ0VBJyl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNUZXh0ID0gc3R5bGVkLnAgYFxuICBtYXJnaW46IDA7XG5gO1xyXG5leHBvcnQgY29uc3QgSURUVGl0bGUgPSBzdHlsZWQuc3BhbiBgXG4gIGNvbG9yOiAjN2M3YzdjO1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNMaXN0ID0gc3R5bGVkLnNwYW4gYFxuICBjb2xvcjogIzU4NTg1ODtcbiAgdGV4dC13cmFwOiB3cmFwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SURUQWxpYXNlcy5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$2
});
var IDTTitle = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1v1msbx1"
} : {
  target: "e1v1msbx1",
  label: "IDTTitle"
})(process.env.NODE_ENV === "production" ? {
  name: "1b7n4tc",
  styles: "color:#7c7c7c"
} : {
  name: "1b7n4tc",
  styles: "color:#7c7c7c",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIklEVEFsaWFzZXMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThCb0MiLCJmaWxlIjoiSURUQWxpYXNlcy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgSURUQWxpYXNlc0NvbnRhaW5lciA9IHN0eWxlZC5zcGFuIGBcbiAgbWF4LXdpZHRoOiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJzEwMCUnIDogJzUwJScpfTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LmxpZ2h0Z3JleX07XG4gIHBhZGRpbmctbGVmdDogJHsoeyBwcmVzZXQgfSkgPT4gKHByZXNldCA/ICcwJyA6ICc4cHgnKX07XG4gIGJvcmRlci1sZWZ0OiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJ25vbmUnIDogJzFweCBzb2xpZCAjRDlEQ0VBJyl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNUZXh0ID0gc3R5bGVkLnAgYFxuICBtYXJnaW46IDA7XG5gO1xyXG5leHBvcnQgY29uc3QgSURUVGl0bGUgPSBzdHlsZWQuc3BhbiBgXG4gIGNvbG9yOiAjN2M3YzdjO1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNMaXN0ID0gc3R5bGVkLnNwYW4gYFxuICBjb2xvcjogIzU4NTg1ODtcbiAgdGV4dC13cmFwOiB3cmFwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SURUQWxpYXNlcy5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$2
});
var IDTAliasesList = _styled("span", process.env.NODE_ENV === "production" ? {
  target: "e1v1msbx0"
} : {
  target: "e1v1msbx0",
  label: "IDTAliasesList"
})(process.env.NODE_ENV === "production" ? {
  name: "dtvj5",
  styles: "color:#585858;text-wrap:wrap"
} : {
  name: "dtvj5",
  styles: "color:#585858;text-wrap:wrap",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIklEVEFsaWFzZXMuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlDMEMiLCJmaWxlIjoiSURUQWxpYXNlcy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgSURUQWxpYXNlc0NvbnRhaW5lciA9IHN0eWxlZC5zcGFuIGBcbiAgbWF4LXdpZHRoOiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJzEwMCUnIDogJzUwJScpfTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LmxpZ2h0Z3JleX07XG4gIHBhZGRpbmctbGVmdDogJHsoeyBwcmVzZXQgfSkgPT4gKHByZXNldCA/ICcwJyA6ICc4cHgnKX07XG4gIGJvcmRlci1sZWZ0OiAkeyh7IHByZXNldCB9KSA9PiAocHJlc2V0ID8gJ25vbmUnIDogJzFweCBzb2xpZCAjRDlEQ0VBJyl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNUZXh0ID0gc3R5bGVkLnAgYFxuICBtYXJnaW46IDA7XG5gO1xyXG5leHBvcnQgY29uc3QgSURUVGl0bGUgPSBzdHlsZWQuc3BhbiBgXG4gIGNvbG9yOiAjN2M3YzdjO1xuYDtcclxuZXhwb3J0IGNvbnN0IElEVEFsaWFzZXNMaXN0ID0gc3R5bGVkLnNwYW4gYFxuICBjb2xvcjogIzU4NTg1ODtcbiAgdGV4dC13cmFwOiB3cmFwO1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9SURUQWxpYXNlcy5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$2
});

var IDTAliases = memo(function (_ref) {
  var idtAliasesText = _ref.idtAliasesText,
    preset = _ref.preset;
  return jsx(IDTAliasesContainer, {
    preset: preset,
    children: jsxs(IDTAliasesText, {
      children: [jsx(IDTTitle, {
        children: "IDT: "
      }), jsx(IDTAliasesList, {
        children: idtAliasesText
      })]
    })
  });
});

var MonomerPreview = function MonomerPreview(_ref) {
  var _monomer$struct;
  var className = _ref.className;
  var preview = useAppSelector(selectShowPreview);
  var monomer = preview.monomer,
    attachmentPointsToBonds = preview.attachmentPointsToBonds;
  var idtAliases = monomer === null || monomer === void 0 ? void 0 : monomer.props.idtAliases;
  var _useAttachmentPoints = useAttachmentPoints({
      monomerCaps: monomer === null || monomer === void 0 ? void 0 : monomer.props.MonomerCaps,
      attachmentPointsToBonds: attachmentPointsToBonds
    }),
    preparedAttachmentPointsData = _useAttachmentPoints.preparedAttachmentPointsData,
    connectedAttachmentPoints = _useAttachmentPoints.connectedAttachmentPoints;
  var idtAliasesText = useIDTAliasesTextForMonomer({
    idtAliases: idtAliases,
    attachmentPointsToBonds: attachmentPointsToBonds,
    monomerClass: monomer === null || monomer === void 0 ? void 0 : monomer.props.MonomerClass
  });
  if (!monomer) {
    return null;
  }
  var isUnresolved = monomer.props.unresolved;
  var monomerName = isUnresolved ? monomer.label : (_monomer$struct = monomer.struct) === null || _monomer$struct === void 0 ? void 0 : _monomer$struct.name;
  return (monomer.struct || isUnresolved) && jsxs(Container$1, {
    className: className,
    "data-testid": "polymer-library-preview",
    children: [monomerName && jsx(MonomerName, {
      children: monomerName
    }), isUnresolved ? jsx(UnresolvedMonomerPreview, {}) : jsx(StyledStructRender, {
      struct: monomer.struct,
      options: {
        connectedMonomerAttachmentPoints: connectedAttachmentPoints,
        usageInMacromolecule: UsageInMacromolecule.MonomerPreview,
        labelInPreview: true,
        needCache: false
      }
    }), jsxs(InfoBlock, {
      children: [jsx(AttachmentPoints, {
        preparedAttachmentPointsData: preparedAttachmentPointsData
      }), idtAliasesText && jsx(IDTAliases, {
        idtAliasesText: idtAliasesText
      })]
    })]
  });
};
var StyledPreview$1 = _styled(MonomerPreview, process.env.NODE_ENV === "production" ? {
  target: "e86yc5p0"
} : {
  target: "e86yc5p0",
  label: "StyledPreview"
})("width:", preview.width + 'px', ";height:", preview.height + 'px', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1vbm9tZXJQcmV2aWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRDZDIiwiZmlsZSI6Ik1vbm9tZXJQcmV2aWV3LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvcHlyaWdodCAyMDIxIEVQQU0gU3lzdGVtc1xyXG4gKlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xyXG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXHJcbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4gKlxyXG4gKiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcclxuICpcclxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxyXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXHJcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxyXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb250YWluZXIsIEluZm9CbG9jaywgTW9ub21lck5hbWUsIFN0eWxlZFN0cnVjdFJlbmRlciwgfSBmcm9tICcuL01vbm9tZXJQcmV2aWV3LnN0eWxlcyc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgc2VsZWN0U2hvd1ByZXZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCB7IHVzZUFwcFNlbGVjdG9yIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IHVzZUF0dGFjaG1lbnRQb2ludHMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBdHRhY2htZW50UG9pbnRzJztcclxuaW1wb3J0IHVzZUlEVEFsaWFzZXNUZXh0Rm9yTW9ub21lciBmcm9tICcuLi8uLi9ob29rcy91c2VJRFRBbGlhc2VzVGV4dEZvck1vbm9tZXInO1xyXG5pbXBvcnQgVW5yZXNvbHZlZE1vbm9tZXJQcmV2aWV3IGZyb20gJy4uL1VucmVzb2x2ZWRNb25vbWVyUHJldmlldy9VbnJlc29sdmVkTW9ub21lclByZXZpZXcnO1xyXG5pbXBvcnQgQXR0YWNobWVudFBvaW50cyBmcm9tICcuLi9BdHRhY2htZW50UG9pbnRzL0F0dGFjaG1lbnRQb2ludHMnO1xyXG5pbXBvcnQgSURUQWxpYXNlcyBmcm9tICcuLi9JRFRBbGlhc2VzL0lEVEFsaWFzZXMnO1xyXG5pbXBvcnQgeyBVc2FnZUluTWFjcm9tb2xlY3VsZSB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCB7IHByZXZpZXcgfSBmcm9tICdrZXRjaGVyLXJlYWN0JztcclxuY29uc3QgTW9ub21lclByZXZpZXcgPSAoeyBjbGFzc05hbWUgfSkgPT4ge1xyXG4gICAgY29uc3QgcHJldmlldyA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdFNob3dQcmV2aWV3KTtcclxuICAgIGNvbnN0IHsgbW9ub21lciwgYXR0YWNobWVudFBvaW50c1RvQm9uZHMgfSA9IHByZXZpZXc7XHJcbiAgICBjb25zdCBpZHRBbGlhc2VzID0gbW9ub21lcj8ucHJvcHMuaWR0QWxpYXNlcztcclxuICAgIGNvbnN0IHsgcHJlcGFyZWRBdHRhY2htZW50UG9pbnRzRGF0YSwgY29ubmVjdGVkQXR0YWNobWVudFBvaW50cyB9ID0gdXNlQXR0YWNobWVudFBvaW50cyh7XHJcbiAgICAgICAgbW9ub21lckNhcHM6IG1vbm9tZXI/LnByb3BzLk1vbm9tZXJDYXBzLFxyXG4gICAgICAgIGF0dGFjaG1lbnRQb2ludHNUb0JvbmRzLFxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBpZHRBbGlhc2VzVGV4dCA9IHVzZUlEVEFsaWFzZXNUZXh0Rm9yTW9ub21lcih7XHJcbiAgICAgICAgaWR0QWxpYXNlcyxcclxuICAgICAgICBhdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgICAgICBtb25vbWVyQ2xhc3M6IG1vbm9tZXI/LnByb3BzLk1vbm9tZXJDbGFzcyxcclxuICAgIH0pO1xyXG4gICAgaWYgKCFtb25vbWVyKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBjb25zdCBpc1VucmVzb2x2ZWQgPSBtb25vbWVyLnByb3BzLnVucmVzb2x2ZWQ7XHJcbiAgICBjb25zdCBtb25vbWVyTmFtZSA9IGlzVW5yZXNvbHZlZCA/IG1vbm9tZXIubGFiZWwgOiBtb25vbWVyLnN0cnVjdD8ubmFtZTtcclxuICAgIHJldHVybiAoKG1vbm9tZXIuc3RydWN0IHx8IGlzVW5yZXNvbHZlZCkgJiYgKF9qc3hzKENvbnRhaW5lciwgeyBjbGFzc05hbWU6IGNsYXNzTmFtZSwgXCJkYXRhLXRlc3RpZFwiOiBcInBvbHltZXItbGlicmFyeS1wcmV2aWV3XCIsIGNoaWxkcmVuOiBbbW9ub21lck5hbWUgJiYgX2pzeChNb25vbWVyTmFtZSwgeyBjaGlsZHJlbjogbW9ub21lck5hbWUgfSksIGlzVW5yZXNvbHZlZCA/IChfanN4KFVucmVzb2x2ZWRNb25vbWVyUHJldmlldywge30pKSA6IChfanN4KFN0eWxlZFN0cnVjdFJlbmRlciwgeyBzdHJ1Y3Q6IG1vbm9tZXIuc3RydWN0LCBvcHRpb25zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29ubmVjdGVkTW9ub21lckF0dGFjaG1lbnRQb2ludHM6IGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHMsXHJcbiAgICAgICAgICAgICAgICAgICAgdXNhZ2VJbk1hY3JvbW9sZWN1bGU6IFVzYWdlSW5NYWNyb21vbGVjdWxlLk1vbm9tZXJQcmV2aWV3LFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsSW5QcmV2aWV3OiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgIG5lZWRDYWNoZTogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICB9IH0pKSwgX2pzeHMoSW5mb0Jsb2NrLCB7IGNoaWxkcmVuOiBbX2pzeChBdHRhY2htZW50UG9pbnRzLCB7IHByZXBhcmVkQXR0YWNobWVudFBvaW50c0RhdGE6IHByZXBhcmVkQXR0YWNobWVudFBvaW50c0RhdGEgfSksIGlkdEFsaWFzZXNUZXh0ICYmIF9qc3goSURUQWxpYXNlcywgeyBpZHRBbGlhc2VzVGV4dDogaWR0QWxpYXNlc1RleHQgfSldIH0pXSB9KSkpO1xyXG59O1xyXG5jb25zdCBTdHlsZWRQcmV2aWV3ID0gc3R5bGVkKE1vbm9tZXJQcmV2aWV3KSBgXG4gIHdpZHRoOiAke3ByZXZpZXcud2lkdGggKyAncHgnfTtcbiAgaGVpZ2h0OiAke3ByZXZpZXcuaGVpZ2h0ICsgJ3B4J307XG5gO1xyXG5leHBvcnQgZGVmYXVsdCBTdHlsZWRQcmV2aWV3O1xyXG5leHBvcnQgeyBNb25vbWVyUHJldmlldyB9O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Nb25vbWVyUHJldmlldy5qcy5tYXAiXX0= */"));

function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { 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)."; }
var PresetContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ec5fs975"
} : {
  target: "ec5fs975",
  label: "PresetContainer"
})("display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px;background:", function (props) {
  return props.theme.ketcher.color.background.primary;
}, ";border:", function (props) {
  return props.theme.ketcher.border.regular;
}, ";border-radius:", function (props) {
  return props.theme.ketcher.border.radius.regular;
}, ";box-shadow:", function (props) {
  return props.theme.ketcher.shadow.regular;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCMEMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));
var PresetMonomerRow = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ec5fs974"
} : {
  target: "ec5fs974",
  label: "PresetMonomerRow"
})(process.env.NODE_ENV === "production" ? {
  name: "s5xdrg",
  styles: "display:flex;align-items:center"
} : {
  name: "s5xdrg",
  styles: "display:flex;align-items:center",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCMkMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
});
var PresetMonomerLabel = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ec5fs973"
} : {
  target: "ec5fs973",
  label: "PresetMonomerLabel"
})("font-size:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";line-height:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";font-weight:600;padding-right:2px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdDNkMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));
var PresetMonomerName = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "ec5fs972"
} : {
  target: "ec5fs972",
  label: "PresetMonomerName"
})("color:", function (props) {
  return props.theme.ketcher.color.text.lightgrey;
}, ";font-size:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";font-weight:400;white-space:nowrap;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNDNEMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));
var PresetName = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "ec5fs971"
} : {
  target: "ec5fs971",
  label: "PresetName"
})("color:", function (props) {
  return props.theme.ketcher.color.text.primary;
}, ";font-size:", function (props) {
  return props.theme.ketcher.font.size.regular;
}, ";font-weight:700;word-break:break-all;text-align:center;margin-top:0;margin-bottom:8px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRDbUMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));
var PresetIcon = _styled(Icon, process.env.NODE_ENV === "production" ? {
  target: "ec5fs970"
} : {
  target: "ec5fs970",
  label: "PresetIcon"
})("color:", function (props) {
  return props.theme.ketcher.color.icon.grey;
}, ";padding-right:", function (props) {
  return props.name === 'sugar' ? '4px' : props.name === 'phosphate' ? '1px' : 0;
}, ";padding-left:", function (props) {
  return props.name === 'base' ? '2px' : props.name === 'phosphate' ? '1px' : 0;
}, ";stroke:", function (props) {
  return props.theme.ketcher.color.icon.grey;
}, ";height:", function (props) {
  return props.name === 'sugar' ? '12px' : '14px';
}, ";width:", function (props) {
  return props.name === 'sugar' ? '12px' : '14px';
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFEdUMiLCJmaWxlIjoiUHJlc2V0UHJldmlldy5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJY29uIH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRDb250YWluZXIgPSBzdHlsZWQuZGl2IGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5fTtcbiAgYm9yZGVyOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmVndWxhcn07XG4gIGJvcmRlci1yYWRpdXM6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmJvcmRlci5yYWRpdXMucmVndWxhcn07XG4gIGJveC1zaGFkb3c6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLnNoYWRvdy5yZWd1bGFyfTtcbmA7XHJcbmV4cG9ydCBjb25zdCBQcmVzZXRNb25vbWVyUm93ID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lckxhYmVsID0gc3R5bGVkLmRpdiBgXG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TW9ub21lck5hbWUgPSBzdHlsZWQuZGl2IGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHRncmV5fTtcbiAgZm9udC1zaXplOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcn07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5gO1xyXG5leHBvcnQgY29uc3QgUHJlc2V0TmFtZSA9IHN0eWxlZC5wIGBcbiAgY29sb3I6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeX07XG4gIGZvbnQtc2l6ZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBmb250LXdlaWdodDogNzAwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IFByZXNldEljb24gPSBzdHlsZWQoSWNvbikgYFxuICBjb2xvcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgcGFkZGluZy1yaWdodDogJHsocHJvcHMpID0+IHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnNHB4JyA6IHByb3BzLm5hbWUgPT09ICdwaG9zcGhhdGUnID8gJzFweCcgOiAwfTtcbiAgcGFkZGluZy1sZWZ0OiAkeyhwcm9wcykgPT4gcHJvcHMubmFtZSA9PT0gJ2Jhc2UnID8gJzJweCcgOiBwcm9wcy5uYW1lID09PSAncGhvc3BoYXRlJyA/ICcxcHgnIDogMH07XG4gIHN0cm9rZTogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuY29sb3IuaWNvbi5ncmV5fTtcbiAgaGVpZ2h0OiAkeyhwcm9wcykgPT4gKHByb3BzLm5hbWUgPT09ICdzdWdhcicgPyAnMTJweCcgOiAnMTRweCcpfTtcbiAgd2lkdGg6ICR7KHByb3BzKSA9PiAocHJvcHMubmFtZSA9PT0gJ3N1Z2FyJyA/ICcxMnB4JyA6ICcxNHB4Jyl9O1xuYDtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UHJlc2V0UHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));

var useIDTAliasesTextForPreset = function useIDTAliasesTextForPreset(_ref) {
  var presetName = _ref.presetName,
    position = _ref.position,
    idtAliases = _ref.idtAliases;
  return useMemo(function () {
    if (!presetName || !idtAliases) {
      return null;
    }
    if (presetName.includes('MOE')) {
      var _modifications$endpoi, _modifications$intern, _modifications$endpoi2;
      var base = idtAliases.base,
        modifications = idtAliases.modifications;
      var endpoint5 = (_modifications$endpoi = modifications === null || modifications === void 0 ? void 0 : modifications.endpoint5) !== null && _modifications$endpoi !== void 0 ? _modifications$endpoi : "5".concat(base);
      var internal = (_modifications$intern = modifications === null || modifications === void 0 ? void 0 : modifications.internal) !== null && _modifications$intern !== void 0 ? _modifications$intern : "i".concat(base);
      var endpoint3 = (_modifications$endpoi2 = modifications === null || modifications === void 0 ? void 0 : modifications.endpoint3) !== null && _modifications$endpoi2 !== void 0 ? _modifications$endpoi2 : "3".concat(base);
      switch (position) {
        case PresetPosition.Library:
          return "".concat(endpoint5, ", ").concat(internal);
        case PresetPosition.ChainStart:
          return endpoint5;
        case PresetPosition.ChainMiddle:
          return internal;
        case PresetPosition.ChainEnd:
          return endpoint3;
      }
    }
    return idtAliases.base;
  }, [presetName, position, idtAliases]);
};

var icons = ['sugar', 'base', 'phosphate'];
var PresetPreview = function PresetPreview(_ref) {
  var className = _ref.className;
  var preview = useAppSelector(selectShowPreview);
  var monomers = preview.monomers,
    name = preview.name,
    position = preview.position,
    idtAliases = preview.idtAliases;
  var _monomers = _slicedToArray(monomers, 2),
    baseMonomer = _monomers[1];
  var presetName = name !== null && name !== void 0 ? name : baseMonomer === null || baseMonomer === void 0 ? void 0 : baseMonomer.props.Name;
  var idtAliasesText = useIDTAliasesTextForPreset({
    presetName: presetName,
    position: position,
    idtAliases: idtAliases
  });
  return jsxs(PresetContainer, {
    className: className,
    style: {
      alignItems: 'flex-start'
    },
    "data-testid": "polymer-library-preview",
    children: [jsx(PresetName, {
      children: presetName
    }), monomers.map(function (monomer, index) {
      return monomer && jsxs(PresetMonomerRow, {
        children: [jsx(PresetIcon, {
          name: icons[index]
        }), jsx(PresetMonomerLabel, {
          children: monomer.label
        }), jsxs(PresetMonomerName, {
          children: ["(", monomer.props.Name, ")"]
        })]
      }, index);
    }), idtAliasesText && jsx(IDTAliases, {
      idtAliasesText: idtAliasesText,
      preset: true
    })]
  });
};
var PresetStyledPreview = _styled(PresetPreview, process.env.NODE_ENV === "production" ? {
  target: "e1wupxfd0"
} : {
  target: "e1wupxfd0",
  label: "PresetStyledPreview"
})(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXNldFByZXZpZXcudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVDa0QiLCJmaWxlIjoiUHJlc2V0UHJldmlldy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgUHJlc2V0TW9ub21lclJvdywgUHJlc2V0TW9ub21lckxhYmVsLCBQcmVzZXRNb25vbWVyTmFtZSwgUHJlc2V0SWNvbiwgUHJlc2V0Q29udGFpbmVyLCBQcmVzZXROYW1lLCB9IGZyb20gJy4vUHJlc2V0UHJldmlldy5zdHlsZXMnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IHNlbGVjdFNob3dQcmV2aWV3IH0gZnJvbSBcIi4uLy4uLy4uLy4uL3N0YXRlL2NvbW1vblwiO1xyXG5pbXBvcnQgdXNlSURUQWxpYXNlc1RleHRGb3JQcmVzZXQgZnJvbSAnLi4vLi4vaG9va3MvdXNlSURUQWxpYXNlc1RleHRGb3JQcmVzZXQnO1xyXG5pbXBvcnQgeyB1c2VBcHBTZWxlY3RvciB9IGZyb20gXCIuLi8uLi8uLi8uLi9ob29rc1wiO1xyXG5pbXBvcnQgSURUQWxpYXNlcyBmcm9tICcuLi9JRFRBbGlhc2VzL0lEVEFsaWFzZXMnO1xyXG5jb25zdCBpY29ucyA9IFtcclxuICAgICdzdWdhcicsXHJcbiAgICAnYmFzZScsXHJcbiAgICAncGhvc3BoYXRlJyxcclxuXTtcclxuY29uc3QgUHJlc2V0UHJldmlldyA9ICh7IGNsYXNzTmFtZSB9KSA9PiB7XHJcbiAgICBjb25zdCBwcmV2aWV3ID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0U2hvd1ByZXZpZXcpO1xyXG4gICAgY29uc3QgeyBtb25vbWVycywgbmFtZSwgcG9zaXRpb24sIGlkdEFsaWFzZXMgfSA9IHByZXZpZXc7XHJcbiAgICBjb25zdCBbLCBiYXNlTW9ub21lcl0gPSBtb25vbWVycztcclxuICAgIGNvbnN0IHByZXNldE5hbWUgPSBuYW1lID8/IGJhc2VNb25vbWVyPy5wcm9wcy5OYW1lO1xyXG4gICAgY29uc3QgaWR0QWxpYXNlc1RleHQgPSB1c2VJRFRBbGlhc2VzVGV4dEZvclByZXNldCh7XHJcbiAgICAgICAgcHJlc2V0TmFtZSxcclxuICAgICAgICBwb3NpdGlvbixcclxuICAgICAgICBpZHRBbGlhc2VzLFxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKF9qc3hzKFByZXNldENvbnRhaW5lciwgeyBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc3R5bGU6IHsgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnIH0sIFwiZGF0YS10ZXN0aWRcIjogXCJwb2x5bWVyLWxpYnJhcnktcHJldmlld1wiLCBjaGlsZHJlbjogW19qc3goUHJlc2V0TmFtZSwgeyBjaGlsZHJlbjogcHJlc2V0TmFtZSB9KSwgbW9ub21lcnMubWFwKChtb25vbWVyLCBpbmRleCkgPT4gbW9ub21lciAmJiAoX2pzeHMoUHJlc2V0TW9ub21lclJvdywgeyBjaGlsZHJlbjogW19qc3goUHJlc2V0SWNvbiwgeyBuYW1lOiBpY29uc1tpbmRleF0gfSksIF9qc3goUHJlc2V0TW9ub21lckxhYmVsLCB7IGNoaWxkcmVuOiBtb25vbWVyLmxhYmVsIH0pLCBfanN4cyhQcmVzZXRNb25vbWVyTmFtZSwgeyBjaGlsZHJlbjogW1wiKFwiLCBtb25vbWVyLnByb3BzLk5hbWUsIFwiKVwiXSB9KV0gfSwgaW5kZXgpKSksIGlkdEFsaWFzZXNUZXh0ICYmIF9qc3goSURUQWxpYXNlcywgeyBpZHRBbGlhc2VzVGV4dDogaWR0QWxpYXNlc1RleHQsIHByZXNldDogdHJ1ZSB9KV0gfSkpO1xyXG59O1xyXG5jb25zdCBQcmVzZXRTdHlsZWRQcmV2aWV3ID0gc3R5bGVkKFByZXNldFByZXZpZXcpIGBgO1xyXG5leHBvcnQgZGVmYXVsdCBQcmVzZXRTdHlsZWRQcmV2aWV3O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1QcmVzZXRQcmV2aWV3LmpzLm1hcCJdfQ== */");

var Container = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "envzkt90"
} : {
  target: "envzkt90",
  label: "Container"
})("display:flex;flex-direction:column;align-items:start;gap:8px;background:", function (props) {
  return props.theme.ketcher.color.background.primary;
}, ";border:", function (props) {
  return props.theme.ketcher.border.regular;
}, ";border-radius:", function (props) {
  return props.theme.ketcher.border.radius.regular;
}, ";box-shadow:", function (props) {
  return props.theme.ketcher.shadow.regular;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRQcmV2aWV3LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDb0MiLCJmaWxlIjoiQm9uZFByZXZpZXcuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgQ29udGFpbmVyID0gc3R5bGVkLmRpdiBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiA4cHg7XG4gIGJhY2tncm91bmQ6ICR7KHByb3BzKSA9PiBwcm9wcy50aGVtZS5rZXRjaGVyLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeX07XG4gIGJvcmRlcjogJHsocHJvcHMpID0+IHByb3BzLnRoZW1lLmtldGNoZXIuYm9yZGVyLnJlZ3VsYXJ9O1xuICBib3JkZXItcmFkaXVzOiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXJ9O1xuICBib3gtc2hhZG93OiAkeyhwcm9wcykgPT4gcHJvcHMudGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1Cb25kUHJldmlldy5zdHlsZXMuanMubWFwIl19 */"));

var AttachmentPoint = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e1m0yzrp2"
} : {
  target: "e1m0yzrp2",
  label: "AttachmentPoint"
})(function (_ref) {
  var connected = _ref.connected,
    inBond = _ref.inBond,
    theme = _ref.theme;
  return {
    display: 'flex',
    flexDirection: 'column',
    alignItems: 'center',
    gap: '2px',
    color: inBond || !connected ? theme.ketcher.color.text.primary : '#B4B9D6'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRBdHRhY2htZW50UG9pbnRzLnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDK0IiLCJmaWxlIjoiQm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkLmRpdigoeyBjb25uZWN0ZWQsIGluQm9uZCwgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICcycHgnLFxyXG4gICAgY29sb3I6IGluQm9uZCB8fCAhY29ubmVjdGVkID8gdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnkgOiAnI0I0QjlENicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludE5hbWUgPSBzdHlsZWQucCgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgbWFyZ2luOiAwLFxyXG4gICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsLFxyXG4gICAgbGluZUhlaWdodDogJzEycHgnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBMZWF2aW5nR3JvdXAgPSBzdHlsZWQucCgoeyBpbkJvbmQsIHRoZW1lIH0pID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAnNHB4JyxcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQuYm9sZCxcclxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGluQm9uZCA/ICcjQ0RGMUZDJyA6ICd0cmFuc3BhcmVudCcsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Qm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLmpzLm1hcCJdfQ== */");
var AttachmentPointName = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1m0yzrp1"
} : {
  target: "e1m0yzrp1",
  label: "AttachmentPointName"
})(function (_ref2) {
  var theme = _ref2.theme;
  return {
    margin: 0,
    fontSize: theme.ketcher.font.size.small,
    lineHeight: '12px'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRBdHRhY2htZW50UG9pbnRzLnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRbUMiLCJmaWxlIjoiQm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkLmRpdigoeyBjb25uZWN0ZWQsIGluQm9uZCwgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICcycHgnLFxyXG4gICAgY29sb3I6IGluQm9uZCB8fCAhY29ubmVjdGVkID8gdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnkgOiAnI0I0QjlENicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludE5hbWUgPSBzdHlsZWQucCgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgbWFyZ2luOiAwLFxyXG4gICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsLFxyXG4gICAgbGluZUhlaWdodDogJzEycHgnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBMZWF2aW5nR3JvdXAgPSBzdHlsZWQucCgoeyBpbkJvbmQsIHRoZW1lIH0pID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAnNHB4JyxcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQuYm9sZCxcclxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGluQm9uZCA/ICcjQ0RGMUZDJyA6ICd0cmFuc3BhcmVudCcsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Qm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLmpzLm1hcCJdfQ== */");
var LeavingGroup = _styled("p", process.env.NODE_ENV === "production" ? {
  target: "e1m0yzrp0"
} : {
  target: "e1m0yzrp0",
  label: "LeavingGroup"
})(function (_ref3) {
  var inBond = _ref3.inBond,
    theme = _ref3.theme;
  return {
    margin: 0,
    padding: '4px',
    fontWeight: theme.ketcher.font.weight.bold,
    lineHeight: '14px',
    borderRadius: '4px',
    backgroundColor: inBond ? '#CDF1FC' : 'transparent'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRBdHRhY2htZW50UG9pbnRzLnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhNEIiLCJmaWxlIjoiQm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5leHBvcnQgY29uc3QgQXR0YWNobWVudFBvaW50ID0gc3R5bGVkLmRpdigoeyBjb25uZWN0ZWQsIGluQm9uZCwgdGhlbWUgfSkgPT4gKHtcclxuICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXHJcbiAgICBnYXA6ICcycHgnLFxyXG4gICAgY29sb3I6IGluQm9uZCB8fCAhY29ubmVjdGVkID8gdGhlbWUua2V0Y2hlci5jb2xvci50ZXh0LnByaW1hcnkgOiAnI0I0QjlENicsXHJcbn0pKTtcclxuZXhwb3J0IGNvbnN0IEF0dGFjaG1lbnRQb2ludE5hbWUgPSBzdHlsZWQucCgoeyB0aGVtZSB9KSA9PiAoe1xyXG4gICAgbWFyZ2luOiAwLFxyXG4gICAgZm9udFNpemU6IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnNtYWxsLFxyXG4gICAgbGluZUhlaWdodDogJzEycHgnLFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBMZWF2aW5nR3JvdXAgPSBzdHlsZWQucCgoeyBpbkJvbmQsIHRoZW1lIH0pID0+ICh7XHJcbiAgICBtYXJnaW46IDAsXHJcbiAgICBwYWRkaW5nOiAnNHB4JyxcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQuYm9sZCxcclxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcclxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGluQm9uZCA/ICcjQ0RGMUZDJyA6ICd0cmFuc3BhcmVudCcsXHJcbn0pKTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Qm9uZEF0dGFjaG1lbnRQb2ludHMuc3R5bGVzLmpzLm1hcCJdfQ== */");

var BondAttachmentPoints = function BondAttachmentPoints(_ref) {
  var attachmentPoints = _ref.attachmentPoints,
    attachmentPointInBond = _ref.attachmentPointInBond;
  return jsx(Fragment, {
    children: attachmentPoints.map(function (attachmentPoint) {
      return jsxs(AttachmentPoint, {
        connected: attachmentPoint.connected,
        inBond: attachmentPoint.id === attachmentPointInBond,
        children: [jsx(AttachmentPointName, {
          children: attachmentPoint.id
        }), jsx(LeavingGroup, {
          inBond: attachmentPoint.id === attachmentPointInBond,
          children: attachmentPoint.label
        })]
      }, attachmentPoint.id);
    })
  });
};

var BondPreview = function BondPreview(_ref) {
  var className = _ref.className;
  var preview = useAppSelector(selectShowPreview);
  var polymerBond = preview.polymerBond,
    style = preview.style;
  var ContainerDynamic = useMemo(function () {
    if (!style) {
      return _styled(Container, process.env.NODE_ENV === "production" ? {
        target: "e18hk05c2"
      } : {
        target: "e18hk05c2",
        label: "ContainerDynamic"
      })(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRQcmV2aWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQnFDIiwiZmlsZSI6IkJvbmRQcmV2aWV3LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0U2hvd1ByZXZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCBDb25uZWN0aW9uT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvQ29ubmVjdGlvbk92ZXJ2aWV3XCI7XHJcbmltcG9ydCBNb25vbWVyT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvY29tcG9uZW50cy9Nb25vbWVyT3ZlcnZpZXcvTW9ub21lck92ZXJ2aWV3XCI7XHJcbmltcG9ydCB7IHVzZUF0dGFjaG1lbnRQb2ludHMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBdHRhY2htZW50UG9pbnRzJztcclxuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSAnLi9Cb25kUHJldmlldy5zdHlsZXMnO1xyXG5pbXBvcnQgQm9uZEF0dGFjaG1lbnRQb2ludHMgZnJvbSBcIi4uL0JvbmRBdHRhY2htZW50UG9pbnRzL0JvbmRBdHRhY2htZW50UG9pbnRzXCI7XHJcbmltcG9ydCB7IFVzYWdlSW5NYWNyb21vbGVjdWxlIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IHsgcHJldmlldyB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5jb25zdCBCb25kUHJldmlldyA9ICh7IGNsYXNzTmFtZSB9KSA9PiB7XHJcbiAgICBjb25zdCBwcmV2aWV3ID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0U2hvd1ByZXZpZXcpO1xyXG4gICAgY29uc3QgeyBwb2x5bWVyQm9uZCwgc3R5bGUgfSA9IHByZXZpZXc7XHJcbiAgICBjb25zdCBDb250YWluZXJEeW5hbWljID0gdXNlTWVtbygoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFzdHlsZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gc3R5bGVkKENvbnRhaW5lcikgYGA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzdHlsZWQoQ29udGFpbmVyKSBgXG4gICAgICB0b3A6ICR7c3R5bGU/LnRvcCB8fCAnJ307XG4gICAgICBsZWZ0OiAke3N0eWxlPy5sZWZ0IHx8ICcnfTtcbiAgICAgIHJpZ2h0OiAke3N0eWxlPy5yaWdodCB8fCAnJ307XG4gICAgYDtcclxuICAgIH0sIFtzdHlsZV0pO1xyXG4gICAgY29uc3QgeyBmaXJzdE1vbm9tZXIsIHNlY29uZE1vbm9tZXIsIGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgc2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludCwgfSA9IHBvbHltZXJCb25kO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgfSA9IHVzZUF0dGFjaG1lbnRQb2ludHMoe1xyXG4gICAgICAgIG1vbm9tZXJDYXBzOiBmaXJzdE1vbm9tZXIubW9ub21lckNhcHMsXHJcbiAgICAgICAgYXR0YWNobWVudFBvaW50c1RvQm9uZHM6IGZpcnN0TW9ub21lci5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBzZWNvbmRNb25vbWVyUHJlcGFyZWRBUHNEYXRhLCBjb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzOiBzZWNvbmRNb25vbWVyQ29ubmVjdGVkQVBzLCB9ID0gdXNlQXR0YWNobWVudFBvaW50cyh7XHJcbiAgICAgICAgbW9ub21lckNhcHM6IHNlY29uZE1vbm9tZXI/Lm1vbm9tZXJDYXBzLFxyXG4gICAgICAgIGF0dGFjaG1lbnRQb2ludHNUb0JvbmRzOiBzZWNvbmRNb25vbWVyPy5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiAoX2pzeChDb250YWluZXJEeW5hbWljLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImRhdGEtdGVzdGlkXCI6IFwicG9seW1lci1saWJyYXJ5LXByZXZpZXdcIiwgY2hpbGRyZW46IF9qc3goQ29ubmVjdGlvbk92ZXJ2aWV3LCB7IGZpcnN0TW9ub21lcjogZmlyc3RNb25vbWVyLCBzZWNvbmRNb25vbWVyOiBzZWNvbmRNb25vbWVyLCBmaXJzdE1vbm9tZXJPdmVydmlldzogX2pzeChNb25vbWVyT3ZlcnZpZXcsIHsgbW9ub21lcjogZmlyc3RNb25vbWVyLCB1c2FnZTogVXNhZ2VJbk1hY3JvbW9sZWN1bGUuQm9uZFByZXZpZXcsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgYXR0YWNobWVudFBvaW50czogX2pzeChCb25kQXR0YWNobWVudFBvaW50cywgeyBhdHRhY2htZW50UG9pbnRzOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGF0dGFjaG1lbnRQb2ludEluQm9uZDogZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pLCBzZWNvbmRNb25vbWVyT3ZlcnZpZXc6IF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHVzYWdlOiBVc2FnZUluTWFjcm9tb2xlY3VsZS5Cb25kUHJldmlldywgY29ubmVjdGVkQXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IHNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQsIGF0dGFjaG1lbnRQb2ludHM6IF9qc3goQm9uZEF0dGFjaG1lbnRQb2ludHMsIHsgYXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lclByZXBhcmVkQVBzRGF0YSwgYXR0YWNobWVudFBvaW50SW5Cb25kOiBzZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pIH0pIH0pKTtcclxufTtcclxuY29uc3QgU3R5bGVkUHJldmlldyA9IHN0eWxlZChCb25kUHJldmlldykgYFxuICB3aWR0aDogJHtwcmV2aWV3LndpZHRoRm9yQm9uZH1weDtcbiAgaGVpZ2h0OiAke3ByZXZpZXcuaGVpZ2h0Rm9yQm9uZH1weDtcbmA7XHJcbmV4cG9ydCBkZWZhdWx0IFN0eWxlZFByZXZpZXc7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUJvbmRQcmV2aWV3LmpzLm1hcCJdfQ== */");
    }
    return _styled(Container, process.env.NODE_ENV === "production" ? {
      target: "e18hk05c1"
    } : {
      target: "e18hk05c1",
      label: "ContainerDynamic"
    })("top:", (style === null || style === void 0 ? void 0 : style.top) || '', ";left:", (style === null || style === void 0 ? void 0 : style.left) || '', ";right:", (style === null || style === void 0 ? void 0 : style.right) || '', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRQcmV2aWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQmlDIiwiZmlsZSI6IkJvbmRQcmV2aWV3LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0U2hvd1ByZXZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCBDb25uZWN0aW9uT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvQ29ubmVjdGlvbk92ZXJ2aWV3XCI7XHJcbmltcG9ydCBNb25vbWVyT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvY29tcG9uZW50cy9Nb25vbWVyT3ZlcnZpZXcvTW9ub21lck92ZXJ2aWV3XCI7XHJcbmltcG9ydCB7IHVzZUF0dGFjaG1lbnRQb2ludHMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBdHRhY2htZW50UG9pbnRzJztcclxuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSAnLi9Cb25kUHJldmlldy5zdHlsZXMnO1xyXG5pbXBvcnQgQm9uZEF0dGFjaG1lbnRQb2ludHMgZnJvbSBcIi4uL0JvbmRBdHRhY2htZW50UG9pbnRzL0JvbmRBdHRhY2htZW50UG9pbnRzXCI7XHJcbmltcG9ydCB7IFVzYWdlSW5NYWNyb21vbGVjdWxlIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IHsgcHJldmlldyB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5jb25zdCBCb25kUHJldmlldyA9ICh7IGNsYXNzTmFtZSB9KSA9PiB7XHJcbiAgICBjb25zdCBwcmV2aWV3ID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0U2hvd1ByZXZpZXcpO1xyXG4gICAgY29uc3QgeyBwb2x5bWVyQm9uZCwgc3R5bGUgfSA9IHByZXZpZXc7XHJcbiAgICBjb25zdCBDb250YWluZXJEeW5hbWljID0gdXNlTWVtbygoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFzdHlsZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gc3R5bGVkKENvbnRhaW5lcikgYGA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzdHlsZWQoQ29udGFpbmVyKSBgXG4gICAgICB0b3A6ICR7c3R5bGU/LnRvcCB8fCAnJ307XG4gICAgICBsZWZ0OiAke3N0eWxlPy5sZWZ0IHx8ICcnfTtcbiAgICAgIHJpZ2h0OiAke3N0eWxlPy5yaWdodCB8fCAnJ307XG4gICAgYDtcclxuICAgIH0sIFtzdHlsZV0pO1xyXG4gICAgY29uc3QgeyBmaXJzdE1vbm9tZXIsIHNlY29uZE1vbm9tZXIsIGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgc2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludCwgfSA9IHBvbHltZXJCb25kO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgfSA9IHVzZUF0dGFjaG1lbnRQb2ludHMoe1xyXG4gICAgICAgIG1vbm9tZXJDYXBzOiBmaXJzdE1vbm9tZXIubW9ub21lckNhcHMsXHJcbiAgICAgICAgYXR0YWNobWVudFBvaW50c1RvQm9uZHM6IGZpcnN0TW9ub21lci5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBzZWNvbmRNb25vbWVyUHJlcGFyZWRBUHNEYXRhLCBjb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzOiBzZWNvbmRNb25vbWVyQ29ubmVjdGVkQVBzLCB9ID0gdXNlQXR0YWNobWVudFBvaW50cyh7XHJcbiAgICAgICAgbW9ub21lckNhcHM6IHNlY29uZE1vbm9tZXI/Lm1vbm9tZXJDYXBzLFxyXG4gICAgICAgIGF0dGFjaG1lbnRQb2ludHNUb0JvbmRzOiBzZWNvbmRNb25vbWVyPy5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiAoX2pzeChDb250YWluZXJEeW5hbWljLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImRhdGEtdGVzdGlkXCI6IFwicG9seW1lci1saWJyYXJ5LXByZXZpZXdcIiwgY2hpbGRyZW46IF9qc3goQ29ubmVjdGlvbk92ZXJ2aWV3LCB7IGZpcnN0TW9ub21lcjogZmlyc3RNb25vbWVyLCBzZWNvbmRNb25vbWVyOiBzZWNvbmRNb25vbWVyLCBmaXJzdE1vbm9tZXJPdmVydmlldzogX2pzeChNb25vbWVyT3ZlcnZpZXcsIHsgbW9ub21lcjogZmlyc3RNb25vbWVyLCB1c2FnZTogVXNhZ2VJbk1hY3JvbW9sZWN1bGUuQm9uZFByZXZpZXcsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgYXR0YWNobWVudFBvaW50czogX2pzeChCb25kQXR0YWNobWVudFBvaW50cywgeyBhdHRhY2htZW50UG9pbnRzOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGF0dGFjaG1lbnRQb2ludEluQm9uZDogZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pLCBzZWNvbmRNb25vbWVyT3ZlcnZpZXc6IF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHVzYWdlOiBVc2FnZUluTWFjcm9tb2xlY3VsZS5Cb25kUHJldmlldywgY29ubmVjdGVkQXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IHNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQsIGF0dGFjaG1lbnRQb2ludHM6IF9qc3goQm9uZEF0dGFjaG1lbnRQb2ludHMsIHsgYXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lclByZXBhcmVkQVBzRGF0YSwgYXR0YWNobWVudFBvaW50SW5Cb25kOiBzZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pIH0pIH0pKTtcclxufTtcclxuY29uc3QgU3R5bGVkUHJldmlldyA9IHN0eWxlZChCb25kUHJldmlldykgYFxuICB3aWR0aDogJHtwcmV2aWV3LndpZHRoRm9yQm9uZH1weDtcbiAgaGVpZ2h0OiAke3ByZXZpZXcuaGVpZ2h0Rm9yQm9uZH1weDtcbmA7XHJcbmV4cG9ydCBkZWZhdWx0IFN0eWxlZFByZXZpZXc7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUJvbmRQcmV2aWV3LmpzLm1hcCJdfQ== */"));
  }, [style]);
  var firstMonomer = polymerBond.firstMonomer,
    secondMonomer = polymerBond.secondMonomer,
    firstMonomerAttachmentPoint = polymerBond.firstMonomerAttachmentPoint,
    secondMonomerAttachmentPoint = polymerBond.secondMonomerAttachmentPoint;
  var _useAttachmentPoints = useAttachmentPoints({
      monomerCaps: firstMonomer.monomerCaps,
      attachmentPointsToBonds: firstMonomer.attachmentPointsToBonds
    }),
    firstMonomerPreparedAPsData = _useAttachmentPoints.preparedAttachmentPointsData,
    firstMonomerConnectedAPs = _useAttachmentPoints.connectedAttachmentPoints;
  var _useAttachmentPoints2 = useAttachmentPoints({
      monomerCaps: secondMonomer === null || secondMonomer === void 0 ? void 0 : secondMonomer.monomerCaps,
      attachmentPointsToBonds: secondMonomer === null || secondMonomer === void 0 ? void 0 : secondMonomer.attachmentPointsToBonds
    }),
    secondMonomerPreparedAPsData = _useAttachmentPoints2.preparedAttachmentPointsData,
    secondMonomerConnectedAPs = _useAttachmentPoints2.connectedAttachmentPoints;
  if (!firstMonomer || !secondMonomer) {
    return null;
  }
  return jsx(ContainerDynamic, {
    className: className,
    "data-testid": "polymer-library-preview",
    children: jsx(ConnectionOverview, {
      firstMonomer: firstMonomer,
      secondMonomer: secondMonomer,
      firstMonomerOverview: jsx(MonomerOverview, {
        monomer: firstMonomer,
        usage: UsageInMacromolecule.BondPreview,
        connectedAttachmentPoints: firstMonomerConnectedAPs,
        selectedAttachmentPoint: firstMonomerAttachmentPoint,
        attachmentPoints: jsx(BondAttachmentPoints, {
          attachmentPoints: firstMonomerPreparedAPsData,
          attachmentPointInBond: firstMonomerAttachmentPoint
        })
      }),
      secondMonomerOverview: jsx(MonomerOverview, {
        monomer: secondMonomer,
        usage: UsageInMacromolecule.BondPreview,
        connectedAttachmentPoints: secondMonomerConnectedAPs,
        selectedAttachmentPoint: secondMonomerAttachmentPoint,
        attachmentPoints: jsx(BondAttachmentPoints, {
          attachmentPoints: secondMonomerPreparedAPsData,
          attachmentPointInBond: secondMonomerAttachmentPoint
        })
      })
    })
  });
};
var StyledPreview = _styled(BondPreview, process.env.NODE_ENV === "production" ? {
  target: "e18hk05c0"
} : {
  target: "e18hk05c0",
  label: "StyledPreview"
})("width:", preview.widthForBond, "px;height:", preview.heightForBond, "px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJvbmRQcmV2aWV3LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QzBDIiwiZmlsZSI6IkJvbmRQcmV2aWV3LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0L2pzeC1ydW50aW1lXCI7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0U2hvd1ByZXZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCBDb25uZWN0aW9uT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvQ29ubmVjdGlvbk92ZXJ2aWV3XCI7XHJcbmltcG9ydCBNb25vbWVyT3ZlcnZpZXcgZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9Db25uZWN0aW9uT3ZlcnZpZXcvY29tcG9uZW50cy9Nb25vbWVyT3ZlcnZpZXcvTW9ub21lck92ZXJ2aWV3XCI7XHJcbmltcG9ydCB7IHVzZUF0dGFjaG1lbnRQb2ludHMgfSBmcm9tICcuLi8uLi9ob29rcy91c2VBdHRhY2htZW50UG9pbnRzJztcclxuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSAnLi9Cb25kUHJldmlldy5zdHlsZXMnO1xyXG5pbXBvcnQgQm9uZEF0dGFjaG1lbnRQb2ludHMgZnJvbSBcIi4uL0JvbmRBdHRhY2htZW50UG9pbnRzL0JvbmRBdHRhY2htZW50UG9pbnRzXCI7XHJcbmltcG9ydCB7IFVzYWdlSW5NYWNyb21vbGVjdWxlIH0gZnJvbSAna2V0Y2hlci1jb3JlJztcclxuaW1wb3J0IHsgcHJldmlldyB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5jb25zdCBCb25kUHJldmlldyA9ICh7IGNsYXNzTmFtZSB9KSA9PiB7XHJcbiAgICBjb25zdCBwcmV2aWV3ID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0U2hvd1ByZXZpZXcpO1xyXG4gICAgY29uc3QgeyBwb2x5bWVyQm9uZCwgc3R5bGUgfSA9IHByZXZpZXc7XHJcbiAgICBjb25zdCBDb250YWluZXJEeW5hbWljID0gdXNlTWVtbygoKSA9PiB7XHJcbiAgICAgICAgaWYgKCFzdHlsZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gc3R5bGVkKENvbnRhaW5lcikgYGA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzdHlsZWQoQ29udGFpbmVyKSBgXG4gICAgICB0b3A6ICR7c3R5bGU/LnRvcCB8fCAnJ307XG4gICAgICBsZWZ0OiAke3N0eWxlPy5sZWZ0IHx8ICcnfTtcbiAgICAgIHJpZ2h0OiAke3N0eWxlPy5yaWdodCB8fCAnJ307XG4gICAgYDtcclxuICAgIH0sIFtzdHlsZV0pO1xyXG4gICAgY29uc3QgeyBmaXJzdE1vbm9tZXIsIHNlY29uZE1vbm9tZXIsIGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgc2Vjb25kTW9ub21lckF0dGFjaG1lbnRQb2ludCwgfSA9IHBvbHltZXJCb25kO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgfSA9IHVzZUF0dGFjaG1lbnRQb2ludHMoe1xyXG4gICAgICAgIG1vbm9tZXJDYXBzOiBmaXJzdE1vbm9tZXIubW9ub21lckNhcHMsXHJcbiAgICAgICAgYXR0YWNobWVudFBvaW50c1RvQm9uZHM6IGZpcnN0TW9ub21lci5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgY29uc3QgeyBwcmVwYXJlZEF0dGFjaG1lbnRQb2ludHNEYXRhOiBzZWNvbmRNb25vbWVyUHJlcGFyZWRBUHNEYXRhLCBjb25uZWN0ZWRBdHRhY2htZW50UG9pbnRzOiBzZWNvbmRNb25vbWVyQ29ubmVjdGVkQVBzLCB9ID0gdXNlQXR0YWNobWVudFBvaW50cyh7XHJcbiAgICAgICAgbW9ub21lckNhcHM6IHNlY29uZE1vbm9tZXI/Lm1vbm9tZXJDYXBzLFxyXG4gICAgICAgIGF0dGFjaG1lbnRQb2ludHNUb0JvbmRzOiBzZWNvbmRNb25vbWVyPy5hdHRhY2htZW50UG9pbnRzVG9Cb25kcyxcclxuICAgIH0pO1xyXG4gICAgaWYgKCFmaXJzdE1vbm9tZXIgfHwgIXNlY29uZE1vbm9tZXIpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiAoX2pzeChDb250YWluZXJEeW5hbWljLCB7IGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImRhdGEtdGVzdGlkXCI6IFwicG9seW1lci1saWJyYXJ5LXByZXZpZXdcIiwgY2hpbGRyZW46IF9qc3goQ29ubmVjdGlvbk92ZXJ2aWV3LCB7IGZpcnN0TW9ub21lcjogZmlyc3RNb25vbWVyLCBzZWNvbmRNb25vbWVyOiBzZWNvbmRNb25vbWVyLCBmaXJzdE1vbm9tZXJPdmVydmlldzogX2pzeChNb25vbWVyT3ZlcnZpZXcsIHsgbW9ub21lcjogZmlyc3RNb25vbWVyLCB1c2FnZTogVXNhZ2VJbk1hY3JvbW9sZWN1bGUuQm9uZFByZXZpZXcsIGNvbm5lY3RlZEF0dGFjaG1lbnRQb2ludHM6IGZpcnN0TW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IGZpcnN0TW9ub21lckF0dGFjaG1lbnRQb2ludCwgYXR0YWNobWVudFBvaW50czogX2pzeChCb25kQXR0YWNobWVudFBvaW50cywgeyBhdHRhY2htZW50UG9pbnRzOiBmaXJzdE1vbm9tZXJQcmVwYXJlZEFQc0RhdGEsIGF0dGFjaG1lbnRQb2ludEluQm9uZDogZmlyc3RNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pLCBzZWNvbmRNb25vbWVyT3ZlcnZpZXc6IF9qc3goTW9ub21lck92ZXJ2aWV3LCB7IG1vbm9tZXI6IHNlY29uZE1vbm9tZXIsIHVzYWdlOiBVc2FnZUluTWFjcm9tb2xlY3VsZS5Cb25kUHJldmlldywgY29ubmVjdGVkQXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lckNvbm5lY3RlZEFQcywgc2VsZWN0ZWRBdHRhY2htZW50UG9pbnQ6IHNlY29uZE1vbm9tZXJBdHRhY2htZW50UG9pbnQsIGF0dGFjaG1lbnRQb2ludHM6IF9qc3goQm9uZEF0dGFjaG1lbnRQb2ludHMsIHsgYXR0YWNobWVudFBvaW50czogc2Vjb25kTW9ub21lclByZXBhcmVkQVBzRGF0YSwgYXR0YWNobWVudFBvaW50SW5Cb25kOiBzZWNvbmRNb25vbWVyQXR0YWNobWVudFBvaW50IH0pIH0pIH0pIH0pKTtcclxufTtcclxuY29uc3QgU3R5bGVkUHJldmlldyA9IHN0eWxlZChCb25kUHJldmlldykgYFxuICB3aWR0aDogJHtwcmV2aWV3LndpZHRoRm9yQm9uZH1weDtcbiAgaGVpZ2h0OiAke3ByZXZpZXcuaGVpZ2h0Rm9yQm9uZH1weDtcbmA7XHJcbmV4cG9ydCBkZWZhdWx0IFN0eWxlZFByZXZpZXc7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPUJvbmRQcmV2aWV3LmpzLm1hcCJdfQ== */"));

function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var PreviewContainer = _styled("div", process.env.NODE_ENV === "production" ? {
  target: "e88xzqx0"
} : {
  target: "e88xzqx0",
  label: "PreviewContainer"
})(function () {
  return {
    display: 'inline-block',
    position: 'absolute',
    background: 'white'
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlByZXZpZXcudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBCeUIiLCJmaWxlIjoiUHJldmlldy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBDb3B5cmlnaHQgMjAyMSBFUEFNIFN5c3RlbXNcclxuICpcclxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcclxuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxyXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuICpcclxuICogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcbiAqXHJcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcclxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxyXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cclxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuaW1wb3J0IHsgdXNlQXBwU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vaG9va3NcIjtcclxuaW1wb3J0IHsgc2VsZWN0U2hvd1ByZXZpZXcgfSBmcm9tIFwiLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCBNb25vbWVyUHJldmlldyBmcm9tICcuL2NvbXBvbmVudHMvTW9ub21lclByZXZpZXcvTW9ub21lclByZXZpZXcnO1xyXG5pbXBvcnQgUHJlc2V0UHJldmlldyBmcm9tICcuL2NvbXBvbmVudHMvUHJlc2V0UHJldmlldy9QcmVzZXRQcmV2aWV3JztcclxuaW1wb3J0IEJvbmRQcmV2aWV3IGZyb20gJy4vY29tcG9uZW50cy9Cb25kUHJldmlldy9Cb25kUHJldmlldyc7XHJcbmltcG9ydCB7IFByZXZpZXdUeXBlIH0gZnJvbSBcIi4uLy4uL3N0YXRlXCI7XHJcbmltcG9ydCB7IEFtYmlndW91c01vbm9tZXJQcmV2aWV3IH0gZnJvbSAna2V0Y2hlci1yZWFjdCc7XHJcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBab29tVG9vbCB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmNvbnN0IFByZXZpZXdDb250YWluZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XHJcbiAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcclxuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxyXG4gICAgYmFja2dyb3VuZDogJ3doaXRlJyxcclxufSkpO1xyXG5leHBvcnQgY29uc3QgUHJldmlldyA9ICgpID0+IHtcclxuICAgIGNvbnN0IHByZXZpZXcgPSB1c2VBcHBTZWxlY3RvcihzZWxlY3RTaG93UHJldmlldyk7XHJcbiAgICBjb25zdCBwcmV2aWV3UmVmID0gdXNlUmVmKG51bGwpO1xyXG4gICAgY29uc3QgW2lzUHJldmlld1Zpc2libGUsIHNldElzUHJldmlld1Zpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAoIXByZXZpZXdSZWYuY3VycmVudCB8fCBwcmV2aWV3LnN0eWxlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHByZXZpZXcgJiYgcHJldmlldy50eXBlKSB7XHJcbiAgICAgICAgICAgIHByZXZpZXdSZWYuY3VycmVudC5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgJycpO1xyXG4gICAgICAgICAgICBzZXRJc1ByZXZpZXdWaXNpYmxlKHRydWUpO1xyXG4gICAgICAgICAgICBjb25zdCBQUkVWSUVXX09GRlNFVCA9IDU7XHJcbiAgICAgICAgICAgIGNvbnN0IHByZXZpZXdCb3VuZGluZ0NsaWVudFJlY3QgPSBwcmV2aWV3UmVmLmN1cnJlbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICBjb25zdCBwcmV2aWV3SGVpZ2h0ID0gcHJldmlld0JvdW5kaW5nQ2xpZW50UmVjdD8uaGVpZ2h0IHx8IDA7XHJcbiAgICAgICAgICAgIGNvbnN0IHByZXZpZXdXaWR0aCA9IHByZXZpZXdCb3VuZGluZ0NsaWVudFJlY3Q/LndpZHRoIHx8IDA7XHJcbiAgICAgICAgICAgIGNvbnN0IGNhbnZhc1dyYXBwZXJCb3VuZGluZ0NsaWVudFJlY3QgPSBab29tVG9vbC5pbnN0YW5jZT8uY2FudmFzV3JhcHBlclxyXG4gICAgICAgICAgICAgICAgLm5vZGUoKVxyXG4gICAgICAgICAgICAgICAgPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICAgICAgY29uc3QgY2FudmFzV3JhcHBlckJvdHRvbSA9IGNhbnZhc1dyYXBwZXJCb3VuZGluZ0NsaWVudFJlY3Q/LmJvdHRvbSB8fCAwO1xyXG4gICAgICAgICAgICBjb25zdCBjYW52YXNXcmFwcGVyTGVmdCA9IGNhbnZhc1dyYXBwZXJCb3VuZGluZ0NsaWVudFJlY3Q/LmxlZnQgfHwgMDtcclxuICAgICAgICAgICAgY29uc3QgY2FudmFzV3JhcHBlclJpZ2h0ID0gY2FudmFzV3JhcHBlckJvdW5kaW5nQ2xpZW50UmVjdD8ucmlnaHQgfHwgMDtcclxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0Qm91bmRpbmdDbGllbnRSZWN0ID0gcHJldmlldy50YXJnZXQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICBjb25zdCB0YXJnZXRUb3AgPSB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3Q/LnRvcCB8fCAwO1xyXG4gICAgICAgICAgICBjb25zdCB0YXJnZXRCb3R0b20gPSB0YXJnZXRCb3VuZGluZ0NsaWVudFJlY3Q/LmJvdHRvbSB8fCAwO1xyXG4gICAgICAgICAgICBjb25zdCB0YXJnZXRMZWZ0ID0gdGFyZ2V0Qm91bmRpbmdDbGllbnRSZWN0Py5sZWZ0IHx8IDA7XHJcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldFdpZHRoID0gdGFyZ2V0Qm91bmRpbmdDbGllbnRSZWN0Py53aWR0aCB8fCAwO1xyXG4gICAgICAgICAgICBjb25zdCB0YXJnZXRDZW50ZXJYID0gdGFyZ2V0TGVmdCAtIHRhcmdldFdpZHRoIC8gMjtcclxuICAgICAgICAgICAgY29uc3QgdG9wUHJldmlld1Bvc2l0aW9uID0gdGFyZ2V0VG9wIC0gcHJldmlld0hlaWdodCAtIFBSRVZJRVdfT0ZGU0VUO1xyXG4gICAgICAgICAgICBjb25zdCBib3R0b21QcmV2aWV3UG9zaXRpb24gPSB0YXJnZXRCb3R0b20gKyBQUkVWSUVXX09GRlNFVDtcclxuICAgICAgICAgICAgY29uc3QgbGVmdFByZXZpZXdQb3NpdGlvbiA9IHRhcmdldExlZnQgKyB0YXJnZXRXaWR0aCAvIDIgLSBwcmV2aWV3V2lkdGggLyAyO1xyXG4gICAgICAgICAgICBpZiAodGFyZ2V0VG9wID4gcHJldmlld0hlaWdodCArIFBSRVZJRVdfT0ZGU0VUKSB7XHJcbiAgICAgICAgICAgICAgICBwcmV2aWV3UmVmLmN1cnJlbnQuc3R5bGUudG9wID0gYCR7dG9wUHJldmlld1Bvc2l0aW9ufXB4YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmICh0YXJnZXRCb3R0b20gKyBwcmV2aWV3SGVpZ2h0ID4gY2FudmFzV3JhcHBlckJvdHRvbSAmJlxyXG4gICAgICAgICAgICAgICAgdGFyZ2V0Qm90dG9tID4gY2FudmFzV3JhcHBlckJvdHRvbSAvIDIpIHtcclxuICAgICAgICAgICAgICAgIHByZXZpZXdSZWYuY3VycmVudC5zdHlsZS50b3AgPSBgJHt0b3BQcmV2aWV3UG9zaXRpb259cHhgO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcHJldmlld1JlZi5jdXJyZW50LnN0eWxlLnRvcCA9IGAke2JvdHRvbVByZXZpZXdQb3NpdGlvbn1weGA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRhcmdldENlbnRlclggPiBwcmV2aWV3V2lkdGggLyAyICYmXHJcbiAgICAgICAgICAgICAgICB0YXJnZXRDZW50ZXJYICsgcHJldmlld1dpZHRoIC8gMiA8IGNhbnZhc1dyYXBwZXJSaWdodCkge1xyXG4gICAgICAgICAgICAgICAgcHJldmlld1JlZi5jdXJyZW50LnN0eWxlLmxlZnQgPSBgJHtsZWZ0UHJldmlld1Bvc2l0aW9ufXB4YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmICh0YXJnZXRDZW50ZXJYIDwgcHJldmlld1dpZHRoIC8gMikge1xyXG4gICAgICAgICAgICAgICAgcHJldmlld1JlZi5jdXJyZW50LnN0eWxlLmxlZnQgPSBgJHtjYW52YXNXcmFwcGVyTGVmdH1weGA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBTQ1JPTExfQkFSX09GRlNFVCA9IDEwO1xyXG4gICAgICAgICAgICAgICAgcHJldmlld1JlZi5jdXJyZW50LnN0eWxlLmxlZnQgPSBgJHtjYW52YXNXcmFwcGVyUmlnaHQgLSBwcmV2aWV3V2lkdGggLSBTQ1JPTExfQkFSX09GRlNFVH1weGA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoaXNQcmV2aWV3VmlzaWJsZSkge1xyXG4gICAgICAgICAgICBzZXRJc1ByZXZpZXdWaXNpYmxlKGZhbHNlKTtcclxuICAgICAgICAgICAgcHJldmlld1JlZi5jdXJyZW50LnNldEF0dHJpYnV0ZSgnc3R5bGUnLCAnJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW3ByZXZpZXddKTtcclxuICAgIGlmICghcHJldmlldykge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChfanN4cyhQcmV2aWV3Q29udGFpbmVyLCB7IHJlZjogcHJldmlld1JlZiwgc3R5bGU6IHsgLi4ucHJldmlldz8uc3R5bGUgfSwgY2hpbGRyZW46IFtwcmV2aWV3LnR5cGUgPT09IFByZXZpZXdUeXBlLk1vbm9tZXIgJiYgX2pzeChNb25vbWVyUHJldmlldywge30pLCBwcmV2aWV3LnR5cGUgPT09IFByZXZpZXdUeXBlLlByZXNldCAmJiBfanN4KFByZXNldFByZXZpZXcsIHt9KSwgcHJldmlldy50eXBlID09PSBQcmV2aWV3VHlwZS5Cb25kICYmIF9qc3goQm9uZFByZXZpZXcsIHt9KSwgcHJldmlldy50eXBlID09PSBQcmV2aWV3VHlwZS5BbWJpZ3VvdXNNb25vbWVyICYmIChfanN4KEFtYmlndW91c01vbm9tZXJQcmV2aWV3LCB7IHByZXZpZXc6IHByZXZpZXcgfSkpXSB9KSk7XHJcbn07XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVByZXZpZXcuanMubWFwIl19 */");
var Preview = function Preview() {
  var preview = useAppSelector(selectShowPreview);
  var previewRef = useRef(null);
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    isPreviewVisible = _useState2[0],
    setIsPreviewVisible = _useState2[1];
  useEffect(function () {
    if (!previewRef.current || preview.style) {
      return;
    }
    if (preview && preview.type) {
      var _previewRef$current, _ZoomTool$instance, _preview$target;
      previewRef.current.setAttribute('style', '');
      setIsPreviewVisible(true);
      var PREVIEW_OFFSET = 5;
      var previewBoundingClientRect = (_previewRef$current = previewRef.current) === null || _previewRef$current === void 0 ? void 0 : _previewRef$current.getBoundingClientRect();
      var previewHeight = (previewBoundingClientRect === null || previewBoundingClientRect === void 0 ? void 0 : previewBoundingClientRect.height) || 0;
      var previewWidth = (previewBoundingClientRect === null || previewBoundingClientRect === void 0 ? void 0 : previewBoundingClientRect.width) || 0;
      var canvasWrapperBoundingClientRect = (_ZoomTool$instance = ZoomTool.instance) === null || _ZoomTool$instance === void 0 || (_ZoomTool$instance = _ZoomTool$instance.canvasWrapper.node()) === null || _ZoomTool$instance === void 0 ? void 0 : _ZoomTool$instance.getBoundingClientRect();
      var canvasWrapperBottom = (canvasWrapperBoundingClientRect === null || canvasWrapperBoundingClientRect === void 0 ? void 0 : canvasWrapperBoundingClientRect.bottom) || 0;
      var canvasWrapperLeft = (canvasWrapperBoundingClientRect === null || canvasWrapperBoundingClientRect === void 0 ? void 0 : canvasWrapperBoundingClientRect.left) || 0;
      var canvasWrapperRight = (canvasWrapperBoundingClientRect === null || canvasWrapperBoundingClientRect === void 0 ? void 0 : canvasWrapperBoundingClientRect.right) || 0;
      var targetBoundingClientRect = (_preview$target = preview.target) === null || _preview$target === void 0 ? void 0 : _preview$target.getBoundingClientRect();
      var targetTop = (targetBoundingClientRect === null || targetBoundingClientRect === void 0 ? void 0 : targetBoundingClientRect.top) || 0;
      var targetBottom = (targetBoundingClientRect === null || targetBoundingClientRect === void 0 ? void 0 : targetBoundingClientRect.bottom) || 0;
      var targetLeft = (targetBoundingClientRect === null || targetBoundingClientRect === void 0 ? void 0 : targetBoundingClientRect.left) || 0;
      var targetWidth = (targetBoundingClientRect === null || targetBoundingClientRect === void 0 ? void 0 : targetBoundingClientRect.width) || 0;
      var targetCenterX = targetLeft - targetWidth / 2;
      var topPreviewPosition = targetTop - previewHeight - PREVIEW_OFFSET;
      var bottomPreviewPosition = targetBottom + PREVIEW_OFFSET;
      var leftPreviewPosition = targetLeft + targetWidth / 2 - previewWidth / 2;
      if (targetTop > previewHeight + PREVIEW_OFFSET) {
        previewRef.current.style.top = "".concat(topPreviewPosition, "px");
      } else if (targetBottom + previewHeight > canvasWrapperBottom && targetBottom > canvasWrapperBottom / 2) {
        previewRef.current.style.top = "".concat(topPreviewPosition, "px");
      } else {
        previewRef.current.style.top = "".concat(bottomPreviewPosition, "px");
      }
      if (targetCenterX > previewWidth / 2 && targetCenterX + previewWidth / 2 < canvasWrapperRight) {
        previewRef.current.style.left = "".concat(leftPreviewPosition, "px");
      } else if (targetCenterX < previewWidth / 2) {
        previewRef.current.style.left = "".concat(canvasWrapperLeft, "px");
      } else {
        var SCROLL_BAR_OFFSET = 10;
        previewRef.current.style.left = "".concat(canvasWrapperRight - previewWidth - SCROLL_BAR_OFFSET, "px");
      }
    } else if (isPreviewVisible) {
      setIsPreviewVisible(false);
      previewRef.current.setAttribute('style', '');
    }
  }, [preview]);
  if (!preview) {
    return null;
  }
  return jsxs(PreviewContainer, {
    ref: previewRef,
    style: _objectSpread$1({}, preview === null || preview === void 0 ? void 0 : preview.style),
    children: [preview.type === PreviewType.Monomer && jsx(StyledPreview$1, {}), preview.type === PreviewType.Preset && jsx(PresetStyledPreview, {}), preview.type === PreviewType.Bond && jsx(StyledPreview, {}), preview.type === PreviewType.AmbiguousMonomer && jsx(AmbiguousMonomerPreview, {
      preview: preview
    })]
  });
};

var SequenceTypeButton = _styled(Button$1, process.env.NODE_ENV === "production" ? {
  target: "e1brfei30"
} : {
  target: "e1brfei30",
  label: "SequenceTypeButton"
})(function (_ref) {
  var theme = _ref.theme,
    variant = _ref.variant;
  return {
    color: variant === 'outlined' ? theme.ketcher.color.text.primary : theme.ketcher.color.button.text.primary,
    boxShadow: 'none',
    transition: 'none',
    display: 'flex',
    justifyContent: 'center',
    alignItems: 'center',
    cursor: 'pointer',
    padding: '4px 8px',
    border: variant === 'outlined' ? theme.ketcher.outline.small : 'none',
    background: variant === 'outlined' ? theme.ketcher.color.background.primary : theme.ketcher.color.button.group.active,
    borderRadius: theme.ketcher.border.radius.regular,
    textTransform: 'none',
    fontSize: theme.ketcher.font.size.regular,
    fontWeight: theme.ketcher.font.weight.regular,
    ':hover': {
      color: variant === 'outlined' ? theme.ketcher.color.text.dark : theme.ketcher.color.button.text.primary,
      background: variant === 'outlined' ? theme.ketcher.color.background.primary : theme.ketcher.color.button.group.hover,
      boxShadow: 'none'
    },
    ':disabled': {
      cursor: 'auto',
      background: '#e1e5ea',
      outline: 'none'
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlcXVlbmNlVHlwZUdyb3VwQnV0dG9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3QjJCIiwiZmlsZSI6IlNlcXVlbmNlVHlwZUdyb3VwQnV0dG9uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzLCBGcmFnbWVudCBhcyBfRnJhZ21lbnQgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZUFwcERpc3BhdGNoLCB1c2VBcHBTZWxlY3RvciwgdXNlTGF5b3V0TW9kZSB9IGZyb20gXCIuLi8uLi9ob29rc1wiO1xyXG5pbXBvcnQgeyBzZWxlY3RFZGl0b3IsIHNlbGVjdElzU2VxdWVuY2VFZGl0SW5STkFCdWlsZGVyTW9kZSwgfSBmcm9tIFwiLi4vLi4vc3RhdGUvY29tbW9uXCI7XHJcbmltcG9ydCB7IFNlcXVlbmNlVHlwZSB9IGZyb20gJ2tldGNoZXItY29yZSc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uR3JvdXAsIEJ1dHRvbiwgQm94IH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmltcG9ydCB7IHNldFNlbGVjdGVkVGFiSW5kZXggfSBmcm9tIFwiLi4vLi4vc3RhdGUvbGlicmFyeVwiO1xyXG5pbXBvcnQgeyBMSUJSQVJZX1RBQl9JTkRFWCwgTU9OT01FUl9UWVBFUyB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcclxuY29uc3QgU2VxdWVuY2VUeXBlQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikoKHsgdGhlbWUsIHZhcmlhbnQgfSkgPT4gKHtcclxuICAgIGNvbG9yOiB2YXJpYW50ID09PSAnb3V0bGluZWQnXHJcbiAgICAgICAgPyB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQucHJpbWFyeVxyXG4gICAgICAgIDogdGhlbWUua2V0Y2hlci5jb2xvci5idXR0b24udGV4dC5wcmltYXJ5LFxyXG4gICAgYm94U2hhZG93OiAnbm9uZScsXHJcbiAgICB0cmFuc2l0aW9uOiAnbm9uZScsXHJcbiAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXHJcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcclxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxyXG4gICAgcGFkZGluZzogJzRweCA4cHgnLFxyXG4gICAgYm9yZGVyOiB2YXJpYW50ID09PSAnb3V0bGluZWQnID8gdGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsIDogJ25vbmUnLFxyXG4gICAgYmFja2dyb3VuZDogdmFyaWFudCA9PT0gJ291dGxpbmVkJ1xyXG4gICAgICAgID8gdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICA6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLmdyb3VwLmFjdGl2ZSxcclxuICAgIGJvcmRlclJhZGl1czogdGhlbWUua2V0Y2hlci5ib3JkZXIucmFkaXVzLnJlZ3VsYXIsXHJcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXHJcbiAgICBmb250U2l6ZTogdGhlbWUua2V0Y2hlci5mb250LnNpemUucmVndWxhcixcclxuICAgIGZvbnRXZWlnaHQ6IHRoZW1lLmtldGNoZXIuZm9udC53ZWlnaHQucmVndWxhcixcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgY29sb3I6IHZhcmlhbnQgPT09ICdvdXRsaW5lZCdcclxuICAgICAgICAgICAgPyB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQuZGFya1xyXG4gICAgICAgICAgICA6IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLnRleHQucHJpbWFyeSxcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXJpYW50ID09PSAnb3V0bGluZWQnXHJcbiAgICAgICAgICAgID8gdGhlbWUua2V0Y2hlci5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnlcclxuICAgICAgICAgICAgOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5ncm91cC5ob3ZlcixcclxuICAgICAgICBib3hTaGFkb3c6ICdub25lJyxcclxuICAgIH0sXHJcbiAgICAnOmRpc2FibGVkJzoge1xyXG4gICAgICAgIGN1cnNvcjogJ2F1dG8nLFxyXG4gICAgICAgIGJhY2tncm91bmQ6ICcjZTFlNWVhJyxcclxuICAgICAgICBvdXRsaW5lOiAnbm9uZScsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBTZXF1ZW5jZVR5cGVHcm91cEJ1dHRvbiA9ICgpID0+IHtcclxuICAgIGNvbnN0IGVkaXRvciA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEVkaXRvcik7XHJcbiAgICBjb25zdCBbYWN0aXZlU2VxdWVuY2VUeXBlLCBzZXRBY3RpdmVTZXF1ZW5jZVR5cGVdID0gdXNlU3RhdGUoZWRpdG9yPy5ldmVudHMuY2hhbmdlU2VxdWVuY2VUeXBlRW50ZXJNb2RlKTtcclxuICAgIGNvbnN0IFtpc1NlcXVlbmNlTW9kZSwgc2V0SXNTZXF1ZW5jZU1vZGVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgaXNTZXF1ZW5jZUVkaXRJblJOQUJ1aWxkZXJNb2RlID0gdXNlQXBwU2VsZWN0b3Ioc2VsZWN0SXNTZXF1ZW5jZUVkaXRJblJOQUJ1aWxkZXJNb2RlKTtcclxuICAgIGNvbnN0IGxheW91dE1vZGUgPSB1c2VMYXlvdXRNb2RlKCk7XHJcbiAgICBjb25zdCBpc0Rpc2FibGVkID0gISFpc1NlcXVlbmNlRWRpdEluUk5BQnVpbGRlck1vZGU7XHJcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZUFwcERpc3BhdGNoKCk7XHJcbiAgICBjb25zdCBvblRvZ2dsZVNlcXVlbmNlTW9kZSA9IChkYXRhKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbW9kZSA9IHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JyA/IGRhdGEubW9kZSA6IGRhdGE7XHJcbiAgICAgICAgc2V0SXNTZXF1ZW5jZU1vZGUobW9kZSA9PT0gJ3NlcXVlbmNlLWxheW91dC1tb2RlJyk7XHJcbiAgICB9O1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBlZGl0b3I/LmV2ZW50cy5zZWxlY3RNb2RlLmFkZChvblRvZ2dsZVNlcXVlbmNlTW9kZSk7XHJcbiAgICAgICAgZWRpdG9yPy5ldmVudHMuY2hhbmdlU2VxdWVuY2VUeXBlRW50ZXJNb2RlLmFkZCgobW9kZSkgPT4ge1xyXG4gICAgICAgICAgICBkaXNwYXRjaChzZXRTZWxlY3RlZFRhYkluZGV4KG1vZGUgPT09IE1PTk9NRVJfVFlQRVMuUEVQVElERVxyXG4gICAgICAgICAgICAgICAgPyBMSUJSQVJZX1RBQl9JTkRFWC5QRVBUSURFU1xyXG4gICAgICAgICAgICAgICAgOiBMSUJSQVJZX1RBQl9JTkRFWC5STkEpKTtcclxuICAgICAgICAgICAgc2V0QWN0aXZlU2VxdWVuY2VUeXBlKG1vZGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGVkaXRvcj8uZXZlbnRzLmNoYW5nZVNlcXVlbmNlVHlwZUVudGVyTW9kZS5kaXNwYXRjaChTZXF1ZW5jZVR5cGUuUk5BKTtcclxuICAgICAgICByZXR1cm4gKCkgPT4ge1xyXG4gICAgICAgICAgICBlZGl0b3I/LmV2ZW50cy5zZWxlY3RNb2RlLnJlbW92ZShvblRvZ2dsZVNlcXVlbmNlTW9kZSk7XHJcbiAgICAgICAgfTtcclxuICAgIH0sIFtlZGl0b3JdKTtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgb25Ub2dnbGVTZXF1ZW5jZU1vZGUobGF5b3V0TW9kZSk7XHJcbiAgICB9LCBbbGF5b3V0TW9kZV0pO1xyXG4gICAgY29uc3QgaGFuZGxlU2VsZWN0U2VxdWVuY2VUeXBlID0gKHNlcXVlbmNlVHlwZSkgPT4ge1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMuY2hhbmdlU2VxdWVuY2VUeXBlRW50ZXJNb2RlLmRpc3BhdGNoKHNlcXVlbmNlVHlwZSk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIGlzU2VxdWVuY2VNb2RlID8gKF9qc3goX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBfanN4KEJveCwgeyBzeDogeyBtcjogMSwgbWw6IDEgfSwgY2hpbGRyZW46IF9qc3hzKEJ1dHRvbkdyb3VwLCB7IGRpc2FibGVkOiBpc0Rpc2FibGVkLCBjaGlsZHJlbjogW19qc3goU2VxdWVuY2VUeXBlQnV0dG9uLCB7IFwiZGF0YS10ZXN0aWRcIjogYCR7U2VxdWVuY2VUeXBlLlJOQX1CdG5gLCB0aXRsZTogXCJSTkEgKEN0cmwrQWx0K1IpXCIsIHZhcmlhbnQ6IGFjdGl2ZVNlcXVlbmNlVHlwZSA9PT0gU2VxdWVuY2VUeXBlLlJOQSA/ICdjb250YWluZWQnIDogJ291dGxpbmVkJywgb25DbGljazogKCkgPT4gaGFuZGxlU2VsZWN0U2VxdWVuY2VUeXBlKFNlcXVlbmNlVHlwZS5STkEpLCBjaGlsZHJlbjogXCJSTkFcIiB9KSwgX2pzeChTZXF1ZW5jZVR5cGVCdXR0b24sIHsgXCJkYXRhLXRlc3RpZFwiOiBgJHtTZXF1ZW5jZVR5cGUuRE5BfUJ0bmAsIHRpdGxlOiBcIkROQSAoQ3RybCtBbHQrRClcIiwgdmFyaWFudDogYWN0aXZlU2VxdWVuY2VUeXBlID09PSBTZXF1ZW5jZVR5cGUuRE5BID8gJ2NvbnRhaW5lZCcgOiAnb3V0bGluZWQnLCBvbkNsaWNrOiAoKSA9PiBoYW5kbGVTZWxlY3RTZXF1ZW5jZVR5cGUoU2VxdWVuY2VUeXBlLkROQSksIGNoaWxkcmVuOiBcIkROQVwiIH0pLCBfanN4KFNlcXVlbmNlVHlwZUJ1dHRvbiwgeyBcImRhdGEtdGVzdGlkXCI6IGAke1NlcXVlbmNlVHlwZS5QRVBUSURFfUJ0bmAsIHRpdGxlOiBcIlBlcHRpZGVzIChDdHJsK0FsdCtQKVwiLCB2YXJpYW50OiBhY3RpdmVTZXF1ZW5jZVR5cGUgPT09IFNlcXVlbmNlVHlwZS5QRVBUSURFXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdjb250YWluZWQnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdvdXRsaW5lZCcsIG9uQ2xpY2s6ICgpID0+IGhhbmRsZVNlbGVjdFNlcXVlbmNlVHlwZShTZXF1ZW5jZVR5cGUuUEVQVElERSksIGNoaWxkcmVuOiBcIlBFUFwiIH0pXSB9KSB9KSB9KSkgOiBudWxsO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1TZXF1ZW5jZVR5cGVHcm91cEJ1dHRvbi5qcy5tYXAiXX0= */");
var SequenceTypeGroupButton = function SequenceTypeGroupButton() {
  var editor = useAppSelector(selectEditor);
  var _useState = useState(editor === null || editor === void 0 ? void 0 : editor.events.changeSequenceTypeEnterMode),
    _useState2 = _slicedToArray(_useState, 2),
    activeSequenceType = _useState2[0],
    setActiveSequenceType = _useState2[1];
  var _useState3 = useState(false),
    _useState4 = _slicedToArray(_useState3, 2),
    isSequenceMode = _useState4[0],
    setIsSequenceMode = _useState4[1];
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var layoutMode = useLayoutMode();
  var isDisabled = !!isSequenceEditInRNABuilderMode;
  var dispatch = useAppDispatch();
  var onToggleSequenceMode = function onToggleSequenceMode(data) {
    var mode = _typeof(data) === 'object' ? data.mode : data;
    setIsSequenceMode(mode === 'sequence-layout-mode');
  };
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.selectMode.add(onToggleSequenceMode);
    editor === null || editor === void 0 || editor.events.changeSequenceTypeEnterMode.add(function (mode) {
      dispatch(setSelectedTabIndex(mode === MONOMER_TYPES.PEPTIDE ? LIBRARY_TAB_INDEX.PEPTIDES : LIBRARY_TAB_INDEX.RNA));
      setActiveSequenceType(mode);
    });
    editor === null || editor === void 0 || editor.events.changeSequenceTypeEnterMode.dispatch(SequenceType.RNA);
    return function () {
      editor === null || editor === void 0 || editor.events.selectMode.remove(onToggleSequenceMode);
    };
  }, [editor]);
  useEffect(function () {
    onToggleSequenceMode(layoutMode);
  }, [layoutMode]);
  var handleSelectSequenceType = function handleSelectSequenceType(sequenceType) {
    editor.events.changeSequenceTypeEnterMode.dispatch(sequenceType);
  };
  return isSequenceMode ? jsx(Fragment, {
    children: jsx(Box$1, {
      sx: {
        mr: 1,
        ml: 1
      },
      children: jsxs(ButtonGroup, {
        disabled: isDisabled,
        children: [jsx(SequenceTypeButton, {
          "data-testid": "".concat(SequenceType.RNA, "Btn"),
          title: "RNA (Ctrl+Alt+R)",
          variant: activeSequenceType === SequenceType.RNA ? 'contained' : 'outlined',
          onClick: function onClick() {
            return handleSelectSequenceType(SequenceType.RNA);
          },
          children: "RNA"
        }), jsx(SequenceTypeButton, {
          "data-testid": "".concat(SequenceType.DNA, "Btn"),
          title: "DNA (Ctrl+Alt+D)",
          variant: activeSequenceType === SequenceType.DNA ? 'contained' : 'outlined',
          onClick: function onClick() {
            return handleSelectSequenceType(SequenceType.DNA);
          },
          children: "DNA"
        }), jsx(SequenceTypeButton, {
          "data-testid": "".concat(SequenceType.PEPTIDE, "Btn"),
          title: "Peptides (Ctrl+Alt+P)",
          variant: activeSequenceType === SequenceType.PEPTIDE ? 'contained' : 'outlined',
          onClick: function onClick() {
            return handleSelectSequenceType(SequenceType.PEPTIDE);
          },
          children: "PEP"
        })]
      })
    })
  }) : null;
};

var shortcuts$2 = generateMenuShortcuts(hotkeysConfiguration);
function TopMenuComponent() {
  var dispatch = useAppDispatch();
  var activeTool = useAppSelector(selectEditorActiveTool);
  var editor = useAppSelector(selectEditor);
  var isSequenceEditInRNABuilderMode = useAppSelector(selectIsSequenceEditInRNABuilderMode);
  var activeMenuItems = [activeTool];
  var isDisabled = isSequenceEditInRNABuilderMode;
  var menuItemChanged = function menuItemChanged(name) {
    if (modalComponentList[name]) {
      dispatch(openModal(name));
    } else if (name === 'undo' || name === 'redo') {
      editor.events.selectHistory.dispatch(name);
    } else if (name === 'clear') {
      editor.events.selectTool.dispatch([name]);
      dispatch(selectTool('select-rectangle'));
      editor.events.selectTool.dispatch(['select-rectangle']);
      if (isSequenceEditInRNABuilderMode) resetRnaBuilderAfterSequenceUpdate(dispatch, editor);
    }
  };
  return jsxs(Menu, {
    onItemClick: menuItemChanged,
    activeMenuItems: activeMenuItems,
    isHorizontal: true,
    children: [jsxs(Menu.Group, {
      isHorizontal: true,
      divider: true,
      children: [jsx(Menu.Item, {
        itemId: "clear",
        title: "Clear Canvas (".concat(shortcuts$2.clear, ")"),
        testId: "clear-canvas"
      }), jsx(Menu.Item, {
        itemId: "open",
        title: "Open...",
        disabled: isDisabled,
        testId: "open-button"
      }), jsx(Menu.Item, {
        itemId: "save",
        title: "Save as...",
        testId: "save-button"
      })]
    }), jsxs(Menu.Group, {
      isHorizontal: true,
      children: [jsx(Menu.Item, {
        itemId: "undo",
        title: "Undo (".concat(shortcuts$2.undo, ")"),
        disabled: isDisabled,
        testId: "undo"
      }), jsx(Menu.Item, {
        itemId: "redo",
        title: "Redo (".concat(shortcuts$2.redo, ")"),
        disabled: isDisabled,
        testId: "redo"
      })]
    })]
  });
}

var shortcuts$1 = generateMenuShortcuts(hotkeysConfiguration);
function LeftMenuComponent() {
  var activeTool = useAppSelector(selectEditorActiveTool);
  var editor = useAppSelector(selectEditor);
  var isSequenceMode = useLayoutMode() === ModeTypes.sequence;
  var activeMenuItems = [activeTool];
  var menuItemChanged = function menuItemChanged(name) {
    editor.events.selectTool.dispatch([name, {
      toolName: name
    }]);
  };
  return jsxs(Menu, {
    testId: "left-toolbar",
    onItemClick: menuItemChanged,
    activeMenuItems: activeMenuItems,
    children: [jsxs(Menu.Group, {
      divider: true,
      children: [jsx(Menu.Item, {
        itemId: "hand",
        title: "Hand Tool",
        testId: "hand-tool"
      }), jsx(Menu.Item, {
        itemId: "select-rectangle",
        title: "Select Rectangle",
        testId: "select-rectangle"
      }), jsx(Menu.Item, {
        itemId: "erase",
        title: "Erase (".concat(shortcuts$1.erase, ")"),
        testId: "erase",
        disabled: isSequenceMode
      })]
    }), jsx(Menu.Group, {
      children: jsxs(Menu.Submenu, {
        disabled: isSequenceMode,
        testId: "bond-tool-submenu",
        needOpenByMenuItemClick: false,
        children: [jsx(Menu.Item, {
          itemId: "bond-single",
          title: "Single Bond (1)",
          testId: "single-bond",
          disabled: isSequenceMode
        }), jsx(Menu.Item, {
          itemId: "bond-hydrogen",
          title: "Hydrogen Bond (2)",
          testId: "hydrogen-bond",
          disabled: isSequenceMode
        })]
      })
    })]
  });
}

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)."; }
var ElementAndDropdown = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q7"
} : {
  target: "e1aw4j3q7",
  label: "ElementAndDropdown"
})(process.env.NODE_ENV === "production" ? {
  name: "bjn8wh",
  styles: "position:relative"
} : {
  name: "bjn8wh",
  styles: "position:relative",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFZ0QiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBCdXR0b24sIFBvcG92ZXIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuZXhwb3J0IGNvbnN0IEVsZW1lbnRBbmREcm9wZG93biA9IHN0eWxlZCgnZGl2JykgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5leHBvcnQgY29uc3QgRHJvcERvd25CdXR0b24gPSBzdHlsZWQoQnV0dG9uKSBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZHJvcGRvd24ucHJpbWFyeX07XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICAmIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBab29tTGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIHdpZHRoOiAzNXB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3Bkb3duID0gc3R5bGVkKFBvcG92ZXIpIGBcbiAgJiAuTXVpUG9wb3Zlci1wYXBlciB7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIHdpZHRoOiAxNzVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCA0cHggNHB4O1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQ29udGVudCA9IHN0eWxlZCgnZGl2JykgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUNvbnRyb2xCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgcGFkZGluZzogN3B4IDhweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZHJvcGRvd24ucHJpbWFyeX07XG5gO1xyXG5leHBvcnQgY29uc3QgU2hvcnRjdXRMYWJlbCA9IHN0eWxlZCgnc3BhbicpIGBcbiAgY29sb3I6ICNjYWQzZGQ7XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0JykgYFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2FkM2RkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDNweCA4cHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodH07XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5ob3Zlcn07XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5jb2xvcn07XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6OmFmdGVyLFxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
});
var DropDownButton = _styled(Button$1, process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q6"
} : {
  target: "e1aw4j3q6",
  label: "DropDownButton"
})("display:flex;color:", function (_ref) {
  var theme = _ref.theme;
  return theme.ketcher.color.dropdown.primary;
}, ";padding-right:0;padding-left:0;& svg{margin-left:2px;width:1rem;height:1rem;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLNkMiLCJmaWxlIjoic3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBCdXR0b24sIFBvcG92ZXIgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcclxuZXhwb3J0IGNvbnN0IEVsZW1lbnRBbmREcm9wZG93biA9IHN0eWxlZCgnZGl2JykgYFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xyXG5leHBvcnQgY29uc3QgRHJvcERvd25CdXR0b24gPSBzdHlsZWQoQnV0dG9uKSBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZHJvcGRvd24ucHJpbWFyeX07XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICAmIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBab29tTGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIHdpZHRoOiAzNXB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3Bkb3duID0gc3R5bGVkKFBvcG92ZXIpIGBcbiAgJiAuTXVpUG9wb3Zlci1wYXBlciB7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIHdpZHRoOiAxNzVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDBweCA0cHggNHB4O1xuICAgIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5zaGFkb3cucmVndWxhcn07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQ29udGVudCA9IHN0eWxlZCgnZGl2JykgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUNvbnRyb2xCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSBgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuZm9udC5zaXplLnJlZ3VsYXJ9O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgcGFkZGluZzogN3B4IDhweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IuZHJvcGRvd24ucHJpbWFyeX07XG5gO1xyXG5leHBvcnQgY29uc3QgU2hvcnRjdXRMYWJlbCA9IHN0eWxlZCgnc3BhbicpIGBcbiAgY29sb3I6ICNjYWQzZGQ7XG5gO1xyXG5leHBvcnQgY29uc3QgU3R5bGVkSW5wdXQgPSBzdHlsZWQoJ2lucHV0JykgYFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2FkM2RkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDNweCA4cHg7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuY29sb3IudGV4dC5saWdodH07XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5tZWRpdW19O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmlucHV0LmJvcmRlci5ob3Zlcn07XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5jb2xvcn07XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICY6OmFmdGVyLFxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbmA7XHJcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXX0= */"));
var ZoomLabel = _styled('span', process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q5"
} : {
  target: "e1aw4j3q5",
  label: "ZoomLabel"
})(process.env.NODE_ENV === "production" ? {
  name: "td41hq",
  styles: "width:35px"
} : {
  name: "td41hq",
  styles: "width:35px",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQndDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
});
var Dropdown = _styled(Popover, process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q4"
} : {
  target: "e1aw4j3q4",
  label: "Dropdown"
})("& .MuiPopover-paper{padding:8px;width:175px;border:none;border-radius:0px 0px 4px 4px;box-shadow:", function (_ref2) {
  var theme = _ref2.theme;
  return theme.ketcher.shadow.regular;
}, ";box-sizing:border-box;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQndDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */"));
var DropDownContent = _styled('div', process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q3"
} : {
  target: "e1aw4j3q3",
  label: "DropDownContent"
})(process.env.NODE_ENV === "production" ? {
  name: "5s1n17",
  styles: "display:flex;flex-direction:column;white-space:nowrap;word-break:keep-all;background:white"
} : {
  name: "5s1n17",
  styles: "display:flex;flex-direction:column;white-space:nowrap;word-break:keep-all;background:white",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QjZDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
});
var ZoomControlButton = _styled(Button$1, process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q2"
} : {
  target: "e1aw4j3q2",
  label: "ZoomControlButton"
})("display:flex;justify-content:space-between;font-size:", function (_ref3) {
  var theme = _ref3.theme;
  return theme.ketcher.font.size.regular;
}, ";line-height:14px;padding:7px 8px;text-transform:none;color:", function (_ref4) {
  var theme = _ref4.theme;
  return theme.ketcher.color.dropdown.primary;
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQ2dEIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */"));
var ShortcutLabel = _styled('span', process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q1"
} : {
  target: "e1aw4j3q1",
  label: "ShortcutLabel"
})(process.env.NODE_ENV === "production" ? {
  name: "btyqtq",
  styles: "color:#cad3dd"
} : {
  name: "btyqtq",
  styles: "color:#cad3dd",
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QzRDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */",
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
});
var StyledInput = _styled('input', process.env.NODE_ENV === "production" ? {
  target: "e1aw4j3q0"
} : {
  target: "e1aw4j3q0",
  label: "StyledInput"
})("border:1px solid #cad3dd;border-radius:4px;padding:3px 8px;color:", function (_ref5) {
  var theme = _ref5.theme;
  return theme.ketcher.color.text.light;
}, ";font-size:", function (_ref6) {
  var theme = _ref6.theme;
  return theme.ketcher.font.size.medium;
}, ";line-height:16px;margin-bottom:8px;&:hover{border-color:", function (_ref7) {
  var theme = _ref7.theme;
  return theme.ketcher.color.input.border.hover;
}, ";}&:active,&:focus{border-color:", function (_ref8) {
  var theme = _ref8.theme;
  return theme.ketcher.outline.selected.color;
}, ";outline:none;}&::after,&::before{display:none;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpRDJDIiwiZmlsZSI6InN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHsgQnV0dG9uLCBQb3BvdmVyIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XHJcbmV4cG9ydCBjb25zdCBFbGVtZW50QW5kRHJvcGRvd24gPSBzdHlsZWQoJ2RpdicpIGBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuYDtcclxuZXhwb3J0IGNvbnN0IERyb3BEb3duQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5gO1xyXG5leHBvcnQgY29uc3QgWm9vbUxhYmVsID0gc3R5bGVkKCdzcGFuJykgYFxuICB3aWR0aDogMzVweDtcbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wZG93biA9IHN0eWxlZChQb3BvdmVyKSBgXG4gICYgLk11aVBvcG92ZXItcGFwZXIge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB3aWR0aDogMTc1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggNHB4IDRweDtcbiAgICBib3gtc2hhZG93OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmtldGNoZXIuc2hhZG93LnJlZ3VsYXJ9O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbmA7XHJcbmV4cG9ydCBjb25zdCBEcm9wRG93bkNvbnRlbnQgPSBzdHlsZWQoJ2RpdicpIGBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuYDtcclxuZXhwb3J0IGNvbnN0IFpvb21Db250cm9sQnV0dG9uID0gc3R5bGVkKEJ1dHRvbikgYFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmZvbnQuc2l6ZS5yZWd1bGFyfTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIHBhZGRpbmc6IDdweCA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLmRyb3Bkb3duLnByaW1hcnl9O1xuYDtcclxuZXhwb3J0IGNvbnN0IFNob3J0Y3V0TGFiZWwgPSBzdHlsZWQoJ3NwYW4nKSBgXG4gIGNvbG9yOiAjY2FkM2RkO1xuYDtcclxuZXhwb3J0IGNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKCdpbnB1dCcpIGBcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhZDNkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAzcHggOHB4O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLmNvbG9yLnRleHQubGlnaHR9O1xuICBmb250LXNpemU6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5mb250LnNpemUubWVkaXVtfTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUua2V0Y2hlci5jb2xvci5pbnB1dC5ib3JkZXIuaG92ZXJ9O1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5rZXRjaGVyLm91dGxpbmUuc2VsZWN0ZWQuY29sb3J9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlcixcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5gO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl19 */"));

var shortcuts = generateMenuShortcuts(hotkeysConfiguration);
var getIntegerFromString = function getIntegerFromString(zoomInput) {
  var zoomNumber = parseInt(zoomInput || '');
  if (isNaN(zoomNumber)) {
    return 0;
  }
  return zoomNumber;
};
var getValidZoom = function getValidZoom(zoom, currentZoom) {
  if (zoom === 0) {
    return currentZoom;
  }
  var minAllowed = ZoomTool.instance.MINZOOMSCALE * 100;
  var maxAllowed = ZoomTool.instance.MAXZOOMSCALE * 100;
  if (zoom < minAllowed) {
    return minAllowed;
  }
  if (zoom > maxAllowed) {
    return maxAllowed;
  }
  return zoom;
};
var updateInputString = function updateInputString(zoom, inputElement) {
  if (!inputElement) return;
  inputElement.value = "".concat(Math.round(zoom), "%");
};

var ZoomInput = function ZoomInput(_ref) {
  var onZoomSubmit = _ref.onZoomSubmit,
    currentZoom = _ref.currentZoom,
    inputRef = _ref.inputRef;
  var onKeyDown = useCallback(function (event) {
    var inputEl = inputRef.current;
    if (!inputEl) return;
    var zoomShortcuts = [shortcuts['zoom-out'], shortcuts['zoom-in']];
    if (!zoomShortcuts.includes(event.key)) event.nativeEvent.stopImmediatePropagation();
    if (event.key === 'Enter') {
      onZoomSubmit();
      inputEl.select();
    }
  }, [onZoomSubmit, inputRef, shortcuts]);
  var onFocusHandler = function onFocusHandler(event) {
    var el = event.target;
    el.select();
  };
  useEffect(function () {
    var inputEl = inputRef.current;
    updateInputString(currentZoom, inputEl);
    if (document.activeElement === inputEl) {
      inputEl === null || inputEl === void 0 || inputEl.select();
    }
  }, [currentZoom, inputRef]);
  useEffect(function () {
    var inputEl = inputRef.current;
    inputEl === null || inputEl === void 0 || inputEl.focus();
    inputEl === null || inputEl === void 0 || inputEl.select();
  }, [inputRef]);
  return jsx(StyledInput, {
    ref: inputRef,
    "data-testid": "zoom-value",
    onFocus: onFocusHandler,
    onKeyDown: onKeyDown
  });
};

var ZoomControls = function ZoomControls() {
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    isExpanded = _useState2[0],
    setIsExpanded = _useState2[1];
  var _useState3 = useState(100),
    _useState4 = _slicedToArray(_useState3, 2),
    currentZoom = _useState4[0],
    setCurrentZoom = _useState4[1];
  var containerRef = useRef(null);
  var inputRef = useRef(null);
  useEffect(function () {
    var _ZoomTool$instance;
    ZoomTool === null || ZoomTool === void 0 || (_ZoomTool$instance = ZoomTool.instance) === null || _ZoomTool$instance === void 0 || _ZoomTool$instance.subscribeOnZoomEvent(function () {
      var _ZoomTool$instance2;
      setCurrentZoom(Math.round((ZoomTool === null || ZoomTool === void 0 || (_ZoomTool$instance2 = ZoomTool.instance) === null || _ZoomTool$instance2 === void 0 ? void 0 : _ZoomTool$instance2.getZoomLevel()) * 100));
    });
  }, [ZoomTool === null || ZoomTool === void 0 ? void 0 : ZoomTool.instance]);
  var onZoomSubmit = useCallback(function () {
    var inputEl = inputRef.current;
    if (!inputEl) return;
    var userInput = getIntegerFromString(inputEl.value);
    if (userInput && userInput !== currentZoom) {
      var zoomToSet = getValidZoom(userInput, currentZoom);
      updateInputString(zoomToSet, inputEl);
      ZoomTool.instance.zoomTo(zoomToSet / 100);
    } else {
      updateInputString(currentZoom, inputEl);
    }
  }, [currentZoom]);
  var onClose = function onClose() {
    setIsExpanded(false);
  };
  var onExpand = function onExpand() {
    setIsExpanded(true);
  };
  var onZoomIn = function onZoomIn() {
    ZoomTool.instance.zoomIn();
  };
  var onZoomOut = function onZoomOut() {
    ZoomTool.instance.zoomOut();
  };
  var onZoomReset = function onZoomReset() {
    ZoomTool.instance.resetZoom();
  };
  return jsxs(ElementAndDropdown, {
    ref: containerRef,
    children: [jsxs(DropDownButton, {
      onClick: onExpand,
      "data-testid": "zoom-selector",
      children: [jsxs(ZoomLabel, {
        "data-testid": "zoom-input",
        children: [currentZoom, "%"]
      }), jsx(Icon, {
        name: "chevron"
      })]
    }), jsx(Dropdown, {
      open: isExpanded,
      onClose: onClose,
      anchorEl: containerRef.current,
      container: document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR),
      anchorOrigin: {
        vertical: 'bottom',
        horizontal: 'right'
      },
      transformOrigin: {
        vertical: 'top',
        horizontal: 'right'
      },
      children: jsxs(DropDownContent, {
        children: [jsx(ZoomInput, {
          onZoomSubmit: onZoomSubmit,
          inputRef: inputRef,
          currentZoom: currentZoom
        }), jsxs(ZoomControlButton, {
          "data-testid": "zoom-out-button",
          title: "Zoom Out",
          onClick: onZoomOut,
          children: [jsx("span", {
            children: "Zoom out"
          }), jsx(ShortcutLabel, {
            children: shortcuts['zoom-minus']
          })]
        }), jsxs(ZoomControlButton, {
          "data-testid": "zoom-in-button",
          title: "Zoom In",
          onClick: onZoomIn,
          children: [jsx("span", {
            children: "Zoom in"
          }), jsx(ShortcutLabel, {
            children: shortcuts['zoom-plus']
          })]
        }), jsxs(ZoomControlButton, {
          "data-testid": "reset-zoom-button",
          title: "Zoom 100%",
          onClick: onZoomReset,
          children: [jsx("span", {
            children: "Zoom 100%"
          }), jsx(ShortcutLabel, {
            children: shortcuts['zoom-reset']
          })]
        })]
      })
    })]
  });
};

var PolymerBondContextMenu = function PolymerBondContextMenu() {
  var editor = useAppSelector(selectEditor);
  var menuItems = [{
    name: 'edit_connection_points',
    title: 'Edit Connection Points...',
    disabled: false,
    hidden: function hidden(_ref) {
      var props = _ref.props;
      return !(props !== null && props !== void 0 && props.polymerBondRenderer);
    }
  }];
  var handleMenuChange = function handleMenuChange(_ref2) {
    var id = _ref2.id,
      props = _ref2.props;
    switch (id) {
      case 'edit_connection_points':
        {
          var polymerBond = props.polymerBondRenderer.polymerBond;
          editor.events.openMonomerConnectionModal.dispatch({
            firstMonomer: polymerBond.firstMonomer,
            secondMonomer: polymerBond.secondMonomer,
            polymerBond: polymerBond,
            isReconnectionDialog: true
          });
          editor.events.startNewSequence.dispatch(props.sequenceItemRenderer);
          break;
        }
    }
  };
  var ketcherEditorRootElement = document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR);
  return ketcherEditorRootElement ? createPortal(jsx(ContextMenu, {
    id: CONTEXT_MENU_ID.FOR_POLYMER_BOND,
    handleMenuChange: handleMenuChange,
    menuItems: menuItems
  }), ketcherEditorRootElement) : null;
};

function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var noPreviewTools = [ToolName.bondSingle, ToolName.selectRectangle];
var EditorEvents = function EditorEvents() {
  var editor = useAppSelector(selectEditor);
  var activeTool = useAppSelector(selectEditorActiveTool);
  var dispatch = useAppDispatch();
  var presets = useAppSelector(selectAllPresets);
  var hasAtLeastOneAntisense = useAppSelector(hasAntisenseChains);
  var handleMonomersLibraryUpdate = useCallback(function () {
    dispatch(loadMonomerLibrary(editor === null || editor === void 0 ? void 0 : editor.monomersLibrary));
  }, [editor]);
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.updateMonomersLibrary.add(handleMonomersLibraryUpdate);
    return function () {
      editor === null || editor === void 0 || editor.events.updateMonomersLibrary.remove(handleMonomersLibraryUpdate);
    };
  }, [editor]);
  useEffect(function () {
    var handler = function handler(_ref) {
      var _ref2 = _slicedToArray(_ref, 1),
        toolName = _ref2[0];
      if (toolName !== activeTool) {
        dispatch(selectTool(toolName));
      }
    };
    if (editor) {
      editor.events.error.add(function (errorText) {
        dispatch(openErrorTooltip(errorText));
      });
      editor.events.openErrorModal.add(function (errorData) {
        dispatch(openErrorModal(errorData));
      });
      dispatch(selectTool('select-rectangle'));
      editor.events.selectTool.dispatch(['select-rectangle']);
      editor.events.openMonomerConnectionModal.add(function (additionalProps) {
        return dispatch(openModal({
          name: 'monomerConnection',
          additionalProps: additionalProps
        }));
      });
      editor.events.openConfirmationDialog.add(function (additionalProps) {
        return dispatch(openModal({
          name: 'confirmationDialog',
          additionalProps: additionalProps
        }));
      });
      editor.events.selectTool.add(handler);
    }
    return function () {
      dispatch(selectTool(null));
      editor === null || editor === void 0 || editor.events.selectTool.remove(handler);
    };
  }, [editor]);
  var dispatchShowPreview = useCallback(function (payload) {
    return dispatch(showPreview(payload));
  }, [dispatch]);
  var debouncedShowPreview = useCallback(debounce(function (p) {
    return dispatchShowPreview(p);
  }, 500), [dispatchShowPreview]);
  useEffect(function () {
    var handler = function handler(_ref3) {
      var _ref4 = _slicedToArray(_ref3, 1),
        toolName = _ref4[0];
      if (toolName !== activeTool) {
        dispatch(selectTool(toolName));
      }
    };
    if (editor) {
      editor.events.error.add(function (errorText) {
        dispatch(openErrorTooltip(errorText));
      });
      editor.events.openErrorModal.add(function (errorData) {
        dispatch(openErrorModal(errorData));
      });
      dispatch(selectTool('select-rectangle'));
      editor.events.selectTool.dispatch(['select-rectangle']);
      editor.events.openMonomerConnectionModal.add(function (additionalProps) {
        return dispatch(openModal({
          name: 'monomerConnection',
          additionalProps: additionalProps
        }));
      });
      editor.events.selectTool.add(handler);
    }
    return function () {
      dispatch(selectTool(null));
      editor === null || editor === void 0 || editor.events.selectTool.remove(handler);
    };
  }, [editor]);
  var handleOpenBondPreview = useCallback(function (polymerBond, style) {
    var previewData = {
      type: PreviewType.Bond,
      polymerBond: polymerBond,
      style: style
    };
    debouncedShowPreview(previewData);
  }, [debouncedShowPreview]);
  var handleOpenPreview = useCallback(function (e) {
    var _e$target$__data__, _e$target$__data__2, _e$target$__data__3;
    var polymerBond = (_e$target$__data__ = e.target.__data__) === null || _e$target$__data__ === void 0 ? void 0 : _e$target$__data__.polymerBond;
    if (polymerBond && !polymerBond.finished || polymerBond instanceof HydrogenBond) {
      return;
    }
    if (polymerBond) {
      var style = calculateBondPreviewPosition(polymerBond, e.target.getBoundingClientRect());
      handleOpenBondPreview(polymerBond, style);
      return;
    }
    var sequenceNode = (_e$target$__data__2 = e.target.__data__) === null || _e$target$__data__2 === void 0 ? void 0 : _e$target$__data__2.node;
    var monomer = ((_e$target$__data__3 = e.target.__data__) === null || _e$target$__data__3 === void 0 ? void 0 : _e$target$__data__3.monomer) || (sequenceNode === null || sequenceNode === void 0 ? void 0 : sequenceNode.monomer);
    if (sequenceNode && sequenceNode instanceof BackBoneSequenceNode) {
      return;
    }
    if (monomer instanceof AmbiguousMonomer) {
      var ambiguousMonomerPreviewData = {
        type: PreviewType.AmbiguousMonomer,
        monomer: monomer.variantMonomerItem,
        target: e.target
      };
      debouncedShowPreview(ambiguousMonomerPreviewData);
      return;
    }
    var monomerItem = monomer.monomerItem;
    var attachmentPointsToBonds = _objectSpread({}, monomer.attachmentPointsToBonds);
    var isNucleotideOrNucleoside = sequenceNode instanceof Nucleotide || sequenceNode instanceof Nucleoside;
    if (isNucleotideOrNucleoside) {
      var _sequenceNode$phospha;
      var monomers = sequenceNode instanceof Nucleotide ? [sequenceNode.sugar.monomerItem, sequenceNode.rnaBase.monomerItem, (_sequenceNode$phospha = sequenceNode.phosphate) === null || _sequenceNode$phospha === void 0 ? void 0 : _sequenceNode$phospha.monomerItem] : [sequenceNode.sugar.monomerItem, sequenceNode.rnaBase.monomerItem];
      if (sequenceNode.rnaBase instanceof AmbiguousMonomer) {
        var _ambiguousMonomerPreviewData = {
          type: PreviewType.AmbiguousMonomer,
          monomer: sequenceNode.rnaBase.variantMonomerItem,
          presetMonomers: monomers,
          target: e.target
        };
        debouncedShowPreview(_ambiguousMonomerPreviewData);
        return;
      }
      var existingPreset = presets.find(function (preset) {
        var presetMonomers = [preset.sugar, preset.base, preset.phosphate];
        return monomers.every(function (monomer, index) {
          var _presetMonomers$index;
          return (monomer === null || monomer === void 0 ? void 0 : monomer.props.Name) === ((_presetMonomers$index = presetMonomers[index]) === null || _presetMonomers$index === void 0 ? void 0 : _presetMonomers$index.props.Name);
        });
      });
      var position;
      if (sequenceNode instanceof Nucleoside) {
        position = PresetPosition.ChainEnd;
      } else if (sequenceNode.firstMonomerInNode.R1AttachmentPoint !== undefined) {
        position = PresetPosition.ChainStart;
      } else {
        position = PresetPosition.ChainMiddle;
      }
      var presetPreviewData = {
        type: PreviewType.Preset,
        monomers: monomers,
        name: existingPreset === null || existingPreset === void 0 ? void 0 : existingPreset.name,
        idtAliases: existingPreset === null || existingPreset === void 0 ? void 0 : existingPreset.idtAliases,
        position: position,
        target: e.target
      };
      debouncedShowPreview(presetPreviewData);
      return;
    }
    var monomerPreviewData = {
      type: PreviewType.Monomer,
      monomer: monomerItem,
      attachmentPointsToBonds: attachmentPointsToBonds,
      target: e.target
    };
    debouncedShowPreview(monomerPreviewData);
  }, [handleOpenBondPreview, debouncedShowPreview, presets]);
  var handleClosePreview = useCallback(function () {
    debouncedShowPreview.cancel();
    dispatch(showPreview(undefined));
  }, [debouncedShowPreview, dispatch]);
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.mouseOverMonomer.add(handleOpenPreview);
    editor === null || editor === void 0 || editor.events.mouseLeaveMonomer.add(handleClosePreview);
    editor === null || editor === void 0 || editor.events.mouseOverSequenceItem.add(handleOpenPreview);
    editor === null || editor === void 0 || editor.events.mouseLeaveSequenceItem.add(handleClosePreview);
    editor === null || editor === void 0 || editor.events.mouseOverPolymerBond.add(handleOpenPreview);
    editor === null || editor === void 0 || editor.events.mouseLeavePolymerBond.add(handleClosePreview);
    var onMoveHandler = function onMoveHandler(e) {
      handleClosePreview();
      var isLeftClick = e.buttons === 1;
      if (!isLeftClick || !noPreviewTools.includes(activeTool)) {
        handleOpenPreview(e);
      }
    };
    editor === null || editor === void 0 || editor.events.mouseOnMoveMonomer.add(onMoveHandler);
    editor === null || editor === void 0 || editor.events.mouseOnMoveSequenceItem.add(onMoveHandler);
    editor === null || editor === void 0 || editor.events.mouseOnMovePolymerBond.add(onMoveHandler);
    return function () {
      editor === null || editor === void 0 || editor.events.mouseOverMonomer.remove(handleOpenPreview);
      editor === null || editor === void 0 || editor.events.mouseLeaveMonomer.remove(handleClosePreview);
      editor === null || editor === void 0 || editor.events.mouseOnMoveMonomer.remove(onMoveHandler);
      editor === null || editor === void 0 || editor.events.mouseOnMoveSequenceItem.remove(onMoveHandler);
      editor === null || editor === void 0 || editor.events.mouseOnMovePolymerBond.remove(onMoveHandler);
      editor === null || editor === void 0 || editor.events.mouseOverSequenceItem.remove(handleOpenPreview);
      editor === null || editor === void 0 || editor.events.mouseLeaveSequenceItem.remove(handleClosePreview);
      editor === null || editor === void 0 || editor.events.mouseOverPolymerBond.remove(handleOpenPreview);
      editor === null || editor === void 0 || editor.events.mouseLeavePolymerBond.remove(handleClosePreview);
    };
  }, [editor, activeTool, handleOpenPreview, handleClosePreview]);
  useEffect(function () {
    if (!hasAtLeastOneAntisense) {
      editor === null || editor === void 0 || editor.events.resetSequenceEditMode.dispatch();
    }
  }, [hasAtLeastOneAntisense]);
  return jsx(Fragment, {});
};

var SelectedMonomersContextMenu = function SelectedMonomersContextMenu(_ref) {
  var selectedMonomers = _ref.selectedMonomers;
  var editor = useAppSelector(selectEditor);
  var menuItems = [{
    name: 'copy',
    title: 'Copy'
  }, {
    name: 'create_antisense_rna_chain',
    title: 'Create Antisense RNA Strand',
    separator: false,
    disabled: isAntisenseCreationDisabled(selectedMonomers),
    hidden: function hidden(_ref2) {
      var _props$selectedMonome;
      var props = _ref2.props;
      return !(props !== null && props !== void 0 && (_props$selectedMonome = props.selectedMonomers) !== null && _props$selectedMonome !== void 0 && _props$selectedMonome.some(function (selectedMonomer) {
        return selectedMonomer instanceof RNABase && getSugarFromRnaBase(selectedMonomer) || selectedMonomer instanceof Sugar && getRnaBaseFromSugar(selectedMonomer);
      }));
    }
  }, {
    name: 'create_antisense_dna_chain',
    title: 'Create Antisense DNA Strand',
    separator: true,
    disabled: isAntisenseCreationDisabled(selectedMonomers),
    hidden: function hidden(_ref3) {
      var _props$selectedMonome2;
      var props = _ref3.props;
      return !(props !== null && props !== void 0 && (_props$selectedMonome2 = props.selectedMonomers) !== null && _props$selectedMonome2 !== void 0 && _props$selectedMonome2.some(function (selectedMonomer) {
        return selectedMonomer instanceof RNABase && getSugarFromRnaBase(selectedMonomer) || selectedMonomer instanceof Sugar && getRnaBaseFromSugar(selectedMonomer);
      }));
    }
  }, {
    name: 'delete',
    title: 'Delete'
  }];
  var handleMenuChange = function handleMenuChange(_ref4) {
    var id = _ref4.id;
    switch (id) {
      case 'copy':
        editor.events.copySelectedStructure.dispatch();
        break;
      case 'create_antisense_rna_chain':
        editor.events.createAntisenseChain.dispatch(false);
        break;
      case 'create_antisense_dna_chain':
        editor.events.createAntisenseChain.dispatch(true);
        break;
      case 'delete':
        editor.events.deleteSelectedStructure.dispatch();
        break;
    }
  };
  var ketcherEditorRootElement = document.querySelector(KETCHER_MACROMOLECULES_ROOT_NODE_SELECTOR);
  return ketcherEditorRootElement && createPortal(jsx(ContextMenu, {
    id: CONTEXT_MENU_ID.FOR_SELECTED_MONOMERS,
    handleMenuChange: handleMenuChange,
    menuItems: menuItems
  }), ketcherEditorRootElement);
};

var StyledButton = _styled(Button, process.env.NODE_ENV === "production" ? {
  target: "e1846tr80"
} : {
  target: "e1846tr80",
  label: "StyledButton"
})(function (_ref) {
  var theme = _ref.theme,
    isActive = _ref.isActive;
  return {
    width: '40px',
    height: '31px',
    backgroundColor: isActive ? theme.ketcher.color.button.group.active : 'white',
    marginRight: '8px',
    border: isActive ? theme.ketcher.outline.selected.color : theme.ketcher.outline.small,
    borderRadius: '4px',
    outline: 'none',
    ':hover': {
      backgroundColor: isActive ? theme.ketcher.color.button.group.hover : 'white'
    },
    ':hover svg': {
      fill: isActive ? 'white' : theme.ketcher.color.button.group.active
    }
  };
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNlcXVlbmNlU3luY0VkaXRNb2RlQnV0dG9uLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QnFCIiwiZmlsZSI6IlNlcXVlbmNlU3luY0VkaXRNb2RlQnV0dG9uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzLCBGcmFnbWVudCBhcyBfRnJhZ21lbnQgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ29weXJpZ2h0IDIwMjEgRVBBTSBTeXN0ZW1zXHJcbiAqXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XHJcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cclxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiAqXHJcbiAqICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxyXG4gKlxyXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXHJcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcclxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXHJcbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZUFwcFNlbGVjdG9yLCB1c2VMYXlvdXRNb2RlIH0gZnJvbSBcIi4uLy4uL2hvb2tzXCI7XHJcbmltcG9ydCB7IGhhc0FudGlzZW5zZUNoYWlucywgc2VsZWN0RWRpdG9yIH0gZnJvbSBcIi4uLy4uL3N0YXRlL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBNb2RlVHlwZXMgfSBmcm9tICdrZXRjaGVyLWNvcmUnO1xyXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XHJcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJ2tldGNoZXItcmVhY3QnO1xyXG5pbXBvcnQgeyBibHVyQWN0aXZlRWxlbWVudCB9IGZyb20gXCIuLi8uLi9oZWxwZXJzL2NhbnZhc1wiO1xyXG5jb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQoQnV0dG9uKSgoeyB0aGVtZSwgaXNBY3RpdmUgfSkgPT4gKHtcclxuICAgIHdpZHRoOiAnNDBweCcsXHJcbiAgICBoZWlnaHQ6ICczMXB4JyxcclxuICAgIGJhY2tncm91bmRDb2xvcjogaXNBY3RpdmVcclxuICAgICAgICA/IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLmdyb3VwLmFjdGl2ZVxyXG4gICAgICAgIDogJ3doaXRlJyxcclxuICAgIG1hcmdpblJpZ2h0OiAnOHB4JyxcclxuICAgIGJvcmRlcjogaXNBY3RpdmVcclxuICAgICAgICA/IHRoZW1lLmtldGNoZXIub3V0bGluZS5zZWxlY3RlZC5jb2xvclxyXG4gICAgICAgIDogdGhlbWUua2V0Y2hlci5vdXRsaW5lLnNtYWxsLFxyXG4gICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgIG91dGxpbmU6ICdub25lJyxcclxuICAgICc6aG92ZXInOiB7XHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBpc0FjdGl2ZVxyXG4gICAgICAgICAgICA/IHRoZW1lLmtldGNoZXIuY29sb3IuYnV0dG9uLmdyb3VwLmhvdmVyXHJcbiAgICAgICAgICAgIDogJ3doaXRlJyxcclxuICAgIH0sXHJcbiAgICAnOmhvdmVyIHN2Zyc6IHtcclxuICAgICAgICBmaWxsOiBpc0FjdGl2ZSA/ICd3aGl0ZScgOiB0aGVtZS5rZXRjaGVyLmNvbG9yLmJ1dHRvbi5ncm91cC5hY3RpdmUsXHJcbiAgICB9LFxyXG59KSk7XHJcbmV4cG9ydCBjb25zdCBTZXF1ZW5jZVN5bmNFZGl0TW9kZUJ1dHRvbiA9ICgpID0+IHtcclxuICAgIGNvbnN0IGVkaXRvciA9IHVzZUFwcFNlbGVjdG9yKHNlbGVjdEVkaXRvcik7XHJcbiAgICBjb25zdCBbaXNTZXF1ZW5jZVN5bmNFZGl0TW9kZSwgc2V0SXNTZXF1ZW5jZVN5bmNFZGl0TW9kZV0gPSB1c2VTdGF0ZSh0cnVlKTtcclxuICAgIGNvbnN0IGxheW91dE1vZGUgPSB1c2VMYXlvdXRNb2RlKCk7XHJcbiAgICBjb25zdCBpc1NlcXVlbmNlTW9kZSA9IGxheW91dE1vZGUgPT09IE1vZGVUeXBlcy5zZXF1ZW5jZTtcclxuICAgIGNvbnN0IGhhc0F0TGVhc3RPbmVBbnRpc2Vuc2UgPSB1c2VBcHBTZWxlY3RvcihoYXNBbnRpc2Vuc2VDaGFpbnMpO1xyXG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgaXNTZXF1ZW5jZVN5bmNFZGl0TW9kZU5ld1N0YXRlID0gIWlzU2VxdWVuY2VTeW5jRWRpdE1vZGU7XHJcbiAgICAgICAgc2V0SXNTZXF1ZW5jZVN5bmNFZGl0TW9kZShpc1NlcXVlbmNlU3luY0VkaXRNb2RlTmV3U3RhdGUpO1xyXG4gICAgICAgIGVkaXRvci5ldmVudHMudG9nZ2xlSXNTZXF1ZW5jZVN5bmNFZGl0TW9kZS5kaXNwYXRjaChpc1NlcXVlbmNlU3luY0VkaXRNb2RlTmV3U3RhdGUpO1xyXG4gICAgICAgIGJsdXJBY3RpdmVFbGVtZW50KCk7XHJcbiAgICB9O1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBpZiAoaXNTZXF1ZW5jZU1vZGUgJiYgaGFzQXRMZWFzdE9uZUFudGlzZW5zZSkge1xyXG4gICAgICAgICAgICBlZGl0b3IuZXZlbnRzLnRvZ2dsZUlzU2VxdWVuY2VTeW5jRWRpdE1vZGUuZGlzcGF0Y2goaXNTZXF1ZW5jZVN5bmNFZGl0TW9kZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW2lzU2VxdWVuY2VNb2RlLCBoYXNBdExlYXN0T25lQW50aXNlbnNlXSk7XHJcbiAgICByZXR1cm4gaXNTZXF1ZW5jZU1vZGUgJiYgaGFzQXRMZWFzdE9uZUFudGlzZW5zZSA/IChfanN4KF9GcmFnbWVudCwgeyBjaGlsZHJlbjogX2pzeChTdHlsZWRCdXR0b24sIHsgaXNBY3RpdmU6IGlzU2VxdWVuY2VTeW5jRWRpdE1vZGUsIG9uQ2xpY2s6IGhhbmRsZUNsaWNrLCBjaGlsZHJlbjogX2pzeHMoXCJzdmdcIiwgeyB3aWR0aDogXCIyNFwiLCBoZWlnaHQ6IFwiMjRcIiwgdmlld0JveDogXCIwIDAgMjQgMjRcIiwgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiwgZmlsbDogaXNTZXF1ZW5jZVN5bmNFZGl0TW9kZSA/ICd3aGl0ZScgOiAnIzMzMzMzMycsIGNoaWxkcmVuOiBbX2pzeChcInJlY3RcIiwgeyB4OiBcIjFcIiwgeTogXCIxLjVcIiwgd2lkdGg6IFwiMjJcIiwgaGVpZ2h0OiBcIjJcIiwgcng6IFwiMVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMi41XCIsIHk6IFwiMS41XCIsIHdpZHRoOiBcIjVcIiwgaGVpZ2h0OiBcIjEuNVwiLCByeDogXCIwLjc1XCIsIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMi41IDEuNSlcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjkuMzMzMzNcIiwgeTogXCIxLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCA5LjMzMzMzIDEuNSlcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjE2LjE2NjdcIiwgeTogXCIxLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSg5MCAxNi4xNjY3IDEuNSlcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjIzXCIsIHk6IFwiMS41XCIsIHdpZHRoOiBcIjVcIiwgaGVpZ2h0OiBcIjEuNVwiLCByeDogXCIwLjc1XCIsIHRyYW5zZm9ybTogXCJyb3RhdGUoOTAgMjMgMS41KVwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTIuMTY4NzMgMTQuMjcxNUMyLjA4OTYzIDE0LjM2NTIgMi4wMjUxOCAxNC40MjUzIDEuOTc1MzcgMTQuNDUxN0MxLjkyODUgMTQuNDc4IDEuODY5OSAxNC40OTEyIDEuNzk5NTkgMTQuNDkxMkMxLjY2MTg5IDE0LjQ5MTIgMS41NTA1NyAxNC40NDU4IDEuNDY1NjEgMTQuMzU1QzEuMzgzNTcgMTQuMjYxMiAxLjM0MjU2IDE0LjEwNzQgMS4zNDI1NiAxMy44OTM2VjEzLjI4NzFDMS4zNDI1NiAxMy4wNzAzIDEuMzgzNTcgMTIuOTE2NSAxLjQ2NTYxIDEyLjgyNTdDMS41NTA1NyAxMi43MzE5IDEuNjYxODkgMTIuNjg1MSAxLjc5OTU5IDEyLjY4NTFDMS45MDUwNiAxMi42ODUxIDEuOTkyOTUgMTIuNzEyOSAyLjA2MzI2IDEyLjc2ODZDMi4xMzY1IDEyLjgyNDIgMi4xOTIxNyAxMi45MTggMi4yMzAyNSAxMy4wNDk4QzIuMjY4MzQgMTMuMTc4NyAyLjMwNzg5IDEzLjI2NjYgMi4zNDg5MSAxMy4zMTM1QzIuNDMzODcgMTMuNDA0MyAyLjU4NDc1IDEzLjQ5NjYgMi44MDE1NCAxMy41OTAzQzMuMDE4MzQgMTMuNjg0MSAzLjI1NTY0IDEzLjczMSAzLjUxMzQ2IDEzLjczMUMzLjkxNDgyIDEzLjczMSA0LjI0NDQxIDEzLjYzNzIgNC41MDIyMyAxMy40NDk3QzQuNjY2MjkgMTMuMzM1NCA0Ljc0ODMyIDEzLjE5NDggNC43NDgzMiAxMy4wMjc4QzQuNzQ4MzIgMTIuOTE2NSA0LjcwODc3IDEyLjgxMjUgNC42Mjk2NyAxMi43MTU4QzQuNTUwNTcgMTIuNjE2MiA0LjQyMTY2IDEyLjUzNDIgNC4yNDI5NSAxMi40Njk3QzQuMTI1NzYgMTIuNDI1OCAzLjg2MzU1IDEyLjM2NTcgMy40NTYzMyAxMi4yODk2QzIuOTY0MTQgMTIuMTk4NyAyLjU5MjA3IDEyLjA4ODkgMi4zNDAxMiAxMS45NkMyLjA4ODE2IDExLjgzMTEgMS44ODg5NSAxMS42NDk0IDEuNzQyNDYgMTEuNDE1QzEuNTk1OTggMTEuMTgwNyAxLjUyMjczIDEwLjkyNzIgMS41MjI3MyAxMC42NTQ4QzEuNTIyNzMgMTAuMjI0MSAxLjcwMjkxIDkuODQ3NjYgMi4wNjMyNiA5LjUyNTM5QzIuNDIzNjEgOS4yMDAyIDIuODkyMzYgOS4wMzc2IDMuNDY5NTEgOS4wMzc2QzMuNzAwOTYgOS4wMzc2IDMuOTE0ODIgOS4wNjM5NiA0LjExMTExIDkuMTE2N0M0LjMxMDMzIDkuMTY2NSA0LjQ5MDUxIDkuMjQ0MTQgNC42NTE2NCA5LjM0OTYxQzQuNzY4ODMgOS4yMzUzNSA0Ljg4NjAyIDkuMTc4MjIgNS4wMDMyIDkuMTc4MjJDNS4xMzUwNCA5LjE3ODIyIDUuMjQxOTcgOS4yMjUxIDUuMzI0IDkuMzE4ODVDNS40MDg5NyA5LjQwOTY3IDUuNDUxNDUgOS41NjIwMSA1LjQ1MTQ1IDkuNzc1ODhWMTAuNDUyNkM1LjQ1MTQ1IDEwLjY2OTQgNS40MDg5NyAxMC44MjQ3IDUuMzI0IDEwLjkxODVDNS4yNDE5NyAxMS4wMDkzIDUuMTM1MDQgMTEuMDU0NyA1LjAwMzIgMTEuMDU0N0M0Ljg5MTg4IDExLjA1NDcgNC43OTUyIDExLjAyMSA0LjcxMzE2IDEwLjk1MzZDNC42NDg3MSAxMC45MDM4IDQuNjAwMzcgMTAuODA0MiA0LjU2ODE0IDEwLjY1NDhDNC41MzU5MiAxMC41MDU0IDQuNDk0OSAxMC4zOTg0IDQuNDQ1MSAxMC4zMzRDNC4zNjAxNCAxMC4yMjI3IDQuMjMyNyAxMC4xMjg5IDQuMDYyNzcgMTAuMDUyN0MzLjg5Mjg1IDkuOTc2NTYgMy42OTY1NiA5LjkzODQ4IDMuNDczOTEgOS45Mzg0OEMzLjE0ODcxIDkuOTM4NDggMi44OTA5IDEwLjAxNDYgMi43MDA0NyAxMC4xNjdDMi41MTI5NyAxMC4zMTY0IDIuNDE5MjIgMTAuNDczMSAyLjQxOTIyIDEwLjYzNzJDMi40MTkyMiAxMC43NDg1IDIuNDU3MyAxMC44NTY5IDIuNTMzNDggMTAuOTYyNEMyLjYxMjU4IDExLjA2NDkgMi43MjY4NCAxMS4xNDU1IDIuODc2MjUgMTEuMjA0MUMyLjk3NTg2IDExLjI0NTEgMy4yNTU2NCAxMS4zMTEgMy43MTU2MSAxMS40MDE5QzQuMTc4NSAxMS40OTI3IDQuNTMyOTkgMTEuNTkyMyA0Ljc3OTA4IDExLjcwMDdDNS4wMjgxMSAxMS44MDkxIDUuMjM0NjUgMTEuOTc5IDUuMzk4NzEgMTIuMjEwNEM1LjU2Mjc3IDEyLjQ0MTkgNS42NDQ4IDEyLjcxNzMgNS42NDQ4IDEzLjAzNjZDNS42NDQ4IDEzLjQ4MTkgNS40ODgwNyAxMy44Mzc5IDUuMTc0NTkgMTQuMTA0NUM0Ljc1ODU3IDE0LjQ1NjEgNC4yMjgzIDE0LjYzMTggMy41ODM3NyAxNC42MzE4QzMuMzM0NzUgMTQuNjMxOCAzLjA5MTU4IDE0LjYwMTEgMi44NTQyOCAxNC41Mzk2QzIuNjE5OSAxNC40ODEgMi4zOTEzOSAxNC4zOTE2IDIuMTY4NzMgMTQuMjcxNVpNOS42MTUgMTIuMjYzMlYxMy41OTkxSDEwLjIyMTRDMTAuNDM4MiAxMy41OTkxIDEwLjU5MjEgMTMuNjQxNiAxMC42ODI5IDEzLjcyNjZDMTAuNzc2NiAxMy44MDg2IDEwLjgyMzUgMTMuOTE3IDEwLjgyMzUgMTQuMDUxOEMxMC44MjM1IDE0LjE4MzYgMTAuNzc2NiAxNC4yOTIgMTAuNjgyOSAxNC4zNzdDMTAuNTkyMSAxNC40NTkgMTAuNDM4MiAxNC41IDEwLjIyMTQgMTQuNUg4LjEwNzY4QzcuODkzODEgMTQuNSA3Ljc0IDE0LjQ1OSA3LjY0NjI1IDE0LjM3N0M3LjU1NTQzIDE0LjI5MiA3LjUxMDAyIDE0LjE4MjEgNy41MTAwMiAxNC4wNDc0QzcuNTEwMDIgMTMuOTE1NSA3LjU1NTQzIDEzLjgwODYgNy42NDYyNSAxMy43MjY2QzcuNzQgMTMuNjQxNiA3Ljg5MzgxIDEzLjU5OTEgOC4xMDc2OCAxMy41OTkxSDguNzE0MTJWMTIuMjYzMkw3LjIyNDM4IDEwLjA3NDdDNy4wMjUxNiAxMC4wNzQ3IDYuODc4NjcgMTAuMDMyMiA2Ljc4NDkyIDkuOTQ3MjdDNi42OTQxIDkuODYyMyA2LjY0ODY5IDkuNzUzOTEgNi42NDg2OSA5LjYyMjA3QzYuNjQ4NjkgOS40ODczIDYuNjk0MSA5LjM3ODkxIDYuNzg0OTIgOS4yOTY4OEM2Ljg3ODY3IDkuMjExOTEgNy4wMzM5NSA5LjE2OTQzIDcuMjUwNzQgOS4xNjk0M0w4LjA2ODEzIDkuMTczODNDOC4yODQ5MiA5LjE3MzgzIDguNDM4NzMgOS4yMTQ4NCA4LjUyOTU1IDkuMjk2ODhDOC42MjMzIDkuMzc4OTEgOC42NzAxOCA5LjQ4NzMgOC42NzAxOCA5LjYyMjA3QzguNjcwMTggOS44MjQyMiA4LjU1MTUyIDkuOTc1MSA4LjMxNDIyIDEwLjA3NDdMOS4xNjY3NiAxMS4zMzE1TDEwLjAwMTcgMTAuMDc0N0M5Ljg2OTg4IDEwLjAyNDkgOS43NzYxMyA5Ljk2MTkxIDkuNzIwNDcgOS44ODU3NEM5LjY2NDggOS44MDk1NyA5LjYzNjk3IDkuNzIxNjggOS42MzY5NyA5LjYyMjA3QzkuNjM2OTcgOS40ODczIDkuNjgyMzggOS4zNzg5MSA5Ljc3MzIgOS4yOTY4OEM5Ljg2Njk1IDkuMjE0ODQgMTAuMDIyMiA5LjE3MjM2IDEwLjIzOSA5LjE2OTQzTDExLjA4NzIgOS4xNzM4M0MxMS4zMDQgOS4xNzM4MyAxMS40NTc4IDkuMjE0ODQgMTEuNTQ4NiA5LjI5Njg4QzExLjY0MjMgOS4zNzg5MSAxMS42ODkyIDkuNDg3MyAxMS42ODkyIDkuNjIyMDdDMTEuNjg5MiA5Ljc1Njg0IDExLjY0MjMgOS44NjY3IDExLjU0ODYgOS45NTE2NkMxMS40NTQ4IDEwLjAzMzcgMTEuMzAyNSAxMC4wNzQ3IDExLjA5MTYgMTAuMDc0N0w5LjYxNSAxMi4yNjMyWk0xMy43MDgyIDEwLjg3NDVWMTMuNTk5MUgxNC4wMzM0QzE0LjI1MDIgMTMuNTk5MSAxNC40MDQgMTMuNjQxNiAxNC40OTQ5IDEzLjcyNjZDMTQuNTg4NiAxMy44MDg2IDE0LjYzNTUgMTMuOTE3IDE0LjYzNTUgMTQuMDUxOEMxNC42MzU1IDE0LjE4MzYgMTQuNTg4NiAxNC4yOTIgMTQuNDk0OSAxNC4zNzdDMTQuNDA0IDE0LjQ1OSAxNC4yNTAyIDE0LjUgMTQuMDMzNCAxNC41SDEyLjg1MTNDMTIuNjM0NSAxNC41IDEyLjQ3OTIgMTQuNDU5IDEyLjM4NTUgMTQuMzc3QzEyLjI5NDcgMTQuMjkyIDEyLjI0OTMgMTQuMTgyMSAxMi4yNDkzIDE0LjA0NzRDMTIuMjQ5MyAxMy45MTg1IDEyLjI5NDcgMTMuODExNSAxMi4zODU1IDEzLjcyNjZDMTIuNDc2MyAxMy42NDE2IDEyLjYxNjkgMTMuNTk5MSAxMi44MDc0IDEzLjU5OTFWMTAuMDc0N0gxMi42NjY3QzEyLjQ0OTkgMTAuMDc0NyAxMi4yOTQ3IDEwLjAzMzcgMTIuMjAwOSA5Ljk1MTY2QzEyLjExMDEgOS44NjY3IDEyLjA2NDcgOS43NTY4NCAxMi4wNjQ3IDkuNjIyMDdDMTIuMDY0NyA5LjQ4NzMgMTIuMTEwMSA5LjM3ODkxIDEyLjIwMDkgOS4yOTY4OEMxMi4yOTQ3IDkuMjExOTEgMTIuNDQ5OSA5LjE2OTQzIDEyLjY2NjcgOS4xNjk0M0wxMy43MDgyIDkuMTczODNMMTYuMDExIDEyLjc4NjFWMTAuMDc0N0gxNS42ODU4QzE1LjQ2OSAxMC4wNzQ3IDE1LjMxMzcgMTAuMDMzNyAxNS4yMiA5Ljk1MTY2QzE1LjEyOTEgOS44NjY3IDE1LjA4MzcgOS43NTY4NCAxNS4wODM3IDkuNjIyMDdDMTUuMDgzNyA5LjQ4NzMgMTUuMTI5MSA5LjM3ODkxIDE1LjIyIDkuMjk2ODhDMTUuMzEzNyA5LjIxMTkxIDE1LjQ2OSA5LjE2OTQzIDE1LjY4NTggOS4xNjk0M0wxNi44Njc5IDkuMTczODNDMTcuMDg0NyA5LjE3MzgzIDE3LjIzODUgOS4yMTQ4NCAxNy4zMjkzIDkuMjk2ODhDMTcuNDIzMSA5LjM3ODkxIDE3LjQ3IDkuNDg3MyAxNy40NyA5LjYyMjA3QzE3LjQ3IDkuNzUzOTEgMTcuNDI0NiA5Ljg2MjMgMTcuMzMzNyA5Ljk0NzI3QzE3LjI0MjkgMTAuMDMyMiAxNy4xMDM4IDEwLjA3NDcgMTYuOTE2MyAxMC4wNzQ3VjE0LjVIMTYuMDI0MkwxMy43MDgyIDEwLjg3NDVaTTIxLjkyMzYgOS40MDIzNEMyMS45NzkyIDkuMzI2MTcgMjIuMDM5MyA5LjI2OTA0IDIyLjEwMzcgOS4yMzA5NkMyMi4xNzExIDkuMTkyODcgMjIuMjQyOSA5LjE3MzgzIDIyLjMxOTEgOS4xNzM4M0MyMi40NTA5IDkuMTczODMgMjIuNTU3OCA5LjIxOTI0IDIyLjYzOTkgOS4zMTAwNkMyMi43MjQ4IDkuNDAwODggMjIuNzY3MyA5LjU1NDY5IDIyLjc2NzMgOS43NzE0OFYxMC41MzYxQzIyLjc2NzMgMTAuNzUyOSAyMi43MjQ4IDEwLjkwODIgMjIuNjM5OSAxMS4wMDJDMjIuNTU3OCAxMS4wOTI4IDIyLjQ1MDkgMTEuMTM4MiAyMi4zMTkxIDExLjEzODJDMjIuMTk4OSAxMS4xMzgyIDIyLjEwMjMgMTEuMTA0NSAyMi4wMjkgMTEuMDM3MUMyMS45NTU4IDEwLjk2OTcgMjEuOTAxNiAxMC44NDM4IDIxLjg2NjQgMTAuNjU5MkMyMS44NDU5IDEwLjUzNjEgMjEuODA0OSAxMC40NDA5IDIxLjc0MzQgMTAuMzczNUMyMS42MjMzIDEwLjI0MTcgMjEuNDU0OCAxMC4xMzYyIDIxLjIzOCAxMC4wNTcxQzIxLjAyNDEgOS45NzgwMyAyMC44MDg4IDkuOTM4NDggMjAuNTkyIDkuOTM4NDhDMjAuMzIyNSA5LjkzODQ4IDIwLjA3NDkgOS45OTcwNyAxOS44NDkzIDEwLjExNDNDMTkuNjIzNyAxMC4yMzE0IDE5LjQyNDUgMTAuNDIxOSAxOS4yNTE3IDEwLjY4NTVDMTkuMDc4OCAxMC45NDkyIDE4Ljk5MjQgMTEuMjYyNyAxOC45OTI0IDExLjYyNlYxMi4yMTA0QzE4Ljk5MjQgMTIuNjQ0IDE5LjE0OTEgMTMuMDA1OSAxOS40NjI2IDEzLjI5NTlDMTkuNzc5IDEzLjU4NTkgMjAuMjE3IDEzLjczMSAyMC43NzY2IDEzLjczMUMyMS4xMTA2IDEzLjczMSAyMS4zOTMzIDEzLjY4NTUgMjEuNjI0NyAxMy41OTQ3QzIxLjc1OTUgMTMuNTQyIDIxLjkwMyAxMy40MzggMjIuMDU1NCAxMy4yODI3QzIyLjE0OTEgMTMuMTg5IDIyLjIyMjQgMTMuMTI4OSAyMi4yNzUxIDEzLjEwMjVDMjIuMzI3OSAxMy4wNzMyIDIyLjM4NzkgMTMuMDU4NiAyMi40NTUzIDEzLjA1ODZDMjIuNTc1NCAxMy4wNTg2IDIyLjY4MDkgMTMuMTA0IDIyLjc3MTcgMTMuMTk0OEMyMi44NjI1IDEzLjI4NTYgMjIuOTA3OSAxMy4zOTI2IDIyLjkwNzkgMTMuNTE1NkMyMi45MDc5IDEzLjYzODcgMjIuODQ2NCAxMy43NzA1IDIyLjcyMzQgMTMuOTExMUMyMi41NDQ2IDE0LjExNjIgMjIuMzE0NyAxNC4yNzczIDIyLjAzMzQgMTQuMzk0NUMyMS42NTU1IDE0LjU1MjcgMjEuMjM4IDE0LjYzMTggMjAuNzgxIDE0LjYzMThDMjAuMjQ3OCAxNC42MzE4IDE5Ljc2NzMgMTQuNTIyIDE5LjMzOTYgMTQuMzAyMkMxOC45OTM5IDE0LjEyNjUgMTguNjk5NCAxMy44NDk2IDE4LjQ1NjMgMTMuNDcxN0MxOC4yMTMxIDEzLjA5MDggMTguMDkxNSAxMi42NzYzIDE4LjA5MTUgMTIuMjI4VjExLjYxNzJDMTguMDkxNSAxMS4xNDg0IDE4LjE5OTkgMTAuNzExOSAxOC40MTY3IDEwLjMwNzZDMTguNjM2NCA5LjkwMDM5IDE4LjkzOTcgOS41ODY5MSAxOS4zMjY0IDkuMzY3MTlDMTkuNzEzMSA5LjE0NzQ2IDIwLjEyMzMgOS4wMzc2IDIwLjU1NjkgOS4wMzc2QzIwLjgxNzYgOS4wMzc2IDIxLjA2MDggOS4wNjgzNiAyMS4yODYzIDkuMTI5ODhDMjEuNTE0OSA5LjE4ODQ4IDIxLjcyNzMgOS4yNzkzIDIxLjkyMzYgOS40MDIzNFpcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjIzXCIsIHk6IFwiMjIuNVwiLCB3aWR0aDogXCIyMlwiLCBoZWlnaHQ6IFwiMlwiLCByeDogXCIxXCIsIHRyYW5zZm9ybTogXCJyb3RhdGUoLTE4MCAyMyAyMi41KVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMjEuNVwiLCB5OiBcIjIyLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSgtOTAgMjEuNSAyMi41KVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMTQuNjY2N1wiLCB5OiBcIjIyLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSgtOTAgMTQuNjY2NyAyMi41KVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiNy44MzMzM1wiLCB5OiBcIjIyLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSgtOTAgNy44MzMzMyAyMi41KVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMVwiLCB5OiBcIjIyLjVcIiwgd2lkdGg6IFwiNVwiLCBoZWlnaHQ6IFwiMS41XCIsIHJ4OiBcIjAuNzVcIiwgdHJhbnNmb3JtOiBcInJvdGF0ZSgtOTAgMSAyMi41KVwiIH0pXSB9KSB9KSB9KSkgOiBudWxsO1xyXG59O1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1TZXF1ZW5jZVN5bmNFZGl0TW9kZUJ1dHRvbi5qcy5tYXAiXX0= */");
var SequenceSyncEditModeButton = function SequenceSyncEditModeButton() {
  var editor = useAppSelector(selectEditor);
  var _useState = useState(true),
    _useState2 = _slicedToArray(_useState, 2),
    isSequenceSyncEditMode = _useState2[0],
    setIsSequenceSyncEditMode = _useState2[1];
  var layoutMode = useLayoutMode();
  var isSequenceMode = layoutMode === ModeTypes.sequence;
  var hasAtLeastOneAntisense = useAppSelector(hasAntisenseChains);
  var handleClick = function handleClick() {
    var isSequenceSyncEditModeNewState = !isSequenceSyncEditMode;
    setIsSequenceSyncEditMode(isSequenceSyncEditModeNewState);
    editor.events.toggleIsSequenceSyncEditMode.dispatch(isSequenceSyncEditModeNewState);
    blurActiveElement();
  };
  useEffect(function () {
    if (isSequenceMode && hasAtLeastOneAntisense) {
      editor.events.toggleIsSequenceSyncEditMode.dispatch(isSequenceSyncEditMode);
    }
  }, [isSequenceMode, hasAtLeastOneAntisense]);
  return isSequenceMode && hasAtLeastOneAntisense ? jsx(Fragment, {
    children: jsx(StyledButton, {
      isActive: isSequenceSyncEditMode,
      onClick: handleClick,
      children: jsxs("svg", {
        width: "24",
        height: "24",
        viewBox: "0 0 24 24",
        xmlns: "http://www.w3.org/2000/svg",
        fill: isSequenceSyncEditMode ? 'white' : '#333333',
        children: [jsx("rect", {
          x: "1",
          y: "1.5",
          width: "22",
          height: "2",
          rx: "1"
        }), jsx("rect", {
          x: "2.5",
          y: "1.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(90 2.5 1.5)"
        }), jsx("rect", {
          x: "9.33333",
          y: "1.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(90 9.33333 1.5)"
        }), jsx("rect", {
          x: "16.1667",
          y: "1.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(90 16.1667 1.5)"
        }), jsx("rect", {
          x: "23",
          y: "1.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(90 23 1.5)"
        }), jsx("path", {
          d: "M2.16873 14.2715C2.08963 14.3652 2.02518 14.4253 1.97537 14.4517C1.9285 14.478 1.8699 14.4912 1.79959 14.4912C1.66189 14.4912 1.55057 14.4458 1.46561 14.355C1.38357 14.2612 1.34256 14.1074 1.34256 13.8936V13.2871C1.34256 13.0703 1.38357 12.9165 1.46561 12.8257C1.55057 12.7319 1.66189 12.6851 1.79959 12.6851C1.90506 12.6851 1.99295 12.7129 2.06326 12.7686C2.1365 12.8242 2.19217 12.918 2.23025 13.0498C2.26834 13.1787 2.30789 13.2666 2.34891 13.3135C2.43387 13.4043 2.58475 13.4966 2.80154 13.5903C3.01834 13.6841 3.25564 13.731 3.51346 13.731C3.91482 13.731 4.24441 13.6372 4.50223 13.4497C4.66629 13.3354 4.74832 13.1948 4.74832 13.0278C4.74832 12.9165 4.70877 12.8125 4.62967 12.7158C4.55057 12.6162 4.42166 12.5342 4.24295 12.4697C4.12576 12.4258 3.86355 12.3657 3.45633 12.2896C2.96414 12.1987 2.59207 12.0889 2.34012 11.96C2.08816 11.8311 1.88895 11.6494 1.74246 11.415C1.59598 11.1807 1.52273 10.9272 1.52273 10.6548C1.52273 10.2241 1.70291 9.84766 2.06326 9.52539C2.42361 9.2002 2.89236 9.0376 3.46951 9.0376C3.70096 9.0376 3.91482 9.06396 4.11111 9.1167C4.31033 9.1665 4.49051 9.24414 4.65164 9.34961C4.76883 9.23535 4.88602 9.17822 5.0032 9.17822C5.13504 9.17822 5.24197 9.2251 5.324 9.31885C5.40897 9.40967 5.45145 9.56201 5.45145 9.77588V10.4526C5.45145 10.6694 5.40897 10.8247 5.324 10.9185C5.24197 11.0093 5.13504 11.0547 5.0032 11.0547C4.89188 11.0547 4.7952 11.021 4.71316 10.9536C4.64871 10.9038 4.60037 10.8042 4.56814 10.6548C4.53592 10.5054 4.4949 10.3984 4.4451 10.334C4.36014 10.2227 4.2327 10.1289 4.06277 10.0527C3.89285 9.97656 3.69656 9.93848 3.47391 9.93848C3.14871 9.93848 2.8909 10.0146 2.70047 10.167C2.51297 10.3164 2.41922 10.4731 2.41922 10.6372C2.41922 10.7485 2.4573 10.8569 2.53348 10.9624C2.61258 11.0649 2.72684 11.1455 2.87625 11.2041C2.97586 11.2451 3.25564 11.311 3.71561 11.4019C4.1785 11.4927 4.53299 11.5923 4.77908 11.7007C5.02811 11.8091 5.23465 11.979 5.39871 12.2104C5.56277 12.4419 5.6448 12.7173 5.6448 13.0366C5.6448 13.4819 5.48807 13.8379 5.17459 14.1045C4.75857 14.4561 4.2283 14.6318 3.58377 14.6318C3.33475 14.6318 3.09158 14.6011 2.85428 14.5396C2.6199 14.481 2.39139 14.3916 2.16873 14.2715ZM9.615 12.2632V13.5991H10.2214C10.4382 13.5991 10.5921 13.6416 10.6829 13.7266C10.7766 13.8086 10.8235 13.917 10.8235 14.0518C10.8235 14.1836 10.7766 14.292 10.6829 14.377C10.5921 14.459 10.4382 14.5 10.2214 14.5H8.10768C7.89381 14.5 7.74 14.459 7.64625 14.377C7.55543 14.292 7.51002 14.1821 7.51002 14.0474C7.51002 13.9155 7.55543 13.8086 7.64625 13.7266C7.74 13.6416 7.89381 13.5991 8.10768 13.5991H8.71412V12.2632L7.22438 10.0747C7.02516 10.0747 6.87867 10.0322 6.78492 9.94727C6.6941 9.8623 6.64869 9.75391 6.64869 9.62207C6.64869 9.4873 6.6941 9.37891 6.78492 9.29688C6.87867 9.21191 7.03395 9.16943 7.25074 9.16943L8.06813 9.17383C8.28492 9.17383 8.43873 9.21484 8.52955 9.29688C8.6233 9.37891 8.67018 9.4873 8.67018 9.62207C8.67018 9.82422 8.55152 9.9751 8.31422 10.0747L9.16676 11.3315L10.0017 10.0747C9.86988 10.0249 9.77613 9.96191 9.72047 9.88574C9.6648 9.80957 9.63697 9.72168 9.63697 9.62207C9.63697 9.4873 9.68238 9.37891 9.7732 9.29688C9.86695 9.21484 10.0222 9.17236 10.239 9.16943L11.0872 9.17383C11.304 9.17383 11.4578 9.21484 11.5486 9.29688C11.6423 9.37891 11.6892 9.4873 11.6892 9.62207C11.6892 9.75684 11.6423 9.8667 11.5486 9.95166C11.4548 10.0337 11.3025 10.0747 11.0916 10.0747L9.615 12.2632ZM13.7082 10.8745V13.5991H14.0334C14.2502 13.5991 14.404 13.6416 14.4949 13.7266C14.5886 13.8086 14.6355 13.917 14.6355 14.0518C14.6355 14.1836 14.5886 14.292 14.4949 14.377C14.404 14.459 14.2502 14.5 14.0334 14.5H12.8513C12.6345 14.5 12.4792 14.459 12.3855 14.377C12.2947 14.292 12.2493 14.1821 12.2493 14.0474C12.2493 13.9185 12.2947 13.8115 12.3855 13.7266C12.4763 13.6416 12.6169 13.5991 12.8074 13.5991V10.0747H12.6667C12.4499 10.0747 12.2947 10.0337 12.2009 9.95166C12.1101 9.8667 12.0647 9.75684 12.0647 9.62207C12.0647 9.4873 12.1101 9.37891 12.2009 9.29688C12.2947 9.21191 12.4499 9.16943 12.6667 9.16943L13.7082 9.17383L16.011 12.7861V10.0747H15.6858C15.469 10.0747 15.3137 10.0337 15.22 9.95166C15.1291 9.8667 15.0837 9.75684 15.0837 9.62207C15.0837 9.4873 15.1291 9.37891 15.22 9.29688C15.3137 9.21191 15.469 9.16943 15.6858 9.16943L16.8679 9.17383C17.0847 9.17383 17.2385 9.21484 17.3293 9.29688C17.4231 9.37891 17.47 9.4873 17.47 9.62207C17.47 9.75391 17.4246 9.8623 17.3337 9.94727C17.2429 10.0322 17.1038 10.0747 16.9163 10.0747V14.5H16.0242L13.7082 10.8745ZM21.9236 9.40234C21.9792 9.32617 22.0393 9.26904 22.1037 9.23096C22.1711 9.19287 22.2429 9.17383 22.3191 9.17383C22.4509 9.17383 22.5578 9.21924 22.6399 9.31006C22.7248 9.40088 22.7673 9.55469 22.7673 9.77148V10.5361C22.7673 10.7529 22.7248 10.9082 22.6399 11.002C22.5578 11.0928 22.4509 11.1382 22.3191 11.1382C22.1989 11.1382 22.1023 11.1045 22.029 11.0371C21.9558 10.9697 21.9016 10.8438 21.8664 10.6592C21.8459 10.5361 21.8049 10.4409 21.7434 10.3735C21.6233 10.2417 21.4548 10.1362 21.238 10.0571C21.0241 9.97803 20.8088 9.93848 20.592 9.93848C20.3225 9.93848 20.0749 9.99707 19.8493 10.1143C19.6237 10.2314 19.4245 10.4219 19.2517 10.6855C19.0788 10.9492 18.9924 11.2627 18.9924 11.626V12.2104C18.9924 12.644 19.1491 13.0059 19.4626 13.2959C19.779 13.5859 20.217 13.731 20.7766 13.731C21.1106 13.731 21.3933 13.6855 21.6247 13.5947C21.7595 13.542 21.903 13.438 22.0554 13.2827C22.1491 13.189 22.2224 13.1289 22.2751 13.1025C22.3279 13.0732 22.3879 13.0586 22.4553 13.0586C22.5754 13.0586 22.6809 13.104 22.7717 13.1948C22.8625 13.2856 22.9079 13.3926 22.9079 13.5156C22.9079 13.6387 22.8464 13.7705 22.7234 13.9111C22.5446 14.1162 22.3147 14.2773 22.0334 14.3945C21.6555 14.5527 21.238 14.6318 20.781 14.6318C20.2478 14.6318 19.7673 14.522 19.3396 14.3022C18.9939 14.1265 18.6994 13.8496 18.4563 13.4717C18.2131 13.0908 18.0915 12.6763 18.0915 12.228V11.6172C18.0915 11.1484 18.1999 10.7119 18.4167 10.3076C18.6364 9.90039 18.9397 9.58691 19.3264 9.36719C19.7131 9.14746 20.1233 9.0376 20.5569 9.0376C20.8176 9.0376 21.0608 9.06836 21.2863 9.12988C21.5149 9.18848 21.7273 9.2793 21.9236 9.40234Z"
        }), jsx("rect", {
          x: "23",
          y: "22.5",
          width: "22",
          height: "2",
          rx: "1",
          transform: "rotate(-180 23 22.5)"
        }), jsx("rect", {
          x: "21.5",
          y: "22.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(-90 21.5 22.5)"
        }), jsx("rect", {
          x: "14.6667",
          y: "22.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(-90 14.6667 22.5)"
        }), jsx("rect", {
          x: "7.83333",
          y: "22.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(-90 7.83333 22.5)"
        }), jsx("rect", {
          x: "1",
          y: "22.5",
          width: "5",
          height: "1.5",
          rx: "0.75",
          transform: "rotate(-90 1 22.5)"
        })]
      })
    })
  }) : null;
};

var muiTheme = createTheme(muiOverrides);
function EditorContainer(_ref) {
  var onInit = _ref.onInit,
    theme = _ref.theme,
    togglerComponent = _ref.togglerComponent,
    monomersLibraryUpdate = _ref.monomersLibraryUpdate;
  var rootElRef = useRef(null);
  var editorTheme = theme ? merge(defaultTheme, theme) : defaultTheme;
  var mergedTheme = merge(muiTheme, {
    ketcher: editorTheme
  });
  useEffect(function () {
    onInit === null || onInit === void 0 || onInit();
  }, [onInit]);
  return jsx(Provider, {
    store: store,
    children: jsxs(ThemeProvider, {
      theme: mergedTheme,
      children: [jsx(Global, {
        styles: getGlobalStyles
      }), jsx(EditorWrapper, {
        ref: rootElRef,
        className: EditorClassName,
        children: jsx(Editor, {
          theme: editorTheme,
          togglerComponent: togglerComponent,
          monomersLibraryUpdate: monomersLibraryUpdate
        })
      })]
    })
  });
}
function Editor(_ref2) {
  var theme = _ref2.theme,
    togglerComponent = _ref2.togglerComponent,
    monomersLibraryUpdate = _ref2.monomersLibraryUpdate;
  var dispatch = useAppDispatch();
  var canvasRef = useRef(null);
  var errorTooltipText = useAppSelector(selectErrorTooltipText);
  var editor = useAppSelector(selectEditor);
  var isHandToolSelected = useAppSelector(selectIsHandToolSelected);
  var isLoading = useLoading();
  var _useState = useState(false),
    _useState2 = _slicedToArray(_useState, 2),
    isMonomerLibraryHidden = _useState2[0],
    setIsMonomerLibraryHidden = _useState2[1];
  var isSequenceEditInRNABuilderMode = useSequenceEditInRNABuilderMode();
  var _useState3 = useState(),
    _useState4 = _slicedToArray(_useState3, 2),
    selections = _useState4[0],
    setSelections = _useState4[1];
  var _useState5 = useState([]),
    _useState6 = _slicedToArray(_useState5, 2),
    selectedMonomers = _useState6[0],
    setSelectedMonomers = _useState6[1];
  var _useContextMenu = useContextMenu({
      id: CONTEXT_MENU_ID.FOR_SEQUENCE
    }),
    showSequenceContextMenu = _useContextMenu.show;
  var _useContextMenu2 = useContextMenu({
      id: CONTEXT_MENU_ID.FOR_POLYMER_BOND
    }),
    showPolymerBondContextMenu = _useContextMenu2.show;
  var _useContextMenu3 = useContextMenu({
      id: CONTEXT_MENU_ID.FOR_SELECTED_MONOMERS
    }),
    showSelectedMonomersContextMenu = _useContextMenu3.show;
  useEffect(function () {
    dispatch(createEditor({
      theme: theme,
      canvas: canvasRef.current,
      monomersLibraryUpdate: monomersLibraryUpdate
    }));
    return function () {
      dispatch(destroyEditor(null));
    };
  }, [dispatch]);
  useSetRnaPresets();
  useEffect(function () {
    editor === null || editor === void 0 || editor.events.rightClickSequence.add(function (_ref3) {
      var _ref4 = _slicedToArray(_ref3, 2),
        event = _ref4[0],
        selections = _ref4[1];
      setSelections(selections);
      showSequenceContextMenu({
        event: event,
        props: {
          sequenceItemRenderer: event.target.__data__
        }
      });
    });
    editor === null || editor === void 0 || editor.events.rightClickPolymerBond.add(function (_ref5) {
      var _ref6 = _slicedToArray(_ref5, 2),
        event = _ref6[0],
        polymerBondRenderer = _ref6[1];
      showPolymerBondContextMenu({
        event: event,
        props: {
          polymerBondRenderer: polymerBondRenderer
        }
      });
    });
    editor === null || editor === void 0 || editor.events.rightClickSelectedMonomers.add(function (_ref7) {
      var _ref8 = _slicedToArray(_ref7, 2),
        event = _ref8[0],
        selectedMonomers = _ref8[1];
      setSelectedMonomers(selectedMonomers);
      showSelectedMonomersContextMenu({
        event: event,
        props: {
          selectedMonomers: selectedMonomers
        }
      });
    });
    editor === null || editor === void 0 || editor.events.rightClickCanvas.add(function (event) {
      showSequenceContextMenu({
        event: event,
        props: {}
      });
    });
  }, [editor]);
  useEffect(function () {
    editor === null || editor === void 0 || editor.zoomTool.observeCanvasResize();
    return function () {
      editor === null || editor === void 0 || editor.zoomTool.destroy();
    };
  }, [editor]);
  var handleCloseErrorTooltip = function handleCloseErrorTooltip() {
    dispatch(closeErrorTooltip());
  };
  return jsxs(Fragment, {
    children: [jsxs(Layout, {
      children: [jsxs(Layout.Top, {
        shortened: isMonomerLibraryHidden,
        "data-testid": "top-toolbar",
        children: [jsx(TopMenuComponent, {}), jsxs(TopMenuRightWrapper, {
          children: [jsx(SequenceSyncEditModeButton, {}), jsx(LayoutModeButton, {}), jsx(SequenceTypeGroupButton, {}), jsx(TogglerComponentWrapper, {
            className: isSequenceEditInRNABuilderMode ? 'toggler-component-wrapper--disabled' : '',
            children: togglerComponent
          }), jsx(FullscreenButton, {}), jsx(VerticalDivider, {}), jsx(ZoomControls, {})]
        })]
      }), jsx(Layout.Left, {
        children: jsx(LeftMenuComponent, {})
      }), jsxs(Layout.Main, {
        children: [jsx(EditorEvents, {}), jsxs(CanvasWrapper, {
          id: "polymer-editor-canvas",
          "data-testid": "ketcher-canvas",
          preserveAspectRatio: "xMidYMid meet",
          ref: canvasRef,
          width: "100%",
          height: "100%",
          style: {
            overflow: 'hidden',
            overflowClipMargin: 'content-box'
          },
          children: [jsxs("defs", {
            children: [jsx(PeptideAvatar, {}), jsx(ChemAvatar, {}), jsx(SugarAvatar, {}), jsx(PhosphateAvatar, {}), jsx(RNABaseAvatar, {}), jsx(UnresolvedMonomerAvatar, {}), jsx(NucleotideAvatar, {}), jsx(SequenceStartArrow, {}), jsx(ArrowMarker, {})]
          }), jsx("g", {
            className: "drawn-structures"
          }), isHandToolSelected && jsx("rect", {
            x: 0,
            y: 0,
            width: "100%",
            height: "100%",
            fill: "transparent",
            pointerEvents: "all"
          })]
        }), isLoading && jsx(Loader, {})]
      }), jsx(Layout.Right, {
        hide: isMonomerLibraryHidden,
        children: jsx(MonomerLibrary, {})
      }), jsx(Layout.InsideRoot, {
        children: jsx(MonomerLibraryToggle, {
          isHidden: isMonomerLibraryHidden,
          onClick: function onClick() {
            return setIsMonomerLibraryHidden(function (prev) {
              return !prev;
            });
          }
        })
      })]
    }), jsx(Preview, {}), jsx(SequenceItemContextMenu, {
      selections: selections
    }), jsx(PolymerBondContextMenu, {}), jsx(SelectedMonomersContextMenu, {
      selectedMonomers: selectedMonomers
    }), jsx(ModalContainer, {}), jsx(ErrorModal, {}), jsx(Snackbar, {
      anchorOrigin: {
        vertical: 'bottom',
        horizontal: 'center'
      },
      open: Boolean(errorTooltipText),
      onClose: handleCloseErrorTooltip,
      autoHideDuration: 6000,
      children: jsxs(StyledToast, {
        id: "error-tooltip",
        children: [jsx(StyledToastContent, {
          "data-testid": "error-tooltip",
          children: errorTooltipText
        }), jsx(StyledIconButton$1, {
          iconName: "close",
          onClick: handleCloseErrorTooltip
        })]
      })
    })]
  });
}

export { EditorContainer as default };
//# sourceMappingURL=index.modern-dffdbebd.js.map