asma-ui-richeditor 0.1.9 → 0.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".toolbar{width:100%;padding-block:4px;background-color:var(--colors-delta-10);display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;padding-inline:8px;border-top:1px solid var(--colors-delta-200)}.chevron-icon{position:absolute;right:6px;top:8px;pointer-events:none;color:var(--colors-delta-700)}.link-input-field{width:568px}@media (width <= 768px){.link-input-field{width:100%}}:root{--max-scrollable-height: 100px}*{box-sizing:border-box;padding:0;margin:0}.core-ui-rte{overflow:hidden}.core-ui-rte a{text-decoration:underline;cursor:pointer;color:var(--colors-gama-400);transition:color .3s ease-in}.core-ui-rte a:hover{color:var(--colors-gama-600)}.core-ui-rte ol{list-style-type:decimal}.core-ui-rte ul{list-style-type:disc}.core-ui-rte .tiptap :first-child{margin-top:0}.core-ui-rte .tiptap{outline:none;padding-block:8px;padding-left:14px;padding-right:14px;overflow-y:auto;max-height:var(--max-scrollable-height);scrollbar-width:thin;scrollbar-color:var(--colors-gray-500) transparent}.core-ui-rte .tiptap ul,.core-ui-rte .tiptap ol{padding:0 1rem;margin:1.25rem 1rem 1.25rem .4rem}.core-ui-rte .tiptap ul li,.core-ui-rte .tiptap ol li{margin-top:.25em;margin-bottom:.25em}.core-ui-rte .tiptap .core-ui-rte ol{list-style-type:decimal}.core-ui-rte .tiptap .core-ui-rte ul{list-style-type:disc}.core-ui-rte .tiptap h1{font-size:2em;padding:0;margin:0}.core-ui-rte .tiptap h2{font-size:1.5em;padding:0;margin:0}.core-ui-rte.displace-text .tiptap{padding-right:40px}.core-ui-rte.edit-mode .tiptap{min-height:40px;max-height:var(--max-scrollable-height)}.rte-wrapper{position:relative;display:flex;flex-direction:column;height:100%;border-radius:4px;overflow:hidden;outline:1px solid var(--colors-delta-500);outline-offset:-1px}.rte-wrapper:hover{outline:2px solid var(--colors-gama-300);outline-offset:-2px}.rte-wrapper.error-state{outline:1px solid var(--colors-red-500)}.rte-wrapper.error-state:hover{outline:2px solid var(--colors-red-500)}.rte-wrapper.error-focused-state{outline:2px solid var(--colors-red-500);outline-offset:-2px}.rte-wrapper.readonly-outlined .tiptap{min-height:100px;max-height:none;overflow:hidden}.rte-wrapper.readonly-outlined{background-color:var(--colors-gray-10);outline:1px solid var(--colors-gray-200);outline-offset:-1px}.rte-wrapper.readonly-outlined:hover{outline:1px solid var(--colors-gray-200);outline-offset:-1px}.rte-wrapper.readonly-plain .tiptap{max-height:none;overflow:hidden;padding:0;margin:0}.rte-wrapper.readonly-plain{background-color:#fff;border-radius:unset;outline:none}.rte-wrapper.readonly-plain:hover{outline:none}.rte-wrapper.focused-state{outline:2px solid var(--colors-gama-400);outline-offset:-2px}.ProseMirror:focus{outline:none}.ProseMirror p.is-editor-empty:first-child:before{color:var(--colors-delta-500);content:attr(data-placeholder);float:left;height:0;pointer-events:none}._link-dialog-container_jjs9w_1{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0;gap:24px;height:100%;margin:16px}")),document.head.appendChild(e)}}catch(r){console.error("vite-plugin-css-injected-by-js",r)}})();
2
- import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect as i,createContext as s,useContext as a,useLayoutEffect as l,createElement as c,useCallback as d,useMemo as h,useImperativeHandle as u}from"react";import p from"react-dom";import{StyledMenuItem as f,StyledInputField as m,LinkOutlineIcon as g,StyledButton as y,DotsVerticalIcon as b,StyledDialog as v,StyledFormControl as w,StyledFormHelperText as k}from"asma-core-ui";import{Popover as x}from"@mui/material";var S,O={exports:{}},C={};
2
+ import e,{forwardRef as n,useRef as i,useState as t,useDebugValue as a,useEffect as s,createContext as o,useContext as r,useLayoutEffect as f,createElement as d,useCallback as l,useMemo as c,useImperativeHandle as u}from"react";import h from"react-dom";import{StyledMenuItem as m,StyledInputField as p,LinkOutlineIcon as v,StyledButton as g,DotsVerticalIcon as k,StyledDialog as y,StyledFormControl as w,StyledFormHelperText as b}from"asma-core-ui";import{Tooltip as _,Popover as x}from"@mui/material";var S,C={exports:{}},M={};
3
3
  /**
4
4
  * @license React
5
5
  * react-jsx-runtime.production.min.js
@@ -8,7 +8,7 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
8
8
  *
9
9
  * This source code is licensed under the MIT license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
- */var M,E={};
11
+ */var O,T={};
12
12
  /**
13
13
  * @license React
14
14
  * react-jsx-runtime.development.js
@@ -17,7 +17,7 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
17
17
  *
18
18
  * This source code is licensed under the MIT license found in the
19
19
  * LICENSE file in the root directory of this source tree.
20
- */"production"===process.env.NODE_ENV?O.exports=function(){if(S)return C;S=1;var t=e,n=Symbol.for("react.element"),r=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,i=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function a(e,t,r){var a,l={},c=null,d=null;for(a in void 0!==r&&(c=""+r),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(d=t.ref),t)o.call(t,a)&&!s.hasOwnProperty(a)&&(l[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===l[a]&&(l[a]=t[a]);return{$$typeof:n,type:e,key:c,ref:d,props:l,_owner:i.current}}return C.Fragment=r,C.jsx=a,C.jsxs=a,C}():O.exports=(M||(M=1,"production"!==process.env.NODE_ENV&&function(){var t=e,n=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),f=Symbol.for("react.offscreen"),m=Symbol.iterator,g="@@iterator",y=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];!function(e,t,n){var r=y.ReactDebugCurrentFrame,o=r.getStackAddendum();""!==o&&(t+="%s",n=n.concat([o]));var i=n.map((function(e){return String(e)}));i.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,i)}("error",e,n)}var v,w=!1,k=!1,x=!1,S=!1,O=!1;function C(e){return e.displayName||"Context"}function M(e){if(null==e)return null;if("number"==typeof e.tag&&b("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case o:return"Fragment";case r:return"Portal";case s:return"Profiler";case i:return"StrictMode";case d:return"Suspense";case h:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case l:return C(e)+".Consumer";case a:return C(e._context)+".Provider";case c:return function(e,t,n){var r=e.displayName;if(r)return r;var o=t.displayName||t.name||"";return""!==o?n+"("+o+")":n}(e,e.render,"ForwardRef");case u:var t=e.displayName||null;return null!==t?t:M(e.type)||"Memo";case p:var n=e,f=n._payload,m=n._init;try{return M(m(f))}catch{return null}}return null}v=Symbol.for("react.module.reference");var T,N,A,D,R,I,P,L=Object.assign,j=0;function z(){}z.__reactDisabledLog=!0;var $,B=y.ReactCurrentDispatcher;function _(e,t,n){if(void 0===$)try{throw Error()}catch(e){var r=e.stack.trim().match(/\n( *(at )?)/);$=r&&r[1]||""}return"\n"+$+e}var F,V=!1,H="function"==typeof WeakMap?WeakMap:Map;function W(e,t){if(!e||V)return"";var n,r=F.get(e);if(void 0!==r)return r;V=!0;var o,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,o=B.current,B.current=null,function(){if(0===j){T=console.log,N=console.info,A=console.warn,D=console.error,R=console.group,I=console.groupCollapsed,P=console.groupEnd;var e={configurable:!0,enumerable:!0,value:z,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}j++}();try{if(t){var s=function(){throw Error()};if(Object.defineProperty(s.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(s,[])}catch(e){n=e}Reflect.construct(e,[],s)}else{try{s.call()}catch(e){n=e}e.call(s.prototype)}}else{try{throw Error()}catch(e){n=e}e()}}catch(t){if(t&&n&&"string"==typeof t.stack){for(var a=t.stack.split("\n"),l=n.stack.split("\n"),c=a.length-1,d=l.length-1;c>=1&&d>=0&&a[c]!==l[d];)d--;for(;c>=1&&d>=0;c--,d--)if(a[c]!==l[d]){if(1!==c||1!==d)do{if(c--,--d<0||a[c]!==l[d]){var h="\n"+a[c].replace(" at new "," at ");return e.displayName&&h.includes("<anonymous>")&&(h=h.replace("<anonymous>",e.displayName)),"function"==typeof e&&F.set(e,h),h}}while(c>=1&&d>=0);break}}}finally{V=!1,B.current=o,function(){if(0==--j){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:L({},e,{value:T}),info:L({},e,{value:N}),warn:L({},e,{value:A}),error:L({},e,{value:D}),group:L({},e,{value:R}),groupCollapsed:L({},e,{value:I}),groupEnd:L({},e,{value:P})})}j<0&&b("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=i}var u=e?e.displayName||e.name:"",p=u?_(u):"";return"function"==typeof e&&F.set(e,p),p}function K(e,t,n){if(null==e)return"";if("function"==typeof e)return W(e,function(e){var t=e.prototype;return!(!t||!t.isReactComponent)}(e));if("string"==typeof e)return _(e);switch(e){case d:return _("Suspense");case h:return _("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case c:return function(e,t,n){return W(e,!1)}(e.render);case u:return K(e.type,t,n);case p:var r=e,o=r._payload,i=r._init;try{return K(i(o),t,n)}catch{}}return""}F=new H;var q=Object.prototype.hasOwnProperty,J={},U=y.ReactDebugCurrentFrame;function G(e){if(e){var t=e._owner,n=K(e.type,e._source,t?t.type:null);U.setExtraStackFrame(n)}else U.setExtraStackFrame(null)}var Y=Array.isArray;function Q(e){return Y(e)}function X(e){return""+e}function Z(e){if(function(e){try{return X(e),!1}catch{return!0}}(e))return b("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),X(e)}var ee,te,ne,re=y.ReactCurrentOwner,oe={key:!0,ref:!0,__self:!0,__source:!0};ne={};var ie=function(e,t,r,o,i,s,a){var l={$$typeof:n,type:e,key:t,ref:r,props:a,_owner:s,_store:{}};return Object.defineProperty(l._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(l,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(l,"_source",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(l.props),Object.freeze(l)),l};function se(e,t,n,r,o){var i,s={},a=null,l=null;for(i in void 0!==n&&(Z(n),a=""+n),function(e){if(q.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}(t)&&(Z(t.key),a=""+t.key),function(e){if(q.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}(t)&&(l=t.ref,function(e,t){if("string"==typeof e.ref&&re.current&&t&&re.current.stateNode!==t){var n=M(re.current.type);ne[n]||(b('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',M(re.current.type),e.ref),ne[n]=!0)}}(t,o)),t)q.call(t,i)&&!oe.hasOwnProperty(i)&&(s[i]=t[i]);if(e&&e.defaultProps){var c=e.defaultProps;for(i in c)void 0===s[i]&&(s[i]=c[i])}if(a||l){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;a&&function(e,t){var n=function(){ee||(ee=!0,b("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}(s,d),l&&function(e,t){var n=function(){te||(te=!0,b("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"ref",{get:n,configurable:!0})}(s,d)}return ie(e,a,l,o,r,re.current,s)}var ae,le=y.ReactCurrentOwner,ce=y.ReactDebugCurrentFrame;function de(e){if(e){var t=e._owner,n=K(e.type,e._source,t?t.type:null);ce.setExtraStackFrame(n)}else ce.setExtraStackFrame(null)}function he(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}function ue(){if(le.current){var e=M(le.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}ae=!1;var pe={};function fe(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var n=function(e){var t=ue();if(!t){var n="string"==typeof e?e:e.displayName||e.name;n&&(t="\n\nCheck the top-level render call using <"+n+">.")}return t}(t);if(!pe[n]){pe[n]=!0;var r="";e&&e._owner&&e._owner!==le.current&&(r=" It was passed a child from "+M(e._owner.type)+"."),de(e),b('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,r),de(null)}}}function me(e,t){if("object"==typeof e)if(Q(e))for(var n=0;n<e.length;n++){var r=e[n];he(r)&&fe(r,t)}else if(he(e))e._store&&(e._store.validated=!0);else if(e){var o=function(e){if(null===e||"object"!=typeof e)return null;var t=m&&e[m]||e[g];return"function"==typeof t?t:null}(e);if("function"==typeof o&&o!==e.entries)for(var i,s=o.call(e);!(i=s.next()).done;)he(i.value)&&fe(i.value,t)}}function ge(e){var t,n=e.type;if(null!=n&&"string"!=typeof n){if("function"==typeof n)t=n.propTypes;else{if("object"!=typeof n||n.$$typeof!==c&&n.$$typeof!==u)return;t=n.propTypes}if(t){var r=M(n);!function(e,t,n,r,o){var i=Function.call.bind(q);for(var s in e)if(i(e,s)){var a=void 0;try{if("function"!=typeof e[s]){var l=Error((r||"React class")+": "+n+" type `"+s+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[s]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw l.name="Invariant Violation",l}a=e[s](t,s,r,n,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){a=e}a&&!(a instanceof Error)&&(G(o),b("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",n,s,typeof a),G(null)),a instanceof Error&&!(a.message in J)&&(J[a.message]=!0,G(o),b("Failed %s type: %s",n,a.message),G(null))}}(t,e.props,"prop",r,e)}else void 0===n.PropTypes||ae||(ae=!0,b("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",M(n)||"Unknown"));"function"==typeof n.getDefaultProps&&!n.getDefaultProps.isReactClassApproved&&b("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function ye(e,t,r,m,g,y){var C=function(e){return!!("string"==typeof e||"function"==typeof e||e===o||e===s||O||e===i||e===d||e===h||S||e===f||w||k||x||"object"==typeof e&&null!==e&&(e.$$typeof===p||e.$$typeof===u||e.$$typeof===a||e.$$typeof===l||e.$$typeof===c||e.$$typeof===v||void 0!==e.getModuleId))}(e);if(!C){var E="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(E+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var T,N=function(e){return void 0!==e?"\n\nCheck your code at "+e.fileName.replace(/^.*[\\\/]/,"")+":"+e.lineNumber+".":""}(g);E+=N||ue(),null===e?T="null":Q(e)?T="array":void 0!==e&&e.$$typeof===n?(T="<"+(M(e.type)||"Unknown")+" />",E=" Did you accidentally export a JSX literal instead of a component?"):T=typeof e,b("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",T,E)}var A=se(e,t,r,g,y);if(null==A)return A;if(C){var D=t.children;if(void 0!==D)if(m)if(Q(D)){for(var R=0;R<D.length;R++)me(D[R],e);Object.freeze&&Object.freeze(D)}else b("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else me(D,e)}return e===o?function(e){for(var t=Object.keys(e.props),n=0;n<t.length;n++){var r=t[n];if("children"!==r&&"key"!==r){de(e),b("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",r),de(null);break}}null!==e.ref&&(de(e),b("Invalid attribute `ref` supplied to `React.Fragment`."),de(null))}(A):ge(A),A}var be=function(e,t,n){return ye(e,t,n,!1)},ve=function(e,t,n){return ye(e,t,n,!0)};E.Fragment=o,E.jsx=be,E.jsxs=ve}()),E);var T=O.exports;function N(e){var t,n,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=N(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function A(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=N(e))&&(r&&(r+=" "),r+=t);return r}function D(e){this.content=e}function R(e,t,n){for(let r=0;;r++){if(r==e.childCount||r==t.childCount)return e.childCount==t.childCount?null:n;let o=e.child(r),i=t.child(r);if(o!=i){if(!o.sameMarkup(i))return n;if(o.isText&&o.text!=i.text){for(let e=0;o.text[e]==i.text[e];e++)n++;return n}if(o.content.size||i.content.size){let e=R(o.content,i.content,n+1);if(null!=e)return e}n+=o.nodeSize}else n+=o.nodeSize}}function I(e,t,n,r){for(let o=e.childCount,i=t.childCount;;){if(0==o||0==i)return o==i?null:{a:n,b:r};let s=e.child(--o),a=t.child(--i),l=s.nodeSize;if(s!=a){if(!s.sameMarkup(a))return{a:n,b:r};if(s.isText&&s.text!=a.text){let e=0,t=Math.min(s.text.length,a.text.length);for(;e<t&&s.text[s.text.length-e-1]==a.text[a.text.length-e-1];)e++,n--,r--;return{a:n,b:r}}if(s.content.size||a.content.size){let e=I(s.content,a.content,n-1,r-1);if(e)return e}n-=l,r-=l}else n-=l,r-=l}}D.prototype={constructor:D,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return-1==t?void 0:this.content[t+1]},update:function(e,t,n){var r=n&&n!=e?this.remove(n):this,o=r.find(e),i=r.content.slice();return-1==o?i.push(n||e,t):(i[o+1]=t,n&&(i[o]=n)),new D(i)},remove:function(e){var t=this.find(e);if(-1==t)return this;var n=this.content.slice();return n.splice(t,2),new D(n)},addToStart:function(e,t){return new D([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new D(n)},addBefore:function(e,t,n){var r=this.remove(t),o=r.content.slice(),i=r.find(e);return o.splice(-1==i?o.length:i,0,t,n),new D(o)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return(e=D.from(e)).size?new D(e.content.concat(this.subtract(e).content)):this},append:function(e){return(e=D.from(e)).size?new D(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=D.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach((function(t,n){e[t]=n})),e},get size(){return this.content.length>>1}},D.from=function(e){if(e instanceof D)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new D(t)};class P{constructor(e,t){if(this.content=e,this.size=t||0,null==t)for(let t=0;t<e.length;t++)this.size+=e[t].nodeSize}nodesBetween(e,t,n,r=0,o){for(let i=0,s=0;s<t;i++){let a=this.content[i],l=s+a.nodeSize;if(l>e&&!1!==n(a,r+s,o||null,i)&&a.content.size){let o=s+1;a.nodesBetween(Math.max(0,e-o),Math.min(a.content.size,t-o),n,r+o)}s=l}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,r){let o="",i=!0;return this.nodesBetween(e,t,((s,a)=>{let l=s.isText?s.text.slice(Math.max(e,a)-a,t-a):s.isLeaf?r?"function"==typeof r?r(s):r:s.type.spec.leafText?s.type.spec.leafText(s):"":"";s.isBlock&&(s.isLeaf&&l||s.isTextblock)&&n&&(i?i=!1:o+=n),o+=l}),0),o}append(e){if(!e.size)return this;if(!this.size)return e;let t=this.lastChild,n=e.firstChild,r=this.content.slice(),o=0;for(t.isText&&t.sameMarkup(n)&&(r[r.length-1]=t.withText(t.text+n.text),o=1);o<e.content.length;o++)r.push(e.content[o]);return new P(r,this.size+e.size)}cut(e,t=this.size){if(0==e&&t==this.size)return this;let n=[],r=0;if(t>e)for(let o=0,i=0;i<t;o++){let s=this.content[o],a=i+s.nodeSize;a>e&&((i<e||a>t)&&(s=s.isText?s.cut(Math.max(0,e-i),Math.min(s.text.length,t-i)):s.cut(Math.max(0,e-i-1),Math.min(s.content.size,t-i-1))),n.push(s),r+=s.nodeSize),i=a}return new P(n,r)}cutByIndex(e,t){return e==t?P.empty:0==e&&t==this.content.length?this:new P(this.content.slice(e,t))}replaceChild(e,t){let n=this.content[e];if(n==t)return this;let r=this.content.slice(),o=this.size+t.nodeSize-n.nodeSize;return r[e]=t,new P(r,o)}addToStart(e){return new P([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new P(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw new RangeError("Index "+e+" out of range for "+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let r=this.content[t];e(r,n,t),n+=r.nodeSize}}findDiffStart(e,t=0){return R(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return I(this,e,t,n)}findIndex(e,t=-1){if(0==e)return j(0,e);if(e==this.size)return j(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let n=0,r=0;;n++){let o=r+this.child(n).nodeSize;if(o>=e)return o==e||t>0?j(n+1,o):j(n,r);r=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((e=>e.toJSON())):null}static fromJSON(e,t){if(!t)return P.empty;if(!Array.isArray(t))throw new RangeError("Invalid input for Fragment.fromJSON");return new P(t.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return P.empty;let t,n=0;for(let r=0;r<e.length;r++){let o=e[r];n+=o.nodeSize,r&&o.isText&&e[r-1].sameMarkup(o)?(t||(t=e.slice(0,r)),t[t.length-1]=o.withText(t[t.length-1].text+o.text)):t&&t.push(o)}return new P(t||e,n)}static from(e){if(!e)return P.empty;if(e instanceof P)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new P([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}P.empty=new P([],0);const L={index:0,offset:0};function j(e,t){return L.index=e,L.offset=t,L}function z(e,t){if(e===t)return!0;if(!e||"object"!=typeof e||!t||"object"!=typeof t)return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!z(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!z(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}let $=class e{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let r=0;r<e.length;r++){let o=e[r];if(this.eq(o))return e;if(this.type.excludes(o.type))t||(t=e.slice(0,r));else{if(o.type.excludes(this.type))return e;!n&&o.type.rank>this.type.rank&&(t||(t=e.slice(0,r)),t.push(this),n=!0),t&&t.push(o)}}return t||(t=e.slice()),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&z(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Mark.fromJSON");let n=e.marks[t.type];if(!n)throw new RangeError(`There is no mark type ${t.type} in this schema`);let r=n.create(t.attrs);return n.checkAttrs(r.attrs),r}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&0==t.length)return e.none;if(t instanceof e)return[t];let n=t.slice();return n.sort(((e,t)=>e.type.rank-t.type.rank)),n}};$.none=[];class B extends Error{}class _{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,t){let n=V(this.content,e+this.openStart,t);return n&&new _(n,this.openStart,this.openEnd)}removeBetween(e,t){return new _(F(this.content,e+this.openStart,t+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,t){if(!t)return _.empty;let n=t.openStart||0,r=t.openEnd||0;if("number"!=typeof n||"number"!=typeof r)throw new RangeError("Invalid input for Slice.fromJSON");return new _(P.fromJSON(e,t.content),n,r)}static maxOpen(e,t=!0){let n=0,r=0;for(let r=e.firstChild;r&&!r.isLeaf&&(t||!r.type.spec.isolating);r=r.firstChild)n++;for(let n=e.lastChild;n&&!n.isLeaf&&(t||!n.type.spec.isolating);n=n.lastChild)r++;return new _(e,n,r)}}function F(e,t,n){let{index:r,offset:o}=e.findIndex(t),i=e.maybeChild(r),{index:s,offset:a}=e.findIndex(n);if(o==t||i.isText){if(a!=n&&!e.child(s).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(r!=s)throw new RangeError("Removing non-flat range");return e.replaceChild(r,i.copy(F(i.content,t-o-1,n-o-1)))}function V(e,t,n,r){let{index:o,offset:i}=e.findIndex(t),s=e.maybeChild(o);if(i==t||s.isText)return r&&!r.canReplace(o,o,n)?null:e.cut(0,t).append(n).append(e.cut(t));let a=V(s.content,t-i-1,n);return a&&e.replaceChild(o,s.copy(a))}function H(e,t,n){if(n.openStart>e.depth)throw new B("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new B("Inconsistent open depths");return W(e,t,n,0)}function W(e,t,n,r){let o=e.index(r),i=e.node(r);if(o==t.index(r)&&r<e.depth-n.openStart){let s=W(e,t,n,r+1);return i.copy(i.content.replaceChild(o,s))}if(n.content.size){if(n.openStart||n.openEnd||e.depth!=r||t.depth!=r){let{start:o,end:s}=function(e,t){let n=t.depth-e.openStart,r=t.node(n).copy(e.content);for(let e=n-1;e>=0;e--)r=t.node(e).copy(P.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}(n,e);return G(i,Y(e,o,s,t,r))}{let r=e.parent,o=r.content;return G(r,o.cut(0,e.parentOffset).append(n.content).append(o.cut(t.parentOffset)))}}return G(i,Q(e,t,r))}function K(e,t){if(!t.type.compatibleContent(e.type))throw new B("Cannot join "+t.type.name+" onto "+e.type.name)}function q(e,t,n){let r=e.node(n);return K(r,t.node(n)),r}function J(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function U(e,t,n,r){let o=(t||e).node(n),i=0,s=t?t.index(n):o.childCount;e&&(i=e.index(n),e.depth>n?i++:e.textOffset&&(J(e.nodeAfter,r),i++));for(let e=i;e<s;e++)J(o.child(e),r);t&&t.depth==n&&t.textOffset&&J(t.nodeBefore,r)}function G(e,t){return e.type.checkContent(t),e.copy(t)}function Y(e,t,n,r,o){let i=e.depth>o&&q(e,t,o+1),s=r.depth>o&&q(n,r,o+1),a=[];return U(null,e,o,a),i&&s&&t.index(o)==n.index(o)?(K(i,s),J(G(i,Y(e,t,n,r,o+1)),a)):(i&&J(G(i,Q(e,t,o+1)),a),U(t,n,o,a),s&&J(G(s,Q(n,r,o+1)),a)),U(r,null,o,a),new P(a)}function Q(e,t,n){let r=[];if(U(null,e,n,r),e.depth>n){J(G(q(e,t,n+1),Q(e,t,n+1)),r)}return U(t,null,n,r),new P(r)}_.empty=new _(P.empty,0,0);class X{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return null==e?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[3*this.resolveDepth(e)]}index(e){return this.path[3*this.resolveDepth(e)+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e!=this.depth||this.textOffset?1:0)}start(e){return 0==(e=this.resolveDepth(e))?0:this.path[3*e-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]}after(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]+this.path[3*e].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):0==e?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[3*t],r=0==t?0:this.path[3*t-1]+1;for(let t=0;t<e;t++)r+=n.child(t).nodeSize;return r}marks(){let e=this.parent,t=this.index();if(0==e.content.size)return $.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){let e=n;n=r,r=e}let o=n.marks;for(var i=0;i<o.length;i++)!1===o[i].type.spec.inclusive&&(!r||!o[i].isInSet(r.marks))&&(o=o[i--].removeFromSet(o));return o}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,r=e.parent.maybeChild(e.index());for(var o=0;o<n.length;o++)!1===n[o].type.spec.inclusive&&(!r||!n[o].isInSet(r.marks))&&(n=n[o--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new ne(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let t=1;t<=this.depth;t++)e+=(e?"/":"")+this.node(t).type.name+"_"+this.index(t-1);return e+":"+this.parentOffset}static resolve(e,t){if(!(t>=0&&t<=e.content.size))throw new RangeError("Position "+t+" out of range");let n=[],r=0,o=t;for(let t=e;;){let{index:e,offset:i}=t.content.findIndex(o),s=o-i;if(n.push(t,e,r+i),!s||(t=t.child(e),t.isText))break;o=s-1,r+=i+1}return new X(t,n,o)}static resolveCached(e,t){let n=te.get(e);if(n)for(let e=0;e<n.elts.length;e++){let r=n.elts[e];if(r.pos==t)return r}else te.set(e,n=new Z);let r=n.elts[n.i]=X.resolve(e,t);return n.i=(n.i+1)%ee,r}}class Z{constructor(){this.elts=[],this.i=0}}const ee=12,te=new WeakMap;class ne{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const re=Object.create(null);let oe=class e{constructor(e,t,n,r=$.none){this.type=e,this.attrs=t,this.marks=r,this.content=n||P.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,r=0){this.content.nodesBetween(e,t,n,r,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,t,n,r){return this.content.textBetween(e,t,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&z(this.attrs,t||e.defaultAttrs||re)&&$.sameSet(this.marks,n||$.none)}copy(t=null){return t==this.content?this:new e(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.content,t)}cut(e,t=this.content.size){return 0==e&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return _.empty;let r=this.resolve(e),o=this.resolve(t),i=n?0:r.sharedDepth(t),s=r.start(i),a=r.node(i).content.cut(r.pos-s,o.pos-s);return new _(a,r.depth-i,o.depth-i)}replace(e,t,n){return H(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:r}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(r==e||t.isText)return t;e-=r+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(0==e)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let r=this.content.child(t-1);return{node:r,index:t-1,offset:n-r.nodeSize}}resolve(e){return X.resolveCached(this,e)}resolveNoCache(e){return X.resolve(this,e)}rangeHasMark(e,t,n){let r=!1;return t>e&&this.nodesBetween(e,t,(e=>(n.isInSet(e.marks)&&(r=!0),!r))),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),se(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw new Error("Called contentMatchAt on a node with invalid content");return t}canReplace(e,t,n=P.empty,r=0,o=n.childCount){let i=this.contentMatchAt(e).matchFragment(n,r,o),s=i&&i.matchFragment(this.content,t);if(!s||!s.validEnd)return!1;for(let e=r;e<o;e++)if(!this.type.allowsMarks(n.child(e).marks))return!1;return!0}canReplaceWith(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;let o=this.contentMatchAt(e).matchType(n),i=o&&o.matchFragment(this.content,t);return!!i&&i.validEnd}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=$.none;for(let t=0;t<this.marks.length;t++){let n=this.marks[t];n.type.checkAttrs(n.attrs),e=n.addToSet(e)}if(!$.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((e=>e.type.name))}`);this.content.forEach((e=>e.check()))}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map((e=>e.toJSON()))),e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Node.fromJSON");let n;if(t.marks){if(!Array.isArray(t.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=t.marks.map(e.markFromJSON)}if("text"==t.type){if("string"!=typeof t.text)throw new RangeError("Invalid text node in JSON");return e.text(t.text,n)}let r=P.fromJSON(e,t.content),o=e.nodeType(t.type).create(t.attrs,r,n);return o.type.checkAttrs(o.attrs),o}};oe.prototype.text=void 0;class ie extends oe{constructor(e,t,n,r){if(super(e,t,null,r),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):se(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new ie(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new ie(this.type,this.attrs,e,this.marks)}cut(e=0,t=this.text.length){return 0==e&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function se(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}class ae{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,t){let n=new le(e,t);if(null==n.next)return ae.empty;let r=ce(n);n.next&&n.err("Unexpected trailing text");let o=function(e){let t=Object.create(null);return n(me(e,0));function n(r){let o=[];r.forEach((t=>{e[t].forEach((({term:t,to:n})=>{if(!t)return;let r;for(let e=0;e<o.length;e++)o[e][0]==t&&(r=o[e][1]);me(e,n).forEach((e=>{r||o.push([t,r=[]]),-1==r.indexOf(e)&&r.push(e)}))}))}));let i=t[r.join(",")]=new ae(r.indexOf(e.length-1)>-1);for(let e=0;e<o.length;e++){let r=o[e][1].sort(fe);i.next.push({type:o[e][0],next:t[r.join(",")]||n(r)})}return i}}(function(e){let t=[[]];return o(i(e,0),n()),t;function n(){return t.push([])-1}function r(e,n,r){let o={term:r,to:n};return t[e].push(o),o}function o(e,t){e.forEach((e=>e.to=t))}function i(e,t){if("choice"==e.type)return e.exprs.reduce(((e,n)=>e.concat(i(n,t))),[]);if("seq"!=e.type){if("star"==e.type){let s=n();return r(t,s),o(i(e.expr,s),s),[r(s)]}if("plus"==e.type){let s=n();return o(i(e.expr,t),s),o(i(e.expr,s),s),[r(s)]}if("opt"==e.type)return[r(t)].concat(i(e.expr,t));if("range"==e.type){let s=t;for(let t=0;t<e.min;t++){let t=n();o(i(e.expr,s),t),s=t}if(-1==e.max)o(i(e.expr,s),s);else for(let t=e.min;t<e.max;t++){let t=n();r(s,t),o(i(e.expr,s),t),s=t}return[r(s)]}if("name"==e.type)return[r(t,void 0,e.value)];throw new Error("Unknown expr type")}for(let r=0;;r++){let s=i(e.exprs[r],t);if(r==e.exprs.length-1)return s;o(s,t=n())}}}(r));return function(e,t){for(let n=0,r=[e];n<r.length;n++){let e=r[n],o=!e.validEnd,i=[];for(let t=0;t<e.next.length;t++){let{type:n,next:s}=e.next[t];i.push(n.name),o&&!(n.isText||n.hasRequiredAttrs())&&(o=!1),-1==r.indexOf(s)&&r.push(s)}o&&t.err("Only non-generatable nodes ("+i.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}(o,n),o}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let r=this;for(let o=t;r&&o<n;o++)r=r.matchType(e.child(o).type);return r}get inlineContent(){return 0!=this.next.length&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!t.isText&&!t.hasRequiredAttrs())return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let r=[this];return function o(i,s){let a=i.matchFragment(e,n);if(a&&(!t||a.validEnd))return P.from(s.map((e=>e.createAndFill())));for(let e=0;e<i.next.length;e++){let{type:t,next:n}=i.next[e];if(!t.isText&&!t.hasRequiredAttrs()&&-1==r.indexOf(n)){r.push(n);let e=o(n,s.concat(t));if(e)return e}}return null}(this,[])}findWrapping(e){for(let t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let r=n.shift(),o=r.match;if(o.matchType(e)){let e=[];for(let t=r;t.type;t=t.via)e.push(t.type);return e.reverse()}for(let e=0;e<o.next.length;e++){let{type:i,next:s}=o.next[e];!i.isLeaf&&!i.hasRequiredAttrs()&&!(i.name in t)&&(!r.type||s.validEnd)&&(n.push({match:i.contentMatch,type:i,via:r}),t[i.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];return function t(n){e.push(n);for(let r=0;r<n.next.length;r++)-1==e.indexOf(n.next[r].next)&&t(n.next[r].next)}(this),e.map(((t,n)=>{let r=n+(t.validEnd?"*":" ")+" ";for(let n=0;n<t.next.length;n++)r+=(n?", ":"")+t.next[n].type.name+"->"+e.indexOf(t.next[n].next);return r})).join("\n")}}ae.empty=new ae(!0);class le{constructor(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function ce(e){let t=[];do{t.push(de(e))}while(e.eat("|"));return 1==t.length?t[0]:{type:"choice",exprs:t}}function de(e){let t=[];do{t.push(he(e))}while(e.next&&")"!=e.next&&"|"!=e.next);return 1==t.length?t[0]:{type:"seq",exprs:t}}function he(e){let t=function(e){if(e.eat("(")){let t=ce(e);return e.eat(")")||e.err("Missing closing paren"),t}if(!/\W/.test(e.next)){let t=function(e,t){let n=e.nodeTypes,r=n[t];if(r)return[r];let o=[];for(let e in n){let r=n[e];r.isInGroup(t)&&o.push(r)}return 0==o.length&&e.err("No node type or group '"+t+"' found"),o}(e,e.next).map((t=>(null==e.inline?e.inline=t.isInline:e.inline!=t.isInline&&e.err("Mixing inline and block content"),{type:"name",value:t})));return e.pos++,1==t.length?t[0]:{type:"choice",exprs:t}}e.err("Unexpected token '"+e.next+"'")}(e);for(;;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else{if(!e.eat("{"))break;t=pe(e,t)}return t}function ue(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let t=Number(e.next);return e.pos++,t}function pe(e,t){let n=ue(e),r=n;return e.eat(",")&&(r="}"!=e.next?ue(e):-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:t}}function fe(e,t){return t-e}function me(e,t){let n=[];return function t(r){let o=e[r];if(1==o.length&&!o[0].term)return t(o[0].to);n.push(r);for(let e=0;e<o.length;e++){let{term:r,to:i}=o[e];!r&&-1==n.indexOf(i)&&t(i)}}(t),n.sort(fe)}function ge(e){let t=Object.create(null);for(let n in e){let r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function ye(e,t){let n=Object.create(null);for(let r in e){let o=t&&t[r];if(void 0===o){let t=e[r];if(!t.hasDefault)throw new RangeError("No value supplied for attribute "+r);o=t.default}n[r]=o}return n}function be(e,t,n,r){for(let r in t)if(!(r in e))throw new RangeError(`Unsupported attribute ${r} for ${n} of type ${r}`);for(let n in e){let r=e[n];r.validate&&r.validate(t[n])}}function ve(e,t){let n=Object.create(null);if(t)for(let r in t)n[r]=new ke(e,r,t[r]);return n}let we=class e{constructor(e,t,n){this.name=e,this.schema=t,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(" "):[],this.attrs=ve(e,n.attrs),this.defaultAttrs=ge(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||"text"==e),this.isText="text"==e}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==ae.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(e){return this.groups.indexOf(e)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:ye(this.attrs,e)}create(e=null,t,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new oe(this,this.computeAttrs(e),P.from(t),$.setFrom(n))}createChecked(e=null,t,n){return t=P.from(t),this.checkContent(t),new oe(this,this.computeAttrs(e),t,$.setFrom(n))}createAndFill(e=null,t,n){if(e=this.computeAttrs(e),(t=P.from(t)).size){let e=this.contentMatch.fillBefore(t);if(!e)return null;t=e.append(t)}let r=this.contentMatch.matchFragment(t),o=r&&r.fillBefore(P.empty,!0);return o?new oe(this,e,t.append(o),$.setFrom(n)):null}validContent(e){let t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(let t=0;t<e.childCount;t++)if(!this.allowsMarks(e.child(t).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){be(this.attrs,e,"node",this.name)}allowsMarkType(e){return null==this.markSet||this.markSet.indexOf(e)>-1}allowsMarks(e){if(null==this.markSet)return!0;for(let t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0}allowedMarks(e){if(null==this.markSet)return e;let t;for(let n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||(t=e.slice(0,n));return t?t.length?t:$.none:e}static compile(t,n){let r=Object.create(null);t.forEach(((t,o)=>r[t]=new e(t,n,o)));let o=n.spec.topNode||"doc";if(!r[o])throw new RangeError("Schema is missing its top node type ('"+o+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let e in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}};class ke{constructor(e,t,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,"default"),this.default=n.default,this.validate="string"==typeof n.validate?function(e,t,n){let r=n.split("|");return n=>{let o=null===n?"null":typeof n;if(r.indexOf(o)<0)throw new RangeError(`Expected value of type ${r} for attribute ${t} on type ${e}, got ${o}`)}}(e,t,n.validate):n.validate}get isRequired(){return!this.hasDefault}}class xe{constructor(e,t,n,r){this.name=e,this.rank=t,this.schema=n,this.spec=r,this.attrs=ve(e,r.attrs),this.excluded=null;let o=ge(this.attrs);this.instance=o?new $(this,o):null}create(e=null){return!e&&this.instance?this.instance:new $(this,ye(this.attrs,e))}static compile(e,t){let n=Object.create(null),r=0;return e.forEach(((e,o)=>n[e]=new xe(e,r++,t,o))),n}removeFromSet(e){for(var t=0;t<e.length;t++)e[t].type==this&&(e=e.slice(0,t).concat(e.slice(t+1)),t--);return e}isInSet(e){for(let t=0;t<e.length;t++)if(e[t].type==this)return e[t]}checkAttrs(e){be(this.attrs,e,"mark",this.name)}excludes(e){return this.excluded.indexOf(e)>-1}}class Se{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let t=this.spec={};for(let n in e)t[n]=e[n];t.nodes=D.from(e.nodes),t.marks=D.from(e.marks||{}),this.nodes=we.compile(this.spec.nodes,this),this.marks=xe.compile(this.spec.marks,this);let n=Object.create(null);for(let e in this.nodes){if(e in this.marks)throw new RangeError(e+" can not be both a node and a mark");let t=this.nodes[e],r=t.spec.content||"",o=t.spec.marks;if(t.contentMatch=n[r]||(n[r]=ae.parse(r,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!t.isInline||!t.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=t}t.markSet="_"==o?null:o?Oe(this,o.split(" ")):""!=o&&t.inlineContent?null:[]}for(let e in this.marks){let t=this.marks[e],n=t.spec.excludes;t.excluded=null==n?[t]:""==n?[]:Oe(this,n.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(e,t=null,n,r){if("string"==typeof e)e=this.nodeType(e);else{if(!(e instanceof we))throw new RangeError("Invalid node type: "+e);if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}return e.createChecked(t,n,r)}text(e,t){let n=this.nodes.text;return new ie(n,n.defaultAttrs,e,$.setFrom(t))}mark(e,t){return"string"==typeof e&&(e=this.marks[e]),e.create(t)}nodeFromJSON(e){return oe.fromJSON(this,e)}markFromJSON(e){return $.fromJSON(this,e)}nodeType(e){let t=this.nodes[e];if(!t)throw new RangeError("Unknown node type: "+e);return t}}function Oe(e,t){let n=[];for(let r=0;r<t.length;r++){let o=t[r],i=e.marks[o],s=i;if(i)n.push(i);else for(let t in e.marks){let r=e.marks[t];("_"==o||r.spec.group&&r.spec.group.split(" ").indexOf(o)>-1)&&n.push(s=r)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[r]+"'")}return n}class Ce{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[];let n=this.matchedStyles=[];t.forEach((e=>{if(null!=e.tag)this.tags.push(e);else if(function(e){return null!=e.style}(e)){let t=/[^=]*/.exec(e.style)[0];n.indexOf(t)<0&&n.push(t),this.styles.push(e)}})),this.normalizeLists=!this.tags.some((t=>{if(!/^(ul|ol)\b/.test(t.tag)||!t.node)return!1;let n=e.nodes[t.node];return n.contentMatch.matchType(n)}))}parse(e,t={}){let n=new De(this,t,!1);return n.addAll(e,$.none,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new De(this,t,!0);return n.addAll(e,$.none,t.from,t.to),_.maxOpen(n.finish())}matchTag(e,t,n){for(let r=n?this.tags.indexOf(n)+1:0;r<this.tags.length;r++){let n=this.tags[r];if(Re(e,n.tag)&&(void 0===n.namespace||e.namespaceURI==n.namespace)&&(!n.context||t.matchesContext(n.context))){if(n.getAttrs){let t=n.getAttrs(e);if(!1===t)continue;n.attrs=t||void 0}return n}}}matchStyle(e,t,n,r){for(let o=r?this.styles.indexOf(r)+1:0;o<this.styles.length;o++){let r=this.styles[o],i=r.style;if(!(0!=i.indexOf(e)||r.context&&!n.matchesContext(r.context)||i.length>e.length&&(61!=i.charCodeAt(e.length)||i.slice(e.length+1)!=t))){if(r.getAttrs){let e=r.getAttrs(t);if(!1===e)continue;r.attrs=e||void 0}return r}}}static schemaRules(e){let t=[];function n(e){let n=null==e.priority?50:e.priority,r=0;for(;r<t.length;r++){let e=t[r];if((null==e.priority?50:e.priority)<n)break}t.splice(r,0,e)}for(let t in e.marks){let r=e.marks[t].spec.parseDOM;r&&r.forEach((e=>{n(e=Ie(e)),e.mark||e.ignore||e.clearMark||(e.mark=t)}))}for(let t in e.nodes){let r=e.nodes[t].spec.parseDOM;r&&r.forEach((e=>{n(e=Ie(e)),e.node||e.ignore||e.mark||(e.node=t)}))}return t}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new Ce(e,Ce.schemaRules(e)))}}const Me={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},Ee={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},Te={ol:!0,ul:!0};function Ne(e,t,n){return null!=t?(t?1:0)|("full"===t?2:0):e&&"pre"==e.whitespace?3:-5&n}class Ae{constructor(e,t,n,r,o,i){this.type=e,this.attrs=t,this.marks=n,this.solid=r,this.options=i,this.content=[],this.activeMarks=$.none,this.match=o||(4&i?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let t=this.type.contentMatch.fillBefore(P.from(e));if(!t){let t,n=this.type.contentMatch;return(t=n.findWrapping(e.type))?(this.match=n,t):null}this.match=this.type.contentMatch.matchFragment(t)}return this.match.findWrapping(e.type)}finish(e){if(!(1&this.options)){let e,t=this.content[this.content.length-1];if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let n=t;t.text.length==e[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-e[0].length))}}let t=P.from(this.content);return!e&&this.match&&(t=t.append(this.match.fillBefore(P.empty,!0))),this.type?this.type.create(this.attrs,t,this.marks):t}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!Me.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class De{constructor(e,t,n){this.parser=e,this.options=t,this.isOpen=n,this.open=0,this.localPreserveWS=!1;let r,o=t.topNode,i=Ne(null,t.preserveWhitespace,0)|(n?4:0);r=o?new Ae(o.type,o.attrs,$.none,!0,t.topMatch||o.type.contentMatch,i):new Ae(n?null:e.schema.topNodeType,null,$.none,!0,null,i),this.nodes=[r],this.find=t.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,t){3==e.nodeType?this.addTextNode(e,t):1==e.nodeType&&this.addElement(e,t)}addTextNode(e,t){let n=e.nodeValue,r=this.top,o=2&r.options?"full":this.localPreserveWS||(1&r.options)>0;if("full"===o||r.inlineContext(e)||/[^ \t\r\n\u000c]/.test(n)){if(o)n="full"!==o?n.replace(/\r?\n|\r/g," "):n.replace(/\r\n?/g,"\n");else if(n=n.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let t=r.content[r.content.length-1],o=e.previousSibling;(!t||o&&"BR"==o.nodeName||t.isText&&/[ \t\r\n\u000c]$/.test(t.text))&&(n=n.slice(1))}n&&this.insertNode(this.parser.schema.text(n),t),this.findInText(e)}else this.findInside(e)}addElement(e,t,n){let r=this.localPreserveWS,o=this.top;("PRE"==e.tagName||/pre/.test(e.style&&e.style.whiteSpace))&&(this.localPreserveWS=!0);let i,s=e.nodeName.toLowerCase();Te.hasOwnProperty(s)&&this.parser.normalizeLists&&function(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let e=1==t.nodeType?t.nodeName.toLowerCase():null;e&&Te.hasOwnProperty(e)&&n?(n.appendChild(t),t=n):"li"==e?n=t:e&&(n=null)}}(e);let a=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(i=this.parser.matchTag(e,this,n));e:if(a?a.ignore:Ee.hasOwnProperty(s))this.findInside(e),this.ignoreFallback(e,t);else if(!a||a.skip||a.closeParent){a&&a.closeParent?this.open=Math.max(0,this.open-1):a&&a.skip.nodeType&&(e=a.skip);let n,r=this.needsBlock;if(Me.hasOwnProperty(s))o.content.length&&o.content[0].isInline&&this.open&&(this.open--,o=this.top),n=!0,o.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,t);break e}let i=a&&a.skip?t:this.readStyles(e,t);i&&this.addAll(e,i),n&&this.sync(o),this.needsBlock=r}else{let n=this.readStyles(e,t);n&&this.addElementByRule(e,a,n,!1===a.consuming?i:void 0)}this.localPreserveWS=r}leafFallback(e,t){"BR"==e.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode("\n"),t)}ignoreFallback(e,t){"BR"==e.nodeName&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),t)}readStyles(e,t){let n=e.style;if(n&&n.length)for(let e=0;e<this.parser.matchedStyles.length;e++){let r=this.parser.matchedStyles[e],o=n.getPropertyValue(r);if(o)for(let e;;){let n=this.parser.matchStyle(r,o,this,e);if(!n)break;if(n.ignore)return null;if(t=n.clearMark?t.filter((e=>!n.clearMark(e))):t.concat(this.parser.schema.marks[n.mark].create(n.attrs)),!1!==n.consuming)break;e=n}}return t}addElementByRule(e,t,n,r){let o,i;if(t.node)if(i=this.parser.schema.nodes[t.node],i.isLeaf)this.insertNode(i.create(t.attrs),n)||this.leafFallback(e,n);else{let e=this.enter(i,t.attrs||null,n,t.preserveWhitespace);e&&(o=!0,n=e)}else{let e=this.parser.schema.marks[t.mark];n=n.concat(e.create(t.attrs))}let s=this.top;if(i&&i.isLeaf)this.findInside(e);else if(r)this.addElement(e,n,r);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach((e=>this.insertNode(e,n)));else{let r=e;"string"==typeof t.contentElement?r=e.querySelector(t.contentElement):"function"==typeof t.contentElement?r=t.contentElement(e):t.contentElement&&(r=t.contentElement),this.findAround(e,r,!0),this.addAll(r,n),this.findAround(e,r,!1)}o&&this.sync(s)&&this.open--}addAll(e,t,n,r){let o=n||0;for(let i=n?e.childNodes[n]:e.firstChild,s=null==r?null:e.childNodes[r];i!=s;i=i.nextSibling,++o)this.findAtPoint(e,o),this.addDOM(i,t);this.findAtPoint(e,o)}findPlace(e,t){let n,r;for(let t=this.open;t>=0;t--){let o=this.nodes[t],i=o.findWrapping(e);if(i&&(!n||n.length>i.length)&&(n=i,r=o,!i.length)||o.solid)break}if(!n)return null;this.sync(r);for(let e=0;e<n.length;e++)t=this.enterInner(n[e],null,t,!1);return t}insertNode(e,t){if(e.isInline&&this.needsBlock&&!this.top.type){let e=this.textblockFromContext();e&&(t=this.enterInner(e,null,t))}let n=this.findPlace(e,t);if(n){this.closeExtra();let t=this.top;t.match&&(t.match=t.match.matchType(e.type));let r=$.none;for(let o of n.concat(e.marks))(t.type?t.type.allowsMarkType(o.type):Pe(o.type,e.type))&&(r=o.addToSet(r));return t.content.push(e.mark(r)),!0}return!1}enter(e,t,n,r){let o=this.findPlace(e.create(t),n);return o&&(o=this.enterInner(e,t,n,!0,r)),o}enterInner(e,t,n,r=!1,o){this.closeExtra();let i=this.top;i.match=i.match&&i.match.matchType(e);let s=Ne(e,o,i.options);4&i.options&&0==i.content.length&&(s|=4);let a=$.none;return n=n.filter((t=>!(i.type?i.type.allowsMarkType(t.type):Pe(t.type,e))||(a=t.addToSet(a),!1))),this.nodes.push(new Ae(e,t,a,r,null,s)),this.open++,n}closeExtra(e=!1){let t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!(!this.isOpen&&!this.options.topOpen))}sync(e){for(let t=this.open;t>=0;t--){if(this.nodes[t]==e)return this.open=t,!0;this.localPreserveWS&&(this.nodes[t].options|=1)}return!1}get currentPos(){this.closeExtra();let e=0;for(let t=this.open;t>=0;t--){let n=this.nodes[t].content;for(let t=n.length-1;t>=0;t--)e+=n[t].nodeSize;t&&e++}return e}findAtPoint(e,t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)}findInside(e){if(this.find)for(let t=0;t<this.find.length;t++)null==this.find[t].pos&&1==e.nodeType&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)}findAround(e,t,n){if(e!=t&&this.find)for(let r=0;r<this.find.length;r++)null==this.find[r].pos&&1==e.nodeType&&e.contains(this.find[r].node)&&t.compareDocumentPosition(this.find[r].node)&(n?2:4)&&(this.find[r].pos=this.currentPos)}findInText(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let t=e.split("/"),n=this.options.context,r=!(this.isOpen||n&&n.parent.type!=this.nodes[0].type),o=-(n?n.depth+1:0)+(r?0:1),i=(e,s)=>{for(;e>=0;e--){let a=t[e];if(""==a){if(e==t.length-1||0==e)continue;for(;s>=o;s--)if(i(e-1,s))return!0;return!1}{let e=s>0||0==s&&r?this.nodes[s].type:n&&s>=o?n.node(s-o).type:null;if(!e||e.name!=a&&!e.isInGroup(a))return!1;s--}}return!0};return i(t.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let t=e.depth;t>=0;t--){let n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}}function Re(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Ie(e){let t={};for(let n in e)t[n]=e[n];return t}function Pe(e,t){let n=t.schema.nodes;for(let r in n){let o=n[r];if(!o.allowsMarkType(e))continue;let i=[],s=e=>{i.push(e);for(let n=0;n<e.edgeCount;n++){let{type:r,next:o}=e.edge(n);if(r==t||i.indexOf(o)<0&&s(o))return!0}};if(s(o.contentMatch))return!0}}class Le{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||(n=ze(t).createDocumentFragment());let r=n,o=[];return e.forEach((e=>{if(o.length||e.marks.length){let n=0,i=0;for(;n<o.length&&i<e.marks.length;){let t=e.marks[i];if(this.marks[t.type.name]){if(!t.eq(o[n][0])||!1===t.type.spec.spanning)break;n++,i++}else i++}for(;n<o.length;)r=o.pop()[1];for(;i<e.marks.length;){let n=e.marks[i++],s=this.serializeMark(n,e.isInline,t);s&&(o.push([n,r]),r.appendChild(s.dom),r=s.contentDOM||s.dom)}}r.appendChild(this.serializeNodeInner(e,t))})),n}serializeNodeInner(e,t){let{dom:n,contentDOM:r}=_e(ze(t),this.nodes[e.type.name](e),null,e.attrs);if(r){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,t,r)}return n}serializeNode(e,t={}){let n=this.serializeNodeInner(e,t);for(let r=e.marks.length-1;r>=0;r--){let o=this.serializeMark(e.marks[r],e.isInline,t);o&&((o.contentDOM||o.dom).appendChild(n),n=o.dom)}return n}serializeMark(e,t,n={}){let r=this.marks[e.type.name];return r&&_e(ze(n),r(e,t),null,e.attrs)}static renderSpec(e,t,n=null,r){return _e(e,t,n,r)}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new Le(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let t=je(e.nodes);return t.text||(t.text=e=>e.text),t}static marksFromSchema(e){return je(e.marks)}}function je(e){let t={};for(let n in e){let r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function ze(e){return e.document||window.document}const $e=new WeakMap;function Be(e){let t=$e.get(e);return void 0===t&&$e.set(e,t=function(e){let t=null;function n(e){if(e&&"object"==typeof e)if(Array.isArray(e))if("string"==typeof e[0])t||(t=[]),t.push(e);else for(let t=0;t<e.length;t++)n(e[t]);else for(let t in e)n(e[t])}return n(e),t}(e)),t}function _e(e,t,n,r){if("string"==typeof t)return{dom:e.createTextNode(t)};if(null!=t.nodeType)return{dom:t};if(t.dom&&null!=t.dom.nodeType)return t;let o,i=t[0];if("string"!=typeof i)throw new RangeError("Invalid array passed to renderSpec");if(r&&(o=Be(r))&&o.indexOf(t)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let s=i.indexOf(" ");s>0&&(n=i.slice(0,s),i=i.slice(s+1));let a,l=n?e.createElementNS(n,i):e.createElement(i),c=t[1],d=1;if(c&&"object"==typeof c&&null==c.nodeType&&!Array.isArray(c)){d=2;for(let e in c)if(null!=c[e]){let t=e.indexOf(" ");t>0?l.setAttributeNS(e.slice(0,t),e.slice(t+1),c[e]):l.setAttribute(e,c[e])}}for(let o=d;o<t.length;o++){let i=t[o];if(0===i){if(o<t.length-1||o>d)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}{let{dom:t,contentDOM:o}=_e(e,i,n,r);if(l.appendChild(t),o){if(a)throw new RangeError("Multiple content holes");a=o}}}return{dom:l,contentDOM:a}}const Fe=Math.pow(2,16);function Ve(e,t){return e+t*Fe}function He(e){return 65535&e}class We{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(8&this.delInfo)>0}get deletedBefore(){return(5&this.delInfo)>0}get deletedAfter(){return(6&this.delInfo)>0}get deletedAcross(){return(4&this.delInfo)>0}}class Ke{constructor(e,t=!1){if(this.ranges=e,this.inverted=t,!e.length&&Ke.empty)return Ke.empty}recover(e){let t=0,n=He(e);if(!this.inverted)for(let e=0;e<n;e++)t+=this.ranges[3*e+2]-this.ranges[3*e+1];return this.ranges[3*n]+t+((r=e)-(65535&r))/Fe;var r}mapResult(e,t=1){return this._map(e,t,!1)}map(e,t=1){return this._map(e,t,!0)}_map(e,t,n){let r=0,o=this.inverted?2:1,i=this.inverted?1:2;for(let s=0;s<this.ranges.length;s+=3){let a=this.ranges[s]-(this.inverted?r:0);if(a>e)break;let l=this.ranges[s+o],c=this.ranges[s+i],d=a+l;if(e<=d){let o=a+r+((l?e==a?-1:e==d?1:t:t)<0?0:c);if(n)return o;let i=e==(t<0?a:d)?null:Ve(s/3,e-a),h=e==a?2:e==d?1:4;return(t<0?e!=a:e!=d)&&(h|=8),new We(o,h,i)}r+=c-l}return n?e+r:new We(e+r,0,null)}touches(e,t){let n=0,r=He(t),o=this.inverted?2:1,i=this.inverted?1:2;for(let t=0;t<this.ranges.length;t+=3){let s=this.ranges[t]-(this.inverted?n:0);if(s>e)break;let a=this.ranges[t+o];if(e<=s+a&&t==3*r)return!0;n+=this.ranges[t+i]-a}return!1}forEach(e){let t=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,o=0;r<this.ranges.length;r+=3){let i=this.ranges[r],s=i-(this.inverted?o:0),a=i+(this.inverted?0:o),l=this.ranges[r+t],c=this.ranges[r+n];e(s,s+l,a,a+c),o+=c-l}}invert(){return new Ke(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return 0==e?Ke.empty:new Ke(e<0?[0,-e,0]:[0,0,e])}}Ke.empty=new Ke([]);class qe{constructor(e,t,n=0,r=(e?e.length:0)){this.mirror=t,this.from=n,this.to=r,this._maps=e||[],this.ownData=!(e||t)}get maps(){return this._maps}slice(e=0,t=this.maps.length){return new qe(this._maps,this.mirror,e,t)}appendMap(e,t){this.ownData||(this._maps=this._maps.slice(),this.mirror=this.mirror&&this.mirror.slice(),this.ownData=!0),this.to=this._maps.push(e),null!=t&&this.setMirror(this._maps.length-1,t)}appendMapping(e){for(let t=0,n=this._maps.length;t<e._maps.length;t++){let r=e.getMirror(t);this.appendMap(e._maps[t],null!=r&&r<t?n+r:void 0)}}getMirror(e){if(this.mirror)for(let t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]}setMirror(e,t){this.mirror||(this.mirror=[]),this.mirror.push(e,t)}appendMappingInverted(e){for(let t=e.maps.length-1,n=this._maps.length+e._maps.length;t>=0;t--){let r=e.getMirror(t);this.appendMap(e._maps[t].invert(),null!=r&&r>t?n-r-1:void 0)}}invert(){let e=new qe;return e.appendMappingInverted(this),e}map(e,t=1){if(this.mirror)return this._map(e,t,!0);for(let n=this.from;n<this.to;n++)e=this._maps[n].map(e,t);return e}mapResult(e,t=1){return this._map(e,t,!1)}_map(e,t,n){let r=0;for(let n=this.from;n<this.to;n++){let o=this._maps[n].mapResult(e,t);if(null!=o.recover){let t=this.getMirror(n);if(null!=t&&t>n&&t<this.to){n=t,e=this._maps[t].recover(o.recover);continue}}r|=o.delInfo,e=o.pos}return n?e:new We(e,r,null)}}const Je=Object.create(null);class Ue{getMap(){return Ke.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw new RangeError("Invalid input for Step.fromJSON");let n=Je[t.stepType];if(!n)throw new RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in Je)throw new RangeError("Duplicate use of step JSON ID "+e);return Je[e]=t,t.prototype.jsonID=e,t}}class Ge{constructor(e,t){this.doc=e,this.failed=t}static ok(e){return new Ge(e,null)}static fail(e){return new Ge(null,e)}static fromReplace(e,t,n,r){try{return Ge.ok(e.replace(t,n,r))}catch(e){if(e instanceof B)return Ge.fail(e.message);throw e}}}function Ye(e,t,n){let r=[];for(let o=0;o<e.childCount;o++){let i=e.child(o);i.content.size&&(i=i.copy(Ye(i.content,t,i))),i.isInline&&(i=t(i,n,o)),r.push(i)}return P.fromArray(r)}class Qe extends Ue{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=e.resolve(this.from),r=n.node(n.sharedDepth(this.to)),o=new _(Ye(t.content,((e,t)=>e.isAtom&&t.type.allowsMarkType(this.mark.type)?e.mark(this.mark.addToSet(e.marks)):e),r),t.openStart,t.openEnd);return Ge.fromReplace(e,this.from,this.to,o)}invert(){return new Xe(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new Qe(t.pos,n.pos,this.mark)}merge(e){return e instanceof Qe&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new Qe(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Qe(t.from,t.to,e.markFromJSON(t.mark))}}Ue.jsonID("addMark",Qe);class Xe extends Ue{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=new _(Ye(t.content,(e=>e.mark(this.mark.removeFromSet(e.marks))),e),t.openStart,t.openEnd);return Ge.fromReplace(e,this.from,this.to,n)}invert(){return new Qe(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new Xe(t.pos,n.pos,this.mark)}merge(e){return e instanceof Xe&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new Xe(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Xe(t.from,t.to,e.markFromJSON(t.mark))}}Ue.jsonID("removeMark",Xe);class Ze extends Ue{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return Ge.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return Ge.fromReplace(e,this.pos,this.pos+1,new _(P.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);if(t){let e=this.mark.addToSet(t.marks);if(e.length==t.marks.length){for(let n=0;n<t.marks.length;n++)if(!t.marks[n].isInSet(e))return new Ze(this.pos,t.marks[n]);return new Ze(this.pos,this.mark)}}return new et(this.pos,this.mark)}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new Ze(t.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if("number"!=typeof t.pos)throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Ze(t.pos,e.markFromJSON(t.mark))}}Ue.jsonID("addNodeMark",Ze);class et extends Ue{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return Ge.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return Ge.fromReplace(e,this.pos,this.pos+1,new _(P.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);return t&&this.mark.isInSet(t.marks)?new Ze(this.pos,this.mark):this}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new et(t.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if("number"!=typeof t.pos)throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new et(t.pos,e.markFromJSON(t.mark))}}Ue.jsonID("removeNodeMark",et);class tt extends Ue{constructor(e,t,n,r=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=r}apply(e){return this.structure&&rt(e,this.from,this.to)?Ge.fail("Structure replace would overwrite content"):Ge.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Ke([this.from,this.to-this.from,this.slice.size])}invert(e){return new tt(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deletedAcross&&n.deletedAcross?null:new tt(t.pos,Math.max(t.pos,n.pos),this.slice)}merge(e){if(!(e instanceof tt)||e.structure||this.structure)return null;if(this.from+this.slice.size!=e.from||this.slice.openEnd||e.slice.openStart){if(e.to!=this.from||this.slice.openStart||e.slice.openEnd)return null;{let t=this.slice.size+e.slice.size==0?_.empty:new _(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new tt(e.from,this.to,t,this.structure)}}{let t=this.slice.size+e.slice.size==0?_.empty:new _(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new tt(this.from,this.to+(e.to-e.from),t,this.structure)}}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new tt(t.from,t.to,_.fromJSON(e,t.slice),!!t.structure)}}Ue.jsonID("replace",tt);class nt extends Ue{constructor(e,t,n,r,o,i,s=!1){super(),this.from=e,this.to=t,this.gapFrom=n,this.gapTo=r,this.slice=o,this.insert=i,this.structure=s}apply(e){if(this.structure&&(rt(e,this.from,this.gapFrom)||rt(e,this.gapTo,this.to)))return Ge.fail("Structure gap-replace would overwrite content");let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return Ge.fail("Gap is not a flat range");let n=this.slice.insertAt(this.insert,t.content);return n?Ge.fromReplace(e,this.from,this.to,n):Ge.fail("Content does not fit in gap")}getMap(){return new Ke([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let t=this.gapTo-this.gapFrom;return new nt(this.from,this.from+this.slice.size+t,this.from+this.insert,this.from+this.insert+t,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1),r=this.from==this.gapFrom?t.pos:e.map(this.gapFrom,-1),o=this.to==this.gapTo?n.pos:e.map(this.gapTo,1);return t.deletedAcross&&n.deletedAcross||r<t.pos||o>n.pos?null:new nt(t.pos,n.pos,r,o,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to||"number"!=typeof t.gapFrom||"number"!=typeof t.gapTo||"number"!=typeof t.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new nt(t.from,t.to,t.gapFrom,t.gapTo,_.fromJSON(e,t.slice),t.insert,!!t.structure)}}function rt(e,t,n){let r=e.resolve(t),o=n-t,i=r.depth;for(;o>0&&i>0&&r.indexAfter(i)==r.node(i).childCount;)i--,o--;if(o>0){let e=r.node(i).maybeChild(r.indexAfter(i));for(;o>0;){if(!e||e.isLeaf)return!0;e=e.firstChild,o--}}return!1}function ot(e,t,n,r=n.contentMatch,o=!0){let i=e.doc.nodeAt(t),s=[],a=t+1;for(let t=0;t<i.childCount;t++){let l=i.child(t),c=a+l.nodeSize,d=r.matchType(l.type);if(d){r=d;for(let t=0;t<l.marks.length;t++)n.allowsMarkType(l.marks[t].type)||e.step(new Xe(a,c,l.marks[t]));if(o&&l.isText&&"pre"!=n.whitespace){let e,t,r=/\r?\n|\r/g;for(;e=r.exec(l.text);)t||(t=new _(P.from(n.schema.text(" ",n.allowedMarks(l.marks))),0,0)),s.push(new tt(a+e.index,a+e.index+e[0].length,t))}}else s.push(new tt(a,c,_.empty));a=c}if(!r.validEnd){let t=r.fillBefore(P.empty,!0);e.replace(a,a,new _(t,0,0))}for(let t=s.length-1;t>=0;t--)e.step(s[t])}function it(e,t,n){return(0==t||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function st(e){let t=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let n=e.depth;;--n){let r=e.$from.node(n),o=e.$from.index(n),i=e.$to.indexAfter(n);if(n<e.depth&&r.canReplace(o,i,t))return n;if(0==n||r.type.spec.isolating||!it(r,o,i))break}return null}function at(e,t,n=null,r=e){let o=function(e,t){let{parent:n,startIndex:r,endIndex:o}=e,i=n.contentMatchAt(r).findWrapping(t);if(!i)return null;let s=i.length?i[0]:t;return n.canReplaceWith(r,o,s)?i:null}(e,t),i=o&&function(e,t){let{parent:n,startIndex:r,endIndex:o}=e,i=n.child(r),s=t.contentMatch.findWrapping(i.type);if(!s)return null;let a=(s.length?s[s.length-1]:t).contentMatch;for(let e=r;a&&e<o;e++)a=a.matchType(n.child(e).type);return a&&a.validEnd?s:null}(r,t);return i?o.map(lt).concat({type:t,attrs:n}).concat(i.map(lt)):null}function lt(e){return{type:e,attrs:null}}function ct(e,t,n,r){t.forEach(((o,i)=>{if(o.isText){let s,a=/\r?\n|\r/g;for(;s=a.exec(o.text);){let o=e.mapping.slice(r).map(n+1+i+s.index);e.replaceWith(o,o+1,t.type.schema.linebreakReplacement.create())}}}))}function dt(e,t,n,r){t.forEach(((o,i)=>{if(o.type==o.type.schema.linebreakReplacement){let o=e.mapping.slice(r).map(n+1+i);e.replaceWith(o,o+1,t.type.schema.text("\n"))}}))}function ht(e,t,n=1,r){let o=e.resolve(t),i=o.depth-n,s=r&&r[r.length-1]||o.parent;if(i<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!s.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(let e=o.depth-1,t=n-2;e>i;e--,t--){let n=o.node(e),i=o.index(e);if(n.type.spec.isolating)return!1;let s=n.content.cutByIndex(i,n.childCount),a=r&&r[t+1];a&&(s=s.replaceChild(0,a.type.create(a.attrs)));let l=r&&r[t]||n;if(!n.canReplace(i+1,n.childCount)||!l.type.validContent(s))return!1}let a=o.indexAfter(i),l=r&&r[0];return o.node(i).canReplaceWith(a,a,l?l.type:o.node(i+1).type)}function ut(e,t){let n=e.resolve(t),r=n.index();return pt(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function pt(e,t){return!(!e||!t||e.isLeaf||!function(e,t){t.content.size||e.type.compatibleContent(t.type);let n=e.contentMatchAt(e.childCount),{linebreakReplacement:r}=e.type.schema;for(let o=0;o<t.childCount;o++){let i=t.child(o),s=i.type==r?e.type.schema.nodes.text:i.type;if(n=n.matchType(s),!n||!e.type.allowsMarks(i.marks))return!1}return n.validEnd}(e,t))}function ft(e,t,n=-1){let r=e.resolve(t);for(let e=r.depth;;e--){let o,i,s=r.index(e);if(e==r.depth?(o=r.nodeBefore,i=r.nodeAfter):n>0?(o=r.node(e+1),s++,i=r.node(e).maybeChild(s)):(o=r.node(e).maybeChild(s-1),i=r.node(e+1)),o&&!o.isTextblock&&pt(o,i)&&r.node(e).canReplace(s,s+1))return t;if(0==e)break;t=n<0?r.before(e):r.after(e)}}function mt(e,t,n=t,r=_.empty){if(t==n&&!r.size)return null;let o=e.resolve(t),i=e.resolve(n);return gt(o,i,r)?new tt(t,n,r):new yt(o,i,r).fit()}function gt(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}Ue.jsonID("replaceAround",nt);class yt{constructor(e,t,n){this.$from=e,this.$to=t,this.unplaced=n,this.frontier=[],this.placed=P.empty;for(let t=0;t<=e.depth;t++){let n=e.node(t);this.frontier.push({type:n.type,match:n.contentMatchAt(e.indexAfter(t))})}for(let t=e.depth;t>0;t--)this.placed=P.from(e.node(t).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let e=this.findFittable();e?this.placeNodes(e):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),t=this.placed.size-this.depth-this.$from.depth,n=this.$from,r=this.close(e<0?this.$to:n.doc.resolve(e));if(!r)return null;let o=this.placed,i=n.depth,s=r.depth;for(;i&&s&&1==o.childCount;)o=o.firstChild.content,i--,s--;let a=new _(o,i,s);return e>-1?new nt(n.pos,e,this.$to.pos,this.$to.end(),a,t):a.size||n.pos!=this.$to.pos?new tt(n.pos,r.pos,a):null}findFittable(){let e=this.unplaced.openStart;for(let t=this.unplaced.content,n=0,r=this.unplaced.openEnd;n<e;n++){let o=t.firstChild;if(t.childCount>1&&(r=0),o.type.spec.isolating&&r<=n){e=n;break}t=o.content}for(let t=1;t<=2;t++)for(let n=1==t?e:this.unplaced.openStart;n>=0;n--){let e,r=null;n?(r=wt(this.unplaced.content,n-1).firstChild,e=r.content):e=this.unplaced.content;let o=e.firstChild;for(let e=this.depth;e>=0;e--){let i,{type:s,match:a}=this.frontier[e],l=null;if(1==t&&(o?a.matchType(o.type)||(l=a.fillBefore(P.from(o),!1)):r&&s.compatibleContent(r.type)))return{sliceDepth:n,frontierDepth:e,parent:r,inject:l};if(2==t&&o&&(i=a.findWrapping(o.type)))return{sliceDepth:n,frontierDepth:e,parent:r,wrap:i};if(r&&a.matchType(r.type))break}}}openMore(){let{content:e,openStart:t,openEnd:n}=this.unplaced,r=wt(e,t);return!(!r.childCount||r.firstChild.isLeaf)&&(this.unplaced=new _(e,t+1,Math.max(n,r.size+t>=e.size-n?t+1:0)),!0)}dropNode(){let{content:e,openStart:t,openEnd:n}=this.unplaced,r=wt(e,t);if(r.childCount<=1&&t>0){let o=e.size-t<=t+r.size;this.unplaced=new _(bt(e,t-1,1),t-1,o?t-1:n)}else this.unplaced=new _(bt(e,t,1),t,n)}placeNodes({sliceDepth:e,frontierDepth:t,parent:n,inject:r,wrap:o}){for(;this.depth>t;)this.closeFrontierNode();if(o)for(let e=0;e<o.length;e++)this.openFrontierNode(o[e]);let i=this.unplaced,s=n?n.content:i.content,a=i.openStart-e,l=0,c=[],{match:d,type:h}=this.frontier[t];if(r){for(let e=0;e<r.childCount;e++)c.push(r.child(e));d=d.matchFragment(r)}let u=s.size+e-(i.content.size-i.openEnd);for(;l<s.childCount;){let e=s.child(l),t=d.matchType(e.type);if(!t)break;l++,(l>1||0==a||e.content.size)&&(d=t,c.push(kt(e.mark(h.allowedMarks(e.marks)),1==l?a:0,l==s.childCount?u:-1)))}let p=l==s.childCount;p||(u=-1),this.placed=vt(this.placed,t,P.from(c)),this.frontier[t].match=d,p&&u<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let e=0,t=s;e<u;e++){let e=t.lastChild;this.frontier.push({type:e.type,match:e.contentMatchAt(e.childCount)}),t=e.content}this.unplaced=p?0==e?_.empty:new _(bt(i.content,e-1,1),e-1,u<0?i.openEnd:e-1):new _(bt(i.content,e,l),i.openStart,i.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e,t=this.frontier[this.depth];if(!t.type.isTextblock||!xt(this.$to,this.$to.depth,t.type,t.match,!1)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:n}=this.$to,r=this.$to.after(n);for(;n>1&&r==this.$to.end(--n);)++r;return r}findCloseLevel(e){e:for(let t=Math.min(this.depth,e.depth);t>=0;t--){let{match:n,type:r}=this.frontier[t],o=t<e.depth&&e.end(t+1)==e.pos+(e.depth-(t+1)),i=xt(e,t,r,n,o);if(i){for(let n=t-1;n>=0;n--){let{match:t,type:r}=this.frontier[n],o=xt(e,n,r,t,!0);if(!o||o.childCount)continue e}return{depth:t,fit:i,move:o?e.doc.resolve(e.after(t+1)):e}}}}close(e){let t=this.findCloseLevel(e);if(!t)return null;for(;this.depth>t.depth;)this.closeFrontierNode();t.fit.childCount&&(this.placed=vt(this.placed,t.depth,t.fit)),e=t.move;for(let n=t.depth+1;n<=e.depth;n++){let t=e.node(n),r=t.type.contentMatch.fillBefore(t.content,!0,e.index(n));this.openFrontierNode(t.type,t.attrs,r)}return e}openFrontierNode(e,t=null,n){let r=this.frontier[this.depth];r.match=r.match.matchType(e),this.placed=vt(this.placed,this.depth,P.from(e.create(t,n))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let e=this.frontier.pop().match.fillBefore(P.empty,!0);e.childCount&&(this.placed=vt(this.placed,this.frontier.length,e))}}function bt(e,t,n){return 0==t?e.cutByIndex(n,e.childCount):e.replaceChild(0,e.firstChild.copy(bt(e.firstChild.content,t-1,n)))}function vt(e,t,n){return 0==t?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(vt(e.lastChild.content,t-1,n)))}function wt(e,t){for(let n=0;n<t;n++)e=e.firstChild.content;return e}function kt(e,t,n){if(t<=0)return e;let r=e.content;return t>1&&(r=r.replaceChild(0,kt(r.firstChild,t-1,1==r.childCount?n-1:0))),t>0&&(r=e.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(e.type.contentMatch.matchFragment(r).fillBefore(P.empty,!0)))),e.copy(r)}function xt(e,t,n,r,o){let i=e.node(t),s=o?e.indexAfter(t):e.index(t);if(s==i.childCount&&!n.compatibleContent(i.type))return null;let a=r.fillBefore(i.content,!0,s);return a&&!function(e,t,n){for(let r=n;r<t.childCount;r++)if(!e.allowsMarks(t.child(r).marks))return!0;return!1}(n,i.content,s)?a:null}function St(e){return e.spec.defining||e.spec.definingForContent}function Ot(e,t,n,r,o){if(t<n){let o=e.firstChild;e=e.replaceChild(0,o.copy(Ot(o.content,t+1,n,r,o)))}if(t>r){let t=o.contentMatchAt(0),n=t.fillBefore(e).append(e);e=n.append(t.matchFragment(n).fillBefore(P.empty,!0))}return e}function Ct(e,t){let n=[];for(let r=Math.min(e.depth,t.depth);r>=0;r--){let o=e.start(r);if(o<e.pos-(e.depth-r)||t.end(r)>t.pos+(t.depth-r)||e.node(r).type.spec.isolating||t.node(r).type.spec.isolating)break;(o==t.start(r)||r==e.depth&&r==t.depth&&e.parent.inlineContent&&t.parent.inlineContent&&r&&t.start(r-1)==o-1)&&n.push(r)}return n}class Mt extends Ue{constructor(e,t,n){super(),this.pos=e,this.attr=t,this.value=n}apply(e){let t=e.nodeAt(this.pos);if(!t)return Ge.fail("No node at attribute step's position");let n=Object.create(null);for(let e in t.attrs)n[e]=t.attrs[e];n[this.attr]=this.value;let r=t.type.create(n,null,t.marks);return Ge.fromReplace(e,this.pos,this.pos+1,new _(P.from(r),0,t.isLeaf?0:1))}getMap(){return Ke.empty}invert(e){return new Mt(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new Mt(t.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,t){if("number"!=typeof t.pos||"string"!=typeof t.attr)throw new RangeError("Invalid input for AttrStep.fromJSON");return new Mt(t.pos,t.attr,t.value)}}Ue.jsonID("attr",Mt);class Et extends Ue{constructor(e,t){super(),this.attr=e,this.value=t}apply(e){let t=Object.create(null);for(let n in e.attrs)t[n]=e.attrs[n];t[this.attr]=this.value;let n=e.type.create(t,e.content,e.marks);return Ge.ok(n)}getMap(){return Ke.empty}invert(e){return new Et(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,t){if("string"!=typeof t.attr)throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new Et(t.attr,t.value)}}Ue.jsonID("docAttr",Et);let Tt=class extends Error{};Tt=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n},(Tt.prototype=Object.create(Error.prototype)).constructor=Tt,Tt.prototype.name="TransformError";class Nt{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new qe}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let t=this.maybeStep(e);if(t.failed)throw new Tt(t.failed);return this}maybeStep(e){let t=e.apply(this.doc);return t.failed||this.addStep(e,t.doc),t}get docChanged(){return this.steps.length>0}addStep(e,t){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=t}replace(e,t=e,n=_.empty){let r=mt(this.doc,e,t,n);return r&&this.step(r),this}replaceWith(e,t,n){return this.replace(e,t,new _(P.from(n),0,0))}delete(e,t){return this.replace(e,t,_.empty)}insert(e,t){return this.replaceWith(e,e,t)}replaceRange(e,t,n){return function(e,t,n,r){if(!r.size)return e.deleteRange(t,n);let o=e.doc.resolve(t),i=e.doc.resolve(n);if(gt(o,i,r))return e.step(new tt(t,n,r));let s=Ct(o,e.doc.resolve(n));0==s[s.length-1]&&s.pop();let a=-(o.depth+1);s.unshift(a);for(let e=o.depth,t=o.pos-1;e>0;e--,t--){let n=o.node(e).type.spec;if(n.defining||n.definingAsContext||n.isolating)break;s.indexOf(e)>-1?a=e:o.before(e)==t&&s.splice(1,0,-e)}let l=s.indexOf(a),c=[],d=r.openStart;for(let e=r.content,t=0;;t++){let n=e.firstChild;if(c.push(n),t==r.openStart)break;e=n.content}for(let e=d-1;e>=0;e--){let t=c[e],n=St(t.type);if(n&&!t.sameMarkup(o.node(Math.abs(a)-1)))d=e;else if(n||!t.type.isTextblock)break}for(let t=r.openStart;t>=0;t--){let a=(t+d+1)%(r.openStart+1),h=c[a];if(h)for(let t=0;t<s.length;t++){let c=s[(t+l)%s.length],d=!0;c<0&&(d=!1,c=-c);let u=o.node(c-1),p=o.index(c-1);if(u.canReplaceWith(p,p,h.type,h.marks))return e.replace(o.before(c),d?i.after(c):n,new _(Ot(r.content,0,r.openStart,a),a,r.openEnd))}}let h=e.steps.length;for(let a=s.length-1;a>=0&&(e.replace(t,n,r),!(e.steps.length>h));a--){let e=s[a];e<0||(t=o.before(e),n=i.after(e))}}(this,e,t,n),this}replaceRangeWith(e,t,n){return function(e,t,n,r){if(!r.isInline&&t==n&&e.doc.resolve(t).parent.content.size){let o=function(e,t,n){let r=e.resolve(t);if(r.parent.canReplaceWith(r.index(),r.index(),n))return t;if(0==r.parentOffset)for(let e=r.depth-1;e>=0;e--){let t=r.index(e);if(r.node(e).canReplaceWith(t,t,n))return r.before(e+1);if(t>0)return null}if(r.parentOffset==r.parent.content.size)for(let e=r.depth-1;e>=0;e--){let t=r.indexAfter(e);if(r.node(e).canReplaceWith(t,t,n))return r.after(e+1);if(t<r.node(e).childCount)return null}return null}(e.doc,t,r.type);null!=o&&(t=n=o)}e.replaceRange(t,n,new _(P.from(r),0,0))}(this,e,t,n),this}deleteRange(e,t){return function(e,t,n){let r=e.doc.resolve(t),o=e.doc.resolve(n),i=Ct(r,o);for(let t=0;t<i.length;t++){let n=i[t],s=t==i.length-1;if(s&&0==n||r.node(n).type.contentMatch.validEnd)return e.delete(r.start(n),o.end(n));if(n>0&&(s||r.node(n-1).canReplace(r.index(n-1),o.indexAfter(n-1))))return e.delete(r.before(n),o.after(n))}for(let i=1;i<=r.depth&&i<=o.depth;i++)if(t-r.start(i)==r.depth-i&&n>r.end(i)&&o.end(i)-n!=o.depth-i&&r.start(i-1)==o.start(i-1)&&r.node(i-1).canReplace(r.index(i-1),o.index(i-1)))return e.delete(r.before(i),n);e.delete(t,n)}(this,e,t),this}lift(e,t){return function(e,t,n){let{$from:r,$to:o,depth:i}=t,s=r.before(i+1),a=o.after(i+1),l=s,c=a,d=P.empty,h=0;for(let e=i,t=!1;e>n;e--)t||r.index(e)>0?(t=!0,d=P.from(r.node(e).copy(d)),h++):l--;let u=P.empty,p=0;for(let e=i,t=!1;e>n;e--)t||o.after(e+1)<o.end(e)?(t=!0,u=P.from(o.node(e).copy(u)),p++):c++;e.step(new nt(l,c,s,a,new _(d.append(u),h,p),d.size-h,!0))}(this,e,t),this}join(e,t=1){return function(e,t,n){let r=null,{linebreakReplacement:o}=e.doc.type.schema,i=e.doc.resolve(t-n),s=i.node().type;if(o&&s.inlineContent){let e="pre"==s.whitespace,t=!!s.contentMatch.matchType(o);e&&!t?r=!1:!e&&t&&(r=!0)}let a=e.steps.length;if(!1===r){let r=e.doc.resolve(t+n);dt(e,r.node(),r.before(),a)}s.inlineContent&&ot(e,t+n-1,s,i.node().contentMatchAt(i.index()),null==r);let l=e.mapping.slice(a),c=l.map(t-n);if(e.step(new tt(c,l.map(t+n,-1),_.empty,!0)),!0===r){let t=e.doc.resolve(c);ct(e,t.node(),t.before(),e.steps.length)}}(this,e,t),this}wrap(e,t){return function(e,t,n){let r=P.empty;for(let e=n.length-1;e>=0;e--){if(r.size){let t=n[e].type.contentMatch.matchFragment(r);if(!t||!t.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=P.from(n[e].type.create(n[e].attrs,r))}let o=t.start,i=t.end;e.step(new nt(o,i,o,i,new _(r,0,0),n.length,!0))}(this,e,t),this}setBlockType(e,t=e,n,r=null){return function(e,t,n,r,o){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let i=e.steps.length;e.doc.nodesBetween(t,n,((t,n)=>{let s="function"==typeof o?o(t):o;if(t.isTextblock&&!t.hasMarkup(r,s)&&function(e,t,n){let r=e.resolve(t),o=r.index();return r.parent.canReplaceWith(o,o+1,n)}(e.doc,e.mapping.slice(i).map(n),r)){let o=null;if(r.schema.linebreakReplacement){let e="pre"==r.whitespace,t=!!r.contentMatch.matchType(r.schema.linebreakReplacement);e&&!t?o=!1:!e&&t&&(o=!0)}!1===o&&dt(e,t,n,i),ot(e,e.mapping.slice(i).map(n,1),r,void 0,null===o);let a=e.mapping.slice(i),l=a.map(n,1),c=a.map(n+t.nodeSize,1);return e.step(new nt(l,c,l+1,c-1,new _(P.from(r.create(s,null,t.marks)),0,0),1,!0)),!0===o&&ct(e,t,n,i),!1}}))}(this,e,t,n,r),this}setNodeMarkup(e,t,n=null,r){return function(e,t,n,r,o){let i=e.doc.nodeAt(t);if(!i)throw new RangeError("No node at given position");n||(n=i.type);let s=n.create(r,null,o||i.marks);if(i.isLeaf)return e.replaceWith(t,t+i.nodeSize,s);if(!n.validContent(i.content))throw new RangeError("Invalid content for node type "+n.name);e.step(new nt(t,t+i.nodeSize,t+1,t+i.nodeSize-1,new _(P.from(s),0,0),1,!0))}(this,e,t,n,r),this}setNodeAttribute(e,t,n){return this.step(new Mt(e,t,n)),this}setDocAttribute(e,t){return this.step(new Et(e,t)),this}addNodeMark(e,t){return this.step(new Ze(e,t)),this}removeNodeMark(e,t){if(!(t instanceof $)){let n=this.doc.nodeAt(e);if(!n)throw new RangeError("No node at position "+e);if(!(t=t.isInSet(n.marks)))return this}return this.step(new et(e,t)),this}split(e,t=1,n){return function(e,t,n=1,r){let o=e.doc.resolve(t),i=P.empty,s=P.empty;for(let e=o.depth,t=o.depth-n,a=n-1;e>t;e--,a--){i=P.from(o.node(e).copy(i));let t=r&&r[a];s=P.from(t?t.type.create(t.attrs,s):o.node(e).copy(s))}e.step(new tt(t,t,new _(i.append(s),n,n),!0))}(this,e,t,n),this}addMark(e,t,n){return function(e,t,n,r){let o,i,s=[],a=[];e.doc.nodesBetween(t,n,((e,l,c)=>{if(!e.isInline)return;let d=e.marks;if(!r.isInSet(d)&&c.type.allowsMarkType(r.type)){let c=Math.max(l,t),h=Math.min(l+e.nodeSize,n),u=r.addToSet(d);for(let e=0;e<d.length;e++)d[e].isInSet(u)||(o&&o.to==c&&o.mark.eq(d[e])?o.to=h:s.push(o=new Xe(c,h,d[e])));i&&i.to==c?i.to=h:a.push(i=new Qe(c,h,r))}})),s.forEach((t=>e.step(t))),a.forEach((t=>e.step(t)))}(this,e,t,n),this}removeMark(e,t,n){return function(e,t,n,r){let o=[],i=0;e.doc.nodesBetween(t,n,((e,s)=>{if(!e.isInline)return;i++;let a=null;if(r instanceof xe){let t,n=e.marks;for(;t=r.isInSet(n);)(a||(a=[])).push(t),n=t.removeFromSet(n)}else r?r.isInSet(e.marks)&&(a=[r]):a=e.marks;if(a&&a.length){let r=Math.min(s+e.nodeSize,n);for(let e=0;e<a.length;e++){let n,l=a[e];for(let e=0;e<o.length;e++){let t=o[e];t.step==i-1&&l.eq(o[e].style)&&(n=t)}n?(n.to=r,n.step=i):o.push({style:l,from:Math.max(s,t),to:r,step:i})}}})),o.forEach((t=>e.step(new Xe(t.from,t.to,t.style))))}(this,e,t,n),this}clearIncompatible(e,t,n){return ot(this,e,t,n),this}}const At=Object.create(null);class Dt{constructor(e,t,n){this.$anchor=e,this.$head=t,this.ranges=n||[new Rt(e.min(t),e.max(t))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let e=this.ranges;for(let t=0;t<e.length;t++)if(e[t].$from.pos!=e[t].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,t=_.empty){let n=t.content.lastChild,r=null;for(let e=0;e<t.openEnd;e++)r=n,n=n.lastChild;let o=e.steps.length,i=this.ranges;for(let s=0;s<i.length;s++){let{$from:a,$to:l}=i[s],c=e.mapping.slice(o);e.replaceRange(c.map(a.pos),c.map(l.pos),s?_.empty:t),0==s&&Vt(e,o,(n?n.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(e,t){let n=e.steps.length,r=this.ranges;for(let o=0;o<r.length;o++){let{$from:i,$to:s}=r[o],a=e.mapping.slice(n),l=a.map(i.pos),c=a.map(s.pos);o?e.deleteRange(l,c):(e.replaceRangeWith(l,c,t),Vt(e,n,t.isInline?-1:1))}}static findFrom(e,t,n=!1){let r=e.parent.inlineContent?new Lt(e):Ft(e.node(0),e.parent,e.pos,e.index(),t,n);if(r)return r;for(let r=e.depth-1;r>=0;r--){let o=t<0?Ft(e.node(0),e.node(r),e.before(r+1),e.index(r),t,n):Ft(e.node(0),e.node(r),e.after(r+1),e.index(r)+1,t,n);if(o)return o}return null}static near(e,t=1){return this.findFrom(e,t)||this.findFrom(e,-t)||new Bt(e.node(0))}static atStart(e){return Ft(e,e,0,0,1)||new Bt(e)}static atEnd(e){return Ft(e,e,e.content.size,e.childCount,-1)||new Bt(e)}static fromJSON(e,t){if(!t||!t.type)throw new RangeError("Invalid input for Selection.fromJSON");let n=At[t.type];if(!n)throw new RangeError(`No selection type ${t.type} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in At)throw new RangeError("Duplicate use of selection JSON ID "+e);return At[e]=t,t.prototype.jsonID=e,t}getBookmark(){return Lt.between(this.$anchor,this.$head).getBookmark()}}Dt.prototype.visible=!0;class Rt{constructor(e,t){this.$from=e,this.$to=t}}let It=!1;function Pt(e){!It&&!e.parent.inlineContent&&(It=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+e.parent.type.name+")"))}class Lt extends Dt{constructor(e,t=e){Pt(e),Pt(t),super(e,t)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,t){let n=e.resolve(t.map(this.head));if(!n.parent.inlineContent)return Dt.near(n);let r=e.resolve(t.map(this.anchor));return new Lt(r.parent.inlineContent?r:n,n)}replace(e,t=_.empty){if(super.replace(e,t),t==_.empty){let t=this.$from.marksAcross(this.$to);t&&e.ensureMarks(t)}}eq(e){return e instanceof Lt&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new jt(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,t){if("number"!=typeof t.anchor||"number"!=typeof t.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new Lt(e.resolve(t.anchor),e.resolve(t.head))}static create(e,t,n=t){let r=e.resolve(t);return new this(r,n==t?r:e.resolve(n))}static between(e,t,n){let r=e.pos-t.pos;if((!n||r)&&(n=r>=0?1:-1),!t.parent.inlineContent){let e=Dt.findFrom(t,n,!0)||Dt.findFrom(t,-n,!0);if(!e)return Dt.near(t,n);t=e.$head}return e.parent.inlineContent||(0==r?e=t:(e=(Dt.findFrom(e,-n,!0)||Dt.findFrom(e,n,!0)).$anchor).pos<t.pos!=r<0&&(e=t)),new Lt(e,t)}}Dt.jsonID("text",Lt);class jt{constructor(e,t){this.anchor=e,this.head=t}map(e){return new jt(e.map(this.anchor),e.map(this.head))}resolve(e){return Lt.between(e.resolve(this.anchor),e.resolve(this.head))}}class zt extends Dt{constructor(e){let t=e.nodeAfter,n=e.node(0).resolve(e.pos+t.nodeSize);super(e,n),this.node=t}map(e,t){let{deleted:n,pos:r}=t.mapResult(this.anchor),o=e.resolve(r);return n?Dt.near(o):new zt(o)}content(){return new _(P.from(this.node),0,0)}eq(e){return e instanceof zt&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new $t(this.anchor)}static fromJSON(e,t){if("number"!=typeof t.anchor)throw new RangeError("Invalid input for NodeSelection.fromJSON");return new zt(e.resolve(t.anchor))}static create(e,t){return new zt(e.resolve(t))}static isSelectable(e){return!e.isText&&!1!==e.type.spec.selectable}}zt.prototype.visible=!1,Dt.jsonID("node",zt);class $t{constructor(e){this.anchor=e}map(e){let{deleted:t,pos:n}=e.mapResult(this.anchor);return t?new jt(n,n):new $t(n)}resolve(e){let t=e.resolve(this.anchor),n=t.nodeAfter;return n&&zt.isSelectable(n)?new zt(t):Dt.near(t)}}class Bt extends Dt{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,t=_.empty){if(t==_.empty){e.delete(0,e.doc.content.size);let t=Dt.atStart(e.doc);t.eq(e.selection)||e.setSelection(t)}else super.replace(e,t)}toJSON(){return{type:"all"}}static fromJSON(e){return new Bt(e)}map(e){return new Bt(e)}eq(e){return e instanceof Bt}getBookmark(){return _t}}Dt.jsonID("all",Bt);const _t={map(){return this},resolve:e=>new Bt(e)};function Ft(e,t,n,r,o,i=!1){if(t.inlineContent)return Lt.create(e,n);for(let s=r-(o>0?0:1);o>0?s<t.childCount:s>=0;s+=o){let r=t.child(s);if(r.isAtom){if(!i&&zt.isSelectable(r))return zt.create(e,n-(o<0?r.nodeSize:0))}else{let t=Ft(e,r,n+o,o<0?r.childCount:0,o,i);if(t)return t}n+=r.nodeSize*o}return null}function Vt(e,t,n){let r=e.steps.length-1;if(r<t)return;let o,i=e.steps[r];(i instanceof tt||i instanceof nt)&&(e.mapping.maps[r].forEach(((e,t,n,r)=>{null==o&&(o=r)})),e.setSelection(Dt.near(e.doc.resolve(o),n)))}class Ht extends Nt{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=-3&(1|this.updated),this.storedMarks=null,this}get selectionSet(){return(1&this.updated)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=2,this}ensureMarks(e){return $.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(2&this.updated)>0}addStep(e,t){super.addStep(e,t),this.updated=-3&this.updated,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,t=!0){let n=this.selection;return t&&(e=e.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||$.none))),n.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,t,n){let r=this.doc.type.schema;if(null==t)return e?this.replaceSelectionWith(r.text(e),!0):this.deleteSelection();{if(null==n&&(n=t),n=n??t,!e)return this.deleteRange(t,n);let o=this.storedMarks;if(!o){let e=this.doc.resolve(t);o=n==t?e.marks():e.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(t,n,r.text(e,o)),this.selection.empty||this.setSelection(Dt.near(this.selection.$to)),this}}setMeta(e,t){return this.meta["string"==typeof e?e:e.key]=t,this}getMeta(e){return this.meta["string"==typeof e?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=4,this}get scrolledIntoView(){return(4&this.updated)>0}}function Wt(e,t){return t&&e?e.bind(t):e}class Kt{constructor(e,t,n){this.name=e,this.init=Wt(t.init,n),this.apply=Wt(t.apply,n)}}const qt=[new Kt("doc",{init:e=>e.doc||e.schema.topNodeType.createAndFill(),apply:e=>e.doc}),new Kt("selection",{init:(e,t)=>e.selection||Dt.atStart(t.doc),apply:e=>e.selection}),new Kt("storedMarks",{init:e=>e.storedMarks||null,apply:(e,t,n,r)=>r.selection.$cursor?e.storedMarks:null}),new Kt("scrollToSelection",{init:()=>0,apply:(e,t)=>e.scrolledIntoView?t+1:t})];class Jt{constructor(e,t){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=qt.slice(),t&&t.forEach((e=>{if(this.pluginsByKey[e.key])throw new RangeError("Adding different instances of a keyed plugin ("+e.key+")");this.plugins.push(e),this.pluginsByKey[e.key]=e,e.spec.state&&this.fields.push(new Kt(e.key,e.spec.state,e))}))}}class Ut{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,t=-1){for(let n=0;n<this.config.plugins.length;n++)if(n!=t){let t=this.config.plugins[n];if(t.spec.filterTransaction&&!t.spec.filterTransaction.call(t,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let t=[e],n=this.applyInner(e),r=null;for(;;){let o=!1;for(let i=0;i<this.config.plugins.length;i++){let s=this.config.plugins[i];if(s.spec.appendTransaction){let a=r?r[i].n:0,l=r?r[i].state:this,c=a<t.length&&s.spec.appendTransaction.call(s,a?t.slice(a):t,l,n);if(c&&n.filterTransaction(c,i)){if(c.setMeta("appendedTransaction",e),!r){r=[];for(let e=0;e<this.config.plugins.length;e++)r.push(e<i?{state:n,n:t.length}:{state:this,n:0})}t.push(c),n=n.applyInner(c),o=!0}r&&(r[i]={state:n,n:t.length})}}if(!o)return{state:n,transactions:t}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let t=new Ut(this.config),n=this.config.fields;for(let r=0;r<n.length;r++){let o=n[r];t[o.name]=o.apply(e,this[o.name],this,t)}return t}get tr(){return new Ht(this)}static create(e){let t=new Jt(e.doc?e.doc.type.schema:e.schema,e.plugins),n=new Ut(t);for(let r=0;r<t.fields.length;r++)n[t.fields[r].name]=t.fields[r].init(e,n);return n}reconfigure(e){let t=new Jt(this.schema,e.plugins),n=t.fields,r=new Ut(t);for(let t=0;t<n.length;t++){let o=n[t].name;r[o]=this.hasOwnProperty(o)?this[o]:n[t].init(e,r)}return r}toJSON(e){let t={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(t.storedMarks=this.storedMarks.map((e=>e.toJSON()))),e&&"object"==typeof e)for(let n in e){if("doc"==n||"selection"==n)throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=e[n],o=r.spec.state;o&&o.toJSON&&(t[n]=o.toJSON.call(r,this[r.key]))}return t}static fromJSON(e,t,n){if(!t)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let r=new Jt(e.schema,e.plugins),o=new Ut(r);return r.fields.forEach((r=>{if("doc"==r.name)o.doc=oe.fromJSON(e.schema,t.doc);else if("selection"==r.name)o.selection=Dt.fromJSON(o.doc,t.selection);else if("storedMarks"==r.name)t.storedMarks&&(o.storedMarks=t.storedMarks.map(e.schema.markFromJSON));else{if(n)for(let i in n){let s=n[i],a=s.spec.state;if(s.key==r.name&&a&&a.fromJSON&&Object.prototype.hasOwnProperty.call(t,i))return void(o[r.name]=a.fromJSON.call(s,e,t[i],o))}o[r.name]=r.init(e,o)}})),o}}function Gt(e,t,n){for(let r in e){let o=e[r];o instanceof Function?o=o.bind(t):"handleDOMEvents"==r&&(o=Gt(o,t,{})),n[r]=o}return n}class Yt{constructor(e){this.spec=e,this.props={},e.props&&Gt(e.props,this,this.props),this.key=e.key?e.key.key:Xt("plugin")}getState(e){return e[this.key]}}const Qt=Object.create(null);function Xt(e){return e in Qt?e+"$"+ ++Qt[e]:(Qt[e]=0,e+"$")}class Zt{constructor(e="key"){this.key=Xt(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}const en=function(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t},tn=function(e){let t=e.assignedSlot||e.parentNode;return t&&11==t.nodeType?t.host:t};let nn=null;const rn=function(e,t,n){let r=nn||(nn=document.createRange());return r.setEnd(e,n??e.nodeValue.length),r.setStart(e,t||0),r},on=function(e,t,n,r){return n&&(an(e,t,n,r,-1)||an(e,t,n,r,1))},sn=/^(img|br|input|textarea|hr)$/i;function an(e,t,n,r,o){for(;;){if(e==n&&t==r)return!0;if(t==(o<0?0:ln(e))){let n=e.parentNode;if(!n||1!=n.nodeType||cn(e)||sn.test(e.nodeName)||"false"==e.contentEditable)return!1;t=en(e)+(o<0?0:1),e=n}else{if(1!=e.nodeType)return!1;if("false"==(e=e.childNodes[t+(o<0?-1:0)]).contentEditable)return!1;t=o<0?ln(e):0}}}function ln(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function cn(e){let t;for(let n=e;n&&!(t=n.pmViewDesc);n=n.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}const dn=function(e){return e.focusNode&&on(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)};function hn(e,t){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=e,n.key=n.code=t,n}const un=typeof navigator<"u"?navigator:null,pn=typeof document<"u"?document:null,fn=un&&un.userAgent||"",mn=/Edge\/(\d+)/.exec(fn),gn=/MSIE \d/.exec(fn),yn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(fn),bn=!!(gn||yn||mn),vn=gn?document.documentMode:yn?+yn[1]:mn?+mn[1]:0,wn=!bn&&/gecko\/(\d+)/i.test(fn);wn&&(/Firefox\/(\d+)/.exec(fn)||[0,0])[1];const kn=!bn&&/Chrome\/(\d+)/.exec(fn),xn=!!kn,Sn=kn?+kn[1]:0,On=!bn&&!!un&&/Apple Computer/.test(un.vendor),Cn=On&&(/Mobile\/\w+/.test(fn)||!!un&&un.maxTouchPoints>2),Mn=Cn||!!un&&/Mac/.test(un.platform),En=!!un&&/Win/.test(un.platform),Tn=/Android \d/.test(fn),Nn=!!pn&&"webkitFontSmoothing"in pn.documentElement.style,An=Nn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Dn(e){let t=e.defaultView&&e.defaultView.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function Rn(e,t){return"number"==typeof e?e:e[t]}function In(e){let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*n,top:t.top,bottom:t.top+e.clientHeight*r}}function Pn(e,t,n){let r=e.someProp("scrollThreshold")||0,o=e.someProp("scrollMargin")||5,i=e.dom.ownerDocument;for(let s=n||e.dom;s;){if(1!=s.nodeType){s=tn(s);continue}let e=s,n=e==i.body,a=n?Dn(i):In(e),l=0,c=0;if(t.top<a.top+Rn(r,"top")?c=-(a.top-t.top+Rn(o,"top")):t.bottom>a.bottom-Rn(r,"bottom")&&(c=t.bottom-t.top>a.bottom-a.top?t.top+Rn(o,"top")-a.top:t.bottom-a.bottom+Rn(o,"bottom")),t.left<a.left+Rn(r,"left")?l=-(a.left-t.left+Rn(o,"left")):t.right>a.right-Rn(r,"right")&&(l=t.right-a.right+Rn(o,"right")),l||c)if(n)i.defaultView.scrollBy(l,c);else{let n=e.scrollLeft,r=e.scrollTop;c&&(e.scrollTop+=c),l&&(e.scrollLeft+=l);let o=e.scrollLeft-n,i=e.scrollTop-r;t={left:t.left-o,top:t.top-i,right:t.right-o,bottom:t.bottom-i}}let d=n?"fixed":getComputedStyle(s).position;if(/^(fixed|sticky)$/.test(d))break;s="absolute"==d?s.offsetParent:tn(s)}}function Ln(e){let t=[],n=e.ownerDocument;for(let r=e;r&&(t.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),e!=n);r=tn(r));return t}function jn(e,t){for(let n=0;n<e.length;n++){let{dom:r,top:o,left:i}=e[n];r.scrollTop!=o+t&&(r.scrollTop=o+t),r.scrollLeft!=i&&(r.scrollLeft=i)}}let zn=null;function $n(e,t){let n,r,o,i,s=2e8,a=0,l=t.top,c=t.top;for(let d=e.firstChild,h=0;d;d=d.nextSibling,h++){let e;if(1==d.nodeType)e=d.getClientRects();else{if(3!=d.nodeType)continue;e=rn(d).getClientRects()}for(let u=0;u<e.length;u++){let p=e[u];if(p.top<=l&&p.bottom>=c){l=Math.max(p.bottom,l),c=Math.min(p.top,c);let e=p.left>t.left?p.left-t.left:p.right<t.left?t.left-p.right:0;if(e<s){n=d,s=e,r=e&&3==n.nodeType?{left:p.right<t.left?p.right:p.left,top:t.top}:t,1==d.nodeType&&e&&(a=h+(t.left>=(p.left+p.right)/2?1:0));continue}}else p.top>t.top&&!o&&p.left<=t.left&&p.right>=t.left&&(o=d,i={left:Math.max(p.left,Math.min(p.right,t.left)),top:p.top});!n&&(t.left>=p.right&&t.top>=p.top||t.left>=p.left&&t.top>=p.bottom)&&(a=h+1)}}return!n&&o&&(n=o,r=i,s=0),n&&3==n.nodeType?function(e,t){let n=e.nodeValue.length,r=document.createRange();for(let o=0;o<n;o++){r.setEnd(e,o+1),r.setStart(e,o);let n=Hn(r,1);if(n.top!=n.bottom&&Bn(t,n))return{node:e,offset:o+(t.left>=(n.left+n.right)/2?1:0)}}return{node:e,offset:0}}(n,r):!n||s&&1==n.nodeType?{node:e,offset:a}:$n(n,r)}function Bn(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function _n(e,t,n){let r=e.childNodes.length;if(r&&n.top<n.bottom)for(let o=Math.max(0,Math.min(r-1,Math.floor(r*(t.top-n.top)/(n.bottom-n.top))-2)),i=o;;){let n=e.childNodes[i];if(1==n.nodeType){let e=n.getClientRects();for(let r=0;r<e.length;r++){let o=e[r];if(Bn(t,o))return _n(n,t,o)}}if((i=(i+1)%r)==o)break}return e}function Fn(e,t){let n,r=e.dom.ownerDocument,o=0,i=function(e,t,n){if(e.caretPositionFromPoint)try{let r=e.caretPositionFromPoint(t,n);if(r)return{node:r.offsetNode,offset:Math.min(ln(r.offsetNode),r.offset)}}catch{}if(e.caretRangeFromPoint){let r=e.caretRangeFromPoint(t,n);if(r)return{node:r.startContainer,offset:Math.min(ln(r.startContainer),r.startOffset)}}}(r,t.left,t.top);i&&({node:n,offset:o}=i);let s,a=(e.root.elementFromPoint?e.root:r).elementFromPoint(t.left,t.top);if(!a||!e.dom.contains(1!=a.nodeType?a.parentNode:a)){let n=e.dom.getBoundingClientRect();if(!Bn(t,n)||(a=_n(e.dom,t,n),!a))return null}if(On)for(let e=a;n&&e;e=tn(e))e.draggable&&(n=void 0);if(a=function(e,t){let n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}(a,t),n){if(wn&&1==n.nodeType&&(o=Math.min(o,n.childNodes.length),o<n.childNodes.length)){let e,r=n.childNodes[o];"IMG"==r.nodeName&&(e=r.getBoundingClientRect()).right<=t.left&&e.bottom>t.top&&o++}let r;Nn&&o&&1==n.nodeType&&1==(r=n.childNodes[o-1]).nodeType&&"false"==r.contentEditable&&r.getBoundingClientRect().top>=t.top&&o--,n==e.dom&&o==n.childNodes.length-1&&1==n.lastChild.nodeType&&t.top>n.lastChild.getBoundingClientRect().bottom?s=e.state.doc.content.size:(0==o||1!=n.nodeType||"BR"!=n.childNodes[o-1].nodeName)&&(s=function(e,t,n,r){let o=-1;for(let n=t,i=!1;n!=e.dom;){let t,s=e.docView.nearestDesc(n,!0);if(!s)return null;if(1==s.dom.nodeType&&(s.node.isBlock&&s.parent||!s.contentDOM)&&((t=s.dom.getBoundingClientRect()).width||t.height)&&(s.node.isBlock&&s.parent&&(!i&&t.left>r.left||t.top>r.top?o=s.posBefore:(!i&&t.right<r.left||t.bottom<r.top)&&(o=s.posAfter),i=!0),!s.contentDOM&&o<0&&!s.node.isText))return(s.node.isBlock?r.top<(t.top+t.bottom)/2:r.left<(t.left+t.right)/2)?s.posBefore:s.posAfter;n=s.dom.parentNode}return o>-1?o:e.docView.posFromDOM(t,n,-1)}(e,n,o,t))}null==s&&(s=function(e,t,n){let{node:r,offset:o}=$n(t,n),i=-1;if(1==r.nodeType&&!r.firstChild){let e=r.getBoundingClientRect();i=e.left!=e.right&&n.left>(e.left+e.right)/2?1:-1}return e.docView.posFromDOM(r,o,i)}(e,a,t));let l=e.docView.nearestDesc(a,!0);return{pos:s,inside:l?l.posAtStart-l.border:-1}}function Vn(e){return e.top<e.bottom||e.left<e.right}function Hn(e,t){let n=e.getClientRects();if(n.length){let e=n[t<0?0:n.length-1];if(Vn(e))return e}return Array.prototype.find.call(n,Vn)||e.getBoundingClientRect()}const Wn=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Kn(e,t,n){let{node:r,offset:o,atom:i}=e.docView.domFromPos(t,n<0?-1:1),s=Nn||wn;if(3==r.nodeType){if(!s||!Wn.test(r.nodeValue)&&(n<0?o:o!=r.nodeValue.length)){let e=o,t=o,i=n<0?1:-1;return n<0&&!o?(t++,i=-1):n>=0&&o==r.nodeValue.length?(e--,i=1):n<0?e--:t++,qn(Hn(rn(r,e,t),i),i<0)}{let e=Hn(rn(r,o,o),n);if(wn&&o&&/\s/.test(r.nodeValue[o-1])&&o<r.nodeValue.length){let t=Hn(rn(r,o-1,o-1),-1);if(t.top==e.top){let n=Hn(rn(r,o,o+1),-1);if(n.top!=e.top)return qn(n,n.left<t.left)}}return e}}if(!e.state.doc.resolve(t-(i||0)).parent.inlineContent){if(null==i&&o&&(n<0||o==ln(r))){let e=r.childNodes[o-1];if(1==e.nodeType)return Jn(e.getBoundingClientRect(),!1)}if(null==i&&o<ln(r)){let e=r.childNodes[o];if(1==e.nodeType)return Jn(e.getBoundingClientRect(),!0)}return Jn(r.getBoundingClientRect(),n>=0)}if(null==i&&o&&(n<0||o==ln(r))){let e=r.childNodes[o-1],t=3==e.nodeType?rn(e,ln(e)-(s?0:1)):1!=e.nodeType||"BR"==e.nodeName&&e.nextSibling?null:e;if(t)return qn(Hn(t,1),!1)}if(null==i&&o<ln(r)){let e=r.childNodes[o];for(;e.pmViewDesc&&e.pmViewDesc.ignoreForCoords;)e=e.nextSibling;let t=e?3==e.nodeType?rn(e,0,s?0:1):1==e.nodeType?e:null:null;if(t)return qn(Hn(t,-1),!0)}return qn(Hn(3==r.nodeType?rn(r):r,-n),n>=0)}function qn(e,t){if(0==e.width)return e;let n=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:n,right:n}}function Jn(e,t){if(0==e.height)return e;let n=t?e.top:e.bottom;return{top:n,bottom:n,left:e.left,right:e.right}}function Un(e,t,n){let r=e.state,o=e.root.activeElement;r!=t&&e.updateState(t),o!=e.dom&&e.focus();try{return n()}finally{r!=t&&e.updateState(r),o!=e.dom&&o&&o.focus()}}const Gn=/[\u0590-\u08ac]/;let Yn=null,Qn=null,Xn=!1;function Zn(e,t,n){return Yn==t&&Qn==n?Xn:(Yn=t,Qn=n,Xn="up"==n||"down"==n?function(e,t,n){let r=t.selection,o="up"==n?r.$from:r.$to;return Un(e,t,(()=>{let{node:t}=e.docView.domFromPos(o.pos,"up"==n?-1:1);for(;;){let n=e.docView.nearestDesc(t,!0);if(!n)break;if(n.node.isBlock){t=n.contentDOM||n.dom;break}t=n.dom.parentNode}let r=Kn(e,o.pos,1);for(let e=t.firstChild;e;e=e.nextSibling){let t;if(1==e.nodeType)t=e.getClientRects();else{if(3!=e.nodeType)continue;t=rn(e,0,e.nodeValue.length).getClientRects()}for(let e=0;e<t.length;e++){let o=t[e];if(o.bottom>o.top+1&&("up"==n?r.top-o.top>2*(o.bottom-r.top):o.bottom-r.bottom>2*(r.bottom-o.top)))return!1}}return!0}))}(e,t,n):function(e,t,n){let{$head:r}=t.selection;if(!r.parent.isTextblock)return!1;let o=r.parentOffset,i=!o,s=o==r.parent.content.size,a=e.domSelection();return a?Gn.test(r.parent.textContent)&&a.modify?Un(e,t,(()=>{let{focusNode:t,focusOffset:o,anchorNode:i,anchorOffset:s}=e.domSelectionRange(),l=a.caretBidiLevel;a.modify("move",n,"character");let c=r.depth?e.docView.domAfterPos(r.before()):e.dom,{focusNode:d,focusOffset:h}=e.domSelectionRange(),u=d&&!c.contains(1==d.nodeType?d:d.parentNode)||t==d&&o==h;try{a.collapse(i,s),t&&(t!=i||o!=s)&&a.extend&&a.extend(t,o)}catch{}return null!=l&&(a.caretBidiLevel=l),u})):"left"==n||"backward"==n?i:s:r.pos==r.start()||r.pos==r.end()}(e,t,n))}class er{constructor(e,t,n,r){this.parent=e,this.children=t,this.dom=n,this.contentDOM=r,this.dirty=0,n.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,t,n){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let t=0;t<this.children.length;t++)e+=this.children[t].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let t=0,n=this.posAtStart;;t++){let r=this.children[t];if(r==e)return n;n+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(e,t,n){if(this.contentDOM&&this.contentDOM.contains(1==e.nodeType?e:e.parentNode)){if(n<0){let n,r;if(e==this.contentDOM)n=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.previousSibling}for(;n&&(!(r=n.pmViewDesc)||r.parent!=this);)n=n.previousSibling;return n?this.posBeforeChild(r)+r.size:this.posAtStart}{let n,r;if(e==this.contentDOM)n=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.nextSibling}for(;n&&(!(r=n.pmViewDesc)||r.parent!=this);)n=n.nextSibling;return n?this.posBeforeChild(r):this.posAtEnd}}let r;if(e==this.dom&&this.contentDOM)r=t>en(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))r=2&e.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==t)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!1;break}if(t.previousSibling)break}if(null==r&&t==e.childNodes.length)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!0;break}if(t.nextSibling)break}}return r??n>0?this.posAtEnd:this.posAtStart}nearestDesc(e,t=!1){for(let n=!0,r=e;r;r=r.parentNode){let o,i=this.getDesc(r);if(i&&(!t||i.node)){if(!n||!(o=i.nodeDOM)||(1==o.nodeType?o.contains(1==e.nodeType?e:e.parentNode):o==e))return i;n=!1}}}getDesc(e){let t=e.pmViewDesc;for(let e=t;e;e=e.parent)if(e==this)return t}posFromDOM(e,t,n){for(let r=e;r;r=r.parentNode){let o=this.getDesc(r);if(o)return o.localPosFromDOM(e,t,n)}return-1}descAt(e){for(let t=0,n=0;t<this.children.length;t++){let r=this.children[t],o=n+r.size;if(n==e&&o!=n){for(;!r.border&&r.children.length;)for(let e=0;e<r.children.length;e++){let t=r.children[e];if(t.size){r=t;break}}return r}if(e<o)return r.descAt(e-n-r.border);n=o}}domFromPos(e,t){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let n=0,r=0;for(let t=0;n<this.children.length;n++){let o=this.children[n],i=t+o.size;if(i>e||o instanceof ar){r=e-t;break}t=i}if(r)return this.children[n].domFromPos(r-this.children[n].border,t);for(let e;n&&!(e=this.children[n-1]).size&&e instanceof tr&&e.side>=0;n--);if(t<=0){let e,r=!0;for(;e=n?this.children[n-1]:null,e&&e.dom.parentNode!=this.contentDOM;n--,r=!1);return e&&t&&r&&!e.border&&!e.domAtom?e.domFromPos(e.size,t):{node:this.contentDOM,offset:e?en(e.dom)+1:0}}{let e,r=!0;for(;e=n<this.children.length?this.children[n]:null,e&&e.dom.parentNode!=this.contentDOM;n++,r=!1);return e&&r&&!e.border&&!e.domAtom?e.domFromPos(0,t):{node:this.contentDOM,offset:e?en(e.dom):this.contentDOM.childNodes.length}}}parseRange(e,t,n=0){if(0==this.children.length)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,o=-1;for(let i=n,s=0;;s++){let n=this.children[s],a=i+n.size;if(-1==r&&e<=a){let o=i+n.border;if(e>=o&&t<=a-n.border&&n.node&&n.contentDOM&&this.contentDOM.contains(n.contentDOM))return n.parseRange(e,t,o);e=i;for(let t=s;t>0;t--){let n=this.children[t-1];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(1)){r=en(n.dom)+1;break}e-=n.size}-1==r&&(r=0)}if(r>-1&&(a>t||s==this.children.length-1)){t=a;for(let e=s+1;e<this.children.length;e++){let n=this.children[e];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(-1)){o=en(n.dom);break}t+=n.size}-1==o&&(o=this.contentDOM.childNodes.length);break}i=a}return{node:this.contentDOM,from:e,to:t,fromOffset:r,toOffset:o}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let t=this.children[e<0?0:this.children.length-1];return 0==t.size||t.emptyChildAt(e)}domAfterPos(e){let{node:t,offset:n}=this.domFromPos(e,0);if(1!=t.nodeType||n==t.childNodes.length)throw new RangeError("No node after pos "+e);return t.childNodes[n]}setSelection(e,t,n,r=!1){let o=Math.min(e,t),i=Math.max(e,t);for(let s=0,a=0;s<this.children.length;s++){let l=this.children[s],c=a+l.size;if(o>a&&i<c)return l.setSelection(e-a-l.border,t-a-l.border,n,r);a=c}let s=this.domFromPos(e,e?-1:1),a=t==e?s:this.domFromPos(t,t?-1:1),l=n.root.getSelection(),c=n.domSelectionRange(),d=!1;if((wn||On)&&e==t){let{node:e,offset:t}=s;if(3==e.nodeType){if(d=!(!t||"\n"!=e.nodeValue[t-1]),d&&t==e.nodeValue.length)for(let t,n=e;n;n=n.parentNode){if(t=n.nextSibling){"BR"==t.nodeName&&(s=a={node:t.parentNode,offset:en(t)+1});break}let e=n.pmViewDesc;if(e&&e.node&&e.node.isBlock)break}}else{let n=e.childNodes[t-1];d=n&&("BR"==n.nodeName||"false"==n.contentEditable)}}if(wn&&c.focusNode&&c.focusNode!=a.node&&1==c.focusNode.nodeType){let e=c.focusNode.childNodes[c.focusOffset];e&&"false"==e.contentEditable&&(r=!0)}if(!(r||d&&On)&&on(s.node,s.offset,c.anchorNode,c.anchorOffset)&&on(a.node,a.offset,c.focusNode,c.focusOffset))return;let h=!1;if((l.extend||e==t)&&!d){l.collapse(s.node,s.offset);try{e!=t&&l.extend(a.node,a.offset),h=!0}catch{}}if(!h){if(e>t){let e=s;s=a,a=e}let n=document.createRange();n.setEnd(a.node,a.offset),n.setStart(s.node,s.offset),l.removeAllRanges(),l.addRange(n)}}ignoreMutation(e){return!this.contentDOM&&"selection"!=e.type}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,t){for(let n=0,r=0;r<this.children.length;r++){let o=this.children[r],i=n+o.size;if(n==i?e<=i&&t>=n:e<i&&t>n){let r=n+o.border,s=i-o.border;if(e>=r&&t<=s)return this.dirty=e==n||t==i?2:1,void(e!=r||t!=s||!o.contentLost&&o.dom.parentNode==this.contentDOM?o.markDirty(e-r,t-r):o.dirty=3);o.dirty=o.dom!=o.contentDOM||o.dom.parentNode!=this.contentDOM||o.children.length?3:2}n=i}this.dirty=2}markParentsDirty(){let e=1;for(let t=this.parent;t;t=t.parent,e++){let n=1==e?2:1;t.dirty<n&&(t.dirty=n)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(e){return!1}}class tr extends er{constructor(e,t,n,r){let o,i=t.type.toDOM;if("function"==typeof i&&(i=i(n,(()=>o?o.parent?o.parent.posBeforeChild(o):void 0:r))),!t.type.spec.raw){if(1!=i.nodeType){let e=document.createElement("span");e.appendChild(i),i=e}i.contentEditable="false",i.classList.add("ProseMirror-widget")}super(e,[],i,null),this.widget=t,this.widget=t,o=this}matchesWidget(e){return 0==this.dirty&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let t=this.widget.spec.stopEvent;return!!t&&t(e)}ignoreMutation(e){return"selection"!=e.type||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class nr extends er{constructor(e,t,n,r){super(e,[],t,null),this.textDOM=n,this.text=r}get size(){return this.text.length}localPosFromDOM(e,t){return e!=this.textDOM?this.posAtStart+(t?this.size:0):this.posAtStart+t}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return"characterData"===e.type&&e.target.nodeValue==e.oldValue}}class rr extends er{constructor(e,t,n,r,o){super(e,[],n,r),this.mark=t,this.spec=o}static create(e,t,n,r){let o=r.nodeViews[t.type.name],i=o&&o(t,r,n);return(!i||!i.dom)&&(i=Le.renderSpec(document,t.type.spec.toDOM(t,n),null,t.attrs)),new rr(e,t,i.dom,i.contentDOM||i.dom,i)}parseRule(){return 3&this.dirty||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return 3!=this.dirty&&this.mark.eq(e)}markDirty(e,t){if(super.markDirty(e,t),0!=this.dirty){let e=this.parent;for(;!e.node;)e=e.parent;e.dirty<this.dirty&&(e.dirty=this.dirty),this.dirty=0}}slice(e,t,n){let r=rr.create(this.parent,this.mark,!0,n),o=this.children,i=this.size;t<i&&(o=wr(o,t,i,n)),e>0&&(o=wr(o,0,e,n));for(let e=0;e<o.length;e++)o[e].parent=r;return r.children=o,r}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}}class or extends er{constructor(e,t,n,r,o,i,s,a,l){super(e,[],o,i),this.node=t,this.outerDeco=n,this.innerDeco=r,this.nodeDOM=s}static create(e,t,n,r,o,i){let s,a=o.nodeViews[t.type.name],l=a&&a(t,o,(()=>s?s.parent?s.parent.posBeforeChild(s):void 0:i),n,r),c=l&&l.dom,d=l&&l.contentDOM;if(t.isText)if(c){if(3!=c.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else c=document.createTextNode(t.text);else c||({dom:c,contentDOM:d}=Le.renderSpec(document,t.type.spec.toDOM(t),null,t.attrs));!d&&!t.isText&&"BR"!=c.nodeName&&(c.hasAttribute("contenteditable")||(c.contentEditable="false"),t.type.spec.draggable&&(c.draggable=!0));let h=c;return c=mr(c,n,t),l?s=new lr(e,t,n,r,c,d||null,h,l,o,i+1):t.isText?new sr(e,t,n,r,c,h,o):new or(e,t,n,r,c,d||null,h,o,i+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if("pre"==this.node.type.whitespace&&(e.preserveWhitespace="full"),this.contentDOM)if(this.contentLost){for(let t=this.children.length-1;t>=0;t--){let n=this.children[t];if(this.dom.contains(n.dom.parentNode)){e.contentElement=n.dom.parentNode;break}}e.contentElement||(e.getContent=()=>P.empty)}else e.contentElement=this.contentDOM;else e.getContent=()=>this.node.content;return e}matchesNode(e,t,n){return 0==this.dirty&&e.eq(this.node)&&gr(t,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,t){let n=this.node.inlineContent,r=t,o=e.composing?this.localCompositionInfo(e,t):null,i=o&&o.pos>-1?o:null,s=o&&o.pos<0,a=new br(this,i&&i.node,e);(function(e,t,n,r){let o=t.locals(e),i=0;if(0==o.length){for(let n=0;n<e.childCount;n++){let s=e.child(n);r(s,o,t.forChild(i,s),n),i+=s.nodeSize}return}let s=0,a=[],l=null;for(let c=0;;){let d,h,u,p;for(;s<o.length&&o[s].to==i;){let e=o[s++];e.widget&&(d?(h||(h=[d])).push(e):d=e)}if(d)if(h){h.sort(vr);for(let e=0;e<h.length;e++)n(h[e],c,!!l)}else n(d,c,!!l);if(l)p=-1,u=l,l=null;else{if(!(c<e.childCount))break;p=c,u=e.child(c++)}for(let e=0;e<a.length;e++)a[e].to<=i&&a.splice(e--,1);for(;s<o.length&&o[s].from<=i&&o[s].to>i;)a.push(o[s++]);let f=i+u.nodeSize;if(u.isText){let e=f;s<o.length&&o[s].from<e&&(e=o[s].from);for(let t=0;t<a.length;t++)a[t].to<e&&(e=a[t].to);e<f&&(l=u.cut(e-i),u=u.cut(0,e-i),f=e,p=-1)}else for(;s<o.length&&o[s].to<f;)s++;r(u,u.isInline&&!u.isLeaf?a.filter((e=>!e.inline)):a.slice(),t.forChild(i,u),p),i=f}})(this.node,this.innerDeco,((t,o,i)=>{t.spec.marks?a.syncToMarks(t.spec.marks,n,e):t.type.side>=0&&!i&&a.syncToMarks(o==this.node.childCount?$.none:this.node.child(o).marks,n,e),a.placeWidget(t,e,r)}),((t,i,l,c)=>{let d;a.syncToMarks(t.marks,n,e),a.findNodeMatch(t,i,l,c)||s&&e.state.selection.from>r&&e.state.selection.to<r+t.nodeSize&&(d=a.findIndexWithChild(o.node))>-1&&a.updateNodeAt(t,i,l,d,e)||a.updateNextNode(t,i,l,e,c,r)||a.addNode(t,i,l,e,r),r+=t.nodeSize})),a.syncToMarks([],n,e),this.node.isTextblock&&a.addTextblockHacks(),a.destroyRest(),(a.changed||2==this.dirty)&&(i&&this.protectLocalComposition(e,i),cr(this.contentDOM,this.children,e),Cn&&function(e){if("UL"==e.nodeName||"OL"==e.nodeName){let t=e.style.cssText;e.style.cssText=t+"; list-style: square !important",window.getComputedStyle(e).listStyle,e.style.cssText=t}}(this.dom))}localCompositionInfo(e,t){let{from:n,to:r}=e.state.selection;if(!(e.state.selection instanceof Lt)||n<t||r>t+this.node.content.size)return null;let o=e.input.compositionNode;if(!o||!this.dom.contains(o.parentNode))return null;if(this.node.inlineContent){let e=o.nodeValue,i=function(e,t,n,r){for(let o=0,i=0;o<e.childCount&&i<=r;){let s=e.child(o++),a=i;if(i+=s.nodeSize,!s.isText)continue;let l=s.text;for(;o<e.childCount;){let t=e.child(o++);if(i+=t.nodeSize,!t.isText)break;l+=t.text}if(i>=n){if(i>=r&&l.slice(r-t.length-a,r-a)==t)return r-t.length;let e=a<r?l.lastIndexOf(t,r-a-1):-1;if(e>=0&&e+t.length+a>=n)return a+e;if(n==r&&l.length>=r+t.length-a&&l.slice(r-a,r-a+t.length)==t)return r}}return-1}(this.node.content,e,n-t,r-t);return i<0?null:{node:o,pos:i,text:e}}return{node:o,pos:-1,text:""}}protectLocalComposition(e,{node:t,pos:n,text:r}){if(this.getDesc(t))return;let o=t;for(;o.parentNode!=this.contentDOM;o=o.parentNode){for(;o.previousSibling;)o.parentNode.removeChild(o.previousSibling);for(;o.nextSibling;)o.parentNode.removeChild(o.nextSibling);o.pmViewDesc&&(o.pmViewDesc=void 0)}let i=new nr(this,o,t,r);e.input.compositionNodes.push(i),this.children=wr(this.children,n,n+r.length,e,i)}update(e,t,n,r){return!(3==this.dirty||!e.sameMarkup(this.node))&&(this.updateInner(e,t,n,r),!0)}updateInner(e,t,n,r){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0}updateOuterDeco(e){if(gr(e,this.outerDeco))return;let t=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=pr(this.dom,this.nodeDOM,ur(this.outerDeco,this.node,t),ur(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.add("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&(this.dom.draggable=!0)}deselectNode(){1==this.nodeDOM.nodeType&&(this.nodeDOM.classList.remove("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&this.dom.removeAttribute("draggable"))}get domAtom(){return this.node.isAtom}}function ir(e,t,n,r,o){mr(r,t,e);let i=new or(void 0,e,t,n,r,r,r,o,0);return i.contentDOM&&i.updateChildren(o,0),i}class sr extends or{constructor(e,t,n,r,o,i,s){super(e,t,n,r,o,null,i,s,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,t,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!e.sameMarkup(this.node))&&(this.updateOuterDeco(t),(0!=this.dirty||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=e,this.dirty=0,!0)}inParent(){let e=this.parent.contentDOM;for(let t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,t,n){return e==this.nodeDOM?this.posAtStart+Math.min(t,this.node.text.length):super.localPosFromDOM(e,t,n)}ignoreMutation(e){return"characterData"!=e.type&&"selection"!=e.type}slice(e,t,n){let r=this.node.cut(e,t),o=document.createTextNode(r.text);return new sr(this.parent,r,this.outerDeco,this.innerDeco,o,o,n)}markDirty(e,t){super.markDirty(e,t),this.dom!=this.nodeDOM&&(0==e||t==this.nodeDOM.nodeValue.length)&&(this.dirty=3)}get domAtom(){return!1}isText(e){return this.node.text==e}}class ar extends er{parseRule(){return{ignore:!0}}matchesHack(e){return 0==this.dirty&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return"IMG"==this.dom.nodeName}}class lr extends or{constructor(e,t,n,r,o,i,s,a,l,c){super(e,t,n,r,o,i,s,l,c),this.spec=a}update(e,t,n,r){if(3==this.dirty)return!1;if(this.spec.update&&(this.node.type==e.type||this.spec.multiType)){let o=this.spec.update(e,t,n);return o&&this.updateInner(e,t,n,r),o}return!(!this.contentDOM&&!e.isLeaf)&&super.update(e,t,n,r)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,t,n,r){this.spec.setSelection?this.spec.setSelection(e,t,n.root):super.setSelection(e,t,n,r)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return!!this.spec.stopEvent&&this.spec.stopEvent(e)}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function cr(e,t,n){let r=e.firstChild,o=!1;for(let i=0;i<t.length;i++){let s=t[i],a=s.dom;if(a.parentNode==e){for(;a!=r;)r=yr(r),o=!0;r=r.nextSibling}else o=!0,e.insertBefore(a,r);if(s instanceof rr){let t=r?r.previousSibling:e.lastChild;cr(s.contentDOM,s.children,n),r=t?t.nextSibling:e.firstChild}}for(;r;)r=yr(r),o=!0;o&&n.trackWrites==e&&(n.trackWrites=null)}const dr=function(e){e&&(this.nodeName=e)};dr.prototype=Object.create(null);const hr=[new dr];function ur(e,t,n){if(0==e.length)return hr;let r=n?hr[0]:new dr,o=[r];for(let i=0;i<e.length;i++){let s=e[i].type.attrs;if(s){s.nodeName&&o.push(r=new dr(s.nodeName));for(let e in s){let i=s[e];null!=i&&(n&&1==o.length&&o.push(r=new dr(t.isInline?"span":"div")),"class"==e?r.class=(r.class?r.class+" ":"")+i:"style"==e?r.style=(r.style?r.style+";":"")+i:"nodeName"!=e&&(r[e]=i))}}}return o}function pr(e,t,n,r){if(n==hr&&r==hr)return t;let o=t;for(let t=0;t<r.length;t++){let i=r[t],s=n[t];if(t){let t;s&&s.nodeName==i.nodeName&&o!=e&&(t=o.parentNode)&&t.nodeName.toLowerCase()==i.nodeName||(t=document.createElement(i.nodeName),t.pmIsDeco=!0,t.appendChild(o),s=hr[0]),o=t}fr(o,s||hr[0],i)}return o}function fr(e,t,n){for(let r in t)"class"!=r&&"style"!=r&&"nodeName"!=r&&!(r in n)&&e.removeAttribute(r);for(let r in n)"class"!=r&&"style"!=r&&"nodeName"!=r&&n[r]!=t[r]&&e.setAttribute(r,n[r]);if(t.class!=n.class){let r=t.class?t.class.split(" ").filter(Boolean):[],o=n.class?n.class.split(" ").filter(Boolean):[];for(let t=0;t<r.length;t++)-1==o.indexOf(r[t])&&e.classList.remove(r[t]);for(let t=0;t<o.length;t++)-1==r.indexOf(o[t])&&e.classList.add(o[t]);0==e.classList.length&&e.removeAttribute("class")}if(t.style!=n.style){if(t.style){let n,r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g;for(;n=r.exec(t.style);)e.style.removeProperty(n[1])}n.style&&(e.style.cssText+=n.style)}}function mr(e,t,n){return pr(e,e,hr,ur(t,n,1!=e.nodeType))}function gr(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].type.eq(t[n].type))return!1;return!0}function yr(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}class br{constructor(e,t,n){this.lock=t,this.view=n,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=function(e,t){let n=t,r=n.children.length,o=e.childCount,i=new Map,s=[];e:for(;o>0;){let a;for(;;)if(r){let e=n.children[r-1];if(!(e instanceof rr)){a=e,r--;break}n=e,r=e.children.length}else{if(n==t)break e;r=n.parent.children.indexOf(n),n=n.parent}let l=a.node;if(l){if(l!=e.child(o-1))break;--o,i.set(a,o),s.push(a)}}return{index:o,matched:i,matches:s.reverse()}}(e.node.content,e)}destroyBetween(e,t){if(e!=t){for(let n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,t,n){let r=0,o=this.stack.length>>1,i=Math.min(o,e.length);for(;r<i&&(r==o-1?this.top:this.stack[r+1<<1]).matchesMark(e[r])&&!1!==e[r].type.spec.spanning;)r++;for(;r<o;)this.destroyRest(),this.top.dirty=0,this.index=this.stack.pop(),this.top=this.stack.pop(),o--;for(;o<e.length;){this.stack.push(this.top,this.index+1);let r=-1;for(let t=this.index;t<Math.min(this.index+3,this.top.children.length);t++){let n=this.top.children[t];if(n.matchesMark(e[o])&&!this.isLocked(n.dom)){r=t;break}}if(r>-1)r>this.index&&(this.changed=!0,this.destroyBetween(this.index,r)),this.top=this.top.children[this.index];else{let r=rr.create(this.top,e[o],t,n);this.top.children.splice(this.index,0,r),this.top=r,this.changed=!0}this.index=0,o++}}findNodeMatch(e,t,n,r){let o,i=-1;if(r>=this.preMatch.index&&(o=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&o.matchesNode(e,t,n))i=this.top.children.indexOf(o,this.index);else for(let r=this.index,o=Math.min(this.top.children.length,r+5);r<o;r++){let o=this.top.children[r];if(o.matchesNode(e,t,n)&&!this.preMatch.matched.has(o)){i=r;break}}return!(i<0)&&(this.destroyBetween(this.index,i),this.index++,!0)}updateNodeAt(e,t,n,r,o){let i=this.top.children[r];return 3==i.dirty&&i.dom==i.contentDOM&&(i.dirty=2),!!i.update(e,t,n,o)&&(this.destroyBetween(this.index,r),this.index++,!0)}findIndexWithChild(e){for(;;){let t=e.parentNode;if(!t)return-1;if(t==this.top.contentDOM){let t=e.pmViewDesc;if(t)for(let e=this.index;e<this.top.children.length;e++)if(this.top.children[e]==t)return e;return-1}e=t}}updateNextNode(e,t,n,r,o,i){for(let s=this.index;s<this.top.children.length;s++){let a=this.top.children[s];if(a instanceof or){let l=this.preMatch.matched.get(a);if(null!=l&&l!=o)return!1;let c,d=a.dom,h=this.isLocked(d)&&!(e.isText&&a.node&&a.node.isText&&a.nodeDOM.nodeValue==e.text&&3!=a.dirty&&gr(t,a.outerDeco));if(!h&&a.update(e,t,n,r))return this.destroyBetween(this.index,s),a.dom!=d&&(this.changed=!0),this.index++,!0;if(!h&&(c=this.recreateWrapper(a,e,t,n,r,i)))return this.destroyBetween(this.index,s),this.top.children[this.index]=c,c.contentDOM&&(c.dirty=2,c.updateChildren(r,i+1),c.dirty=0),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,t,n,r,o,i){if(e.dirty||t.isAtom||!e.children.length||!e.node.content.eq(t.content)||!gr(n,e.outerDeco)||!r.eq(e.innerDeco))return null;let s=or.create(this.top,t,n,r,o,i);if(s.contentDOM){s.children=e.children,e.children=[];for(let e of s.children)e.parent=s}return e.destroy(),s}addNode(e,t,n,r,o){let i=or.create(this.top,e,t,n,r,o);i.contentDOM&&i.updateChildren(r,o+1),this.top.children.splice(this.index++,0,i),this.changed=!0}placeWidget(e,t,n){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(!r||!r.matchesWidget(e)||e!=r.widget&&r.widget.type.toDOM.parentNode){let r=new tr(this.top,e,t,n);this.top.children.splice(this.index++,0,r),this.changed=!0}else this.index++}addTextblockHacks(){let e=this.top.children[this.index-1],t=this.top;for(;e instanceof rr;)t=e,e=t.children[t.children.length-1];(!e||!(e instanceof sr)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((On||xn)&&e&&"false"==e.dom.contentEditable&&this.addHackNode("IMG",t),this.addHackNode("BR",this.top))}addHackNode(e,t){if(t==this.top&&this.index<t.children.length&&t.children[this.index].matchesHack(e))this.index++;else{let n=document.createElement(e);"IMG"==e&&(n.className="ProseMirror-separator",n.alt=""),"BR"==e&&(n.className="ProseMirror-trailingBreak");let r=new ar(this.top,[],n,null);t!=this.top?t.children.push(r):t.children.splice(this.index++,0,r),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||1==e.nodeType&&e.contains(this.lock.parentNode))}}function vr(e,t){return e.type.side-t.type.side}function wr(e,t,n,r,o){let i=[];for(let s=0,a=0;s<e.length;s++){let l=e[s],c=a,d=a+=l.size;c>=n||d<=t?i.push(l):(c<t&&i.push(l.slice(0,t-c,r)),o&&(i.push(o),o=void 0),d>n&&i.push(l.slice(n-c,l.size,r)))}return i}function kr(e,t=null){let n=e.domSelectionRange(),r=e.state.doc;if(!n.focusNode)return null;let o=e.docView.nearestDesc(n.focusNode),i=o&&0==o.size,s=e.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(s<0)return null;let a,l,c=r.resolve(s);if(dn(n)){for(a=s;o&&!o.node;)o=o.parent;let e=o.node;if(o&&e.isAtom&&zt.isSelectable(e)&&o.parent&&(!e.isInline||!function(e,t,n){for(let r=0==t,o=t==ln(e);r||o;){if(e==n)return!0;let t=en(e);if(!(e=e.parentNode))return!1;r=r&&0==t,o=o&&t==ln(e)}}(n.focusNode,n.focusOffset,o.dom))){let e=o.posBefore;l=new zt(s==e?c:r.resolve(e))}}else{if(n instanceof e.dom.ownerDocument.defaultView.Selection&&n.rangeCount>1){let t=s,o=s;for(let r=0;r<n.rangeCount;r++){let i=n.getRangeAt(r);t=Math.min(t,e.docView.posFromDOM(i.startContainer,i.startOffset,1)),o=Math.max(o,e.docView.posFromDOM(i.endContainer,i.endOffset,-1))}if(t<0)return null;[a,s]=o==e.state.selection.anchor?[o,t]:[t,o],c=r.resolve(s)}else a=e.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(a<0)return null}let d=r.resolve(a);if(!l){l=Ar(e,d,c,"pointer"==t||e.state.selection.head<c.pos&&!i?1:-1)}return l}function xr(e){return e.editable?e.hasFocus():Rr(e)&&document.activeElement&&document.activeElement.contains(e.dom)}function Sr(e,t=!1){let n=e.state.selection;if(Tr(e,n),xr(e)){if(!t&&e.input.mouseDown&&e.input.mouseDown.allowDefault&&xn){let t=e.domSelectionRange(),n=e.domObserver.currentSelection;if(t.anchorNode&&n.anchorNode&&on(t.anchorNode,t.anchorOffset,n.anchorNode,n.anchorOffset))return e.input.mouseDown.delayedSelectionSync=!0,void e.domObserver.setCurSelection()}if(e.domObserver.disconnectSelection(),e.cursorWrapper)!function(e){let t=e.domSelection(),n=document.createRange();if(!t)return;let r=e.cursorWrapper.dom,o="IMG"==r.nodeName;o?n.setStart(r.parentNode,en(r)+1):n.setStart(r,0),n.collapse(!0),t.removeAllRanges(),t.addRange(n),!o&&!e.state.selection.visible&&bn&&vn<=11&&(r.disabled=!0,r.disabled=!1)}(e);else{let r,o,{anchor:i,head:s}=n;Or&&!(n instanceof Lt)&&(n.$from.parent.inlineContent||(r=Cr(e,n.from)),!n.empty&&!n.$from.parent.inlineContent&&(o=Cr(e,n.to))),e.docView.setSelection(i,s,e,t),Or&&(r&&Er(r),o&&Er(o)),n.visible?e.dom.classList.remove("ProseMirror-hideselection"):(e.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&function(e){let t=e.dom.ownerDocument;t.removeEventListener("selectionchange",e.input.hideSelectionGuard);let n=e.domSelectionRange(),r=n.anchorNode,o=n.anchorOffset;t.addEventListener("selectionchange",e.input.hideSelectionGuard=()=>{(n.anchorNode!=r||n.anchorOffset!=o)&&(t.removeEventListener("selectionchange",e.input.hideSelectionGuard),setTimeout((()=>{(!xr(e)||e.state.selection.visible)&&e.dom.classList.remove("ProseMirror-hideselection")}),20))})}(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}}const Or=On||xn&&Sn<63;function Cr(e,t){let{node:n,offset:r}=e.docView.domFromPos(t,0),o=r<n.childNodes.length?n.childNodes[r]:null,i=r?n.childNodes[r-1]:null;if(On&&o&&"false"==o.contentEditable)return Mr(o);if(!(o&&"false"!=o.contentEditable||i&&"false"!=i.contentEditable)){if(o)return Mr(o);if(i)return Mr(i)}}function Mr(e){return e.contentEditable="true",On&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function Er(e){e.contentEditable="false",e.wasDraggable&&(e.draggable=!0,e.wasDraggable=null)}function Tr(e,t){if(t instanceof zt){let n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(Nr(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else Nr(e)}function Nr(e){e.lastSelectedViewDesc&&(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),e.lastSelectedViewDesc=void 0)}function Ar(e,t,n,r){return e.someProp("createSelectionBetween",(r=>r(e,t,n)))||Lt.between(t,n,r)}function Dr(e){return!(e.editable&&!e.hasFocus())&&Rr(e)}function Rr(e){let t=e.domSelectionRange();if(!t.anchorNode)return!1;try{return e.dom.contains(3==t.anchorNode.nodeType?t.anchorNode.parentNode:t.anchorNode)&&(e.editable||e.dom.contains(3==t.focusNode.nodeType?t.focusNode.parentNode:t.focusNode))}catch{return!1}}function Ir(e,t){let{$anchor:n,$head:r}=e.selection,o=t>0?n.max(r):n.min(r),i=o.parent.inlineContent?o.depth?e.doc.resolve(t>0?o.after():o.before()):null:o;return i&&Dt.findFrom(i,t)}function Pr(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function Lr(e,t,n){let r=e.state.selection;if(!(r instanceof Lt)){if(r instanceof zt&&r.node.isInline)return Pr(e,new Lt(t>0?r.$to:r.$from));{let n=Ir(e.state,t);return!!n&&Pr(e,n)}}if(n.indexOf("s")>-1){let{$head:n}=r,o=n.textOffset?null:t<0?n.nodeBefore:n.nodeAfter;if(!o||o.isText||!o.isLeaf)return!1;let i=e.state.doc.resolve(n.pos+o.nodeSize*(t<0?-1:1));return Pr(e,new Lt(r.$anchor,i))}if(!r.empty)return!1;if(e.endOfTextblock(t>0?"forward":"backward")){let n=Ir(e.state,t);return!!(n&&n instanceof zt)&&Pr(e,n)}if(!(Mn&&n.indexOf("m")>-1)){let n,o=r.$head,i=o.textOffset?null:t<0?o.nodeBefore:o.nodeAfter;if(!i||i.isText)return!1;let s=t<0?o.pos-i.nodeSize:o.pos;return!!(i.isAtom||(n=e.docView.descAt(s))&&!n.contentDOM)&&(zt.isSelectable(i)?Pr(e,new zt(t<0?e.state.doc.resolve(o.pos-i.nodeSize):o)):!!Nn&&Pr(e,new Lt(e.state.doc.resolve(t<0?s:s+i.nodeSize))))}}function jr(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function zr(e,t){let n=e.pmViewDesc;return n&&0==n.size&&(t<0||e.nextSibling||"BR"!=e.nodeName)}function $r(e,t){return t<0?function(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let o,i,s=!1;for(wn&&1==n.nodeType&&r<jr(n)&&zr(n.childNodes[r],-1)&&(s=!0);;)if(r>0){if(1!=n.nodeType)break;{let e=n.childNodes[r-1];if(zr(e,-1))o=n,i=--r;else{if(3!=e.nodeType)break;n=e,r=n.nodeValue.length}}}else{if(Br(n))break;{let t=n.previousSibling;for(;t&&zr(t,-1);)o=n.parentNode,i=en(t),t=t.previousSibling;if(t)n=t,r=jr(n);else{if(n=n.parentNode,n==e.dom)break;r=0}}}s?_r(e,n,r):o&&_r(e,o,i)}(e):function(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let o,i,s=jr(n);for(;;)if(r<s){if(1!=n.nodeType)break;if(!zr(n.childNodes[r],1))break;o=n,i=++r}else{if(Br(n))break;{let t=n.nextSibling;for(;t&&zr(t,1);)o=t.parentNode,i=en(t)+1,t=t.nextSibling;if(t)n=t,r=0,s=jr(n);else{if(n=n.parentNode,n==e.dom)break;r=s=0}}}o&&_r(e,o,i)}(e)}function Br(e){let t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function _r(e,t,n){if(3!=t.nodeType){let e,r;(r=function(e,t){for(;e&&t==e.childNodes.length&&!cn(e);)t=en(e)+1,e=e.parentNode;for(;e&&t<e.childNodes.length;){let n=e.childNodes[t];if(3==n.nodeType)return n;if(1==n.nodeType&&"false"==n.contentEditable)break;e=n,t=0}}(t,n))?(t=r,n=0):(e=function(e,t){for(;e&&!t&&!cn(e);)t=en(e),e=e.parentNode;for(;e&&t;){let n=e.childNodes[t-1];if(3==n.nodeType)return n;if(1==n.nodeType&&"false"==n.contentEditable)break;t=(e=n).childNodes.length}}(t,n))&&(t=e,n=e.nodeValue.length)}let r=e.domSelection();if(!r)return;if(dn(r)){let e=document.createRange();e.setEnd(t,n),e.setStart(t,n),r.removeAllRanges(),r.addRange(e)}else r.extend&&r.extend(t,n);e.domObserver.setCurSelection();let{state:o}=e;setTimeout((()=>{e.state==o&&Sr(e)}),50)}function Fr(e,t){let n=e.state.doc.resolve(t);if(!xn&&!En&&n.parent.inlineContent){let r=e.coordsAtPos(t);if(t>n.start()){let n=e.coordsAtPos(t-1),o=(n.top+n.bottom)/2;if(o>r.top&&o<r.bottom&&Math.abs(n.left-r.left)>1)return n.left<r.left?"ltr":"rtl"}if(t<n.end()){let n=e.coordsAtPos(t+1),o=(n.top+n.bottom)/2;if(o>r.top&&o<r.bottom&&Math.abs(n.left-r.left)>1)return n.left>r.left?"ltr":"rtl"}}return"rtl"==getComputedStyle(e.dom).direction?"rtl":"ltr"}function Vr(e,t,n){let r=e.state.selection;if(r instanceof Lt&&!r.empty||n.indexOf("s")>-1||Mn&&n.indexOf("m")>-1)return!1;let{$from:o,$to:i}=r;if(!o.parent.inlineContent||e.endOfTextblock(t<0?"up":"down")){let n=Ir(e.state,t);if(n&&n instanceof zt)return Pr(e,n)}if(!o.parent.inlineContent){let n=t<0?o:i,s=r instanceof Bt?Dt.near(n,t):Dt.findFrom(n,t);return!!s&&Pr(e,s)}return!1}function Hr(e,t){if(!(e.state.selection instanceof Lt))return!0;let{$head:n,$anchor:r,empty:o}=e.state.selection;if(!n.sameParent(r))return!0;if(!o)return!1;if(e.endOfTextblock(t>0?"forward":"backward"))return!0;let i=!n.textOffset&&(t<0?n.nodeBefore:n.nodeAfter);if(i&&!i.isText){let r=e.state.tr;return t<0?r.delete(n.pos-i.nodeSize,n.pos):r.delete(n.pos,n.pos+i.nodeSize),e.dispatch(r),!0}return!1}function Wr(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function Kr(e,t){let n=t.keyCode,r=function(e){let t="";return e.ctrlKey&&(t+="c"),e.metaKey&&(t+="m"),e.altKey&&(t+="a"),e.shiftKey&&(t+="s"),t}(t);if(8==n||Mn&&72==n&&"c"==r)return Hr(e,-1)||$r(e,-1);if(46==n&&!t.shiftKey||Mn&&68==n&&"c"==r)return Hr(e,1)||$r(e,1);if(13==n||27==n)return!0;if(37==n||Mn&&66==n&&"c"==r){let t=37==n?"ltr"==Fr(e,e.state.selection.from)?-1:1:-1;return Lr(e,t,r)||$r(e,t)}if(39==n||Mn&&70==n&&"c"==r){let t=39==n?"ltr"==Fr(e,e.state.selection.from)?1:-1:1;return Lr(e,t,r)||$r(e,t)}return 38==n||Mn&&80==n&&"c"==r?Vr(e,-1,r)||$r(e,-1):40==n||Mn&&78==n&&"c"==r?function(e){if(!On||e.state.selection.$head.parentOffset>0)return!1;let{focusNode:t,focusOffset:n}=e.domSelectionRange();if(t&&1==t.nodeType&&0==n&&t.firstChild&&"false"==t.firstChild.contentEditable){let n=t.firstChild;Wr(e,n,"true"),setTimeout((()=>Wr(e,n,"false")),20)}return!1}(e)||Vr(e,1,r)||$r(e,1):r==(Mn?"m":"c")&&(66==n||73==n||89==n||90==n)}function qr(e,t){e.someProp("transformCopied",(n=>{t=n(t,e)}));let n=[],{content:r,openStart:o,openEnd:i}=t;for(;o>1&&i>1&&1==r.childCount&&1==r.firstChild.childCount;){o--,i--;let e=r.firstChild;n.push(e.type.name,e.attrs!=e.type.defaultAttrs?e.attrs:null),r=e.content}let s=e.someProp("clipboardSerializer")||Le.fromSchema(e.state.schema),a=no(),l=a.createElement("div");l.appendChild(s.serializeFragment(r,{document:a}));let c,d=l.firstChild,h=0;for(;d&&1==d.nodeType&&(c=eo[d.nodeName.toLowerCase()]);){for(let e=c.length-1;e>=0;e--){let t=a.createElement(c[e]);for(;l.firstChild;)t.appendChild(l.firstChild);l.appendChild(t),h++}d=l.firstChild}return d&&1==d.nodeType&&d.setAttribute("data-pm-slice",`${o} ${i}${h?` -${h}`:""} ${JSON.stringify(n)}`),{dom:l,text:e.someProp("clipboardTextSerializer",(n=>n(t,e)))||t.content.textBetween(0,t.content.size,"\n\n"),slice:t}}function Jr(e,t,n,r,o){let i,s,a=o.parent.type.spec.code;if(!n&&!t)return null;let l=t&&(r||a||!n);if(l){if(e.someProp("transformPastedText",(n=>{t=n(t,a||r,e)})),a)return t?new _(P.from(e.state.schema.text(t.replace(/\r\n?/g,"\n"))),0,0):_.empty;let n=e.someProp("clipboardTextParser",(n=>n(t,o,r,e)));if(n)s=n;else{let n=o.marks(),{schema:r}=e.state,s=Le.fromSchema(r);i=document.createElement("div"),t.split(/(?:\r\n?|\n)+/).forEach((e=>{let t=i.appendChild(document.createElement("p"));e&&t.appendChild(s.serializeNode(r.text(e,n)))}))}}else e.someProp("transformPastedHTML",(t=>{n=t(n,e)})),i=function(e){let t=/^(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));let n,r=no().createElement("div"),o=/<([a-z][^>\s]+)/i.exec(e);if((n=o&&eo[o[1].toLowerCase()])&&(e=n.map((e=>"<"+e+">")).join("")+e+n.map((e=>"</"+e+">")).reverse().join("")),r.innerHTML=function(e){let t=window.trustedTypes;return t?(ro||(ro=t.createPolicy("ProseMirrorClipboard",{createHTML:e=>e})),ro.createHTML(e)):e}(e),n)for(let e=0;e<n.length;e++)r=r.querySelector(n[e])||r;return r}(n),Nn&&function(e){let t=e.querySelectorAll(xn?"span:not([class]):not([style])":"span.Apple-converted-space");for(let n=0;n<t.length;n++){let r=t[n];1==r.childNodes.length&&" "==r.textContent&&r.parentNode&&r.parentNode.replaceChild(e.ownerDocument.createTextNode(" "),r)}}(i);let c=i&&i.querySelector("[data-pm-slice]"),d=c&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(c.getAttribute("data-pm-slice")||"");if(d&&d[3])for(let e=+d[3];e>0;e--){let e=i.firstChild;for(;e&&1!=e.nodeType;)e=e.nextSibling;if(!e)break;i=e}if(s||(s=(e.someProp("clipboardParser")||e.someProp("domParser")||Ce.fromSchema(e.state.schema)).parseSlice(i,{preserveWhitespace:!(!l&&!d),context:o,ruleFromNode:e=>"BR"!=e.nodeName||e.nextSibling||!e.parentNode||Ur.test(e.parentNode.nodeName)?null:{ignore:!0}})),d)s=function(e,t){if(!e.size)return e;let n,r=e.content.firstChild.type.schema;try{n=JSON.parse(t)}catch{return e}let{content:o,openStart:i,openEnd:s}=e;for(let e=n.length-2;e>=0;e-=2){let t=r.nodes[n[e]];if(!t||t.hasRequiredAttrs())break;o=P.from(t.create(n[e+1],o)),i++,s++}return new _(o,i,s)}(Zr(s,+d[1],+d[2]),d[4]);else if(s=_.maxOpen(function(e,t){if(e.childCount<2)return e;for(let n=t.depth;n>=0;n--){let r,o=t.node(n).contentMatchAt(t.index(n)),i=[];if(e.forEach((e=>{if(!i)return;let t,n=o.findWrapping(e.type);if(!n)return i=null;if(t=i.length&&r.length&&Yr(n,r,e,i[i.length-1],0))i[i.length-1]=t;else{i.length&&(i[i.length-1]=Qr(i[i.length-1],r.length));let t=Gr(e,n);i.push(t),o=o.matchType(t.type),r=n}})),i)return P.from(i)}return e}(s.content,o),!0),s.openStart||s.openEnd){let e=0,t=0;for(let t=s.content.firstChild;e<s.openStart&&!t.type.spec.isolating;e++,t=t.firstChild);for(let e=s.content.lastChild;t<s.openEnd&&!e.type.spec.isolating;t++,e=e.lastChild);s=Zr(s,e,t)}return e.someProp("transformPasted",(t=>{s=t(s,e)})),s}const Ur=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function Gr(e,t,n=0){for(let r=t.length-1;r>=n;r--)e=t[r].create(null,P.from(e));return e}function Yr(e,t,n,r,o){if(o<e.length&&o<t.length&&e[o]==t[o]){let i=Yr(e,t,n,r.lastChild,o+1);if(i)return r.copy(r.content.replaceChild(r.childCount-1,i));if(r.contentMatchAt(r.childCount).matchType(o==e.length-1?n.type:e[o+1]))return r.copy(r.content.append(P.from(Gr(n,e,o+1))))}}function Qr(e,t){if(0==t)return e;let n=e.content.replaceChild(e.childCount-1,Qr(e.lastChild,t-1)),r=e.contentMatchAt(e.childCount).fillBefore(P.empty,!0);return e.copy(n.append(r))}function Xr(e,t,n,r,o,i){let s=t<0?e.firstChild:e.lastChild,a=s.content;return e.childCount>1&&(i=0),o<r-1&&(a=Xr(a,t,n,r,o+1,i)),o>=n&&(a=t<0?s.contentMatchAt(0).fillBefore(a,i<=o).append(a):a.append(s.contentMatchAt(s.childCount).fillBefore(P.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,s.copy(a))}function Zr(e,t,n){return t<e.openStart&&(e=new _(Xr(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd)),n<e.openEnd&&(e=new _(Xr(e.content,1,n,e.openEnd,0,0),e.openStart,n)),e}const eo={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let to=null;function no(){return to||(to=document.implementation.createHTMLDocument("title"))}let ro=null;const oo={},io={},so={touchstart:!0,touchmove:!0};class ao{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:""},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastChromeDelete=0,this.composing=!1,this.compositionNode=null,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}}function lo(e,t){e.input.lastSelectionOrigin=t,e.input.lastSelectionTime=Date.now()}function co(e){e.someProp("handleDOMEvents",(t=>{for(let n in t)e.input.eventHandlers[n]||e.dom.addEventListener(n,e.input.eventHandlers[n]=t=>ho(e,t))}))}function ho(e,t){return e.someProp("handleDOMEvents",(n=>{let r=n[t.type];return!!r&&(r(e,t)||t.defaultPrevented)}))}function uo(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n=t.target;n!=e.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(t))return!1;return!0}function po(e){return{left:e.clientX,top:e.clientY}}function fo(e,t,n,r,o){if(-1==r)return!1;let i=e.state.doc.resolve(r);for(let r=i.depth+1;r>0;r--)if(e.someProp(t,(t=>r>i.depth?t(e,n,i.nodeAfter,i.before(r),o,!0):t(e,n,i.node(r),i.before(r),o,!1))))return!0;return!1}function mo(e,t,n){if(e.focused||e.focus(),e.state.selection.eq(t))return;let r=e.state.tr.setSelection(t);"pointer"==n&&r.setMeta("pointer",!0),e.dispatch(r)}function go(e,t,n,r,o){return fo(e,"handleClickOn",t,n,r)||e.someProp("handleClick",(n=>n(e,t,r)))||(o?function(e,t){if(-1==t)return!1;let n,r,o=e.state.selection;o instanceof zt&&(n=o.node);let i=e.state.doc.resolve(t);for(let e=i.depth+1;e>0;e--){let t=e>i.depth?i.nodeAfter:i.node(e);if(zt.isSelectable(t)){r=n&&o.$from.depth>0&&e>=o.$from.depth&&i.before(o.$from.depth+1)==o.$from.pos?i.before(o.$from.depth):i.before(e);break}}return null!=r&&(mo(e,zt.create(e.state.doc,r),"pointer"),!0)}(e,n):function(e,t){if(-1==t)return!1;let n=e.state.doc.resolve(t),r=n.nodeAfter;return!!(r&&r.isAtom&&zt.isSelectable(r))&&(mo(e,new zt(n),"pointer"),!0)}(e,n))}function yo(e,t,n,r){return fo(e,"handleDoubleClickOn",t,n,r)||e.someProp("handleDoubleClick",(n=>n(e,t,r)))}function bo(e,t,n,r){return fo(e,"handleTripleClickOn",t,n,r)||e.someProp("handleTripleClick",(n=>n(e,t,r)))||function(e,t,n){if(0!=n.button)return!1;let r=e.state.doc;if(-1==t)return!!r.inlineContent&&(mo(e,Lt.create(r,0,r.content.size),"pointer"),!0);let o=r.resolve(t);for(let t=o.depth+1;t>0;t--){let n=t>o.depth?o.nodeAfter:o.node(t),i=o.before(t);if(n.inlineContent)mo(e,Lt.create(r,i+1,i+1+n.content.size),"pointer");else{if(!zt.isSelectable(n))continue;mo(e,zt.create(r,i),"pointer")}return!0}}(e,n,r)}function vo(e){return Eo(e)}io.keydown=(e,t)=>{let n=t;if(e.input.shiftKey=16==n.keyCode||n.shiftKey,!xo(e,n)&&(e.input.lastKeyCode=n.keyCode,e.input.lastKeyCodeTime=Date.now(),!Tn||!xn||13!=n.keyCode))if(229!=n.keyCode&&e.domObserver.forceFlush(),!Cn||13!=n.keyCode||n.ctrlKey||n.altKey||n.metaKey)e.someProp("handleKeyDown",(t=>t(e,n)))||Kr(e,n)?n.preventDefault():lo(e,"key");else{let t=Date.now();e.input.lastIOSEnter=t,e.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{e.input.lastIOSEnter==t&&(e.someProp("handleKeyDown",(t=>t(e,hn(13,"Enter")))),e.input.lastIOSEnter=0)}),200)}},io.keyup=(e,t)=>{16==t.keyCode&&(e.input.shiftKey=!1)},io.keypress=(e,t)=>{let n=t;if(xo(e,n)||!n.charCode||n.ctrlKey&&!n.altKey||Mn&&n.metaKey)return;if(e.someProp("handleKeyPress",(t=>t(e,n))))return void n.preventDefault();let r=e.state.selection;if(!(r instanceof Lt&&r.$from.sameParent(r.$to))){let t=String.fromCharCode(n.charCode);!/[\r\n]/.test(t)&&!e.someProp("handleTextInput",(n=>n(e,r.$from.pos,r.$to.pos,t)))&&e.dispatch(e.state.tr.insertText(t).scrollIntoView()),n.preventDefault()}};const wo=Mn?"metaKey":"ctrlKey";oo.mousedown=(e,t)=>{let n=t;e.input.shiftKey=n.shiftKey;let r=vo(e),o=Date.now(),i="singleClick";o-e.input.lastClick.time<500&&function(e,t){let n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}(n,e.input.lastClick)&&!n[wo]&&("singleClick"==e.input.lastClick.type?i="doubleClick":"doubleClick"==e.input.lastClick.type&&(i="tripleClick")),e.input.lastClick={time:o,x:n.clientX,y:n.clientY,type:i};let s=e.posAtCoords(po(n));s&&("singleClick"==i?(e.input.mouseDown&&e.input.mouseDown.done(),e.input.mouseDown=new ko(e,s,n,!!r)):("doubleClick"==i?yo:bo)(e,s.pos,s.inside,n)?n.preventDefault():lo(e,"pointer"))};class ko{constructor(e,t,n,r){let o,i;if(this.view=e,this.pos=t,this.event=n,this.flushed=r,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!n[wo],this.allowDefault=n.shiftKey,t.inside>-1)o=e.state.doc.nodeAt(t.inside),i=t.inside;else{let n=e.state.doc.resolve(t.pos);o=n.parent,i=n.depth?n.before():0}const s=r?null:n.target,a=s?e.docView.nearestDesc(s,!0):null;this.target=a&&1==a.dom.nodeType?a.dom:null;let{selection:l}=e.state;(0==n.button&&o.type.spec.draggable&&!1!==o.type.spec.selectable||l instanceof zt&&l.from<=i&&l.to>i)&&(this.mightDrag={node:o,pos:i,addAttr:!(!this.target||this.target.draggable),setUneditable:!(!this.target||!wn||this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout((()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")}),20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),lo(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout((()=>Sr(this.view))),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(po(e))),this.updateAllowDefault(e),this.allowDefault||!t?lo(this.view,"pointer"):go(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():0==e.button&&(this.flushed||On&&this.mightDrag&&!this.mightDrag.node.isAtom||xn&&!this.view.state.selection.visible&&Math.min(Math.abs(t.pos-this.view.state.selection.from),Math.abs(t.pos-this.view.state.selection.to))<=2)?(mo(this.view,Dt.near(this.view.state.doc.resolve(t.pos)),"pointer"),e.preventDefault()):lo(this.view,"pointer")}move(e){this.updateAllowDefault(e),lo(this.view,"pointer"),0==e.buttons&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}function xo(e,t){return!!e.composing||!!(On&&Math.abs(t.timeStamp-e.input.compositionEndedAt)<500)&&(e.input.compositionEndedAt=-2e8,!0)}oo.touchstart=e=>{e.input.lastTouch=Date.now(),vo(e),lo(e,"pointer")},oo.touchmove=e=>{e.input.lastTouch=Date.now(),lo(e,"pointer")},oo.contextmenu=e=>vo(e);const So=Tn?5e3:-1;function Oo(e,t){clearTimeout(e.input.composingTimeout),t>-1&&(e.input.composingTimeout=setTimeout((()=>Eo(e)),t))}function Co(e){for(e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=function(){let e=document.createEvent("Event");return e.initEvent("event",!0,!0),e.timeStamp}());e.input.compositionNodes.length>0;)e.input.compositionNodes.pop().markParentsDirty()}function Mo(e){let t=e.domSelectionRange();if(!t.focusNode)return null;let n=function(e,t){for(;;){if(3==e.nodeType&&t)return e;if(1==e.nodeType&&t>0){if("false"==e.contentEditable)return null;t=ln(e=e.childNodes[t-1])}else{if(!e.parentNode||cn(e))return null;t=en(e),e=e.parentNode}}}(t.focusNode,t.focusOffset),r=function(e,t){for(;;){if(3==e.nodeType&&t<e.nodeValue.length)return e;if(1==e.nodeType&&t<e.childNodes.length){if("false"==e.contentEditable)return null;e=e.childNodes[t],t=0}else{if(!e.parentNode||cn(e))return null;t=en(e)+1,e=e.parentNode}}}(t.focusNode,t.focusOffset);if(n&&r&&n!=r){let t=r.pmViewDesc,o=e.domObserver.lastChangedTextNode;if(n==o||r==o)return o;if(!t||!t.isText(r.nodeValue))return r;if(e.input.compositionNode==r){let e=n.pmViewDesc;if(e&&e.isText(n.nodeValue))return r}}return n||r}function Eo(e,t=!1){if(!(Tn&&e.domObserver.flushingSoon>=0)){if(e.domObserver.forceFlush(),Co(e),t||e.docView&&e.docView.dirty){let n=kr(e);return n&&!n.eq(e.state.selection)?e.dispatch(e.state.tr.setSelection(n)):!e.markCursor&&!t||e.state.selection.empty?e.updateState(e.state):e.dispatch(e.state.tr.deleteSelection()),!0}return!1}}io.compositionstart=io.compositionupdate=e=>{if(!e.composing){e.domObserver.flush();let{state:t}=e,n=t.selection.$to;if(t.selection instanceof Lt&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some((e=>!1===e.type.spec.inclusive))))e.markCursor=e.state.storedMarks||n.marks(),Eo(e,!0),e.markCursor=null;else if(Eo(e,!t.selection.empty),wn&&t.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let t=e.domSelectionRange();for(let n=t.focusNode,r=t.focusOffset;n&&1==n.nodeType&&0!=r;){let t=r<0?n.lastChild:n.childNodes[r-1];if(!t)break;if(3==t.nodeType){let n=e.domSelection();n&&n.collapse(t,t.nodeValue.length);break}n=t,r=-1}}e.input.composing=!0}Oo(e,So)},io.compositionend=(e,t)=>{e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=t.timeStamp,e.input.compositionPendingChanges=e.domObserver.pendingRecords().length?e.input.compositionID:0,e.input.compositionNode=null,e.input.compositionPendingChanges&&Promise.resolve().then((()=>e.domObserver.flush())),e.input.compositionID++,Oo(e,20))};const To=bn&&vn<15||Cn&&An<604;function No(e,t,n,r,o){let i=Jr(e,t,n,r,e.state.selection.$from);if(e.someProp("handlePaste",(t=>t(e,o,i||_.empty))))return!0;if(!i)return!1;let s=function(e){return 0==e.openStart&&0==e.openEnd&&1==e.content.childCount?e.content.firstChild:null}(i),a=s?e.state.tr.replaceSelectionWith(s,r):e.state.tr.replaceSelection(i);return e.dispatch(a.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Ao(e){let t=e.getData("text/plain")||e.getData("Text");if(t)return t;let n=e.getData("text/uri-list");return n?n.replace(/\r?\n/g," "):""}oo.copy=io.cut=(e,t)=>{let n=t,r=e.state.selection,o="cut"==n.type;if(r.empty)return;let i=To?null:n.clipboardData,s=r.content(),{dom:a,text:l}=qr(e,s);i?(n.preventDefault(),i.clearData(),i.setData("text/html",a.innerHTML),i.setData("text/plain",l)):function(e,t){if(!e.dom.parentNode)return;let n=e.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(t),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),o=document.createRange();o.selectNodeContents(t),e.dom.blur(),r.removeAllRanges(),r.addRange(o),setTimeout((()=>{n.parentNode&&n.parentNode.removeChild(n),e.focus()}),50)}(e,a),o&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))},io.paste=(e,t)=>{let n=t;if(e.composing&&!Tn)return;let r=To?null:n.clipboardData,o=e.input.shiftKey&&45!=e.input.lastKeyCode;r&&No(e,Ao(r),r.getData("text/html"),o,n)?n.preventDefault():function(e,t){if(!e.dom.parentNode)return;let n=e.input.shiftKey||e.state.selection.$from.parent.type.spec.code,r=e.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let o=e.input.shiftKey&&45!=e.input.lastKeyCode;setTimeout((()=>{e.focus(),r.parentNode&&r.parentNode.removeChild(r),n?No(e,r.value,null,o,t):No(e,r.textContent,r.innerHTML,o,t)}),50)}(e,n)};class Do{constructor(e,t,n){this.slice=e,this.move=t,this.node=n}}const Ro=Mn?"altKey":"ctrlKey";function Io(e,t){return e.someProp("dragCopies",(e=>!e(t)))??!t[Ro]}oo.dragstart=(e,t)=>{let n=t,r=e.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let o,i=e.state.selection,s=i.empty?null:e.posAtCoords(po(n));if(!(s&&s.pos>=i.from&&s.pos<=(i instanceof zt?i.to-1:i.to)))if(r&&r.mightDrag)o=zt.create(e.state.doc,r.mightDrag.pos);else if(n.target&&1==n.target.nodeType){let t=e.docView.nearestDesc(n.target,!0);t&&t.node.type.spec.draggable&&t!=e.docView&&(o=zt.create(e.state.doc,t.posBefore))}let a=(o||e.state.selection).content(),{dom:l,text:c,slice:d}=qr(e,a);(!n.dataTransfer.files.length||!xn||Sn>120)&&n.dataTransfer.clearData(),n.dataTransfer.setData(To?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",To||n.dataTransfer.setData("text/plain",c),e.dragging=new Do(d,Io(e,n),o)},oo.dragend=e=>{let t=e.dragging;window.setTimeout((()=>{e.dragging==t&&(e.dragging=null)}),50)},io.dragover=io.dragenter=(e,t)=>t.preventDefault(),io.drop=(e,t)=>{let n=t,r=e.dragging;if(e.dragging=null,!n.dataTransfer)return;let o=e.posAtCoords(po(n));if(!o)return;let i=e.state.doc.resolve(o.pos),s=r&&r.slice;s?e.someProp("transformPasted",(t=>{s=t(s,e)})):s=Jr(e,Ao(n.dataTransfer),To?null:n.dataTransfer.getData("text/html"),!1,i);let a=!(!r||!Io(e,n));if(e.someProp("handleDrop",(t=>t(e,n,s||_.empty,a))))return void n.preventDefault();if(!s)return;n.preventDefault();let l=s?function(e,t,n){let r=e.resolve(t);if(!n.content.size)return t;let o=n.content;for(let e=0;e<n.openStart;e++)o=o.firstChild.content;for(let e=1;e<=(0==n.openStart&&n.size?2:1);e++)for(let t=r.depth;t>=0;t--){let n=t==r.depth?0:r.pos<=(r.start(t+1)+r.end(t+1))/2?-1:1,i=r.index(t)+(n>0?1:0),s=r.node(t),a=!1;if(1==e)a=s.canReplace(i,i,o);else{let e=s.contentMatchAt(i).findWrapping(o.firstChild.type);a=e&&s.canReplaceWith(i,i,e[0])}if(a)return 0==n?r.pos:n<0?r.before(t+1):r.after(t+1)}return null}(e.state.doc,i.pos,s):i.pos;null==l&&(l=i.pos);let c=e.state.tr;if(a){let{node:e}=r;e?e.replace(c):c.deleteSelection()}let d=c.mapping.map(l),h=0==s.openStart&&0==s.openEnd&&1==s.content.childCount,u=c.doc;if(h?c.replaceRangeWith(d,d,s.content.firstChild):c.replaceRange(d,d,s),c.doc.eq(u))return;let p=c.doc.resolve(d);if(h&&zt.isSelectable(s.content.firstChild)&&p.nodeAfter&&p.nodeAfter.sameMarkup(s.content.firstChild))c.setSelection(new zt(p));else{let t=c.mapping.map(l);c.mapping.maps[c.mapping.maps.length-1].forEach(((e,n,r,o)=>t=o)),c.setSelection(Ar(e,p,c.doc.resolve(t)))}e.focus(),e.dispatch(c.setMeta("uiEvent","drop"))},oo.focus=e=>{e.input.lastFocus=Date.now(),e.focused||(e.domObserver.stop(),e.dom.classList.add("ProseMirror-focused"),e.domObserver.start(),e.focused=!0,setTimeout((()=>{e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.domSelectionRange())&&Sr(e)}),20))},oo.blur=(e,t)=>{let n=t;e.focused&&(e.domObserver.stop(),e.dom.classList.remove("ProseMirror-focused"),e.domObserver.start(),n.relatedTarget&&e.dom.contains(n.relatedTarget)&&e.domObserver.currentSelection.clear(),e.focused=!1)},oo.beforeinput=(e,t)=>{if(xn&&Tn&&"deleteContentBackward"==t.inputType){e.domObserver.flushSoon();let{domChangeCount:t}=e.input;setTimeout((()=>{if(e.input.domChangeCount!=t||(e.dom.blur(),e.focus(),e.someProp("handleKeyDown",(t=>t(e,hn(8,"Backspace"))))))return;let{$cursor:n}=e.state.selection;n&&n.pos>0&&e.dispatch(e.state.tr.delete(n.pos-1,n.pos).scrollIntoView())}),50)}};for(let e in io)oo[e]=io[e];function Po(e,t){if(e==t)return!0;for(let n in e)if(e[n]!==t[n])return!1;for(let n in t)if(!(n in e))return!1;return!0}class Lo{constructor(e,t){this.toDOM=e,this.spec=t||_o,this.side=this.spec.side||0}map(e,t,n,r){let{pos:o,deleted:i}=e.mapResult(t.from+r,this.side<0?-1:1);return i?null:new $o(o-n,o-n,this)}valid(){return!0}eq(e){return this==e||e instanceof Lo&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&Po(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class jo{constructor(e,t){this.attrs=e,this.spec=t||_o}map(e,t,n,r){let o=e.map(t.from+r,this.spec.inclusiveStart?-1:1)-n,i=e.map(t.to+r,this.spec.inclusiveEnd?1:-1)-n;return o>=i?null:new $o(o,i,this)}valid(e,t){return t.from<t.to}eq(e){return this==e||e instanceof jo&&Po(this.attrs,e.attrs)&&Po(this.spec,e.spec)}static is(e){return e.type instanceof jo}destroy(){}}class zo{constructor(e,t){this.attrs=e,this.spec=t||_o}map(e,t,n,r){let o=e.mapResult(t.from+r,1);if(o.deleted)return null;let i=e.mapResult(t.to+r,-1);return i.deleted||i.pos<=o.pos?null:new $o(o.pos-n,i.pos-n,this)}valid(e,t){let n,{index:r,offset:o}=e.content.findIndex(t.from);return o==t.from&&!(n=e.child(r)).isText&&o+n.nodeSize==t.to}eq(e){return this==e||e instanceof zo&&Po(this.attrs,e.attrs)&&Po(this.spec,e.spec)}destroy(){}}class $o{constructor(e,t,n){this.from=e,this.to=t,this.type=n}copy(e,t){return new $o(e,t,this.type)}eq(e,t=0){return this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to}map(e,t,n){return this.type.map(e,this,t,n)}static widget(e,t,n){return new $o(e,e,new Lo(t,n))}static inline(e,t,n,r){return new $o(e,t,new jo(n,r))}static node(e,t,n,r){return new $o(e,t,new zo(n,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof jo}get widget(){return this.type instanceof Lo}}const Bo=[],_o={};class Fo{constructor(e,t){this.local=e.length?e:Bo,this.children=t.length?t:Bo}static create(e,t){return t.length?Jo(t,e,0,_o):Vo}find(e,t,n){let r=[];return this.findInner(e??0,t??1e9,r,0,n),r}findInner(e,t,n,r,o){for(let i=0;i<this.local.length;i++){let s=this.local[i];s.from<=t&&s.to>=e&&(!o||o(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(let i=0;i<this.children.length;i+=3)if(this.children[i]<t&&this.children[i+1]>e){let s=this.children[i]+1;this.children[i+2].findInner(e-s,t-s,n,r+s,o)}}map(e,t,n){return this==Vo||0==e.maps.length?this:this.mapInner(e,t,0,0,n||_o)}mapInner(e,t,n,r,o){let i;for(let s=0;s<this.local.length;s++){let a=this.local[s].map(e,n,r);a&&a.type.valid(t,a)?(i||(i=[])).push(a):o.onRemove&&o.onRemove(this.local[s].spec)}return this.children.length?function(e,t,n,r,o,i,s){let a=e.slice();for(let e=0,t=i;e<n.maps.length;e++){let r=0;n.maps[e].forEach(((e,n,o,i)=>{let s=i-o-(n-e);for(let o=0;o<a.length;o+=3){let i=a[o+1];if(i<0||e>i+t-r)continue;let l=a[o]+t-r;n>=l?a[o+1]=e<=l?-2:-1:e>=t&&s&&(a[o]+=s,a[o+1]+=s)}r+=s})),t=n.maps[e].map(t,-1)}let l=!1;for(let t=0;t<a.length;t+=3)if(a[t+1]<0){if(-2==a[t+1]){l=!0,a[t+1]=-1;continue}let c=n.map(e[t]+i),d=c-o;if(d<0||d>=r.content.size){l=!0;continue}let h=n.map(e[t+1]+i,-1)-o,{index:u,offset:p}=r.content.findIndex(d),f=r.maybeChild(u);if(f&&p==d&&p+f.nodeSize==h){let r=a[t+2].mapInner(n,f,c+1,e[t]+i+1,s);r!=Vo?(a[t]=d,a[t+1]=h,a[t+2]=r):(a[t+1]=-2,l=!0)}else l=!0}if(l){let l=function(e,t,n,r,o,i,s){function a(e,t){for(let i=0;i<e.local.length;i++){let a=e.local[i].map(r,o,t);a?n.push(a):s.onRemove&&s.onRemove(e.local[i].spec)}for(let n=0;n<e.children.length;n+=3)a(e.children[n+2],e.children[n]+t+1)}for(let n=0;n<e.length;n+=3)-1==e[n+1]&&a(e[n+2],t[n]+i+1);return n}(a,e,t,n,o,i,s),c=Jo(l,r,0,s);t=c.local;for(let e=0;e<a.length;e+=3)a[e+1]<0&&(a.splice(e,3),e-=3);for(let e=0,t=0;e<c.children.length;e+=3){let n=c.children[e];for(;t<a.length&&a[t]<n;)t+=3;a.splice(t,0,c.children[e],c.children[e+1],c.children[e+2])}}return new Fo(t.sort(Uo),a)}(this.children,i||[],e,t,n,r,o):i?new Fo(i.sort(Uo),Bo):Vo}add(e,t){return t.length?this==Vo?Fo.create(e,t):this.addInner(e,t,0):this}addInner(e,t,n){let r,o=0;e.forEach(((e,i)=>{let s,a=i+n;if(s=Ko(t,e,a)){for(r||(r=this.children.slice());o<r.length&&r[o]<i;)o+=3;r[o]==i?r[o+2]=r[o+2].addInner(e,s,a+1):r.splice(o,0,i,i+e.nodeSize,Jo(s,e,a+1,_o)),o+=3}}));let i=Wo(o?qo(t):t,-n);for(let t=0;t<i.length;t++)i[t].type.valid(e,i[t])||i.splice(t--,1);return new Fo(i.length?this.local.concat(i).sort(Uo):this.local,r||this.children)}remove(e){return 0==e.length||this==Vo?this:this.removeInner(e,0)}removeInner(e,t){let n=this.children,r=this.local;for(let r=0;r<n.length;r+=3){let o,i=n[r]+t,s=n[r+1]+t;for(let t,n=0;n<e.length;n++)(t=e[n])&&t.from>i&&t.to<s&&(e[n]=null,(o||(o=[])).push(t));if(!o)continue;n==this.children&&(n=this.children.slice());let a=n[r+2].removeInner(o,i+1);a!=Vo?n[r+2]=a:(n.splice(r,3),r-=3)}if(r.length)for(let n,o=0;o<e.length;o++)if(n=e[o])for(let e=0;e<r.length;e++)r[e].eq(n,t)&&(r==this.local&&(r=this.local.slice()),r.splice(e--,1));return n==this.children&&r==this.local?this:r.length||n.length?new Fo(r,n):Vo}forChild(e,t){if(this==Vo)return this;if(t.isLeaf)return Fo.empty;let n,r;for(let t=0;t<this.children.length;t+=3)if(this.children[t]>=e){this.children[t]==e&&(n=this.children[t+2]);break}let o=e+1,i=o+t.content.size;for(let e=0;e<this.local.length;e++){let t=this.local[e];if(t.from<i&&t.to>o&&t.type instanceof jo){let e=Math.max(o,t.from)-o,n=Math.min(i,t.to)-o;e<n&&(r||(r=[])).push(t.copy(e,n))}}if(r){let e=new Fo(r.sort(Uo),Bo);return n?new Ho([e,n]):e}return n||Vo}eq(e){if(this==e)return!0;if(!(e instanceof Fo)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let t=0;t<this.local.length;t++)if(!this.local[t].eq(e.local[t]))return!1;for(let t=0;t<this.children.length;t+=3)if(this.children[t]!=e.children[t]||this.children[t+1]!=e.children[t+1]||!this.children[t+2].eq(e.children[t+2]))return!1;return!0}locals(e){return Go(this.localsInner(e))}localsInner(e){if(this==Vo)return Bo;if(e.inlineContent||!this.local.some(jo.is))return this.local;let t=[];for(let e=0;e<this.local.length;e++)this.local[e].type instanceof jo||t.push(this.local[e]);return t}forEachSet(e){e(this)}}Fo.empty=new Fo([],[]),Fo.removeOverlap=Go;const Vo=Fo.empty;class Ho{constructor(e){this.members=e}map(e,t){const n=this.members.map((n=>n.map(e,t,_o)));return Ho.from(n)}forChild(e,t){if(t.isLeaf)return Fo.empty;let n=[];for(let r=0;r<this.members.length;r++){let o=this.members[r].forChild(e,t);o!=Vo&&(o instanceof Ho?n=n.concat(o.members):n.push(o))}return Ho.from(n)}eq(e){if(!(e instanceof Ho)||e.members.length!=this.members.length)return!1;for(let t=0;t<this.members.length;t++)if(!this.members[t].eq(e.members[t]))return!1;return!0}locals(e){let t,n=!0;for(let r=0;r<this.members.length;r++){let o=this.members[r].localsInner(e);if(o.length)if(t){n&&(t=t.slice(),n=!1);for(let e=0;e<o.length;e++)t.push(o[e])}else t=o}return t?Go(n?t:t.sort(Uo)):Bo}static from(e){switch(e.length){case 0:return Vo;case 1:return e[0];default:return new Ho(e.every((e=>e instanceof Fo))?e:e.reduce(((e,t)=>e.concat(t instanceof Fo?t:t.members)),[]))}}forEachSet(e){for(let t=0;t<this.members.length;t++)this.members[t].forEachSet(e)}}function Wo(e,t){if(!t||!e.length)return e;let n=[];for(let r=0;r<e.length;r++){let o=e[r];n.push(new $o(o.from+t,o.to+t,o.type))}return n}function Ko(e,t,n){if(t.isLeaf)return null;let r=n+t.nodeSize,o=null;for(let t,i=0;i<e.length;i++)(t=e[i])&&t.from>n&&t.to<r&&((o||(o=[])).push(t),e[i]=null);return o}function qo(e){let t=[];for(let n=0;n<e.length;n++)null!=e[n]&&t.push(e[n]);return t}function Jo(e,t,n,r){let o=[],i=!1;t.forEach(((t,s)=>{let a=Ko(e,t,s+n);if(a){i=!0;let e=Jo(a,t,n+s+1,r);e!=Vo&&o.push(s,s+t.nodeSize,e)}}));let s=Wo(i?qo(e):e,-n).sort(Uo);for(let e=0;e<s.length;e++)s[e].type.valid(t,s[e])||(r.onRemove&&r.onRemove(s[e].spec),s.splice(e--,1));return s.length||o.length?new Fo(s,o):Vo}function Uo(e,t){return e.from-t.from||e.to-t.to}function Go(e){let t=e;for(let n=0;n<t.length-1;n++){let r=t[n];if(r.from!=r.to)for(let o=n+1;o<t.length;o++){let i=t[o];if(i.from!=r.from){i.from<r.to&&(t==e&&(t=e.slice()),t[n]=r.copy(r.from,i.from),Yo(t,o,r.copy(i.from,r.to)));break}i.to!=r.to&&(t==e&&(t=e.slice()),t[o]=i.copy(i.from,r.to),Yo(t,o+1,i.copy(r.to,i.to)))}}return t}function Yo(e,t,n){for(;t<e.length&&Uo(n,e[t])>0;)t++;e.splice(t,0,n)}function Qo(e){let t=[];return e.someProp("decorations",(n=>{let r=n(e.state);r&&r!=Vo&&t.push(r)})),e.cursorWrapper&&t.push(Fo.create(e.state.doc,[e.cursorWrapper.deco])),Ho.from(t)}const Xo={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},Zo=bn&&vn<=11;class ei{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class ti{constructor(e,t){this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new ei,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver((e=>{for(let t=0;t<e.length;t++)this.queue.push(e[t]);bn&&vn<=11&&e.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),Zo&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1,this.flush()}),20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,Xo)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let t=0;t<e.length;t++)this.queue.push(e[t]);window.setTimeout((()=>this.flush()),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout((()=>this.suppressingSelectionUpdates=!1),50)}onSelectionChange(){if(Dr(this.view)){if(this.suppressingSelectionUpdates)return Sr(this.view);if(bn&&vn<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&on(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let t,n=new Set;for(let t=e.focusNode;t;t=tn(t))n.add(t);for(let r=e.anchorNode;r;r=tn(r))if(n.has(r)){t=r;break}let r=t&&this.view.docView.nearestDesc(t);return r&&r.ignoreMutation({type:"selection",target:3==t.nodeType?t.parentNode:t})?(this.setCurSelection(),!0):void 0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let t=this.pendingRecords();t.length&&(this.queue=[]);let n=e.domSelectionRange(),r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(n)&&Dr(e)&&!this.ignoreSelectionChange(n),o=-1,i=-1,s=!1,a=[];if(e.editable)for(let e=0;e<t.length;e++){let n=this.registerMutation(t[e],a);n&&(o=o<0?n.from:Math.min(n.from,o),i=i<0?n.to:Math.max(n.to,i),n.typeOver&&(s=!0))}if(wn&&a.length){let t=a.filter((e=>"BR"==e.nodeName));if(2==t.length){let[e,n]=t;e.parentNode&&e.parentNode.parentNode==n.parentNode?n.remove():e.remove()}else{let{focusNode:n}=this.currentSelection;for(let r of t){let t=r.parentNode;t&&"LI"==t.nodeName&&(!n||ii(e,n)!=t)&&r.remove()}}}let l=null;o<0&&r&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&dn(n)&&(l=kr(e))&&l.eq(Dt.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,Sr(e),this.currentSelection.set(n),e.scrollToSelection()):(o>-1||r)&&(o>-1&&(e.docView.markDirty(o,i),function(e){if(!ni.has(e)&&(ni.set(e,null),-1!==["normal","nowrap","pre-line"].indexOf(getComputedStyle(e.dom).whiteSpace))){if(e.requiresGeckoHackNode=wn,ri)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),ri=!0}}(e)),this.handleDOMChange(o,i,s,a),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(n)||Sr(e),this.currentSelection.set(n))}registerMutation(e,t){if(t.indexOf(e.target)>-1)return null;let n=this.view.docView.nearestDesc(e.target);if("attributes"==e.type&&(n==this.view.docView||"contenteditable"==e.attributeName||"style"==e.attributeName&&!e.oldValue&&!e.target.getAttribute("style"))||!n||n.ignoreMutation(e))return null;if("childList"==e.type){for(let n=0;n<e.addedNodes.length;n++){let r=e.addedNodes[n];t.push(r),3==r.nodeType&&(this.lastChangedTextNode=r)}if(n.contentDOM&&n.contentDOM!=n.dom&&!n.contentDOM.contains(e.target))return{from:n.posBefore,to:n.posAfter};let r=e.previousSibling,o=e.nextSibling;if(bn&&vn<=11&&e.addedNodes.length)for(let t=0;t<e.addedNodes.length;t++){let{previousSibling:n,nextSibling:i}=e.addedNodes[t];(!n||Array.prototype.indexOf.call(e.addedNodes,n)<0)&&(r=n),(!i||Array.prototype.indexOf.call(e.addedNodes,i)<0)&&(o=i)}let i=r&&r.parentNode==e.target?en(r)+1:0,s=n.localPosFromDOM(e.target,i,-1),a=o&&o.parentNode==e.target?en(o):e.target.childNodes.length;return{from:s,to:n.localPosFromDOM(e.target,a,1)}}return"attributes"==e.type?{from:n.posAtStart-n.border,to:n.posAtEnd+n.border}:(this.lastChangedTextNode=e.target,{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue})}}let ni=new WeakMap,ri=!1;function oi(e,t){let n=t.startContainer,r=t.startOffset,o=t.endContainer,i=t.endOffset,s=e.domAtPos(e.state.selection.anchor);return on(s.node,s.offset,o,i)&&([n,r,o,i]=[o,i,n,r]),{anchorNode:n,anchorOffset:r,focusNode:o,focusOffset:i}}function ii(e,t){for(let n=t.parentNode;n&&n!=e.dom;n=n.parentNode){let t=e.docView.nearestDesc(n,!0);if(t&&t.node.isBlock)return n}return null}function si(e){let t=e.pmViewDesc;if(t)return t.parseRule();if("BR"==e.nodeName&&e.parentNode){if(On&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){let e=document.createElement("div");return e.appendChild(document.createElement("li")),{skip:e}}if(e.parentNode.lastChild==e||On&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if("IMG"==e.nodeName&&e.getAttribute("mark-placeholder"))return{ignore:!0};return null}const ai=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function li(e,t,n,r,o){let i=e.input.compositionPendingChanges||(e.composing?e.input.compositionID:0);if(e.input.compositionPendingChanges=0,t<0){let t=e.input.lastSelectionTime>Date.now()-50?e.input.lastSelectionOrigin:null,n=kr(e,t);if(n&&!e.state.selection.eq(n)){if(xn&&Tn&&13===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime&&e.someProp("handleKeyDown",(t=>t(e,hn(13,"Enter")))))return;let r=e.state.tr.setSelection(n);"pointer"==t?r.setMeta("pointer",!0):"key"==t&&r.scrollIntoView(),i&&r.setMeta("composition",i),e.dispatch(r)}return}let s=e.state.doc.resolve(t),a=s.sharedDepth(n);t=s.before(a+1),n=e.state.doc.resolve(n).after(a+1);let l,c,d=e.state.selection,h=function(e,t,n){let r,{node:o,fromOffset:i,toOffset:s,from:a,to:l}=e.docView.parseRange(t,n),c=e.domSelectionRange(),d=c.anchorNode;if(d&&e.dom.contains(1==d.nodeType?d:d.parentNode)&&(r=[{node:d,offset:c.anchorOffset}],dn(c)||r.push({node:c.focusNode,offset:c.focusOffset})),xn&&8===e.input.lastKeyCode)for(let e=s;e>i;e--){let t=o.childNodes[e-1],n=t.pmViewDesc;if("BR"==t.nodeName&&!n){s=e;break}if(!n||n.size)break}let h=e.state.doc,u=e.someProp("domParser")||Ce.fromSchema(e.state.schema),p=h.resolve(a),f=null,m=u.parse(o,{topNode:p.parent,topMatch:p.parent.contentMatchAt(p.index()),topOpen:!0,from:i,to:s,preserveWhitespace:"pre"!=p.parent.type.whitespace||"full",findPositions:r,ruleFromNode:si,context:p});if(r&&null!=r[0].pos){let e=r[0].pos,t=r[1]&&r[1].pos;null==t&&(t=e),f={anchor:e+a,head:t+a}}return{doc:m,sel:f,from:a,to:l}}(e,t,n),u=e.state.doc,p=u.slice(h.from,h.to);8===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime?(l=e.state.selection.to,c="end"):(l=e.state.selection.from,c="start"),e.input.lastKeyCode=null;let f=function(e,t,n,r,o){let i=e.findDiffStart(t,n);if(null==i)return null;let{a:s,b:a}=e.findDiffEnd(t,n+e.size,n+t.size);if("end"==o){r-=s+Math.max(0,i-Math.min(s,a))-i}if(s<i&&e.size<t.size){let e=r<=i&&r>=s?i-r:0;i-=e,i&&i<t.size&&hi(t.textBetween(i-1,i+1))&&(i+=e?1:-1),a=i+(a-s),s=i}else if(a<i){let t=r<=i&&r>=a?i-r:0;i-=t,i&&i<e.size&&hi(e.textBetween(i-1,i+1))&&(i+=t?1:-1),s=i+(s-a),a=i}return{start:i,endA:s,endB:a}}(p.content,h.doc.content,h.from,l,c);if(f&&e.input.domChangeCount++,(Cn&&e.input.lastIOSEnter>Date.now()-225||Tn)&&o.some((e=>1==e.nodeType&&!ai.test(e.nodeName)))&&(!f||f.endA>=f.endB)&&e.someProp("handleKeyDown",(t=>t(e,hn(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(!f){if(!(r&&d instanceof Lt&&!d.empty&&d.$head.sameParent(d.$anchor))||e.composing||h.sel&&h.sel.anchor!=h.sel.head){if(h.sel){let t=ci(e,e.state.doc,h.sel);if(t&&!t.eq(e.state.selection)){let n=e.state.tr.setSelection(t);i&&n.setMeta("composition",i),e.dispatch(n)}}return}f={start:d.from,endA:d.to,endB:d.to}}e.state.selection.from<e.state.selection.to&&f.start==f.endB&&e.state.selection instanceof Lt&&(f.start>e.state.selection.from&&f.start<=e.state.selection.from+2&&e.state.selection.from>=h.from?f.start=e.state.selection.from:f.endA<e.state.selection.to&&f.endA>=e.state.selection.to-2&&e.state.selection.to<=h.to&&(f.endB+=e.state.selection.to-f.endA,f.endA=e.state.selection.to)),bn&&vn<=11&&f.endB==f.start+1&&f.endA==f.start&&f.start>h.from&&"  "==h.doc.textBetween(f.start-h.from-1,f.start-h.from+1)&&(f.start--,f.endA--,f.endB--);let m,g=h.doc.resolveNoCache(f.start-h.from),y=h.doc.resolveNoCache(f.endB-h.from),b=u.resolve(f.start),v=g.sameParent(y)&&g.parent.inlineContent&&b.end()>=f.endA;if((Cn&&e.input.lastIOSEnter>Date.now()-225&&(!v||o.some((e=>"DIV"==e.nodeName||"P"==e.nodeName)))||!v&&g.pos<h.doc.content.size&&(!g.sameParent(y)||!g.parent.inlineContent)&&(m=Dt.findFrom(h.doc.resolve(g.pos+1),1,!0))&&m.head>g.pos)&&e.someProp("handleKeyDown",(t=>t(e,hn(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(e.state.selection.anchor>f.start&&function(e,t,n,r,o){if(n-t<=o.pos-r.pos||di(r,!0,!1)<o.pos)return!1;let i=e.resolve(t);if(!r.parent.isTextblock){let e=i.nodeAfter;return null!=e&&n==t+e.nodeSize}if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;let s=e.resolve(di(i,!0,!0));return!(!s.parent.isTextblock||s.pos>n||di(s,!0,!1)<n)&&r.parent.content.cut(r.parentOffset).eq(s.parent.content)}(u,f.start,f.endA,g,y)&&e.someProp("handleKeyDown",(t=>t(e,hn(8,"Backspace")))))return void(Tn&&xn&&e.domObserver.suppressSelectionUpdates());xn&&f.endB==f.start&&(e.input.lastChromeDelete=Date.now()),Tn&&!v&&g.start()!=y.start()&&0==y.parentOffset&&g.depth==y.depth&&h.sel&&h.sel.anchor==h.sel.head&&h.sel.head==f.endA&&(f.endB-=2,y=h.doc.resolveNoCache(f.endB-h.from),setTimeout((()=>{e.someProp("handleKeyDown",(function(t){return t(e,hn(13,"Enter"))}))}),20));let w,k,x,S=f.start,O=f.endA;if(v)if(g.pos==y.pos)bn&&vn<=11&&0==g.parentOffset&&(e.domObserver.suppressSelectionUpdates(),setTimeout((()=>Sr(e)),20)),w=e.state.tr.delete(S,O),k=u.resolve(f.start).marksAcross(u.resolve(f.endA));else if(f.endA==f.endB&&(x=function(e,t){let n,r,o,i=e.firstChild.marks,s=t.firstChild.marks,a=i,l=s;for(let e=0;e<s.length;e++)a=s[e].removeFromSet(a);for(let e=0;e<i.length;e++)l=i[e].removeFromSet(l);if(1==a.length&&0==l.length)r=a[0],n="add",o=e=>e.mark(r.addToSet(e.marks));else{if(0!=a.length||1!=l.length)return null;r=l[0],n="remove",o=e=>e.mark(r.removeFromSet(e.marks))}let c=[];for(let e=0;e<t.childCount;e++)c.push(o(t.child(e)));if(P.from(c).eq(e))return{mark:r,type:n}}(g.parent.content.cut(g.parentOffset,y.parentOffset),b.parent.content.cut(b.parentOffset,f.endA-b.start()))))w=e.state.tr,"add"==x.type?w.addMark(S,O,x.mark):w.removeMark(S,O,x.mark);else if(g.parent.child(g.index()).isText&&g.index()==y.index()-(y.textOffset?0:1)){let t=g.parent.textBetween(g.parentOffset,y.parentOffset);if(e.someProp("handleTextInput",(n=>n(e,S,O,t))))return;w=e.state.tr.insertText(t,S,O)}if(w||(w=e.state.tr.replace(S,O,h.doc.slice(f.start-h.from,f.endB-h.from))),h.sel){let t=ci(e,w.doc,h.sel);t&&!(xn&&e.composing&&t.empty&&(f.start!=f.endB||e.input.lastChromeDelete<Date.now()-100)&&(t.head==S||t.head==w.mapping.map(O)-1)||bn&&t.empty&&t.head==S)&&w.setSelection(t)}k&&w.ensureMarks(k),i&&w.setMeta("composition",i),e.dispatch(w.scrollIntoView())}function ci(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:Ar(e,t.resolve(n.anchor),t.resolve(n.head))}function di(e,t,n){let r=e.depth,o=t?e.end():e.pos;for(;r>0&&(t||e.indexAfter(r)==e.node(r).childCount);)r--,o++,t=!1;if(n){let t=e.node(r).maybeChild(e.indexAfter(r));for(;t&&!t.isLeaf;)t=t.firstChild,o++}return o}function hi(e){if(2!=e.length)return!1;let t=e.charCodeAt(0),n=e.charCodeAt(1);return t>=56320&&t<=57343&&n>=55296&&n<=56319}class ui{constructor(e,t){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new ao,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=t,this.state=t.state,this.directPlugins=t.plugins||[],this.directPlugins.forEach(yi),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):"function"==typeof e?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=mi(this),fi(this),this.nodeViews=gi(this),this.docView=ir(this.state.doc,pi(this),Qo(this),this.dom,this),this.domObserver=new ti(this,((e,t,n,r)=>li(this,e,t,n,r))),this.domObserver.start(),function(e){for(let t in oo){let n=oo[t];e.dom.addEventListener(t,e.input.eventHandlers[t]=t=>{uo(e,t)&&!ho(e,t)&&(e.editable||!(t.type in io))&&n(e,t)},so[t]?{passive:!0}:void 0)}On&&e.dom.addEventListener("input",(()=>null)),co(e)}(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let t in e)this._props[t]=e[t];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&co(this);let t=this._props;this._props=e,e.plugins&&(e.plugins.forEach(yi),this.directPlugins=e.plugins),this.updateStateInner(e.state,t)}setProps(e){let t={};for(let e in this._props)t[e]=this._props[e];t.state=this.state;for(let n in e)t[n]=e[n];this.update(t)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,t){var n;let r=this.state,o=!1,i=!1;e.storedMarks&&this.composing&&(Co(this),i=!0),this.state=e;let s=r.plugins!=e.plugins||this._props.plugins!=t.plugins;if(s||this._props.plugins!=t.plugins||this._props.nodeViews!=t.nodeViews){let e=gi(this);(function(e,t){let n=0,r=0;for(let r in e){if(e[r]!=t[r])return!0;n++}for(let e in t)r++;return n!=r})(e,this.nodeViews)&&(this.nodeViews=e,o=!0)}(s||t.handleDOMEvents!=this._props.handleDOMEvents)&&co(this),this.editable=mi(this),fi(this);let a=Qo(this),l=pi(this),c=r.plugins==e.plugins||r.doc.eq(e.doc)?e.scrollToSelection>r.scrollToSelection?"to selection":"preserve":"reset",d=o||!this.docView.matchesNode(e.doc,l,a);(d||!e.selection.eq(r.selection))&&(i=!0);let h="preserve"==c&&i&&null==this.dom.style.overflowAnchor&&function(e){let t,n,r=e.dom.getBoundingClientRect(),o=Math.max(0,r.top);for(let i=(r.left+r.right)/2,s=o+1;s<Math.min(innerHeight,r.bottom);s+=5){let r=e.root.elementFromPoint(i,s);if(!r||r==e.dom||!e.dom.contains(r))continue;let a=r.getBoundingClientRect();if(a.top>=o-20){t=r,n=a.top;break}}return{refDOM:t,refTop:n,stack:Ln(e.dom)}}(this);if(i){this.domObserver.stop();let t=d&&(bn||xn)&&!this.composing&&!r.selection.empty&&!e.selection.empty&&function(e,t){let n=Math.min(e.$anchor.sharedDepth(e.head),t.$anchor.sharedDepth(t.head));return e.$anchor.start(n)!=t.$anchor.start(n)}(r.selection,e.selection);if(d){let n=xn?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=Mo(this)),(o||!this.docView.update(e.doc,l,a,this))&&(this.docView.updateOuterDeco(l),this.docView.destroy(),this.docView=ir(e.doc,l,a,this.dom,this)),n&&!this.trackWrites&&(t=!0)}t||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&function(e){let t=e.docView.domFromPos(e.state.selection.anchor,0),n=e.domSelectionRange();return on(t.node,t.offset,n.anchorNode,n.anchorOffset)}(this))?Sr(this,t):(Tr(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(r),!(null===(n=this.dragging)||void 0===n)&&n.node&&!r.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,r),"reset"==c?this.dom.scrollTop=0:"to selection"==c?this.scrollToSelection():h&&function({refDOM:e,refTop:t,stack:n}){let r=e?e.getBoundingClientRect().top:0;jn(n,0==r?0:r-t)}(h)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(e&&this.dom.contains(1==e.nodeType?e:e.parentNode)&&!this.someProp("handleScrollToSelection",(e=>e(this))))if(this.state.selection instanceof zt){let t=this.docView.domAfterPos(this.state.selection.from);1==t.nodeType&&Pn(this,t.getBoundingClientRect(),e)}else Pn(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(e&&e.plugins==this.state.plugins&&this.directPlugins==this.prevDirectPlugins)for(let t=0;t<this.pluginViews.length;t++){let n=this.pluginViews[t];n.update&&n.update(this,e)}else{this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let e=0;e<this.directPlugins.length;e++){let t=this.directPlugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}for(let e=0;e<this.state.plugins.length;e++){let t=this.state.plugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}}}updateDraggedNode(e,t){let n=e.node,r=-1;if(this.state.doc.nodeAt(n.from)==n.node)r=n.from;else{let e=n.from+(this.state.doc.content.size-t.doc.content.size);(e>0&&this.state.doc.nodeAt(e))==n.node&&(r=e)}this.dragging=new Do(e.slice,e.move,r<0?void 0:zt.create(this.state.doc,r))}someProp(e,t){let n,r=this._props&&this._props[e];if(null!=r&&(n=t?t(r):r))return n;for(let r=0;r<this.directPlugins.length;r++){let o=this.directPlugins[r].props[e];if(null!=o&&(n=t?t(o):o))return n}let o=this.state.plugins;if(o)for(let r=0;r<o.length;r++){let i=o[r].props[e];if(null!=i&&(n=t?t(i):i))return n}}hasFocus(){if(bn){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if("false"==e.contentEditable)return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&function(e){if(e.setActive)return e.setActive();if(zn)return e.focus(zn);let t=Ln(e);e.focus(null==zn?{get preventScroll(){return zn={preventScroll:!0},!0}}:void 0),zn||(zn=!1,jn(t,0))}(this.dom),Sr(this),this.domObserver.start()}get root(){let e=this._root;if(null==e)for(let e=this.dom.parentNode;e;e=e.parentNode)if(9==e.nodeType||11==e.nodeType&&e.host)return e.getSelection||(Object.getPrototypeOf(e).getSelection=()=>e.ownerDocument.getSelection()),this._root=e;return e||document}updateRoot(){this._root=null}posAtCoords(e){return Fn(this,e)}coordsAtPos(e,t=1){return Kn(this,e,t)}domAtPos(e,t=0){return this.docView.domFromPos(e,t)}nodeDOM(e){let t=this.docView.descAt(e);return t?t.nodeDOM:null}posAtDOM(e,t,n=-1){let r=this.docView.posFromDOM(e,t,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(e,t){return Zn(this,t||this.state,e)}pasteHTML(e,t){return No(this,"",e,!1,t||new ClipboardEvent("paste"))}pasteText(e,t){return No(this,e,null,!0,t||new ClipboardEvent("paste"))}serializeForClipboard(e){return qr(this,e)}destroy(){this.docView&&(function(e){e.domObserver.stop();for(let t in e.input.eventHandlers)e.dom.removeEventListener(t,e.input.eventHandlers[t]);clearTimeout(e.input.composingTimeout),clearTimeout(e.input.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],Qo(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,nn=null)}get isDestroyed(){return null==this.docView}dispatchEvent(e){return function(e,t){!ho(e,t)&&oo[t.type]&&(e.editable||!(t.type in io))&&oo[t.type](e,t)}(this,e)}dispatch(e){let t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){let e=this.domSelection();return e?On&&11===this.root.nodeType&&function(e){let t=e.activeElement;for(;t&&t.shadowRoot;)t=t.shadowRoot.activeElement;return t}(this.dom.ownerDocument)==this.dom&&function(e,t){if(t.getComposedRanges){let n=t.getComposedRanges(e.root)[0];if(n)return oi(e,n)}let n;function r(e){e.preventDefault(),e.stopImmediatePropagation(),n=e.getTargetRanges()[0]}return e.dom.addEventListener("beforeinput",r,!0),document.execCommand("indent"),e.dom.removeEventListener("beforeinput",r,!0),n?oi(e,n):null}(this,e)||e:{focusNode:null,focusOffset:0,anchorNode:null,anchorOffset:0}}domSelection(){return this.root.getSelection()}}function pi(e){let t=Object.create(null);return t.class="ProseMirror",t.contenteditable=String(e.editable),e.someProp("attributes",(n=>{if("function"==typeof n&&(n=n(e.state)),n)for(let e in n)"class"==e?t.class+=" "+n[e]:"style"==e?t.style=(t.style?t.style+";":"")+n[e]:!t[e]&&"contenteditable"!=e&&"nodeName"!=e&&(t[e]=String(n[e]))})),t.translate||(t.translate="no"),[$o.node(0,e.state.doc.content.size,t)]}function fi(e){if(e.markCursor){let t=document.createElement("img");t.className="ProseMirror-separator",t.setAttribute("mark-placeholder","true"),t.setAttribute("alt",""),e.cursorWrapper={dom:t,deco:$o.widget(e.state.selection.from,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function mi(e){return!e.someProp("editable",(t=>!1===t(e.state)))}function gi(e){let t=Object.create(null);function n(e){for(let n in e)Object.prototype.hasOwnProperty.call(t,n)||(t[n]=e[n])}return e.someProp("nodeViews",n),e.someProp("markViews",n),t}function yi(e){if(e.spec.state||e.spec.filterTransaction||e.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}for(var bi={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},vi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},wi=typeof navigator<"u"&&/Mac/.test(navigator.platform),ki=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),xi=0;xi<10;xi++)bi[48+xi]=bi[96+xi]=String(xi);for(xi=1;xi<=24;xi++)bi[xi+111]="F"+xi;for(xi=65;xi<=90;xi++)bi[xi]=String.fromCharCode(xi+32),vi[xi]=String.fromCharCode(xi);for(var Si in bi)vi.hasOwnProperty(Si)||(vi[Si]=bi[Si]);const Oi=typeof navigator<"u"&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function Ci(e){let t,n,r,o,i=e.split(/-(?!$)/),s=i[i.length-1];"Space"==s&&(s=" ");for(let e=0;e<i.length-1;e++){let s=i[e];if(/^(cmd|meta|m)$/i.test(s))o=!0;else if(/^a(lt)?$/i.test(s))t=!0;else if(/^(c|ctrl|control)$/i.test(s))n=!0;else if(/^s(hift)?$/i.test(s))r=!0;else{if(!/^mod$/i.test(s))throw new Error("Unrecognized modifier name: "+s);Oi?o=!0:n=!0}}return t&&(s="Alt-"+s),n&&(s="Ctrl-"+s),o&&(s="Meta-"+s),r&&(s="Shift-"+s),s}function Mi(e,t,n=!0){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),n&&t.shiftKey&&(e="Shift-"+e),e}function Ei(e){let t=function(e){let t=Object.create(null);for(let n in e)t[Ci(n)]=e[n];return t}(e);return function(e,n){let r,o=function(e){var t=!(wi&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||ki&&e.shiftKey&&e.key&&1==e.key.length||"Unidentified"==e.key)&&e.key||(e.shiftKey?vi:bi)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(n),i=t[Mi(o,n)];if(i&&i(e.state,e.dispatch,e))return!0;if(1==o.length&&" "!=o){if(n.shiftKey){let r=t[Mi(o,n,!1)];if(r&&r(e.state,e.dispatch,e))return!0}if((n.shiftKey||n.altKey||n.metaKey||o.charCodeAt(0)>127)&&(r=bi[n.keyCode])&&r!=o){let o=t[Mi(r,n)];if(o&&o(e.state,e.dispatch,e))return!0}}return!1}}function Ti(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock("backward",e):n.parentOffset>0)?null:n}function Ni(e,t,n){let r=t.nodeBefore,o=t.pos-1;for(;!r.isTextblock;o--){if(r.type.spec.isolating)return!1;let e=r.lastChild;if(!e)return!1;r=e}let i=t.nodeAfter,s=t.pos+1;for(;!i.isTextblock;s++){if(i.type.spec.isolating)return!1;let e=i.firstChild;if(!e)return!1;i=e}let a=mt(e.doc,o,s,_.empty);if(!a||a.from!=o||a instanceof tt&&a.slice.size>=s-o)return!1;if(n){let t=e.tr.step(a);t.setSelection(Lt.create(t.doc,o)),n(t.scrollIntoView())}return!0}function Ai(e,t,n=!1){for(let r=e;r;r="start"==t?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}function Di(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){if(e.index(t)>0)return e.doc.resolve(e.before(t+1));if(e.node(t).type.spec.isolating)break}return null}function Ri(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock("forward",e):n.parentOffset<n.parent.content.size)?null:n}function Ii(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){let n=e.node(t);if(e.index(t)+1<n.childCount)return e.doc.resolve(e.after(t+1));if(n.type.spec.isolating)break}return null}function Pi(e){for(let t=0;t<e.edgeCount;t++){let{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}function Li(e,t,n,r){let o,i,s=t.nodeBefore,a=t.nodeAfter,l=s.type.spec.isolating||a.type.spec.isolating;if(!l&&function(e,t,n){let r=t.nodeBefore,o=t.nodeAfter,i=t.index();return!(!(r&&o&&r.type.compatibleContent(o.type))||(!r.content.size&&t.parent.canReplace(i-1,i)?(n&&n(e.tr.delete(t.pos-r.nodeSize,t.pos).scrollIntoView()),0):!t.parent.canReplace(i,i+1)||!o.isTextblock&&!ut(e.doc,t.pos)||(n&&n(e.tr.join(t.pos).scrollIntoView()),0)))}(e,t,n))return!0;let c=!l&&t.parent.canReplace(t.index(),t.index()+1);if(c&&(o=(i=s.contentMatchAt(s.childCount)).findWrapping(a.type))&&i.matchType(o[0]||a.type).validEnd){if(n){let r=t.pos+a.nodeSize,i=P.empty;for(let e=o.length-1;e>=0;e--)i=P.from(o[e].create(null,i));i=P.from(s.copy(i));let l=e.tr.step(new nt(t.pos-1,r,t.pos,r,new _(i,1,0),o.length,!0)),c=l.doc.resolve(r+2*o.length);c.nodeAfter&&c.nodeAfter.type==s.type&&ut(l.doc,c.pos)&&l.join(c.pos),n(l.scrollIntoView())}return!0}let d=a.type.spec.isolating||r>0&&l?null:Dt.findFrom(t,1),h=d&&d.$from.blockRange(d.$to),u=h&&st(h);if(null!=u&&u>=t.depth)return n&&n(e.tr.lift(h,u).scrollIntoView()),!0;if(c&&Ai(a,"start",!0)&&Ai(s,"end")){let r=s,o=[];for(;o.push(r),!r.isTextblock;)r=r.lastChild;let i=a,l=1;for(;!i.isTextblock;i=i.firstChild)l++;if(r.canReplace(r.childCount,r.childCount,i.content)){if(n){let r=P.empty;for(let e=o.length-1;e>=0;e--)r=P.from(o[e].copy(r));n(e.tr.step(new nt(t.pos-o.length,t.pos+a.nodeSize,t.pos+l,t.pos+a.nodeSize-l,new _(r,o.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function ji(e){return function(t,n){let r=t.selection,o=e<0?r.$from:r.$to,i=o.depth;for(;o.node(i).isInline;){if(!i)return!1;i--}return!!o.node(i).isTextblock&&(n&&n(t.tr.setSelection(Lt.create(t.doc,e<0?o.start(i):o.end(i)))),!0)}}const zi=ji(-1),$i=ji(1);function Bi(e,t=null){return function(n,r){let o=!1;for(let r=0;r<n.selection.ranges.length&&!o;r++){let{$from:{pos:i},$to:{pos:s}}=n.selection.ranges[r];n.doc.nodesBetween(i,s,((r,i)=>{if(o)return!1;if(r.isTextblock&&!r.hasMarkup(e,t))if(r.type==e)o=!0;else{let t=n.doc.resolve(i),r=t.index();o=t.parent.canReplaceWith(r,r+1,e)}}))}if(!o)return!1;if(r){let o=n.tr;for(let r=0;r<n.selection.ranges.length;r++){let{$from:{pos:i},$to:{pos:s}}=n.selection.ranges[r];o.setBlockType(i,s,e,t)}r(o.scrollIntoView())}return!0}}function _i(e,t=null){return function(n,r){let{$from:o,$to:i}=n.selection,s=o.blockRange(i);if(!s)return!1;let a=r?n.tr:null;return!!function(e,t,n,r=null){let o=!1,i=t,s=t.$from.doc;if(t.depth>=2&&t.$from.node(t.depth-1).type.compatibleContent(n)&&0==t.startIndex){if(0==t.$from.index(t.depth-1))return!1;let e=s.resolve(t.start-2);i=new ne(e,e,t.depth),t.endIndex<t.parent.childCount&&(t=new ne(t.$from,s.resolve(t.$to.end(t.depth)),t.depth)),o=!0}let a=at(i,n,r,t);return!!a&&(e&&function(e,t,n,r,o){let i=P.empty;for(let e=n.length-1;e>=0;e--)i=P.from(n[e].type.create(n[e].attrs,i));e.step(new nt(t.start-(r?2:0),t.end,t.start,t.end,new _(i,0,0),n.length,!0));let s=0;for(let e=0;e<n.length;e++)n[e].type==o&&(s=e+1);let a=n.length-s,l=t.start+n.length-(r?2:0),c=t.parent;for(let n=t.startIndex,r=t.endIndex,o=!0;n<r;n++,o=!1)!o&&ht(e.doc,l,a)&&(e.split(l,a),l+=2*a),l+=c.child(n).nodeSize}(e,t,a,o,n),!0)}(a,s,e,t)&&(r&&r(a.scrollIntoView()),!0)}}function Fi(e){return function(t,n){let{$from:r,$to:o}=t.selection,i=r.blockRange(o,(t=>t.childCount>0&&t.firstChild.type==e));return!!i&&(!n||(r.node(i.depth-1).type==e?function(e,t,n,r){let o=e.tr,i=r.end,s=r.$to.end(r.depth);i<s&&(o.step(new nt(i-1,s,i,s,new _(P.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new ne(o.doc.resolve(r.$from.pos),o.doc.resolve(s),r.depth));const a=st(r);if(null==a)return!1;o.lift(r,a);let l=o.doc.resolve(o.mapping.map(i,-1)-1);return ut(o.doc,l.pos)&&l.nodeBefore.type==l.nodeAfter.type&&o.join(l.pos),t(o.scrollIntoView()),!0}(t,n,e,i):function(e,t,n){let r=e.tr,o=n.parent;for(let e=n.end,t=n.endIndex-1,i=n.startIndex;t>i;t--)e-=o.child(t).nodeSize,r.delete(e-1,e+1);let i=r.doc.resolve(n.start),s=i.nodeAfter;if(r.mapping.map(n.end)!=n.start+i.nodeAfter.nodeSize)return!1;let a=0==n.startIndex,l=n.endIndex==o.childCount,c=i.node(-1),d=i.index(-1);if(!c.canReplace(d+(a?0:1),d+1,s.content.append(l?P.empty:P.from(o))))return!1;let h=i.pos,u=h+s.nodeSize;return r.step(new nt(h-(a?1:0),u+(l?1:0),h+1,u-1,new _((a?P.empty:P.from(o.copy(P.empty))).append(l?P.empty:P.from(o.copy(P.empty))),a?0:1,l?0:1),a?0:1)),t(r.scrollIntoView()),!0}(t,n,i)))}}function Vi(e){const{state:t,transaction:n}=e;let{selection:r}=n,{doc:o}=n,{storedMarks:i}=n;return{...t,apply:t.apply.bind(t),applyTransaction:t.applyTransaction.bind(t),plugins:t.plugins,schema:t.schema,reconfigure:t.reconfigure.bind(t),toJSON:t.toJSON.bind(t),get storedMarks(){return i},get selection(){return r},get doc(){return o},get tr(){return r=n.selection,o=n.doc,i=n.storedMarks,n}}}typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform&&os.platform();class Hi{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state}get hasCustomState(){return!!this.customState}get state(){return this.customState||this.editor.state}get commands(){const{rawCommands:e,editor:t,state:n}=this,{view:r}=t,{tr:o}=n,i=this.buildProps(o);return Object.fromEntries(Object.entries(e).map((([e,t])=>[e,(...e)=>{const n=t(...e)(i);return!o.getMeta("preventDispatch")&&!this.hasCustomState&&r.dispatch(o),n}])))}get chain(){return()=>this.createChain()}get can(){return()=>this.createCan()}createChain(e,t=!0){const{rawCommands:n,editor:r,state:o}=this,{view:i}=r,s=[],a=!!e,l=e||o.tr,c={...Object.fromEntries(Object.entries(n).map((([e,n])=>[e,(...e)=>{const r=this.buildProps(l,t),o=n(...e)(r);return s.push(o),c}]))),run:()=>(!a&&t&&!l.getMeta("preventDispatch")&&!this.hasCustomState&&i.dispatch(l),s.every((e=>!0===e)))};return c}createCan(e){const{rawCommands:t,state:n}=this,r=e||n.tr,o=this.buildProps(r,false);return{...Object.fromEntries(Object.entries(t).map((([e,t])=>[e,(...e)=>t(...e)({...o,dispatch:void 0})]))),chain:()=>this.createChain(r,false)}}buildProps(e,t=!0){const{rawCommands:n,editor:r,state:o}=this,{view:i}=r,s={tr:e,editor:r,view:i,state:Vi({state:o,transaction:e}),dispatch:t?()=>{}:void 0,chain:()=>this.createChain(e,t),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(n).map((([e,t])=>[e,(...e)=>t(...e)(s)])))}};return s}}class Wi{constructor(){this.callbacks={}}on(e,t){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t),this}emit(e,...t){const n=this.callbacks[e];return n&&n.forEach((e=>e.apply(this,t))),this}off(e,t){const n=this.callbacks[e];return n&&(t?this.callbacks[e]=n.filter((e=>e!==t)):delete this.callbacks[e]),this}once(e,t){const n=(...r)=>{this.off(e,n),t.apply(this,r)};return this.on(e,n)}removeAllListeners(){this.callbacks={}}}function Ki(e,t,n){return void 0===e.config[t]&&e.parent?Ki(e.parent,t,n):"function"==typeof e.config[t]?e.config[t].bind({...n,parent:e.parent?Ki(e.parent,t,n):null}):e.config[t]}function qi(e){return{baseExtensions:e.filter((e=>"extension"===e.type)),nodeExtensions:e.filter((e=>"node"===e.type)),markExtensions:e.filter((e=>"mark"===e.type))}}function Ji(e){const t=[],{nodeExtensions:n,markExtensions:r}=qi(e),o=[...n,...r],i={default:null,rendered:!0,renderHTML:null,parseHTML:null,keepOnSplit:!0,isRequired:!1};return e.forEach((e=>{const n=Ki(e,"addGlobalAttributes",{name:e.name,options:e.options,storage:e.storage,extensions:o});n&&n().forEach((e=>{e.types.forEach((n=>{Object.entries(e.attributes).forEach((([e,r])=>{t.push({type:n,name:e,attribute:{...i,...r}})}))}))}))})),o.forEach((e=>{const n={name:e.name,options:e.options,storage:e.storage},r=Ki(e,"addAttributes",n);if(!r)return;const o=r();Object.entries(o).forEach((([n,r])=>{const o={...i,...r};"function"==typeof(null==o?void 0:o.default)&&(o.default=o.default()),null!=o&&o.isRequired&&void 0===(null==o?void 0:o.default)&&delete o.default,t.push({type:e.name,name:n,attribute:o})}))})),t}function Ui(e,t){if("string"==typeof e){if(!t.nodes[e])throw Error(`There is no node type named '${e}'. Maybe you forgot to add the extension?`);return t.nodes[e]}return e}function Gi(...e){return e.filter((e=>!!e)).reduce(((e,t)=>{const n={...e};return Object.entries(t).forEach((([e,t])=>{if(n[e])if("class"===e){const r=t?String(t).split(" "):[],o=n[e]?n[e].split(" "):[],i=r.filter((e=>!o.includes(e)));n[e]=[...o,...i].join(" ")}else if("style"===e){const r=t?t.split(";").map((e=>e.trim())).filter(Boolean):[],o=n[e]?n[e].split(";").map((e=>e.trim())).filter(Boolean):[],i=new Map;o.forEach((e=>{const[t,n]=e.split(":").map((e=>e.trim()));i.set(t,n)})),r.forEach((e=>{const[t,n]=e.split(":").map((e=>e.trim()));i.set(t,n)})),n[e]=Array.from(i.entries()).map((([e,t])=>`${e}: ${t}`)).join("; ")}else n[e]=t;else n[e]=t})),n}),{})}function Yi(e,t){return t.filter((t=>t.type===e.type.name)).filter((e=>e.attribute.rendered)).map((t=>t.attribute.renderHTML?t.attribute.renderHTML(e.attrs)||{}:{[t.name]:e.attrs[t.name]})).reduce(((e,t)=>Gi(e,t)),{})}function Qi(e){return"function"==typeof e}function Xi(e,t=void 0,...n){return Qi(e)?t?e.bind(t)(...n):e(...n):e}function Zi(e,t){return"style"in e?e:{...e,getAttrs:n=>{const r=e.getAttrs?e.getAttrs(n):e.attrs;if(!1===r)return!1;const o=t.reduce(((e,t)=>{const r=t.attribute.parseHTML?t.attribute.parseHTML(n):function(e){return"string"!=typeof e?e:e.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(e):"true"===e||"false"!==e&&e}(n.getAttribute(t.name));return null==r?e:{...e,[t.name]:r}}),{});return{...r,...o}}}}function es(e){return Object.fromEntries(Object.entries(e).filter((([e,t])=>("attrs"!==e||!function(e={}){return 0===Object.keys(e).length&&e.constructor===Object}(t))&&null!=t)))}function ts(e,t){return t.nodes[e]||t.marks[e]||null}function ns(e,t){return Array.isArray(t)?t.some((t=>("string"==typeof t?t:t.name)===e.name)):t}function rs(e,t){const n=Le.fromSchema(t).serializeFragment(e),r=document.implementation.createHTMLDocument().createElement("div");return r.appendChild(n),r.innerHTML}const is=(e,t=500)=>{let n="";const r=e.parentOffset;return e.parent.nodesBetween(Math.max(0,r-t),r,((e,t,o,i)=>{var s,a;const l=(null===(a=(s=e.type.spec).toText)||void 0===a?void 0:a.call(s,{node:e,pos:t,parent:o,index:i}))||e.textContent||"%leaf%";n+=e.isAtom&&!e.isText?l:l.slice(0,Math.max(0,r-t))})),n};function ss(e){return"[object RegExp]"===Object.prototype.toString.call(e)}class as{constructor(e){this.find=e.find,this.handler=e.handler}}const ls=(e,t)=>{if(ss(t))return t.exec(e);const n=t(e);if(!n)return null;const r=[n.text];return r.index=n.index,r.input=e,r.data=n.data,n.replaceWith&&(n.text.includes(n.replaceWith)||console.warn('[tiptap warn]: "inputRuleMatch.replaceWith" must be part of "inputRuleMatch.text".'),r.push(n.replaceWith)),r};function cs(e){var t;const{editor:n,from:r,to:o,text:i,rules:s,plugin:a}=e,{view:l}=n;if(l.composing)return!1;const c=l.state.doc.resolve(r);if(c.parent.type.spec.code||null!==(t=c.nodeBefore||c.nodeAfter)&&void 0!==t&&t.marks.find((e=>e.type.spec.code)))return!1;let d=!1;const h=is(c)+i;return s.forEach((e=>{if(d)return;const t=ls(h,e.find);if(!t)return;const s=l.state.tr,c=Vi({state:l.state,transaction:s}),u={from:r-(t[0].length-i.length),to:o},{commands:p,chain:f,can:m}=new Hi({editor:n,state:c});null===e.handler({state:c,range:u,match:t,commands:p,chain:f,can:m})||!s.steps.length||(s.setMeta(a,{transform:s,from:r,to:o,text:i}),l.dispatch(s),d=!0)})),d}function ds(e){const{editor:t,rules:n}=e,r=new Yt({state:{init:()=>null,apply(e,o,i){const s=e.getMeta(r);if(s)return s;const a=e.getMeta("applyInputRules");return!!a&&setTimeout((()=>{let{text:e}=a;"string"==typeof e||(e=rs(P.from(e),i.schema));const{from:o}=a,s=o+e.length;cs({editor:t,from:o,to:s,text:e,rules:n,plugin:r})})),e.selectionSet||e.docChanged?null:o}},props:{handleTextInput:(e,o,i,s)=>cs({editor:t,from:o,to:i,text:s,rules:n,plugin:r}),handleDOMEvents:{compositionend:e=>(setTimeout((()=>{const{$cursor:o}=e.state.selection;o&&cs({editor:t,from:o.pos,to:o.pos,text:"",rules:n,plugin:r})})),!1)},handleKeyDown(e,o){if("Enter"!==o.key)return!1;const{$cursor:i}=e.state.selection;return!!i&&cs({editor:t,from:i.pos,to:i.pos,text:"\n",rules:n,plugin:r})}},isInputRules:!0});return r}function hs(e){return"Object"===function(e){return Object.prototype.toString.call(e).slice(8,-1)}(e)&&(e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype)}function us(e,t){const n={...e};return hs(e)&&hs(t)&&Object.keys(t).forEach((r=>{hs(t[r])&&hs(e[r])?n[r]=us(e[r],t[r]):n[r]=t[r]})),n}class ps{constructor(e={}){this.type="mark",this.name="mark",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Xi(Ki(this,"addOptions",{name:this.name}))),this.storage=Xi(Ki(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new ps(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>us(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new ps(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=Xi(Ki(t,"addOptions",{name:t.name})),t.storage=Xi(Ki(t,"addStorage",{name:t.name,options:t.options})),t}static handleExit({editor:e,mark:t}){const{tr:n}=e.state,r=e.state.selection.$from;if(r.pos===r.end()){const o=r.marks();if(!o.find((e=>(null==e?void 0:e.type.name)===t.name)))return!1;const i=o.find((e=>(null==e?void 0:e.type.name)===t.name));return i&&n.removeStoredMark(i),n.insertText(" ",r.pos),e.view.dispatch(n),!0}return!1}}class fs{constructor(e){this.find=e.find,this.handler=e.handler}}const ms=(e,t,n)=>{if(ss(t))return[...e.matchAll(t)];const r=t(e,n);return r?r.map((t=>{const n=[t.text];return n.index=t.index,n.input=e,n.data=t.data,t.replaceWith&&(t.text.includes(t.replaceWith)||console.warn('[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".'),n.push(t.replaceWith)),n})):[]};let gs=null;function ys(e){const{editor:t,rules:n}=e;let r,o=null,i=!1,s=!1,a=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null;try{r=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{r=null}const l=({state:e,from:n,to:o,rule:i,pasteEvt:s})=>{const l=e.tr,c=Vi({state:e,transaction:l});if(function(e){const{editor:t,state:n,from:r,to:o,rule:i,pasteEvent:s,dropEvent:a}=e,{commands:l,chain:c,can:d}=new Hi({editor:t,state:n}),h=[];return n.doc.nodesBetween(r,o,((e,t)=>{if(!e.isTextblock||e.type.spec.code)return;const u=Math.max(r,t),p=Math.min(o,t+e.content.size),f=e.textBetween(u-t,p-t,void 0,"");ms(f,i.find,s).forEach((e=>{if(void 0===e.index)return;const t=u+e.index+1,r=t+e[0].length,o={from:n.tr.mapping.map(t),to:n.tr.mapping.map(r)},p=i.handler({state:n,range:o,match:e,commands:l,chain:c,can:d,pasteEvent:s,dropEvent:a});h.push(p)}))})),h.every((e=>null!==e))}({editor:t,state:c,from:Math.max(n-1,0),to:o.b-1,rule:i,pasteEvent:s,dropEvent:r})&&l.steps.length){try{r=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{r=null}return a=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,l}};return n.map((e=>new Yt({view(e){const n=n=>{var r;o=null!==(r=e.dom.parentElement)&&void 0!==r&&r.contains(n.target)?e.dom.parentElement:null,o&&(gs=t)},r=()=>{gs&&(gs=null)};return window.addEventListener("dragstart",n),window.addEventListener("dragend",r),{destroy(){window.removeEventListener("dragstart",n),window.removeEventListener("dragend",r)}}},props:{handleDOMEvents:{drop:(e,t)=>{if(s=o===e.dom.parentElement,r=t,!s){const e=gs;e&&setTimeout((()=>{const t=e.state.selection;t&&e.commands.deleteRange({from:t.from,to:t.to})}),10)}return!1},paste:(e,t)=>{var n;const r=null===(n=t.clipboardData)||void 0===n?void 0:n.getData("text/html");return a=t,i=!(null==r||!r.includes("data-pm-slice")),!1}}},appendTransaction:(t,n,r)=>{const o=t[0],c="paste"===o.getMeta("uiEvent")&&!i,d="drop"===o.getMeta("uiEvent")&&!s,h=o.getMeta("applyPasteRules"),u=!!h;if(!c&&!d&&!u)return;if(u){let{text:t}=h;"string"==typeof t||(t=rs(P.from(t),r.schema));const{from:n}=h,o=n+t.length,i=(e=>{var t;const n=new ClipboardEvent("paste",{clipboardData:new DataTransfer});return null===(t=n.clipboardData)||void 0===t||t.setData("text/html",e),n})(t);return l({rule:e,state:r,from:n,to:{b:o},pasteEvt:i})}const p=n.doc.content.findDiffStart(r.doc.content),f=n.doc.content.findDiffEnd(r.doc.content);return function(e){return"number"==typeof e}(p)&&f&&p!==f.b?l({rule:e,state:r,from:p,to:f,pasteEvt:a}):void 0}})))}class bs{constructor(e,t){this.splittableMarks=[],this.editor=t,this.extensions=bs.resolve(e),this.schema=function(e,t){var n;const r=Ji(e),{nodeExtensions:o,markExtensions:i}=qi(e),s=null===(n=o.find((e=>Ki(e,"topNode"))))||void 0===n?void 0:n.name,a=Object.fromEntries(o.map((n=>{const o=r.filter((e=>e.type===n.name)),i={name:n.name,options:n.options,storage:n.storage,editor:t},s=es({...e.reduce(((e,t)=>{const r=Ki(t,"extendNodeSchema",i);return{...e,...r?r(n):{}}}),{}),content:Xi(Ki(n,"content",i)),marks:Xi(Ki(n,"marks",i)),group:Xi(Ki(n,"group",i)),inline:Xi(Ki(n,"inline",i)),atom:Xi(Ki(n,"atom",i)),selectable:Xi(Ki(n,"selectable",i)),draggable:Xi(Ki(n,"draggable",i)),code:Xi(Ki(n,"code",i)),whitespace:Xi(Ki(n,"whitespace",i)),linebreakReplacement:Xi(Ki(n,"linebreakReplacement",i)),defining:Xi(Ki(n,"defining",i)),isolating:Xi(Ki(n,"isolating",i)),attrs:Object.fromEntries(o.map((e=>{var t;return[e.name,{default:null===(t=null==e?void 0:e.attribute)||void 0===t?void 0:t.default}]})))}),a=Xi(Ki(n,"parseHTML",i));a&&(s.parseDOM=a.map((e=>Zi(e,o))));const l=Ki(n,"renderHTML",i);l&&(s.toDOM=e=>l({node:e,HTMLAttributes:Yi(e,o)}));const c=Ki(n,"renderText",i);return c&&(s.toText=c),[n.name,s]}))),l=Object.fromEntries(i.map((n=>{const o=r.filter((e=>e.type===n.name)),i={name:n.name,options:n.options,storage:n.storage,editor:t},s=es({...e.reduce(((e,t)=>{const r=Ki(t,"extendMarkSchema",i);return{...e,...r?r(n):{}}}),{}),inclusive:Xi(Ki(n,"inclusive",i)),excludes:Xi(Ki(n,"excludes",i)),group:Xi(Ki(n,"group",i)),spanning:Xi(Ki(n,"spanning",i)),code:Xi(Ki(n,"code",i)),attrs:Object.fromEntries(o.map((e=>{var t;return[e.name,{default:null===(t=null==e?void 0:e.attribute)||void 0===t?void 0:t.default}]})))}),a=Xi(Ki(n,"parseHTML",i));a&&(s.parseDOM=a.map((e=>Zi(e,o))));const l=Ki(n,"renderHTML",i);return l&&(s.toDOM=e=>l({mark:e,HTMLAttributes:Yi(e,o)})),[n.name,s]})));return new Se({topNode:s,nodes:a,marks:l})}(this.extensions,t),this.setupExtensions()}static resolve(e){const t=bs.sort(bs.flatten(e)),n=function(e){const t=e.filter(((t,n)=>e.indexOf(t)!==n));return Array.from(new Set(t))}(t.map((e=>e.name)));return n.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${n.map((e=>`'${e}'`)).join(", ")}]. This can lead to issues.`),t}static flatten(e){return e.map((e=>{const t=Ki(e,"addExtensions",{name:e.name,options:e.options,storage:e.storage});return t?[e,...this.flatten(t())]:e})).flat(10)}static sort(e){return e.sort(((e,t)=>{const n=Ki(e,"priority")||100,r=Ki(t,"priority")||100;return n>r?-1:n<r?1:0}))}get commands(){return this.extensions.reduce(((e,t)=>{const n=Ki(t,"addCommands",{name:t.name,options:t.options,storage:t.storage,editor:this.editor,type:ts(t.name,this.schema)});return n?{...e,...n()}:e}),{})}get plugins(){const{editor:e}=this,t=bs.sort([...this.extensions].reverse()),n=[],r=[],o=t.map((t=>{const o={name:t.name,options:t.options,storage:t.storage,editor:e,type:ts(t.name,this.schema)},i=[],s=Ki(t,"addKeyboardShortcuts",o);let a={};if("mark"===t.type&&Ki(t,"exitable",o)&&(a.ArrowRight=()=>ps.handleExit({editor:e,mark:t})),s){const t=Object.fromEntries(Object.entries(s()).map((([t,n])=>[t,()=>n({editor:e})])));a={...a,...t}}const l=new Yt({props:{handleKeyDown:Ei(a)}});i.push(l);const c=Ki(t,"addInputRules",o);ns(t,e.options.enableInputRules)&&c&&n.push(...c());const d=Ki(t,"addPasteRules",o);ns(t,e.options.enablePasteRules)&&d&&r.push(...d());const h=Ki(t,"addProseMirrorPlugins",o);if(h){const e=h();i.push(...e)}return i})).flat();return[ds({editor:e,rules:n}),...ys({editor:e,rules:r}),...o]}get attributes(){return Ji(this.extensions)}get nodeViews(){const{editor:e}=this,{nodeExtensions:t}=qi(this.extensions);return Object.fromEntries(t.filter((e=>!!Ki(e,"addNodeView"))).map((t=>{const n=this.attributes.filter((e=>e.type===t.name)),r={name:t.name,options:t.options,storage:t.storage,editor:e,type:Ui(t.name,this.schema)},o=Ki(t,"addNodeView",r);if(!o)return[];return[t.name,(r,i,s,a,l)=>{const c=Yi(r,n);return o()({node:r,view:i,getPos:s,decorations:a,innerDecorations:l,editor:e,extension:t,HTMLAttributes:c})}]})))}setupExtensions(){this.extensions.forEach((e=>{var t;this.editor.extensionStorage[e.name]=e.storage;const n={name:e.name,options:e.options,storage:e.storage,editor:this.editor,type:ts(e.name,this.schema)};"mark"===e.type&&(null===(t=Xi(Ki(e,"keepOnSplit",n)))||void 0===t||t)&&this.splittableMarks.push(e.name);const r=Ki(e,"onBeforeCreate",n),o=Ki(e,"onCreate",n),i=Ki(e,"onUpdate",n),s=Ki(e,"onSelectionUpdate",n),a=Ki(e,"onTransaction",n),l=Ki(e,"onFocus",n),c=Ki(e,"onBlur",n),d=Ki(e,"onDestroy",n);r&&this.editor.on("beforeCreate",r),o&&this.editor.on("create",o),i&&this.editor.on("update",i),s&&this.editor.on("selectionUpdate",s),a&&this.editor.on("transaction",a),l&&this.editor.on("focus",l),c&&this.editor.on("blur",c),d&&this.editor.on("destroy",d)}))}}class vs{constructor(e={}){this.type="extension",this.name="extension",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Xi(Ki(this,"addOptions",{name:this.name}))),this.storage=Xi(Ki(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new vs(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>us(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new vs({...this.config,...e});return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=Xi(Ki(t,"addOptions",{name:t.name})),t.storage=Xi(Ki(t,"addStorage",{name:t.name,options:t.options})),t}}function ws(e,t,n){const{from:r,to:o}=t,{blockSeparator:i="\n\n",textSerializers:s={}}=n||{};let a="";return e.nodesBetween(r,o,((e,n,l,c)=>{var d;e.isBlock&&n>r&&(a+=i);const h=null==s?void 0:s[e.type.name];if(h)return l&&(a+=h({node:e,pos:n,parent:l,index:c,range:t})),!1;e.isText&&(a+=null===(d=null==e?void 0:e.text)||void 0===d?void 0:d.slice(Math.max(r,n)-n,o-n))})),a}function ks(e){return Object.fromEntries(Object.entries(e.nodes).filter((([,e])=>e.spec.toText)).map((([e,t])=>[e,t.spec.toText])))}const xs=vs.create({name:"clipboardTextSerializer",addOptions:()=>({blockSeparator:void 0}),addProseMirrorPlugins(){return[new Yt({key:new Zt("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{const{editor:e}=this,{state:t,schema:n}=e,{doc:r,selection:o}=t,{ranges:i}=o,s=Math.min(...i.map((e=>e.$from.pos))),a=Math.max(...i.map((e=>e.$to.pos))),l=ks(n);return ws(r,{from:s,to:a},{...void 0!==this.options.blockSeparator?{blockSeparator:this.options.blockSeparator}:{},textSerializers:l})}}})]}});function Ss(e,t,n={strict:!0}){const r=Object.keys(t);return!r.length||r.every((r=>n.strict?t[r]===e[r]:ss(t[r])?t[r].test(e[r]):t[r]===e[r]))}function Os(e,t,n={}){return e.find((e=>e.type===t&&Ss(Object.fromEntries(Object.keys(n).map((t=>[t,e.attrs[t]]))),n)))}function Cs(e,t,n={}){return!!Os(e,t,n)}function Ms(e,t,n){var r;if(!e||!t)return;let o=e.parent.childAfter(e.parentOffset);if((!o.node||!o.node.marks.some((e=>e.type===t)))&&(o=e.parent.childBefore(e.parentOffset)),!o.node||!o.node.marks.some((e=>e.type===t))||(n=n||(null===(r=o.node.marks[0])||void 0===r?void 0:r.attrs),!Os([...o.node.marks],t,n)))return;let i=o.index,s=e.start()+o.offset,a=i+1,l=s+o.node.nodeSize;for(;i>0&&Cs([...e.parent.child(i-1).marks],t,n);)i-=1,s-=e.parent.child(i).nodeSize;for(;a<e.parent.childCount&&Cs([...e.parent.child(a).marks],t,n);)l+=e.parent.child(a).nodeSize,a+=1;return{from:s,to:l}}function Es(e,t){if("string"==typeof e){if(!t.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return t.marks[e]}return e}function Ts(e){return e instanceof Lt}function Ns(e=0,t=0,n=0){return Math.min(Math.max(e,t),n)}function As(e,t=null){if(!t)return null;const n=Dt.atStart(e),r=Dt.atEnd(e);if("start"===t||!0===t)return n;if("end"===t)return r;const o=n.from,i=r.to;return"all"===t?Lt.create(e,Ns(0,o,i),Ns(e.content.size,o,i)):Lt.create(e,Ns(t,o,i),Ns(t,o,i))}function Ds(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}const Rs=e=>{const t=e.childNodes;for(let n=t.length-1;n>=0;n-=1){const r=t[n];3===r.nodeType&&r.nodeValue&&/^(\n\s\s|\n)$/.test(r.nodeValue)?e.removeChild(r):1===r.nodeType&&Rs(r)}return e};function Is(e){const t=`<body>${e}</body>`,n=(new window.DOMParser).parseFromString(t,"text/html").body;return Rs(n)}function Ps(e,t,n){if(e instanceof oe||e instanceof P)return e;n={slice:!0,parseOptions:{},...n};const r="string"==typeof e;if("object"==typeof e&&null!==e)try{if(Array.isArray(e)&&e.length>0)return P.fromArray(e.map((e=>t.nodeFromJSON(e))));const r=t.nodeFromJSON(e);return n.errorOnInvalidContent&&r.check(),r}catch(r){if(n.errorOnInvalidContent)throw new Error("[tiptap error]: Invalid JSON content",{cause:r});return console.warn("[tiptap warn]: Invalid content.","Passed value:",e,"Error:",r),Ps("",t,n)}if(r){if(n.errorOnInvalidContent){let r=!1,o="";const i=new Se({topNode:t.spec.topNode,marks:t.spec.marks,nodes:t.spec.nodes.append({__tiptap__private__unknown__catch__all__node:{content:"inline*",group:"block",parseDOM:[{tag:"*",getAttrs:e=>(r=!0,o="string"==typeof e?e:e.outerHTML,null)}]}})});if(n.slice?Ce.fromSchema(i).parseSlice(Is(e),n.parseOptions):Ce.fromSchema(i).parse(Is(e),n.parseOptions),n.errorOnInvalidContent&&r)throw new Error("[tiptap error]: Invalid HTML content",{cause:new Error(`Invalid element found: ${o}`)})}const r=Ce.fromSchema(t);return n.slice?r.parseSlice(Is(e),n.parseOptions).content:r.parse(Is(e),n.parseOptions)}return Ps("",t,n)}function Ls(){return typeof navigator<"u"&&/Mac/.test(navigator.platform)}function js(e,t,n={}){const{from:r,to:o,empty:i}=e.selection,s=t?Ui(t,e.schema):null,a=[];e.doc.nodesBetween(r,o,((e,t)=>{if(e.isText)return;const n=Math.max(r,t),i=Math.min(o,t+e.nodeSize);a.push({node:e,from:n,to:i})}));const l=o-r,c=a.filter((e=>!s||s.name===e.node.type.name)).filter((e=>Ss(e.node.attrs,n,{strict:!1})));return i?!!c.length:c.reduce(((e,t)=>e+t.to-t.from),0)>=l}function zs(e,t){return t.nodes[e]?"node":t.marks[e]?"mark":null}function $s(e,t){const n="string"==typeof t?[t]:t;return Object.keys(e).reduce(((t,r)=>(n.includes(r)||(t[r]=e[r]),t)),{})}function Bs(e,t,n={},r={}){return Ps(e,t,{slice:!1,parseOptions:n,errorOnInvalidContent:r.errorOnInvalidContent})}function _s(e,t){const n=Es(t,e.schema),{from:r,to:o,empty:i}=e.selection,s=[];i?(e.storedMarks&&s.push(...e.storedMarks),s.push(...e.selection.$head.marks())):e.doc.nodesBetween(r,o,(e=>{s.push(...e.marks)}));const a=s.find((e=>e.type.name===n.name));return a?{...a.attrs}:{}}function Fs(e){return t=>function(e,t){for(let n=e.depth;n>0;n-=1){const r=e.node(n);if(t(r))return{pos:n>0?e.before(n):0,start:e.start(n),depth:n,node:r}}}(t.$from,e)}function Vs(e,t){const n=zs("string"==typeof t?t:t.name,e.schema);return"node"===n?function(e,t){const n=Ui(t,e.schema),{from:r,to:o}=e.selection,i=[];e.doc.nodesBetween(r,o,(e=>{i.push(e)}));const s=i.reverse().find((e=>e.type.name===n.name));return s?{...s.attrs}:{}}(e,t):"mark"===n?_s(e,t):{}}function Hs(e){const t=function(e,t=JSON.stringify){const n={};return e.filter((e=>{const r=t(e);return!Object.prototype.hasOwnProperty.call(n,r)&&(n[r]=!0)}))}(e);return 1===t.length?t:t.filter(((e,n)=>!t.filter(((e,t)=>t!==n)).some((t=>e.oldRange.from>=t.oldRange.from&&e.oldRange.to<=t.oldRange.to&&e.newRange.from>=t.newRange.from&&e.newRange.to<=t.newRange.to))))}function Ws(e,t,n){const r=[];return e===t?n.resolve(e).marks().forEach((t=>{const o=Ms(n.resolve(e),t.type);o&&r.push({mark:t,...o})})):n.nodesBetween(e,t,((e,t)=>{!e||void 0===(null==e?void 0:e.nodeSize)||r.push(...e.marks.map((n=>({from:t,to:t+e.nodeSize,mark:n}))))})),r}function Ks(e,t,n){return Object.fromEntries(Object.entries(n).filter((([n])=>{const r=e.find((e=>e.type===t&&e.name===n));return!!r&&r.attribute.keepOnSplit})))}function qs(e,t,n={}){const{empty:r,ranges:o}=e.selection,i=t?Es(t,e.schema):null;if(r)return!!(e.storedMarks||e.selection.$from.marks()).filter((e=>!i||i.name===e.type.name)).find((e=>Ss(e.attrs,n,{strict:!1})));let s=0;const a=[];if(o.forEach((({$from:t,$to:n})=>{const r=t.pos,o=n.pos;e.doc.nodesBetween(r,o,((e,t)=>{if(!e.isText&&!e.marks.length)return;const n=Math.max(r,t),i=Math.min(o,t+e.nodeSize);s+=i-n,a.push(...e.marks.map((e=>({mark:e,from:n,to:i}))))}))})),0===s)return!1;const l=a.filter((e=>!i||i.name===e.mark.type.name)).filter((e=>Ss(e.mark.attrs,n,{strict:!1}))).reduce(((e,t)=>e+t.to-t.from),0),c=a.filter((e=>!i||e.mark.type!==i&&e.mark.type.excludes(i))).reduce(((e,t)=>e+t.to-t.from),0);return(l>0?l+c:l)>=s}function Js(e,t){const{nodeExtensions:n}=qi(t),r=n.find((t=>t.name===e));if(!r)return!1;const o=Xi(Ki(r,"group",{name:r.name,options:r.options,storage:r.storage}));return"string"==typeof o&&o.split(" ").includes("list")}function Us(e,{checkChildren:t=!0,ignoreWhitespace:n=!1}={}){var r;if(n){if("hardBreak"===e.type.name)return!0;if(e.isText)return/^\s*$/m.test(null!==(r=e.text)&&void 0!==r?r:"")}if(e.isText)return!e.text;if(e.isAtom||e.isLeaf)return!1;if(0===e.content.childCount)return!0;if(t){let r=!0;return e.content.forEach((e=>{!1!==r&&(Us(e,{ignoreWhitespace:n,checkChildren:t})||(r=!1))})),r}return!1}function Gs(e,t){const n=e.storedMarks||e.selection.$to.parentOffset&&e.selection.$from.marks();if(n){const r=n.filter((e=>null==t?void 0:t.includes(e.type.name)));e.tr.ensureMarks(r)}}const Ys=(e,t)=>{const n=Fs((e=>e.type===t))(e.selection);if(!n)return!0;const r=e.doc.resolve(Math.max(0,n.pos-1)).before(n.depth);if(void 0===r)return!0;const o=e.doc.nodeAt(r);return n.node.type===(null==o?void 0:o.type)&&ut(e.doc,n.pos)&&e.join(n.pos),!0},Qs=(e,t)=>{const n=Fs((e=>e.type===t))(e.selection);if(!n)return!0;const r=e.doc.resolve(n.start).after(n.depth);if(void 0===r)return!0;const o=e.doc.nodeAt(r);return n.node.type===(null==o?void 0:o.type)&&ut(e.doc,r)&&e.join(r),!0};var Xs=Object.freeze({__proto__:null,blur:()=>({editor:e,view:t})=>(requestAnimationFrame((()=>{var n;e.isDestroyed||(t.dom.blur(),null===(n=null==window?void 0:window.getSelection())||void 0===n||n.removeAllRanges())})),!0),clearContent:(e=!1)=>({commands:t})=>t.setContent("",e),clearNodes:()=>({state:e,tr:t,dispatch:n})=>{const{selection:r}=t,{ranges:o}=r;return n&&o.forEach((({$from:n,$to:r})=>{e.doc.nodesBetween(n.pos,r.pos,((e,n)=>{if(e.type.isText)return;const{doc:r,mapping:o}=t,i=r.resolve(o.map(n)),s=r.resolve(o.map(n+e.nodeSize)),a=i.blockRange(s);if(!a)return;const l=st(a);if(e.type.isTextblock){const{defaultType:e}=i.parent.contentMatchAt(i.index());t.setNodeMarkup(a.start,e)}(l||0===l)&&t.lift(a,l)}))})),!0},command:e=>t=>e(t),createParagraphNear:()=>({state:e,dispatch:t})=>((e,t)=>{let n=e.selection,{$from:r,$to:o}=n;if(n instanceof Bt||r.parent.inlineContent||o.parent.inlineContent)return!1;let i=Pi(o.parent.contentMatchAt(o.indexAfter()));if(!i||!i.isTextblock)return!1;if(t){let n=(!r.parentOffset&&o.index()<o.parent.childCount?r:o).pos,s=e.tr.insert(n,i.createAndFill());s.setSelection(Lt.create(s.doc,n+1)),t(s.scrollIntoView())}return!0})(e,t),cut:(e,t)=>({editor:n,tr:r})=>{const{state:o}=n,i=o.doc.slice(e.from,e.to);r.deleteRange(e.from,e.to);const s=r.mapping.map(t);return r.insert(s,i.content),r.setSelection(new Lt(r.doc.resolve(s-1))),!0},deleteCurrentNode:()=>({tr:e,dispatch:t})=>{const{selection:n}=e,r=n.$anchor.node();if(r.content.size>0)return!1;const o=e.selection.$anchor;for(let n=o.depth;n>0;n-=1)if(o.node(n).type===r.type){if(t){const t=o.before(n),r=o.after(n);e.delete(t,r).scrollIntoView()}return!0}return!1},deleteNode:e=>({tr:t,state:n,dispatch:r})=>{const o=Ui(e,n.schema),i=t.selection.$anchor;for(let e=i.depth;e>0;e-=1)if(i.node(e).type===o){if(r){const n=i.before(e),r=i.after(e);t.delete(n,r).scrollIntoView()}return!0}return!1},deleteRange:e=>({tr:t,dispatch:n})=>{const{from:r,to:o}=e;return n&&t.delete(r,o),!0},deleteSelection:()=>({state:e,dispatch:t})=>((e,t)=>!e.selection.empty&&(t&&t(e.tr.deleteSelection().scrollIntoView()),!0))(e,t),enter:()=>({commands:e})=>e.keyboardShortcut("Enter"),exitCode:()=>({state:e,dispatch:t})=>((e,t)=>{let{$head:n,$anchor:r}=e.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let o=n.node(-1),i=n.indexAfter(-1),s=Pi(o.contentMatchAt(i));if(!s||!o.canReplaceWith(i,i,s))return!1;if(t){let r=n.after(),o=e.tr.replaceWith(r,r,s.createAndFill());o.setSelection(Dt.near(o.doc.resolve(r),1)),t(o.scrollIntoView())}return!0})(e,t),extendMarkRange:(e,t={})=>({tr:n,state:r,dispatch:o})=>{const i=Es(e,r.schema),{doc:s,selection:a}=n,{$from:l,from:c,to:d}=a;if(o){const e=Ms(l,i,t);if(e&&e.from<=c&&e.to>=d){const t=Lt.create(s,e.from,e.to);n.setSelection(t)}}return!0},first:e=>t=>{const n="function"==typeof e?e(t):e;for(let e=0;e<n.length;e+=1)if(n[e](t))return!0;return!1},focus:(e=null,t={})=>({editor:n,view:r,tr:o,dispatch:i})=>{t={scrollIntoView:!0,...t};const s=()=>{(Ds()||"Android"===navigator.platform||/android/i.test(navigator.userAgent))&&r.dom.focus(),requestAnimationFrame((()=>{n.isDestroyed||(r.focus(),null!=t&&t.scrollIntoView&&n.commands.scrollIntoView())}))};if(r.hasFocus()&&null===e||!1===e)return!0;if(i&&null===e&&!Ts(n.state.selection))return s(),!0;const a=As(o.doc,e)||n.state.selection,l=n.state.selection.eq(a);return i&&(l||o.setSelection(a),l&&o.storedMarks&&o.setStoredMarks(o.storedMarks),s()),!0},forEach:(e,t)=>n=>e.every(((e,r)=>t(e,{...n,index:r}))),insertContent:(e,t)=>({tr:n,commands:r})=>r.insertContentAt({from:n.selection.from,to:n.selection.to},e,t),insertContentAt:(e,t,n)=>({tr:r,dispatch:o,editor:i})=>{var s;if(o){let o;n={parseOptions:i.options.parseOptions,updateSelection:!0,applyInputRules:!1,applyPasteRules:!1,...n};try{o=Ps(t,i.schema,{parseOptions:{preserveWhitespace:"full",...n.parseOptions},errorOnInvalidContent:null!==(s=n.errorOnInvalidContent)&&void 0!==s?s:i.options.enableContentCheck})}catch(e){return i.emit("contentError",{editor:i,error:e,disableCollaboration:()=>{i.storage.collaboration&&(i.storage.collaboration.isDisabled=!0)}}),!1}let a,{from:l,to:c}="number"==typeof e?{from:e,to:e}:{from:e.from,to:e.to},d=!0,h=!0;if(((e=>!("type"in e))(o)?o:[o]).forEach((e=>{e.check(),d=!!d&&(e.isText&&0===e.marks.length),h=!!h&&e.isBlock})),l===c&&h){const{parent:e}=r.doc.resolve(l);e.isTextblock&&!e.type.spec.code&&!e.childCount&&(l-=1,c+=1)}if(d){if(Array.isArray(t))a=t.map((e=>e.text||"")).join("");else if(t instanceof P){let e="";t.forEach((t=>{t.text&&(e+=t.text)})),a=e}else a="object"==typeof t&&t&&t.text?t.text:t;r.insertText(a,l,c)}else a=o,r.replaceWith(l,c,a);n.updateSelection&&function(e,t,n){const r=e.steps.length-1;if(r<t)return;const o=e.steps[r];if(!(o instanceof tt||o instanceof nt))return;const i=e.mapping.maps[r];let s=0;i.forEach(((e,t,n,r)=>{0===s&&(s=r)})),e.setSelection(Dt.near(e.doc.resolve(s),n))}(r,r.steps.length-1,-1),n.applyInputRules&&r.setMeta("applyInputRules",{from:l,text:a}),n.applyPasteRules&&r.setMeta("applyPasteRules",{from:l,text:a})}return!0},joinBackward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let r=Ti(e,n);if(!r)return!1;let o=Di(r);if(!o){let n=r.blockRange(),o=n&&st(n);return null!=o&&(t&&t(e.tr.lift(n,o).scrollIntoView()),!0)}let i=o.nodeBefore;if(Li(e,o,t,-1))return!0;if(0==r.parent.content.size&&(Ai(i,"end")||zt.isSelectable(i)))for(let n=r.depth;;n--){let s=mt(e.doc,r.before(n),r.after(n),_.empty);if(s&&s.slice.size<s.to-s.from){if(t){let n=e.tr.step(s);n.setSelection(Ai(i,"end")?Dt.findFrom(n.doc.resolve(n.mapping.map(o.pos,-1)),-1):zt.create(n.doc,o.pos-i.nodeSize)),t(n.scrollIntoView())}return!0}if(1==n||r.node(n-1).childCount>1)break}return!(!i.isAtom||o.depth!=r.depth-1||(t&&t(e.tr.delete(o.pos-i.nodeSize,o.pos).scrollIntoView()),0))})(e,t),joinDown:()=>({state:e,dispatch:t})=>((e,t)=>{let n,r=e.selection;if(r instanceof zt){if(r.node.isTextblock||!ut(e.doc,r.to))return!1;n=r.to}else if(n=ft(e.doc,r.to,1),null==n)return!1;return t&&t(e.tr.join(n).scrollIntoView()),!0})(e,t),joinForward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let r=Ri(e,n);if(!r)return!1;let o=Ii(r);if(!o)return!1;let i=o.nodeAfter;if(Li(e,o,t,1))return!0;if(0==r.parent.content.size&&(Ai(i,"start")||zt.isSelectable(i))){let n=mt(e.doc,r.before(),r.after(),_.empty);if(n&&n.slice.size<n.to-n.from){if(t){let r=e.tr.step(n);r.setSelection(Ai(i,"start")?Dt.findFrom(r.doc.resolve(r.mapping.map(o.pos)),1):zt.create(r.doc,r.mapping.map(o.pos))),t(r.scrollIntoView())}return!0}}return!(!i.isAtom||o.depth!=r.depth-1||(t&&t(e.tr.delete(o.pos,o.pos+i.nodeSize).scrollIntoView()),0))})(e,t),joinItemBackward:()=>({state:e,dispatch:t,tr:n})=>{try{const r=ft(e.doc,e.selection.$from.pos,-1);return null!=r&&(n.join(r,2),t&&t(n),!0)}catch{return!1}},joinItemForward:()=>({state:e,dispatch:t,tr:n})=>{try{const r=ft(e.doc,e.selection.$from.pos,1);return null!=r&&(n.join(r,2),t&&t(n),!0)}catch{return!1}},joinTextblockBackward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let r=Ti(e,n);if(!r)return!1;let o=Di(r);return!!o&&Ni(e,o,t)})(e,t),joinTextblockForward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let r=Ri(e,n);if(!r)return!1;let o=Ii(r);return!!o&&Ni(e,o,t)})(e,t),joinUp:()=>({state:e,dispatch:t})=>((e,t)=>{let n,r=e.selection,o=r instanceof zt;if(o){if(r.node.isTextblock||!ut(e.doc,r.from))return!1;n=r.from}else if(n=ft(e.doc,r.from,-1),null==n)return!1;if(t){let r=e.tr.join(n);o&&r.setSelection(zt.create(r.doc,n-e.doc.resolve(n).nodeBefore.nodeSize)),t(r.scrollIntoView())}return!0})(e,t),keyboardShortcut:e=>({editor:t,view:n,tr:r,dispatch:o})=>{const i=function(e){const t=e.split(/-(?!$)/);let n,r,o,i,s=t[t.length-1];"Space"===s&&(s=" ");for(let e=0;e<t.length-1;e+=1){const s=t[e];if(/^(cmd|meta|m)$/i.test(s))i=!0;else if(/^a(lt)?$/i.test(s))n=!0;else if(/^(c|ctrl|control)$/i.test(s))r=!0;else if(/^s(hift)?$/i.test(s))o=!0;else{if(!/^mod$/i.test(s))throw new Error(`Unrecognized modifier name: ${s}`);Ds()||Ls()?i=!0:r=!0}}return n&&(s=`Alt-${s}`),r&&(s=`Ctrl-${s}`),i&&(s=`Meta-${s}`),o&&(s=`Shift-${s}`),s}(e).split(/-(?!$)/),s=i.find((e=>!["Alt","Ctrl","Meta","Shift"].includes(e))),a=new KeyboardEvent("keydown",{key:"Space"===s?" ":s,altKey:i.includes("Alt"),ctrlKey:i.includes("Ctrl"),metaKey:i.includes("Meta"),shiftKey:i.includes("Shift"),bubbles:!0,cancelable:!0}),l=t.captureTransaction((()=>{n.someProp("handleKeyDown",(e=>e(n,a)))}));return null==l||l.steps.forEach((e=>{const t=e.map(r.mapping);t&&o&&r.maybeStep(t)})),!0},lift:(e,t={})=>({state:n,dispatch:r})=>!!js(n,Ui(e,n.schema),t)&&((e,t)=>{let{$from:n,$to:r}=e.selection,o=n.blockRange(r),i=o&&st(o);return null!=i&&(t&&t(e.tr.lift(o,i).scrollIntoView()),!0)})(n,r),liftEmptyBlock:()=>({state:e,dispatch:t})=>((e,t)=>{let{$cursor:n}=e.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let r=n.before();if(ht(e.doc,r))return t&&t(e.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),o=r&&st(r);return null!=o&&(t&&t(e.tr.lift(r,o).scrollIntoView()),!0)})(e,t),liftListItem:e=>({state:t,dispatch:n})=>Fi(Ui(e,t.schema))(t,n),newlineInCode:()=>({state:e,dispatch:t})=>((e,t)=>{let{$head:n,$anchor:r}=e.selection;return!(!n.parent.type.spec.code||!n.sameParent(r)||(t&&t(e.tr.insertText("\n").scrollIntoView()),0))})(e,t),resetAttributes:(e,t)=>({tr:n,state:r,dispatch:o})=>{let i=null,s=null;const a=zs("string"==typeof e?e:e.name,r.schema);return!!a&&("node"===a&&(i=Ui(e,r.schema)),"mark"===a&&(s=Es(e,r.schema)),o&&n.selection.ranges.forEach((e=>{r.doc.nodesBetween(e.$from.pos,e.$to.pos,((e,r)=>{i&&i===e.type&&n.setNodeMarkup(r,void 0,$s(e.attrs,t)),s&&e.marks.length&&e.marks.forEach((o=>{s===o.type&&n.addMark(r,r+e.nodeSize,s.create($s(o.attrs,t)))}))}))})),!0)},scrollIntoView:()=>({tr:e,dispatch:t})=>(t&&e.scrollIntoView(),!0),selectAll:()=>({tr:e,dispatch:t})=>{if(t){const t=new Bt(e.doc);e.setSelection(t)}return!0},selectNodeBackward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let{$head:r,empty:o}=e.selection,i=r;if(!o)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",e):r.parentOffset>0)return!1;i=Di(r)}let s=i&&i.nodeBefore;return!(!s||!zt.isSelectable(s)||(t&&t(e.tr.setSelection(zt.create(e.doc,i.pos-s.nodeSize)).scrollIntoView()),0))})(e,t),selectNodeForward:()=>({state:e,dispatch:t})=>((e,t,n)=>{let{$head:r,empty:o}=e.selection,i=r;if(!o)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",e):r.parentOffset<r.parent.content.size)return!1;i=Ii(r)}let s=i&&i.nodeAfter;return!(!s||!zt.isSelectable(s)||(t&&t(e.tr.setSelection(zt.create(e.doc,i.pos)).scrollIntoView()),0))})(e,t),selectParentNode:()=>({state:e,dispatch:t})=>((e,t)=>{let n,{$from:r,to:o}=e.selection,i=r.sharedDepth(o);return 0!=i&&(n=r.before(i),t&&t(e.tr.setSelection(zt.create(e.doc,n))),!0)})(e,t),selectTextblockEnd:()=>({state:e,dispatch:t})=>$i(e,t),selectTextblockStart:()=>({state:e,dispatch:t})=>zi(e,t),setContent:(e,t=!1,n={},r={})=>({editor:o,tr:i,dispatch:s,commands:a})=>{var l,c;const{doc:d}=i;if("full"!==n.preserveWhitespace){const a=Bs(e,o.schema,n,{errorOnInvalidContent:null!==(l=r.errorOnInvalidContent)&&void 0!==l?l:o.options.enableContentCheck});return s&&i.replaceWith(0,d.content.size,a).setMeta("preventUpdate",!t),!0}return s&&i.setMeta("preventUpdate",!t),a.insertContentAt({from:0,to:d.content.size},e,{parseOptions:n,errorOnInvalidContent:null!==(c=r.errorOnInvalidContent)&&void 0!==c?c:o.options.enableContentCheck})},setMark:(e,t={})=>({tr:n,state:r,dispatch:o})=>{const{selection:i}=n,{empty:s,ranges:a}=i,l=Es(e,r.schema);if(o)if(s){const e=_s(r,l);n.addStoredMark(l.create({...e,...t}))}else a.forEach((e=>{const o=e.$from.pos,i=e.$to.pos;r.doc.nodesBetween(o,i,((e,r)=>{const s=Math.max(r,o),a=Math.min(r+e.nodeSize,i);e.marks.find((e=>e.type===l))?e.marks.forEach((e=>{l===e.type&&n.addMark(s,a,l.create({...e.attrs,...t}))})):n.addMark(s,a,l.create(t))}))}));return function(e,t,n){var r;const{selection:o}=t;let i=null;if(Ts(o)&&(i=o.$cursor),i){const t=null!==(r=e.storedMarks)&&void 0!==r?r:i.marks();return!!n.isInSet(t)||!t.some((e=>e.type.excludes(n)))}const{ranges:s}=o;return s.some((({$from:t,$to:r})=>{let o=0===t.depth&&e.doc.inlineContent&&e.doc.type.allowsMarkType(n);return e.doc.nodesBetween(t.pos,r.pos,((e,t,r)=>{if(o)return!1;if(e.isInline){const t=!r||r.type.allowsMarkType(n),i=!!n.isInSet(e.marks)||!e.marks.some((e=>e.type.excludes(n)));o=t&&i}return!o})),o}))}(r,n,l)},setMeta:(e,t)=>({tr:n})=>(n.setMeta(e,t),!0),setNode:(e,t={})=>({state:n,dispatch:r,chain:o})=>{const i=Ui(e,n.schema);let s;return n.selection.$anchor.sameParent(n.selection.$head)&&(s=n.selection.$anchor.parent.attrs),i.isTextblock?o().command((({commands:e})=>!!Bi(i,{...s,...t})(n)||e.clearNodes())).command((({state:e})=>Bi(i,{...s,...t})(e,r))).run():(console.warn('[tiptap warn]: Currently "setNode()" only supports text block nodes.'),!1)},setNodeSelection:e=>({tr:t,dispatch:n})=>{if(n){const{doc:n}=t,r=Ns(e,0,n.content.size),o=zt.create(n,r);t.setSelection(o)}return!0},setTextSelection:e=>({tr:t,dispatch:n})=>{if(n){const{doc:n}=t,{from:r,to:o}="number"==typeof e?{from:e,to:e}:e,i=Lt.atStart(n).from,s=Lt.atEnd(n).to,a=Ns(r,i,s),l=Ns(o,i,s),c=Lt.create(n,a,l);t.setSelection(c)}return!0},sinkListItem:e=>({state:t,dispatch:n})=>function(e){return function(t,n){let{$from:r,$to:o}=t.selection,i=r.blockRange(o,(t=>t.childCount>0&&t.firstChild.type==e));if(!i)return!1;let s=i.startIndex;if(0==s)return!1;let a=i.parent,l=a.child(s-1);if(l.type!=e)return!1;if(n){let r=l.lastChild&&l.lastChild.type==a.type,o=P.from(r?e.create():null),s=new _(P.from(e.create(null,P.from(a.type.create(null,o)))),r?3:1,0),c=i.start,d=i.end;n(t.tr.step(new nt(c-(r?3:1),d,c,d,s,1,!0)).scrollIntoView())}return!0}}(Ui(e,t.schema))(t,n),splitBlock:({keepMarks:e=!0}={})=>({tr:t,state:n,dispatch:r,editor:o})=>{const{selection:i,doc:s}=t,{$from:a,$to:l}=i,c=Ks(o.extensionManager.attributes,a.node().type.name,a.node().attrs);if(i instanceof zt&&i.node.isBlock)return!(!a.parentOffset||!ht(s,a.pos))&&(r&&(e&&Gs(n,o.extensionManager.splittableMarks),t.split(a.pos).scrollIntoView()),!0);if(!a.parent.isBlock)return!1;const d=l.parentOffset===l.parent.content.size,h=0===a.depth?void 0:function(e){for(let t=0;t<e.edgeCount;t+=1){const{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}(a.node(-1).contentMatchAt(a.indexAfter(-1)));let u=d&&h?[{type:h,attrs:c}]:void 0,p=ht(t.doc,t.mapping.map(a.pos),1,u);if(!u&&!p&&ht(t.doc,t.mapping.map(a.pos),1,h?[{type:h}]:void 0)&&(p=!0,u=h?[{type:h,attrs:c}]:void 0),r){if(p&&(i instanceof Lt&&t.deleteSelection(),t.split(t.mapping.map(a.pos),1,u),h&&!d&&!a.parentOffset&&a.parent.type!==h)){const e=t.mapping.map(a.before()),n=t.doc.resolve(e);a.node(-1).canReplaceWith(n.index(),n.index()+1,h)&&t.setNodeMarkup(t.mapping.map(a.before()),h)}e&&Gs(n,o.extensionManager.splittableMarks),t.scrollIntoView()}return p},splitListItem:(e,t={})=>({tr:n,state:r,dispatch:o,editor:i})=>{var s;const a=Ui(e,r.schema),{$from:l,$to:c}=r.selection,d=r.selection.node;if(d&&d.isBlock||l.depth<2||!l.sameParent(c))return!1;const h=l.node(-1);if(h.type!==a)return!1;const u=i.extensionManager.attributes;if(0===l.parent.content.size&&l.node(-1).childCount===l.indexAfter(-1)){if(2===l.depth||l.node(-3).type!==a||l.index(-2)!==l.node(-2).childCount-1)return!1;if(o){let e=P.empty;const r=l.index(-1)?1:l.index(-2)?2:3;for(let t=l.depth-r;t>=l.depth-3;t-=1)e=P.from(l.node(t).copy(e));const o=l.indexAfter(-1)<l.node(-2).childCount?1:l.indexAfter(-2)<l.node(-3).childCount?2:3,i={...Ks(u,l.node().type.name,l.node().attrs),...t},c=(null===(s=a.contentMatch.defaultType)||void 0===s?void 0:s.createAndFill(i))||void 0;e=e.append(P.from(a.createAndFill(null,c)||void 0));const d=l.before(l.depth-(r-1));n.replace(d,l.after(-o),new _(e,4-r,0));let h=-1;n.doc.nodesBetween(d,n.doc.content.size,((e,t)=>{if(h>-1)return!1;e.isTextblock&&0===e.content.size&&(h=t+1)})),h>-1&&n.setSelection(Lt.near(n.doc.resolve(h))),n.scrollIntoView()}return!0}const p=c.pos===l.end()?h.contentMatchAt(0).defaultType:null,f={...Ks(u,h.type.name,h.attrs),...t},m={...Ks(u,l.node().type.name,l.node().attrs),...t};n.delete(l.pos,c.pos);const g=p?[{type:a,attrs:f},{type:p,attrs:m}]:[{type:a,attrs:f}];if(!ht(n.doc,l.pos,2))return!1;if(o){const{selection:e,storedMarks:t}=r,{splittableMarks:s}=i.extensionManager,a=t||e.$to.parentOffset&&e.$from.marks();if(n.split(l.pos,2,g).scrollIntoView(),!a||!o)return!0;const c=a.filter((e=>s.includes(e.type.name)));n.ensureMarks(c)}return!0},toggleList:(e,t,n,r={})=>({editor:o,tr:i,state:s,dispatch:a,chain:l,commands:c,can:d})=>{const{extensions:h,splittableMarks:u}=o.extensionManager,p=Ui(e,s.schema),f=Ui(t,s.schema),{selection:m,storedMarks:g}=s,{$from:y,$to:b}=m,v=y.blockRange(b),w=g||m.$to.parentOffset&&m.$from.marks();if(!v)return!1;const k=Fs((e=>Js(e.type.name,h)))(m);if(v.depth>=1&&k&&v.depth-k.depth<=1){if(k.node.type===p)return c.liftListItem(f);if(Js(k.node.type.name,h)&&p.validContent(k.node.content)&&a)return l().command((()=>(i.setNodeMarkup(k.pos,p),!0))).command((()=>Ys(i,p))).command((()=>Qs(i,p))).run()}return n&&w&&a?l().command((()=>{const e=d().wrapInList(p,r),t=w.filter((e=>u.includes(e.type.name)));return i.ensureMarks(t),!!e||c.clearNodes()})).wrapInList(p,r).command((()=>Ys(i,p))).command((()=>Qs(i,p))).run():l().command((()=>!!d().wrapInList(p,r)||c.clearNodes())).wrapInList(p,r).command((()=>Ys(i,p))).command((()=>Qs(i,p))).run()},toggleMark:(e,t={},n={})=>({state:r,commands:o})=>{const{extendEmptyMarkRange:i=!1}=n,s=Es(e,r.schema);return qs(r,s,t)?o.unsetMark(s,{extendEmptyMarkRange:i}):o.setMark(s,t)},toggleNode:(e,t,n={})=>({state:r,commands:o})=>{const i=Ui(e,r.schema),s=Ui(t,r.schema),a=js(r,i,n);let l;return r.selection.$anchor.sameParent(r.selection.$head)&&(l=r.selection.$anchor.parent.attrs),a?o.setNode(s,l):o.setNode(i,{...l,...n})},toggleWrap:(e,t={})=>({state:n,commands:r})=>{const o=Ui(e,n.schema);return js(n,o,t)?r.lift(o):r.wrapIn(o,t)},undoInputRule:()=>({state:e,dispatch:t})=>{const n=e.plugins;for(let r=0;r<n.length;r+=1){const o=n[r];let i;if(o.spec.isInputRules&&(i=o.getState(e))){if(t){const t=e.tr,n=i.transform;for(let e=n.steps.length-1;e>=0;e-=1)t.step(n.steps[e].invert(n.docs[e]));if(i.text){const n=t.doc.resolve(i.from).marks();t.replaceWith(i.from,i.to,e.schema.text(i.text,n))}else t.delete(i.from,i.to)}return!0}}return!1},unsetAllMarks:()=>({tr:e,dispatch:t})=>{const{selection:n}=e,{empty:r,ranges:o}=n;return r||t&&o.forEach((t=>{e.removeMark(t.$from.pos,t.$to.pos)})),!0},unsetMark:(e,t={})=>({tr:n,state:r,dispatch:o})=>{var i;const{extendEmptyMarkRange:s=!1}=t,{selection:a}=n,l=Es(e,r.schema),{$from:c,empty:d,ranges:h}=a;if(!o)return!0;if(d&&s){let{from:e,to:t}=a;const r=null===(i=c.marks().find((e=>e.type===l)))||void 0===i?void 0:i.attrs,o=Ms(c,l,r);o&&(e=o.from,t=o.to),n.removeMark(e,t,l)}else h.forEach((e=>{n.removeMark(e.$from.pos,e.$to.pos,l)}));return n.removeStoredMark(l),!0},updateAttributes:(e,t={})=>({tr:n,state:r,dispatch:o})=>{let i=null,s=null;const a=zs("string"==typeof e?e:e.name,r.schema);return!!a&&("node"===a&&(i=Ui(e,r.schema)),"mark"===a&&(s=Es(e,r.schema)),o&&n.selection.ranges.forEach((e=>{const o=e.$from.pos,a=e.$to.pos;let l,c,d,h;n.selection.empty?r.doc.nodesBetween(o,a,((e,t)=>{i&&i===e.type&&(d=Math.max(t,o),h=Math.min(t+e.nodeSize,a),l=t,c=e)})):r.doc.nodesBetween(o,a,((e,r)=>{r<o&&i&&i===e.type&&(d=Math.max(r,o),h=Math.min(r+e.nodeSize,a),l=r,c=e),r>=o&&r<=a&&(i&&i===e.type&&n.setNodeMarkup(r,void 0,{...e.attrs,...t}),s&&e.marks.length&&e.marks.forEach((i=>{if(s===i.type){const l=Math.max(r,o),c=Math.min(r+e.nodeSize,a);n.addMark(l,c,s.create({...i.attrs,...t}))}})))})),c&&(void 0!==l&&n.setNodeMarkup(l,void 0,{...c.attrs,...t}),s&&c.marks.length&&c.marks.forEach((e=>{s===e.type&&n.addMark(d,h,s.create({...e.attrs,...t}))})))})),!0)},wrapIn:(e,t={})=>({state:n,dispatch:r})=>function(e,t=null){return function(n,r){let{$from:o,$to:i}=n.selection,s=o.blockRange(i),a=s&&at(s,e,t);return!!a&&(r&&r(n.tr.wrap(s,a).scrollIntoView()),!0)}}(Ui(e,n.schema),t)(n,r),wrapInList:(e,t={})=>({state:n,dispatch:r})=>_i(Ui(e,n.schema),t)(n,r)});const Zs=vs.create({name:"commands",addCommands:()=>({...Xs})}),ea=vs.create({name:"drop",addProseMirrorPlugins(){return[new Yt({key:new Zt("tiptapDrop"),props:{handleDrop:(e,t,n,r)=>{this.editor.emit("drop",{editor:this.editor,event:t,slice:n,moved:r})}}})]}}),ta=vs.create({name:"editable",addProseMirrorPlugins(){return[new Yt({key:new Zt("editable"),props:{editable:()=>this.editor.options.editable}})]}}),na=new Zt("focusEvents"),ra=vs.create({name:"focusEvents",addProseMirrorPlugins(){const{editor:e}=this;return[new Yt({key:na,props:{handleDOMEvents:{focus:(t,n)=>{e.isFocused=!0;const r=e.state.tr.setMeta("focus",{event:n}).setMeta("addToHistory",!1);return t.dispatch(r),!1},blur:(t,n)=>{e.isFocused=!1;const r=e.state.tr.setMeta("blur",{event:n}).setMeta("addToHistory",!1);return t.dispatch(r),!1}}}})]}}),oa=vs.create({name:"keymap",addKeyboardShortcuts(){const e=()=>this.editor.commands.first((({commands:e})=>[()=>e.undoInputRule(),()=>e.command((({tr:t})=>{const{selection:n,doc:r}=t,{empty:o,$anchor:i}=n,{pos:s,parent:a}=i,l=i.parent.isTextblock&&s>0?t.doc.resolve(s-1):i,c=l.parent.type.spec.isolating,d=i.pos-i.parentOffset,h=c&&1===l.parent.childCount?d===i.pos:Dt.atStart(r).from===s;return!(!o||!a.type.isTextblock||a.textContent.length||!h||h&&"paragraph"===i.parent.type.name)&&e.clearNodes()})),()=>e.deleteSelection(),()=>e.joinBackward(),()=>e.selectNodeBackward()])),t=()=>this.editor.commands.first((({commands:e})=>[()=>e.deleteSelection(),()=>e.deleteCurrentNode(),()=>e.joinForward(),()=>e.selectNodeForward()])),n={Enter:()=>this.editor.commands.first((({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()])),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:e,"Mod-Backspace":e,"Shift-Backspace":e,Delete:t,"Mod-Delete":t,"Mod-a":()=>this.editor.commands.selectAll()},r={...n},o={...n,"Ctrl-h":e,"Alt-Backspace":e,"Ctrl-d":t,"Ctrl-Alt-Backspace":t,"Alt-Delete":t,"Alt-d":t,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return Ds()||Ls()?o:r},addProseMirrorPlugins(){return[new Yt({key:new Zt("clearDocument"),appendTransaction:(e,t,n)=>{if(e.some((e=>e.getMeta("composition"))))return;const r=e.some((e=>e.docChanged))&&!t.doc.eq(n.doc),o=e.some((e=>e.getMeta("preventClearDocument")));if(!r||o)return;const{empty:i,from:s,to:a}=t.selection,l=Dt.atStart(t.doc).from,c=Dt.atEnd(t.doc).to;if(i||s!==l||a!==c||!Us(n.doc))return;const d=n.tr,h=Vi({state:n,transaction:d}),{commands:u}=new Hi({editor:this.editor,state:h});return u.clearNodes(),d.steps.length?d:void 0}})]}}),ia=vs.create({name:"paste",addProseMirrorPlugins(){return[new Yt({key:new Zt("tiptapPaste"),props:{handlePaste:(e,t,n)=>{this.editor.emit("paste",{editor:this.editor,event:t,slice:n})}}})]}}),sa=vs.create({name:"tabindex",addProseMirrorPlugins(){return[new Yt({key:new Zt("tabindex"),props:{attributes:()=>this.editor.isEditable?{tabindex:"0"}:{}}})]}});class aa{get name(){return this.node.type.name}constructor(e,t,n=!1,r=null){this.currentNode=null,this.actualDepth=null,this.isBlock=n,this.resolvedPos=e,this.editor=t,this.currentNode=r}get node(){return this.currentNode||this.resolvedPos.node()}get element(){return this.editor.view.domAtPos(this.pos).node}get depth(){var e;return null!==(e=this.actualDepth)&&void 0!==e?e:this.resolvedPos.depth}get pos(){return this.resolvedPos.pos}get content(){return this.node.content}set content(e){let t=this.from,n=this.to;if(this.isBlock){if(0===this.content.size)return void console.error(`You can’t set content on a block node. Tried to set content on ${this.name} at ${this.pos}`);t=this.from+1,n=this.to-1}this.editor.commands.insertContentAt({from:t,to:n},e)}get attributes(){return this.node.attrs}get textContent(){return this.node.textContent}get size(){return this.node.nodeSize}get from(){return this.isBlock?this.pos:this.resolvedPos.start(this.resolvedPos.depth)}get range(){return{from:this.from,to:this.to}}get to(){return this.isBlock?this.pos+this.size:this.resolvedPos.end(this.resolvedPos.depth)+(this.node.isText?0:1)}get parent(){if(0===this.depth)return null;const e=this.resolvedPos.start(this.resolvedPos.depth-1),t=this.resolvedPos.doc.resolve(e);return new aa(t,this.editor)}get before(){let e=this.resolvedPos.doc.resolve(this.from-(this.isBlock?1:2));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.from-3)),new aa(e,this.editor)}get after(){let e=this.resolvedPos.doc.resolve(this.to+(this.isBlock?2:1));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.to+3)),new aa(e,this.editor)}get children(){const e=[];return this.node.content.forEach(((t,n)=>{const r=t.isBlock&&!t.isTextblock,o=t.isAtom&&!t.isText,i=this.pos+n+(o?0:1),s=this.resolvedPos.doc.resolve(i);if(!r&&s.depth<=this.depth)return;const a=new aa(s,this.editor,r,r?t:null);r&&(a.actualDepth=this.depth+1),e.push(new aa(s,this.editor,r,r?t:null))})),e}get firstChild(){return this.children[0]||null}get lastChild(){const e=this.children;return e[e.length-1]||null}closest(e,t={}){let n=null,r=this.parent;for(;r&&!n;){if(r.node.type.name===e)if(Object.keys(t).length>0){const e=r.node.attrs,n=Object.keys(t);for(let r=0;r<n.length;r+=1){const o=n[r];if(e[o]!==t[o])break}}else n=r;r=r.parent}return n}querySelector(e,t={}){return this.querySelectorAll(e,t,!0)[0]||null}querySelectorAll(e,t={},n=!1){let r=[];if(!this.children||0===this.children.length)return r;const o=Object.keys(t);return this.children.forEach((i=>{n&&r.length>0||(i.node.type.name===e&&o.every((e=>t[e]===i.node.attrs[e]))&&r.push(i),!(n&&r.length>0)&&(r=r.concat(i.querySelectorAll(e,t,n))))})),r}setAttribute(e){const{tr:t}=this.editor.state;t.setNodeMarkup(this.from,void 0,{...this.node.attrs,...e}),this.editor.view.dispatch(t)}}class la extends Wi{constructor(e={}){super(),this.isFocused=!1,this.isInitialized=!1,this.extensionStorage={},this.options={element:document.createElement("div"),content:"",injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},coreExtensionOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,enableContentCheck:!1,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null,onContentError:({error:e})=>{throw e},onPaste:()=>null,onDrop:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(e),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on("beforeCreate",this.options.onBeforeCreate),this.emit("beforeCreate",{editor:this}),this.on("contentError",this.options.onContentError),this.createView(),this.injectCSS(),this.on("create",this.options.onCreate),this.on("update",this.options.onUpdate),this.on("selectionUpdate",this.options.onSelectionUpdate),this.on("transaction",this.options.onTransaction),this.on("focus",this.options.onFocus),this.on("blur",this.options.onBlur),this.on("destroy",this.options.onDestroy),this.on("drop",(({event:e,slice:t,moved:n})=>this.options.onDrop(e,t,n))),this.on("paste",(({event:e,slice:t})=>this.options.onPaste(e,t))),window.setTimeout((()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit("create",{editor:this}),this.isInitialized=!0)}),0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=function(e,t,n){const r=document.querySelector(`style[data-tiptap-style${n?`-${n}`:""}]`);if(null!==r)return r;const o=document.createElement("style");return t&&o.setAttribute("nonce",t),o.setAttribute("data-tiptap-style"+(n?`-${n}`:""),""),o.innerHTML=e,document.getElementsByTagName("head")[0].appendChild(o),o}('.ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: "liga" 0; /* the above doesn\'t seem to work in Edge */\n}\n\n.ProseMirror [contenteditable="false"] {\n white-space: normal;\n}\n\n.ProseMirror [contenteditable="false"] [contenteditable="true"] {\n white-space: pre-wrap;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n width: 0 !important;\n height: 0 !important;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n margin: 0;\n}\n\n.ProseMirror-gapcursor:after {\n content: "";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n\n.tippy-box[data-animation=fade][data-state=hidden] {\n opacity: 0\n}',this.options.injectNonce))}setOptions(e={}){this.options={...this.options,...e},this.view&&this.state&&!this.isDestroyed&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(e,t=!0){this.setOptions({editable:e}),t&&this.emit("update",{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(e,t){const n=Qi(t)?t(e,[...this.state.plugins]):[...this.state.plugins,e],r=this.state.reconfigure({plugins:n});return this.view.updateState(r),r}unregisterPlugin(e){if(this.isDestroyed)return;const t=this.state.plugins;let n=t;if([].concat(e).forEach((e=>{const r="string"==typeof e?`${e}$`:e.key;n=t.filter((e=>!e.key.startsWith(r)))})),t.length===n.length)return;const r=this.state.reconfigure({plugins:n});return this.view.updateState(r),r}createExtensionManager(){var e,t;const n=[...this.options.enableCoreExtensions?[ta,xs.configure({blockSeparator:null===(t=null===(e=this.options.coreExtensionOptions)||void 0===e?void 0:e.clipboardTextSerializer)||void 0===t?void 0:t.blockSeparator}),Zs,ra,oa,sa,ea,ia].filter((e=>"object"!=typeof this.options.enableCoreExtensions||!1!==this.options.enableCoreExtensions[e.name])):[],...this.options.extensions].filter((e=>["extension","node","mark"].includes(null==e?void 0:e.type)));this.extensionManager=new bs(n,this)}createCommandManager(){this.commandManager=new Hi({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){var e;let t;try{t=Bs(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:this.options.enableContentCheck})}catch(e){if(!(e instanceof Error&&["[tiptap error]: Invalid JSON content","[tiptap error]: Invalid HTML content"].includes(e.message)))throw e;this.emit("contentError",{editor:this,error:e,disableCollaboration:()=>{this.storage.collaboration&&(this.storage.collaboration.isDisabled=!0),this.options.extensions=this.options.extensions.filter((e=>"collaboration"!==e.name)),this.createExtensionManager()}}),t=Bs(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}const n=As(t,this.options.autofocus);this.view=new ui(this.options.element,{...this.options.editorProps,attributes:{role:"textbox",...null===(e=this.options.editorProps)||void 0===e?void 0:e.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:Ut.create({doc:t,selection:n||void 0})});const r=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(r),this.createNodeViews(),this.prependClass();this.view.dom.editor=this}createNodeViews(){this.view.isDestroyed||this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(e){this.isCapturingTransaction=!0,e(),this.isCapturingTransaction=!1;const t=this.capturedTransaction;return this.capturedTransaction=null,t}dispatchTransaction(e){if(this.view.isDestroyed)return;if(this.isCapturingTransaction)return this.capturedTransaction?void e.steps.forEach((e=>{var t;return null===(t=this.capturedTransaction)||void 0===t?void 0:t.step(e)})):void(this.capturedTransaction=e);const t=this.state.apply(e),n=!this.state.selection.eq(t.selection);this.emit("beforeTransaction",{editor:this,transaction:e,nextState:t}),this.view.updateState(t),this.emit("transaction",{editor:this,transaction:e}),n&&this.emit("selectionUpdate",{editor:this,transaction:e});const r=e.getMeta("focus"),o=e.getMeta("blur");r&&this.emit("focus",{editor:this,event:r.event,transaction:e}),o&&this.emit("blur",{editor:this,event:o.event,transaction:e}),e.docChanged&&!e.getMeta("preventUpdate")&&this.emit("update",{editor:this,transaction:e})}getAttributes(e){return Vs(this.state,e)}isActive(e,t){const n="string"==typeof e?e:null,r="string"==typeof e?t:e;return function(e,t,n={}){if(!t)return js(e,null,n)||qs(e,null,n);const r=zs(t,e.schema);return"node"===r?js(e,t,n):"mark"===r&&qs(e,t,n)}(this.state,n,r)}getJSON(){return this.state.doc.toJSON()}getHTML(){return rs(this.state.doc.content,this.schema)}getText(e){const{blockSeparator:t="\n\n",textSerializers:n={}}=e||{};return function(e,t){return ws(e,{from:0,to:e.content.size},t)}(this.state.doc,{blockSeparator:t,textSerializers:{...ks(this.schema),...n}})}get isEmpty(){return Us(this.state.doc)}getCharacterCount(){return console.warn('[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.'),this.state.doc.content.size-2}destroy(){if(this.emit("destroy"),this.view){const e=this.view.dom;e&&e.editor&&delete e.editor,this.view.destroy()}this.removeAllListeners()}get isDestroyed(){var e;return!(null!==(e=this.view)&&void 0!==e&&e.docView)}$node(e,t){var n;return(null===(n=this.$doc)||void 0===n?void 0:n.querySelector(e,t))||null}$nodes(e,t){var n;return(null===(n=this.$doc)||void 0===n?void 0:n.querySelectorAll(e,t))||null}$pos(e){const t=this.state.doc.resolve(e);return new aa(t,this)}get $doc(){return this.$pos(0)}}function ca(e){return new as({find:e.find,handler:({state:t,range:n,match:r})=>{const o=Xi(e.getAttributes,void 0,r);if(!1===o||null===o)return null;const{tr:i}=t,s=r[r.length-1],a=r[0];if(s){const r=a.search(/\S/),l=n.from+a.indexOf(s),c=l+s.length;if(Ws(n.from,n.to,t.doc).filter((t=>t.mark.type.excluded.find((n=>n===e.type&&n!==t.mark.type)))).filter((e=>e.to>l)).length)return null;c<n.to&&i.delete(c,n.to),l>n.from&&i.delete(n.from+r,l);const d=n.from+r+s.length;i.addMark(n.from+r,d,e.type.create(o||{})),i.removeStoredMark(e.type)}}})}function da(e){return new as({find:e.find,handler:({state:t,range:n,match:r,chain:o})=>{const i=Xi(e.getAttributes,void 0,r)||{},s=t.tr.delete(n.from,n.to),a=s.doc.resolve(n.from).blockRange(),l=a&&at(a,e.type,i);if(!l)return null;if(s.wrap(a,l),e.keepMarks&&e.editor){const{selection:n,storedMarks:r}=t,{splittableMarks:o}=e.editor.extensionManager,i=r||n.$to.parentOffset&&n.$from.marks();if(i){const e=i.filter((e=>o.includes(e.type.name)));s.ensureMarks(e)}}if(e.keepAttributes){const t="bulletList"===e.type.name||"orderedList"===e.type.name?"listItem":"taskList";o().updateAttributes(t,i).run()}const c=s.doc.resolve(n.from-1).nodeBefore;c&&c.type===e.type&&ut(s.doc,n.from-1)&&(!e.joinPredicate||e.joinPredicate(r,c))&&s.join(n.from-1)}})}class ha{constructor(e={}){this.type="node",this.name="node",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Xi(Ki(this,"addOptions",{name:this.name}))),this.storage=Xi(Ki(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new ha(e)}configure(e={}){const t=this.extend({...this.config,addOptions:()=>us(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(e={}){const t=new ha(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=Xi(Ki(t,"addOptions",{name:t.name})),t.storage=Xi(Ki(t,"addStorage",{name:t.name,options:t.options})),t}}function ua(e){return new fs({find:e.find,handler:({state:t,range:n,match:r,pasteEvent:o})=>{const i=Xi(e.getAttributes,void 0,r,o);if(!1===i||null===i)return null;const{tr:s}=t,a=r[r.length-1],l=r[0];let c=n.to;if(a){const r=l.search(/\S/),o=n.from+l.indexOf(a),d=o+a.length;if(Ws(n.from,n.to,t.doc).filter((t=>t.mark.type.excluded.find((n=>n===e.type&&n!==t.mark.type)))).filter((e=>e.to>o)).length)return null;d<n.to&&s.delete(d,n.to),o>n.from&&s.delete(n.from+r,o),c=n.from+r+a.length,s.addMark(n.from+r,c,e.type.create(i||{})),s.removeStoredMark(e.type)}}})}function pa(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var fa,ma={exports:{}},ga={};
20
+ */"production"===process.env.NODE_ENV?C.exports=function(){if(S)return M;S=1;var n=e,i=Symbol.for("react.element"),t=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function r(e,n,t){var r,f={},d=null,l=null;for(r in void 0!==t&&(d=""+t),void 0!==n.key&&(d=""+n.key),void 0!==n.ref&&(l=n.ref),n)a.call(n,r)&&!o.hasOwnProperty(r)&&(f[r]=n[r]);if(e&&e.defaultProps)for(r in n=e.defaultProps)void 0===f[r]&&(f[r]=n[r]);return{$$typeof:i,type:e,key:d,ref:l,props:f,_owner:s.current}}return M.Fragment=t,M.jsx=r,M.jsxs=r,M}():C.exports=(O||(O=1,"production"!==process.env.NODE_ENV&&function(){var n=e,i=Symbol.for("react.element"),t=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),f=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),c=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),m=Symbol.for("react.offscreen"),p=Symbol.iterator,v="@@iterator",g=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function k(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),t=1;t<n;t++)i[t-1]=arguments[t];!function(e,n,i){var t=g.ReactDebugCurrentFrame,a=t.getStackAddendum();""!==a&&(n+="%s",i=i.concat([a]));var s=i.map((function(e){return String(e)}));s.unshift("Warning: "+n),Function.prototype.apply.call(console[e],console,s)}("error",e,i)}var y,w=!1,b=!1,_=!1,x=!1,S=!1;function C(e){return e.displayName||"Context"}function M(e){if(null==e)return null;if("number"==typeof e.tag&&k("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case a:return"Fragment";case t:return"Portal";case o:return"Profiler";case s:return"StrictMode";case l:return"Suspense";case c:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case f:return C(e)+".Consumer";case r:return C(e._context)+".Provider";case d:return function(e,n,i){var t=e.displayName;if(t)return t;var a=n.displayName||n.name||"";return""!==a?i+"("+a+")":i}(e,e.render,"ForwardRef");case u:var n=e.displayName||null;return null!==n?n:M(e.type)||"Memo";case h:var i=e,m=i._payload,p=i._init;try{return M(p(m))}catch{return null}}return null}y=Symbol.for("react.module.reference");var O,E,F,A,N,j,R,D=Object.assign,z=0;function P(){}P.__reactDisabledLog=!0;var B,L=g.ReactCurrentDispatcher;function I(e,n,i){if(void 0===B)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);B=t&&t[1]||""}return"\n"+B+e}var H,q=!1,W="function"==typeof WeakMap?WeakMap:Map;function $(e,n){if(!e||q)return"";var i,t=H.get(e);if(void 0!==t)return t;q=!0;var a,s=Error.prepareStackTrace;Error.prepareStackTrace=void 0,a=L.current,L.current=null,function(){if(0===z){O=console.log,E=console.info,F=console.warn,A=console.error,N=console.group,j=console.groupCollapsed,R=console.groupEnd;var e={configurable:!0,enumerable:!0,value:P,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}z++}();try{if(n){var o=function(){throw Error()};if(Object.defineProperty(o.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(o,[])}catch(e){i=e}Reflect.construct(e,[],o)}else{try{o.call()}catch(e){i=e}e.call(o.prototype)}}else{try{throw Error()}catch(e){i=e}e()}}catch(n){if(n&&i&&"string"==typeof n.stack){for(var r=n.stack.split("\n"),f=i.stack.split("\n"),d=r.length-1,l=f.length-1;d>=1&&l>=0&&r[d]!==f[l];)l--;for(;d>=1&&l>=0;d--,l--)if(r[d]!==f[l]){if(1!==d||1!==l)do{if(d--,--l<0||r[d]!==f[l]){var c="\n"+r[d].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),"function"==typeof e&&H.set(e,c),c}}while(d>=1&&l>=0);break}}}finally{q=!1,L.current=a,function(){if(0==--z){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:D({},e,{value:O}),info:D({},e,{value:E}),warn:D({},e,{value:F}),error:D({},e,{value:A}),group:D({},e,{value:N}),groupCollapsed:D({},e,{value:j}),groupEnd:D({},e,{value:R})})}z<0&&k("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=s}var u=e?e.displayName||e.name:"",h=u?I(u):"";return"function"==typeof e&&H.set(e,h),h}function V(e,n,i){if(null==e)return"";if("function"==typeof e)return $(e,function(e){var n=e.prototype;return!(!n||!n.isReactComponent)}(e));if("string"==typeof e)return I(e);switch(e){case l:return I("Suspense");case c:return I("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case d:return function(e,n,i){return $(e,!1)}(e.render);case u:return V(e.type,n,i);case h:var t=e,a=t._payload,s=t._init;try{return V(s(a),n,i)}catch{}}return""}H=new W;var U=Object.prototype.hasOwnProperty,G={},K=g.ReactDebugCurrentFrame;function J(e){if(e){var n=e._owner,i=V(e.type,e._source,n?n.type:null);K.setExtraStackFrame(i)}else K.setExtraStackFrame(null)}var Y=Array.isArray;function Q(e){return Y(e)}function X(e){return""+e}function Z(e){if(function(e){try{return X(e),!1}catch{return!0}}(e))return k("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),X(e)}var ee,ne,ie,te=g.ReactCurrentOwner,ae={key:!0,ref:!0,__self:!0,__source:!0};ie={};var se=function(e,n,t,a,s,o,r){var f={$$typeof:i,type:e,key:n,ref:t,props:r,_owner:o,_store:{}};return Object.defineProperty(f._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(f,"_self",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(f,"_source",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(f.props),Object.freeze(f)),f};function oe(e,n,i,t,a){var s,o={},r=null,f=null;for(s in void 0!==i&&(Z(i),r=""+i),function(e){if(U.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return void 0!==e.key}(n)&&(Z(n.key),r=""+n.key),function(e){if(U.call(e,"ref")){var n=Object.getOwnPropertyDescriptor(e,"ref").get;if(n&&n.isReactWarning)return!1}return void 0!==e.ref}(n)&&(f=n.ref,function(e,n){if("string"==typeof e.ref&&te.current&&n&&te.current.stateNode!==n){var i=M(te.current.type);ie[i]||(k('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',M(te.current.type),e.ref),ie[i]=!0)}}(n,a)),n)U.call(n,s)&&!ae.hasOwnProperty(s)&&(o[s]=n[s]);if(e&&e.defaultProps){var d=e.defaultProps;for(s in d)void 0===o[s]&&(o[s]=d[s])}if(r||f){var l="function"==typeof e?e.displayName||e.name||"Unknown":e;r&&function(e,n){var i=function(){ee||(ee=!0,k("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",n))};i.isReactWarning=!0,Object.defineProperty(e,"key",{get:i,configurable:!0})}(o,l),f&&function(e,n){var i=function(){ne||(ne=!0,k("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",n))};i.isReactWarning=!0,Object.defineProperty(e,"ref",{get:i,configurable:!0})}(o,l)}return se(e,r,f,a,t,te.current,o)}var re,fe=g.ReactCurrentOwner,de=g.ReactDebugCurrentFrame;function le(e){if(e){var n=e._owner,i=V(e.type,e._source,n?n.type:null);de.setExtraStackFrame(i)}else de.setExtraStackFrame(null)}function ce(e){return"object"==typeof e&&null!==e&&e.$$typeof===i}function ue(){if(fe.current){var e=M(fe.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}re=!1;var he={};function me(e,n){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var i=function(e){var n=ue();if(!n){var i="string"==typeof e?e:e.displayName||e.name;i&&(n="\n\nCheck the top-level render call using <"+i+">.")}return n}(n);if(!he[i]){he[i]=!0;var t="";e&&e._owner&&e._owner!==fe.current&&(t=" It was passed a child from "+M(e._owner.type)+"."),le(e),k('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',i,t),le(null)}}}function pe(e,n){if("object"==typeof e)if(Q(e))for(var i=0;i<e.length;i++){var t=e[i];ce(t)&&me(t,n)}else if(ce(e))e._store&&(e._store.validated=!0);else if(e){var a=function(e){if(null===e||"object"!=typeof e)return null;var n=p&&e[p]||e[v];return"function"==typeof n?n:null}(e);if("function"==typeof a&&a!==e.entries)for(var s,o=a.call(e);!(s=o.next()).done;)ce(s.value)&&me(s.value,n)}}function ve(e){var n,i=e.type;if(null!=i&&"string"!=typeof i){if("function"==typeof i)n=i.propTypes;else{if("object"!=typeof i||i.$$typeof!==d&&i.$$typeof!==u)return;n=i.propTypes}if(n){var t=M(i);!function(e,n,i,t,a){var s=Function.call.bind(U);for(var o in e)if(s(e,o)){var r=void 0;try{if("function"!=typeof e[o]){var f=Error((t||"React class")+": "+i+" type `"+o+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[o]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw f.name="Invariant Violation",f}r=e[o](n,o,t,i,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){r=e}r&&!(r instanceof Error)&&(J(a),k("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",t||"React class",i,o,typeof r),J(null)),r instanceof Error&&!(r.message in G)&&(G[r.message]=!0,J(a),k("Failed %s type: %s",i,r.message),J(null))}}(n,e.props,"prop",t,e)}else void 0===i.PropTypes||re||(re=!0,k("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",M(i)||"Unknown"));"function"==typeof i.getDefaultProps&&!i.getDefaultProps.isReactClassApproved&&k("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function ge(e,n,t,p,v,g){var C=function(e){return!!("string"==typeof e||"function"==typeof e||e===a||e===o||S||e===s||e===l||e===c||x||e===m||w||b||_||"object"==typeof e&&null!==e&&(e.$$typeof===h||e.$$typeof===u||e.$$typeof===r||e.$$typeof===f||e.$$typeof===d||e.$$typeof===y||void 0!==e.getModuleId))}(e);if(!C){var O="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(O+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var T,E=function(e){return void 0!==e?"\n\nCheck your code at "+e.fileName.replace(/^.*[\\\/]/,"")+":"+e.lineNumber+".":""}(v);O+=E||ue(),null===e?T="null":Q(e)?T="array":void 0!==e&&e.$$typeof===i?(T="<"+(M(e.type)||"Unknown")+" />",O=" Did you accidentally export a JSX literal instead of a component?"):T=typeof e,k("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",T,O)}var F=oe(e,n,t,v,g);if(null==F)return F;if(C){var A=n.children;if(void 0!==A)if(p)if(Q(A)){for(var N=0;N<A.length;N++)pe(A[N],e);Object.freeze&&Object.freeze(A)}else k("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else pe(A,e)}return e===a?function(e){for(var n=Object.keys(e.props),i=0;i<n.length;i++){var t=n[i];if("children"!==t&&"key"!==t){le(e),k("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",t),le(null);break}}null!==e.ref&&(le(e),k("Invalid attribute `ref` supplied to `React.Fragment`."),le(null))}(F):ve(F),F}var ke=function(e,n,i){return ge(e,n,i,!1)},ye=function(e,n,i){return ge(e,n,i,!0)};T.Fragment=a,T.jsx=ke,T.jsxs=ye}()),T);var E=C.exports;function F(e){var n,i,t="";if("string"==typeof e||"number"==typeof e)t+=e;else if("object"==typeof e)if(Array.isArray(e)){var a=e.length;for(n=0;n<a;n++)e[n]&&(i=F(e[n]))&&(t&&(t+=" "),t+=i)}else for(i in e)e[i]&&(t&&(t+=" "),t+=i);return t}function A(){for(var e,n,i=0,t="",a=arguments.length;i<a;i++)(e=arguments[i])&&(n=F(e))&&(t&&(t+=" "),t+=n);return t}function N(e){this.content=e}function j(e,n,i){for(let t=0;;t++){if(t==e.childCount||t==n.childCount)return e.childCount==n.childCount?null:i;let a=e.child(t),s=n.child(t);if(a!=s){if(!a.sameMarkup(s))return i;if(a.isText&&a.text!=s.text){for(let e=0;a.text[e]==s.text[e];e++)i++;return i}if(a.content.size||s.content.size){let e=j(a.content,s.content,i+1);if(null!=e)return e}i+=a.nodeSize}else i+=a.nodeSize}}function R(e,n,i,t){for(let a=e.childCount,s=n.childCount;;){if(0==a||0==s)return a==s?null:{a:i,b:t};let o=e.child(--a),r=n.child(--s),f=o.nodeSize;if(o!=r){if(!o.sameMarkup(r))return{a:i,b:t};if(o.isText&&o.text!=r.text){let e=0,n=Math.min(o.text.length,r.text.length);for(;e<n&&o.text[o.text.length-e-1]==r.text[r.text.length-e-1];)e++,i--,t--;return{a:i,b:t}}if(o.content.size||r.content.size){let e=R(o.content,r.content,i-1,t-1);if(e)return e}i-=f,t-=f}else i-=f,t-=f}}N.prototype={constructor:N,find:function(e){for(var n=0;n<this.content.length;n+=2)if(this.content[n]===e)return n;return-1},get:function(e){var n=this.find(e);return-1==n?void 0:this.content[n+1]},update:function(e,n,i){var t=i&&i!=e?this.remove(i):this,a=t.find(e),s=t.content.slice();return-1==a?s.push(i||e,n):(s[a+1]=n,i&&(s[a]=i)),new N(s)},remove:function(e){var n=this.find(e);if(-1==n)return this;var i=this.content.slice();return i.splice(n,2),new N(i)},addToStart:function(e,n){return new N([e,n].concat(this.remove(e).content))},addToEnd:function(e,n){var i=this.remove(e).content.slice();return i.push(e,n),new N(i)},addBefore:function(e,n,i){var t=this.remove(n),a=t.content.slice(),s=t.find(e);return a.splice(-1==s?a.length:s,0,n,i),new N(a)},forEach:function(e){for(var n=0;n<this.content.length;n+=2)e(this.content[n],this.content[n+1])},prepend:function(e){return(e=N.from(e)).size?new N(e.content.concat(this.subtract(e).content)):this},append:function(e){return(e=N.from(e)).size?new N(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var n=this;e=N.from(e);for(var i=0;i<e.content.length;i+=2)n=n.remove(e.content[i]);return n},toObject:function(){var e={};return this.forEach((function(n,i){e[n]=i})),e},get size(){return this.content.length>>1}},N.from=function(e){if(e instanceof N)return e;var n=[];if(e)for(var i in e)n.push(i,e[i]);return new N(n)};class D{constructor(e,n){if(this.content=e,this.size=n||0,null==n)for(let n=0;n<e.length;n++)this.size+=e[n].nodeSize}nodesBetween(e,n,i,t=0,a){for(let s=0,o=0;o<n;s++){let r=this.content[s],f=o+r.nodeSize;if(f>e&&!1!==i(r,t+o,a||null,s)&&r.content.size){let a=o+1;r.nodesBetween(Math.max(0,e-a),Math.min(r.content.size,n-a),i,t+a)}o=f}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,n,i,t){let a="",s=!0;return this.nodesBetween(e,n,((o,r)=>{let f=o.isText?o.text.slice(Math.max(e,r)-r,n-r):o.isLeaf?t?"function"==typeof t?t(o):t:o.type.spec.leafText?o.type.spec.leafText(o):"":"";o.isBlock&&(o.isLeaf&&f||o.isTextblock)&&i&&(s?s=!1:a+=i),a+=f}),0),a}append(e){if(!e.size)return this;if(!this.size)return e;let n=this.lastChild,i=e.firstChild,t=this.content.slice(),a=0;for(n.isText&&n.sameMarkup(i)&&(t[t.length-1]=n.withText(n.text+i.text),a=1);a<e.content.length;a++)t.push(e.content[a]);return new D(t,this.size+e.size)}cut(e,n=this.size){if(0==e&&n==this.size)return this;let i=[],t=0;if(n>e)for(let a=0,s=0;s<n;a++){let o=this.content[a],r=s+o.nodeSize;r>e&&((s<e||r>n)&&(o=o.isText?o.cut(Math.max(0,e-s),Math.min(o.text.length,n-s)):o.cut(Math.max(0,e-s-1),Math.min(o.content.size,n-s-1))),i.push(o),t+=o.nodeSize),s=r}return new D(i,t)}cutByIndex(e,n){return e==n?D.empty:0==e&&n==this.content.length?this:new D(this.content.slice(e,n))}replaceChild(e,n){let i=this.content[e];if(i==n)return this;let t=this.content.slice(),a=this.size+n.nodeSize-i.nodeSize;return t[e]=n,new D(t,a)}addToStart(e){return new D([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new D(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(e.content[n]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let n=this.content[e];if(!n)throw new RangeError("Index "+e+" out of range for "+this);return n}maybeChild(e){return this.content[e]||null}forEach(e){for(let n=0,i=0;n<this.content.length;n++){let t=this.content[n];e(t,i,n),i+=t.nodeSize}}findDiffStart(e,n=0){return j(this,e,n)}findDiffEnd(e,n=this.size,i=e.size){return R(this,e,n,i)}findIndex(e,n=-1){if(0==e)return P(0,e);if(e==this.size)return P(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let i=0,t=0;;i++){let a=t+this.child(i).nodeSize;if(a>=e)return a==e||n>0?P(i+1,a):P(i,t);t=a}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((e=>e.toJSON())):null}static fromJSON(e,n){if(!n)return D.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new D(n.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return D.empty;let n,i=0;for(let t=0;t<e.length;t++){let a=e[t];i+=a.nodeSize,t&&a.isText&&e[t-1].sameMarkup(a)?(n||(n=e.slice(0,t)),n[n.length-1]=a.withText(n[n.length-1].text+a.text)):n&&n.push(a)}return new D(n||e,i)}static from(e){if(!e)return D.empty;if(e instanceof D)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new D([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}D.empty=new D([],0);const z={index:0,offset:0};function P(e,n){return z.index=e,z.offset=n,z}function B(e,n){if(e===n)return!0;if(!e||"object"!=typeof e||!n||"object"!=typeof n)return!1;let i=Array.isArray(e);if(Array.isArray(n)!=i)return!1;if(i){if(e.length!=n.length)return!1;for(let i=0;i<e.length;i++)if(!B(e[i],n[i]))return!1}else{for(let i in e)if(!(i in n)||!B(e[i],n[i]))return!1;for(let i in n)if(!(i in e))return!1}return!0}let L=class e{constructor(e,n){this.type=e,this.attrs=n}addToSet(e){let n,i=!1;for(let t=0;t<e.length;t++){let a=e[t];if(this.eq(a))return e;if(this.type.excludes(a.type))n||(n=e.slice(0,t));else{if(a.type.excludes(this.type))return e;!i&&a.type.rank>this.type.rank&&(n||(n=e.slice(0,t)),n.push(this),i=!0),n&&n.push(a)}}return n||(n=e.slice()),i||n.push(this),n}removeFromSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return e.slice(0,n).concat(e.slice(n+1));return e}isInSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return!0;return!1}eq(e){return this==e||this.type==e.type&&B(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Mark.fromJSON");let i=e.marks[n.type];if(!i)throw new RangeError(`There is no mark type ${n.type} in this schema`);let t=i.create(n.attrs);return i.checkAttrs(t.attrs),t}static sameSet(e,n){if(e==n)return!0;if(e.length!=n.length)return!1;for(let i=0;i<e.length;i++)if(!e[i].eq(n[i]))return!1;return!0}static setFrom(n){if(!n||Array.isArray(n)&&0==n.length)return e.none;if(n instanceof e)return[n];let i=n.slice();return i.sort(((e,n)=>e.type.rank-n.type.rank)),i}};L.none=[];class I extends Error{}class H{constructor(e,n,i){this.content=e,this.openStart=n,this.openEnd=i}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,n){let i=W(this.content,e+this.openStart,n);return i&&new H(i,this.openStart,this.openEnd)}removeBetween(e,n){return new H(q(this.content,e+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,n){if(!n)return H.empty;let i=n.openStart||0,t=n.openEnd||0;if("number"!=typeof i||"number"!=typeof t)throw new RangeError("Invalid input for Slice.fromJSON");return new H(D.fromJSON(e,n.content),i,t)}static maxOpen(e,n=!0){let i=0,t=0;for(let t=e.firstChild;t&&!t.isLeaf&&(n||!t.type.spec.isolating);t=t.firstChild)i++;for(let i=e.lastChild;i&&!i.isLeaf&&(n||!i.type.spec.isolating);i=i.lastChild)t++;return new H(e,i,t)}}function q(e,n,i){let{index:t,offset:a}=e.findIndex(n),s=e.maybeChild(t),{index:o,offset:r}=e.findIndex(i);if(a==n||s.isText){if(r!=i&&!e.child(o).isText)throw new RangeError("Removing non-flat range");return e.cut(0,n).append(e.cut(i))}if(t!=o)throw new RangeError("Removing non-flat range");return e.replaceChild(t,s.copy(q(s.content,n-a-1,i-a-1)))}function W(e,n,i,t){let{index:a,offset:s}=e.findIndex(n),o=e.maybeChild(a);if(s==n||o.isText)return t&&!t.canReplace(a,a,i)?null:e.cut(0,n).append(i).append(e.cut(n));let r=W(o.content,n-s-1,i);return r&&e.replaceChild(a,o.copy(r))}function $(e,n,i){if(i.openStart>e.depth)throw new I("Inserted content deeper than insertion position");if(e.depth-i.openStart!=n.depth-i.openEnd)throw new I("Inconsistent open depths");return V(e,n,i,0)}function V(e,n,i,t){let a=e.index(t),s=e.node(t);if(a==n.index(t)&&t<e.depth-i.openStart){let o=V(e,n,i,t+1);return s.copy(s.content.replaceChild(a,o))}if(i.content.size){if(i.openStart||i.openEnd||e.depth!=t||n.depth!=t){let{start:a,end:o}=function(e,n){let i=n.depth-e.openStart,t=n.node(i).copy(e.content);for(let e=i-1;e>=0;e--)t=n.node(e).copy(D.from(t));return{start:t.resolveNoCache(e.openStart+i),end:t.resolveNoCache(t.content.size-e.openEnd-i)}}(i,e);return Y(s,Q(e,a,o,n,t))}{let t=e.parent,a=t.content;return Y(t,a.cut(0,e.parentOffset).append(i.content).append(a.cut(n.parentOffset)))}}return Y(s,X(e,n,t))}function U(e,n){if(!n.type.compatibleContent(e.type))throw new I("Cannot join "+n.type.name+" onto "+e.type.name)}function G(e,n,i){let t=e.node(i);return U(t,n.node(i)),t}function K(e,n){let i=n.length-1;i>=0&&e.isText&&e.sameMarkup(n[i])?n[i]=e.withText(n[i].text+e.text):n.push(e)}function J(e,n,i,t){let a=(n||e).node(i),s=0,o=n?n.index(i):a.childCount;e&&(s=e.index(i),e.depth>i?s++:e.textOffset&&(K(e.nodeAfter,t),s++));for(let e=s;e<o;e++)K(a.child(e),t);n&&n.depth==i&&n.textOffset&&K(n.nodeBefore,t)}function Y(e,n){return e.type.checkContent(n),e.copy(n)}function Q(e,n,i,t,a){let s=e.depth>a&&G(e,n,a+1),o=t.depth>a&&G(i,t,a+1),r=[];return J(null,e,a,r),s&&o&&n.index(a)==i.index(a)?(U(s,o),K(Y(s,Q(e,n,i,t,a+1)),r)):(s&&K(Y(s,X(e,n,a+1)),r),J(n,i,a,r),o&&K(Y(o,X(i,t,a+1)),r)),J(t,null,a,r),new D(r)}function X(e,n,i){let t=[];if(J(null,e,i,t),e.depth>i){K(Y(G(e,n,i+1),X(e,n,i+1)),t)}return J(n,null,i,t),new D(t)}H.empty=new H(D.empty,0,0);class Z{constructor(e,n,i){this.pos=e,this.path=n,this.parentOffset=i,this.depth=n.length/3-1}resolveDepth(e){return null==e?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[3*this.resolveDepth(e)]}index(e){return this.path[3*this.resolveDepth(e)+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e!=this.depth||this.textOffset?1:0)}start(e){return 0==(e=this.resolveDepth(e))?0:this.path[3*e-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]}after(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]+this.path[3*e].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,n=this.index(this.depth);if(n==e.childCount)return null;let i=this.pos-this.path[this.path.length-1],t=e.child(n);return i?e.child(n).cut(i):t}get nodeBefore(){let e=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(e).cut(0,n):0==e?null:this.parent.child(e-1)}posAtIndex(e,n){n=this.resolveDepth(n);let i=this.path[3*n],t=0==n?0:this.path[3*n-1]+1;for(let n=0;n<e;n++)t+=i.child(n).nodeSize;return t}marks(){let e=this.parent,n=this.index();if(0==e.content.size)return L.none;if(this.textOffset)return e.child(n).marks;let i=e.maybeChild(n-1),t=e.maybeChild(n);if(!i){let e=i;i=t,t=e}let a=i.marks;for(var s=0;s<a.length;s++)!1===a[s].type.spec.inclusive&&(!t||!a[s].isInSet(t.marks))&&(a=a[s--].removeFromSet(a));return a}marksAcross(e){let n=this.parent.maybeChild(this.index());if(!n||!n.isInline)return null;let i=n.marks,t=e.parent.maybeChild(e.index());for(var a=0;a<i.length;a++)!1===i[a].type.spec.inclusive&&(!t||!i[a].isInSet(t.marks))&&(i=i[a--].removeFromSet(i));return i}sharedDepth(e){for(let n=this.depth;n>0;n--)if(this.start(n)<=e&&this.end(n)>=e)return n;return 0}blockRange(e=this,n){if(e.pos<this.pos)return e.blockRange(this);for(let i=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);i>=0;i--)if(e.pos<=this.end(i)&&(!n||n(this.node(i))))return new te(this,e,i);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let n=1;n<=this.depth;n++)e+=(e?"/":"")+this.node(n).type.name+"_"+this.index(n-1);return e+":"+this.parentOffset}static resolve(e,n){if(!(n>=0&&n<=e.content.size))throw new RangeError("Position "+n+" out of range");let i=[],t=0,a=n;for(let n=e;;){let{index:e,offset:s}=n.content.findIndex(a),o=a-s;if(i.push(n,e,t+s),!o||(n=n.child(e),n.isText))break;a=o-1,t+=s+1}return new Z(n,i,a)}static resolveCached(e,n){let i=ie.get(e);if(i)for(let e=0;e<i.elts.length;e++){let t=i.elts[e];if(t.pos==n)return t}else ie.set(e,i=new ee);let t=i.elts[i.i]=Z.resolve(e,n);return i.i=(i.i+1)%ne,t}}class ee{constructor(){this.elts=[],this.i=0}}const ne=12,ie=new WeakMap;class te{constructor(e,n,i){this.$from=e,this.$to=n,this.depth=i}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const ae=Object.create(null);let se=class e{constructor(e,n,i,t=L.none){this.type=e,this.attrs=n,this.marks=t,this.content=i||D.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,n,i,t=0){this.content.nodesBetween(e,n,i,t,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,n,i,t){return this.content.textBetween(e,n,i,t)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,n,i){return this.type==e&&B(this.attrs,n||e.defaultAttrs||ae)&&L.sameSet(this.marks,i||L.none)}copy(n=null){return n==this.content?this:new e(this.type,this.attrs,n,this.marks)}mark(n){return n==this.marks?this:new e(this.type,this.attrs,this.content,n)}cut(e,n=this.content.size){return 0==e&&n==this.content.size?this:this.copy(this.content.cut(e,n))}slice(e,n=this.content.size,i=!1){if(e==n)return H.empty;let t=this.resolve(e),a=this.resolve(n),s=i?0:t.sharedDepth(n),o=t.start(s),r=t.node(s).content.cut(t.pos-o,a.pos-o);return new H(r,t.depth-s,a.depth-s)}replace(e,n,i){return $(this.resolve(e),this.resolve(n),i)}nodeAt(e){for(let n=this;;){let{index:i,offset:t}=n.content.findIndex(e);if(n=n.maybeChild(i),!n)return null;if(t==e||n.isText)return n;e-=t+1}}childAfter(e){let{index:n,offset:i}=this.content.findIndex(e);return{node:this.content.maybeChild(n),index:n,offset:i}}childBefore(e){if(0==e)return{node:null,index:0,offset:0};let{index:n,offset:i}=this.content.findIndex(e);if(i<e)return{node:this.content.child(n),index:n,offset:i};let t=this.content.child(n-1);return{node:t,index:n-1,offset:i-t.nodeSize}}resolve(e){return Z.resolveCached(this,e)}resolveNoCache(e){return Z.resolve(this,e)}rangeHasMark(e,n,i){let t=!1;return n>e&&this.nodesBetween(e,n,(e=>(i.isInSet(e.marks)&&(t=!0),!t))),t}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),re(this.marks,e)}contentMatchAt(e){let n=this.type.contentMatch.matchFragment(this.content,0,e);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(e,n,i=D.empty,t=0,a=i.childCount){let s=this.contentMatchAt(e).matchFragment(i,t,a),o=s&&s.matchFragment(this.content,n);if(!o||!o.validEnd)return!1;for(let e=t;e<a;e++)if(!this.type.allowsMarks(i.child(e).marks))return!1;return!0}canReplaceWith(e,n,i,t){if(t&&!this.type.allowsMarks(t))return!1;let a=this.contentMatchAt(e).matchType(i),s=a&&a.matchFragment(this.content,n);return!!s&&s.validEnd}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=L.none;for(let n=0;n<this.marks.length;n++){let i=this.marks[n];i.type.checkAttrs(i.attrs),e=i.addToSet(e)}if(!L.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((e=>e.type.name))}`);this.content.forEach((e=>e.check()))}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map((e=>e.toJSON()))),e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let i;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");i=n.marks.map(e.markFromJSON)}if("text"==n.type){if("string"!=typeof n.text)throw new RangeError("Invalid text node in JSON");return e.text(n.text,i)}let t=D.fromJSON(e,n.content),a=e.nodeType(n.type).create(n.attrs,t,i);return a.type.checkAttrs(a.attrs),a}};se.prototype.text=void 0;class oe extends se{constructor(e,n,i,t){if(super(e,n,null,t),!i)throw new RangeError("Empty text nodes are not allowed");this.text=i}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):re(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,n){return this.text.slice(e,n)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new oe(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new oe(this.type,this.attrs,e,this.marks)}cut(e=0,n=this.text.length){return 0==e&&n==this.text.length?this:this.withText(this.text.slice(e,n))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function re(e,n){for(let i=e.length-1;i>=0;i--)n=e[i].type.name+"("+n+")";return n}class fe{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,n){let i=new de(e,n);if(null==i.next)return fe.empty;let t=le(i);i.next&&i.err("Unexpected trailing text");let a=function(e){let n=Object.create(null);return i(ve(e,0));function i(t){let a=[];t.forEach((n=>{e[n].forEach((({term:n,to:i})=>{if(!n)return;let t;for(let e=0;e<a.length;e++)a[e][0]==n&&(t=a[e][1]);ve(e,i).forEach((e=>{t||a.push([n,t=[]]),-1==t.indexOf(e)&&t.push(e)}))}))}));let s=n[t.join(",")]=new fe(t.indexOf(e.length-1)>-1);for(let e=0;e<a.length;e++){let t=a[e][1].sort(pe);s.next.push({type:a[e][0],next:n[t.join(",")]||i(t)})}return s}}(function(e){let n=[[]];return a(s(e,0),i()),n;function i(){return n.push([])-1}function t(e,i,t){let a={term:t,to:i};return n[e].push(a),a}function a(e,n){e.forEach((e=>e.to=n))}function s(e,n){if("choice"==e.type)return e.exprs.reduce(((e,i)=>e.concat(s(i,n))),[]);if("seq"!=e.type){if("star"==e.type){let o=i();return t(n,o),a(s(e.expr,o),o),[t(o)]}if("plus"==e.type){let o=i();return a(s(e.expr,n),o),a(s(e.expr,o),o),[t(o)]}if("opt"==e.type)return[t(n)].concat(s(e.expr,n));if("range"==e.type){let o=n;for(let n=0;n<e.min;n++){let n=i();a(s(e.expr,o),n),o=n}if(-1==e.max)a(s(e.expr,o),o);else for(let n=e.min;n<e.max;n++){let n=i();t(o,n),a(s(e.expr,o),n),o=n}return[t(o)]}if("name"==e.type)return[t(n,void 0,e.value)];throw new Error("Unknown expr type")}for(let t=0;;t++){let o=s(e.exprs[t],n);if(t==e.exprs.length-1)return o;a(o,n=i())}}}(t));return function(e,n){for(let i=0,t=[e];i<t.length;i++){let e=t[i],a=!e.validEnd,s=[];for(let n=0;n<e.next.length;n++){let{type:i,next:o}=e.next[n];s.push(i.name),a&&!(i.isText||i.hasRequiredAttrs())&&(a=!1),-1==t.indexOf(o)&&t.push(o)}a&&n.err("Only non-generatable nodes ("+s.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}(a,i),a}matchType(e){for(let n=0;n<this.next.length;n++)if(this.next[n].type==e)return this.next[n].next;return null}matchFragment(e,n=0,i=e.childCount){let t=this;for(let a=n;t&&a<i;a++)t=t.matchType(e.child(a).type);return t}get inlineContent(){return 0!=this.next.length&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:n}=this.next[e];if(!n.isText&&!n.hasRequiredAttrs())return n}return null}compatible(e){for(let n=0;n<this.next.length;n++)for(let i=0;i<e.next.length;i++)if(this.next[n].type==e.next[i].type)return!0;return!1}fillBefore(e,n=!1,i=0){let t=[this];return function a(s,o){let r=s.matchFragment(e,i);if(r&&(!n||r.validEnd))return D.from(o.map((e=>e.createAndFill())));for(let e=0;e<s.next.length;e++){let{type:n,next:i}=s.next[e];if(!n.isText&&!n.hasRequiredAttrs()&&-1==t.indexOf(i)){t.push(i);let e=a(i,o.concat(n));if(e)return e}}return null}(this,[])}findWrapping(e){for(let n=0;n<this.wrapCache.length;n+=2)if(this.wrapCache[n]==e)return this.wrapCache[n+1];let n=this.computeWrapping(e);return this.wrapCache.push(e,n),n}computeWrapping(e){let n=Object.create(null),i=[{match:this,type:null,via:null}];for(;i.length;){let t=i.shift(),a=t.match;if(a.matchType(e)){let e=[];for(let n=t;n.type;n=n.via)e.push(n.type);return e.reverse()}for(let e=0;e<a.next.length;e++){let{type:s,next:o}=a.next[e];!s.isLeaf&&!s.hasRequiredAttrs()&&!(s.name in n)&&(!t.type||o.validEnd)&&(i.push({match:s.contentMatch,type:s,via:t}),n[s.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];return function n(i){e.push(i);for(let t=0;t<i.next.length;t++)-1==e.indexOf(i.next[t].next)&&n(i.next[t].next)}(this),e.map(((n,i)=>{let t=i+(n.validEnd?"*":" ")+" ";for(let i=0;i<n.next.length;i++)t+=(i?", ":"")+n.next[i].type.name+"->"+e.indexOf(n.next[i].next);return t})).join("\n")}}fe.empty=new fe(!0);class de{constructor(e,n){this.string=e,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function le(e){let n=[];do{n.push(ce(e))}while(e.eat("|"));return 1==n.length?n[0]:{type:"choice",exprs:n}}function ce(e){let n=[];do{n.push(ue(e))}while(e.next&&")"!=e.next&&"|"!=e.next);return 1==n.length?n[0]:{type:"seq",exprs:n}}function ue(e){let n=function(e){if(e.eat("(")){let n=le(e);return e.eat(")")||e.err("Missing closing paren"),n}if(!/\W/.test(e.next)){let n=function(e,n){let i=e.nodeTypes,t=i[n];if(t)return[t];let a=[];for(let e in i){let t=i[e];t.isInGroup(n)&&a.push(t)}return 0==a.length&&e.err("No node type or group '"+n+"' found"),a}(e,e.next).map((n=>(null==e.inline?e.inline=n.isInline:e.inline!=n.isInline&&e.err("Mixing inline and block content"),{type:"name",value:n})));return e.pos++,1==n.length?n[0]:{type:"choice",exprs:n}}e.err("Unexpected token '"+e.next+"'")}(e);for(;;)if(e.eat("+"))n={type:"plus",expr:n};else if(e.eat("*"))n={type:"star",expr:n};else if(e.eat("?"))n={type:"opt",expr:n};else{if(!e.eat("{"))break;n=me(e,n)}return n}function he(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let n=Number(e.next);return e.pos++,n}function me(e,n){let i=he(e),t=i;return e.eat(",")&&(t="}"!=e.next?he(e):-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:i,max:t,expr:n}}function pe(e,n){return n-e}function ve(e,n){let i=[];return function n(t){let a=e[t];if(1==a.length&&!a[0].term)return n(a[0].to);i.push(t);for(let e=0;e<a.length;e++){let{term:t,to:s}=a[e];!t&&-1==i.indexOf(s)&&n(s)}}(n),i.sort(pe)}function ge(e){let n=Object.create(null);for(let i in e){let t=e[i];if(!t.hasDefault)return null;n[i]=t.default}return n}function ke(e,n){let i=Object.create(null);for(let t in e){let a=n&&n[t];if(void 0===a){let n=e[t];if(!n.hasDefault)throw new RangeError("No value supplied for attribute "+t);a=n.default}i[t]=a}return i}function ye(e,n,i,t){for(let t in n)if(!(t in e))throw new RangeError(`Unsupported attribute ${t} for ${i} of type ${t}`);for(let i in e){let t=e[i];t.validate&&t.validate(n[i])}}function we(e,n){let i=Object.create(null);if(n)for(let t in n)i[t]=new _e(e,t,n[t]);return i}let be=class e{constructor(e,n,i){this.name=e,this.schema=n,this.spec=i,this.markSet=null,this.groups=i.group?i.group.split(" "):[],this.attrs=we(e,i.attrs),this.defaultAttrs=ge(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(i.inline||"text"==e),this.isText="text"==e}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==fe.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(e){return this.groups.indexOf(e)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:ke(this.attrs,e)}create(e=null,n,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new se(this,this.computeAttrs(e),D.from(n),L.setFrom(i))}createChecked(e=null,n,i){return n=D.from(n),this.checkContent(n),new se(this,this.computeAttrs(e),n,L.setFrom(i))}createAndFill(e=null,n,i){if(e=this.computeAttrs(e),(n=D.from(n)).size){let e=this.contentMatch.fillBefore(n);if(!e)return null;n=e.append(n)}let t=this.contentMatch.matchFragment(n),a=t&&t.fillBefore(D.empty,!0);return a?new se(this,e,n.append(a),L.setFrom(i)):null}validContent(e){let n=this.contentMatch.matchFragment(e);if(!n||!n.validEnd)return!1;for(let n=0;n<e.childCount;n++)if(!this.allowsMarks(e.child(n).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){ye(this.attrs,e,"node",this.name)}allowsMarkType(e){return null==this.markSet||this.markSet.indexOf(e)>-1}allowsMarks(e){if(null==this.markSet)return!0;for(let n=0;n<e.length;n++)if(!this.allowsMarkType(e[n].type))return!1;return!0}allowedMarks(e){if(null==this.markSet)return e;let n;for(let i=0;i<e.length;i++)this.allowsMarkType(e[i].type)?n&&n.push(e[i]):n||(n=e.slice(0,i));return n?n.length?n:L.none:e}static compile(n,i){let t=Object.create(null);n.forEach(((n,a)=>t[n]=new e(n,i,a)));let a=i.spec.topNode||"doc";if(!t[a])throw new RangeError("Schema is missing its top node type ('"+a+"')");if(!t.text)throw new RangeError("Every schema needs a 'text' type");for(let e in t.text.attrs)throw new RangeError("The text node type should not have attributes");return t}};class _e{constructor(e,n,i){this.hasDefault=Object.prototype.hasOwnProperty.call(i,"default"),this.default=i.default,this.validate="string"==typeof i.validate?function(e,n,i){let t=i.split("|");return i=>{let a=null===i?"null":typeof i;if(t.indexOf(a)<0)throw new RangeError(`Expected value of type ${t} for attribute ${n} on type ${e}, got ${a}`)}}(e,n,i.validate):i.validate}get isRequired(){return!this.hasDefault}}class xe{constructor(e,n,i,t){this.name=e,this.rank=n,this.schema=i,this.spec=t,this.attrs=we(e,t.attrs),this.excluded=null;let a=ge(this.attrs);this.instance=a?new L(this,a):null}create(e=null){return!e&&this.instance?this.instance:new L(this,ke(this.attrs,e))}static compile(e,n){let i=Object.create(null),t=0;return e.forEach(((e,a)=>i[e]=new xe(e,t++,n,a))),i}removeFromSet(e){for(var n=0;n<e.length;n++)e[n].type==this&&(e=e.slice(0,n).concat(e.slice(n+1)),n--);return e}isInSet(e){for(let n=0;n<e.length;n++)if(e[n].type==this)return e[n]}checkAttrs(e){ye(this.attrs,e,"mark",this.name)}excludes(e){return this.excluded.indexOf(e)>-1}}class Se{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let n=this.spec={};for(let i in e)n[i]=e[i];n.nodes=N.from(e.nodes),n.marks=N.from(e.marks||{}),this.nodes=be.compile(this.spec.nodes,this),this.marks=xe.compile(this.spec.marks,this);let i=Object.create(null);for(let e in this.nodes){if(e in this.marks)throw new RangeError(e+" can not be both a node and a mark");let n=this.nodes[e],t=n.spec.content||"",a=n.spec.marks;if(n.contentMatch=i[t]||(i[t]=fe.parse(t,this.nodes)),n.inlineContent=n.contentMatch.inlineContent,n.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!n.isInline||!n.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=n}n.markSet="_"==a?null:a?Ce(this,a.split(" ")):""!=a&&n.inlineContent?null:[]}for(let e in this.marks){let n=this.marks[e],i=n.spec.excludes;n.excluded=null==i?[n]:""==i?[]:Ce(this,i.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(e,n=null,i,t){if("string"==typeof e)e=this.nodeType(e);else{if(!(e instanceof be))throw new RangeError("Invalid node type: "+e);if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}return e.createChecked(n,i,t)}text(e,n){let i=this.nodes.text;return new oe(i,i.defaultAttrs,e,L.setFrom(n))}mark(e,n){return"string"==typeof e&&(e=this.marks[e]),e.create(n)}nodeFromJSON(e){return se.fromJSON(this,e)}markFromJSON(e){return L.fromJSON(this,e)}nodeType(e){let n=this.nodes[e];if(!n)throw new RangeError("Unknown node type: "+e);return n}}function Ce(e,n){let i=[];for(let t=0;t<n.length;t++){let a=n[t],s=e.marks[a],o=s;if(s)i.push(s);else for(let n in e.marks){let t=e.marks[n];("_"==a||t.spec.group&&t.spec.group.split(" ").indexOf(a)>-1)&&i.push(o=t)}if(!o)throw new SyntaxError("Unknown mark type: '"+n[t]+"'")}return i}class Me{constructor(e,n){this.schema=e,this.rules=n,this.tags=[],this.styles=[];let i=this.matchedStyles=[];n.forEach((e=>{if(null!=e.tag)this.tags.push(e);else if(function(e){return null!=e.style}(e)){let n=/[^=]*/.exec(e.style)[0];i.indexOf(n)<0&&i.push(n),this.styles.push(e)}})),this.normalizeLists=!this.tags.some((n=>{if(!/^(ul|ol)\b/.test(n.tag)||!n.node)return!1;let i=e.nodes[n.node];return i.contentMatch.matchType(i)}))}parse(e,n={}){let i=new Ne(this,n,!1);return i.addAll(e,L.none,n.from,n.to),i.finish()}parseSlice(e,n={}){let i=new Ne(this,n,!0);return i.addAll(e,L.none,n.from,n.to),H.maxOpen(i.finish())}matchTag(e,n,i){for(let t=i?this.tags.indexOf(i)+1:0;t<this.tags.length;t++){let i=this.tags[t];if(je(e,i.tag)&&(void 0===i.namespace||e.namespaceURI==i.namespace)&&(!i.context||n.matchesContext(i.context))){if(i.getAttrs){let n=i.getAttrs(e);if(!1===n)continue;i.attrs=n||void 0}return i}}}matchStyle(e,n,i,t){for(let a=t?this.styles.indexOf(t)+1:0;a<this.styles.length;a++){let t=this.styles[a],s=t.style;if(!(0!=s.indexOf(e)||t.context&&!i.matchesContext(t.context)||s.length>e.length&&(61!=s.charCodeAt(e.length)||s.slice(e.length+1)!=n))){if(t.getAttrs){let e=t.getAttrs(n);if(!1===e)continue;t.attrs=e||void 0}return t}}}static schemaRules(e){let n=[];function i(e){let i=null==e.priority?50:e.priority,t=0;for(;t<n.length;t++){let e=n[t];if((null==e.priority?50:e.priority)<i)break}n.splice(t,0,e)}for(let n in e.marks){let t=e.marks[n].spec.parseDOM;t&&t.forEach((e=>{i(e=Re(e)),e.mark||e.ignore||e.clearMark||(e.mark=n)}))}for(let n in e.nodes){let t=e.nodes[n].spec.parseDOM;t&&t.forEach((e=>{i(e=Re(e)),e.node||e.ignore||e.mark||(e.node=n)}))}return n}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new Me(e,Me.schemaRules(e)))}}const Oe={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},Te={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},Ee={ol:!0,ul:!0};function Fe(e,n,i){return null!=n?(n?1:0)|("full"===n?2:0):e&&"pre"==e.whitespace?3:-5&i}class Ae{constructor(e,n,i,t,a,s){this.type=e,this.attrs=n,this.marks=i,this.solid=t,this.options=s,this.content=[],this.activeMarks=L.none,this.match=a||(4&s?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let n=this.type.contentMatch.fillBefore(D.from(e));if(!n){let n,i=this.type.contentMatch;return(n=i.findWrapping(e.type))?(this.match=i,n):null}this.match=this.type.contentMatch.matchFragment(n)}return this.match.findWrapping(e.type)}finish(e){if(!(1&this.options)){let e,n=this.content[this.content.length-1];if(n&&n.isText&&(e=/[ \t\r\n\u000c]+$/.exec(n.text))){let i=n;n.text.length==e[0].length?this.content.pop():this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-e[0].length))}}let n=D.from(this.content);return!e&&this.match&&(n=n.append(this.match.fillBefore(D.empty,!0))),this.type?this.type.create(this.attrs,n,this.marks):n}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!Oe.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class Ne{constructor(e,n,i){this.parser=e,this.options=n,this.isOpen=i,this.open=0,this.localPreserveWS=!1;let t,a=n.topNode,s=Fe(null,n.preserveWhitespace,0)|(i?4:0);t=a?new Ae(a.type,a.attrs,L.none,!0,n.topMatch||a.type.contentMatch,s):new Ae(i?null:e.schema.topNodeType,null,L.none,!0,null,s),this.nodes=[t],this.find=n.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,n){3==e.nodeType?this.addTextNode(e,n):1==e.nodeType&&this.addElement(e,n)}addTextNode(e,n){let i=e.nodeValue,t=this.top,a=2&t.options?"full":this.localPreserveWS||(1&t.options)>0;if("full"===a||t.inlineContext(e)||/[^ \t\r\n\u000c]/.test(i)){if(a)i="full"!==a?i.replace(/\r?\n|\r/g," "):i.replace(/\r\n?/g,"\n");else if(i=i.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(i)&&this.open==this.nodes.length-1){let n=t.content[t.content.length-1],a=e.previousSibling;(!n||a&&"BR"==a.nodeName||n.isText&&/[ \t\r\n\u000c]$/.test(n.text))&&(i=i.slice(1))}i&&this.insertNode(this.parser.schema.text(i),n),this.findInText(e)}else this.findInside(e)}addElement(e,n,i){let t=this.localPreserveWS,a=this.top;("PRE"==e.tagName||/pre/.test(e.style&&e.style.whiteSpace))&&(this.localPreserveWS=!0);let s,o=e.nodeName.toLowerCase();Ee.hasOwnProperty(o)&&this.parser.normalizeLists&&function(e){for(let n=e.firstChild,i=null;n;n=n.nextSibling){let e=1==n.nodeType?n.nodeName.toLowerCase():null;e&&Ee.hasOwnProperty(e)&&i?(i.appendChild(n),n=i):"li"==e?i=n:e&&(i=null)}}(e);let r=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(s=this.parser.matchTag(e,this,i));e:if(r?r.ignore:Te.hasOwnProperty(o))this.findInside(e),this.ignoreFallback(e,n);else if(!r||r.skip||r.closeParent){r&&r.closeParent?this.open=Math.max(0,this.open-1):r&&r.skip.nodeType&&(e=r.skip);let i,t=this.needsBlock;if(Oe.hasOwnProperty(o))a.content.length&&a.content[0].isInline&&this.open&&(this.open--,a=this.top),i=!0,a.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,n);break e}let s=r&&r.skip?n:this.readStyles(e,n);s&&this.addAll(e,s),i&&this.sync(a),this.needsBlock=t}else{let i=this.readStyles(e,n);i&&this.addElementByRule(e,r,i,!1===r.consuming?s:void 0)}this.localPreserveWS=t}leafFallback(e,n){"BR"==e.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode("\n"),n)}ignoreFallback(e,n){"BR"==e.nodeName&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),n)}readStyles(e,n){let i=e.style;if(i&&i.length)for(let e=0;e<this.parser.matchedStyles.length;e++){let t=this.parser.matchedStyles[e],a=i.getPropertyValue(t);if(a)for(let e;;){let i=this.parser.matchStyle(t,a,this,e);if(!i)break;if(i.ignore)return null;if(n=i.clearMark?n.filter((e=>!i.clearMark(e))):n.concat(this.parser.schema.marks[i.mark].create(i.attrs)),!1!==i.consuming)break;e=i}}return n}addElementByRule(e,n,i,t){let a,s;if(n.node)if(s=this.parser.schema.nodes[n.node],s.isLeaf)this.insertNode(s.create(n.attrs),i)||this.leafFallback(e,i);else{let e=this.enter(s,n.attrs||null,i,n.preserveWhitespace);e&&(a=!0,i=e)}else{let e=this.parser.schema.marks[n.mark];i=i.concat(e.create(n.attrs))}let o=this.top;if(s&&s.isLeaf)this.findInside(e);else if(t)this.addElement(e,i,t);else if(n.getContent)this.findInside(e),n.getContent(e,this.parser.schema).forEach((e=>this.insertNode(e,i)));else{let t=e;"string"==typeof n.contentElement?t=e.querySelector(n.contentElement):"function"==typeof n.contentElement?t=n.contentElement(e):n.contentElement&&(t=n.contentElement),this.findAround(e,t,!0),this.addAll(t,i),this.findAround(e,t,!1)}a&&this.sync(o)&&this.open--}addAll(e,n,i,t){let a=i||0;for(let s=i?e.childNodes[i]:e.firstChild,o=null==t?null:e.childNodes[t];s!=o;s=s.nextSibling,++a)this.findAtPoint(e,a),this.addDOM(s,n);this.findAtPoint(e,a)}findPlace(e,n){let i,t;for(let n=this.open;n>=0;n--){let a=this.nodes[n],s=a.findWrapping(e);if(s&&(!i||i.length>s.length)&&(i=s,t=a,!s.length)||a.solid)break}if(!i)return null;this.sync(t);for(let e=0;e<i.length;e++)n=this.enterInner(i[e],null,n,!1);return n}insertNode(e,n){if(e.isInline&&this.needsBlock&&!this.top.type){let e=this.textblockFromContext();e&&(n=this.enterInner(e,null,n))}let i=this.findPlace(e,n);if(i){this.closeExtra();let n=this.top;n.match&&(n.match=n.match.matchType(e.type));let t=L.none;for(let a of i.concat(e.marks))(n.type?n.type.allowsMarkType(a.type):De(a.type,e.type))&&(t=a.addToSet(t));return n.content.push(e.mark(t)),!0}return!1}enter(e,n,i,t){let a=this.findPlace(e.create(n),i);return a&&(a=this.enterInner(e,n,i,!0,t)),a}enterInner(e,n,i,t=!1,a){this.closeExtra();let s=this.top;s.match=s.match&&s.match.matchType(e);let o=Fe(e,a,s.options);4&s.options&&0==s.content.length&&(o|=4);let r=L.none;return i=i.filter((n=>!(s.type?s.type.allowsMarkType(n.type):De(n.type,e))||(r=n.addToSet(r),!1))),this.nodes.push(new Ae(e,n,r,t,null,o)),this.open++,i}closeExtra(e=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!(!this.isOpen&&!this.options.topOpen))}sync(e){for(let n=this.open;n>=0;n--){if(this.nodes[n]==e)return this.open=n,!0;this.localPreserveWS&&(this.nodes[n].options|=1)}return!1}get currentPos(){this.closeExtra();let e=0;for(let n=this.open;n>=0;n--){let i=this.nodes[n].content;for(let n=i.length-1;n>=0;n--)e+=i[n].nodeSize;n&&e++}return e}findAtPoint(e,n){if(this.find)for(let i=0;i<this.find.length;i++)this.find[i].node==e&&this.find[i].offset==n&&(this.find[i].pos=this.currentPos)}findInside(e){if(this.find)for(let n=0;n<this.find.length;n++)null==this.find[n].pos&&1==e.nodeType&&e.contains(this.find[n].node)&&(this.find[n].pos=this.currentPos)}findAround(e,n,i){if(e!=n&&this.find)for(let t=0;t<this.find.length;t++)null==this.find[t].pos&&1==e.nodeType&&e.contains(this.find[t].node)&&n.compareDocumentPosition(this.find[t].node)&(i?2:4)&&(this.find[t].pos=this.currentPos)}findInText(e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&(this.find[n].pos=this.currentPos-(e.nodeValue.length-this.find[n].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let n=e.split("/"),i=this.options.context,t=!(this.isOpen||i&&i.parent.type!=this.nodes[0].type),a=-(i?i.depth+1:0)+(t?0:1),s=(e,o)=>{for(;e>=0;e--){let r=n[e];if(""==r){if(e==n.length-1||0==e)continue;for(;o>=a;o--)if(s(e-1,o))return!0;return!1}{let e=o>0||0==o&&t?this.nodes[o].type:i&&o>=a?i.node(o-a).type:null;if(!e||e.name!=r&&!e.isInGroup(r))return!1;o--}}return!0};return s(n.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let n=e.depth;n>=0;n--){let i=e.node(n).contentMatchAt(e.indexAfter(n)).defaultType;if(i&&i.isTextblock&&i.defaultAttrs)return i}for(let e in this.parser.schema.nodes){let n=this.parser.schema.nodes[e];if(n.isTextblock&&n.defaultAttrs)return n}}}function je(e,n){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,n)}function Re(e){let n={};for(let i in e)n[i]=e[i];return n}function De(e,n){let i=n.schema.nodes;for(let t in i){let a=i[t];if(!a.allowsMarkType(e))continue;let s=[],o=e=>{s.push(e);for(let i=0;i<e.edgeCount;i++){let{type:t,next:a}=e.edge(i);if(t==n||s.indexOf(a)<0&&o(a))return!0}};if(o(a.contentMatch))return!0}}class ze{constructor(e,n){this.nodes=e,this.marks=n}serializeFragment(e,n={},i){i||(i=Be(n).createDocumentFragment());let t=i,a=[];return e.forEach((e=>{if(a.length||e.marks.length){let i=0,s=0;for(;i<a.length&&s<e.marks.length;){let n=e.marks[s];if(this.marks[n.type.name]){if(!n.eq(a[i][0])||!1===n.type.spec.spanning)break;i++,s++}else s++}for(;i<a.length;)t=a.pop()[1];for(;s<e.marks.length;){let i=e.marks[s++],o=this.serializeMark(i,e.isInline,n);o&&(a.push([i,t]),t.appendChild(o.dom),t=o.contentDOM||o.dom)}}t.appendChild(this.serializeNodeInner(e,n))})),i}serializeNodeInner(e,n){let{dom:i,contentDOM:t}=He(Be(n),this.nodes[e.type.name](e),null,e.attrs);if(t){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,n,t)}return i}serializeNode(e,n={}){let i=this.serializeNodeInner(e,n);for(let t=e.marks.length-1;t>=0;t--){let a=this.serializeMark(e.marks[t],e.isInline,n);a&&((a.contentDOM||a.dom).appendChild(i),i=a.dom)}return i}serializeMark(e,n,i={}){let t=this.marks[e.type.name];return t&&He(Be(i),t(e,n),null,e.attrs)}static renderSpec(e,n,i=null,t){return He(e,n,i,t)}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new ze(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let n=Pe(e.nodes);return n.text||(n.text=e=>e.text),n}static marksFromSchema(e){return Pe(e.marks)}}function Pe(e){let n={};for(let i in e){let t=e[i].spec.toDOM;t&&(n[i]=t)}return n}function Be(e){return e.document||window.document}const Le=new WeakMap;function Ie(e){let n=Le.get(e);return void 0===n&&Le.set(e,n=function(e){let n=null;function i(e){if(e&&"object"==typeof e)if(Array.isArray(e))if("string"==typeof e[0])n||(n=[]),n.push(e);else for(let n=0;n<e.length;n++)i(e[n]);else for(let n in e)i(e[n])}return i(e),n}(e)),n}function He(e,n,i,t){if("string"==typeof n)return{dom:e.createTextNode(n)};if(null!=n.nodeType)return{dom:n};if(n.dom&&null!=n.dom.nodeType)return n;let a,s=n[0];if("string"!=typeof s)throw new RangeError("Invalid array passed to renderSpec");if(t&&(a=Ie(t))&&a.indexOf(n)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let o=s.indexOf(" ");o>0&&(i=s.slice(0,o),s=s.slice(o+1));let r,f=i?e.createElementNS(i,s):e.createElement(s),d=n[1],l=1;if(d&&"object"==typeof d&&null==d.nodeType&&!Array.isArray(d)){l=2;for(let e in d)if(null!=d[e]){let n=e.indexOf(" ");n>0?f.setAttributeNS(e.slice(0,n),e.slice(n+1),d[e]):f.setAttribute(e,d[e])}}for(let a=l;a<n.length;a++){let s=n[a];if(0===s){if(a<n.length-1||a>l)throw new RangeError("Content hole must be the only child of its parent node");return{dom:f,contentDOM:f}}{let{dom:n,contentDOM:a}=He(e,s,i,t);if(f.appendChild(n),a){if(r)throw new RangeError("Multiple content holes");r=a}}}return{dom:f,contentDOM:r}}const qe=Math.pow(2,16);function We(e,n){return e+n*qe}function $e(e){return 65535&e}class Ve{constructor(e,n,i){this.pos=e,this.delInfo=n,this.recover=i}get deleted(){return(8&this.delInfo)>0}get deletedBefore(){return(5&this.delInfo)>0}get deletedAfter(){return(6&this.delInfo)>0}get deletedAcross(){return(4&this.delInfo)>0}}class Ue{constructor(e,n=!1){if(this.ranges=e,this.inverted=n,!e.length&&Ue.empty)return Ue.empty}recover(e){let n=0,i=$e(e);if(!this.inverted)for(let e=0;e<i;e++)n+=this.ranges[3*e+2]-this.ranges[3*e+1];return this.ranges[3*i]+n+((t=e)-(65535&t))/qe;var t}mapResult(e,n=1){return this._map(e,n,!1)}map(e,n=1){return this._map(e,n,!0)}_map(e,n,i){let t=0,a=this.inverted?2:1,s=this.inverted?1:2;for(let o=0;o<this.ranges.length;o+=3){let r=this.ranges[o]-(this.inverted?t:0);if(r>e)break;let f=this.ranges[o+a],d=this.ranges[o+s],l=r+f;if(e<=l){let a=r+t+((f?e==r?-1:e==l?1:n:n)<0?0:d);if(i)return a;let s=e==(n<0?r:l)?null:We(o/3,e-r),c=e==r?2:e==l?1:4;return(n<0?e!=r:e!=l)&&(c|=8),new Ve(a,c,s)}t+=d-f}return i?e+t:new Ve(e+t,0,null)}touches(e,n){let i=0,t=$e(n),a=this.inverted?2:1,s=this.inverted?1:2;for(let n=0;n<this.ranges.length;n+=3){let o=this.ranges[n]-(this.inverted?i:0);if(o>e)break;let r=this.ranges[n+a];if(e<=o+r&&n==3*t)return!0;i+=this.ranges[n+s]-r}return!1}forEach(e){let n=this.inverted?2:1,i=this.inverted?1:2;for(let t=0,a=0;t<this.ranges.length;t+=3){let s=this.ranges[t],o=s-(this.inverted?a:0),r=s+(this.inverted?0:a),f=this.ranges[t+n],d=this.ranges[t+i];e(o,o+f,r,r+d),a+=d-f}}invert(){return new Ue(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return 0==e?Ue.empty:new Ue(e<0?[0,-e,0]:[0,0,e])}}Ue.empty=new Ue([]);class Ge{constructor(e,n,i=0,t=(e?e.length:0)){this.mirror=n,this.from=i,this.to=t,this._maps=e||[],this.ownData=!(e||n)}get maps(){return this._maps}slice(e=0,n=this.maps.length){return new Ge(this._maps,this.mirror,e,n)}appendMap(e,n){this.ownData||(this._maps=this._maps.slice(),this.mirror=this.mirror&&this.mirror.slice(),this.ownData=!0),this.to=this._maps.push(e),null!=n&&this.setMirror(this._maps.length-1,n)}appendMapping(e){for(let n=0,i=this._maps.length;n<e._maps.length;n++){let t=e.getMirror(n);this.appendMap(e._maps[n],null!=t&&t<n?i+t:void 0)}}getMirror(e){if(this.mirror)for(let n=0;n<this.mirror.length;n++)if(this.mirror[n]==e)return this.mirror[n+(n%2?-1:1)]}setMirror(e,n){this.mirror||(this.mirror=[]),this.mirror.push(e,n)}appendMappingInverted(e){for(let n=e.maps.length-1,i=this._maps.length+e._maps.length;n>=0;n--){let t=e.getMirror(n);this.appendMap(e._maps[n].invert(),null!=t&&t>n?i-t-1:void 0)}}invert(){let e=new Ge;return e.appendMappingInverted(this),e}map(e,n=1){if(this.mirror)return this._map(e,n,!0);for(let i=this.from;i<this.to;i++)e=this._maps[i].map(e,n);return e}mapResult(e,n=1){return this._map(e,n,!1)}_map(e,n,i){let t=0;for(let i=this.from;i<this.to;i++){let a=this._maps[i].mapResult(e,n);if(null!=a.recover){let n=this.getMirror(i);if(null!=n&&n>i&&n<this.to){i=n,e=this._maps[n].recover(a.recover);continue}}t|=a.delInfo,e=a.pos}return i?e:new Ve(e,t,null)}}const Ke=Object.create(null);class Je{getMap(){return Ue.empty}merge(e){return null}static fromJSON(e,n){if(!n||!n.stepType)throw new RangeError("Invalid input for Step.fromJSON");let i=Ke[n.stepType];if(!i)throw new RangeError(`No step type ${n.stepType} defined`);return i.fromJSON(e,n)}static jsonID(e,n){if(e in Ke)throw new RangeError("Duplicate use of step JSON ID "+e);return Ke[e]=n,n.prototype.jsonID=e,n}}class Ye{constructor(e,n){this.doc=e,this.failed=n}static ok(e){return new Ye(e,null)}static fail(e){return new Ye(null,e)}static fromReplace(e,n,i,t){try{return Ye.ok(e.replace(n,i,t))}catch(e){if(e instanceof I)return Ye.fail(e.message);throw e}}}function Qe(e,n,i){let t=[];for(let a=0;a<e.childCount;a++){let s=e.child(a);s.content.size&&(s=s.copy(Qe(s.content,n,s))),s.isInline&&(s=n(s,i,a)),t.push(s)}return D.fromArray(t)}class Xe extends Je{constructor(e,n,i){super(),this.from=e,this.to=n,this.mark=i}apply(e){let n=e.slice(this.from,this.to),i=e.resolve(this.from),t=i.node(i.sharedDepth(this.to)),a=new H(Qe(n.content,((e,n)=>e.isAtom&&n.type.allowsMarkType(this.mark.type)?e.mark(this.mark.addToSet(e.marks)):e),t),n.openStart,n.openEnd);return Ye.fromReplace(e,this.from,this.to,a)}invert(){return new Ze(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),i=e.mapResult(this.to,-1);return n.deleted&&i.deleted||n.pos>=i.pos?null:new Xe(n.pos,i.pos,this.mark)}merge(e){return e instanceof Xe&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new Xe(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Xe(n.from,n.to,e.markFromJSON(n.mark))}}Je.jsonID("addMark",Xe);class Ze extends Je{constructor(e,n,i){super(),this.from=e,this.to=n,this.mark=i}apply(e){let n=e.slice(this.from,this.to),i=new H(Qe(n.content,(e=>e.mark(this.mark.removeFromSet(e.marks))),e),n.openStart,n.openEnd);return Ye.fromReplace(e,this.from,this.to,i)}invert(){return new Xe(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),i=e.mapResult(this.to,-1);return n.deleted&&i.deleted||n.pos>=i.pos?null:new Ze(n.pos,i.pos,this.mark)}merge(e){return e instanceof Ze&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new Ze(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Ze(n.from,n.to,e.markFromJSON(n.mark))}}Je.jsonID("removeMark",Ze);class en extends Je{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return Ye.fail("No node at mark step's position");let i=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return Ye.fromReplace(e,this.pos,this.pos+1,new H(D.from(i),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);if(n){let e=this.mark.addToSet(n.marks);if(e.length==n.marks.length){for(let i=0;i<n.marks.length;i++)if(!n.marks[i].isInSet(e))return new en(this.pos,n.marks[i]);return new en(this.pos,this.mark)}}return new nn(this.pos,this.mark)}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new en(n.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if("number"!=typeof n.pos)throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new en(n.pos,e.markFromJSON(n.mark))}}Je.jsonID("addNodeMark",en);class nn extends Je{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return Ye.fail("No node at mark step's position");let i=n.type.create(n.attrs,null,this.mark.removeFromSet(n.marks));return Ye.fromReplace(e,this.pos,this.pos+1,new H(D.from(i),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);return n&&this.mark.isInSet(n.marks)?new en(this.pos,this.mark):this}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new nn(n.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if("number"!=typeof n.pos)throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new nn(n.pos,e.markFromJSON(n.mark))}}Je.jsonID("removeNodeMark",nn);class tn extends Je{constructor(e,n,i,t=!1){super(),this.from=e,this.to=n,this.slice=i,this.structure=t}apply(e){return this.structure&&sn(e,this.from,this.to)?Ye.fail("Structure replace would overwrite content"):Ye.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Ue([this.from,this.to-this.from,this.slice.size])}invert(e){return new tn(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let n=e.mapResult(this.from,1),i=e.mapResult(this.to,-1);return n.deletedAcross&&i.deletedAcross?null:new tn(n.pos,Math.max(n.pos,i.pos),this.slice)}merge(e){if(!(e instanceof tn)||e.structure||this.structure)return null;if(this.from+this.slice.size!=e.from||this.slice.openEnd||e.slice.openStart){if(e.to!=this.from||this.slice.openStart||e.slice.openEnd)return null;{let n=this.slice.size+e.slice.size==0?H.empty:new H(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new tn(e.from,this.to,n,this.structure)}}{let n=this.slice.size+e.slice.size==0?H.empty:new H(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new tn(this.from,this.to+(e.to-e.from),n,this.structure)}}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new tn(n.from,n.to,H.fromJSON(e,n.slice),!!n.structure)}}Je.jsonID("replace",tn);class an extends Je{constructor(e,n,i,t,a,s,o=!1){super(),this.from=e,this.to=n,this.gapFrom=i,this.gapTo=t,this.slice=a,this.insert=s,this.structure=o}apply(e){if(this.structure&&(sn(e,this.from,this.gapFrom)||sn(e,this.gapTo,this.to)))return Ye.fail("Structure gap-replace would overwrite content");let n=e.slice(this.gapFrom,this.gapTo);if(n.openStart||n.openEnd)return Ye.fail("Gap is not a flat range");let i=this.slice.insertAt(this.insert,n.content);return i?Ye.fromReplace(e,this.from,this.to,i):Ye.fail("Content does not fit in gap")}getMap(){return new Ue([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let n=this.gapTo-this.gapFrom;return new an(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let n=e.mapResult(this.from,1),i=e.mapResult(this.to,-1),t=this.from==this.gapFrom?n.pos:e.map(this.gapFrom,-1),a=this.to==this.gapTo?i.pos:e.map(this.gapTo,1);return n.deletedAcross&&i.deletedAcross||t<n.pos||a>i.pos?null:new an(n.pos,i.pos,t,a,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if("number"!=typeof n.from||"number"!=typeof n.to||"number"!=typeof n.gapFrom||"number"!=typeof n.gapTo||"number"!=typeof n.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new an(n.from,n.to,n.gapFrom,n.gapTo,H.fromJSON(e,n.slice),n.insert,!!n.structure)}}function sn(e,n,i){let t=e.resolve(n),a=i-n,s=t.depth;for(;a>0&&s>0&&t.indexAfter(s)==t.node(s).childCount;)s--,a--;if(a>0){let e=t.node(s).maybeChild(t.indexAfter(s));for(;a>0;){if(!e||e.isLeaf)return!0;e=e.firstChild,a--}}return!1}function on(e,n,i,t=i.contentMatch,a=!0){let s=e.doc.nodeAt(n),o=[],r=n+1;for(let n=0;n<s.childCount;n++){let f=s.child(n),d=r+f.nodeSize,l=t.matchType(f.type);if(l){t=l;for(let n=0;n<f.marks.length;n++)i.allowsMarkType(f.marks[n].type)||e.step(new Ze(r,d,f.marks[n]));if(a&&f.isText&&"pre"!=i.whitespace){let e,n,t=/\r?\n|\r/g;for(;e=t.exec(f.text);)n||(n=new H(D.from(i.schema.text(" ",i.allowedMarks(f.marks))),0,0)),o.push(new tn(r+e.index,r+e.index+e[0].length,n))}}else o.push(new tn(r,d,H.empty));r=d}if(!t.validEnd){let n=t.fillBefore(D.empty,!0);e.replace(r,r,new H(n,0,0))}for(let n=o.length-1;n>=0;n--)e.step(o[n])}function rn(e,n,i){return(0==n||e.canReplace(n,e.childCount))&&(i==e.childCount||e.canReplace(0,i))}function fn(e){let n=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let i=e.depth;;--i){let t=e.$from.node(i),a=e.$from.index(i),s=e.$to.indexAfter(i);if(i<e.depth&&t.canReplace(a,s,n))return i;if(0==i||t.type.spec.isolating||!rn(t,a,s))break}return null}function dn(e,n,i=null,t=e){let a=function(e,n){let{parent:i,startIndex:t,endIndex:a}=e,s=i.contentMatchAt(t).findWrapping(n);if(!s)return null;let o=s.length?s[0]:n;return i.canReplaceWith(t,a,o)?s:null}(e,n),s=a&&function(e,n){let{parent:i,startIndex:t,endIndex:a}=e,s=i.child(t),o=n.contentMatch.findWrapping(s.type);if(!o)return null;let r=(o.length?o[o.length-1]:n).contentMatch;for(let e=t;r&&e<a;e++)r=r.matchType(i.child(e).type);return r&&r.validEnd?o:null}(t,n);return s?a.map(ln).concat({type:n,attrs:i}).concat(s.map(ln)):null}function ln(e){return{type:e,attrs:null}}function cn(e,n,i,t){n.forEach(((a,s)=>{if(a.isText){let o,r=/\r?\n|\r/g;for(;o=r.exec(a.text);){let a=e.mapping.slice(t).map(i+1+s+o.index);e.replaceWith(a,a+1,n.type.schema.linebreakReplacement.create())}}}))}function un(e,n,i,t){n.forEach(((a,s)=>{if(a.type==a.type.schema.linebreakReplacement){let a=e.mapping.slice(t).map(i+1+s);e.replaceWith(a,a+1,n.type.schema.text("\n"))}}))}function hn(e,n,i=1,t){let a=e.resolve(n),s=a.depth-i,o=t&&t[t.length-1]||a.parent;if(s<0||a.parent.type.spec.isolating||!a.parent.canReplace(a.index(),a.parent.childCount)||!o.type.validContent(a.parent.content.cutByIndex(a.index(),a.parent.childCount)))return!1;for(let e=a.depth-1,n=i-2;e>s;e--,n--){let i=a.node(e),s=a.index(e);if(i.type.spec.isolating)return!1;let o=i.content.cutByIndex(s,i.childCount),r=t&&t[n+1];r&&(o=o.replaceChild(0,r.type.create(r.attrs)));let f=t&&t[n]||i;if(!i.canReplace(s+1,i.childCount)||!f.type.validContent(o))return!1}let r=a.indexAfter(s),f=t&&t[0];return a.node(s).canReplaceWith(r,r,f?f.type:a.node(s+1).type)}function mn(e,n){let i=e.resolve(n),t=i.index();return pn(i.nodeBefore,i.nodeAfter)&&i.parent.canReplace(t,t+1)}function pn(e,n){return!(!e||!n||e.isLeaf||!function(e,n){n.content.size||e.type.compatibleContent(n.type);let i=e.contentMatchAt(e.childCount),{linebreakReplacement:t}=e.type.schema;for(let a=0;a<n.childCount;a++){let s=n.child(a),o=s.type==t?e.type.schema.nodes.text:s.type;if(i=i.matchType(o),!i||!e.type.allowsMarks(s.marks))return!1}return i.validEnd}(e,n))}function vn(e,n,i=-1){let t=e.resolve(n);for(let e=t.depth;;e--){let a,s,o=t.index(e);if(e==t.depth?(a=t.nodeBefore,s=t.nodeAfter):i>0?(a=t.node(e+1),o++,s=t.node(e).maybeChild(o)):(a=t.node(e).maybeChild(o-1),s=t.node(e+1)),a&&!a.isTextblock&&pn(a,s)&&t.node(e).canReplace(o,o+1))return n;if(0==e)break;n=i<0?t.before(e):t.after(e)}}function gn(e,n,i=n,t=H.empty){if(n==i&&!t.size)return null;let a=e.resolve(n),s=e.resolve(i);return kn(a,s,t)?new tn(n,i,t):new yn(a,s,t).fit()}function kn(e,n,i){return!i.openStart&&!i.openEnd&&e.start()==n.start()&&e.parent.canReplace(e.index(),n.index(),i.content)}Je.jsonID("replaceAround",an);class yn{constructor(e,n,i){this.$from=e,this.$to=n,this.unplaced=i,this.frontier=[],this.placed=D.empty;for(let n=0;n<=e.depth;n++){let i=e.node(n);this.frontier.push({type:i.type,match:i.contentMatchAt(e.indexAfter(n))})}for(let n=e.depth;n>0;n--)this.placed=D.from(e.node(n).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let e=this.findFittable();e?this.placeNodes(e):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,i=this.$from,t=this.close(e<0?this.$to:i.doc.resolve(e));if(!t)return null;let a=this.placed,s=i.depth,o=t.depth;for(;s&&o&&1==a.childCount;)a=a.firstChild.content,s--,o--;let r=new H(a,s,o);return e>-1?new an(i.pos,e,this.$to.pos,this.$to.end(),r,n):r.size||i.pos!=this.$to.pos?new tn(i.pos,t.pos,r):null}findFittable(){let e=this.unplaced.openStart;for(let n=this.unplaced.content,i=0,t=this.unplaced.openEnd;i<e;i++){let a=n.firstChild;if(n.childCount>1&&(t=0),a.type.spec.isolating&&t<=i){e=i;break}n=a.content}for(let n=1;n<=2;n++)for(let i=1==n?e:this.unplaced.openStart;i>=0;i--){let e,t=null;i?(t=_n(this.unplaced.content,i-1).firstChild,e=t.content):e=this.unplaced.content;let a=e.firstChild;for(let e=this.depth;e>=0;e--){let s,{type:o,match:r}=this.frontier[e],f=null;if(1==n&&(a?r.matchType(a.type)||(f=r.fillBefore(D.from(a),!1)):t&&o.compatibleContent(t.type)))return{sliceDepth:i,frontierDepth:e,parent:t,inject:f};if(2==n&&a&&(s=r.findWrapping(a.type)))return{sliceDepth:i,frontierDepth:e,parent:t,wrap:s};if(t&&r.matchType(t.type))break}}}openMore(){let{content:e,openStart:n,openEnd:i}=this.unplaced,t=_n(e,n);return!(!t.childCount||t.firstChild.isLeaf)&&(this.unplaced=new H(e,n+1,Math.max(i,t.size+n>=e.size-i?n+1:0)),!0)}dropNode(){let{content:e,openStart:n,openEnd:i}=this.unplaced,t=_n(e,n);if(t.childCount<=1&&n>0){let a=e.size-n<=n+t.size;this.unplaced=new H(wn(e,n-1,1),n-1,a?n-1:i)}else this.unplaced=new H(wn(e,n,1),n,i)}placeNodes({sliceDepth:e,frontierDepth:n,parent:i,inject:t,wrap:a}){for(;this.depth>n;)this.closeFrontierNode();if(a)for(let e=0;e<a.length;e++)this.openFrontierNode(a[e]);let s=this.unplaced,o=i?i.content:s.content,r=s.openStart-e,f=0,d=[],{match:l,type:c}=this.frontier[n];if(t){for(let e=0;e<t.childCount;e++)d.push(t.child(e));l=l.matchFragment(t)}let u=o.size+e-(s.content.size-s.openEnd);for(;f<o.childCount;){let e=o.child(f),n=l.matchType(e.type);if(!n)break;f++,(f>1||0==r||e.content.size)&&(l=n,d.push(xn(e.mark(c.allowedMarks(e.marks)),1==f?r:0,f==o.childCount?u:-1)))}let h=f==o.childCount;h||(u=-1),this.placed=bn(this.placed,n,D.from(d)),this.frontier[n].match=l,h&&u<0&&i&&i.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let e=0,n=o;e<u;e++){let e=n.lastChild;this.frontier.push({type:e.type,match:e.contentMatchAt(e.childCount)}),n=e.content}this.unplaced=h?0==e?H.empty:new H(wn(s.content,e-1,1),e-1,u<0?s.openEnd:e-1):new H(wn(s.content,e,f),s.openStart,s.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e,n=this.frontier[this.depth];if(!n.type.isTextblock||!Sn(this.$to,this.$to.depth,n.type,n.match,!1)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:i}=this.$to,t=this.$to.after(i);for(;i>1&&t==this.$to.end(--i);)++t;return t}findCloseLevel(e){e:for(let n=Math.min(this.depth,e.depth);n>=0;n--){let{match:i,type:t}=this.frontier[n],a=n<e.depth&&e.end(n+1)==e.pos+(e.depth-(n+1)),s=Sn(e,n,t,i,a);if(s){for(let i=n-1;i>=0;i--){let{match:n,type:t}=this.frontier[i],a=Sn(e,i,t,n,!0);if(!a||a.childCount)continue e}return{depth:n,fit:s,move:a?e.doc.resolve(e.after(n+1)):e}}}}close(e){let n=this.findCloseLevel(e);if(!n)return null;for(;this.depth>n.depth;)this.closeFrontierNode();n.fit.childCount&&(this.placed=bn(this.placed,n.depth,n.fit)),e=n.move;for(let i=n.depth+1;i<=e.depth;i++){let n=e.node(i),t=n.type.contentMatch.fillBefore(n.content,!0,e.index(i));this.openFrontierNode(n.type,n.attrs,t)}return e}openFrontierNode(e,n=null,i){let t=this.frontier[this.depth];t.match=t.match.matchType(e),this.placed=bn(this.placed,this.depth,D.from(e.create(n,i))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let e=this.frontier.pop().match.fillBefore(D.empty,!0);e.childCount&&(this.placed=bn(this.placed,this.frontier.length,e))}}function wn(e,n,i){return 0==n?e.cutByIndex(i,e.childCount):e.replaceChild(0,e.firstChild.copy(wn(e.firstChild.content,n-1,i)))}function bn(e,n,i){return 0==n?e.append(i):e.replaceChild(e.childCount-1,e.lastChild.copy(bn(e.lastChild.content,n-1,i)))}function _n(e,n){for(let i=0;i<n;i++)e=e.firstChild.content;return e}function xn(e,n,i){if(n<=0)return e;let t=e.content;return n>1&&(t=t.replaceChild(0,xn(t.firstChild,n-1,1==t.childCount?i-1:0))),n>0&&(t=e.type.contentMatch.fillBefore(t).append(t),i<=0&&(t=t.append(e.type.contentMatch.matchFragment(t).fillBefore(D.empty,!0)))),e.copy(t)}function Sn(e,n,i,t,a){let s=e.node(n),o=a?e.indexAfter(n):e.index(n);if(o==s.childCount&&!i.compatibleContent(s.type))return null;let r=t.fillBefore(s.content,!0,o);return r&&!function(e,n,i){for(let t=i;t<n.childCount;t++)if(!e.allowsMarks(n.child(t).marks))return!0;return!1}(i,s.content,o)?r:null}function Cn(e){return e.spec.defining||e.spec.definingForContent}function Mn(e,n,i,t,a){if(n<i){let a=e.firstChild;e=e.replaceChild(0,a.copy(Mn(a.content,n+1,i,t,a)))}if(n>t){let n=a.contentMatchAt(0),i=n.fillBefore(e).append(e);e=i.append(n.matchFragment(i).fillBefore(D.empty,!0))}return e}function On(e,n){let i=[];for(let t=Math.min(e.depth,n.depth);t>=0;t--){let a=e.start(t);if(a<e.pos-(e.depth-t)||n.end(t)>n.pos+(n.depth-t)||e.node(t).type.spec.isolating||n.node(t).type.spec.isolating)break;(a==n.start(t)||t==e.depth&&t==n.depth&&e.parent.inlineContent&&n.parent.inlineContent&&t&&n.start(t-1)==a-1)&&i.push(t)}return i}class Tn extends Je{constructor(e,n,i){super(),this.pos=e,this.attr=n,this.value=i}apply(e){let n=e.nodeAt(this.pos);if(!n)return Ye.fail("No node at attribute step's position");let i=Object.create(null);for(let e in n.attrs)i[e]=n.attrs[e];i[this.attr]=this.value;let t=n.type.create(i,null,n.marks);return Ye.fromReplace(e,this.pos,this.pos+1,new H(D.from(t),0,n.isLeaf?0:1))}getMap(){return Ue.empty}invert(e){return new Tn(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new Tn(n.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,n){if("number"!=typeof n.pos||"string"!=typeof n.attr)throw new RangeError("Invalid input for AttrStep.fromJSON");return new Tn(n.pos,n.attr,n.value)}}Je.jsonID("attr",Tn);class En extends Je{constructor(e,n){super(),this.attr=e,this.value=n}apply(e){let n=Object.create(null);for(let i in e.attrs)n[i]=e.attrs[i];n[this.attr]=this.value;let i=e.type.create(n,e.content,e.marks);return Ye.ok(i)}getMap(){return Ue.empty}invert(e){return new En(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,n){if("string"!=typeof n.attr)throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new En(n.attr,n.value)}}Je.jsonID("docAttr",En);let Fn=class extends Error{};Fn=function e(n){let i=Error.call(this,n);return i.__proto__=e.prototype,i},(Fn.prototype=Object.create(Error.prototype)).constructor=Fn,Fn.prototype.name="TransformError";class An{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new Ge}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let n=this.maybeStep(e);if(n.failed)throw new Fn(n.failed);return this}maybeStep(e){let n=e.apply(this.doc);return n.failed||this.addStep(e,n.doc),n}get docChanged(){return this.steps.length>0}addStep(e,n){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=n}replace(e,n=e,i=H.empty){let t=gn(this.doc,e,n,i);return t&&this.step(t),this}replaceWith(e,n,i){return this.replace(e,n,new H(D.from(i),0,0))}delete(e,n){return this.replace(e,n,H.empty)}insert(e,n){return this.replaceWith(e,e,n)}replaceRange(e,n,i){return function(e,n,i,t){if(!t.size)return e.deleteRange(n,i);let a=e.doc.resolve(n),s=e.doc.resolve(i);if(kn(a,s,t))return e.step(new tn(n,i,t));let o=On(a,e.doc.resolve(i));0==o[o.length-1]&&o.pop();let r=-(a.depth+1);o.unshift(r);for(let e=a.depth,n=a.pos-1;e>0;e--,n--){let i=a.node(e).type.spec;if(i.defining||i.definingAsContext||i.isolating)break;o.indexOf(e)>-1?r=e:a.before(e)==n&&o.splice(1,0,-e)}let f=o.indexOf(r),d=[],l=t.openStart;for(let e=t.content,n=0;;n++){let i=e.firstChild;if(d.push(i),n==t.openStart)break;e=i.content}for(let e=l-1;e>=0;e--){let n=d[e],i=Cn(n.type);if(i&&!n.sameMarkup(a.node(Math.abs(r)-1)))l=e;else if(i||!n.type.isTextblock)break}for(let n=t.openStart;n>=0;n--){let r=(n+l+1)%(t.openStart+1),c=d[r];if(c)for(let n=0;n<o.length;n++){let d=o[(n+f)%o.length],l=!0;d<0&&(l=!1,d=-d);let u=a.node(d-1),h=a.index(d-1);if(u.canReplaceWith(h,h,c.type,c.marks))return e.replace(a.before(d),l?s.after(d):i,new H(Mn(t.content,0,t.openStart,r),r,t.openEnd))}}let c=e.steps.length;for(let r=o.length-1;r>=0&&(e.replace(n,i,t),!(e.steps.length>c));r--){let e=o[r];e<0||(n=a.before(e),i=s.after(e))}}(this,e,n,i),this}replaceRangeWith(e,n,i){return function(e,n,i,t){if(!t.isInline&&n==i&&e.doc.resolve(n).parent.content.size){let a=function(e,n,i){let t=e.resolve(n);if(t.parent.canReplaceWith(t.index(),t.index(),i))return n;if(0==t.parentOffset)for(let e=t.depth-1;e>=0;e--){let n=t.index(e);if(t.node(e).canReplaceWith(n,n,i))return t.before(e+1);if(n>0)return null}if(t.parentOffset==t.parent.content.size)for(let e=t.depth-1;e>=0;e--){let n=t.indexAfter(e);if(t.node(e).canReplaceWith(n,n,i))return t.after(e+1);if(n<t.node(e).childCount)return null}return null}(e.doc,n,t.type);null!=a&&(n=i=a)}e.replaceRange(n,i,new H(D.from(t),0,0))}(this,e,n,i),this}deleteRange(e,n){return function(e,n,i){let t=e.doc.resolve(n),a=e.doc.resolve(i),s=On(t,a);for(let n=0;n<s.length;n++){let i=s[n],o=n==s.length-1;if(o&&0==i||t.node(i).type.contentMatch.validEnd)return e.delete(t.start(i),a.end(i));if(i>0&&(o||t.node(i-1).canReplace(t.index(i-1),a.indexAfter(i-1))))return e.delete(t.before(i),a.after(i))}for(let s=1;s<=t.depth&&s<=a.depth;s++)if(n-t.start(s)==t.depth-s&&i>t.end(s)&&a.end(s)-i!=a.depth-s&&t.start(s-1)==a.start(s-1)&&t.node(s-1).canReplace(t.index(s-1),a.index(s-1)))return e.delete(t.before(s),i);e.delete(n,i)}(this,e,n),this}lift(e,n){return function(e,n,i){let{$from:t,$to:a,depth:s}=n,o=t.before(s+1),r=a.after(s+1),f=o,d=r,l=D.empty,c=0;for(let e=s,n=!1;e>i;e--)n||t.index(e)>0?(n=!0,l=D.from(t.node(e).copy(l)),c++):f--;let u=D.empty,h=0;for(let e=s,n=!1;e>i;e--)n||a.after(e+1)<a.end(e)?(n=!0,u=D.from(a.node(e).copy(u)),h++):d++;e.step(new an(f,d,o,r,new H(l.append(u),c,h),l.size-c,!0))}(this,e,n),this}join(e,n=1){return function(e,n,i){let t=null,{linebreakReplacement:a}=e.doc.type.schema,s=e.doc.resolve(n-i),o=s.node().type;if(a&&o.inlineContent){let e="pre"==o.whitespace,n=!!o.contentMatch.matchType(a);e&&!n?t=!1:!e&&n&&(t=!0)}let r=e.steps.length;if(!1===t){let t=e.doc.resolve(n+i);un(e,t.node(),t.before(),r)}o.inlineContent&&on(e,n+i-1,o,s.node().contentMatchAt(s.index()),null==t);let f=e.mapping.slice(r),d=f.map(n-i);if(e.step(new tn(d,f.map(n+i,-1),H.empty,!0)),!0===t){let n=e.doc.resolve(d);cn(e,n.node(),n.before(),e.steps.length)}}(this,e,n),this}wrap(e,n){return function(e,n,i){let t=D.empty;for(let e=i.length-1;e>=0;e--){if(t.size){let n=i[e].type.contentMatch.matchFragment(t);if(!n||!n.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}t=D.from(i[e].type.create(i[e].attrs,t))}let a=n.start,s=n.end;e.step(new an(a,s,a,s,new H(t,0,0),i.length,!0))}(this,e,n),this}setBlockType(e,n=e,i,t=null){return function(e,n,i,t,a){if(!t.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=e.steps.length;e.doc.nodesBetween(n,i,((n,i)=>{let o="function"==typeof a?a(n):a;if(n.isTextblock&&!n.hasMarkup(t,o)&&function(e,n,i){let t=e.resolve(n),a=t.index();return t.parent.canReplaceWith(a,a+1,i)}(e.doc,e.mapping.slice(s).map(i),t)){let a=null;if(t.schema.linebreakReplacement){let e="pre"==t.whitespace,n=!!t.contentMatch.matchType(t.schema.linebreakReplacement);e&&!n?a=!1:!e&&n&&(a=!0)}!1===a&&un(e,n,i,s),on(e,e.mapping.slice(s).map(i,1),t,void 0,null===a);let r=e.mapping.slice(s),f=r.map(i,1),d=r.map(i+n.nodeSize,1);return e.step(new an(f,d,f+1,d-1,new H(D.from(t.create(o,null,n.marks)),0,0),1,!0)),!0===a&&cn(e,n,i,s),!1}}))}(this,e,n,i,t),this}setNodeMarkup(e,n,i=null,t){return function(e,n,i,t,a){let s=e.doc.nodeAt(n);if(!s)throw new RangeError("No node at given position");i||(i=s.type);let o=i.create(t,null,a||s.marks);if(s.isLeaf)return e.replaceWith(n,n+s.nodeSize,o);if(!i.validContent(s.content))throw new RangeError("Invalid content for node type "+i.name);e.step(new an(n,n+s.nodeSize,n+1,n+s.nodeSize-1,new H(D.from(o),0,0),1,!0))}(this,e,n,i,t),this}setNodeAttribute(e,n,i){return this.step(new Tn(e,n,i)),this}setDocAttribute(e,n){return this.step(new En(e,n)),this}addNodeMark(e,n){return this.step(new en(e,n)),this}removeNodeMark(e,n){if(!(n instanceof L)){let i=this.doc.nodeAt(e);if(!i)throw new RangeError("No node at position "+e);if(!(n=n.isInSet(i.marks)))return this}return this.step(new nn(e,n)),this}split(e,n=1,i){return function(e,n,i=1,t){let a=e.doc.resolve(n),s=D.empty,o=D.empty;for(let e=a.depth,n=a.depth-i,r=i-1;e>n;e--,r--){s=D.from(a.node(e).copy(s));let n=t&&t[r];o=D.from(n?n.type.create(n.attrs,o):a.node(e).copy(o))}e.step(new tn(n,n,new H(s.append(o),i,i),!0))}(this,e,n,i),this}addMark(e,n,i){return function(e,n,i,t){let a,s,o=[],r=[];e.doc.nodesBetween(n,i,((e,f,d)=>{if(!e.isInline)return;let l=e.marks;if(!t.isInSet(l)&&d.type.allowsMarkType(t.type)){let d=Math.max(f,n),c=Math.min(f+e.nodeSize,i),u=t.addToSet(l);for(let e=0;e<l.length;e++)l[e].isInSet(u)||(a&&a.to==d&&a.mark.eq(l[e])?a.to=c:o.push(a=new Ze(d,c,l[e])));s&&s.to==d?s.to=c:r.push(s=new Xe(d,c,t))}})),o.forEach((n=>e.step(n))),r.forEach((n=>e.step(n)))}(this,e,n,i),this}removeMark(e,n,i){return function(e,n,i,t){let a=[],s=0;e.doc.nodesBetween(n,i,((e,o)=>{if(!e.isInline)return;s++;let r=null;if(t instanceof xe){let n,i=e.marks;for(;n=t.isInSet(i);)(r||(r=[])).push(n),i=n.removeFromSet(i)}else t?t.isInSet(e.marks)&&(r=[t]):r=e.marks;if(r&&r.length){let t=Math.min(o+e.nodeSize,i);for(let e=0;e<r.length;e++){let i,f=r[e];for(let e=0;e<a.length;e++){let n=a[e];n.step==s-1&&f.eq(a[e].style)&&(i=n)}i?(i.to=t,i.step=s):a.push({style:f,from:Math.max(o,n),to:t,step:s})}}})),a.forEach((n=>e.step(new Ze(n.from,n.to,n.style))))}(this,e,n,i),this}clearIncompatible(e,n,i){return on(this,e,n,i),this}}const Nn=Object.create(null);class jn{constructor(e,n,i){this.$anchor=e,this.$head=n,this.ranges=i||[new Rn(e.min(n),e.max(n))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let e=this.ranges;for(let n=0;n<e.length;n++)if(e[n].$from.pos!=e[n].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,n=H.empty){let i=n.content.lastChild,t=null;for(let e=0;e<n.openEnd;e++)t=i,i=i.lastChild;let a=e.steps.length,s=this.ranges;for(let o=0;o<s.length;o++){let{$from:r,$to:f}=s[o],d=e.mapping.slice(a);e.replaceRange(d.map(r.pos),d.map(f.pos),o?H.empty:n),0==o&&$n(e,a,(i?i.isInline:t&&t.isTextblock)?-1:1)}}replaceWith(e,n){let i=e.steps.length,t=this.ranges;for(let a=0;a<t.length;a++){let{$from:s,$to:o}=t[a],r=e.mapping.slice(i),f=r.map(s.pos),d=r.map(o.pos);a?e.deleteRange(f,d):(e.replaceRangeWith(f,d,n),$n(e,i,n.isInline?-1:1))}}static findFrom(e,n,i=!1){let t=e.parent.inlineContent?new Pn(e):Wn(e.node(0),e.parent,e.pos,e.index(),n,i);if(t)return t;for(let t=e.depth-1;t>=0;t--){let a=n<0?Wn(e.node(0),e.node(t),e.before(t+1),e.index(t),n,i):Wn(e.node(0),e.node(t),e.after(t+1),e.index(t)+1,n,i);if(a)return a}return null}static near(e,n=1){return this.findFrom(e,n)||this.findFrom(e,-n)||new Hn(e.node(0))}static atStart(e){return Wn(e,e,0,0,1)||new Hn(e)}static atEnd(e){return Wn(e,e,e.content.size,e.childCount,-1)||new Hn(e)}static fromJSON(e,n){if(!n||!n.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=Nn[n.type];if(!i)throw new RangeError(`No selection type ${n.type} defined`);return i.fromJSON(e,n)}static jsonID(e,n){if(e in Nn)throw new RangeError("Duplicate use of selection JSON ID "+e);return Nn[e]=n,n.prototype.jsonID=e,n}getBookmark(){return Pn.between(this.$anchor,this.$head).getBookmark()}}jn.prototype.visible=!0;class Rn{constructor(e,n){this.$from=e,this.$to=n}}let Dn=!1;function zn(e){!Dn&&!e.parent.inlineContent&&(Dn=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+e.parent.type.name+")"))}class Pn extends jn{constructor(e,n=e){zn(e),zn(n),super(e,n)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,n){let i=e.resolve(n.map(this.head));if(!i.parent.inlineContent)return jn.near(i);let t=e.resolve(n.map(this.anchor));return new Pn(t.parent.inlineContent?t:i,i)}replace(e,n=H.empty){if(super.replace(e,n),n==H.empty){let n=this.$from.marksAcross(this.$to);n&&e.ensureMarks(n)}}eq(e){return e instanceof Pn&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new Bn(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,n){if("number"!=typeof n.anchor||"number"!=typeof n.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new Pn(e.resolve(n.anchor),e.resolve(n.head))}static create(e,n,i=n){let t=e.resolve(n);return new this(t,i==n?t:e.resolve(i))}static between(e,n,i){let t=e.pos-n.pos;if((!i||t)&&(i=t>=0?1:-1),!n.parent.inlineContent){let e=jn.findFrom(n,i,!0)||jn.findFrom(n,-i,!0);if(!e)return jn.near(n,i);n=e.$head}return e.parent.inlineContent||(0==t?e=n:(e=(jn.findFrom(e,-i,!0)||jn.findFrom(e,i,!0)).$anchor).pos<n.pos!=t<0&&(e=n)),new Pn(e,n)}}jn.jsonID("text",Pn);class Bn{constructor(e,n){this.anchor=e,this.head=n}map(e){return new Bn(e.map(this.anchor),e.map(this.head))}resolve(e){return Pn.between(e.resolve(this.anchor),e.resolve(this.head))}}class Ln extends jn{constructor(e){let n=e.nodeAfter,i=e.node(0).resolve(e.pos+n.nodeSize);super(e,i),this.node=n}map(e,n){let{deleted:i,pos:t}=n.mapResult(this.anchor),a=e.resolve(t);return i?jn.near(a):new Ln(a)}content(){return new H(D.from(this.node),0,0)}eq(e){return e instanceof Ln&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new In(this.anchor)}static fromJSON(e,n){if("number"!=typeof n.anchor)throw new RangeError("Invalid input for NodeSelection.fromJSON");return new Ln(e.resolve(n.anchor))}static create(e,n){return new Ln(e.resolve(n))}static isSelectable(e){return!e.isText&&!1!==e.type.spec.selectable}}Ln.prototype.visible=!1,jn.jsonID("node",Ln);class In{constructor(e){this.anchor=e}map(e){let{deleted:n,pos:i}=e.mapResult(this.anchor);return n?new Bn(i,i):new In(i)}resolve(e){let n=e.resolve(this.anchor),i=n.nodeAfter;return i&&Ln.isSelectable(i)?new Ln(n):jn.near(n)}}class Hn extends jn{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,n=H.empty){if(n==H.empty){e.delete(0,e.doc.content.size);let n=jn.atStart(e.doc);n.eq(e.selection)||e.setSelection(n)}else super.replace(e,n)}toJSON(){return{type:"all"}}static fromJSON(e){return new Hn(e)}map(e){return new Hn(e)}eq(e){return e instanceof Hn}getBookmark(){return qn}}jn.jsonID("all",Hn);const qn={map(){return this},resolve:e=>new Hn(e)};function Wn(e,n,i,t,a,s=!1){if(n.inlineContent)return Pn.create(e,i);for(let o=t-(a>0?0:1);a>0?o<n.childCount:o>=0;o+=a){let t=n.child(o);if(t.isAtom){if(!s&&Ln.isSelectable(t))return Ln.create(e,i-(a<0?t.nodeSize:0))}else{let n=Wn(e,t,i+a,a<0?t.childCount:0,a,s);if(n)return n}i+=t.nodeSize*a}return null}function $n(e,n,i){let t=e.steps.length-1;if(t<n)return;let a,s=e.steps[t];(s instanceof tn||s instanceof an)&&(e.mapping.maps[t].forEach(((e,n,i,t)=>{null==a&&(a=t)})),e.setSelection(jn.near(e.doc.resolve(a),i)))}class Vn extends An{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=-3&(1|this.updated),this.storedMarks=null,this}get selectionSet(){return(1&this.updated)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=2,this}ensureMarks(e){return L.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(2&this.updated)>0}addStep(e,n){super.addStep(e,n),this.updated=-3&this.updated,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,n=!0){let i=this.selection;return n&&(e=e.mark(this.storedMarks||(i.empty?i.$from.marks():i.$from.marksAcross(i.$to)||L.none))),i.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,n,i){let t=this.doc.type.schema;if(null==n)return e?this.replaceSelectionWith(t.text(e),!0):this.deleteSelection();{if(null==i&&(i=n),i=i??n,!e)return this.deleteRange(n,i);let a=this.storedMarks;if(!a){let e=this.doc.resolve(n);a=i==n?e.marks():e.marksAcross(this.doc.resolve(i))}return this.replaceRangeWith(n,i,t.text(e,a)),this.selection.empty||this.setSelection(jn.near(this.selection.$to)),this}}setMeta(e,n){return this.meta["string"==typeof e?e:e.key]=n,this}getMeta(e){return this.meta["string"==typeof e?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=4,this}get scrolledIntoView(){return(4&this.updated)>0}}function Un(e,n){return n&&e?e.bind(n):e}class Gn{constructor(e,n,i){this.name=e,this.init=Un(n.init,i),this.apply=Un(n.apply,i)}}const Kn=[new Gn("doc",{init:e=>e.doc||e.schema.topNodeType.createAndFill(),apply:e=>e.doc}),new Gn("selection",{init:(e,n)=>e.selection||jn.atStart(n.doc),apply:e=>e.selection}),new Gn("storedMarks",{init:e=>e.storedMarks||null,apply:(e,n,i,t)=>t.selection.$cursor?e.storedMarks:null}),new Gn("scrollToSelection",{init:()=>0,apply:(e,n)=>e.scrolledIntoView?n+1:n})];class Jn{constructor(e,n){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=Kn.slice(),n&&n.forEach((e=>{if(this.pluginsByKey[e.key])throw new RangeError("Adding different instances of a keyed plugin ("+e.key+")");this.plugins.push(e),this.pluginsByKey[e.key]=e,e.spec.state&&this.fields.push(new Gn(e.key,e.spec.state,e))}))}}class Yn{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,n=-1){for(let i=0;i<this.config.plugins.length;i++)if(i!=n){let n=this.config.plugins[i];if(n.spec.filterTransaction&&!n.spec.filterTransaction.call(n,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let n=[e],i=this.applyInner(e),t=null;for(;;){let a=!1;for(let s=0;s<this.config.plugins.length;s++){let o=this.config.plugins[s];if(o.spec.appendTransaction){let r=t?t[s].n:0,f=t?t[s].state:this,d=r<n.length&&o.spec.appendTransaction.call(o,r?n.slice(r):n,f,i);if(d&&i.filterTransaction(d,s)){if(d.setMeta("appendedTransaction",e),!t){t=[];for(let e=0;e<this.config.plugins.length;e++)t.push(e<s?{state:i,n:n.length}:{state:this,n:0})}n.push(d),i=i.applyInner(d),a=!0}t&&(t[s]={state:i,n:n.length})}}if(!a)return{state:i,transactions:n}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let n=new Yn(this.config),i=this.config.fields;for(let t=0;t<i.length;t++){let a=i[t];n[a.name]=a.apply(e,this[a.name],this,n)}return n}get tr(){return new Vn(this)}static create(e){let n=new Jn(e.doc?e.doc.type.schema:e.schema,e.plugins),i=new Yn(n);for(let t=0;t<n.fields.length;t++)i[n.fields[t].name]=n.fields[t].init(e,i);return i}reconfigure(e){let n=new Jn(this.schema,e.plugins),i=n.fields,t=new Yn(n);for(let n=0;n<i.length;n++){let a=i[n].name;t[a]=this.hasOwnProperty(a)?this[a]:i[n].init(e,t)}return t}toJSON(e){let n={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(n.storedMarks=this.storedMarks.map((e=>e.toJSON()))),e&&"object"==typeof e)for(let i in e){if("doc"==i||"selection"==i)throw new RangeError("The JSON fields `doc` and `selection` are reserved");let t=e[i],a=t.spec.state;a&&a.toJSON&&(n[i]=a.toJSON.call(t,this[t.key]))}return n}static fromJSON(e,n,i){if(!n)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let t=new Jn(e.schema,e.plugins),a=new Yn(t);return t.fields.forEach((t=>{if("doc"==t.name)a.doc=se.fromJSON(e.schema,n.doc);else if("selection"==t.name)a.selection=jn.fromJSON(a.doc,n.selection);else if("storedMarks"==t.name)n.storedMarks&&(a.storedMarks=n.storedMarks.map(e.schema.markFromJSON));else{if(i)for(let s in i){let o=i[s],r=o.spec.state;if(o.key==t.name&&r&&r.fromJSON&&Object.prototype.hasOwnProperty.call(n,s))return void(a[t.name]=r.fromJSON.call(o,e,n[s],a))}a[t.name]=t.init(e,a)}})),a}}function Qn(e,n,i){for(let t in e){let a=e[t];a instanceof Function?a=a.bind(n):"handleDOMEvents"==t&&(a=Qn(a,n,{})),i[t]=a}return i}class Xn{constructor(e){this.spec=e,this.props={},e.props&&Qn(e.props,this,this.props),this.key=e.key?e.key.key:ei("plugin")}getState(e){return e[this.key]}}const Zn=Object.create(null);function ei(e){return e in Zn?e+"$"+ ++Zn[e]:(Zn[e]=0,e+"$")}class ni{constructor(e="key"){this.key=ei(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}const ii=function(e){for(var n=0;;n++)if(!(e=e.previousSibling))return n},ti=function(e){let n=e.assignedSlot||e.parentNode;return n&&11==n.nodeType?n.host:n};let ai=null;const si=function(e,n,i){let t=ai||(ai=document.createRange());return t.setEnd(e,i??e.nodeValue.length),t.setStart(e,n||0),t},oi=function(e,n,i,t){return i&&(fi(e,n,i,t,-1)||fi(e,n,i,t,1))},ri=/^(img|br|input|textarea|hr)$/i;function fi(e,n,i,t,a){for(;;){if(e==i&&n==t)return!0;if(n==(a<0?0:di(e))){let i=e.parentNode;if(!i||1!=i.nodeType||li(e)||ri.test(e.nodeName)||"false"==e.contentEditable)return!1;n=ii(e)+(a<0?0:1),e=i}else{if(1!=e.nodeType)return!1;if("false"==(e=e.childNodes[n+(a<0?-1:0)]).contentEditable)return!1;n=a<0?di(e):0}}}function di(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function li(e){let n;for(let i=e;i&&!(n=i.pmViewDesc);i=i.parentNode);return n&&n.node&&n.node.isBlock&&(n.dom==e||n.contentDOM==e)}const ci=function(e){return e.focusNode&&oi(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)};function ui(e,n){let i=document.createEvent("Event");return i.initEvent("keydown",!0,!0),i.keyCode=e,i.key=i.code=n,i}const hi=typeof navigator<"u"?navigator:null,mi=typeof document<"u"?document:null,pi=hi&&hi.userAgent||"",vi=/Edge\/(\d+)/.exec(pi),gi=/MSIE \d/.exec(pi),ki=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(pi),yi=!!(gi||ki||vi),wi=gi?document.documentMode:ki?+ki[1]:vi?+vi[1]:0,bi=!yi&&/gecko\/(\d+)/i.test(pi);bi&&(/Firefox\/(\d+)/.exec(pi)||[0,0])[1];const _i=!yi&&/Chrome\/(\d+)/.exec(pi),xi=!!_i,Si=_i?+_i[1]:0,Ci=!yi&&!!hi&&/Apple Computer/.test(hi.vendor),Mi=Ci&&(/Mobile\/\w+/.test(pi)||!!hi&&hi.maxTouchPoints>2),Oi=Mi||!!hi&&/Mac/.test(hi.platform),Ti=!!hi&&/Win/.test(hi.platform),Ei=/Android \d/.test(pi),Fi=!!mi&&"webkitFontSmoothing"in mi.documentElement.style,Ai=Fi?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Ni(e){let n=e.defaultView&&e.defaultView.visualViewport;return n?{left:0,right:n.width,top:0,bottom:n.height}:{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function ji(e,n){return"number"==typeof e?e:e[n]}function Ri(e){let n=e.getBoundingClientRect(),i=n.width/e.offsetWidth||1,t=n.height/e.offsetHeight||1;return{left:n.left,right:n.left+e.clientWidth*i,top:n.top,bottom:n.top+e.clientHeight*t}}function Di(e,n,i){let t=e.someProp("scrollThreshold")||0,a=e.someProp("scrollMargin")||5,s=e.dom.ownerDocument;for(let o=i||e.dom;o;){if(1!=o.nodeType){o=ti(o);continue}let e=o,i=e==s.body,r=i?Ni(s):Ri(e),f=0,d=0;if(n.top<r.top+ji(t,"top")?d=-(r.top-n.top+ji(a,"top")):n.bottom>r.bottom-ji(t,"bottom")&&(d=n.bottom-n.top>r.bottom-r.top?n.top+ji(a,"top")-r.top:n.bottom-r.bottom+ji(a,"bottom")),n.left<r.left+ji(t,"left")?f=-(r.left-n.left+ji(a,"left")):n.right>r.right-ji(t,"right")&&(f=n.right-r.right+ji(a,"right")),f||d)if(i)s.defaultView.scrollBy(f,d);else{let i=e.scrollLeft,t=e.scrollTop;d&&(e.scrollTop+=d),f&&(e.scrollLeft+=f);let a=e.scrollLeft-i,s=e.scrollTop-t;n={left:n.left-a,top:n.top-s,right:n.right-a,bottom:n.bottom-s}}let l=i?"fixed":getComputedStyle(o).position;if(/^(fixed|sticky)$/.test(l))break;o="absolute"==l?o.offsetParent:ti(o)}}function zi(e){let n=[],i=e.ownerDocument;for(let t=e;t&&(n.push({dom:t,top:t.scrollTop,left:t.scrollLeft}),e!=i);t=ti(t));return n}function Pi(e,n){for(let i=0;i<e.length;i++){let{dom:t,top:a,left:s}=e[i];t.scrollTop!=a+n&&(t.scrollTop=a+n),t.scrollLeft!=s&&(t.scrollLeft=s)}}let Bi=null;function Li(e,n){let i,t,a,s,o=2e8,r=0,f=n.top,d=n.top;for(let l=e.firstChild,c=0;l;l=l.nextSibling,c++){let e;if(1==l.nodeType)e=l.getClientRects();else{if(3!=l.nodeType)continue;e=si(l).getClientRects()}for(let u=0;u<e.length;u++){let h=e[u];if(h.top<=f&&h.bottom>=d){f=Math.max(h.bottom,f),d=Math.min(h.top,d);let e=h.left>n.left?h.left-n.left:h.right<n.left?n.left-h.right:0;if(e<o){i=l,o=e,t=e&&3==i.nodeType?{left:h.right<n.left?h.right:h.left,top:n.top}:n,1==l.nodeType&&e&&(r=c+(n.left>=(h.left+h.right)/2?1:0));continue}}else h.top>n.top&&!a&&h.left<=n.left&&h.right>=n.left&&(a=l,s={left:Math.max(h.left,Math.min(h.right,n.left)),top:h.top});!i&&(n.left>=h.right&&n.top>=h.top||n.left>=h.left&&n.top>=h.bottom)&&(r=c+1)}}return!i&&a&&(i=a,t=s,o=0),i&&3==i.nodeType?function(e,n){let i=e.nodeValue.length,t=document.createRange();for(let a=0;a<i;a++){t.setEnd(e,a+1),t.setStart(e,a);let i=$i(t,1);if(i.top!=i.bottom&&Ii(n,i))return{node:e,offset:a+(n.left>=(i.left+i.right)/2?1:0)}}return{node:e,offset:0}}(i,t):!i||o&&1==i.nodeType?{node:e,offset:r}:Li(i,t)}function Ii(e,n){return e.left>=n.left-1&&e.left<=n.right+1&&e.top>=n.top-1&&e.top<=n.bottom+1}function Hi(e,n,i){let t=e.childNodes.length;if(t&&i.top<i.bottom)for(let a=Math.max(0,Math.min(t-1,Math.floor(t*(n.top-i.top)/(i.bottom-i.top))-2)),s=a;;){let i=e.childNodes[s];if(1==i.nodeType){let e=i.getClientRects();for(let t=0;t<e.length;t++){let a=e[t];if(Ii(n,a))return Hi(i,n,a)}}if((s=(s+1)%t)==a)break}return e}function qi(e,n){let i,t=e.dom.ownerDocument,a=0,s=function(e,n,i){if(e.caretPositionFromPoint)try{let t=e.caretPositionFromPoint(n,i);if(t)return{node:t.offsetNode,offset:Math.min(di(t.offsetNode),t.offset)}}catch{}if(e.caretRangeFromPoint){let t=e.caretRangeFromPoint(n,i);if(t)return{node:t.startContainer,offset:Math.min(di(t.startContainer),t.startOffset)}}}(t,n.left,n.top);s&&({node:i,offset:a}=s);let o,r=(e.root.elementFromPoint?e.root:t).elementFromPoint(n.left,n.top);if(!r||!e.dom.contains(1!=r.nodeType?r.parentNode:r)){let i=e.dom.getBoundingClientRect();if(!Ii(n,i)||(r=Hi(e.dom,n,i),!r))return null}if(Ci)for(let e=r;i&&e;e=ti(e))e.draggable&&(i=void 0);if(r=function(e,n){let i=e.parentNode;return i&&/^li$/i.test(i.nodeName)&&n.left<e.getBoundingClientRect().left?i:e}(r,n),i){if(bi&&1==i.nodeType&&(a=Math.min(a,i.childNodes.length),a<i.childNodes.length)){let e,t=i.childNodes[a];"IMG"==t.nodeName&&(e=t.getBoundingClientRect()).right<=n.left&&e.bottom>n.top&&a++}let t;Fi&&a&&1==i.nodeType&&1==(t=i.childNodes[a-1]).nodeType&&"false"==t.contentEditable&&t.getBoundingClientRect().top>=n.top&&a--,i==e.dom&&a==i.childNodes.length-1&&1==i.lastChild.nodeType&&n.top>i.lastChild.getBoundingClientRect().bottom?o=e.state.doc.content.size:(0==a||1!=i.nodeType||"BR"!=i.childNodes[a-1].nodeName)&&(o=function(e,n,i,t){let a=-1;for(let i=n,s=!1;i!=e.dom;){let n,o=e.docView.nearestDesc(i,!0);if(!o)return null;if(1==o.dom.nodeType&&(o.node.isBlock&&o.parent||!o.contentDOM)&&((n=o.dom.getBoundingClientRect()).width||n.height)&&(o.node.isBlock&&o.parent&&(!s&&n.left>t.left||n.top>t.top?a=o.posBefore:(!s&&n.right<t.left||n.bottom<t.top)&&(a=o.posAfter),s=!0),!o.contentDOM&&a<0&&!o.node.isText))return(o.node.isBlock?t.top<(n.top+n.bottom)/2:t.left<(n.left+n.right)/2)?o.posBefore:o.posAfter;i=o.dom.parentNode}return a>-1?a:e.docView.posFromDOM(n,i,-1)}(e,i,a,n))}null==o&&(o=function(e,n,i){let{node:t,offset:a}=Li(n,i),s=-1;if(1==t.nodeType&&!t.firstChild){let e=t.getBoundingClientRect();s=e.left!=e.right&&i.left>(e.left+e.right)/2?1:-1}return e.docView.posFromDOM(t,a,s)}(e,r,n));let f=e.docView.nearestDesc(r,!0);return{pos:o,inside:f?f.posAtStart-f.border:-1}}function Wi(e){return e.top<e.bottom||e.left<e.right}function $i(e,n){let i=e.getClientRects();if(i.length){let e=i[n<0?0:i.length-1];if(Wi(e))return e}return Array.prototype.find.call(i,Wi)||e.getBoundingClientRect()}const Vi=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Ui(e,n,i){let{node:t,offset:a,atom:s}=e.docView.domFromPos(n,i<0?-1:1),o=Fi||bi;if(3==t.nodeType){if(!o||!Vi.test(t.nodeValue)&&(i<0?a:a!=t.nodeValue.length)){let e=a,n=a,s=i<0?1:-1;return i<0&&!a?(n++,s=-1):i>=0&&a==t.nodeValue.length?(e--,s=1):i<0?e--:n++,Gi($i(si(t,e,n),s),s<0)}{let e=$i(si(t,a,a),i);if(bi&&a&&/\s/.test(t.nodeValue[a-1])&&a<t.nodeValue.length){let n=$i(si(t,a-1,a-1),-1);if(n.top==e.top){let i=$i(si(t,a,a+1),-1);if(i.top!=e.top)return Gi(i,i.left<n.left)}}return e}}if(!e.state.doc.resolve(n-(s||0)).parent.inlineContent){if(null==s&&a&&(i<0||a==di(t))){let e=t.childNodes[a-1];if(1==e.nodeType)return Ki(e.getBoundingClientRect(),!1)}if(null==s&&a<di(t)){let e=t.childNodes[a];if(1==e.nodeType)return Ki(e.getBoundingClientRect(),!0)}return Ki(t.getBoundingClientRect(),i>=0)}if(null==s&&a&&(i<0||a==di(t))){let e=t.childNodes[a-1],n=3==e.nodeType?si(e,di(e)-(o?0:1)):1!=e.nodeType||"BR"==e.nodeName&&e.nextSibling?null:e;if(n)return Gi($i(n,1),!1)}if(null==s&&a<di(t)){let e=t.childNodes[a];for(;e.pmViewDesc&&e.pmViewDesc.ignoreForCoords;)e=e.nextSibling;let n=e?3==e.nodeType?si(e,0,o?0:1):1==e.nodeType?e:null:null;if(n)return Gi($i(n,-1),!0)}return Gi($i(3==t.nodeType?si(t):t,-i),i>=0)}function Gi(e,n){if(0==e.width)return e;let i=n?e.left:e.right;return{top:e.top,bottom:e.bottom,left:i,right:i}}function Ki(e,n){if(0==e.height)return e;let i=n?e.top:e.bottom;return{top:i,bottom:i,left:e.left,right:e.right}}function Ji(e,n,i){let t=e.state,a=e.root.activeElement;t!=n&&e.updateState(n),a!=e.dom&&e.focus();try{return i()}finally{t!=n&&e.updateState(t),a!=e.dom&&a&&a.focus()}}const Yi=/[\u0590-\u08ac]/;let Qi=null,Xi=null,Zi=!1;function et(e,n,i){return Qi==n&&Xi==i?Zi:(Qi=n,Xi=i,Zi="up"==i||"down"==i?function(e,n,i){let t=n.selection,a="up"==i?t.$from:t.$to;return Ji(e,n,(()=>{let{node:n}=e.docView.domFromPos(a.pos,"up"==i?-1:1);for(;;){let i=e.docView.nearestDesc(n,!0);if(!i)break;if(i.node.isBlock){n=i.contentDOM||i.dom;break}n=i.dom.parentNode}let t=Ui(e,a.pos,1);for(let e=n.firstChild;e;e=e.nextSibling){let n;if(1==e.nodeType)n=e.getClientRects();else{if(3!=e.nodeType)continue;n=si(e,0,e.nodeValue.length).getClientRects()}for(let e=0;e<n.length;e++){let a=n[e];if(a.bottom>a.top+1&&("up"==i?t.top-a.top>2*(a.bottom-t.top):a.bottom-t.bottom>2*(t.bottom-a.top)))return!1}}return!0}))}(e,n,i):function(e,n,i){let{$head:t}=n.selection;if(!t.parent.isTextblock)return!1;let a=t.parentOffset,s=!a,o=a==t.parent.content.size,r=e.domSelection();return r?Yi.test(t.parent.textContent)&&r.modify?Ji(e,n,(()=>{let{focusNode:n,focusOffset:a,anchorNode:s,anchorOffset:o}=e.domSelectionRange(),f=r.caretBidiLevel;r.modify("move",i,"character");let d=t.depth?e.docView.domAfterPos(t.before()):e.dom,{focusNode:l,focusOffset:c}=e.domSelectionRange(),u=l&&!d.contains(1==l.nodeType?l:l.parentNode)||n==l&&a==c;try{r.collapse(s,o),n&&(n!=s||a!=o)&&r.extend&&r.extend(n,a)}catch{}return null!=f&&(r.caretBidiLevel=f),u})):"left"==i||"backward"==i?s:o:t.pos==t.start()||t.pos==t.end()}(e,n,i))}class nt{constructor(e,n,i,t){this.parent=e,this.children=n,this.dom=i,this.contentDOM=t,this.dirty=0,i.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,n,i){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let n=0;n<this.children.length;n++)e+=this.children[n].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let n=0,i=this.posAtStart;;n++){let t=this.children[n];if(t==e)return i;i+=t.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(e,n,i){if(this.contentDOM&&this.contentDOM.contains(1==e.nodeType?e:e.parentNode)){if(i<0){let i,t;if(e==this.contentDOM)i=e.childNodes[n-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.previousSibling}for(;i&&(!(t=i.pmViewDesc)||t.parent!=this);)i=i.previousSibling;return i?this.posBeforeChild(t)+t.size:this.posAtStart}{let i,t;if(e==this.contentDOM)i=e.childNodes[n];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.nextSibling}for(;i&&(!(t=i.pmViewDesc)||t.parent!=this);)i=i.nextSibling;return i?this.posBeforeChild(t):this.posAtEnd}}let t;if(e==this.dom&&this.contentDOM)t=n>ii(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))t=2&e.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==n)for(let n=e;;n=n.parentNode){if(n==this.dom){t=!1;break}if(n.previousSibling)break}if(null==t&&n==e.childNodes.length)for(let n=e;;n=n.parentNode){if(n==this.dom){t=!0;break}if(n.nextSibling)break}}return t??i>0?this.posAtEnd:this.posAtStart}nearestDesc(e,n=!1){for(let i=!0,t=e;t;t=t.parentNode){let a,s=this.getDesc(t);if(s&&(!n||s.node)){if(!i||!(a=s.nodeDOM)||(1==a.nodeType?a.contains(1==e.nodeType?e:e.parentNode):a==e))return s;i=!1}}}getDesc(e){let n=e.pmViewDesc;for(let e=n;e;e=e.parent)if(e==this)return n}posFromDOM(e,n,i){for(let t=e;t;t=t.parentNode){let a=this.getDesc(t);if(a)return a.localPosFromDOM(e,n,i)}return-1}descAt(e){for(let n=0,i=0;n<this.children.length;n++){let t=this.children[n],a=i+t.size;if(i==e&&a!=i){for(;!t.border&&t.children.length;)for(let e=0;e<t.children.length;e++){let n=t.children[e];if(n.size){t=n;break}}return t}if(e<a)return t.descAt(e-i-t.border);i=a}}domFromPos(e,n){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let i=0,t=0;for(let n=0;i<this.children.length;i++){let a=this.children[i],s=n+a.size;if(s>e||a instanceof ft){t=e-n;break}n=s}if(t)return this.children[i].domFromPos(t-this.children[i].border,n);for(let e;i&&!(e=this.children[i-1]).size&&e instanceof it&&e.side>=0;i--);if(n<=0){let e,t=!0;for(;e=i?this.children[i-1]:null,e&&e.dom.parentNode!=this.contentDOM;i--,t=!1);return e&&n&&t&&!e.border&&!e.domAtom?e.domFromPos(e.size,n):{node:this.contentDOM,offset:e?ii(e.dom)+1:0}}{let e,t=!0;for(;e=i<this.children.length?this.children[i]:null,e&&e.dom.parentNode!=this.contentDOM;i++,t=!1);return e&&t&&!e.border&&!e.domAtom?e.domFromPos(0,n):{node:this.contentDOM,offset:e?ii(e.dom):this.contentDOM.childNodes.length}}}parseRange(e,n,i=0){if(0==this.children.length)return{node:this.contentDOM,from:e,to:n,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let t=-1,a=-1;for(let s=i,o=0;;o++){let i=this.children[o],r=s+i.size;if(-1==t&&e<=r){let a=s+i.border;if(e>=a&&n<=r-i.border&&i.node&&i.contentDOM&&this.contentDOM.contains(i.contentDOM))return i.parseRange(e,n,a);e=s;for(let n=o;n>0;n--){let i=this.children[n-1];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(1)){t=ii(i.dom)+1;break}e-=i.size}-1==t&&(t=0)}if(t>-1&&(r>n||o==this.children.length-1)){n=r;for(let e=o+1;e<this.children.length;e++){let i=this.children[e];if(i.size&&i.dom.parentNode==this.contentDOM&&!i.emptyChildAt(-1)){a=ii(i.dom);break}n+=i.size}-1==a&&(a=this.contentDOM.childNodes.length);break}s=r}return{node:this.contentDOM,from:e,to:n,fromOffset:t,toOffset:a}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let n=this.children[e<0?0:this.children.length-1];return 0==n.size||n.emptyChildAt(e)}domAfterPos(e){let{node:n,offset:i}=this.domFromPos(e,0);if(1!=n.nodeType||i==n.childNodes.length)throw new RangeError("No node after pos "+e);return n.childNodes[i]}setSelection(e,n,i,t=!1){let a=Math.min(e,n),s=Math.max(e,n);for(let o=0,r=0;o<this.children.length;o++){let f=this.children[o],d=r+f.size;if(a>r&&s<d)return f.setSelection(e-r-f.border,n-r-f.border,i,t);r=d}let o=this.domFromPos(e,e?-1:1),r=n==e?o:this.domFromPos(n,n?-1:1),f=i.root.getSelection(),d=i.domSelectionRange(),l=!1;if((bi||Ci)&&e==n){let{node:e,offset:n}=o;if(3==e.nodeType){if(l=!(!n||"\n"!=e.nodeValue[n-1]),l&&n==e.nodeValue.length)for(let n,i=e;i;i=i.parentNode){if(n=i.nextSibling){"BR"==n.nodeName&&(o=r={node:n.parentNode,offset:ii(n)+1});break}let e=i.pmViewDesc;if(e&&e.node&&e.node.isBlock)break}}else{let i=e.childNodes[n-1];l=i&&("BR"==i.nodeName||"false"==i.contentEditable)}}if(bi&&d.focusNode&&d.focusNode!=r.node&&1==d.focusNode.nodeType){let e=d.focusNode.childNodes[d.focusOffset];e&&"false"==e.contentEditable&&(t=!0)}if(!(t||l&&Ci)&&oi(o.node,o.offset,d.anchorNode,d.anchorOffset)&&oi(r.node,r.offset,d.focusNode,d.focusOffset))return;let c=!1;if((f.extend||e==n)&&!l){f.collapse(o.node,o.offset);try{e!=n&&f.extend(r.node,r.offset),c=!0}catch{}}if(!c){if(e>n){let e=o;o=r,r=e}let i=document.createRange();i.setEnd(r.node,r.offset),i.setStart(o.node,o.offset),f.removeAllRanges(),f.addRange(i)}}ignoreMutation(e){return!this.contentDOM&&"selection"!=e.type}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,n){for(let i=0,t=0;t<this.children.length;t++){let a=this.children[t],s=i+a.size;if(i==s?e<=s&&n>=i:e<s&&n>i){let t=i+a.border,o=s-a.border;if(e>=t&&n<=o)return this.dirty=e==i||n==s?2:1,void(e!=t||n!=o||!a.contentLost&&a.dom.parentNode==this.contentDOM?a.markDirty(e-t,n-t):a.dirty=3);a.dirty=a.dom!=a.contentDOM||a.dom.parentNode!=this.contentDOM||a.children.length?3:2}i=s}this.dirty=2}markParentsDirty(){let e=1;for(let n=this.parent;n;n=n.parent,e++){let i=1==e?2:1;n.dirty<i&&(n.dirty=i)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(e){return!1}}class it extends nt{constructor(e,n,i,t){let a,s=n.type.toDOM;if("function"==typeof s&&(s=s(i,(()=>a?a.parent?a.parent.posBeforeChild(a):void 0:t))),!n.type.spec.raw){if(1!=s.nodeType){let e=document.createElement("span");e.appendChild(s),s=e}s.contentEditable="false",s.classList.add("ProseMirror-widget")}super(e,[],s,null),this.widget=n,this.widget=n,a=this}matchesWidget(e){return 0==this.dirty&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let n=this.widget.spec.stopEvent;return!!n&&n(e)}ignoreMutation(e){return"selection"!=e.type||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class tt extends nt{constructor(e,n,i,t){super(e,[],n,null),this.textDOM=i,this.text=t}get size(){return this.text.length}localPosFromDOM(e,n){return e!=this.textDOM?this.posAtStart+(n?this.size:0):this.posAtStart+n}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return"characterData"===e.type&&e.target.nodeValue==e.oldValue}}class at extends nt{constructor(e,n,i,t,a){super(e,[],i,t),this.mark=n,this.spec=a}static create(e,n,i,t){let a=t.nodeViews[n.type.name],s=a&&a(n,t,i);return(!s||!s.dom)&&(s=ze.renderSpec(document,n.type.spec.toDOM(n,i),null,n.attrs)),new at(e,n,s.dom,s.contentDOM||s.dom,s)}parseRule(){return 3&this.dirty||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return 3!=this.dirty&&this.mark.eq(e)}markDirty(e,n){if(super.markDirty(e,n),0!=this.dirty){let e=this.parent;for(;!e.node;)e=e.parent;e.dirty<this.dirty&&(e.dirty=this.dirty),this.dirty=0}}slice(e,n,i){let t=at.create(this.parent,this.mark,!0,i),a=this.children,s=this.size;n<s&&(a=bt(a,n,s,i)),e>0&&(a=bt(a,0,e,i));for(let e=0;e<a.length;e++)a[e].parent=t;return t.children=a,t}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}}class st extends nt{constructor(e,n,i,t,a,s,o,r,f){super(e,[],a,s),this.node=n,this.outerDeco=i,this.innerDeco=t,this.nodeDOM=o}static create(e,n,i,t,a,s){let o,r=a.nodeViews[n.type.name],f=r&&r(n,a,(()=>o?o.parent?o.parent.posBeforeChild(o):void 0:s),i,t),d=f&&f.dom,l=f&&f.contentDOM;if(n.isText)if(d){if(3!=d.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else d=document.createTextNode(n.text);else d||({dom:d,contentDOM:l}=ze.renderSpec(document,n.type.spec.toDOM(n),null,n.attrs));!l&&!n.isText&&"BR"!=d.nodeName&&(d.hasAttribute("contenteditable")||(d.contentEditable="false"),n.type.spec.draggable&&(d.draggable=!0));let c=d;return d=vt(d,i,n),f?o=new dt(e,n,i,t,d,l||null,c,f,a,s+1):n.isText?new rt(e,n,i,t,d,c,a):new st(e,n,i,t,d,l||null,c,a,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if("pre"==this.node.type.whitespace&&(e.preserveWhitespace="full"),this.contentDOM)if(this.contentLost){for(let n=this.children.length-1;n>=0;n--){let i=this.children[n];if(this.dom.contains(i.dom.parentNode)){e.contentElement=i.dom.parentNode;break}}e.contentElement||(e.getContent=()=>D.empty)}else e.contentElement=this.contentDOM;else e.getContent=()=>this.node.content;return e}matchesNode(e,n,i){return 0==this.dirty&&e.eq(this.node)&&gt(n,this.outerDeco)&&i.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,n){let i=this.node.inlineContent,t=n,a=e.composing?this.localCompositionInfo(e,n):null,s=a&&a.pos>-1?a:null,o=a&&a.pos<0,r=new yt(this,s&&s.node,e);(function(e,n,i,t){let a=n.locals(e),s=0;if(0==a.length){for(let i=0;i<e.childCount;i++){let o=e.child(i);t(o,a,n.forChild(s,o),i),s+=o.nodeSize}return}let o=0,r=[],f=null;for(let d=0;;){let l,c,u,h;for(;o<a.length&&a[o].to==s;){let e=a[o++];e.widget&&(l?(c||(c=[l])).push(e):l=e)}if(l)if(c){c.sort(wt);for(let e=0;e<c.length;e++)i(c[e],d,!!f)}else i(l,d,!!f);if(f)h=-1,u=f,f=null;else{if(!(d<e.childCount))break;h=d,u=e.child(d++)}for(let e=0;e<r.length;e++)r[e].to<=s&&r.splice(e--,1);for(;o<a.length&&a[o].from<=s&&a[o].to>s;)r.push(a[o++]);let m=s+u.nodeSize;if(u.isText){let e=m;o<a.length&&a[o].from<e&&(e=a[o].from);for(let n=0;n<r.length;n++)r[n].to<e&&(e=r[n].to);e<m&&(f=u.cut(e-s),u=u.cut(0,e-s),m=e,h=-1)}else for(;o<a.length&&a[o].to<m;)o++;t(u,u.isInline&&!u.isLeaf?r.filter((e=>!e.inline)):r.slice(),n.forChild(s,u),h),s=m}})(this.node,this.innerDeco,((n,a,s)=>{n.spec.marks?r.syncToMarks(n.spec.marks,i,e):n.type.side>=0&&!s&&r.syncToMarks(a==this.node.childCount?L.none:this.node.child(a).marks,i,e),r.placeWidget(n,e,t)}),((n,s,f,d)=>{let l;r.syncToMarks(n.marks,i,e),r.findNodeMatch(n,s,f,d)||o&&e.state.selection.from>t&&e.state.selection.to<t+n.nodeSize&&(l=r.findIndexWithChild(a.node))>-1&&r.updateNodeAt(n,s,f,l,e)||r.updateNextNode(n,s,f,e,d,t)||r.addNode(n,s,f,e,t),t+=n.nodeSize})),r.syncToMarks([],i,e),this.node.isTextblock&&r.addTextblockHacks(),r.destroyRest(),(r.changed||2==this.dirty)&&(s&&this.protectLocalComposition(e,s),lt(this.contentDOM,this.children,e),Mi&&function(e){if("UL"==e.nodeName||"OL"==e.nodeName){let n=e.style.cssText;e.style.cssText=n+"; list-style: square !important",window.getComputedStyle(e).listStyle,e.style.cssText=n}}(this.dom))}localCompositionInfo(e,n){let{from:i,to:t}=e.state.selection;if(!(e.state.selection instanceof Pn)||i<n||t>n+this.node.content.size)return null;let a=e.input.compositionNode;if(!a||!this.dom.contains(a.parentNode))return null;if(this.node.inlineContent){let e=a.nodeValue,s=function(e,n,i,t){for(let a=0,s=0;a<e.childCount&&s<=t;){let o=e.child(a++),r=s;if(s+=o.nodeSize,!o.isText)continue;let f=o.text;for(;a<e.childCount;){let n=e.child(a++);if(s+=n.nodeSize,!n.isText)break;f+=n.text}if(s>=i){if(s>=t&&f.slice(t-n.length-r,t-r)==n)return t-n.length;let e=r<t?f.lastIndexOf(n,t-r-1):-1;if(e>=0&&e+n.length+r>=i)return r+e;if(i==t&&f.length>=t+n.length-r&&f.slice(t-r,t-r+n.length)==n)return t}}return-1}(this.node.content,e,i-n,t-n);return s<0?null:{node:a,pos:s,text:e}}return{node:a,pos:-1,text:""}}protectLocalComposition(e,{node:n,pos:i,text:t}){if(this.getDesc(n))return;let a=n;for(;a.parentNode!=this.contentDOM;a=a.parentNode){for(;a.previousSibling;)a.parentNode.removeChild(a.previousSibling);for(;a.nextSibling;)a.parentNode.removeChild(a.nextSibling);a.pmViewDesc&&(a.pmViewDesc=void 0)}let s=new tt(this,a,n,t);e.input.compositionNodes.push(s),this.children=bt(this.children,i,i+t.length,e,s)}update(e,n,i,t){return!(3==this.dirty||!e.sameMarkup(this.node))&&(this.updateInner(e,n,i,t),!0)}updateInner(e,n,i,t){this.updateOuterDeco(n),this.node=e,this.innerDeco=i,this.contentDOM&&this.updateChildren(t,this.posAtStart),this.dirty=0}updateOuterDeco(e){if(gt(e,this.outerDeco))return;let n=1!=this.nodeDOM.nodeType,i=this.dom;this.dom=mt(this.dom,this.nodeDOM,ht(this.outerDeco,this.node,n),ht(e,this.node,n)),this.dom!=i&&(i.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.add("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&(this.dom.draggable=!0)}deselectNode(){1==this.nodeDOM.nodeType&&(this.nodeDOM.classList.remove("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&this.dom.removeAttribute("draggable"))}get domAtom(){return this.node.isAtom}}function ot(e,n,i,t,a){vt(t,n,e);let s=new st(void 0,e,n,i,t,t,t,a,0);return s.contentDOM&&s.updateChildren(a,0),s}class rt extends st{constructor(e,n,i,t,a,s,o){super(e,n,i,t,a,null,s,o,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,n,i,t){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!e.sameMarkup(this.node))&&(this.updateOuterDeco(n),(0!=this.dirty||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,t.trackWrites==this.nodeDOM&&(t.trackWrites=null)),this.node=e,this.dirty=0,!0)}inParent(){let e=this.parent.contentDOM;for(let n=this.nodeDOM;n;n=n.parentNode)if(n==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,n,i){return e==this.nodeDOM?this.posAtStart+Math.min(n,this.node.text.length):super.localPosFromDOM(e,n,i)}ignoreMutation(e){return"characterData"!=e.type&&"selection"!=e.type}slice(e,n,i){let t=this.node.cut(e,n),a=document.createTextNode(t.text);return new rt(this.parent,t,this.outerDeco,this.innerDeco,a,a,i)}markDirty(e,n){super.markDirty(e,n),this.dom!=this.nodeDOM&&(0==e||n==this.nodeDOM.nodeValue.length)&&(this.dirty=3)}get domAtom(){return!1}isText(e){return this.node.text==e}}class ft extends nt{parseRule(){return{ignore:!0}}matchesHack(e){return 0==this.dirty&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return"IMG"==this.dom.nodeName}}class dt extends st{constructor(e,n,i,t,a,s,o,r,f,d){super(e,n,i,t,a,s,o,f,d),this.spec=r}update(e,n,i,t){if(3==this.dirty)return!1;if(this.spec.update&&(this.node.type==e.type||this.spec.multiType)){let a=this.spec.update(e,n,i);return a&&this.updateInner(e,n,i,t),a}return!(!this.contentDOM&&!e.isLeaf)&&super.update(e,n,i,t)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,n,i,t){this.spec.setSelection?this.spec.setSelection(e,n,i.root):super.setSelection(e,n,i,t)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return!!this.spec.stopEvent&&this.spec.stopEvent(e)}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function lt(e,n,i){let t=e.firstChild,a=!1;for(let s=0;s<n.length;s++){let o=n[s],r=o.dom;if(r.parentNode==e){for(;r!=t;)t=kt(t),a=!0;t=t.nextSibling}else a=!0,e.insertBefore(r,t);if(o instanceof at){let n=t?t.previousSibling:e.lastChild;lt(o.contentDOM,o.children,i),t=n?n.nextSibling:e.firstChild}}for(;t;)t=kt(t),a=!0;a&&i.trackWrites==e&&(i.trackWrites=null)}const ct=function(e){e&&(this.nodeName=e)};ct.prototype=Object.create(null);const ut=[new ct];function ht(e,n,i){if(0==e.length)return ut;let t=i?ut[0]:new ct,a=[t];for(let s=0;s<e.length;s++){let o=e[s].type.attrs;if(o){o.nodeName&&a.push(t=new ct(o.nodeName));for(let e in o){let s=o[e];null!=s&&(i&&1==a.length&&a.push(t=new ct(n.isInline?"span":"div")),"class"==e?t.class=(t.class?t.class+" ":"")+s:"style"==e?t.style=(t.style?t.style+";":"")+s:"nodeName"!=e&&(t[e]=s))}}}return a}function mt(e,n,i,t){if(i==ut&&t==ut)return n;let a=n;for(let n=0;n<t.length;n++){let s=t[n],o=i[n];if(n){let n;o&&o.nodeName==s.nodeName&&a!=e&&(n=a.parentNode)&&n.nodeName.toLowerCase()==s.nodeName||(n=document.createElement(s.nodeName),n.pmIsDeco=!0,n.appendChild(a),o=ut[0]),a=n}pt(a,o||ut[0],s)}return a}function pt(e,n,i){for(let t in n)"class"!=t&&"style"!=t&&"nodeName"!=t&&!(t in i)&&e.removeAttribute(t);for(let t in i)"class"!=t&&"style"!=t&&"nodeName"!=t&&i[t]!=n[t]&&e.setAttribute(t,i[t]);if(n.class!=i.class){let t=n.class?n.class.split(" ").filter(Boolean):[],a=i.class?i.class.split(" ").filter(Boolean):[];for(let n=0;n<t.length;n++)-1==a.indexOf(t[n])&&e.classList.remove(t[n]);for(let n=0;n<a.length;n++)-1==t.indexOf(a[n])&&e.classList.add(a[n]);0==e.classList.length&&e.removeAttribute("class")}if(n.style!=i.style){if(n.style){let i,t=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g;for(;i=t.exec(n.style);)e.style.removeProperty(i[1])}i.style&&(e.style.cssText+=i.style)}}function vt(e,n,i){return mt(e,e,ut,ht(n,i,1!=e.nodeType))}function gt(e,n){if(e.length!=n.length)return!1;for(let i=0;i<e.length;i++)if(!e[i].type.eq(n[i].type))return!1;return!0}function kt(e){let n=e.nextSibling;return e.parentNode.removeChild(e),n}class yt{constructor(e,n,i){this.lock=n,this.view=i,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=function(e,n){let i=n,t=i.children.length,a=e.childCount,s=new Map,o=[];e:for(;a>0;){let r;for(;;)if(t){let e=i.children[t-1];if(!(e instanceof at)){r=e,t--;break}i=e,t=e.children.length}else{if(i==n)break e;t=i.parent.children.indexOf(i),i=i.parent}let f=r.node;if(f){if(f!=e.child(a-1))break;--a,s.set(r,a),o.push(r)}}return{index:a,matched:s,matches:o.reverse()}}(e.node.content,e)}destroyBetween(e,n){if(e!=n){for(let i=e;i<n;i++)this.top.children[i].destroy();this.top.children.splice(e,n-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,n,i){let t=0,a=this.stack.length>>1,s=Math.min(a,e.length);for(;t<s&&(t==a-1?this.top:this.stack[t+1<<1]).matchesMark(e[t])&&!1!==e[t].type.spec.spanning;)t++;for(;t<a;)this.destroyRest(),this.top.dirty=0,this.index=this.stack.pop(),this.top=this.stack.pop(),a--;for(;a<e.length;){this.stack.push(this.top,this.index+1);let t=-1;for(let n=this.index;n<Math.min(this.index+3,this.top.children.length);n++){let i=this.top.children[n];if(i.matchesMark(e[a])&&!this.isLocked(i.dom)){t=n;break}}if(t>-1)t>this.index&&(this.changed=!0,this.destroyBetween(this.index,t)),this.top=this.top.children[this.index];else{let t=at.create(this.top,e[a],n,i);this.top.children.splice(this.index,0,t),this.top=t,this.changed=!0}this.index=0,a++}}findNodeMatch(e,n,i,t){let a,s=-1;if(t>=this.preMatch.index&&(a=this.preMatch.matches[t-this.preMatch.index]).parent==this.top&&a.matchesNode(e,n,i))s=this.top.children.indexOf(a,this.index);else for(let t=this.index,a=Math.min(this.top.children.length,t+5);t<a;t++){let a=this.top.children[t];if(a.matchesNode(e,n,i)&&!this.preMatch.matched.has(a)){s=t;break}}return!(s<0)&&(this.destroyBetween(this.index,s),this.index++,!0)}updateNodeAt(e,n,i,t,a){let s=this.top.children[t];return 3==s.dirty&&s.dom==s.contentDOM&&(s.dirty=2),!!s.update(e,n,i,a)&&(this.destroyBetween(this.index,t),this.index++,!0)}findIndexWithChild(e){for(;;){let n=e.parentNode;if(!n)return-1;if(n==this.top.contentDOM){let n=e.pmViewDesc;if(n)for(let e=this.index;e<this.top.children.length;e++)if(this.top.children[e]==n)return e;return-1}e=n}}updateNextNode(e,n,i,t,a,s){for(let o=this.index;o<this.top.children.length;o++){let r=this.top.children[o];if(r instanceof st){let f=this.preMatch.matched.get(r);if(null!=f&&f!=a)return!1;let d,l=r.dom,c=this.isLocked(l)&&!(e.isText&&r.node&&r.node.isText&&r.nodeDOM.nodeValue==e.text&&3!=r.dirty&&gt(n,r.outerDeco));if(!c&&r.update(e,n,i,t))return this.destroyBetween(this.index,o),r.dom!=l&&(this.changed=!0),this.index++,!0;if(!c&&(d=this.recreateWrapper(r,e,n,i,t,s)))return this.destroyBetween(this.index,o),this.top.children[this.index]=d,d.contentDOM&&(d.dirty=2,d.updateChildren(t,s+1),d.dirty=0),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,n,i,t,a,s){if(e.dirty||n.isAtom||!e.children.length||!e.node.content.eq(n.content)||!gt(i,e.outerDeco)||!t.eq(e.innerDeco))return null;let o=st.create(this.top,n,i,t,a,s);if(o.contentDOM){o.children=e.children,e.children=[];for(let e of o.children)e.parent=o}return e.destroy(),o}addNode(e,n,i,t,a){let s=st.create(this.top,e,n,i,t,a);s.contentDOM&&s.updateChildren(t,a+1),this.top.children.splice(this.index++,0,s),this.changed=!0}placeWidget(e,n,i){let t=this.index<this.top.children.length?this.top.children[this.index]:null;if(!t||!t.matchesWidget(e)||e!=t.widget&&t.widget.type.toDOM.parentNode){let t=new it(this.top,e,n,i);this.top.children.splice(this.index++,0,t),this.changed=!0}else this.index++}addTextblockHacks(){let e=this.top.children[this.index-1],n=this.top;for(;e instanceof at;)n=e,e=n.children[n.children.length-1];(!e||!(e instanceof rt)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((Ci||xi)&&e&&"false"==e.dom.contentEditable&&this.addHackNode("IMG",n),this.addHackNode("BR",this.top))}addHackNode(e,n){if(n==this.top&&this.index<n.children.length&&n.children[this.index].matchesHack(e))this.index++;else{let i=document.createElement(e);"IMG"==e&&(i.className="ProseMirror-separator",i.alt=""),"BR"==e&&(i.className="ProseMirror-trailingBreak");let t=new ft(this.top,[],i,null);n!=this.top?n.children.push(t):n.children.splice(this.index++,0,t),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||1==e.nodeType&&e.contains(this.lock.parentNode))}}function wt(e,n){return e.type.side-n.type.side}function bt(e,n,i,t,a){let s=[];for(let o=0,r=0;o<e.length;o++){let f=e[o],d=r,l=r+=f.size;d>=i||l<=n?s.push(f):(d<n&&s.push(f.slice(0,n-d,t)),a&&(s.push(a),a=void 0),l>i&&s.push(f.slice(i-d,f.size,t)))}return s}function _t(e,n=null){let i=e.domSelectionRange(),t=e.state.doc;if(!i.focusNode)return null;let a=e.docView.nearestDesc(i.focusNode),s=a&&0==a.size,o=e.docView.posFromDOM(i.focusNode,i.focusOffset,1);if(o<0)return null;let r,f,d=t.resolve(o);if(ci(i)){for(r=o;a&&!a.node;)a=a.parent;let e=a.node;if(a&&e.isAtom&&Ln.isSelectable(e)&&a.parent&&(!e.isInline||!function(e,n,i){for(let t=0==n,a=n==di(e);t||a;){if(e==i)return!0;let n=ii(e);if(!(e=e.parentNode))return!1;t=t&&0==n,a=a&&n==di(e)}}(i.focusNode,i.focusOffset,a.dom))){let e=a.posBefore;f=new Ln(o==e?d:t.resolve(e))}}else{if(i instanceof e.dom.ownerDocument.defaultView.Selection&&i.rangeCount>1){let n=o,a=o;for(let t=0;t<i.rangeCount;t++){let s=i.getRangeAt(t);n=Math.min(n,e.docView.posFromDOM(s.startContainer,s.startOffset,1)),a=Math.max(a,e.docView.posFromDOM(s.endContainer,s.endOffset,-1))}if(n<0)return null;[r,o]=a==e.state.selection.anchor?[a,n]:[n,a],d=t.resolve(o)}else r=e.docView.posFromDOM(i.anchorNode,i.anchorOffset,1);if(r<0)return null}let l=t.resolve(r);if(!f){f=At(e,l,d,"pointer"==n||e.state.selection.head<d.pos&&!s?1:-1)}return f}function xt(e){return e.editable?e.hasFocus():jt(e)&&document.activeElement&&document.activeElement.contains(e.dom)}function St(e,n=!1){let i=e.state.selection;if(Et(e,i),xt(e)){if(!n&&e.input.mouseDown&&e.input.mouseDown.allowDefault&&xi){let n=e.domSelectionRange(),i=e.domObserver.currentSelection;if(n.anchorNode&&i.anchorNode&&oi(n.anchorNode,n.anchorOffset,i.anchorNode,i.anchorOffset))return e.input.mouseDown.delayedSelectionSync=!0,void e.domObserver.setCurSelection()}if(e.domObserver.disconnectSelection(),e.cursorWrapper)!function(e){let n=e.domSelection(),i=document.createRange();if(!n)return;let t=e.cursorWrapper.dom,a="IMG"==t.nodeName;a?i.setStart(t.parentNode,ii(t)+1):i.setStart(t,0),i.collapse(!0),n.removeAllRanges(),n.addRange(i),!a&&!e.state.selection.visible&&yi&&wi<=11&&(t.disabled=!0,t.disabled=!1)}(e);else{let t,a,{anchor:s,head:o}=i;Ct&&!(i instanceof Pn)&&(i.$from.parent.inlineContent||(t=Mt(e,i.from)),!i.empty&&!i.$from.parent.inlineContent&&(a=Mt(e,i.to))),e.docView.setSelection(s,o,e,n),Ct&&(t&&Tt(t),a&&Tt(a)),i.visible?e.dom.classList.remove("ProseMirror-hideselection"):(e.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&function(e){let n=e.dom.ownerDocument;n.removeEventListener("selectionchange",e.input.hideSelectionGuard);let i=e.domSelectionRange(),t=i.anchorNode,a=i.anchorOffset;n.addEventListener("selectionchange",e.input.hideSelectionGuard=()=>{(i.anchorNode!=t||i.anchorOffset!=a)&&(n.removeEventListener("selectionchange",e.input.hideSelectionGuard),setTimeout((()=>{(!xt(e)||e.state.selection.visible)&&e.dom.classList.remove("ProseMirror-hideselection")}),20))})}(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}}const Ct=Ci||xi&&Si<63;function Mt(e,n){let{node:i,offset:t}=e.docView.domFromPos(n,0),a=t<i.childNodes.length?i.childNodes[t]:null,s=t?i.childNodes[t-1]:null;if(Ci&&a&&"false"==a.contentEditable)return Ot(a);if(!(a&&"false"!=a.contentEditable||s&&"false"!=s.contentEditable)){if(a)return Ot(a);if(s)return Ot(s)}}function Ot(e){return e.contentEditable="true",Ci&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function Tt(e){e.contentEditable="false",e.wasDraggable&&(e.draggable=!0,e.wasDraggable=null)}function Et(e,n){if(n instanceof Ln){let i=e.docView.descAt(n.from);i!=e.lastSelectedViewDesc&&(Ft(e),i&&i.selectNode(),e.lastSelectedViewDesc=i)}else Ft(e)}function Ft(e){e.lastSelectedViewDesc&&(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),e.lastSelectedViewDesc=void 0)}function At(e,n,i,t){return e.someProp("createSelectionBetween",(t=>t(e,n,i)))||Pn.between(n,i,t)}function Nt(e){return!(e.editable&&!e.hasFocus())&&jt(e)}function jt(e){let n=e.domSelectionRange();if(!n.anchorNode)return!1;try{return e.dom.contains(3==n.anchorNode.nodeType?n.anchorNode.parentNode:n.anchorNode)&&(e.editable||e.dom.contains(3==n.focusNode.nodeType?n.focusNode.parentNode:n.focusNode))}catch{return!1}}function Rt(e,n){let{$anchor:i,$head:t}=e.selection,a=n>0?i.max(t):i.min(t),s=a.parent.inlineContent?a.depth?e.doc.resolve(n>0?a.after():a.before()):null:a;return s&&jn.findFrom(s,n)}function Dt(e,n){return e.dispatch(e.state.tr.setSelection(n).scrollIntoView()),!0}function zt(e,n,i){let t=e.state.selection;if(!(t instanceof Pn)){if(t instanceof Ln&&t.node.isInline)return Dt(e,new Pn(n>0?t.$to:t.$from));{let i=Rt(e.state,n);return!!i&&Dt(e,i)}}if(i.indexOf("s")>-1){let{$head:i}=t,a=i.textOffset?null:n<0?i.nodeBefore:i.nodeAfter;if(!a||a.isText||!a.isLeaf)return!1;let s=e.state.doc.resolve(i.pos+a.nodeSize*(n<0?-1:1));return Dt(e,new Pn(t.$anchor,s))}if(!t.empty)return!1;if(e.endOfTextblock(n>0?"forward":"backward")){let i=Rt(e.state,n);return!!(i&&i instanceof Ln)&&Dt(e,i)}if(!(Oi&&i.indexOf("m")>-1)){let i,a=t.$head,s=a.textOffset?null:n<0?a.nodeBefore:a.nodeAfter;if(!s||s.isText)return!1;let o=n<0?a.pos-s.nodeSize:a.pos;return!!(s.isAtom||(i=e.docView.descAt(o))&&!i.contentDOM)&&(Ln.isSelectable(s)?Dt(e,new Ln(n<0?e.state.doc.resolve(a.pos-s.nodeSize):a)):!!Fi&&Dt(e,new Pn(e.state.doc.resolve(n<0?o:o+s.nodeSize))))}}function Pt(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function Bt(e,n){let i=e.pmViewDesc;return i&&0==i.size&&(n<0||e.nextSibling||"BR"!=e.nodeName)}function Lt(e,n){return n<0?function(e){let n=e.domSelectionRange(),i=n.focusNode,t=n.focusOffset;if(!i)return;let a,s,o=!1;for(bi&&1==i.nodeType&&t<Pt(i)&&Bt(i.childNodes[t],-1)&&(o=!0);;)if(t>0){if(1!=i.nodeType)break;{let e=i.childNodes[t-1];if(Bt(e,-1))a=i,s=--t;else{if(3!=e.nodeType)break;i=e,t=i.nodeValue.length}}}else{if(It(i))break;{let n=i.previousSibling;for(;n&&Bt(n,-1);)a=i.parentNode,s=ii(n),n=n.previousSibling;if(n)i=n,t=Pt(i);else{if(i=i.parentNode,i==e.dom)break;t=0}}}o?Ht(e,i,t):a&&Ht(e,a,s)}(e):function(e){let n=e.domSelectionRange(),i=n.focusNode,t=n.focusOffset;if(!i)return;let a,s,o=Pt(i);for(;;)if(t<o){if(1!=i.nodeType)break;if(!Bt(i.childNodes[t],1))break;a=i,s=++t}else{if(It(i))break;{let n=i.nextSibling;for(;n&&Bt(n,1);)a=n.parentNode,s=ii(n)+1,n=n.nextSibling;if(n)i=n,t=0,o=Pt(i);else{if(i=i.parentNode,i==e.dom)break;t=o=0}}}a&&Ht(e,a,s)}(e)}function It(e){let n=e.pmViewDesc;return n&&n.node&&n.node.isBlock}function Ht(e,n,i){if(3!=n.nodeType){let e,t;(t=function(e,n){for(;e&&n==e.childNodes.length&&!li(e);)n=ii(e)+1,e=e.parentNode;for(;e&&n<e.childNodes.length;){let i=e.childNodes[n];if(3==i.nodeType)return i;if(1==i.nodeType&&"false"==i.contentEditable)break;e=i,n=0}}(n,i))?(n=t,i=0):(e=function(e,n){for(;e&&!n&&!li(e);)n=ii(e),e=e.parentNode;for(;e&&n;){let i=e.childNodes[n-1];if(3==i.nodeType)return i;if(1==i.nodeType&&"false"==i.contentEditable)break;n=(e=i).childNodes.length}}(n,i))&&(n=e,i=e.nodeValue.length)}let t=e.domSelection();if(!t)return;if(ci(t)){let e=document.createRange();e.setEnd(n,i),e.setStart(n,i),t.removeAllRanges(),t.addRange(e)}else t.extend&&t.extend(n,i);e.domObserver.setCurSelection();let{state:a}=e;setTimeout((()=>{e.state==a&&St(e)}),50)}function qt(e,n){let i=e.state.doc.resolve(n);if(!xi&&!Ti&&i.parent.inlineContent){let t=e.coordsAtPos(n);if(n>i.start()){let i=e.coordsAtPos(n-1),a=(i.top+i.bottom)/2;if(a>t.top&&a<t.bottom&&Math.abs(i.left-t.left)>1)return i.left<t.left?"ltr":"rtl"}if(n<i.end()){let i=e.coordsAtPos(n+1),a=(i.top+i.bottom)/2;if(a>t.top&&a<t.bottom&&Math.abs(i.left-t.left)>1)return i.left>t.left?"ltr":"rtl"}}return"rtl"==getComputedStyle(e.dom).direction?"rtl":"ltr"}function Wt(e,n,i){let t=e.state.selection;if(t instanceof Pn&&!t.empty||i.indexOf("s")>-1||Oi&&i.indexOf("m")>-1)return!1;let{$from:a,$to:s}=t;if(!a.parent.inlineContent||e.endOfTextblock(n<0?"up":"down")){let i=Rt(e.state,n);if(i&&i instanceof Ln)return Dt(e,i)}if(!a.parent.inlineContent){let i=n<0?a:s,o=t instanceof Hn?jn.near(i,n):jn.findFrom(i,n);return!!o&&Dt(e,o)}return!1}function $t(e,n){if(!(e.state.selection instanceof Pn))return!0;let{$head:i,$anchor:t,empty:a}=e.state.selection;if(!i.sameParent(t))return!0;if(!a)return!1;if(e.endOfTextblock(n>0?"forward":"backward"))return!0;let s=!i.textOffset&&(n<0?i.nodeBefore:i.nodeAfter);if(s&&!s.isText){let t=e.state.tr;return n<0?t.delete(i.pos-s.nodeSize,i.pos):t.delete(i.pos,i.pos+s.nodeSize),e.dispatch(t),!0}return!1}function Vt(e,n,i){e.domObserver.stop(),n.contentEditable=i,e.domObserver.start()}function Ut(e,n){let i=n.keyCode,t=function(e){let n="";return e.ctrlKey&&(n+="c"),e.metaKey&&(n+="m"),e.altKey&&(n+="a"),e.shiftKey&&(n+="s"),n}(n);if(8==i||Oi&&72==i&&"c"==t)return $t(e,-1)||Lt(e,-1);if(46==i&&!n.shiftKey||Oi&&68==i&&"c"==t)return $t(e,1)||Lt(e,1);if(13==i||27==i)return!0;if(37==i||Oi&&66==i&&"c"==t){let n=37==i?"ltr"==qt(e,e.state.selection.from)?-1:1:-1;return zt(e,n,t)||Lt(e,n)}if(39==i||Oi&&70==i&&"c"==t){let n=39==i?"ltr"==qt(e,e.state.selection.from)?1:-1:1;return zt(e,n,t)||Lt(e,n)}return 38==i||Oi&&80==i&&"c"==t?Wt(e,-1,t)||Lt(e,-1):40==i||Oi&&78==i&&"c"==t?function(e){if(!Ci||e.state.selection.$head.parentOffset>0)return!1;let{focusNode:n,focusOffset:i}=e.domSelectionRange();if(n&&1==n.nodeType&&0==i&&n.firstChild&&"false"==n.firstChild.contentEditable){let i=n.firstChild;Vt(e,i,"true"),setTimeout((()=>Vt(e,i,"false")),20)}return!1}(e)||Wt(e,1,t)||Lt(e,1):t==(Oi?"m":"c")&&(66==i||73==i||89==i||90==i)}function Gt(e,n){e.someProp("transformCopied",(i=>{n=i(n,e)}));let i=[],{content:t,openStart:a,openEnd:s}=n;for(;a>1&&s>1&&1==t.childCount&&1==t.firstChild.childCount;){a--,s--;let e=t.firstChild;i.push(e.type.name,e.attrs!=e.type.defaultAttrs?e.attrs:null),t=e.content}let o=e.someProp("clipboardSerializer")||ze.fromSchema(e.state.schema),r=ta(),f=r.createElement("div");f.appendChild(o.serializeFragment(t,{document:r}));let d,l=f.firstChild,c=0;for(;l&&1==l.nodeType&&(d=na[l.nodeName.toLowerCase()]);){for(let e=d.length-1;e>=0;e--){let n=r.createElement(d[e]);for(;f.firstChild;)n.appendChild(f.firstChild);f.appendChild(n),c++}l=f.firstChild}return l&&1==l.nodeType&&l.setAttribute("data-pm-slice",`${a} ${s}${c?` -${c}`:""} ${JSON.stringify(i)}`),{dom:f,text:e.someProp("clipboardTextSerializer",(i=>i(n,e)))||n.content.textBetween(0,n.content.size,"\n\n"),slice:n}}function Kt(e,n,i,t,a){let s,o,r=a.parent.type.spec.code;if(!i&&!n)return null;let f=n&&(t||r||!i);if(f){if(e.someProp("transformPastedText",(i=>{n=i(n,r||t,e)})),r)return n?new H(D.from(e.state.schema.text(n.replace(/\r\n?/g,"\n"))),0,0):H.empty;let i=e.someProp("clipboardTextParser",(i=>i(n,a,t,e)));if(i)o=i;else{let i=a.marks(),{schema:t}=e.state,o=ze.fromSchema(t);s=document.createElement("div"),n.split(/(?:\r\n?|\n)+/).forEach((e=>{let n=s.appendChild(document.createElement("p"));e&&n.appendChild(o.serializeNode(t.text(e,i)))}))}}else e.someProp("transformPastedHTML",(n=>{i=n(i,e)})),s=function(e){let n=/^(\s*<meta [^>]*>)*/.exec(e);n&&(e=e.slice(n[0].length));let i,t=ta().createElement("div"),a=/<([a-z][^>\s]+)/i.exec(e);if((i=a&&na[a[1].toLowerCase()])&&(e=i.map((e=>"<"+e+">")).join("")+e+i.map((e=>"</"+e+">")).reverse().join("")),t.innerHTML=function(e){let n=window.trustedTypes;return n?(aa||(aa=n.createPolicy("ProseMirrorClipboard",{createHTML:e=>e})),aa.createHTML(e)):e}(e),i)for(let e=0;e<i.length;e++)t=t.querySelector(i[e])||t;return t}(i),Fi&&function(e){let n=e.querySelectorAll(xi?"span:not([class]):not([style])":"span.Apple-converted-space");for(let i=0;i<n.length;i++){let t=n[i];1==t.childNodes.length&&" "==t.textContent&&t.parentNode&&t.parentNode.replaceChild(e.ownerDocument.createTextNode(" "),t)}}(s);let d=s&&s.querySelector("[data-pm-slice]"),l=d&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(d.getAttribute("data-pm-slice")||"");if(l&&l[3])for(let e=+l[3];e>0;e--){let e=s.firstChild;for(;e&&1!=e.nodeType;)e=e.nextSibling;if(!e)break;s=e}if(o||(o=(e.someProp("clipboardParser")||e.someProp("domParser")||Me.fromSchema(e.state.schema)).parseSlice(s,{preserveWhitespace:!(!f&&!l),context:a,ruleFromNode:e=>"BR"!=e.nodeName||e.nextSibling||!e.parentNode||Jt.test(e.parentNode.nodeName)?null:{ignore:!0}})),l)o=function(e,n){if(!e.size)return e;let i,t=e.content.firstChild.type.schema;try{i=JSON.parse(n)}catch{return e}let{content:a,openStart:s,openEnd:o}=e;for(let e=i.length-2;e>=0;e-=2){let n=t.nodes[i[e]];if(!n||n.hasRequiredAttrs())break;a=D.from(n.create(i[e+1],a)),s++,o++}return new H(a,s,o)}(ea(o,+l[1],+l[2]),l[4]);else if(o=H.maxOpen(function(e,n){if(e.childCount<2)return e;for(let i=n.depth;i>=0;i--){let t,a=n.node(i).contentMatchAt(n.index(i)),s=[];if(e.forEach((e=>{if(!s)return;let n,i=a.findWrapping(e.type);if(!i)return s=null;if(n=s.length&&t.length&&Qt(i,t,e,s[s.length-1],0))s[s.length-1]=n;else{s.length&&(s[s.length-1]=Xt(s[s.length-1],t.length));let n=Yt(e,i);s.push(n),a=a.matchType(n.type),t=i}})),s)return D.from(s)}return e}(o.content,a),!0),o.openStart||o.openEnd){let e=0,n=0;for(let n=o.content.firstChild;e<o.openStart&&!n.type.spec.isolating;e++,n=n.firstChild);for(let e=o.content.lastChild;n<o.openEnd&&!e.type.spec.isolating;n++,e=e.lastChild);o=ea(o,e,n)}return e.someProp("transformPasted",(n=>{o=n(o,e)})),o}const Jt=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function Yt(e,n,i=0){for(let t=n.length-1;t>=i;t--)e=n[t].create(null,D.from(e));return e}function Qt(e,n,i,t,a){if(a<e.length&&a<n.length&&e[a]==n[a]){let s=Qt(e,n,i,t.lastChild,a+1);if(s)return t.copy(t.content.replaceChild(t.childCount-1,s));if(t.contentMatchAt(t.childCount).matchType(a==e.length-1?i.type:e[a+1]))return t.copy(t.content.append(D.from(Yt(i,e,a+1))))}}function Xt(e,n){if(0==n)return e;let i=e.content.replaceChild(e.childCount-1,Xt(e.lastChild,n-1)),t=e.contentMatchAt(e.childCount).fillBefore(D.empty,!0);return e.copy(i.append(t))}function Zt(e,n,i,t,a,s){let o=n<0?e.firstChild:e.lastChild,r=o.content;return e.childCount>1&&(s=0),a<t-1&&(r=Zt(r,n,i,t,a+1,s)),a>=i&&(r=n<0?o.contentMatchAt(0).fillBefore(r,s<=a).append(r):r.append(o.contentMatchAt(o.childCount).fillBefore(D.empty,!0))),e.replaceChild(n<0?0:e.childCount-1,o.copy(r))}function ea(e,n,i){return n<e.openStart&&(e=new H(Zt(e.content,-1,n,e.openStart,0,e.openEnd),n,e.openEnd)),i<e.openEnd&&(e=new H(Zt(e.content,1,i,e.openEnd,0,0),e.openStart,i)),e}const na={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let ia=null;function ta(){return ia||(ia=document.implementation.createHTMLDocument("title"))}let aa=null;const sa={},oa={},ra={touchstart:!0,touchmove:!0};class fa{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:""},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastChromeDelete=0,this.composing=!1,this.compositionNode=null,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}}function da(e,n){e.input.lastSelectionOrigin=n,e.input.lastSelectionTime=Date.now()}function la(e){e.someProp("handleDOMEvents",(n=>{for(let i in n)e.input.eventHandlers[i]||e.dom.addEventListener(i,e.input.eventHandlers[i]=n=>ca(e,n))}))}function ca(e,n){return e.someProp("handleDOMEvents",(i=>{let t=i[n.type];return!!t&&(t(e,n)||n.defaultPrevented)}))}function ua(e,n){if(!n.bubbles)return!0;if(n.defaultPrevented)return!1;for(let i=n.target;i!=e.dom;i=i.parentNode)if(!i||11==i.nodeType||i.pmViewDesc&&i.pmViewDesc.stopEvent(n))return!1;return!0}function ha(e){return{left:e.clientX,top:e.clientY}}function ma(e,n,i,t,a){if(-1==t)return!1;let s=e.state.doc.resolve(t);for(let t=s.depth+1;t>0;t--)if(e.someProp(n,(n=>t>s.depth?n(e,i,s.nodeAfter,s.before(t),a,!0):n(e,i,s.node(t),s.before(t),a,!1))))return!0;return!1}function pa(e,n,i){if(e.focused||e.focus(),e.state.selection.eq(n))return;let t=e.state.tr.setSelection(n);"pointer"==i&&t.setMeta("pointer",!0),e.dispatch(t)}function va(e,n,i,t,a){return ma(e,"handleClickOn",n,i,t)||e.someProp("handleClick",(i=>i(e,n,t)))||(a?function(e,n){if(-1==n)return!1;let i,t,a=e.state.selection;a instanceof Ln&&(i=a.node);let s=e.state.doc.resolve(n);for(let e=s.depth+1;e>0;e--){let n=e>s.depth?s.nodeAfter:s.node(e);if(Ln.isSelectable(n)){t=i&&a.$from.depth>0&&e>=a.$from.depth&&s.before(a.$from.depth+1)==a.$from.pos?s.before(a.$from.depth):s.before(e);break}}return null!=t&&(pa(e,Ln.create(e.state.doc,t),"pointer"),!0)}(e,i):function(e,n){if(-1==n)return!1;let i=e.state.doc.resolve(n),t=i.nodeAfter;return!!(t&&t.isAtom&&Ln.isSelectable(t))&&(pa(e,new Ln(i),"pointer"),!0)}(e,i))}function ga(e,n,i,t){return ma(e,"handleDoubleClickOn",n,i,t)||e.someProp("handleDoubleClick",(i=>i(e,n,t)))}function ka(e,n,i,t){return ma(e,"handleTripleClickOn",n,i,t)||e.someProp("handleTripleClick",(i=>i(e,n,t)))||function(e,n,i){if(0!=i.button)return!1;let t=e.state.doc;if(-1==n)return!!t.inlineContent&&(pa(e,Pn.create(t,0,t.content.size),"pointer"),!0);let a=t.resolve(n);for(let n=a.depth+1;n>0;n--){let i=n>a.depth?a.nodeAfter:a.node(n),s=a.before(n);if(i.inlineContent)pa(e,Pn.create(t,s+1,s+1+i.content.size),"pointer");else{if(!Ln.isSelectable(i))continue;pa(e,Ln.create(t,s),"pointer")}return!0}}(e,i,t)}function ya(e){return Oa(e)}oa.keydown=(e,n)=>{let i=n;if(e.input.shiftKey=16==i.keyCode||i.shiftKey,!_a(e,i)&&(e.input.lastKeyCode=i.keyCode,e.input.lastKeyCodeTime=Date.now(),!Ei||!xi||13!=i.keyCode))if(229!=i.keyCode&&e.domObserver.forceFlush(),!Mi||13!=i.keyCode||i.ctrlKey||i.altKey||i.metaKey)e.someProp("handleKeyDown",(n=>n(e,i)))||Ut(e,i)?i.preventDefault():da(e,"key");else{let n=Date.now();e.input.lastIOSEnter=n,e.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{e.input.lastIOSEnter==n&&(e.someProp("handleKeyDown",(n=>n(e,ui(13,"Enter")))),e.input.lastIOSEnter=0)}),200)}},oa.keyup=(e,n)=>{16==n.keyCode&&(e.input.shiftKey=!1)},oa.keypress=(e,n)=>{let i=n;if(_a(e,i)||!i.charCode||i.ctrlKey&&!i.altKey||Oi&&i.metaKey)return;if(e.someProp("handleKeyPress",(n=>n(e,i))))return void i.preventDefault();let t=e.state.selection;if(!(t instanceof Pn&&t.$from.sameParent(t.$to))){let n=String.fromCharCode(i.charCode);!/[\r\n]/.test(n)&&!e.someProp("handleTextInput",(i=>i(e,t.$from.pos,t.$to.pos,n)))&&e.dispatch(e.state.tr.insertText(n).scrollIntoView()),i.preventDefault()}};const wa=Oi?"metaKey":"ctrlKey";sa.mousedown=(e,n)=>{let i=n;e.input.shiftKey=i.shiftKey;let t=ya(e),a=Date.now(),s="singleClick";a-e.input.lastClick.time<500&&function(e,n){let i=n.x-e.clientX,t=n.y-e.clientY;return i*i+t*t<100}(i,e.input.lastClick)&&!i[wa]&&("singleClick"==e.input.lastClick.type?s="doubleClick":"doubleClick"==e.input.lastClick.type&&(s="tripleClick")),e.input.lastClick={time:a,x:i.clientX,y:i.clientY,type:s};let o=e.posAtCoords(ha(i));o&&("singleClick"==s?(e.input.mouseDown&&e.input.mouseDown.done(),e.input.mouseDown=new ba(e,o,i,!!t)):("doubleClick"==s?ga:ka)(e,o.pos,o.inside,i)?i.preventDefault():da(e,"pointer"))};class ba{constructor(e,n,i,t){let a,s;if(this.view=e,this.pos=n,this.event=i,this.flushed=t,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!i[wa],this.allowDefault=i.shiftKey,n.inside>-1)a=e.state.doc.nodeAt(n.inside),s=n.inside;else{let i=e.state.doc.resolve(n.pos);a=i.parent,s=i.depth?i.before():0}const o=t?null:i.target,r=o?e.docView.nearestDesc(o,!0):null;this.target=r&&1==r.dom.nodeType?r.dom:null;let{selection:f}=e.state;(0==i.button&&a.type.spec.draggable&&!1!==a.type.spec.selectable||f instanceof Ln&&f.from<=s&&f.to>s)&&(this.mightDrag={node:a,pos:s,addAttr:!(!this.target||this.target.draggable),setUneditable:!(!this.target||!bi||this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout((()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")}),20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),da(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout((()=>St(this.view))),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let n=this.pos;this.view.state.doc!=this.startDoc&&(n=this.view.posAtCoords(ha(e))),this.updateAllowDefault(e),this.allowDefault||!n?da(this.view,"pointer"):va(this.view,n.pos,n.inside,e,this.selectNode)?e.preventDefault():0==e.button&&(this.flushed||Ci&&this.mightDrag&&!this.mightDrag.node.isAtom||xi&&!this.view.state.selection.visible&&Math.min(Math.abs(n.pos-this.view.state.selection.from),Math.abs(n.pos-this.view.state.selection.to))<=2)?(pa(this.view,jn.near(this.view.state.doc.resolve(n.pos)),"pointer"),e.preventDefault()):da(this.view,"pointer")}move(e){this.updateAllowDefault(e),da(this.view,"pointer"),0==e.buttons&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}function _a(e,n){return!!e.composing||!!(Ci&&Math.abs(n.timeStamp-e.input.compositionEndedAt)<500)&&(e.input.compositionEndedAt=-2e8,!0)}sa.touchstart=e=>{e.input.lastTouch=Date.now(),ya(e),da(e,"pointer")},sa.touchmove=e=>{e.input.lastTouch=Date.now(),da(e,"pointer")},sa.contextmenu=e=>ya(e);const xa=Ei?5e3:-1;function Sa(e,n){clearTimeout(e.input.composingTimeout),n>-1&&(e.input.composingTimeout=setTimeout((()=>Oa(e)),n))}function Ca(e){for(e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=function(){let e=document.createEvent("Event");return e.initEvent("event",!0,!0),e.timeStamp}());e.input.compositionNodes.length>0;)e.input.compositionNodes.pop().markParentsDirty()}function Ma(e){let n=e.domSelectionRange();if(!n.focusNode)return null;let i=function(e,n){for(;;){if(3==e.nodeType&&n)return e;if(1==e.nodeType&&n>0){if("false"==e.contentEditable)return null;n=di(e=e.childNodes[n-1])}else{if(!e.parentNode||li(e))return null;n=ii(e),e=e.parentNode}}}(n.focusNode,n.focusOffset),t=function(e,n){for(;;){if(3==e.nodeType&&n<e.nodeValue.length)return e;if(1==e.nodeType&&n<e.childNodes.length){if("false"==e.contentEditable)return null;e=e.childNodes[n],n=0}else{if(!e.parentNode||li(e))return null;n=ii(e)+1,e=e.parentNode}}}(n.focusNode,n.focusOffset);if(i&&t&&i!=t){let n=t.pmViewDesc,a=e.domObserver.lastChangedTextNode;if(i==a||t==a)return a;if(!n||!n.isText(t.nodeValue))return t;if(e.input.compositionNode==t){let e=i.pmViewDesc;if(e&&e.isText(i.nodeValue))return t}}return i||t}function Oa(e,n=!1){if(!(Ei&&e.domObserver.flushingSoon>=0)){if(e.domObserver.forceFlush(),Ca(e),n||e.docView&&e.docView.dirty){let i=_t(e);return i&&!i.eq(e.state.selection)?e.dispatch(e.state.tr.setSelection(i)):!e.markCursor&&!n||e.state.selection.empty?e.updateState(e.state):e.dispatch(e.state.tr.deleteSelection()),!0}return!1}}oa.compositionstart=oa.compositionupdate=e=>{if(!e.composing){e.domObserver.flush();let{state:n}=e,i=n.selection.$to;if(n.selection instanceof Pn&&(n.storedMarks||!i.textOffset&&i.parentOffset&&i.nodeBefore.marks.some((e=>!1===e.type.spec.inclusive))))e.markCursor=e.state.storedMarks||i.marks(),Oa(e,!0),e.markCursor=null;else if(Oa(e,!n.selection.empty),bi&&n.selection.empty&&i.parentOffset&&!i.textOffset&&i.nodeBefore.marks.length){let n=e.domSelectionRange();for(let i=n.focusNode,t=n.focusOffset;i&&1==i.nodeType&&0!=t;){let n=t<0?i.lastChild:i.childNodes[t-1];if(!n)break;if(3==n.nodeType){let i=e.domSelection();i&&i.collapse(n,n.nodeValue.length);break}i=n,t=-1}}e.input.composing=!0}Sa(e,xa)},oa.compositionend=(e,n)=>{e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=n.timeStamp,e.input.compositionPendingChanges=e.domObserver.pendingRecords().length?e.input.compositionID:0,e.input.compositionNode=null,e.input.compositionPendingChanges&&Promise.resolve().then((()=>e.domObserver.flush())),e.input.compositionID++,Sa(e,20))};const Ta=yi&&wi<15||Mi&&Ai<604;function Ea(e,n,i,t,a){let s=Kt(e,n,i,t,e.state.selection.$from);if(e.someProp("handlePaste",(n=>n(e,a,s||H.empty))))return!0;if(!s)return!1;let o=function(e){return 0==e.openStart&&0==e.openEnd&&1==e.content.childCount?e.content.firstChild:null}(s),r=o?e.state.tr.replaceSelectionWith(o,t):e.state.tr.replaceSelection(s);return e.dispatch(r.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Fa(e){let n=e.getData("text/plain")||e.getData("Text");if(n)return n;let i=e.getData("text/uri-list");return i?i.replace(/\r?\n/g," "):""}sa.copy=oa.cut=(e,n)=>{let i=n,t=e.state.selection,a="cut"==i.type;if(t.empty)return;let s=Ta?null:i.clipboardData,o=t.content(),{dom:r,text:f}=Gt(e,o);s?(i.preventDefault(),s.clearData(),s.setData("text/html",r.innerHTML),s.setData("text/plain",f)):function(e,n){if(!e.dom.parentNode)return;let i=e.dom.parentNode.appendChild(document.createElement("div"));i.appendChild(n),i.style.cssText="position: fixed; left: -10000px; top: 10px";let t=getSelection(),a=document.createRange();a.selectNodeContents(n),e.dom.blur(),t.removeAllRanges(),t.addRange(a),setTimeout((()=>{i.parentNode&&i.parentNode.removeChild(i),e.focus()}),50)}(e,r),a&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))},oa.paste=(e,n)=>{let i=n;if(e.composing&&!Ei)return;let t=Ta?null:i.clipboardData,a=e.input.shiftKey&&45!=e.input.lastKeyCode;t&&Ea(e,Fa(t),t.getData("text/html"),a,i)?i.preventDefault():function(e,n){if(!e.dom.parentNode)return;let i=e.input.shiftKey||e.state.selection.$from.parent.type.spec.code,t=e.dom.parentNode.appendChild(document.createElement(i?"textarea":"div"));i||(t.contentEditable="true"),t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus();let a=e.input.shiftKey&&45!=e.input.lastKeyCode;setTimeout((()=>{e.focus(),t.parentNode&&t.parentNode.removeChild(t),i?Ea(e,t.value,null,a,n):Ea(e,t.textContent,t.innerHTML,a,n)}),50)}(e,i)};class Aa{constructor(e,n,i){this.slice=e,this.move=n,this.node=i}}const Na=Oi?"altKey":"ctrlKey";function ja(e,n){return e.someProp("dragCopies",(e=>!e(n)))??!n[Na]}sa.dragstart=(e,n)=>{let i=n,t=e.input.mouseDown;if(t&&t.done(),!i.dataTransfer)return;let a,s=e.state.selection,o=s.empty?null:e.posAtCoords(ha(i));if(!(o&&o.pos>=s.from&&o.pos<=(s instanceof Ln?s.to-1:s.to)))if(t&&t.mightDrag)a=Ln.create(e.state.doc,t.mightDrag.pos);else if(i.target&&1==i.target.nodeType){let n=e.docView.nearestDesc(i.target,!0);n&&n.node.type.spec.draggable&&n!=e.docView&&(a=Ln.create(e.state.doc,n.posBefore))}let r=(a||e.state.selection).content(),{dom:f,text:d,slice:l}=Gt(e,r);(!i.dataTransfer.files.length||!xi||Si>120)&&i.dataTransfer.clearData(),i.dataTransfer.setData(Ta?"Text":"text/html",f.innerHTML),i.dataTransfer.effectAllowed="copyMove",Ta||i.dataTransfer.setData("text/plain",d),e.dragging=new Aa(l,ja(e,i),a)},sa.dragend=e=>{let n=e.dragging;window.setTimeout((()=>{e.dragging==n&&(e.dragging=null)}),50)},oa.dragover=oa.dragenter=(e,n)=>n.preventDefault(),oa.drop=(e,n)=>{let i=n,t=e.dragging;if(e.dragging=null,!i.dataTransfer)return;let a=e.posAtCoords(ha(i));if(!a)return;let s=e.state.doc.resolve(a.pos),o=t&&t.slice;o?e.someProp("transformPasted",(n=>{o=n(o,e)})):o=Kt(e,Fa(i.dataTransfer),Ta?null:i.dataTransfer.getData("text/html"),!1,s);let r=!(!t||!ja(e,i));if(e.someProp("handleDrop",(n=>n(e,i,o||H.empty,r))))return void i.preventDefault();if(!o)return;i.preventDefault();let f=o?function(e,n,i){let t=e.resolve(n);if(!i.content.size)return n;let a=i.content;for(let e=0;e<i.openStart;e++)a=a.firstChild.content;for(let e=1;e<=(0==i.openStart&&i.size?2:1);e++)for(let n=t.depth;n>=0;n--){let i=n==t.depth?0:t.pos<=(t.start(n+1)+t.end(n+1))/2?-1:1,s=t.index(n)+(i>0?1:0),o=t.node(n),r=!1;if(1==e)r=o.canReplace(s,s,a);else{let e=o.contentMatchAt(s).findWrapping(a.firstChild.type);r=e&&o.canReplaceWith(s,s,e[0])}if(r)return 0==i?t.pos:i<0?t.before(n+1):t.after(n+1)}return null}(e.state.doc,s.pos,o):s.pos;null==f&&(f=s.pos);let d=e.state.tr;if(r){let{node:e}=t;e?e.replace(d):d.deleteSelection()}let l=d.mapping.map(f),c=0==o.openStart&&0==o.openEnd&&1==o.content.childCount,u=d.doc;if(c?d.replaceRangeWith(l,l,o.content.firstChild):d.replaceRange(l,l,o),d.doc.eq(u))return;let h=d.doc.resolve(l);if(c&&Ln.isSelectable(o.content.firstChild)&&h.nodeAfter&&h.nodeAfter.sameMarkup(o.content.firstChild))d.setSelection(new Ln(h));else{let n=d.mapping.map(f);d.mapping.maps[d.mapping.maps.length-1].forEach(((e,i,t,a)=>n=a)),d.setSelection(At(e,h,d.doc.resolve(n)))}e.focus(),e.dispatch(d.setMeta("uiEvent","drop"))},sa.focus=e=>{e.input.lastFocus=Date.now(),e.focused||(e.domObserver.stop(),e.dom.classList.add("ProseMirror-focused"),e.domObserver.start(),e.focused=!0,setTimeout((()=>{e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.domSelectionRange())&&St(e)}),20))},sa.blur=(e,n)=>{let i=n;e.focused&&(e.domObserver.stop(),e.dom.classList.remove("ProseMirror-focused"),e.domObserver.start(),i.relatedTarget&&e.dom.contains(i.relatedTarget)&&e.domObserver.currentSelection.clear(),e.focused=!1)},sa.beforeinput=(e,n)=>{if(xi&&Ei&&"deleteContentBackward"==n.inputType){e.domObserver.flushSoon();let{domChangeCount:n}=e.input;setTimeout((()=>{if(e.input.domChangeCount!=n||(e.dom.blur(),e.focus(),e.someProp("handleKeyDown",(n=>n(e,ui(8,"Backspace"))))))return;let{$cursor:i}=e.state.selection;i&&i.pos>0&&e.dispatch(e.state.tr.delete(i.pos-1,i.pos).scrollIntoView())}),50)}};for(let e in oa)sa[e]=oa[e];function Ra(e,n){if(e==n)return!0;for(let i in e)if(e[i]!==n[i])return!1;for(let i in n)if(!(i in e))return!1;return!0}class Da{constructor(e,n){this.toDOM=e,this.spec=n||Ia,this.side=this.spec.side||0}map(e,n,i,t){let{pos:a,deleted:s}=e.mapResult(n.from+t,this.side<0?-1:1);return s?null:new Ba(a-i,a-i,this)}valid(){return!0}eq(e){return this==e||e instanceof Da&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&Ra(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class za{constructor(e,n){this.attrs=e,this.spec=n||Ia}map(e,n,i,t){let a=e.map(n.from+t,this.spec.inclusiveStart?-1:1)-i,s=e.map(n.to+t,this.spec.inclusiveEnd?1:-1)-i;return a>=s?null:new Ba(a,s,this)}valid(e,n){return n.from<n.to}eq(e){return this==e||e instanceof za&&Ra(this.attrs,e.attrs)&&Ra(this.spec,e.spec)}static is(e){return e.type instanceof za}destroy(){}}class Pa{constructor(e,n){this.attrs=e,this.spec=n||Ia}map(e,n,i,t){let a=e.mapResult(n.from+t,1);if(a.deleted)return null;let s=e.mapResult(n.to+t,-1);return s.deleted||s.pos<=a.pos?null:new Ba(a.pos-i,s.pos-i,this)}valid(e,n){let i,{index:t,offset:a}=e.content.findIndex(n.from);return a==n.from&&!(i=e.child(t)).isText&&a+i.nodeSize==n.to}eq(e){return this==e||e instanceof Pa&&Ra(this.attrs,e.attrs)&&Ra(this.spec,e.spec)}destroy(){}}class Ba{constructor(e,n,i){this.from=e,this.to=n,this.type=i}copy(e,n){return new Ba(e,n,this.type)}eq(e,n=0){return this.type.eq(e.type)&&this.from+n==e.from&&this.to+n==e.to}map(e,n,i){return this.type.map(e,this,n,i)}static widget(e,n,i){return new Ba(e,e,new Da(n,i))}static inline(e,n,i,t){return new Ba(e,n,new za(i,t))}static node(e,n,i,t){return new Ba(e,n,new Pa(i,t))}get spec(){return this.type.spec}get inline(){return this.type instanceof za}get widget(){return this.type instanceof Da}}const La=[],Ia={};class Ha{constructor(e,n){this.local=e.length?e:La,this.children=n.length?n:La}static create(e,n){return n.length?Ga(n,e,0,Ia):qa}find(e,n,i){let t=[];return this.findInner(e??0,n??1e9,t,0,i),t}findInner(e,n,i,t,a){for(let s=0;s<this.local.length;s++){let o=this.local[s];o.from<=n&&o.to>=e&&(!a||a(o.spec))&&i.push(o.copy(o.from+t,o.to+t))}for(let s=0;s<this.children.length;s+=3)if(this.children[s]<n&&this.children[s+1]>e){let o=this.children[s]+1;this.children[s+2].findInner(e-o,n-o,i,t+o,a)}}map(e,n,i){return this==qa||0==e.maps.length?this:this.mapInner(e,n,0,0,i||Ia)}mapInner(e,n,i,t,a){let s;for(let o=0;o<this.local.length;o++){let r=this.local[o].map(e,i,t);r&&r.type.valid(n,r)?(s||(s=[])).push(r):a.onRemove&&a.onRemove(this.local[o].spec)}return this.children.length?function(e,n,i,t,a,s,o){let r=e.slice();for(let e=0,n=s;e<i.maps.length;e++){let t=0;i.maps[e].forEach(((e,i,a,s)=>{let o=s-a-(i-e);for(let a=0;a<r.length;a+=3){let s=r[a+1];if(s<0||e>s+n-t)continue;let f=r[a]+n-t;i>=f?r[a+1]=e<=f?-2:-1:e>=n&&o&&(r[a]+=o,r[a+1]+=o)}t+=o})),n=i.maps[e].map(n,-1)}let f=!1;for(let n=0;n<r.length;n+=3)if(r[n+1]<0){if(-2==r[n+1]){f=!0,r[n+1]=-1;continue}let d=i.map(e[n]+s),l=d-a;if(l<0||l>=t.content.size){f=!0;continue}let c=i.map(e[n+1]+s,-1)-a,{index:u,offset:h}=t.content.findIndex(l),m=t.maybeChild(u);if(m&&h==l&&h+m.nodeSize==c){let t=r[n+2].mapInner(i,m,d+1,e[n]+s+1,o);t!=qa?(r[n]=l,r[n+1]=c,r[n+2]=t):(r[n+1]=-2,f=!0)}else f=!0}if(f){let f=function(e,n,i,t,a,s,o){function r(e,n){for(let s=0;s<e.local.length;s++){let r=e.local[s].map(t,a,n);r?i.push(r):o.onRemove&&o.onRemove(e.local[s].spec)}for(let i=0;i<e.children.length;i+=3)r(e.children[i+2],e.children[i]+n+1)}for(let i=0;i<e.length;i+=3)-1==e[i+1]&&r(e[i+2],n[i]+s+1);return i}(r,e,n,i,a,s,o),d=Ga(f,t,0,o);n=d.local;for(let e=0;e<r.length;e+=3)r[e+1]<0&&(r.splice(e,3),e-=3);for(let e=0,n=0;e<d.children.length;e+=3){let i=d.children[e];for(;n<r.length&&r[n]<i;)n+=3;r.splice(n,0,d.children[e],d.children[e+1],d.children[e+2])}}return new Ha(n.sort(Ka),r)}(this.children,s||[],e,n,i,t,a):s?new Ha(s.sort(Ka),La):qa}add(e,n){return n.length?this==qa?Ha.create(e,n):this.addInner(e,n,0):this}addInner(e,n,i){let t,a=0;e.forEach(((e,s)=>{let o,r=s+i;if(o=Va(n,e,r)){for(t||(t=this.children.slice());a<t.length&&t[a]<s;)a+=3;t[a]==s?t[a+2]=t[a+2].addInner(e,o,r+1):t.splice(a,0,s,s+e.nodeSize,Ga(o,e,r+1,Ia)),a+=3}}));let s=$a(a?Ua(n):n,-i);for(let n=0;n<s.length;n++)s[n].type.valid(e,s[n])||s.splice(n--,1);return new Ha(s.length?this.local.concat(s).sort(Ka):this.local,t||this.children)}remove(e){return 0==e.length||this==qa?this:this.removeInner(e,0)}removeInner(e,n){let i=this.children,t=this.local;for(let t=0;t<i.length;t+=3){let a,s=i[t]+n,o=i[t+1]+n;for(let n,i=0;i<e.length;i++)(n=e[i])&&n.from>s&&n.to<o&&(e[i]=null,(a||(a=[])).push(n));if(!a)continue;i==this.children&&(i=this.children.slice());let r=i[t+2].removeInner(a,s+1);r!=qa?i[t+2]=r:(i.splice(t,3),t-=3)}if(t.length)for(let i,a=0;a<e.length;a++)if(i=e[a])for(let e=0;e<t.length;e++)t[e].eq(i,n)&&(t==this.local&&(t=this.local.slice()),t.splice(e--,1));return i==this.children&&t==this.local?this:t.length||i.length?new Ha(t,i):qa}forChild(e,n){if(this==qa)return this;if(n.isLeaf)return Ha.empty;let i,t;for(let n=0;n<this.children.length;n+=3)if(this.children[n]>=e){this.children[n]==e&&(i=this.children[n+2]);break}let a=e+1,s=a+n.content.size;for(let e=0;e<this.local.length;e++){let n=this.local[e];if(n.from<s&&n.to>a&&n.type instanceof za){let e=Math.max(a,n.from)-a,i=Math.min(s,n.to)-a;e<i&&(t||(t=[])).push(n.copy(e,i))}}if(t){let e=new Ha(t.sort(Ka),La);return i?new Wa([e,i]):e}return i||qa}eq(e){if(this==e)return!0;if(!(e instanceof Ha)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let n=0;n<this.local.length;n++)if(!this.local[n].eq(e.local[n]))return!1;for(let n=0;n<this.children.length;n+=3)if(this.children[n]!=e.children[n]||this.children[n+1]!=e.children[n+1]||!this.children[n+2].eq(e.children[n+2]))return!1;return!0}locals(e){return Ja(this.localsInner(e))}localsInner(e){if(this==qa)return La;if(e.inlineContent||!this.local.some(za.is))return this.local;let n=[];for(let e=0;e<this.local.length;e++)this.local[e].type instanceof za||n.push(this.local[e]);return n}forEachSet(e){e(this)}}Ha.empty=new Ha([],[]),Ha.removeOverlap=Ja;const qa=Ha.empty;class Wa{constructor(e){this.members=e}map(e,n){const i=this.members.map((i=>i.map(e,n,Ia)));return Wa.from(i)}forChild(e,n){if(n.isLeaf)return Ha.empty;let i=[];for(let t=0;t<this.members.length;t++){let a=this.members[t].forChild(e,n);a!=qa&&(a instanceof Wa?i=i.concat(a.members):i.push(a))}return Wa.from(i)}eq(e){if(!(e instanceof Wa)||e.members.length!=this.members.length)return!1;for(let n=0;n<this.members.length;n++)if(!this.members[n].eq(e.members[n]))return!1;return!0}locals(e){let n,i=!0;for(let t=0;t<this.members.length;t++){let a=this.members[t].localsInner(e);if(a.length)if(n){i&&(n=n.slice(),i=!1);for(let e=0;e<a.length;e++)n.push(a[e])}else n=a}return n?Ja(i?n:n.sort(Ka)):La}static from(e){switch(e.length){case 0:return qa;case 1:return e[0];default:return new Wa(e.every((e=>e instanceof Ha))?e:e.reduce(((e,n)=>e.concat(n instanceof Ha?n:n.members)),[]))}}forEachSet(e){for(let n=0;n<this.members.length;n++)this.members[n].forEachSet(e)}}function $a(e,n){if(!n||!e.length)return e;let i=[];for(let t=0;t<e.length;t++){let a=e[t];i.push(new Ba(a.from+n,a.to+n,a.type))}return i}function Va(e,n,i){if(n.isLeaf)return null;let t=i+n.nodeSize,a=null;for(let n,s=0;s<e.length;s++)(n=e[s])&&n.from>i&&n.to<t&&((a||(a=[])).push(n),e[s]=null);return a}function Ua(e){let n=[];for(let i=0;i<e.length;i++)null!=e[i]&&n.push(e[i]);return n}function Ga(e,n,i,t){let a=[],s=!1;n.forEach(((n,o)=>{let r=Va(e,n,o+i);if(r){s=!0;let e=Ga(r,n,i+o+1,t);e!=qa&&a.push(o,o+n.nodeSize,e)}}));let o=$a(s?Ua(e):e,-i).sort(Ka);for(let e=0;e<o.length;e++)o[e].type.valid(n,o[e])||(t.onRemove&&t.onRemove(o[e].spec),o.splice(e--,1));return o.length||a.length?new Ha(o,a):qa}function Ka(e,n){return e.from-n.from||e.to-n.to}function Ja(e){let n=e;for(let i=0;i<n.length-1;i++){let t=n[i];if(t.from!=t.to)for(let a=i+1;a<n.length;a++){let s=n[a];if(s.from!=t.from){s.from<t.to&&(n==e&&(n=e.slice()),n[i]=t.copy(t.from,s.from),Ya(n,a,t.copy(s.from,t.to)));break}s.to!=t.to&&(n==e&&(n=e.slice()),n[a]=s.copy(s.from,t.to),Ya(n,a+1,s.copy(t.to,s.to)))}}return n}function Ya(e,n,i){for(;n<e.length&&Ka(i,e[n])>0;)n++;e.splice(n,0,i)}function Qa(e){let n=[];return e.someProp("decorations",(i=>{let t=i(e.state);t&&t!=qa&&n.push(t)})),e.cursorWrapper&&n.push(Ha.create(e.state.doc,[e.cursorWrapper.deco])),Wa.from(n)}const Xa={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},Za=yi&&wi<=11;class es{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class ns{constructor(e,n){this.view=e,this.handleDOMChange=n,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new es,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver((e=>{for(let n=0;n<e.length;n++)this.queue.push(e[n]);yi&&wi<=11&&e.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),Za&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1,this.flush()}),20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,Xa)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let n=0;n<e.length;n++)this.queue.push(e[n]);window.setTimeout((()=>this.flush()),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout((()=>this.suppressingSelectionUpdates=!1),50)}onSelectionChange(){if(Nt(this.view)){if(this.suppressingSelectionUpdates)return St(this.view);if(yi&&wi<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&oi(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let n,i=new Set;for(let n=e.focusNode;n;n=ti(n))i.add(n);for(let t=e.anchorNode;t;t=ti(t))if(i.has(t)){n=t;break}let t=n&&this.view.docView.nearestDesc(n);return t&&t.ignoreMutation({type:"selection",target:3==n.nodeType?n.parentNode:n})?(this.setCurSelection(),!0):void 0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let n=this.pendingRecords();n.length&&(this.queue=[]);let i=e.domSelectionRange(),t=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(i)&&Nt(e)&&!this.ignoreSelectionChange(i),a=-1,s=-1,o=!1,r=[];if(e.editable)for(let e=0;e<n.length;e++){let i=this.registerMutation(n[e],r);i&&(a=a<0?i.from:Math.min(i.from,a),s=s<0?i.to:Math.max(i.to,s),i.typeOver&&(o=!0))}if(bi&&r.length){let n=r.filter((e=>"BR"==e.nodeName));if(2==n.length){let[e,i]=n;e.parentNode&&e.parentNode.parentNode==i.parentNode?i.remove():e.remove()}else{let{focusNode:i}=this.currentSelection;for(let t of n){let n=t.parentNode;n&&"LI"==n.nodeName&&(!i||ss(e,i)!=n)&&t.remove()}}}let f=null;a<0&&t&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&ci(i)&&(f=_t(e))&&f.eq(jn.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,St(e),this.currentSelection.set(i),e.scrollToSelection()):(a>-1||t)&&(a>-1&&(e.docView.markDirty(a,s),function(e){if(!is.has(e)&&(is.set(e,null),-1!==["normal","nowrap","pre-line"].indexOf(getComputedStyle(e.dom).whiteSpace))){if(e.requiresGeckoHackNode=bi,ts)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),ts=!0}}(e)),this.handleDOMChange(a,s,o,r),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(i)||St(e),this.currentSelection.set(i))}registerMutation(e,n){if(n.indexOf(e.target)>-1)return null;let i=this.view.docView.nearestDesc(e.target);if("attributes"==e.type&&(i==this.view.docView||"contenteditable"==e.attributeName||"style"==e.attributeName&&!e.oldValue&&!e.target.getAttribute("style"))||!i||i.ignoreMutation(e))return null;if("childList"==e.type){for(let i=0;i<e.addedNodes.length;i++){let t=e.addedNodes[i];n.push(t),3==t.nodeType&&(this.lastChangedTextNode=t)}if(i.contentDOM&&i.contentDOM!=i.dom&&!i.contentDOM.contains(e.target))return{from:i.posBefore,to:i.posAfter};let t=e.previousSibling,a=e.nextSibling;if(yi&&wi<=11&&e.addedNodes.length)for(let n=0;n<e.addedNodes.length;n++){let{previousSibling:i,nextSibling:s}=e.addedNodes[n];(!i||Array.prototype.indexOf.call(e.addedNodes,i)<0)&&(t=i),(!s||Array.prototype.indexOf.call(e.addedNodes,s)<0)&&(a=s)}let s=t&&t.parentNode==e.target?ii(t)+1:0,o=i.localPosFromDOM(e.target,s,-1),r=a&&a.parentNode==e.target?ii(a):e.target.childNodes.length;return{from:o,to:i.localPosFromDOM(e.target,r,1)}}return"attributes"==e.type?{from:i.posAtStart-i.border,to:i.posAtEnd+i.border}:(this.lastChangedTextNode=e.target,{from:i.posAtStart,to:i.posAtEnd,typeOver:e.target.nodeValue==e.oldValue})}}let is=new WeakMap,ts=!1;function as(e,n){let i=n.startContainer,t=n.startOffset,a=n.endContainer,s=n.endOffset,o=e.domAtPos(e.state.selection.anchor);return oi(o.node,o.offset,a,s)&&([i,t,a,s]=[a,s,i,t]),{anchorNode:i,anchorOffset:t,focusNode:a,focusOffset:s}}function ss(e,n){for(let i=n.parentNode;i&&i!=e.dom;i=i.parentNode){let n=e.docView.nearestDesc(i,!0);if(n&&n.node.isBlock)return i}return null}function rs(e){let n=e.pmViewDesc;if(n)return n.parseRule();if("BR"==e.nodeName&&e.parentNode){if(Ci&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){let e=document.createElement("div");return e.appendChild(document.createElement("li")),{skip:e}}if(e.parentNode.lastChild==e||Ci&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if("IMG"==e.nodeName&&e.getAttribute("mark-placeholder"))return{ignore:!0};return null}const fs=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function ds(e,n,i,t,a){let s=e.input.compositionPendingChanges||(e.composing?e.input.compositionID:0);if(e.input.compositionPendingChanges=0,n<0){let n=e.input.lastSelectionTime>Date.now()-50?e.input.lastSelectionOrigin:null,i=_t(e,n);if(i&&!e.state.selection.eq(i)){if(xi&&Ei&&13===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime&&e.someProp("handleKeyDown",(n=>n(e,ui(13,"Enter")))))return;let t=e.state.tr.setSelection(i);"pointer"==n?t.setMeta("pointer",!0):"key"==n&&t.scrollIntoView(),s&&t.setMeta("composition",s),e.dispatch(t)}return}let o=e.state.doc.resolve(n),r=o.sharedDepth(i);n=o.before(r+1),i=e.state.doc.resolve(i).after(r+1);let f,d,l=e.state.selection,c=function(e,n,i){let t,{node:a,fromOffset:s,toOffset:o,from:r,to:f}=e.docView.parseRange(n,i),d=e.domSelectionRange(),l=d.anchorNode;if(l&&e.dom.contains(1==l.nodeType?l:l.parentNode)&&(t=[{node:l,offset:d.anchorOffset}],ci(d)||t.push({node:d.focusNode,offset:d.focusOffset})),xi&&8===e.input.lastKeyCode)for(let e=o;e>s;e--){let n=a.childNodes[e-1],i=n.pmViewDesc;if("BR"==n.nodeName&&!i){o=e;break}if(!i||i.size)break}let c=e.state.doc,u=e.someProp("domParser")||Me.fromSchema(e.state.schema),h=c.resolve(r),m=null,p=u.parse(a,{topNode:h.parent,topMatch:h.parent.contentMatchAt(h.index()),topOpen:!0,from:s,to:o,preserveWhitespace:"pre"!=h.parent.type.whitespace||"full",findPositions:t,ruleFromNode:rs,context:h});if(t&&null!=t[0].pos){let e=t[0].pos,n=t[1]&&t[1].pos;null==n&&(n=e),m={anchor:e+r,head:n+r}}return{doc:p,sel:m,from:r,to:f}}(e,n,i),u=e.state.doc,h=u.slice(c.from,c.to);8===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime?(f=e.state.selection.to,d="end"):(f=e.state.selection.from,d="start"),e.input.lastKeyCode=null;let m=function(e,n,i,t,a){let s=e.findDiffStart(n,i);if(null==s)return null;let{a:o,b:r}=e.findDiffEnd(n,i+e.size,i+n.size);if("end"==a){t-=o+Math.max(0,s-Math.min(o,r))-s}if(o<s&&e.size<n.size){let e=t<=s&&t>=o?s-t:0;s-=e,s&&s<n.size&&us(n.textBetween(s-1,s+1))&&(s+=e?1:-1),r=s+(r-o),o=s}else if(r<s){let n=t<=s&&t>=r?s-t:0;s-=n,s&&s<e.size&&us(e.textBetween(s-1,s+1))&&(s+=n?1:-1),o=s+(o-r),r=s}return{start:s,endA:o,endB:r}}(h.content,c.doc.content,c.from,f,d);if(m&&e.input.domChangeCount++,(Mi&&e.input.lastIOSEnter>Date.now()-225||Ei)&&a.some((e=>1==e.nodeType&&!fs.test(e.nodeName)))&&(!m||m.endA>=m.endB)&&e.someProp("handleKeyDown",(n=>n(e,ui(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(!m){if(!(t&&l instanceof Pn&&!l.empty&&l.$head.sameParent(l.$anchor))||e.composing||c.sel&&c.sel.anchor!=c.sel.head){if(c.sel){let n=ls(e,e.state.doc,c.sel);if(n&&!n.eq(e.state.selection)){let i=e.state.tr.setSelection(n);s&&i.setMeta("composition",s),e.dispatch(i)}}return}m={start:l.from,endA:l.to,endB:l.to}}e.state.selection.from<e.state.selection.to&&m.start==m.endB&&e.state.selection instanceof Pn&&(m.start>e.state.selection.from&&m.start<=e.state.selection.from+2&&e.state.selection.from>=c.from?m.start=e.state.selection.from:m.endA<e.state.selection.to&&m.endA>=e.state.selection.to-2&&e.state.selection.to<=c.to&&(m.endB+=e.state.selection.to-m.endA,m.endA=e.state.selection.to)),yi&&wi<=11&&m.endB==m.start+1&&m.endA==m.start&&m.start>c.from&&"  "==c.doc.textBetween(m.start-c.from-1,m.start-c.from+1)&&(m.start--,m.endA--,m.endB--);let p,v=c.doc.resolveNoCache(m.start-c.from),g=c.doc.resolveNoCache(m.endB-c.from),k=u.resolve(m.start),y=v.sameParent(g)&&v.parent.inlineContent&&k.end()>=m.endA;if((Mi&&e.input.lastIOSEnter>Date.now()-225&&(!y||a.some((e=>"DIV"==e.nodeName||"P"==e.nodeName)))||!y&&v.pos<c.doc.content.size&&(!v.sameParent(g)||!v.parent.inlineContent)&&(p=jn.findFrom(c.doc.resolve(v.pos+1),1,!0))&&p.head>v.pos)&&e.someProp("handleKeyDown",(n=>n(e,ui(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(e.state.selection.anchor>m.start&&function(e,n,i,t,a){if(i-n<=a.pos-t.pos||cs(t,!0,!1)<a.pos)return!1;let s=e.resolve(n);if(!t.parent.isTextblock){let e=s.nodeAfter;return null!=e&&i==n+e.nodeSize}if(s.parentOffset<s.parent.content.size||!s.parent.isTextblock)return!1;let o=e.resolve(cs(s,!0,!0));return!(!o.parent.isTextblock||o.pos>i||cs(o,!0,!1)<i)&&t.parent.content.cut(t.parentOffset).eq(o.parent.content)}(u,m.start,m.endA,v,g)&&e.someProp("handleKeyDown",(n=>n(e,ui(8,"Backspace")))))return void(Ei&&xi&&e.domObserver.suppressSelectionUpdates());xi&&m.endB==m.start&&(e.input.lastChromeDelete=Date.now()),Ei&&!y&&v.start()!=g.start()&&0==g.parentOffset&&v.depth==g.depth&&c.sel&&c.sel.anchor==c.sel.head&&c.sel.head==m.endA&&(m.endB-=2,g=c.doc.resolveNoCache(m.endB-c.from),setTimeout((()=>{e.someProp("handleKeyDown",(function(n){return n(e,ui(13,"Enter"))}))}),20));let w,b,_,x=m.start,S=m.endA;if(y)if(v.pos==g.pos)yi&&wi<=11&&0==v.parentOffset&&(e.domObserver.suppressSelectionUpdates(),setTimeout((()=>St(e)),20)),w=e.state.tr.delete(x,S),b=u.resolve(m.start).marksAcross(u.resolve(m.endA));else if(m.endA==m.endB&&(_=function(e,n){let i,t,a,s=e.firstChild.marks,o=n.firstChild.marks,r=s,f=o;for(let e=0;e<o.length;e++)r=o[e].removeFromSet(r);for(let e=0;e<s.length;e++)f=s[e].removeFromSet(f);if(1==r.length&&0==f.length)t=r[0],i="add",a=e=>e.mark(t.addToSet(e.marks));else{if(0!=r.length||1!=f.length)return null;t=f[0],i="remove",a=e=>e.mark(t.removeFromSet(e.marks))}let d=[];for(let e=0;e<n.childCount;e++)d.push(a(n.child(e)));if(D.from(d).eq(e))return{mark:t,type:i}}(v.parent.content.cut(v.parentOffset,g.parentOffset),k.parent.content.cut(k.parentOffset,m.endA-k.start()))))w=e.state.tr,"add"==_.type?w.addMark(x,S,_.mark):w.removeMark(x,S,_.mark);else if(v.parent.child(v.index()).isText&&v.index()==g.index()-(g.textOffset?0:1)){let n=v.parent.textBetween(v.parentOffset,g.parentOffset);if(e.someProp("handleTextInput",(i=>i(e,x,S,n))))return;w=e.state.tr.insertText(n,x,S)}if(w||(w=e.state.tr.replace(x,S,c.doc.slice(m.start-c.from,m.endB-c.from))),c.sel){let n=ls(e,w.doc,c.sel);n&&!(xi&&e.composing&&n.empty&&(m.start!=m.endB||e.input.lastChromeDelete<Date.now()-100)&&(n.head==x||n.head==w.mapping.map(S)-1)||yi&&n.empty&&n.head==x)&&w.setSelection(n)}b&&w.ensureMarks(b),s&&w.setMeta("composition",s),e.dispatch(w.scrollIntoView())}function ls(e,n,i){return Math.max(i.anchor,i.head)>n.content.size?null:At(e,n.resolve(i.anchor),n.resolve(i.head))}function cs(e,n,i){let t=e.depth,a=n?e.end():e.pos;for(;t>0&&(n||e.indexAfter(t)==e.node(t).childCount);)t--,a++,n=!1;if(i){let n=e.node(t).maybeChild(e.indexAfter(t));for(;n&&!n.isLeaf;)n=n.firstChild,a++}return a}function us(e){if(2!=e.length)return!1;let n=e.charCodeAt(0),i=e.charCodeAt(1);return n>=56320&&n<=57343&&i>=55296&&i<=56319}class hs{constructor(e,n){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new fa,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=n,this.state=n.state,this.directPlugins=n.plugins||[],this.directPlugins.forEach(ks),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):"function"==typeof e?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=vs(this),ps(this),this.nodeViews=gs(this),this.docView=ot(this.state.doc,ms(this),Qa(this),this.dom,this),this.domObserver=new ns(this,((e,n,i,t)=>ds(this,e,n,i,t))),this.domObserver.start(),function(e){for(let n in sa){let i=sa[n];e.dom.addEventListener(n,e.input.eventHandlers[n]=n=>{ua(e,n)&&!ca(e,n)&&(e.editable||!(n.type in oa))&&i(e,n)},ra[n]?{passive:!0}:void 0)}Ci&&e.dom.addEventListener("input",(()=>null)),la(e)}(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let n in e)this._props[n]=e[n];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&la(this);let n=this._props;this._props=e,e.plugins&&(e.plugins.forEach(ks),this.directPlugins=e.plugins),this.updateStateInner(e.state,n)}setProps(e){let n={};for(let e in this._props)n[e]=this._props[e];n.state=this.state;for(let i in e)n[i]=e[i];this.update(n)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,n){var i;let t=this.state,a=!1,s=!1;e.storedMarks&&this.composing&&(Ca(this),s=!0),this.state=e;let o=t.plugins!=e.plugins||this._props.plugins!=n.plugins;if(o||this._props.plugins!=n.plugins||this._props.nodeViews!=n.nodeViews){let e=gs(this);(function(e,n){let i=0,t=0;for(let t in e){if(e[t]!=n[t])return!0;i++}for(let e in n)t++;return i!=t})(e,this.nodeViews)&&(this.nodeViews=e,a=!0)}(o||n.handleDOMEvents!=this._props.handleDOMEvents)&&la(this),this.editable=vs(this),ps(this);let r=Qa(this),f=ms(this),d=t.plugins==e.plugins||t.doc.eq(e.doc)?e.scrollToSelection>t.scrollToSelection?"to selection":"preserve":"reset",l=a||!this.docView.matchesNode(e.doc,f,r);(l||!e.selection.eq(t.selection))&&(s=!0);let c="preserve"==d&&s&&null==this.dom.style.overflowAnchor&&function(e){let n,i,t=e.dom.getBoundingClientRect(),a=Math.max(0,t.top);for(let s=(t.left+t.right)/2,o=a+1;o<Math.min(innerHeight,t.bottom);o+=5){let t=e.root.elementFromPoint(s,o);if(!t||t==e.dom||!e.dom.contains(t))continue;let r=t.getBoundingClientRect();if(r.top>=a-20){n=t,i=r.top;break}}return{refDOM:n,refTop:i,stack:zi(e.dom)}}(this);if(s){this.domObserver.stop();let n=l&&(yi||xi)&&!this.composing&&!t.selection.empty&&!e.selection.empty&&function(e,n){let i=Math.min(e.$anchor.sharedDepth(e.head),n.$anchor.sharedDepth(n.head));return e.$anchor.start(i)!=n.$anchor.start(i)}(t.selection,e.selection);if(l){let i=xi?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=Ma(this)),(a||!this.docView.update(e.doc,f,r,this))&&(this.docView.updateOuterDeco(f),this.docView.destroy(),this.docView=ot(e.doc,f,r,this.dom,this)),i&&!this.trackWrites&&(n=!0)}n||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&function(e){let n=e.docView.domFromPos(e.state.selection.anchor,0),i=e.domSelectionRange();return oi(n.node,n.offset,i.anchorNode,i.anchorOffset)}(this))?St(this,n):(Et(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(t),!(null===(i=this.dragging)||void 0===i)&&i.node&&!t.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,t),"reset"==d?this.dom.scrollTop=0:"to selection"==d?this.scrollToSelection():c&&function({refDOM:e,refTop:n,stack:i}){let t=e?e.getBoundingClientRect().top:0;Pi(i,0==t?0:t-n)}(c)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(e&&this.dom.contains(1==e.nodeType?e:e.parentNode)&&!this.someProp("handleScrollToSelection",(e=>e(this))))if(this.state.selection instanceof Ln){let n=this.docView.domAfterPos(this.state.selection.from);1==n.nodeType&&Di(this,n.getBoundingClientRect(),e)}else Di(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(e&&e.plugins==this.state.plugins&&this.directPlugins==this.prevDirectPlugins)for(let n=0;n<this.pluginViews.length;n++){let i=this.pluginViews[n];i.update&&i.update(this,e)}else{this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let e=0;e<this.directPlugins.length;e++){let n=this.directPlugins[e];n.spec.view&&this.pluginViews.push(n.spec.view(this))}for(let e=0;e<this.state.plugins.length;e++){let n=this.state.plugins[e];n.spec.view&&this.pluginViews.push(n.spec.view(this))}}}updateDraggedNode(e,n){let i=e.node,t=-1;if(this.state.doc.nodeAt(i.from)==i.node)t=i.from;else{let e=i.from+(this.state.doc.content.size-n.doc.content.size);(e>0&&this.state.doc.nodeAt(e))==i.node&&(t=e)}this.dragging=new Aa(e.slice,e.move,t<0?void 0:Ln.create(this.state.doc,t))}someProp(e,n){let i,t=this._props&&this._props[e];if(null!=t&&(i=n?n(t):t))return i;for(let t=0;t<this.directPlugins.length;t++){let a=this.directPlugins[t].props[e];if(null!=a&&(i=n?n(a):a))return i}let a=this.state.plugins;if(a)for(let t=0;t<a.length;t++){let s=a[t].props[e];if(null!=s&&(i=n?n(s):s))return i}}hasFocus(){if(yi){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if("false"==e.contentEditable)return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&function(e){if(e.setActive)return e.setActive();if(Bi)return e.focus(Bi);let n=zi(e);e.focus(null==Bi?{get preventScroll(){return Bi={preventScroll:!0},!0}}:void 0),Bi||(Bi=!1,Pi(n,0))}(this.dom),St(this),this.domObserver.start()}get root(){let e=this._root;if(null==e)for(let e=this.dom.parentNode;e;e=e.parentNode)if(9==e.nodeType||11==e.nodeType&&e.host)return e.getSelection||(Object.getPrototypeOf(e).getSelection=()=>e.ownerDocument.getSelection()),this._root=e;return e||document}updateRoot(){this._root=null}posAtCoords(e){return qi(this,e)}coordsAtPos(e,n=1){return Ui(this,e,n)}domAtPos(e,n=0){return this.docView.domFromPos(e,n)}nodeDOM(e){let n=this.docView.descAt(e);return n?n.nodeDOM:null}posAtDOM(e,n,i=-1){let t=this.docView.posFromDOM(e,n,i);if(null==t)throw new RangeError("DOM position not inside the editor");return t}endOfTextblock(e,n){return et(this,n||this.state,e)}pasteHTML(e,n){return Ea(this,"",e,!1,n||new ClipboardEvent("paste"))}pasteText(e,n){return Ea(this,e,null,!0,n||new ClipboardEvent("paste"))}serializeForClipboard(e){return Gt(this,e)}destroy(){this.docView&&(function(e){e.domObserver.stop();for(let n in e.input.eventHandlers)e.dom.removeEventListener(n,e.input.eventHandlers[n]);clearTimeout(e.input.composingTimeout),clearTimeout(e.input.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],Qa(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,ai=null)}get isDestroyed(){return null==this.docView}dispatchEvent(e){return function(e,n){!ca(e,n)&&sa[n.type]&&(e.editable||!(n.type in oa))&&sa[n.type](e,n)}(this,e)}dispatch(e){let n=this._props.dispatchTransaction;n?n.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){let e=this.domSelection();return e?Ci&&11===this.root.nodeType&&function(e){let n=e.activeElement;for(;n&&n.shadowRoot;)n=n.shadowRoot.activeElement;return n}(this.dom.ownerDocument)==this.dom&&function(e,n){if(n.getComposedRanges){let i=n.getComposedRanges(e.root)[0];if(i)return as(e,i)}let i;function t(e){e.preventDefault(),e.stopImmediatePropagation(),i=e.getTargetRanges()[0]}return e.dom.addEventListener("beforeinput",t,!0),document.execCommand("indent"),e.dom.removeEventListener("beforeinput",t,!0),i?as(e,i):null}(this,e)||e:{focusNode:null,focusOffset:0,anchorNode:null,anchorOffset:0}}domSelection(){return this.root.getSelection()}}function ms(e){let n=Object.create(null);return n.class="ProseMirror",n.contenteditable=String(e.editable),e.someProp("attributes",(i=>{if("function"==typeof i&&(i=i(e.state)),i)for(let e in i)"class"==e?n.class+=" "+i[e]:"style"==e?n.style=(n.style?n.style+";":"")+i[e]:!n[e]&&"contenteditable"!=e&&"nodeName"!=e&&(n[e]=String(i[e]))})),n.translate||(n.translate="no"),[Ba.node(0,e.state.doc.content.size,n)]}function ps(e){if(e.markCursor){let n=document.createElement("img");n.className="ProseMirror-separator",n.setAttribute("mark-placeholder","true"),n.setAttribute("alt",""),e.cursorWrapper={dom:n,deco:Ba.widget(e.state.selection.from,n,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function vs(e){return!e.someProp("editable",(n=>!1===n(e.state)))}function gs(e){let n=Object.create(null);function i(e){for(let i in e)Object.prototype.hasOwnProperty.call(n,i)||(n[i]=e[i])}return e.someProp("nodeViews",i),e.someProp("markViews",i),n}function ks(e){if(e.spec.state||e.spec.filterTransaction||e.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}for(var ys={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},ws={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},bs=typeof navigator<"u"&&/Mac/.test(navigator.platform),_s=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),xs=0;xs<10;xs++)ys[48+xs]=ys[96+xs]=String(xs);for(xs=1;xs<=24;xs++)ys[xs+111]="F"+xs;for(xs=65;xs<=90;xs++)ys[xs]=String.fromCharCode(xs+32),ws[xs]=String.fromCharCode(xs);for(var Ss in ys)ws.hasOwnProperty(Ss)||(ws[Ss]=ys[Ss]);const Cs=typeof navigator<"u"&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function Ms(e){let n,i,t,a,s=e.split(/-(?!$)/),o=s[s.length-1];"Space"==o&&(o=" ");for(let e=0;e<s.length-1;e++){let o=s[e];if(/^(cmd|meta|m)$/i.test(o))a=!0;else if(/^a(lt)?$/i.test(o))n=!0;else if(/^(c|ctrl|control)$/i.test(o))i=!0;else if(/^s(hift)?$/i.test(o))t=!0;else{if(!/^mod$/i.test(o))throw new Error("Unrecognized modifier name: "+o);Cs?a=!0:i=!0}}return n&&(o="Alt-"+o),i&&(o="Ctrl-"+o),a&&(o="Meta-"+o),t&&(o="Shift-"+o),o}function Os(e,n,i=!0){return n.altKey&&(e="Alt-"+e),n.ctrlKey&&(e="Ctrl-"+e),n.metaKey&&(e="Meta-"+e),i&&n.shiftKey&&(e="Shift-"+e),e}function Ts(e){let n=function(e){let n=Object.create(null);for(let i in e)n[Ms(i)]=e[i];return n}(e);return function(e,i){let t,a=function(e){var n=!(bs&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||_s&&e.shiftKey&&e.key&&1==e.key.length||"Unidentified"==e.key)&&e.key||(e.shiftKey?ws:ys)[e.keyCode]||e.key||"Unidentified";return"Esc"==n&&(n="Escape"),"Del"==n&&(n="Delete"),"Left"==n&&(n="ArrowLeft"),"Up"==n&&(n="ArrowUp"),"Right"==n&&(n="ArrowRight"),"Down"==n&&(n="ArrowDown"),n}(i),s=n[Os(a,i)];if(s&&s(e.state,e.dispatch,e))return!0;if(1==a.length&&" "!=a){if(i.shiftKey){let t=n[Os(a,i,!1)];if(t&&t(e.state,e.dispatch,e))return!0}if((i.shiftKey||i.altKey||i.metaKey||a.charCodeAt(0)>127)&&(t=ys[i.keyCode])&&t!=a){let a=n[Os(t,i)];if(a&&a(e.state,e.dispatch,e))return!0}}return!1}}function Es(e,n){let{$cursor:i}=e.selection;return!i||(n?!n.endOfTextblock("backward",e):i.parentOffset>0)?null:i}function Fs(e,n,i){let t=n.nodeBefore,a=n.pos-1;for(;!t.isTextblock;a--){if(t.type.spec.isolating)return!1;let e=t.lastChild;if(!e)return!1;t=e}let s=n.nodeAfter,o=n.pos+1;for(;!s.isTextblock;o++){if(s.type.spec.isolating)return!1;let e=s.firstChild;if(!e)return!1;s=e}let r=gn(e.doc,a,o,H.empty);if(!r||r.from!=a||r instanceof tn&&r.slice.size>=o-a)return!1;if(i){let n=e.tr.step(r);n.setSelection(Pn.create(n.doc,a)),i(n.scrollIntoView())}return!0}function As(e,n,i=!1){for(let t=e;t;t="start"==n?t.firstChild:t.lastChild){if(t.isTextblock)return!0;if(i&&1!=t.childCount)return!1}return!1}function Ns(e){if(!e.parent.type.spec.isolating)for(let n=e.depth-1;n>=0;n--){if(e.index(n)>0)return e.doc.resolve(e.before(n+1));if(e.node(n).type.spec.isolating)break}return null}function js(e,n){let{$cursor:i}=e.selection;return!i||(n?!n.endOfTextblock("forward",e):i.parentOffset<i.parent.content.size)?null:i}function Rs(e){if(!e.parent.type.spec.isolating)for(let n=e.depth-1;n>=0;n--){let i=e.node(n);if(e.index(n)+1<i.childCount)return e.doc.resolve(e.after(n+1));if(i.type.spec.isolating)break}return null}function Ds(e){for(let n=0;n<e.edgeCount;n++){let{type:i}=e.edge(n);if(i.isTextblock&&!i.hasRequiredAttrs())return i}return null}function zs(e,n,i,t){let a,s,o=n.nodeBefore,r=n.nodeAfter,f=o.type.spec.isolating||r.type.spec.isolating;if(!f&&function(e,n,i){let t=n.nodeBefore,a=n.nodeAfter,s=n.index();return!(!(t&&a&&t.type.compatibleContent(a.type))||(!t.content.size&&n.parent.canReplace(s-1,s)?(i&&i(e.tr.delete(n.pos-t.nodeSize,n.pos).scrollIntoView()),0):!n.parent.canReplace(s,s+1)||!a.isTextblock&&!mn(e.doc,n.pos)||(i&&i(e.tr.join(n.pos).scrollIntoView()),0)))}(e,n,i))return!0;let d=!f&&n.parent.canReplace(n.index(),n.index()+1);if(d&&(a=(s=o.contentMatchAt(o.childCount)).findWrapping(r.type))&&s.matchType(a[0]||r.type).validEnd){if(i){let t=n.pos+r.nodeSize,s=D.empty;for(let e=a.length-1;e>=0;e--)s=D.from(a[e].create(null,s));s=D.from(o.copy(s));let f=e.tr.step(new an(n.pos-1,t,n.pos,t,new H(s,1,0),a.length,!0)),d=f.doc.resolve(t+2*a.length);d.nodeAfter&&d.nodeAfter.type==o.type&&mn(f.doc,d.pos)&&f.join(d.pos),i(f.scrollIntoView())}return!0}let l=r.type.spec.isolating||t>0&&f?null:jn.findFrom(n,1),c=l&&l.$from.blockRange(l.$to),u=c&&fn(c);if(null!=u&&u>=n.depth)return i&&i(e.tr.lift(c,u).scrollIntoView()),!0;if(d&&As(r,"start",!0)&&As(o,"end")){let t=o,a=[];for(;a.push(t),!t.isTextblock;)t=t.lastChild;let s=r,f=1;for(;!s.isTextblock;s=s.firstChild)f++;if(t.canReplace(t.childCount,t.childCount,s.content)){if(i){let t=D.empty;for(let e=a.length-1;e>=0;e--)t=D.from(a[e].copy(t));i(e.tr.step(new an(n.pos-a.length,n.pos+r.nodeSize,n.pos+f,n.pos+r.nodeSize-f,new H(t,a.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function Ps(e){return function(n,i){let t=n.selection,a=e<0?t.$from:t.$to,s=a.depth;for(;a.node(s).isInline;){if(!s)return!1;s--}return!!a.node(s).isTextblock&&(i&&i(n.tr.setSelection(Pn.create(n.doc,e<0?a.start(s):a.end(s)))),!0)}}const Bs=Ps(-1),Ls=Ps(1);function Is(e,n=null){return function(i,t){let a=!1;for(let t=0;t<i.selection.ranges.length&&!a;t++){let{$from:{pos:s},$to:{pos:o}}=i.selection.ranges[t];i.doc.nodesBetween(s,o,((t,s)=>{if(a)return!1;if(t.isTextblock&&!t.hasMarkup(e,n))if(t.type==e)a=!0;else{let n=i.doc.resolve(s),t=n.index();a=n.parent.canReplaceWith(t,t+1,e)}}))}if(!a)return!1;if(t){let a=i.tr;for(let t=0;t<i.selection.ranges.length;t++){let{$from:{pos:s},$to:{pos:o}}=i.selection.ranges[t];a.setBlockType(s,o,e,n)}t(a.scrollIntoView())}return!0}}function Hs(e,n=null){return function(i,t){let{$from:a,$to:s}=i.selection,o=a.blockRange(s);if(!o)return!1;let r=t?i.tr:null;return!!function(e,n,i,t=null){let a=!1,s=n,o=n.$from.doc;if(n.depth>=2&&n.$from.node(n.depth-1).type.compatibleContent(i)&&0==n.startIndex){if(0==n.$from.index(n.depth-1))return!1;let e=o.resolve(n.start-2);s=new te(e,e,n.depth),n.endIndex<n.parent.childCount&&(n=new te(n.$from,o.resolve(n.$to.end(n.depth)),n.depth)),a=!0}let r=dn(s,i,t,n);return!!r&&(e&&function(e,n,i,t,a){let s=D.empty;for(let e=i.length-1;e>=0;e--)s=D.from(i[e].type.create(i[e].attrs,s));e.step(new an(n.start-(t?2:0),n.end,n.start,n.end,new H(s,0,0),i.length,!0));let o=0;for(let e=0;e<i.length;e++)i[e].type==a&&(o=e+1);let r=i.length-o,f=n.start+i.length-(t?2:0),d=n.parent;for(let i=n.startIndex,t=n.endIndex,a=!0;i<t;i++,a=!1)!a&&hn(e.doc,f,r)&&(e.split(f,r),f+=2*r),f+=d.child(i).nodeSize}(e,n,r,a,i),!0)}(r,o,e,n)&&(t&&t(r.scrollIntoView()),!0)}}function qs(e){return function(n,i){let{$from:t,$to:a}=n.selection,s=t.blockRange(a,(n=>n.childCount>0&&n.firstChild.type==e));return!!s&&(!i||(t.node(s.depth-1).type==e?function(e,n,i,t){let a=e.tr,s=t.end,o=t.$to.end(t.depth);s<o&&(a.step(new an(s-1,o,s,o,new H(D.from(i.create(null,t.parent.copy())),1,0),1,!0)),t=new te(a.doc.resolve(t.$from.pos),a.doc.resolve(o),t.depth));const r=fn(t);if(null==r)return!1;a.lift(t,r);let f=a.doc.resolve(a.mapping.map(s,-1)-1);return mn(a.doc,f.pos)&&f.nodeBefore.type==f.nodeAfter.type&&a.join(f.pos),n(a.scrollIntoView()),!0}(n,i,e,s):function(e,n,i){let t=e.tr,a=i.parent;for(let e=i.end,n=i.endIndex-1,s=i.startIndex;n>s;n--)e-=a.child(n).nodeSize,t.delete(e-1,e+1);let s=t.doc.resolve(i.start),o=s.nodeAfter;if(t.mapping.map(i.end)!=i.start+s.nodeAfter.nodeSize)return!1;let r=0==i.startIndex,f=i.endIndex==a.childCount,d=s.node(-1),l=s.index(-1);if(!d.canReplace(l+(r?0:1),l+1,o.content.append(f?D.empty:D.from(a))))return!1;let c=s.pos,u=c+o.nodeSize;return t.step(new an(c-(r?1:0),u+(f?1:0),c+1,u-1,new H((r?D.empty:D.from(a.copy(D.empty))).append(f?D.empty:D.from(a.copy(D.empty))),r?0:1,f?0:1),r?0:1)),n(t.scrollIntoView()),!0}(n,i,s)))}}function Ws(e){const{state:n,transaction:i}=e;let{selection:t}=i,{doc:a}=i,{storedMarks:s}=i;return{...n,apply:n.apply.bind(n),applyTransaction:n.applyTransaction.bind(n),plugins:n.plugins,schema:n.schema,reconfigure:n.reconfigure.bind(n),toJSON:n.toJSON.bind(n),get storedMarks(){return s},get selection(){return t},get doc(){return a},get tr(){return t=i.selection,a=i.doc,s=i.storedMarks,i}}}typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform&&os.platform();class $s{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state}get hasCustomState(){return!!this.customState}get state(){return this.customState||this.editor.state}get commands(){const{rawCommands:e,editor:n,state:i}=this,{view:t}=n,{tr:a}=i,s=this.buildProps(a);return Object.fromEntries(Object.entries(e).map((([e,n])=>[e,(...e)=>{const i=n(...e)(s);return!a.getMeta("preventDispatch")&&!this.hasCustomState&&t.dispatch(a),i}])))}get chain(){return()=>this.createChain()}get can(){return()=>this.createCan()}createChain(e,n=!0){const{rawCommands:i,editor:t,state:a}=this,{view:s}=t,o=[],r=!!e,f=e||a.tr,d={...Object.fromEntries(Object.entries(i).map((([e,i])=>[e,(...e)=>{const t=this.buildProps(f,n),a=i(...e)(t);return o.push(a),d}]))),run:()=>(!r&&n&&!f.getMeta("preventDispatch")&&!this.hasCustomState&&s.dispatch(f),o.every((e=>!0===e)))};return d}createCan(e){const{rawCommands:n,state:i}=this,t=e||i.tr,a=this.buildProps(t,false);return{...Object.fromEntries(Object.entries(n).map((([e,n])=>[e,(...e)=>n(...e)({...a,dispatch:void 0})]))),chain:()=>this.createChain(t,false)}}buildProps(e,n=!0){const{rawCommands:i,editor:t,state:a}=this,{view:s}=t,o={tr:e,editor:t,view:s,state:Ws({state:a,transaction:e}),dispatch:n?()=>{}:void 0,chain:()=>this.createChain(e,n),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(i).map((([e,n])=>[e,(...e)=>n(...e)(o)])))}};return o}}class Vs{constructor(){this.callbacks={}}on(e,n){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(n),this}emit(e,...n){const i=this.callbacks[e];return i&&i.forEach((e=>e.apply(this,n))),this}off(e,n){const i=this.callbacks[e];return i&&(n?this.callbacks[e]=i.filter((e=>e!==n)):delete this.callbacks[e]),this}once(e,n){const i=(...t)=>{this.off(e,i),n.apply(this,t)};return this.on(e,i)}removeAllListeners(){this.callbacks={}}}function Us(e,n,i){return void 0===e.config[n]&&e.parent?Us(e.parent,n,i):"function"==typeof e.config[n]?e.config[n].bind({...i,parent:e.parent?Us(e.parent,n,i):null}):e.config[n]}function Gs(e){return{baseExtensions:e.filter((e=>"extension"===e.type)),nodeExtensions:e.filter((e=>"node"===e.type)),markExtensions:e.filter((e=>"mark"===e.type))}}function Ks(e){const n=[],{nodeExtensions:i,markExtensions:t}=Gs(e),a=[...i,...t],s={default:null,rendered:!0,renderHTML:null,parseHTML:null,keepOnSplit:!0,isRequired:!1};return e.forEach((e=>{const i=Us(e,"addGlobalAttributes",{name:e.name,options:e.options,storage:e.storage,extensions:a});i&&i().forEach((e=>{e.types.forEach((i=>{Object.entries(e.attributes).forEach((([e,t])=>{n.push({type:i,name:e,attribute:{...s,...t}})}))}))}))})),a.forEach((e=>{const i={name:e.name,options:e.options,storage:e.storage},t=Us(e,"addAttributes",i);if(!t)return;const a=t();Object.entries(a).forEach((([i,t])=>{const a={...s,...t};"function"==typeof(null==a?void 0:a.default)&&(a.default=a.default()),null!=a&&a.isRequired&&void 0===(null==a?void 0:a.default)&&delete a.default,n.push({type:e.name,name:i,attribute:a})}))})),n}function Js(e,n){if("string"==typeof e){if(!n.nodes[e])throw Error(`There is no node type named '${e}'. Maybe you forgot to add the extension?`);return n.nodes[e]}return e}function Ys(...e){return e.filter((e=>!!e)).reduce(((e,n)=>{const i={...e};return Object.entries(n).forEach((([e,n])=>{if(i[e])if("class"===e){const t=n?String(n).split(" "):[],a=i[e]?i[e].split(" "):[],s=t.filter((e=>!a.includes(e)));i[e]=[...a,...s].join(" ")}else if("style"===e){const t=n?n.split(";").map((e=>e.trim())).filter(Boolean):[],a=i[e]?i[e].split(";").map((e=>e.trim())).filter(Boolean):[],s=new Map;a.forEach((e=>{const[n,i]=e.split(":").map((e=>e.trim()));s.set(n,i)})),t.forEach((e=>{const[n,i]=e.split(":").map((e=>e.trim()));s.set(n,i)})),i[e]=Array.from(s.entries()).map((([e,n])=>`${e}: ${n}`)).join("; ")}else i[e]=n;else i[e]=n})),i}),{})}function Qs(e,n){return n.filter((n=>n.type===e.type.name)).filter((e=>e.attribute.rendered)).map((n=>n.attribute.renderHTML?n.attribute.renderHTML(e.attrs)||{}:{[n.name]:e.attrs[n.name]})).reduce(((e,n)=>Ys(e,n)),{})}function Xs(e){return"function"==typeof e}function Zs(e,n=void 0,...i){return Xs(e)?n?e.bind(n)(...i):e(...i):e}function eo(e,n){return"style"in e?e:{...e,getAttrs:i=>{const t=e.getAttrs?e.getAttrs(i):e.attrs;if(!1===t)return!1;const a=n.reduce(((e,n)=>{const t=n.attribute.parseHTML?n.attribute.parseHTML(i):function(e){return"string"!=typeof e?e:e.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(e):"true"===e||"false"!==e&&e}(i.getAttribute(n.name));return null==t?e:{...e,[n.name]:t}}),{});return{...t,...a}}}}function no(e){return Object.fromEntries(Object.entries(e).filter((([e,n])=>("attrs"!==e||!function(e={}){return 0===Object.keys(e).length&&e.constructor===Object}(n))&&null!=n)))}function io(e,n){return n.nodes[e]||n.marks[e]||null}function to(e,n){return Array.isArray(n)?n.some((n=>("string"==typeof n?n:n.name)===e.name)):n}function ao(e,n){const i=ze.fromSchema(n).serializeFragment(e),t=document.implementation.createHTMLDocument().createElement("div");return t.appendChild(i),t.innerHTML}const so=(e,n=500)=>{let i="";const t=e.parentOffset;return e.parent.nodesBetween(Math.max(0,t-n),t,((e,n,a,s)=>{var o,r;const f=(null===(r=(o=e.type.spec).toText)||void 0===r?void 0:r.call(o,{node:e,pos:n,parent:a,index:s}))||e.textContent||"%leaf%";i+=e.isAtom&&!e.isText?f:f.slice(0,Math.max(0,t-n))})),i};function oo(e){return"[object RegExp]"===Object.prototype.toString.call(e)}class ro{constructor(e){this.find=e.find,this.handler=e.handler}}const fo=(e,n)=>{if(oo(n))return n.exec(e);const i=n(e);if(!i)return null;const t=[i.text];return t.index=i.index,t.input=e,t.data=i.data,i.replaceWith&&(i.text.includes(i.replaceWith)||console.warn('[tiptap warn]: "inputRuleMatch.replaceWith" must be part of "inputRuleMatch.text".'),t.push(i.replaceWith)),t};function lo(e){var n;const{editor:i,from:t,to:a,text:s,rules:o,plugin:r}=e,{view:f}=i;if(f.composing)return!1;const d=f.state.doc.resolve(t);if(d.parent.type.spec.code||null!==(n=d.nodeBefore||d.nodeAfter)&&void 0!==n&&n.marks.find((e=>e.type.spec.code)))return!1;let l=!1;const c=so(d)+s;return o.forEach((e=>{if(l)return;const n=fo(c,e.find);if(!n)return;const o=f.state.tr,d=Ws({state:f.state,transaction:o}),u={from:t-(n[0].length-s.length),to:a},{commands:h,chain:m,can:p}=new $s({editor:i,state:d});null===e.handler({state:d,range:u,match:n,commands:h,chain:m,can:p})||!o.steps.length||(o.setMeta(r,{transform:o,from:t,to:a,text:s}),f.dispatch(o),l=!0)})),l}function co(e){const{editor:n,rules:i}=e,t=new Xn({state:{init:()=>null,apply(e,a,s){const o=e.getMeta(t);if(o)return o;const r=e.getMeta("applyInputRules");return!!r&&setTimeout((()=>{let{text:e}=r;"string"==typeof e||(e=ao(D.from(e),s.schema));const{from:a}=r,o=a+e.length;lo({editor:n,from:a,to:o,text:e,rules:i,plugin:t})})),e.selectionSet||e.docChanged?null:a}},props:{handleTextInput:(e,a,s,o)=>lo({editor:n,from:a,to:s,text:o,rules:i,plugin:t}),handleDOMEvents:{compositionend:e=>(setTimeout((()=>{const{$cursor:a}=e.state.selection;a&&lo({editor:n,from:a.pos,to:a.pos,text:"",rules:i,plugin:t})})),!1)},handleKeyDown(e,a){if("Enter"!==a.key)return!1;const{$cursor:s}=e.state.selection;return!!s&&lo({editor:n,from:s.pos,to:s.pos,text:"\n",rules:i,plugin:t})}},isInputRules:!0});return t}function uo(e){return"Object"===function(e){return Object.prototype.toString.call(e).slice(8,-1)}(e)&&(e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype)}function ho(e,n){const i={...e};return uo(e)&&uo(n)&&Object.keys(n).forEach((t=>{uo(n[t])&&uo(e[t])?i[t]=ho(e[t],n[t]):i[t]=n[t]})),i}class mo{constructor(e={}){this.type="mark",this.name="mark",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Zs(Us(this,"addOptions",{name:this.name}))),this.storage=Zs(Us(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new mo(e)}configure(e={}){const n=this.extend({...this.config,addOptions:()=>ho(this.options,e)});return n.name=this.name,n.parent=this.parent,n}extend(e={}){const n=new mo(e);return n.parent=this,this.child=n,n.name=e.name?e.name:n.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=Zs(Us(n,"addOptions",{name:n.name})),n.storage=Zs(Us(n,"addStorage",{name:n.name,options:n.options})),n}static handleExit({editor:e,mark:n}){const{tr:i}=e.state,t=e.state.selection.$from;if(t.pos===t.end()){const a=t.marks();if(!a.find((e=>(null==e?void 0:e.type.name)===n.name)))return!1;const s=a.find((e=>(null==e?void 0:e.type.name)===n.name));return s&&i.removeStoredMark(s),i.insertText(" ",t.pos),e.view.dispatch(i),!0}return!1}}class po{constructor(e){this.find=e.find,this.handler=e.handler}}const vo=(e,n,i)=>{if(oo(n))return[...e.matchAll(n)];const t=n(e,i);return t?t.map((n=>{const i=[n.text];return i.index=n.index,i.input=e,i.data=n.data,n.replaceWith&&(n.text.includes(n.replaceWith)||console.warn('[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".'),i.push(n.replaceWith)),i})):[]};let go=null;function ko(e){const{editor:n,rules:i}=e;let t,a=null,s=!1,o=!1,r=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null;try{t=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{t=null}const f=({state:e,from:i,to:a,rule:s,pasteEvt:o})=>{const f=e.tr,d=Ws({state:e,transaction:f});if(function(e){const{editor:n,state:i,from:t,to:a,rule:s,pasteEvent:o,dropEvent:r}=e,{commands:f,chain:d,can:l}=new $s({editor:n,state:i}),c=[];return i.doc.nodesBetween(t,a,((e,n)=>{if(!e.isTextblock||e.type.spec.code)return;const u=Math.max(t,n),h=Math.min(a,n+e.content.size),m=e.textBetween(u-n,h-n,void 0,"");vo(m,s.find,o).forEach((e=>{if(void 0===e.index)return;const n=u+e.index+1,t=n+e[0].length,a={from:i.tr.mapping.map(n),to:i.tr.mapping.map(t)},h=s.handler({state:i,range:a,match:e,commands:f,chain:d,can:l,pasteEvent:o,dropEvent:r});c.push(h)}))})),c.every((e=>null!==e))}({editor:n,state:d,from:Math.max(i-1,0),to:a.b-1,rule:s,pasteEvent:o,dropEvent:t})&&f.steps.length){try{t=typeof DragEvent<"u"?new DragEvent("drop"):null}catch{t=null}return r=typeof ClipboardEvent<"u"?new ClipboardEvent("paste"):null,f}};return i.map((e=>new Xn({view(e){const i=i=>{var t;a=null!==(t=e.dom.parentElement)&&void 0!==t&&t.contains(i.target)?e.dom.parentElement:null,a&&(go=n)},t=()=>{go&&(go=null)};return window.addEventListener("dragstart",i),window.addEventListener("dragend",t),{destroy(){window.removeEventListener("dragstart",i),window.removeEventListener("dragend",t)}}},props:{handleDOMEvents:{drop:(e,n)=>{if(o=a===e.dom.parentElement,t=n,!o){const e=go;e&&setTimeout((()=>{const n=e.state.selection;n&&e.commands.deleteRange({from:n.from,to:n.to})}),10)}return!1},paste:(e,n)=>{var i;const t=null===(i=n.clipboardData)||void 0===i?void 0:i.getData("text/html");return r=n,s=!(null==t||!t.includes("data-pm-slice")),!1}}},appendTransaction:(n,i,t)=>{const a=n[0],d="paste"===a.getMeta("uiEvent")&&!s,l="drop"===a.getMeta("uiEvent")&&!o,c=a.getMeta("applyPasteRules"),u=!!c;if(!d&&!l&&!u)return;if(u){let{text:n}=c;"string"==typeof n||(n=ao(D.from(n),t.schema));const{from:i}=c,a=i+n.length,s=(e=>{var n;const i=new ClipboardEvent("paste",{clipboardData:new DataTransfer});return null===(n=i.clipboardData)||void 0===n||n.setData("text/html",e),i})(n);return f({rule:e,state:t,from:i,to:{b:a},pasteEvt:s})}const h=i.doc.content.findDiffStart(t.doc.content),m=i.doc.content.findDiffEnd(t.doc.content);return function(e){return"number"==typeof e}(h)&&m&&h!==m.b?f({rule:e,state:t,from:h,to:m,pasteEvt:r}):void 0}})))}class yo{constructor(e,n){this.splittableMarks=[],this.editor=n,this.extensions=yo.resolve(e),this.schema=function(e,n){var i;const t=Ks(e),{nodeExtensions:a,markExtensions:s}=Gs(e),o=null===(i=a.find((e=>Us(e,"topNode"))))||void 0===i?void 0:i.name,r=Object.fromEntries(a.map((i=>{const a=t.filter((e=>e.type===i.name)),s={name:i.name,options:i.options,storage:i.storage,editor:n},o=no({...e.reduce(((e,n)=>{const t=Us(n,"extendNodeSchema",s);return{...e,...t?t(i):{}}}),{}),content:Zs(Us(i,"content",s)),marks:Zs(Us(i,"marks",s)),group:Zs(Us(i,"group",s)),inline:Zs(Us(i,"inline",s)),atom:Zs(Us(i,"atom",s)),selectable:Zs(Us(i,"selectable",s)),draggable:Zs(Us(i,"draggable",s)),code:Zs(Us(i,"code",s)),whitespace:Zs(Us(i,"whitespace",s)),linebreakReplacement:Zs(Us(i,"linebreakReplacement",s)),defining:Zs(Us(i,"defining",s)),isolating:Zs(Us(i,"isolating",s)),attrs:Object.fromEntries(a.map((e=>{var n;return[e.name,{default:null===(n=null==e?void 0:e.attribute)||void 0===n?void 0:n.default}]})))}),r=Zs(Us(i,"parseHTML",s));r&&(o.parseDOM=r.map((e=>eo(e,a))));const f=Us(i,"renderHTML",s);f&&(o.toDOM=e=>f({node:e,HTMLAttributes:Qs(e,a)}));const d=Us(i,"renderText",s);return d&&(o.toText=d),[i.name,o]}))),f=Object.fromEntries(s.map((i=>{const a=t.filter((e=>e.type===i.name)),s={name:i.name,options:i.options,storage:i.storage,editor:n},o=no({...e.reduce(((e,n)=>{const t=Us(n,"extendMarkSchema",s);return{...e,...t?t(i):{}}}),{}),inclusive:Zs(Us(i,"inclusive",s)),excludes:Zs(Us(i,"excludes",s)),group:Zs(Us(i,"group",s)),spanning:Zs(Us(i,"spanning",s)),code:Zs(Us(i,"code",s)),attrs:Object.fromEntries(a.map((e=>{var n;return[e.name,{default:null===(n=null==e?void 0:e.attribute)||void 0===n?void 0:n.default}]})))}),r=Zs(Us(i,"parseHTML",s));r&&(o.parseDOM=r.map((e=>eo(e,a))));const f=Us(i,"renderHTML",s);return f&&(o.toDOM=e=>f({mark:e,HTMLAttributes:Qs(e,a)})),[i.name,o]})));return new Se({topNode:o,nodes:r,marks:f})}(this.extensions,n),this.setupExtensions()}static resolve(e){const n=yo.sort(yo.flatten(e)),i=function(e){const n=e.filter(((n,i)=>e.indexOf(n)!==i));return Array.from(new Set(n))}(n.map((e=>e.name)));return i.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${i.map((e=>`'${e}'`)).join(", ")}]. This can lead to issues.`),n}static flatten(e){return e.map((e=>{const n=Us(e,"addExtensions",{name:e.name,options:e.options,storage:e.storage});return n?[e,...this.flatten(n())]:e})).flat(10)}static sort(e){return e.sort(((e,n)=>{const i=Us(e,"priority")||100,t=Us(n,"priority")||100;return i>t?-1:i<t?1:0}))}get commands(){return this.extensions.reduce(((e,n)=>{const i=Us(n,"addCommands",{name:n.name,options:n.options,storage:n.storage,editor:this.editor,type:io(n.name,this.schema)});return i?{...e,...i()}:e}),{})}get plugins(){const{editor:e}=this,n=yo.sort([...this.extensions].reverse()),i=[],t=[],a=n.map((n=>{const a={name:n.name,options:n.options,storage:n.storage,editor:e,type:io(n.name,this.schema)},s=[],o=Us(n,"addKeyboardShortcuts",a);let r={};if("mark"===n.type&&Us(n,"exitable",a)&&(r.ArrowRight=()=>mo.handleExit({editor:e,mark:n})),o){const n=Object.fromEntries(Object.entries(o()).map((([n,i])=>[n,()=>i({editor:e})])));r={...r,...n}}const f=new Xn({props:{handleKeyDown:Ts(r)}});s.push(f);const d=Us(n,"addInputRules",a);to(n,e.options.enableInputRules)&&d&&i.push(...d());const l=Us(n,"addPasteRules",a);to(n,e.options.enablePasteRules)&&l&&t.push(...l());const c=Us(n,"addProseMirrorPlugins",a);if(c){const e=c();s.push(...e)}return s})).flat();return[co({editor:e,rules:i}),...ko({editor:e,rules:t}),...a]}get attributes(){return Ks(this.extensions)}get nodeViews(){const{editor:e}=this,{nodeExtensions:n}=Gs(this.extensions);return Object.fromEntries(n.filter((e=>!!Us(e,"addNodeView"))).map((n=>{const i=this.attributes.filter((e=>e.type===n.name)),t={name:n.name,options:n.options,storage:n.storage,editor:e,type:Js(n.name,this.schema)},a=Us(n,"addNodeView",t);if(!a)return[];return[n.name,(t,s,o,r,f)=>{const d=Qs(t,i);return a()({node:t,view:s,getPos:o,decorations:r,innerDecorations:f,editor:e,extension:n,HTMLAttributes:d})}]})))}setupExtensions(){this.extensions.forEach((e=>{var n;this.editor.extensionStorage[e.name]=e.storage;const i={name:e.name,options:e.options,storage:e.storage,editor:this.editor,type:io(e.name,this.schema)};"mark"===e.type&&(null===(n=Zs(Us(e,"keepOnSplit",i)))||void 0===n||n)&&this.splittableMarks.push(e.name);const t=Us(e,"onBeforeCreate",i),a=Us(e,"onCreate",i),s=Us(e,"onUpdate",i),o=Us(e,"onSelectionUpdate",i),r=Us(e,"onTransaction",i),f=Us(e,"onFocus",i),d=Us(e,"onBlur",i),l=Us(e,"onDestroy",i);t&&this.editor.on("beforeCreate",t),a&&this.editor.on("create",a),s&&this.editor.on("update",s),o&&this.editor.on("selectionUpdate",o),r&&this.editor.on("transaction",r),f&&this.editor.on("focus",f),d&&this.editor.on("blur",d),l&&this.editor.on("destroy",l)}))}}class wo{constructor(e={}){this.type="extension",this.name="extension",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Zs(Us(this,"addOptions",{name:this.name}))),this.storage=Zs(Us(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new wo(e)}configure(e={}){const n=this.extend({...this.config,addOptions:()=>ho(this.options,e)});return n.name=this.name,n.parent=this.parent,n}extend(e={}){const n=new wo({...this.config,...e});return n.parent=this,this.child=n,n.name=e.name?e.name:n.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=Zs(Us(n,"addOptions",{name:n.name})),n.storage=Zs(Us(n,"addStorage",{name:n.name,options:n.options})),n}}function bo(e,n,i){const{from:t,to:a}=n,{blockSeparator:s="\n\n",textSerializers:o={}}=i||{};let r="";return e.nodesBetween(t,a,((e,i,f,d)=>{var l;e.isBlock&&i>t&&(r+=s);const c=null==o?void 0:o[e.type.name];if(c)return f&&(r+=c({node:e,pos:i,parent:f,index:d,range:n})),!1;e.isText&&(r+=null===(l=null==e?void 0:e.text)||void 0===l?void 0:l.slice(Math.max(t,i)-i,a-i))})),r}function _o(e){return Object.fromEntries(Object.entries(e.nodes).filter((([,e])=>e.spec.toText)).map((([e,n])=>[e,n.spec.toText])))}const xo=wo.create({name:"clipboardTextSerializer",addOptions:()=>({blockSeparator:void 0}),addProseMirrorPlugins(){return[new Xn({key:new ni("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{const{editor:e}=this,{state:n,schema:i}=e,{doc:t,selection:a}=n,{ranges:s}=a,o=Math.min(...s.map((e=>e.$from.pos))),r=Math.max(...s.map((e=>e.$to.pos))),f=_o(i);return bo(t,{from:o,to:r},{...void 0!==this.options.blockSeparator?{blockSeparator:this.options.blockSeparator}:{},textSerializers:f})}}})]}});function So(e,n,i={strict:!0}){const t=Object.keys(n);return!t.length||t.every((t=>i.strict?n[t]===e[t]:oo(n[t])?n[t].test(e[t]):n[t]===e[t]))}function Co(e,n,i={}){return e.find((e=>e.type===n&&So(Object.fromEntries(Object.keys(i).map((n=>[n,e.attrs[n]]))),i)))}function Mo(e,n,i={}){return!!Co(e,n,i)}function Oo(e,n,i){var t;if(!e||!n)return;let a=e.parent.childAfter(e.parentOffset);if((!a.node||!a.node.marks.some((e=>e.type===n)))&&(a=e.parent.childBefore(e.parentOffset)),!a.node||!a.node.marks.some((e=>e.type===n))||(i=i||(null===(t=a.node.marks[0])||void 0===t?void 0:t.attrs),!Co([...a.node.marks],n,i)))return;let s=a.index,o=e.start()+a.offset,r=s+1,f=o+a.node.nodeSize;for(;s>0&&Mo([...e.parent.child(s-1).marks],n,i);)s-=1,o-=e.parent.child(s).nodeSize;for(;r<e.parent.childCount&&Mo([...e.parent.child(r).marks],n,i);)f+=e.parent.child(r).nodeSize,r+=1;return{from:o,to:f}}function To(e,n){if("string"==typeof e){if(!n.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return n.marks[e]}return e}function Eo(e){return e instanceof Pn}function Fo(e=0,n=0,i=0){return Math.min(Math.max(e,n),i)}function Ao(e,n=null){if(!n)return null;const i=jn.atStart(e),t=jn.atEnd(e);if("start"===n||!0===n)return i;if("end"===n)return t;const a=i.from,s=t.to;return"all"===n?Pn.create(e,Fo(0,a,s),Fo(e.content.size,a,s)):Pn.create(e,Fo(n,a,s),Fo(n,a,s))}function No(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}const jo=e=>{const n=e.childNodes;for(let i=n.length-1;i>=0;i-=1){const t=n[i];3===t.nodeType&&t.nodeValue&&/^(\n\s\s|\n)$/.test(t.nodeValue)?e.removeChild(t):1===t.nodeType&&jo(t)}return e};function Ro(e){const n=`<body>${e}</body>`,i=(new window.DOMParser).parseFromString(n,"text/html").body;return jo(i)}function Do(e,n,i){if(e instanceof se||e instanceof D)return e;i={slice:!0,parseOptions:{},...i};const t="string"==typeof e;if("object"==typeof e&&null!==e)try{if(Array.isArray(e)&&e.length>0)return D.fromArray(e.map((e=>n.nodeFromJSON(e))));const t=n.nodeFromJSON(e);return i.errorOnInvalidContent&&t.check(),t}catch(t){if(i.errorOnInvalidContent)throw new Error("[tiptap error]: Invalid JSON content",{cause:t});return console.warn("[tiptap warn]: Invalid content.","Passed value:",e,"Error:",t),Do("",n,i)}if(t){if(i.errorOnInvalidContent){let t=!1,a="";const s=new Se({topNode:n.spec.topNode,marks:n.spec.marks,nodes:n.spec.nodes.append({__tiptap__private__unknown__catch__all__node:{content:"inline*",group:"block",parseDOM:[{tag:"*",getAttrs:e=>(t=!0,a="string"==typeof e?e:e.outerHTML,null)}]}})});if(i.slice?Me.fromSchema(s).parseSlice(Ro(e),i.parseOptions):Me.fromSchema(s).parse(Ro(e),i.parseOptions),i.errorOnInvalidContent&&t)throw new Error("[tiptap error]: Invalid HTML content",{cause:new Error(`Invalid element found: ${a}`)})}const t=Me.fromSchema(n);return i.slice?t.parseSlice(Ro(e),i.parseOptions).content:t.parse(Ro(e),i.parseOptions)}return Do("",n,i)}function zo(){return typeof navigator<"u"&&/Mac/.test(navigator.platform)}function Po(e,n,i={}){const{from:t,to:a,empty:s}=e.selection,o=n?Js(n,e.schema):null,r=[];e.doc.nodesBetween(t,a,((e,n)=>{if(e.isText)return;const i=Math.max(t,n),s=Math.min(a,n+e.nodeSize);r.push({node:e,from:i,to:s})}));const f=a-t,d=r.filter((e=>!o||o.name===e.node.type.name)).filter((e=>So(e.node.attrs,i,{strict:!1})));return s?!!d.length:d.reduce(((e,n)=>e+n.to-n.from),0)>=f}function Bo(e,n){return n.nodes[e]?"node":n.marks[e]?"mark":null}function Lo(e,n){const i="string"==typeof n?[n]:n;return Object.keys(e).reduce(((n,t)=>(i.includes(t)||(n[t]=e[t]),n)),{})}function Io(e,n,i={},t={}){return Do(e,n,{slice:!1,parseOptions:i,errorOnInvalidContent:t.errorOnInvalidContent})}function Ho(e,n){const i=To(n,e.schema),{from:t,to:a,empty:s}=e.selection,o=[];s?(e.storedMarks&&o.push(...e.storedMarks),o.push(...e.selection.$head.marks())):e.doc.nodesBetween(t,a,(e=>{o.push(...e.marks)}));const r=o.find((e=>e.type.name===i.name));return r?{...r.attrs}:{}}function qo(e){return n=>function(e,n){for(let i=e.depth;i>0;i-=1){const t=e.node(i);if(n(t))return{pos:i>0?e.before(i):0,start:e.start(i),depth:i,node:t}}}(n.$from,e)}function Wo(e,n){const i=Bo("string"==typeof n?n:n.name,e.schema);return"node"===i?function(e,n){const i=Js(n,e.schema),{from:t,to:a}=e.selection,s=[];e.doc.nodesBetween(t,a,(e=>{s.push(e)}));const o=s.reverse().find((e=>e.type.name===i.name));return o?{...o.attrs}:{}}(e,n):"mark"===i?Ho(e,n):{}}function $o(e){const n=function(e,n=JSON.stringify){const i={};return e.filter((e=>{const t=n(e);return!Object.prototype.hasOwnProperty.call(i,t)&&(i[t]=!0)}))}(e);return 1===n.length?n:n.filter(((e,i)=>!n.filter(((e,n)=>n!==i)).some((n=>e.oldRange.from>=n.oldRange.from&&e.oldRange.to<=n.oldRange.to&&e.newRange.from>=n.newRange.from&&e.newRange.to<=n.newRange.to))))}function Vo(e,n,i){const t=[];return e===n?i.resolve(e).marks().forEach((n=>{const a=Oo(i.resolve(e),n.type);a&&t.push({mark:n,...a})})):i.nodesBetween(e,n,((e,n)=>{!e||void 0===(null==e?void 0:e.nodeSize)||t.push(...e.marks.map((i=>({from:n,to:n+e.nodeSize,mark:i}))))})),t}function Uo(e,n,i){return Object.fromEntries(Object.entries(i).filter((([i])=>{const t=e.find((e=>e.type===n&&e.name===i));return!!t&&t.attribute.keepOnSplit})))}function Go(e,n,i={}){const{empty:t,ranges:a}=e.selection,s=n?To(n,e.schema):null;if(t)return!!(e.storedMarks||e.selection.$from.marks()).filter((e=>!s||s.name===e.type.name)).find((e=>So(e.attrs,i,{strict:!1})));let o=0;const r=[];if(a.forEach((({$from:n,$to:i})=>{const t=n.pos,a=i.pos;e.doc.nodesBetween(t,a,((e,n)=>{if(!e.isText&&!e.marks.length)return;const i=Math.max(t,n),s=Math.min(a,n+e.nodeSize);o+=s-i,r.push(...e.marks.map((e=>({mark:e,from:i,to:s}))))}))})),0===o)return!1;const f=r.filter((e=>!s||s.name===e.mark.type.name)).filter((e=>So(e.mark.attrs,i,{strict:!1}))).reduce(((e,n)=>e+n.to-n.from),0),d=r.filter((e=>!s||e.mark.type!==s&&e.mark.type.excludes(s))).reduce(((e,n)=>e+n.to-n.from),0);return(f>0?f+d:f)>=o}function Ko(e,n){const{nodeExtensions:i}=Gs(n),t=i.find((n=>n.name===e));if(!t)return!1;const a=Zs(Us(t,"group",{name:t.name,options:t.options,storage:t.storage}));return"string"==typeof a&&a.split(" ").includes("list")}function Jo(e,{checkChildren:n=!0,ignoreWhitespace:i=!1}={}){var t;if(i){if("hardBreak"===e.type.name)return!0;if(e.isText)return/^\s*$/m.test(null!==(t=e.text)&&void 0!==t?t:"")}if(e.isText)return!e.text;if(e.isAtom||e.isLeaf)return!1;if(0===e.content.childCount)return!0;if(n){let t=!0;return e.content.forEach((e=>{!1!==t&&(Jo(e,{ignoreWhitespace:i,checkChildren:n})||(t=!1))})),t}return!1}function Yo(e,n){const i=e.storedMarks||e.selection.$to.parentOffset&&e.selection.$from.marks();if(i){const t=i.filter((e=>null==n?void 0:n.includes(e.type.name)));e.tr.ensureMarks(t)}}const Qo=(e,n)=>{const i=qo((e=>e.type===n))(e.selection);if(!i)return!0;const t=e.doc.resolve(Math.max(0,i.pos-1)).before(i.depth);if(void 0===t)return!0;const a=e.doc.nodeAt(t);return i.node.type===(null==a?void 0:a.type)&&mn(e.doc,i.pos)&&e.join(i.pos),!0},Xo=(e,n)=>{const i=qo((e=>e.type===n))(e.selection);if(!i)return!0;const t=e.doc.resolve(i.start).after(i.depth);if(void 0===t)return!0;const a=e.doc.nodeAt(t);return i.node.type===(null==a?void 0:a.type)&&mn(e.doc,t)&&e.join(t),!0};var Zo=Object.freeze({__proto__:null,blur:()=>({editor:e,view:n})=>(requestAnimationFrame((()=>{var i;e.isDestroyed||(n.dom.blur(),null===(i=null==window?void 0:window.getSelection())||void 0===i||i.removeAllRanges())})),!0),clearContent:(e=!1)=>({commands:n})=>n.setContent("",e),clearNodes:()=>({state:e,tr:n,dispatch:i})=>{const{selection:t}=n,{ranges:a}=t;return i&&a.forEach((({$from:i,$to:t})=>{e.doc.nodesBetween(i.pos,t.pos,((e,i)=>{if(e.type.isText)return;const{doc:t,mapping:a}=n,s=t.resolve(a.map(i)),o=t.resolve(a.map(i+e.nodeSize)),r=s.blockRange(o);if(!r)return;const f=fn(r);if(e.type.isTextblock){const{defaultType:e}=s.parent.contentMatchAt(s.index());n.setNodeMarkup(r.start,e)}(f||0===f)&&n.lift(r,f)}))})),!0},command:e=>n=>e(n),createParagraphNear:()=>({state:e,dispatch:n})=>((e,n)=>{let i=e.selection,{$from:t,$to:a}=i;if(i instanceof Hn||t.parent.inlineContent||a.parent.inlineContent)return!1;let s=Ds(a.parent.contentMatchAt(a.indexAfter()));if(!s||!s.isTextblock)return!1;if(n){let i=(!t.parentOffset&&a.index()<a.parent.childCount?t:a).pos,o=e.tr.insert(i,s.createAndFill());o.setSelection(Pn.create(o.doc,i+1)),n(o.scrollIntoView())}return!0})(e,n),cut:(e,n)=>({editor:i,tr:t})=>{const{state:a}=i,s=a.doc.slice(e.from,e.to);t.deleteRange(e.from,e.to);const o=t.mapping.map(n);return t.insert(o,s.content),t.setSelection(new Pn(t.doc.resolve(o-1))),!0},deleteCurrentNode:()=>({tr:e,dispatch:n})=>{const{selection:i}=e,t=i.$anchor.node();if(t.content.size>0)return!1;const a=e.selection.$anchor;for(let i=a.depth;i>0;i-=1)if(a.node(i).type===t.type){if(n){const n=a.before(i),t=a.after(i);e.delete(n,t).scrollIntoView()}return!0}return!1},deleteNode:e=>({tr:n,state:i,dispatch:t})=>{const a=Js(e,i.schema),s=n.selection.$anchor;for(let e=s.depth;e>0;e-=1)if(s.node(e).type===a){if(t){const i=s.before(e),t=s.after(e);n.delete(i,t).scrollIntoView()}return!0}return!1},deleteRange:e=>({tr:n,dispatch:i})=>{const{from:t,to:a}=e;return i&&n.delete(t,a),!0},deleteSelection:()=>({state:e,dispatch:n})=>((e,n)=>!e.selection.empty&&(n&&n(e.tr.deleteSelection().scrollIntoView()),!0))(e,n),enter:()=>({commands:e})=>e.keyboardShortcut("Enter"),exitCode:()=>({state:e,dispatch:n})=>((e,n)=>{let{$head:i,$anchor:t}=e.selection;if(!i.parent.type.spec.code||!i.sameParent(t))return!1;let a=i.node(-1),s=i.indexAfter(-1),o=Ds(a.contentMatchAt(s));if(!o||!a.canReplaceWith(s,s,o))return!1;if(n){let t=i.after(),a=e.tr.replaceWith(t,t,o.createAndFill());a.setSelection(jn.near(a.doc.resolve(t),1)),n(a.scrollIntoView())}return!0})(e,n),extendMarkRange:(e,n={})=>({tr:i,state:t,dispatch:a})=>{const s=To(e,t.schema),{doc:o,selection:r}=i,{$from:f,from:d,to:l}=r;if(a){const e=Oo(f,s,n);if(e&&e.from<=d&&e.to>=l){const n=Pn.create(o,e.from,e.to);i.setSelection(n)}}return!0},first:e=>n=>{const i="function"==typeof e?e(n):e;for(let e=0;e<i.length;e+=1)if(i[e](n))return!0;return!1},focus:(e=null,n={})=>({editor:i,view:t,tr:a,dispatch:s})=>{n={scrollIntoView:!0,...n};const o=()=>{(No()||"Android"===navigator.platform||/android/i.test(navigator.userAgent))&&t.dom.focus(),requestAnimationFrame((()=>{i.isDestroyed||(t.focus(),null!=n&&n.scrollIntoView&&i.commands.scrollIntoView())}))};if(t.hasFocus()&&null===e||!1===e)return!0;if(s&&null===e&&!Eo(i.state.selection))return o(),!0;const r=Ao(a.doc,e)||i.state.selection,f=i.state.selection.eq(r);return s&&(f||a.setSelection(r),f&&a.storedMarks&&a.setStoredMarks(a.storedMarks),o()),!0},forEach:(e,n)=>i=>e.every(((e,t)=>n(e,{...i,index:t}))),insertContent:(e,n)=>({tr:i,commands:t})=>t.insertContentAt({from:i.selection.from,to:i.selection.to},e,n),insertContentAt:(e,n,i)=>({tr:t,dispatch:a,editor:s})=>{var o;if(a){let a;i={parseOptions:s.options.parseOptions,updateSelection:!0,applyInputRules:!1,applyPasteRules:!1,...i};try{a=Do(n,s.schema,{parseOptions:{preserveWhitespace:"full",...i.parseOptions},errorOnInvalidContent:null!==(o=i.errorOnInvalidContent)&&void 0!==o?o:s.options.enableContentCheck})}catch(e){return s.emit("contentError",{editor:s,error:e,disableCollaboration:()=>{s.storage.collaboration&&(s.storage.collaboration.isDisabled=!0)}}),!1}let r,{from:f,to:d}="number"==typeof e?{from:e,to:e}:{from:e.from,to:e.to},l=!0,c=!0;if(((e=>!("type"in e))(a)?a:[a]).forEach((e=>{e.check(),l=!!l&&(e.isText&&0===e.marks.length),c=!!c&&e.isBlock})),f===d&&c){const{parent:e}=t.doc.resolve(f);e.isTextblock&&!e.type.spec.code&&!e.childCount&&(f-=1,d+=1)}if(l){if(Array.isArray(n))r=n.map((e=>e.text||"")).join("");else if(n instanceof D){let e="";n.forEach((n=>{n.text&&(e+=n.text)})),r=e}else r="object"==typeof n&&n&&n.text?n.text:n;t.insertText(r,f,d)}else r=a,t.replaceWith(f,d,r);i.updateSelection&&function(e,n,i){const t=e.steps.length-1;if(t<n)return;const a=e.steps[t];if(!(a instanceof tn||a instanceof an))return;const s=e.mapping.maps[t];let o=0;s.forEach(((e,n,i,t)=>{0===o&&(o=t)})),e.setSelection(jn.near(e.doc.resolve(o),i))}(t,t.steps.length-1,-1),i.applyInputRules&&t.setMeta("applyInputRules",{from:f,text:r}),i.applyPasteRules&&t.setMeta("applyPasteRules",{from:f,text:r})}return!0},joinBackward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let t=Es(e,i);if(!t)return!1;let a=Ns(t);if(!a){let i=t.blockRange(),a=i&&fn(i);return null!=a&&(n&&n(e.tr.lift(i,a).scrollIntoView()),!0)}let s=a.nodeBefore;if(zs(e,a,n,-1))return!0;if(0==t.parent.content.size&&(As(s,"end")||Ln.isSelectable(s)))for(let i=t.depth;;i--){let o=gn(e.doc,t.before(i),t.after(i),H.empty);if(o&&o.slice.size<o.to-o.from){if(n){let i=e.tr.step(o);i.setSelection(As(s,"end")?jn.findFrom(i.doc.resolve(i.mapping.map(a.pos,-1)),-1):Ln.create(i.doc,a.pos-s.nodeSize)),n(i.scrollIntoView())}return!0}if(1==i||t.node(i-1).childCount>1)break}return!(!s.isAtom||a.depth!=t.depth-1||(n&&n(e.tr.delete(a.pos-s.nodeSize,a.pos).scrollIntoView()),0))})(e,n),joinDown:()=>({state:e,dispatch:n})=>((e,n)=>{let i,t=e.selection;if(t instanceof Ln){if(t.node.isTextblock||!mn(e.doc,t.to))return!1;i=t.to}else if(i=vn(e.doc,t.to,1),null==i)return!1;return n&&n(e.tr.join(i).scrollIntoView()),!0})(e,n),joinForward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let t=js(e,i);if(!t)return!1;let a=Rs(t);if(!a)return!1;let s=a.nodeAfter;if(zs(e,a,n,1))return!0;if(0==t.parent.content.size&&(As(s,"start")||Ln.isSelectable(s))){let i=gn(e.doc,t.before(),t.after(),H.empty);if(i&&i.slice.size<i.to-i.from){if(n){let t=e.tr.step(i);t.setSelection(As(s,"start")?jn.findFrom(t.doc.resolve(t.mapping.map(a.pos)),1):Ln.create(t.doc,t.mapping.map(a.pos))),n(t.scrollIntoView())}return!0}}return!(!s.isAtom||a.depth!=t.depth-1||(n&&n(e.tr.delete(a.pos,a.pos+s.nodeSize).scrollIntoView()),0))})(e,n),joinItemBackward:()=>({state:e,dispatch:n,tr:i})=>{try{const t=vn(e.doc,e.selection.$from.pos,-1);return null!=t&&(i.join(t,2),n&&n(i),!0)}catch{return!1}},joinItemForward:()=>({state:e,dispatch:n,tr:i})=>{try{const t=vn(e.doc,e.selection.$from.pos,1);return null!=t&&(i.join(t,2),n&&n(i),!0)}catch{return!1}},joinTextblockBackward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let t=Es(e,i);if(!t)return!1;let a=Ns(t);return!!a&&Fs(e,a,n)})(e,n),joinTextblockForward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let t=js(e,i);if(!t)return!1;let a=Rs(t);return!!a&&Fs(e,a,n)})(e,n),joinUp:()=>({state:e,dispatch:n})=>((e,n)=>{let i,t=e.selection,a=t instanceof Ln;if(a){if(t.node.isTextblock||!mn(e.doc,t.from))return!1;i=t.from}else if(i=vn(e.doc,t.from,-1),null==i)return!1;if(n){let t=e.tr.join(i);a&&t.setSelection(Ln.create(t.doc,i-e.doc.resolve(i).nodeBefore.nodeSize)),n(t.scrollIntoView())}return!0})(e,n),keyboardShortcut:e=>({editor:n,view:i,tr:t,dispatch:a})=>{const s=function(e){const n=e.split(/-(?!$)/);let i,t,a,s,o=n[n.length-1];"Space"===o&&(o=" ");for(let e=0;e<n.length-1;e+=1){const o=n[e];if(/^(cmd|meta|m)$/i.test(o))s=!0;else if(/^a(lt)?$/i.test(o))i=!0;else if(/^(c|ctrl|control)$/i.test(o))t=!0;else if(/^s(hift)?$/i.test(o))a=!0;else{if(!/^mod$/i.test(o))throw new Error(`Unrecognized modifier name: ${o}`);No()||zo()?s=!0:t=!0}}return i&&(o=`Alt-${o}`),t&&(o=`Ctrl-${o}`),s&&(o=`Meta-${o}`),a&&(o=`Shift-${o}`),o}(e).split(/-(?!$)/),o=s.find((e=>!["Alt","Ctrl","Meta","Shift"].includes(e))),r=new KeyboardEvent("keydown",{key:"Space"===o?" ":o,altKey:s.includes("Alt"),ctrlKey:s.includes("Ctrl"),metaKey:s.includes("Meta"),shiftKey:s.includes("Shift"),bubbles:!0,cancelable:!0}),f=n.captureTransaction((()=>{i.someProp("handleKeyDown",(e=>e(i,r)))}));return null==f||f.steps.forEach((e=>{const n=e.map(t.mapping);n&&a&&t.maybeStep(n)})),!0},lift:(e,n={})=>({state:i,dispatch:t})=>!!Po(i,Js(e,i.schema),n)&&((e,n)=>{let{$from:i,$to:t}=e.selection,a=i.blockRange(t),s=a&&fn(a);return null!=s&&(n&&n(e.tr.lift(a,s).scrollIntoView()),!0)})(i,t),liftEmptyBlock:()=>({state:e,dispatch:n})=>((e,n)=>{let{$cursor:i}=e.selection;if(!i||i.parent.content.size)return!1;if(i.depth>1&&i.after()!=i.end(-1)){let t=i.before();if(hn(e.doc,t))return n&&n(e.tr.split(t).scrollIntoView()),!0}let t=i.blockRange(),a=t&&fn(t);return null!=a&&(n&&n(e.tr.lift(t,a).scrollIntoView()),!0)})(e,n),liftListItem:e=>({state:n,dispatch:i})=>qs(Js(e,n.schema))(n,i),newlineInCode:()=>({state:e,dispatch:n})=>((e,n)=>{let{$head:i,$anchor:t}=e.selection;return!(!i.parent.type.spec.code||!i.sameParent(t)||(n&&n(e.tr.insertText("\n").scrollIntoView()),0))})(e,n),resetAttributes:(e,n)=>({tr:i,state:t,dispatch:a})=>{let s=null,o=null;const r=Bo("string"==typeof e?e:e.name,t.schema);return!!r&&("node"===r&&(s=Js(e,t.schema)),"mark"===r&&(o=To(e,t.schema)),a&&i.selection.ranges.forEach((e=>{t.doc.nodesBetween(e.$from.pos,e.$to.pos,((e,t)=>{s&&s===e.type&&i.setNodeMarkup(t,void 0,Lo(e.attrs,n)),o&&e.marks.length&&e.marks.forEach((a=>{o===a.type&&i.addMark(t,t+e.nodeSize,o.create(Lo(a.attrs,n)))}))}))})),!0)},scrollIntoView:()=>({tr:e,dispatch:n})=>(n&&e.scrollIntoView(),!0),selectAll:()=>({tr:e,dispatch:n})=>{if(n){const n=new Hn(e.doc);e.setSelection(n)}return!0},selectNodeBackward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let{$head:t,empty:a}=e.selection,s=t;if(!a)return!1;if(t.parent.isTextblock){if(i?!i.endOfTextblock("backward",e):t.parentOffset>0)return!1;s=Ns(t)}let o=s&&s.nodeBefore;return!(!o||!Ln.isSelectable(o)||(n&&n(e.tr.setSelection(Ln.create(e.doc,s.pos-o.nodeSize)).scrollIntoView()),0))})(e,n),selectNodeForward:()=>({state:e,dispatch:n})=>((e,n,i)=>{let{$head:t,empty:a}=e.selection,s=t;if(!a)return!1;if(t.parent.isTextblock){if(i?!i.endOfTextblock("forward",e):t.parentOffset<t.parent.content.size)return!1;s=Rs(t)}let o=s&&s.nodeAfter;return!(!o||!Ln.isSelectable(o)||(n&&n(e.tr.setSelection(Ln.create(e.doc,s.pos)).scrollIntoView()),0))})(e,n),selectParentNode:()=>({state:e,dispatch:n})=>((e,n)=>{let i,{$from:t,to:a}=e.selection,s=t.sharedDepth(a);return 0!=s&&(i=t.before(s),n&&n(e.tr.setSelection(Ln.create(e.doc,i))),!0)})(e,n),selectTextblockEnd:()=>({state:e,dispatch:n})=>Ls(e,n),selectTextblockStart:()=>({state:e,dispatch:n})=>Bs(e,n),setContent:(e,n=!1,i={},t={})=>({editor:a,tr:s,dispatch:o,commands:r})=>{var f,d;const{doc:l}=s;if("full"!==i.preserveWhitespace){const r=Io(e,a.schema,i,{errorOnInvalidContent:null!==(f=t.errorOnInvalidContent)&&void 0!==f?f:a.options.enableContentCheck});return o&&s.replaceWith(0,l.content.size,r).setMeta("preventUpdate",!n),!0}return o&&s.setMeta("preventUpdate",!n),r.insertContentAt({from:0,to:l.content.size},e,{parseOptions:i,errorOnInvalidContent:null!==(d=t.errorOnInvalidContent)&&void 0!==d?d:a.options.enableContentCheck})},setMark:(e,n={})=>({tr:i,state:t,dispatch:a})=>{const{selection:s}=i,{empty:o,ranges:r}=s,f=To(e,t.schema);if(a)if(o){const e=Ho(t,f);i.addStoredMark(f.create({...e,...n}))}else r.forEach((e=>{const a=e.$from.pos,s=e.$to.pos;t.doc.nodesBetween(a,s,((e,t)=>{const o=Math.max(t,a),r=Math.min(t+e.nodeSize,s);e.marks.find((e=>e.type===f))?e.marks.forEach((e=>{f===e.type&&i.addMark(o,r,f.create({...e.attrs,...n}))})):i.addMark(o,r,f.create(n))}))}));return function(e,n,i){var t;const{selection:a}=n;let s=null;if(Eo(a)&&(s=a.$cursor),s){const n=null!==(t=e.storedMarks)&&void 0!==t?t:s.marks();return!!i.isInSet(n)||!n.some((e=>e.type.excludes(i)))}const{ranges:o}=a;return o.some((({$from:n,$to:t})=>{let a=0===n.depth&&e.doc.inlineContent&&e.doc.type.allowsMarkType(i);return e.doc.nodesBetween(n.pos,t.pos,((e,n,t)=>{if(a)return!1;if(e.isInline){const n=!t||t.type.allowsMarkType(i),s=!!i.isInSet(e.marks)||!e.marks.some((e=>e.type.excludes(i)));a=n&&s}return!a})),a}))}(t,i,f)},setMeta:(e,n)=>({tr:i})=>(i.setMeta(e,n),!0),setNode:(e,n={})=>({state:i,dispatch:t,chain:a})=>{const s=Js(e,i.schema);let o;return i.selection.$anchor.sameParent(i.selection.$head)&&(o=i.selection.$anchor.parent.attrs),s.isTextblock?a().command((({commands:e})=>!!Is(s,{...o,...n})(i)||e.clearNodes())).command((({state:e})=>Is(s,{...o,...n})(e,t))).run():(console.warn('[tiptap warn]: Currently "setNode()" only supports text block nodes.'),!1)},setNodeSelection:e=>({tr:n,dispatch:i})=>{if(i){const{doc:i}=n,t=Fo(e,0,i.content.size),a=Ln.create(i,t);n.setSelection(a)}return!0},setTextSelection:e=>({tr:n,dispatch:i})=>{if(i){const{doc:i}=n,{from:t,to:a}="number"==typeof e?{from:e,to:e}:e,s=Pn.atStart(i).from,o=Pn.atEnd(i).to,r=Fo(t,s,o),f=Fo(a,s,o),d=Pn.create(i,r,f);n.setSelection(d)}return!0},sinkListItem:e=>({state:n,dispatch:i})=>function(e){return function(n,i){let{$from:t,$to:a}=n.selection,s=t.blockRange(a,(n=>n.childCount>0&&n.firstChild.type==e));if(!s)return!1;let o=s.startIndex;if(0==o)return!1;let r=s.parent,f=r.child(o-1);if(f.type!=e)return!1;if(i){let t=f.lastChild&&f.lastChild.type==r.type,a=D.from(t?e.create():null),o=new H(D.from(e.create(null,D.from(r.type.create(null,a)))),t?3:1,0),d=s.start,l=s.end;i(n.tr.step(new an(d-(t?3:1),l,d,l,o,1,!0)).scrollIntoView())}return!0}}(Js(e,n.schema))(n,i),splitBlock:({keepMarks:e=!0}={})=>({tr:n,state:i,dispatch:t,editor:a})=>{const{selection:s,doc:o}=n,{$from:r,$to:f}=s,d=Uo(a.extensionManager.attributes,r.node().type.name,r.node().attrs);if(s instanceof Ln&&s.node.isBlock)return!(!r.parentOffset||!hn(o,r.pos))&&(t&&(e&&Yo(i,a.extensionManager.splittableMarks),n.split(r.pos).scrollIntoView()),!0);if(!r.parent.isBlock)return!1;const l=f.parentOffset===f.parent.content.size,c=0===r.depth?void 0:function(e){for(let n=0;n<e.edgeCount;n+=1){const{type:i}=e.edge(n);if(i.isTextblock&&!i.hasRequiredAttrs())return i}return null}(r.node(-1).contentMatchAt(r.indexAfter(-1)));let u=l&&c?[{type:c,attrs:d}]:void 0,h=hn(n.doc,n.mapping.map(r.pos),1,u);if(!u&&!h&&hn(n.doc,n.mapping.map(r.pos),1,c?[{type:c}]:void 0)&&(h=!0,u=c?[{type:c,attrs:d}]:void 0),t){if(h&&(s instanceof Pn&&n.deleteSelection(),n.split(n.mapping.map(r.pos),1,u),c&&!l&&!r.parentOffset&&r.parent.type!==c)){const e=n.mapping.map(r.before()),i=n.doc.resolve(e);r.node(-1).canReplaceWith(i.index(),i.index()+1,c)&&n.setNodeMarkup(n.mapping.map(r.before()),c)}e&&Yo(i,a.extensionManager.splittableMarks),n.scrollIntoView()}return h},splitListItem:(e,n={})=>({tr:i,state:t,dispatch:a,editor:s})=>{var o;const r=Js(e,t.schema),{$from:f,$to:d}=t.selection,l=t.selection.node;if(l&&l.isBlock||f.depth<2||!f.sameParent(d))return!1;const c=f.node(-1);if(c.type!==r)return!1;const u=s.extensionManager.attributes;if(0===f.parent.content.size&&f.node(-1).childCount===f.indexAfter(-1)){if(2===f.depth||f.node(-3).type!==r||f.index(-2)!==f.node(-2).childCount-1)return!1;if(a){let e=D.empty;const t=f.index(-1)?1:f.index(-2)?2:3;for(let n=f.depth-t;n>=f.depth-3;n-=1)e=D.from(f.node(n).copy(e));const a=f.indexAfter(-1)<f.node(-2).childCount?1:f.indexAfter(-2)<f.node(-3).childCount?2:3,s={...Uo(u,f.node().type.name,f.node().attrs),...n},d=(null===(o=r.contentMatch.defaultType)||void 0===o?void 0:o.createAndFill(s))||void 0;e=e.append(D.from(r.createAndFill(null,d)||void 0));const l=f.before(f.depth-(t-1));i.replace(l,f.after(-a),new H(e,4-t,0));let c=-1;i.doc.nodesBetween(l,i.doc.content.size,((e,n)=>{if(c>-1)return!1;e.isTextblock&&0===e.content.size&&(c=n+1)})),c>-1&&i.setSelection(Pn.near(i.doc.resolve(c))),i.scrollIntoView()}return!0}const h=d.pos===f.end()?c.contentMatchAt(0).defaultType:null,m={...Uo(u,c.type.name,c.attrs),...n},p={...Uo(u,f.node().type.name,f.node().attrs),...n};i.delete(f.pos,d.pos);const v=h?[{type:r,attrs:m},{type:h,attrs:p}]:[{type:r,attrs:m}];if(!hn(i.doc,f.pos,2))return!1;if(a){const{selection:e,storedMarks:n}=t,{splittableMarks:o}=s.extensionManager,r=n||e.$to.parentOffset&&e.$from.marks();if(i.split(f.pos,2,v).scrollIntoView(),!r||!a)return!0;const d=r.filter((e=>o.includes(e.type.name)));i.ensureMarks(d)}return!0},toggleList:(e,n,i,t={})=>({editor:a,tr:s,state:o,dispatch:r,chain:f,commands:d,can:l})=>{const{extensions:c,splittableMarks:u}=a.extensionManager,h=Js(e,o.schema),m=Js(n,o.schema),{selection:p,storedMarks:v}=o,{$from:g,$to:k}=p,y=g.blockRange(k),w=v||p.$to.parentOffset&&p.$from.marks();if(!y)return!1;const b=qo((e=>Ko(e.type.name,c)))(p);if(y.depth>=1&&b&&y.depth-b.depth<=1){if(b.node.type===h)return d.liftListItem(m);if(Ko(b.node.type.name,c)&&h.validContent(b.node.content)&&r)return f().command((()=>(s.setNodeMarkup(b.pos,h),!0))).command((()=>Qo(s,h))).command((()=>Xo(s,h))).run()}return i&&w&&r?f().command((()=>{const e=l().wrapInList(h,t),n=w.filter((e=>u.includes(e.type.name)));return s.ensureMarks(n),!!e||d.clearNodes()})).wrapInList(h,t).command((()=>Qo(s,h))).command((()=>Xo(s,h))).run():f().command((()=>!!l().wrapInList(h,t)||d.clearNodes())).wrapInList(h,t).command((()=>Qo(s,h))).command((()=>Xo(s,h))).run()},toggleMark:(e,n={},i={})=>({state:t,commands:a})=>{const{extendEmptyMarkRange:s=!1}=i,o=To(e,t.schema);return Go(t,o,n)?a.unsetMark(o,{extendEmptyMarkRange:s}):a.setMark(o,n)},toggleNode:(e,n,i={})=>({state:t,commands:a})=>{const s=Js(e,t.schema),o=Js(n,t.schema),r=Po(t,s,i);let f;return t.selection.$anchor.sameParent(t.selection.$head)&&(f=t.selection.$anchor.parent.attrs),r?a.setNode(o,f):a.setNode(s,{...f,...i})},toggleWrap:(e,n={})=>({state:i,commands:t})=>{const a=Js(e,i.schema);return Po(i,a,n)?t.lift(a):t.wrapIn(a,n)},undoInputRule:()=>({state:e,dispatch:n})=>{const i=e.plugins;for(let t=0;t<i.length;t+=1){const a=i[t];let s;if(a.spec.isInputRules&&(s=a.getState(e))){if(n){const n=e.tr,i=s.transform;for(let e=i.steps.length-1;e>=0;e-=1)n.step(i.steps[e].invert(i.docs[e]));if(s.text){const i=n.doc.resolve(s.from).marks();n.replaceWith(s.from,s.to,e.schema.text(s.text,i))}else n.delete(s.from,s.to)}return!0}}return!1},unsetAllMarks:()=>({tr:e,dispatch:n})=>{const{selection:i}=e,{empty:t,ranges:a}=i;return t||n&&a.forEach((n=>{e.removeMark(n.$from.pos,n.$to.pos)})),!0},unsetMark:(e,n={})=>({tr:i,state:t,dispatch:a})=>{var s;const{extendEmptyMarkRange:o=!1}=n,{selection:r}=i,f=To(e,t.schema),{$from:d,empty:l,ranges:c}=r;if(!a)return!0;if(l&&o){let{from:e,to:n}=r;const t=null===(s=d.marks().find((e=>e.type===f)))||void 0===s?void 0:s.attrs,a=Oo(d,f,t);a&&(e=a.from,n=a.to),i.removeMark(e,n,f)}else c.forEach((e=>{i.removeMark(e.$from.pos,e.$to.pos,f)}));return i.removeStoredMark(f),!0},updateAttributes:(e,n={})=>({tr:i,state:t,dispatch:a})=>{let s=null,o=null;const r=Bo("string"==typeof e?e:e.name,t.schema);return!!r&&("node"===r&&(s=Js(e,t.schema)),"mark"===r&&(o=To(e,t.schema)),a&&i.selection.ranges.forEach((e=>{const a=e.$from.pos,r=e.$to.pos;let f,d,l,c;i.selection.empty?t.doc.nodesBetween(a,r,((e,n)=>{s&&s===e.type&&(l=Math.max(n,a),c=Math.min(n+e.nodeSize,r),f=n,d=e)})):t.doc.nodesBetween(a,r,((e,t)=>{t<a&&s&&s===e.type&&(l=Math.max(t,a),c=Math.min(t+e.nodeSize,r),f=t,d=e),t>=a&&t<=r&&(s&&s===e.type&&i.setNodeMarkup(t,void 0,{...e.attrs,...n}),o&&e.marks.length&&e.marks.forEach((s=>{if(o===s.type){const f=Math.max(t,a),d=Math.min(t+e.nodeSize,r);i.addMark(f,d,o.create({...s.attrs,...n}))}})))})),d&&(void 0!==f&&i.setNodeMarkup(f,void 0,{...d.attrs,...n}),o&&d.marks.length&&d.marks.forEach((e=>{o===e.type&&i.addMark(l,c,o.create({...e.attrs,...n}))})))})),!0)},wrapIn:(e,n={})=>({state:i,dispatch:t})=>function(e,n=null){return function(i,t){let{$from:a,$to:s}=i.selection,o=a.blockRange(s),r=o&&dn(o,e,n);return!!r&&(t&&t(i.tr.wrap(o,r).scrollIntoView()),!0)}}(Js(e,i.schema),n)(i,t),wrapInList:(e,n={})=>({state:i,dispatch:t})=>Hs(Js(e,i.schema),n)(i,t)});const er=wo.create({name:"commands",addCommands:()=>({...Zo})}),nr=wo.create({name:"drop",addProseMirrorPlugins(){return[new Xn({key:new ni("tiptapDrop"),props:{handleDrop:(e,n,i,t)=>{this.editor.emit("drop",{editor:this.editor,event:n,slice:i,moved:t})}}})]}}),ir=wo.create({name:"editable",addProseMirrorPlugins(){return[new Xn({key:new ni("editable"),props:{editable:()=>this.editor.options.editable}})]}}),tr=new ni("focusEvents"),ar=wo.create({name:"focusEvents",addProseMirrorPlugins(){const{editor:e}=this;return[new Xn({key:tr,props:{handleDOMEvents:{focus:(n,i)=>{e.isFocused=!0;const t=e.state.tr.setMeta("focus",{event:i}).setMeta("addToHistory",!1);return n.dispatch(t),!1},blur:(n,i)=>{e.isFocused=!1;const t=e.state.tr.setMeta("blur",{event:i}).setMeta("addToHistory",!1);return n.dispatch(t),!1}}}})]}}),sr=wo.create({name:"keymap",addKeyboardShortcuts(){const e=()=>this.editor.commands.first((({commands:e})=>[()=>e.undoInputRule(),()=>e.command((({tr:n})=>{const{selection:i,doc:t}=n,{empty:a,$anchor:s}=i,{pos:o,parent:r}=s,f=s.parent.isTextblock&&o>0?n.doc.resolve(o-1):s,d=f.parent.type.spec.isolating,l=s.pos-s.parentOffset,c=d&&1===f.parent.childCount?l===s.pos:jn.atStart(t).from===o;return!(!a||!r.type.isTextblock||r.textContent.length||!c||c&&"paragraph"===s.parent.type.name)&&e.clearNodes()})),()=>e.deleteSelection(),()=>e.joinBackward(),()=>e.selectNodeBackward()])),n=()=>this.editor.commands.first((({commands:e})=>[()=>e.deleteSelection(),()=>e.deleteCurrentNode(),()=>e.joinForward(),()=>e.selectNodeForward()])),i={Enter:()=>this.editor.commands.first((({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()])),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:e,"Mod-Backspace":e,"Shift-Backspace":e,Delete:n,"Mod-Delete":n,"Mod-a":()=>this.editor.commands.selectAll()},t={...i},a={...i,"Ctrl-h":e,"Alt-Backspace":e,"Ctrl-d":n,"Ctrl-Alt-Backspace":n,"Alt-Delete":n,"Alt-d":n,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return No()||zo()?a:t},addProseMirrorPlugins(){return[new Xn({key:new ni("clearDocument"),appendTransaction:(e,n,i)=>{if(e.some((e=>e.getMeta("composition"))))return;const t=e.some((e=>e.docChanged))&&!n.doc.eq(i.doc),a=e.some((e=>e.getMeta("preventClearDocument")));if(!t||a)return;const{empty:s,from:o,to:r}=n.selection,f=jn.atStart(n.doc).from,d=jn.atEnd(n.doc).to;if(s||o!==f||r!==d||!Jo(i.doc))return;const l=i.tr,c=Ws({state:i,transaction:l}),{commands:u}=new $s({editor:this.editor,state:c});return u.clearNodes(),l.steps.length?l:void 0}})]}}),or=wo.create({name:"paste",addProseMirrorPlugins(){return[new Xn({key:new ni("tiptapPaste"),props:{handlePaste:(e,n,i)=>{this.editor.emit("paste",{editor:this.editor,event:n,slice:i})}}})]}}),rr=wo.create({name:"tabindex",addProseMirrorPlugins(){return[new Xn({key:new ni("tabindex"),props:{attributes:()=>this.editor.isEditable?{tabindex:"0"}:{}}})]}});class fr{get name(){return this.node.type.name}constructor(e,n,i=!1,t=null){this.currentNode=null,this.actualDepth=null,this.isBlock=i,this.resolvedPos=e,this.editor=n,this.currentNode=t}get node(){return this.currentNode||this.resolvedPos.node()}get element(){return this.editor.view.domAtPos(this.pos).node}get depth(){var e;return null!==(e=this.actualDepth)&&void 0!==e?e:this.resolvedPos.depth}get pos(){return this.resolvedPos.pos}get content(){return this.node.content}set content(e){let n=this.from,i=this.to;if(this.isBlock){if(0===this.content.size)return void console.error(`You can’t set content on a block node. Tried to set content on ${this.name} at ${this.pos}`);n=this.from+1,i=this.to-1}this.editor.commands.insertContentAt({from:n,to:i},e)}get attributes(){return this.node.attrs}get textContent(){return this.node.textContent}get size(){return this.node.nodeSize}get from(){return this.isBlock?this.pos:this.resolvedPos.start(this.resolvedPos.depth)}get range(){return{from:this.from,to:this.to}}get to(){return this.isBlock?this.pos+this.size:this.resolvedPos.end(this.resolvedPos.depth)+(this.node.isText?0:1)}get parent(){if(0===this.depth)return null;const e=this.resolvedPos.start(this.resolvedPos.depth-1),n=this.resolvedPos.doc.resolve(e);return new fr(n,this.editor)}get before(){let e=this.resolvedPos.doc.resolve(this.from-(this.isBlock?1:2));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.from-3)),new fr(e,this.editor)}get after(){let e=this.resolvedPos.doc.resolve(this.to+(this.isBlock?2:1));return e.depth!==this.depth&&(e=this.resolvedPos.doc.resolve(this.to+3)),new fr(e,this.editor)}get children(){const e=[];return this.node.content.forEach(((n,i)=>{const t=n.isBlock&&!n.isTextblock,a=n.isAtom&&!n.isText,s=this.pos+i+(a?0:1),o=this.resolvedPos.doc.resolve(s);if(!t&&o.depth<=this.depth)return;const r=new fr(o,this.editor,t,t?n:null);t&&(r.actualDepth=this.depth+1),e.push(new fr(o,this.editor,t,t?n:null))})),e}get firstChild(){return this.children[0]||null}get lastChild(){const e=this.children;return e[e.length-1]||null}closest(e,n={}){let i=null,t=this.parent;for(;t&&!i;){if(t.node.type.name===e)if(Object.keys(n).length>0){const e=t.node.attrs,i=Object.keys(n);for(let t=0;t<i.length;t+=1){const a=i[t];if(e[a]!==n[a])break}}else i=t;t=t.parent}return i}querySelector(e,n={}){return this.querySelectorAll(e,n,!0)[0]||null}querySelectorAll(e,n={},i=!1){let t=[];if(!this.children||0===this.children.length)return t;const a=Object.keys(n);return this.children.forEach((s=>{i&&t.length>0||(s.node.type.name===e&&a.every((e=>n[e]===s.node.attrs[e]))&&t.push(s),!(i&&t.length>0)&&(t=t.concat(s.querySelectorAll(e,n,i))))})),t}setAttribute(e){const{tr:n}=this.editor.state;n.setNodeMarkup(this.from,void 0,{...this.node.attrs,...e}),this.editor.view.dispatch(n)}}class dr extends Vs{constructor(e={}){super(),this.isFocused=!1,this.isInitialized=!1,this.extensionStorage={},this.options={element:document.createElement("div"),content:"",injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},coreExtensionOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,enableContentCheck:!1,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null,onContentError:({error:e})=>{throw e},onPaste:()=>null,onDrop:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(e),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on("beforeCreate",this.options.onBeforeCreate),this.emit("beforeCreate",{editor:this}),this.on("contentError",this.options.onContentError),this.createView(),this.injectCSS(),this.on("create",this.options.onCreate),this.on("update",this.options.onUpdate),this.on("selectionUpdate",this.options.onSelectionUpdate),this.on("transaction",this.options.onTransaction),this.on("focus",this.options.onFocus),this.on("blur",this.options.onBlur),this.on("destroy",this.options.onDestroy),this.on("drop",(({event:e,slice:n,moved:i})=>this.options.onDrop(e,n,i))),this.on("paste",(({event:e,slice:n})=>this.options.onPaste(e,n))),window.setTimeout((()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit("create",{editor:this}),this.isInitialized=!0)}),0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=function(e,n,i){const t=document.querySelector(`style[data-tiptap-style${i?`-${i}`:""}]`);if(null!==t)return t;const a=document.createElement("style");return n&&a.setAttribute("nonce",n),a.setAttribute("data-tiptap-style"+(i?`-${i}`:""),""),a.innerHTML=e,document.getElementsByTagName("head")[0].appendChild(a),a}('.ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: "liga" 0; /* the above doesn\'t seem to work in Edge */\n}\n\n.ProseMirror [contenteditable="false"] {\n white-space: normal;\n}\n\n.ProseMirror [contenteditable="false"] [contenteditable="true"] {\n white-space: pre-wrap;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n width: 0 !important;\n height: 0 !important;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n margin: 0;\n}\n\n.ProseMirror-gapcursor:after {\n content: "";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n\n.tippy-box[data-animation=fade][data-state=hidden] {\n opacity: 0\n}',this.options.injectNonce))}setOptions(e={}){this.options={...this.options,...e},this.view&&this.state&&!this.isDestroyed&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(e,n=!0){this.setOptions({editable:e}),n&&this.emit("update",{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(e,n){const i=Xs(n)?n(e,[...this.state.plugins]):[...this.state.plugins,e],t=this.state.reconfigure({plugins:i});return this.view.updateState(t),t}unregisterPlugin(e){if(this.isDestroyed)return;const n=this.state.plugins;let i=n;if([].concat(e).forEach((e=>{const t="string"==typeof e?`${e}$`:e.key;i=n.filter((e=>!e.key.startsWith(t)))})),n.length===i.length)return;const t=this.state.reconfigure({plugins:i});return this.view.updateState(t),t}createExtensionManager(){var e,n;const i=[...this.options.enableCoreExtensions?[ir,xo.configure({blockSeparator:null===(n=null===(e=this.options.coreExtensionOptions)||void 0===e?void 0:e.clipboardTextSerializer)||void 0===n?void 0:n.blockSeparator}),er,ar,sr,rr,nr,or].filter((e=>"object"!=typeof this.options.enableCoreExtensions||!1!==this.options.enableCoreExtensions[e.name])):[],...this.options.extensions].filter((e=>["extension","node","mark"].includes(null==e?void 0:e.type)));this.extensionManager=new yo(i,this)}createCommandManager(){this.commandManager=new $s({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){var e;let n;try{n=Io(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:this.options.enableContentCheck})}catch(e){if(!(e instanceof Error&&["[tiptap error]: Invalid JSON content","[tiptap error]: Invalid HTML content"].includes(e.message)))throw e;this.emit("contentError",{editor:this,error:e,disableCollaboration:()=>{this.storage.collaboration&&(this.storage.collaboration.isDisabled=!0),this.options.extensions=this.options.extensions.filter((e=>"collaboration"!==e.name)),this.createExtensionManager()}}),n=Io(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}const i=Ao(n,this.options.autofocus);this.view=new hs(this.options.element,{...this.options.editorProps,attributes:{role:"textbox",...null===(e=this.options.editorProps)||void 0===e?void 0:e.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:Yn.create({doc:n,selection:i||void 0})});const t=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(t),this.createNodeViews(),this.prependClass();this.view.dom.editor=this}createNodeViews(){this.view.isDestroyed||this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(e){this.isCapturingTransaction=!0,e(),this.isCapturingTransaction=!1;const n=this.capturedTransaction;return this.capturedTransaction=null,n}dispatchTransaction(e){if(this.view.isDestroyed)return;if(this.isCapturingTransaction)return this.capturedTransaction?void e.steps.forEach((e=>{var n;return null===(n=this.capturedTransaction)||void 0===n?void 0:n.step(e)})):void(this.capturedTransaction=e);const n=this.state.apply(e),i=!this.state.selection.eq(n.selection);this.emit("beforeTransaction",{editor:this,transaction:e,nextState:n}),this.view.updateState(n),this.emit("transaction",{editor:this,transaction:e}),i&&this.emit("selectionUpdate",{editor:this,transaction:e});const t=e.getMeta("focus"),a=e.getMeta("blur");t&&this.emit("focus",{editor:this,event:t.event,transaction:e}),a&&this.emit("blur",{editor:this,event:a.event,transaction:e}),e.docChanged&&!e.getMeta("preventUpdate")&&this.emit("update",{editor:this,transaction:e})}getAttributes(e){return Wo(this.state,e)}isActive(e,n){const i="string"==typeof e?e:null,t="string"==typeof e?n:e;return function(e,n,i={}){if(!n)return Po(e,null,i)||Go(e,null,i);const t=Bo(n,e.schema);return"node"===t?Po(e,n,i):"mark"===t&&Go(e,n,i)}(this.state,i,t)}getJSON(){return this.state.doc.toJSON()}getHTML(){return ao(this.state.doc.content,this.schema)}getText(e){const{blockSeparator:n="\n\n",textSerializers:i={}}=e||{};return function(e,n){return bo(e,{from:0,to:e.content.size},n)}(this.state.doc,{blockSeparator:n,textSerializers:{..._o(this.schema),...i}})}get isEmpty(){return Jo(this.state.doc)}getCharacterCount(){return console.warn('[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.'),this.state.doc.content.size-2}destroy(){if(this.emit("destroy"),this.view){const e=this.view.dom;e&&e.editor&&delete e.editor,this.view.destroy()}this.removeAllListeners()}get isDestroyed(){var e;return!(null!==(e=this.view)&&void 0!==e&&e.docView)}$node(e,n){var i;return(null===(i=this.$doc)||void 0===i?void 0:i.querySelector(e,n))||null}$nodes(e,n){var i;return(null===(i=this.$doc)||void 0===i?void 0:i.querySelectorAll(e,n))||null}$pos(e){const n=this.state.doc.resolve(e);return new fr(n,this)}get $doc(){return this.$pos(0)}}function lr(e){return new ro({find:e.find,handler:({state:n,range:i,match:t})=>{const a=Zs(e.getAttributes,void 0,t);if(!1===a||null===a)return null;const{tr:s}=n,o=t[t.length-1],r=t[0];if(o){const t=r.search(/\S/),f=i.from+r.indexOf(o),d=f+o.length;if(Vo(i.from,i.to,n.doc).filter((n=>n.mark.type.excluded.find((i=>i===e.type&&i!==n.mark.type)))).filter((e=>e.to>f)).length)return null;d<i.to&&s.delete(d,i.to),f>i.from&&s.delete(i.from+t,f);const l=i.from+t+o.length;s.addMark(i.from+t,l,e.type.create(a||{})),s.removeStoredMark(e.type)}}})}function cr(e){return new ro({find:e.find,handler:({state:n,range:i,match:t,chain:a})=>{const s=Zs(e.getAttributes,void 0,t)||{},o=n.tr.delete(i.from,i.to),r=o.doc.resolve(i.from).blockRange(),f=r&&dn(r,e.type,s);if(!f)return null;if(o.wrap(r,f),e.keepMarks&&e.editor){const{selection:i,storedMarks:t}=n,{splittableMarks:a}=e.editor.extensionManager,s=t||i.$to.parentOffset&&i.$from.marks();if(s){const e=s.filter((e=>a.includes(e.type.name)));o.ensureMarks(e)}}if(e.keepAttributes){const n="bulletList"===e.type.name||"orderedList"===e.type.name?"listItem":"taskList";a().updateAttributes(n,s).run()}const d=o.doc.resolve(i.from-1).nodeBefore;d&&d.type===e.type&&mn(o.doc,i.from-1)&&(!e.joinPredicate||e.joinPredicate(t,d))&&o.join(i.from-1)}})}class ur{constructor(e={}){this.type="node",this.name="node",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=Zs(Us(this,"addOptions",{name:this.name}))),this.storage=Zs(Us(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new ur(e)}configure(e={}){const n=this.extend({...this.config,addOptions:()=>ho(this.options,e)});return n.name=this.name,n.parent=this.parent,n}extend(e={}){const n=new ur(e);return n.parent=this,this.child=n,n.name=e.name?e.name:n.parent.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=Zs(Us(n,"addOptions",{name:n.name})),n.storage=Zs(Us(n,"addStorage",{name:n.name,options:n.options})),n}}function hr(e){return new po({find:e.find,handler:({state:n,range:i,match:t,pasteEvent:a})=>{const s=Zs(e.getAttributes,void 0,t,a);if(!1===s||null===s)return null;const{tr:o}=n,r=t[t.length-1],f=t[0];let d=i.to;if(r){const t=f.search(/\S/),a=i.from+f.indexOf(r),l=a+r.length;if(Vo(i.from,i.to,n.doc).filter((n=>n.mark.type.excluded.find((i=>i===e.type&&i!==n.mark.type)))).filter((e=>e.to>a)).length)return null;l<i.to&&o.delete(l,i.to),a>i.from&&o.delete(i.from+t,a),d=i.from+t+r.length,o.addMark(i.from+t,d,e.type.create(s||{})),o.removeStoredMark(e.type)}}})}function mr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pr,vr={exports:{}},gr={};
21
21
  /**
22
22
  * @license React
23
23
  * use-sync-external-store-shim.production.min.js
@@ -26,7 +26,7 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
26
26
  *
27
27
  * This source code is licensed under the MIT license found in the
28
28
  * LICENSE file in the root directory of this source tree.
29
- */var ya,ba={};
29
+ */var kr,yr={};
30
30
  /**
31
31
  * @license React
32
32
  * use-sync-external-store-shim.development.js
@@ -35,7 +35,7 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
35
35
  *
36
36
  * This source code is licensed under the MIT license found in the
37
37
  * LICENSE file in the root directory of this source tree.
38
- */"production"===process.env.NODE_ENV?ma.exports=function(){if(fa)return ga;fa=1;var t=e,n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=t.useState,o=t.useEffect,i=t.useLayoutEffect,s=t.useDebugValue;function a(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!n(e,r)}catch{return!0}}var l=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?function(e,t){return t()}:function(e,t){var n=t(),l=r({inst:{value:n,getSnapshot:t}}),c=l[0].inst,d=l[1];return i((function(){c.value=n,c.getSnapshot=t,a(c)&&d({inst:c})}),[e,n,t]),o((function(){return a(c)&&d({inst:c}),e((function(){a(c)&&d({inst:c})}))}),[e]),s(n),n};return ga.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:l,ga}():ma.exports=(ya||(ya=1,"production"!==process.env.NODE_ENV&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var t=e,n=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function r(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),o=1;o<t;o++)r[o-1]=arguments[o];!function(e,t,r){var o=n.ReactDebugCurrentFrame,i=o.getStackAddendum();""!==i&&(t+="%s",r=r.concat([i]));var s=r.map((function(e){return String(e)}));s.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,s)}("error",e,r)}var o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=t.useState,s=t.useEffect,a=t.useLayoutEffect,l=t.useDebugValue,c=!1,d=!1;function h(e){var t=e.getSnapshot,n=e.value;try{var r=t();return!o(n,r)}catch{return!0}}var u=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?function(e,n,u){c||void 0!==t.startTransition&&(c=!0,r("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var p=n();if(!d){var f=n();o(p,f)||(r("The result of getSnapshot should be cached to avoid an infinite loop"),d=!0)}var m=i({inst:{value:p,getSnapshot:n}}),g=m[0].inst,y=m[1];return a((function(){g.value=p,g.getSnapshot=n,h(g)&&y({inst:g})}),[e,p,n]),s((function(){return h(g)&&y({inst:g}),e((function(){h(g)&&y({inst:g})}))}),[e]),l(p),p}:function(e,t,n){return t()},p=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:u;ba.useSyncExternalStore=p,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),ba);var va=ma.exports;const wa=(...e)=>t=>{e.forEach((e=>{"function"==typeof e?e(t):e&&(e.current=t)}))},ka=({contentComponent:t})=>{const n=va.useSyncExternalStore(t.subscribe,t.getSnapshot,t.getServerSnapshot);return e.createElement(e.Fragment,null,Object.values(n))};class xa extends e.Component{constructor(t){var n;super(t),this.editorContentRef=e.createRef(),this.initialized=!1,this.state={hasContentComponentInitialized:!(null===(n=t.editor)||void 0===n||!n.contentComponent)}}componentDidMount(){this.init()}componentDidUpdate(){this.init()}init(){const e=this.props.editor;if(e&&!e.isDestroyed&&e.options.element){if(e.contentComponent)return;const t=this.editorContentRef.current;t.append(...e.options.element.childNodes),e.setOptions({element:t}),e.contentComponent=function(){const e=new Set;let t={};return{subscribe:t=>(e.add(t),()=>{e.delete(t)}),getSnapshot:()=>t,getServerSnapshot:()=>t,setRenderer(n,r){t={...t,[n]:p.createPortal(r.reactElement,r.element,n)},e.forEach((e=>e()))},removeRenderer(n){const r={...t};delete r[n],t=r,e.forEach((e=>e()))}}}(),this.state.hasContentComponentInitialized||(this.unsubscribeToContentComponent=e.contentComponent.subscribe((()=>{this.setState((e=>e.hasContentComponentInitialized?e:{hasContentComponentInitialized:!0})),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent()}))),e.createNodeViews(),this.initialized=!0}}componentWillUnmount(){const e=this.props.editor;if(!e||(this.initialized=!1,e.isDestroyed||e.view.setProps({nodeViews:{}}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent(),e.contentComponent=null,!e.options.element.firstChild))return;const t=document.createElement("div");t.append(...e.options.element.childNodes),e.setOptions({element:t})}render(){const{editor:t,innerRef:n,...r}=this.props;return e.createElement(e.Fragment,null,e.createElement("div",{ref:wa(n,this.editorContentRef),...r}),(null==t?void 0:t.contentComponent)&&e.createElement(ka,{contentComponent:t.contentComponent}))}}const Sa=t(((t,n)=>{const r=e.useMemo((()=>Math.floor(4294967295*Math.random()).toString()),[t.editor]);return e.createElement(xa,{key:r,innerRef:n,...t})})),Oa=e.memo(Sa);var Ca,Ma=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;var r,o,i;if(Array.isArray(t)){if((r=t.length)!=n.length)return!1;for(o=r;0!=o--;)if(!e(t[o],n[o]))return!1;return!0}if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(o of t.entries())if(!n.has(o[0]))return!1;for(o of t.entries())if(!e(o[1],n.get(o[0])))return!1;return!0}if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(o of t.entries())if(!n.has(o[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(n)){if((r=t.length)!=n.length)return!1;for(o=r;0!=o--;)if(t[o]!==n[o])return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((r=(i=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(o=r;0!=o--;)if(!Object.prototype.hasOwnProperty.call(n,i[o]))return!1;for(o=r;0!=o--;){var s=i[o];if(!("_owner"===s&&t.$$typeof||e(t[s],n[s])))return!1}return!0}return t!=t&&n!=n},Ea=pa(Ma),Ta={exports:{}},Na={};
38
+ */"production"===process.env.NODE_ENV?vr.exports=function(){if(pr)return gr;pr=1;var n=e,i="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n},t=n.useState,a=n.useEffect,s=n.useLayoutEffect,o=n.useDebugValue;function r(e){var n=e.getSnapshot;e=e.value;try{var t=n();return!i(e,t)}catch{return!0}}var f=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?function(e,n){return n()}:function(e,n){var i=n(),f=t({inst:{value:i,getSnapshot:n}}),d=f[0].inst,l=f[1];return s((function(){d.value=i,d.getSnapshot=n,r(d)&&l({inst:d})}),[e,i,n]),a((function(){return r(d)&&l({inst:d}),e((function(){r(d)&&l({inst:d})}))}),[e]),o(i),i};return gr.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:f,gr}():vr.exports=(kr||(kr=1,"production"!==process.env.NODE_ENV&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var n=e,i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function t(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),a=1;a<n;a++)t[a-1]=arguments[a];!function(e,n,t){var a=i.ReactDebugCurrentFrame,s=a.getStackAddendum();""!==s&&(n+="%s",t=t.concat([s]));var o=t.map((function(e){return String(e)}));o.unshift("Warning: "+n),Function.prototype.apply.call(console[e],console,o)}("error",e,t)}var a="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n},s=n.useState,o=n.useEffect,r=n.useLayoutEffect,f=n.useDebugValue,d=!1,l=!1;function c(e){var n=e.getSnapshot,i=e.value;try{var t=n();return!a(i,t)}catch{return!0}}var u=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?function(e,i,u){d||void 0!==n.startTransition&&(d=!0,t("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var h=i();if(!l){var m=i();a(h,m)||(t("The result of getSnapshot should be cached to avoid an infinite loop"),l=!0)}var p=s({inst:{value:h,getSnapshot:i}}),v=p[0].inst,g=p[1];return r((function(){v.value=h,v.getSnapshot=i,c(v)&&g({inst:v})}),[e,h,i]),o((function(){return c(v)&&g({inst:v}),e((function(){c(v)&&g({inst:v})}))}),[e]),f(h),h}:function(e,n,i){return n()},h=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u;yr.useSyncExternalStore=h,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),yr);var wr=vr.exports;const br=(...e)=>n=>{e.forEach((e=>{"function"==typeof e?e(n):e&&(e.current=n)}))},_r=({contentComponent:n})=>{const i=wr.useSyncExternalStore(n.subscribe,n.getSnapshot,n.getServerSnapshot);return e.createElement(e.Fragment,null,Object.values(i))};class xr extends e.Component{constructor(n){var i;super(n),this.editorContentRef=e.createRef(),this.initialized=!1,this.state={hasContentComponentInitialized:!(null===(i=n.editor)||void 0===i||!i.contentComponent)}}componentDidMount(){this.init()}componentDidUpdate(){this.init()}init(){const e=this.props.editor;if(e&&!e.isDestroyed&&e.options.element){if(e.contentComponent)return;const n=this.editorContentRef.current;n.append(...e.options.element.childNodes),e.setOptions({element:n}),e.contentComponent=function(){const e=new Set;let n={};return{subscribe:n=>(e.add(n),()=>{e.delete(n)}),getSnapshot:()=>n,getServerSnapshot:()=>n,setRenderer(i,t){n={...n,[i]:h.createPortal(t.reactElement,t.element,i)},e.forEach((e=>e()))},removeRenderer(i){const t={...n};delete t[i],n=t,e.forEach((e=>e()))}}}(),this.state.hasContentComponentInitialized||(this.unsubscribeToContentComponent=e.contentComponent.subscribe((()=>{this.setState((e=>e.hasContentComponentInitialized?e:{hasContentComponentInitialized:!0})),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent()}))),e.createNodeViews(),this.initialized=!0}}componentWillUnmount(){const e=this.props.editor;if(!e||(this.initialized=!1,e.isDestroyed||e.view.setProps({nodeViews:{}}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent(),e.contentComponent=null,!e.options.element.firstChild))return;const n=document.createElement("div");n.append(...e.options.element.childNodes),e.setOptions({element:n})}render(){const{editor:n,innerRef:i,...t}=this.props;return e.createElement(e.Fragment,null,e.createElement("div",{ref:br(i,this.editorContentRef),...t}),(null==n?void 0:n.contentComponent)&&e.createElement(_r,{contentComponent:n.contentComponent}))}}const Sr=n(((n,i)=>{const t=e.useMemo((()=>Math.floor(4294967295*Math.random()).toString()),[n.editor]);return e.createElement(xr,{key:t,innerRef:i,...n})})),Cr=e.memo(Sr);var Mr,Or=function e(n,i){if(n===i)return!0;if(n&&i&&"object"==typeof n&&"object"==typeof i){if(n.constructor!==i.constructor)return!1;var t,a,s;if(Array.isArray(n)){if((t=n.length)!=i.length)return!1;for(a=t;0!=a--;)if(!e(n[a],i[a]))return!1;return!0}if(n instanceof Map&&i instanceof Map){if(n.size!==i.size)return!1;for(a of n.entries())if(!i.has(a[0]))return!1;for(a of n.entries())if(!e(a[1],i.get(a[0])))return!1;return!0}if(n instanceof Set&&i instanceof Set){if(n.size!==i.size)return!1;for(a of n.entries())if(!i.has(a[0]))return!1;return!0}if(ArrayBuffer.isView(n)&&ArrayBuffer.isView(i)){if((t=n.length)!=i.length)return!1;for(a=t;0!=a--;)if(n[a]!==i[a])return!1;return!0}if(n.constructor===RegExp)return n.source===i.source&&n.flags===i.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===i.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===i.toString();if((t=(s=Object.keys(n)).length)!==Object.keys(i).length)return!1;for(a=t;0!=a--;)if(!Object.prototype.hasOwnProperty.call(i,s[a]))return!1;for(a=t;0!=a--;){var o=s[a];if(!("_owner"===o&&n.$$typeof||e(n[o],i[o])))return!1}return!0}return n!=n&&i!=i},Tr=mr(Or),Er={exports:{}},Fr={};
39
39
  /**
40
40
  * @license React
41
41
  * use-sync-external-store-shim/with-selector.production.min.js
@@ -44,7 +44,7 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
44
44
  *
45
45
  * This source code is licensed under the MIT license found in the
46
46
  * LICENSE file in the root directory of this source tree.
47
- */var Aa,Da={};
47
+ */var Ar,Nr={};
48
48
  /**
49
49
  * @license React
50
50
  * use-sync-external-store-shim/with-selector.development.js
@@ -53,4 +53,4 @@ import e,{forwardRef as t,useRef as n,useState as r,useDebugValue as o,useEffect
53
53
  *
54
54
  * This source code is licensed under the MIT license found in the
55
55
  * LICENSE file in the root directory of this source tree.
56
- */"production"===process.env.NODE_ENV?Ta.exports=function(){if(Ca)return Na;Ca=1;var t=e,n=va,r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=n.useSyncExternalStore,i=t.useRef,s=t.useEffect,a=t.useMemo,l=t.useDebugValue;return Na.useSyncExternalStoreWithSelector=function(e,t,n,c,d){var h=i(null);if(null===h.current){var u={hasValue:!1,value:null};h.current=u}else u=h.current;h=a((function(){function e(e){if(!s){if(s=!0,o=e,e=c(e),void 0!==d&&u.hasValue){var t=u.value;if(d(t,e))return i=t}return i=e}if(t=i,r(o,e))return t;var n=c(e);return void 0!==d&&d(t,n)?t:(o=e,i=n)}var o,i,s=!1,a=void 0===n?null:n;return[function(){return e(t())},null===a?void 0:function(){return e(a())}]}),[t,n,c,d]);var p=o(e,h[0],h[1]);return s((function(){u.hasValue=!0,u.value=p}),[p]),l(p),p},Na}():Ta.exports=(Aa||(Aa=1,"production"!==process.env.NODE_ENV&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var t=e,n=va,r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=n.useSyncExternalStore,i=t.useRef,s=t.useEffect,a=t.useMemo,l=t.useDebugValue;Da.useSyncExternalStoreWithSelector=function(e,t,n,c,d){var h,u=i(null);null===u.current?(h={hasValue:!1,value:null},u.current=h):h=u.current;var p=a((function(){var e,o,i=!1,s=function(t){if(!i){i=!0,e=t;var n=c(t);if(void 0!==d&&h.hasValue){var s=h.value;if(d(s,n))return o=s,s}return o=n,n}var a=o;if(r(e,t))return a;var l=c(t);return void 0!==d&&d(a,l)?a:(e=t,o=l,l)},a=void 0===n?null:n;return[function(){return s(t())},null===a?void 0:function(){return s(a())}]}),[t,n,c,d]),f=p[0],m=p[1],g=o(e,f,m);return s((function(){h.hasValue=!0,h.value=g}),[g]),l(g),g},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),Da);var Ra=Ta.exports;const Ia=typeof window<"u"?l:i;class Pa{constructor(e){this.transactionNumber=0,this.lastTransactionNumber=0,this.subscribers=new Set,this.editor=e,this.lastSnapshot={editor:e,transactionNumber:0},this.getSnapshot=this.getSnapshot.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.watch=this.watch.bind(this),this.subscribe=this.subscribe.bind(this)}getSnapshot(){return this.transactionNumber===this.lastTransactionNumber||(this.lastTransactionNumber=this.transactionNumber,this.lastSnapshot={editor:this.editor,transactionNumber:this.transactionNumber}),this.lastSnapshot}getServerSnapshot(){return{editor:null,transactionNumber:0}}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}watch(e){if(this.editor=e,this.editor){const e=()=>{this.transactionNumber+=1,this.subscribers.forEach((e=>e()))},t=this.editor;return t.on("transaction",e),()=>{t.off("transaction",e)}}}}const La="production"!==process.env.NODE_ENV,ja=typeof window>"u",za=ja||!!(typeof window<"u"&&window.next);class $a{constructor(e){this.editor=null,this.subscriptions=new Set,this.isComponentMounted=!1,this.previousDeps=null,this.instanceId="",this.options=e,this.subscriptions=new Set,this.setEditor(this.getInitialEditor()),this.scheduleDestroy(),this.getEditor=this.getEditor.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.subscribe=this.subscribe.bind(this),this.refreshEditorInstance=this.refreshEditorInstance.bind(this),this.scheduleDestroy=this.scheduleDestroy.bind(this),this.onRender=this.onRender.bind(this),this.createEditor=this.createEditor.bind(this)}setEditor(e){this.editor=e,this.instanceId=Math.random().toString(36).slice(2,9),this.subscriptions.forEach((e=>e()))}getInitialEditor(){if(void 0===this.options.current.immediatelyRender)return ja||za?(La&&console.warn("Tiptap Error: SSR has been detected, please set `immediatelyRender` explicitly to `false` to avoid hydration mismatches."),null):this.createEditor();if(this.options.current.immediatelyRender&&ja&&La)throw new Error("Tiptap Error: SSR has been detected, and `immediatelyRender` has been set to `true` this is an unsupported configuration that may result in errors, explicitly set `immediatelyRender` to `false` to avoid hydration mismatches.");return this.options.current.immediatelyRender?this.createEditor():null}createEditor(){const e={...this.options.current,onBeforeCreate:(...e)=>{var t,n;return null===(n=(t=this.options.current).onBeforeCreate)||void 0===n?void 0:n.call(t,...e)},onBlur:(...e)=>{var t,n;return null===(n=(t=this.options.current).onBlur)||void 0===n?void 0:n.call(t,...e)},onCreate:(...e)=>{var t,n;return null===(n=(t=this.options.current).onCreate)||void 0===n?void 0:n.call(t,...e)},onDestroy:(...e)=>{var t,n;return null===(n=(t=this.options.current).onDestroy)||void 0===n?void 0:n.call(t,...e)},onFocus:(...e)=>{var t,n;return null===(n=(t=this.options.current).onFocus)||void 0===n?void 0:n.call(t,...e)},onSelectionUpdate:(...e)=>{var t,n;return null===(n=(t=this.options.current).onSelectionUpdate)||void 0===n?void 0:n.call(t,...e)},onTransaction:(...e)=>{var t,n;return null===(n=(t=this.options.current).onTransaction)||void 0===n?void 0:n.call(t,...e)},onUpdate:(...e)=>{var t,n;return null===(n=(t=this.options.current).onUpdate)||void 0===n?void 0:n.call(t,...e)},onContentError:(...e)=>{var t,n;return null===(n=(t=this.options.current).onContentError)||void 0===n?void 0:n.call(t,...e)},onDrop:(...e)=>{var t,n;return null===(n=(t=this.options.current).onDrop)||void 0===n?void 0:n.call(t,...e)},onPaste:(...e)=>{var t,n;return null===(n=(t=this.options.current).onPaste)||void 0===n?void 0:n.call(t,...e)}};return new la(e)}getEditor(){return this.editor}getServerSnapshot(){return null}subscribe(e){return this.subscriptions.add(e),()=>{this.subscriptions.delete(e)}}static compareOptions(e,t){return Object.keys(e).every((n=>!!["onCreate","onBeforeCreate","onDestroy","onUpdate","onTransaction","onFocus","onBlur","onSelectionUpdate","onContentError","onDrop","onPaste"].includes(n)||("extensions"===n&&e.extensions&&t.extensions?e.extensions.length===t.extensions.length&&e.extensions.every(((e,n)=>{var r;return e===(null===(r=t.extensions)||void 0===r?void 0:r[n])})):e[n]===t[n])))}onRender(e){return()=>(this.isComponentMounted=!0,clearTimeout(this.scheduledDestructionTimeout),this.editor&&!this.editor.isDestroyed&&0===e.length?$a.compareOptions(this.options.current,this.editor.options)||this.editor.setOptions({...this.options.current,editable:this.editor.isEditable}):this.refreshEditorInstance(e),()=>{this.isComponentMounted=!1,this.scheduleDestroy()})}refreshEditorInstance(e){if(this.editor&&!this.editor.isDestroyed){if(null===this.previousDeps)return void(this.previousDeps=e);if(this.previousDeps.length===e.length&&this.previousDeps.every(((t,n)=>t===e[n])))return}this.editor&&!this.editor.isDestroyed&&this.editor.destroy(),this.setEditor(this.createEditor()),this.previousDeps=e}scheduleDestroy(){const e=this.instanceId,t=this.editor;this.scheduledDestructionTimeout=setTimeout((()=>{this.isComponentMounted&&this.instanceId===e?t&&t.setOptions(this.options.current):t&&!t.isDestroyed&&(t.destroy(),this.instanceId===e&&this.setEditor(null))}),1)}}function Ba(e={},t=[]){const s=n(e);s.current=e;const[a]=r((()=>new $a(s))),l=va.useSyncExternalStore(a.subscribe,a.getEditor,a.getServerSnapshot);return o(l),i(a.onRender(t)),function(e){var t;const[n]=r((()=>new Pa(e.editor))),i=Ra.useSyncExternalStoreWithSelector(n.subscribe,n.getSnapshot,n.getServerSnapshot,e.selector,null!==(t=e.equalityFn)&&void 0!==t?t:Ea);Ia((()=>n.watch(e.editor)),[e.editor,n]),o(i)}({editor:l,selector:({transactionNumber:t})=>!1===e.shouldRerenderOnTransaction?null:e.immediatelyRender&&0===t?0:t+1}),l}s({editor:null}).Consumer;const _a=s({onDragStart:void 0});e.forwardRef(((t,n)=>{const{onDragStart:r}=a(_a),o=t.as||"div";return e.createElement(o,{...t,ref:n,"data-node-view-wrapper":"",onDragStart:r,style:{whiteSpace:"normal",...t.style}})}));const Fa=Object.freeze({left:0,top:0,width:16,height:16}),Va=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Ha=Object.freeze({...Fa,...Va}),Wa=Object.freeze({...Ha,body:"",hidden:!1});function Ka(e,t){const n=function(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}(e,t);for(const r in Wa)r in Va?r in e&&!(r in n)&&(n[r]=Va[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function qa(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let i={};function s(e){i=Ka(r[e]||o[e],i)}return s(t),n.forEach(s),Ka(e,i)}function Ja(e,t){const n=[];if("object"!=typeof e||"object"!=typeof e.icons)return n;e.not_found instanceof Array&&e.not_found.forEach((e=>{t(e,null),n.push(e)}));const r=function(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);return(t||Object.keys(n).concat(Object.keys(r))).forEach((function e(t){if(n[t])return o[t]=[];if(!(t in o)){o[t]=null;const n=r[t]&&r[t].parent,i=n&&e(n);i&&(o[t]=[n].concat(i))}return o[t]})),o}(e);for(const o in r){const i=r[o];i&&(t(o,qa(e,o,i)),n.push(o))}return n}const Ua=/^[a-z0-9]+(-[a-z0-9]+)*$/,Ga=(e,t,n,r="")=>{const o=e.split(":");if("@"===e.slice(0,1)){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const e=o.pop(),n=o.pop(),i={provider:o.length>0?o[0]:r,prefix:n,name:e};return t&&!Ya(i)?null:i}const i=o[0],s=i.split("-");if(s.length>1){const e={provider:r,prefix:s.shift(),name:s.join("-")};return t&&!Ya(e)?null:e}if(n&&""===r){const e={provider:r,prefix:"",name:i};return t&&!Ya(e,n)?null:e}return null},Ya=(e,t)=>!!e&&!(""!==e.provider&&!e.provider.match(Ua)||!(t&&""===e.prefix||e.prefix.match(Ua))||!e.name.match(Ua)),Qa={provider:"",aliases:{},not_found:{},...Fa};function Xa(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function Za(e){if("object"!=typeof e||null===e)return null;const t=e;if("string"!=typeof t.prefix||!e.icons||"object"!=typeof e.icons||!Xa(e,Qa))return null;const n=t.icons;for(const e in n){const t=n[e];if(!e.match(Ua)||"string"!=typeof t.body||!Xa(t,Wa))return null}const r=t.aliases||Object.create(null);for(const e in r){const t=r[e],o=t.parent;if(!e.match(Ua)||"string"!=typeof o||!n[o]&&!r[o]||!Xa(t,Wa))return null}return t}const el=Object.create(null);function tl(e,t){const n=el[e]||(el[e]=Object.create(null));return n[t]||(n[t]=function(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}(e,t))}function nl(e,t){return Za(t)?Ja(t,((t,n)=>{n?e.icons[t]=n:e.missing.add(t)})):[]}let rl=!1;function ol(e){return"boolean"==typeof e&&(rl=e),rl}function il(e){const t="string"==typeof e?Ga(e,!0,rl):e;if(t){const e=tl(t.provider,t.prefix),n=t.name;return e.icons[n]||(e.missing.has(n)?null:void 0)}}function sl(e,t){if("object"!=typeof e)return!1;if("string"!=typeof t&&(t=e.provider||""),rl&&!t&&!e.prefix){let t=!1;return Za(e)&&(e.prefix="",Ja(e,((e,n)=>{n&&function(e,t){const n=Ga(e,!0,rl);return!!n&&function(e,t,n){try{if("string"==typeof n.body)return e.icons[t]={...n},!0}catch{}return!1}(tl(n.provider,n.prefix),n.name,t)}(e,n)&&(t=!0)}))),t}const n=e.prefix;if(!Ya({provider:t,prefix:n,name:"a"}))return!1;return!!nl(tl(t,n),e)}const al=Object.freeze({width:null,height:null}),ll=Object.freeze({...al,...Va}),cl=/(-?[0-9.]*[0-9]+[0-9.]*)/g,dl=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function hl(e,t,n){if(1===t)return e;if(n=n||100,"number"==typeof e)return Math.ceil(e*t*n)/n;if("string"!=typeof e)return e;const r=e.split(cl);if(null===r||!r.length)return e;const o=[];let i=r.shift(),s=dl.test(i);for(;;){if(s){const e=parseFloat(i);isNaN(e)?o.push(i):o.push(Math.ceil(e*t*n)/n)}else o.push(i);if(i=r.shift(),void 0===i)return o.join("");s=!s}}const ul=/\sid="(\S+)"/g,pl="IconifyId"+Date.now().toString(16)+(16777216*Math.random()|0).toString(16);let fl=0;function ml(e,t=pl){const n=[];let r;for(;r=ul.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(16777216*Math.random()|Date.now()).toString(16);return n.forEach((n=>{const r="function"==typeof t?t(n):t+(fl++).toString(),i=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+i+')([")]|\\.[a-z])',"g"),"$1"+r+o+"$3")})),e=e.replace(new RegExp(o,"g"),"")}const gl=Object.create(null);function yl(e){return gl[e]||gl[""]}function bl(e){let t;if("string"==typeof e.resources)t=[e.resources];else if(t=e.resources,!(t instanceof Array&&t.length))return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:!0===e.random,index:e.index||0,dataAfterTimeout:!1!==e.dataAfterTimeout}}const vl=Object.create(null),wl=["https://api.simplesvg.com","https://api.unisvg.com"],kl=[];for(;wl.length>0;)1===wl.length||Math.random()>.5?kl.push(wl.shift()):kl.push(wl.pop());function xl(e,t){const n=bl(t);return null!==n&&(vl[e]=n,!0)}function Sl(e){return vl[e]}vl[""]=bl({resources:["https://api.iconify.design"].concat(kl)});let Ol=(()=>{let e;try{if(e=fetch,"function"==typeof e)return e}catch{}})();const Cl={prepare:(e,t,n)=>{const r=[],o=function(e,t){const n=Sl(e);if(!n)return 0;let r;if(n.maxURL){let e=0;n.resources.forEach((t=>{e=Math.max(e,t.length)}));const o=t+".json?icons=";r=n.maxURL-e-n.path.length-o.length}else r=0;return r}(e,t),i="icons";let s={type:i,provider:e,prefix:t,icons:[]},a=0;return n.forEach(((n,l)=>{a+=n.length+1,a>=o&&l>0&&(r.push(s),s={type:i,provider:e,prefix:t,icons:[]},a=n.length),s.icons.push(n)})),r.push(s),r},send:(e,t,n)=>{if(!Ol)return void n("abort",424);let r=function(e){if("string"==typeof e){const t=Sl(e);if(t)return t.path}return"/"}(t.provider);switch(t.type){case"icons":{const e=t.prefix,n=t.icons.join(",");r+=e+".json?"+new URLSearchParams({icons:n}).toString();break}case"custom":{const e=t.uri;r+="/"===e.slice(0,1)?e.slice(1):e;break}default:return void n("abort",400)}let o=503;Ol(e+r).then((e=>{const t=e.status;if(200===t)return o=501,e.json();setTimeout((()=>{n(function(e){return 404===e}(t)?"abort":"next",t)}))})).then((e=>{"object"==typeof e&&null!==e?setTimeout((()=>{n("success",e)})):setTimeout((()=>{404===e?n("abort",e):n("next",o)}))})).catch((()=>{n("next",o)}))}};function Ml(e,t){e.forEach((e=>{const n=e.loaderCallbacks;n&&(e.loaderCallbacks=n.filter((e=>e.id!==t)))}))}let El=0;var Tl={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function Nl(e,t,n,r){const o=e.resources.length,i=e.random?Math.floor(Math.random()*o):e.index;let s;if(e.random){let t=e.resources.slice(0);for(s=[];t.length>1;){const e=Math.floor(Math.random()*t.length);s.push(t[e]),t=t.slice(0,e).concat(t.slice(e+1))}s=s.concat(t)}else s=e.resources.slice(i).concat(e.resources.slice(0,i));const a=Date.now();let l,c="pending",d=0,h=null,u=[],p=[];function f(){h&&(clearTimeout(h),h=null)}function m(){"pending"===c&&(c="aborted"),f(),u.forEach((e=>{"pending"===e.status&&(e.status="aborted")})),u=[]}function g(e,t){t&&(p=[]),"function"==typeof e&&p.push(e)}function y(){c="failed",p.forEach((e=>{e(void 0,l)}))}function b(){u.forEach((e=>{"pending"===e.status&&(e.status="aborted")})),u=[]}function v(){if("pending"!==c)return;f();const r=s.shift();if(void 0===r)return u.length?void(h=setTimeout((()=>{f(),"pending"===c&&(b(),y())}),e.timeout)):void y();const o={status:"pending",resource:r,callback:(t,n)=>{!function(t,n,r){const o="success"!==n;switch(u=u.filter((e=>e!==t)),c){case"pending":break;case"failed":if(o||!e.dataAfterTimeout)return;break;default:return}if("abort"===n)return l=r,void y();if(o)return l=r,void(u.length||(s.length?v():y()));if(f(),b(),!e.random){const n=e.resources.indexOf(t.resource);-1!==n&&n!==e.index&&(e.index=n)}c="completed",p.forEach((e=>{e(r)}))}(o,t,n)}};u.push(o),d++,h=setTimeout(v,e.rotate),n(r,t,o.callback)}return"function"==typeof r&&p.push(r),setTimeout(v),function(){return{startTime:a,payload:t,status:c,queriesSent:d,queriesPending:u.length,subscribe:g,abort:m}}}function Al(e){const t={...Tl,...e};let n=[];function r(){n=n.filter((e=>"pending"===e().status))}return{query:function(e,o,i){const s=Nl(t,e,o,((e,t)=>{r(),i&&i(e,t)}));return n.push(s),s},find:function(e){return n.find((t=>e(t)))||null},setIndex:e=>{t.index=e},getIndex:()=>t.index,cleanup:r}}function Dl(){}const Rl=Object.create(null);function Il(e,t,n){let r,o;if("string"==typeof e){const t=yl(e);if(!t)return n(void 0,424),Dl;o=t.send;const i=function(e){if(!Rl[e]){const t=Sl(e);if(!t)return;const n={config:t,redundancy:Al(t)};Rl[e]=n}return Rl[e]}(e);i&&(r=i.redundancy)}else{const t=bl(e);if(t){r=Al(t);const n=yl(e.resources?e.resources[0]:"");n&&(o=n.send)}}return r&&o?r.query(t,o,n)().abort:(n(void 0,424),Dl)}const Pl="iconify2",Ll="iconify",jl=Ll+"-count",zl=Ll+"-version",$l=36e5,Bl=168,_l=50;function Fl(e,t){try{return e.getItem(t)}catch{}}function Vl(e,t,n){try{return e.setItem(t,n),!0}catch{}}function Hl(e,t){try{e.removeItem(t)}catch{}}function Wl(e,t){return Vl(e,jl,t.toString())}function Kl(e){return parseInt(Fl(e,jl))||0}const ql={local:!0,session:!0},Jl={local:new Set,session:new Set};let Ul=!1;let Gl=typeof window>"u"?{}:window;function Yl(e){const t=e+"Storage";try{if(Gl&&Gl[t]&&"number"==typeof Gl[t].length)return Gl[t]}catch{}ql[e]=!1}function Ql(e,t){const n=Yl(e);if(!n)return;const r=Fl(n,zl);if(r!==Pl){if(r){const e=Kl(n);for(let t=0;t<e;t++)Hl(n,Ll+t.toString())}return Vl(n,zl,Pl),void Wl(n,0)}const o=Math.floor(Date.now()/$l)-Bl,i=e=>{const r=Ll+e.toString(),i=Fl(n,r);if("string"==typeof i){try{const n=JSON.parse(i);if("object"==typeof n&&"number"==typeof n.cached&&n.cached>o&&"string"==typeof n.provider&&"object"==typeof n.data&&"string"==typeof n.data.prefix&&t(n,e))return!0}catch{}Hl(n,r)}};let s=Kl(n);for(let t=s-1;t>=0;t--)i(t)||(t===s-1?(s--,Wl(n,s)):Jl[e].add(t))}function Xl(){if(!Ul){Ul=!0;for(const e in ql)Ql(e,(e=>{const t=e.data,n=tl(e.provider,t.prefix);if(!nl(n,t).length)return!1;const r=t.lastModified||-1;return n.lastModifiedCached=n.lastModifiedCached?Math.min(n.lastModifiedCached,r):r,!0}))}}function Zl(e,t){function n(n){let r;if(!ql[n]||!(r=Yl(n)))return;const o=Jl[n];let i;if(o.size)o.delete(i=Array.from(o).shift());else if(i=Kl(r),i>=_l||!Wl(r,i+1))return;const s={cached:Math.floor(Date.now()/$l),provider:e.provider,data:t};return Vl(r,Ll+i.toString(),JSON.stringify(s))}Ul||Xl(),t.lastModified&&!function(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const n in ql)Ql(n,(n=>{const r=n.data;return n.provider!==e.provider||r.prefix!==e.prefix||r.lastModified===t}));return!0}(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&delete(t=Object.assign({},t)).not_found,n("local")||n("session"))}function ec(){}function tc(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout((()=>{e.iconsLoaderFlag=!1,function(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout((()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach((t=>{const i=t.icons,s=i.pending.length;i.pending=i.pending.filter((t=>{if(t.prefix!==o)return!0;const s=t.name;if(e.icons[s])i.loaded.push({provider:r,prefix:o,name:s});else{if(!e.missing.has(s))return n=!0,!0;i.missing.push({provider:r,prefix:o,name:s})}return!1})),i.pending.length!==s&&(n||Ml([e],t.id),t.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),t.abort))}))})))}(e)})))}const nc=(e,t)=>{const n=function(e,t=!0,n=!1){const r=[];return e.forEach((e=>{const o="string"==typeof e?Ga(e,t,n):e;o&&r.push(o)})),r}(e,!0,ol()),r=function(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort(((e,t)=>e.provider!==t.provider?e.provider.localeCompare(t.provider):e.prefix!==t.prefix?e.prefix.localeCompare(t.prefix):e.name.localeCompare(t.name)));let r={provider:"",prefix:"",name:""};return e.forEach((e=>{if(r.name===e.name&&r.prefix===e.prefix&&r.provider===e.provider)return;r=e;const o=e.provider,i=e.prefix,s=e.name,a=n[o]||(n[o]=Object.create(null)),l=a[i]||(a[i]=tl(o,i));let c;c=s in l.icons?t.loaded:""===i||l.missing.has(s)?t.missing:t.pending;const d={provider:o,prefix:i,name:s};c.push(d)})),t}(n);if(!r.pending.length){let e=!0;return t&&setTimeout((()=>{e&&t(r.loaded,r.missing,r.pending,ec)})),()=>{e=!1}}const o=Object.create(null),i=[];let s,a;return r.pending.forEach((e=>{const{provider:t,prefix:n}=e;if(n===a&&t===s)return;s=t,a=n,i.push(tl(t,n));const r=o[t]||(o[t]=Object.create(null));r[n]||(r[n]=[])})),r.pending.forEach((e=>{const{provider:t,prefix:n,name:r}=e,i=tl(t,n),s=i.pendingIcons||(i.pendingIcons=new Set);s.has(r)||(s.add(r),o[t][n].push(r))})),i.forEach((e=>{const{provider:t,prefix:n}=e;o[t][n].length&&function(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout((()=>{e.iconsQueueFlag=!1;const{provider:t,prefix:n}=e,r=e.iconsToLoad;let o;delete e.iconsToLoad,r&&(o=yl(t))&&o.prepare(t,n,r).forEach((n=>{Il(t,n,(t=>{if("object"!=typeof t)n.icons.forEach((t=>{e.missing.add(t)}));else try{const n=nl(e,t);if(!n.length)return;const r=e.pendingIcons;r&&n.forEach((e=>{r.delete(e)})),Zl(e,t)}catch(e){console.error(e)}tc(e)}))}))})))}(e,o[t][n])})),t?function(e,t,n){const r=El++,o=Ml.bind(null,n,r);if(!t.pending.length)return o;const i={id:r,icons:t,callback:e,abort:o};return n.forEach((e=>{(e.loaderCallbacks||(e.loaderCallbacks=[])).push(i)})),o}(t,r,i):ec};const rc=/[\s,]+/;function oc(e,t){t.split(rc).forEach((t=>{switch(t.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0}}))}function ic(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(e){for(;e<0;)e+=4;return e%4}if(""===n){const t=parseInt(e);return isNaN(t)?0:r(t)}if(n!==e){let t=0;switch(n){case"%":t=25;break;case"deg":t=90}if(t){let o=parseFloat(e.slice(0,e.length-n.length));return isNaN(o)?0:(o/=t,o%1==0?r(o):0)}}return t}function sc(e){return'url("'+function(e){return"data:image/svg+xml,"+function(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}(e)}(e)+'")'}let ac;function lc(e){return void 0===ac&&function(){try{ac=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{ac=null}}(),ac?ac.createHTML(e):e}const cc={...ll,inline:!1},dc={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},hc={display:"inline-block"},uc={backgroundColor:"currentColor"},pc={backgroundColor:"transparent"},fc={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},mc={WebkitMask:uc,mask:uc,background:pc};for(const e in mc){const t=mc[e];for(const n in fc)t[e+n]=fc[n]}const gc={...cc,inline:!0};function yc(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const bc=(e,t,n)=>{const r=t.inline?gc:cc,o=function(e,t){const n={...e};for(const e in t){const r=t[e],o=typeof r;e in al?(null===r||r&&("string"===o||"number"===o))&&(n[e]=r):o===typeof n[e]&&(n[e]="rotate"===e?r%4:r)}return n}(r,t),i=t.mode||"svg",s={},a=t.style||{},l={..."svg"===i?dc:{}};if(n){const e=Ga(n,!1,!0);if(e){const t=["iconify"],n=["provider","prefix"];for(const r of n)e[r]&&t.push("iconify--"+e[r]);l.className=t.join(" ")}}for(let e in t){const n=t[e];if(void 0!==n)switch(e){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":break;case"_ref":l.ref=n;break;case"className":l[e]=(l[e]?l[e]+" ":"")+n;break;case"inline":case"hFlip":case"vFlip":o[e]=!0===n||"true"===n||1===n;break;case"flip":"string"==typeof n&&oc(o,n);break;case"color":s.color=n;break;case"rotate":"string"==typeof n?o[e]=ic(n):"number"==typeof n&&(o[e]=n);break;case"ariaHidden":case"aria-hidden":!0!==n&&"true"!==n&&delete l["aria-hidden"];break;default:void 0===r[e]&&(l[e]=n)}}const d=function(e,t){const n={...Ha,...e},r={...ll,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let i=n.body;[n,r].forEach((e=>{const t=[],n=e.hFlip,r=e.vFlip;let s,a=e.rotate;switch(n?r?a+=2:(t.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),t.push("scale(-1 1)"),o.top=o.left=0):r&&(t.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),t.push("scale(1 -1)"),o.top=o.left=0),a<0&&(a-=4*Math.floor(a/4)),a%=4,a){case 1:s=o.height/2+o.top,t.unshift("rotate(90 "+s.toString()+" "+s.toString()+")");break;case 2:t.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:s=o.width/2+o.left,t.unshift("rotate(-90 "+s.toString()+" "+s.toString()+")")}a%2==1&&(o.left!==o.top&&(s=o.left,o.left=o.top,o.top=s),o.width!==o.height&&(s=o.width,o.width=o.height,o.height=s)),t.length&&(i=function(e,t,n){const r=function(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const o=e.indexOf(">",r),i=e.indexOf("</"+t);if(-1===o||-1===i)break;const s=e.indexOf(">",i);if(-1===s)break;n+=e.slice(o+1,i).trim(),e=e.slice(0,r).trim()+e.slice(s+1)}return{defs:n,content:e}}(e);return function(e,t){return e?"<defs>"+e+"</defs>"+t:t}(r.defs,t+r.content+n)}(i,'<g transform="'+t.join(" ")+'">',"</g>"))}));const s=r.width,a=r.height,l=o.width,c=o.height;let d,h;null===s?(h=null===a?"1em":"auto"===a?c:a,d=hl(h,l/c)):(d="auto"===s?l:s,h=null===a?hl(d,c/l):"auto"===a?c:a);const u={},p=(e,t)=>{(e=>"unset"===e||"undefined"===e||"none"===e)(t)||(u[e]=t.toString())};p("width",d),p("height",h);const f=[o.left,o.top,l,c];return u.viewBox=f.join(" "),{attributes:u,viewBox:f,body:i}}(e,o),h=d.attributes;if(o.inline&&(s.verticalAlign="-0.125em"),"svg"===i){l.style={...s,...a},Object.assign(l,h);let e=0,n=t.id;return"string"==typeof n&&(n=n.replace(/-/g,"_")),l.dangerouslySetInnerHTML={__html:lc(ml(d.body,n?()=>n+"ID"+e++:"iconifyReact"))},c("svg",l)}const{body:u,width:p,height:f}=e,m="mask"===i||"bg"!==i&&-1!==u.indexOf("currentColor"),g=function(e,t){let n=-1===e.indexOf("xlink:")?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const e in t)n+=" "+e+'="'+t[e]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}(u,{...h,width:p+"",height:f+""});return l.style={...s,"--svg":sc(g),width:yc(h.width),height:yc(h.height),...hc,...m?uc:pc,...a},c("span",l)};var vc;if(ol(!0),vc=Cl,gl[""]=vc,typeof document<"u"&&typeof window<"u"){Xl();const e=window;if(void 0!==e.IconifyPreload){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";"object"==typeof t&&null!==t&&(t instanceof Array?t:[t]).forEach((e=>{try{("object"!=typeof e||null===e||e instanceof Array||"object"!=typeof e.icons||"string"!=typeof e.prefix||!sl(e))&&console.error(n)}catch{console.error(n)}}))}if(void 0!==e.IconifyProviders){const t=e.IconifyProviders;if("object"==typeof t&&null!==t)for(let e in t){const n="IconifyProviders["+e+"] is invalid.";try{const r=t[e];if("object"!=typeof r||!r||void 0===r.resources)continue;xl(e,r)||console.error(n)}catch{console.error(n)}}}}function wc(e){const[t,n]=r(!!e.ssr),[o,s]=r({});const[a,l]=r(function(t){if(t){const t=e.icon;if("object"==typeof t)return{name:"",data:t};const n=il(t);if(n)return{name:t,data:n}}return{name:""}}(!!e.ssr));function d(){const e=o.callback;e&&(e(),s({}))}function h(e){if(JSON.stringify(a)!==JSON.stringify(e))return d(),l(e),!0}function u(){var t;const n=e.icon;if("object"==typeof n)return void h({name:"",data:n});const r=il(n);if(h({name:n,data:r}))if(void 0===r){const e=nc([n],u);s({callback:e})}else r&&(null===(t=e.onLoad)||void 0===t||t.call(e,n))}i((()=>(n(!0),d)),[]),i((()=>{t&&u()}),[e.icon,t]);const{name:p,data:f}=a;return f?bc({...Ha,...f},e,p):e.children?e.children:c("span",{})}const kc=t(((e,t)=>wc({...e,_ref:t})));t(((e,t)=>wc({inline:!0,...e,_ref:t})));const xc=e=>T.jsx(f,{...e,sx:{"&.MuiMenuItem-root":{color:"var(--colors-delta-700)",fontSize:"14px",lineHeight:"20px"}},children:e.children}),Sc={small:"10px",normal:"16px",large:"24px",huge:"32px"},Oc=e=>{const{editor:t}=e,[n,o]=r("normal");return l((()=>{const{from:e,to:n}=t.state.selection;t.state.doc.nodesBetween(e-1,n,(e=>{if(e.marks){const t=e.marks.find((e=>"textStyle"===e.type.name)),n=null==t?void 0:t.attrs.fontSize,r=Object.keys(Sc).find((e=>Sc[e]===n))||"normal";o(r)}}))}),[t.state.selection,t.state.doc]),T.jsx(m,{...e,select:!0,size:"small",dataTest:"font-size-select",onChange:e=>{const n=e.target.value;t.chain().focus().setMark("textStyle",{fontSize:Sc[n]}).run(),o(n)},value:n,SelectProps:{IconComponent:()=>null},InputProps:{endAdornment:T.jsx(kc,{icon:"tabler:caret-up-down-filled",className:"chevron-icon"})},sx:{".MuiSelect-select":{border:"none",padding:0,overflow:"hidden",display:"flex",alignItems:"center",color:"var(--colors-delta-700)",fontSize:"14px",lineHeight:"20px"},".MuiOutlinedInput-root":{height:"32px",width:"75px","& .MuiOutlinedInput-notchedOutline":{border:"none"}}},children:e.children})},Cc=({editor:e,onClose:t,error:o,focused:i,openLinkDialog:s,locale:a})=>{const[c,u]=r(0),p=n(null),m=h((()=>"no"===a),[a]),[v,w]=r(!1),[k,S]=r([]);l((()=>{const t=new ResizeObserver((()=>{var t;if(p.current){const n=p.current.clientWidth;w(n<(m?416:420));const r=null==(t=[{width:m?296:300,buttons:3},{width:m?340:342,buttons:4},{width:m?374:378,buttons:5},{width:m?416:420,buttons:6},{width:m?416:420,buttons:7},{width:1/0,buttons:8}].find((e=>n<e.width)))?void 0:t.buttons;u(void 0!==r?r:8);const o=[];Number(r)<8&&o.push(T.jsx(f,{className:"flex items-center justify-center",onClick:s,selected:e.isActive("link"),children:T.jsx(g,{})},"link")),Number(r)<7&&o.push(T.jsx(f,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleItalic().run(),selected:e.isActive("italic"),children:T.jsx(kc,{icon:"material-symbols:format-italic",height:20})},"italic")),Number(r)<6&&o.push(T.jsx(f,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleBold().run(),selected:e.isActive("bold"),children:T.jsx(kc,{icon:"ooui:bold-b"})},"bold")),Number(r)<5&&o.push(T.jsx(f,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleOrderedList().run(),selected:e.isActive("orderedList"),children:T.jsx(kc,{icon:"mdi:format-list-numbered",fontSize:20})},"ordered")),Number(r)<4&&o.push(T.jsx(f,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleBulletList().run(),selected:e.isActive("bulletList"),children:T.jsx(kc,{icon:"mdi:format-list-bulleted",fontSize:20})},"bullet")),S(o)}}));return p.current&&t.observe(p.current),()=>t.disconnect()}),[e,s,m]);const{anchorEl:O,open:C,handleClose:M,handleOpen:E}=(()=>{const[e,t]=r(null),n=!!e,o=d((e=>{t(e.currentTarget)}),[]);return{open:n,handleClose:d((()=>{t(null)}),[]),handleOpen:o,anchorEl:e}})();return T.jsx(T.Fragment,{children:T.jsxs("div",{className:A("toolbar",{"toolbar-error":o,"toolbar-focused":i}),ref:p,children:[T.jsxs("div",{className:"flex flex-row items-center gap-1",children:[c>=1&&T.jsx(y,{dataTest:"richeditor-h1-button",size:"small",variant:e.isActive("heading",{level:1})?"text":"textGray",onClick:()=>{e.chain().focus().setMark("textStyle",{fontSize:void 0}).run(),e.chain().focus().toggleHeading({level:1}).run()},children:T.jsx(kc,{icon:"bi:type-h1"})}),c>=2&&T.jsx(y,{dataTest:"richeditor-h2-button",size:"small",variant:e.isActive("heading",{level:2})?"text":"textGray",onClick:()=>{e.chain().focus().setMark("textStyle",{fontSize:void 0}).run(),e.chain().focus().toggleHeading({level:2}).run()},children:T.jsx(kc,{icon:"bi:type-h2"})}),c>=3&&T.jsxs(Oc,{editor:e,children:[T.jsx(xc,{value:"small",children:m?"Liten":"Small"}),T.jsx(xc,{value:"normal",children:"Normal"}),T.jsx(xc,{value:"large",children:m?"Stor":"Large"}),T.jsx(xc,{value:"huge",children:m?"Enorm":"Huge"})]}),c>=4&&T.jsx(y,{dataTest:"richeditor-bullet-list-button",size:"small",variant:e.isActive("bulletList")?"text":"textGray",onClick:()=>e.chain().focus().toggleBulletList().run(),children:T.jsx(kc,{icon:"mdi:format-list-bulleted",fontSize:20})}),c>=5&&T.jsx(y,{dataTest:"richeditor-ordered-list-button",size:"small",variant:e.isActive("orderedList")?"text":"textGray",onClick:()=>e.chain().focus().toggleOrderedList().run(),children:T.jsx(kc,{icon:"mdi:format-list-numbered",fontSize:20})}),c>=6&&T.jsx(y,{dataTest:"richeditor-bold-button",size:"small",variant:e.isActive("bold")?"text":"textGray",onClick:()=>e.chain().focus().toggleBold().run(),children:T.jsx(kc,{icon:"ooui:bold-b"})}),c>=7&&T.jsx(y,{dataTest:"richeditor-italic-button",size:"small",variant:e.isActive("italic")?"text":"textGray",onClick:()=>e.chain().focus().toggleItalic().run(),children:T.jsx(kc,{icon:"material-symbols:format-italic",height:20})}),c>=8&&T.jsx(y,{dataTest:"richeditor-link-button",size:"small",variant:e.isActive("link")?"text":"textGray",onClick:s,children:T.jsx(g,{})}),v&&T.jsxs(T.Fragment,{children:[T.jsx(y,{size:"small",dataTest:"richeditor-more-menu-button",variant:"text",onClick:e=>{e.stopPropagation(),e.preventDefault(),E(e)},onMouseDown:e=>{e.stopPropagation(),e.preventDefault()},onMouseUp:e=>{e.stopPropagation(),e.preventDefault()},children:T.jsx(b,{className:"text-delta-800",width:20,height:20})}),T.jsx(x,{open:C,anchorEl:O,onClose:M,onClick:M,anchorOrigin:{horizontal:"center",vertical:"bottom"},transformOrigin:{vertical:"top",horizontal:"right"},children:k})]})]}),T.jsx(y,{dataTest:"richeditor-close-toolbar-button",size:"small",variant:"text",onClick:t,children:m?"Lukk":"Close"})]})})},Mc=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/,Ec=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g,Tc=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/,Nc=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g,Ac=ps.create({name:"bold",addOptions:()=>({HTMLAttributes:{}}),parseHTML(){return[{tag:"strong"},{tag:"b",getAttrs:e=>"normal"!==e.style.fontWeight&&null},{style:"font-weight=400",clearMark:e=>e.type.name===this.name},{style:"font-weight",getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}]},renderHTML({HTMLAttributes:e}){return["strong",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{setBold:()=>({commands:e})=>e.setMark(this.name),toggleBold:()=>({commands:e})=>e.toggleMark(this.name),unsetBold:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[ca({find:Mc,type:this.type}),ca({find:Tc,type:this.type})]},addPasteRules(){return[ua({find:Ec,type:this.type}),ua({find:Nc,type:this.type})]}}),Dc="textStyle",Rc=/^\s*([-+*])\s$/,Ic=ha.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:e}){return["ul",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleBulletList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(Dc)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=da({find:Rc,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=da({find:Rc,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(Dc),editor:this.editor})),[e]}}),Pc=ha.create({name:"heading",addOptions:()=>({levels:[1,2,3,4,5,6],HTMLAttributes:{}}),content:"inline*",group:"block",defining:!0,addAttributes:()=>({level:{default:1,rendered:!1}}),parseHTML(){return this.options.levels.map((e=>({tag:`h${e}`,attrs:{level:e}})))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,Gi(this.options.HTMLAttributes,t),0]},addCommands(){return{setHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.setNode(this.name,e),toggleHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.toggleNode(this.name,"paragraph",e)}},addKeyboardShortcuts(){return this.options.levels.reduce(((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})})),{})},addInputRules(){return this.options.levels.map((e=>function(e){return new as({find:e.find,handler:({state:t,range:n,match:r})=>{const o=t.doc.resolve(n.from),i=Xi(e.getAttributes,void 0,r)||{};if(!o.node(-1).canReplaceWith(o.index(-1),o.indexAfter(-1),e.type))return null;t.tr.delete(n.from,n.to).setBlockType(n.from,n.from,e.type,i)}})}({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}})))}}),Lc=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,jc=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,zc=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,$c=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,Bc=ps.create({name:"italic",addOptions:()=>({HTMLAttributes:{}}),parseHTML(){return[{tag:"em"},{tag:"i",getAttrs:e=>"normal"!==e.style.fontStyle&&null},{style:"font-style=normal",clearMark:e=>e.type.name===this.name},{style:"font-style=italic"}]},renderHTML({HTMLAttributes:e}){return["em",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{setItalic:()=>({commands:e})=>e.setMark(this.name),toggleItalic:()=>({commands:e})=>e.toggleMark(this.name),unsetItalic:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[ca({find:Lc,type:this.type}),ca({find:zc,type:this.type})]},addPasteRules(){return[ua({find:jc,type:this.type}),ua({find:$c,type:this.type})]}}),_c="aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2",Fc="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2",Vc=(e,t)=>{for(const n in t)e[n]=t[n];return e},Hc="numeric",Wc="ascii",Kc="alpha",qc="asciinumeric",Jc="alphanumeric",Uc="domain",Gc="emoji",Yc="scheme",Qc="slashscheme",Xc="whitespace";function Zc(e,t){return e in t||(t[e]=[]),t[e]}function ed(e,t,n){t[Hc]&&(t[qc]=!0,t[Jc]=!0),t[Wc]&&(t[qc]=!0,t[Kc]=!0),t[qc]&&(t[Jc]=!0),t[Kc]&&(t[Jc]=!0),t[Jc]&&(t[Uc]=!0),t[Gc]&&(t[Uc]=!0);for(const r in t){const t=Zc(r,n);t.indexOf(e)<0&&t.push(e)}}function td(e=null){this.j={},this.jr=[],this.jd=null,this.t=e}td.groups={},td.prototype={accepts(){return!!this.t},go(e){const t=this,n=t.j[e];if(n)return n;for(let n=0;n<t.jr.length;n++){const r=t.jr[n][0],o=t.jr[n][1];if(o&&r.test(e))return o}return t.jd},has(e,t=!1){return t?e in this.j:!!this.go(e)},ta(e,t,n,r){for(let o=0;o<e.length;o++)this.tt(e[o],t,n,r)},tr(e,t,n,r){let o;return r=r||td.groups,t&&t.j?o=t:(o=new td(t),n&&r&&ed(t,n,r)),this.jr.push([e,o]),o},ts(e,t,n,r){let o=this;const i=e.length;if(!i)return o;for(let t=0;t<i-1;t++)o=o.tt(e[t]);return o.tt(e[i-1],t,n,r)},tt(e,t,n,r){r=r||td.groups;const o=this;if(t&&t.j)return o.j[e]=t,t;const i=t;let s,a=o.go(e);if(a?(s=new td,Vc(s.j,a.j),s.jr.push.apply(s.jr,a.jr),s.jd=a.jd,s.t=a.t):s=new td,i){if(r)if(s.t&&"string"==typeof s.t){const e=Vc(function(e,t){const n={};for(const r in t)t[r].indexOf(e)>=0&&(n[r]=!0);return n}(s.t,r),n);ed(i,e,r)}else n&&ed(i,n,r);s.t=i}return o.j[e]=s,s}};const nd=(e,t,n,r,o)=>e.ta(t,n,r,o),rd=(e,t,n,r,o)=>e.tr(t,n,r,o),od=(e,t,n,r,o)=>e.ts(t,n,r,o),id=(e,t,n,r,o)=>e.tt(t,n,r,o),sd="WORD",ad="UWORD",ld="ASCIINUMERICAL",cd="ALPHANUMERICAL",dd="LOCALHOST",hd="TLD",ud="UTLD",pd="SCHEME",fd="SLASH_SCHEME",md="NUM",gd="WS",yd="NL",bd="OPENBRACE",vd="CLOSEBRACE",wd="OPENBRACKET",kd="CLOSEBRACKET",xd="OPENPAREN",Sd="CLOSEPAREN",Od="OPENANGLEBRACKET",Cd="CLOSEANGLEBRACKET",Md="FULLWIDTHLEFTPAREN",Ed="FULLWIDTHRIGHTPAREN",Td="LEFTCORNERBRACKET",Nd="RIGHTCORNERBRACKET",Ad="LEFTWHITECORNERBRACKET",Dd="RIGHTWHITECORNERBRACKET",Rd="FULLWIDTHLESSTHAN",Id="FULLWIDTHGREATERTHAN",Pd="AMPERSAND",Ld="APOSTROPHE",jd="ASTERISK",zd="AT",$d="BACKSLASH",Bd="BACKTICK",_d="CARET",Fd="COLON",Vd="COMMA",Hd="DOLLAR",Wd="DOT",Kd="EQUALS",qd="EXCLAMATION",Jd="HYPHEN",Ud="PERCENT",Gd="PIPE",Yd="PLUS",Qd="POUND",Xd="QUERY",Zd="QUOTE",eh="FULLWIDTHMIDDLEDOT",th="SEMI",nh="SLASH",rh="TILDE",oh="UNDERSCORE",ih="EMOJI",sh="SYM";var ah=Object.freeze({__proto__:null,WORD:sd,UWORD:ad,ASCIINUMERICAL:ld,ALPHANUMERICAL:cd,LOCALHOST:dd,TLD:hd,UTLD:ud,SCHEME:pd,SLASH_SCHEME:fd,NUM:md,WS:gd,NL:yd,OPENBRACE:bd,CLOSEBRACE:vd,OPENBRACKET:wd,CLOSEBRACKET:kd,OPENPAREN:xd,CLOSEPAREN:Sd,OPENANGLEBRACKET:Od,CLOSEANGLEBRACKET:Cd,FULLWIDTHLEFTPAREN:Md,FULLWIDTHRIGHTPAREN:Ed,LEFTCORNERBRACKET:Td,RIGHTCORNERBRACKET:Nd,LEFTWHITECORNERBRACKET:Ad,RIGHTWHITECORNERBRACKET:Dd,FULLWIDTHLESSTHAN:Rd,FULLWIDTHGREATERTHAN:Id,AMPERSAND:Pd,APOSTROPHE:Ld,ASTERISK:jd,AT:zd,BACKSLASH:$d,BACKTICK:Bd,CARET:_d,COLON:Fd,COMMA:Vd,DOLLAR:Hd,DOT:Wd,EQUALS:Kd,EXCLAMATION:qd,HYPHEN:Jd,PERCENT:Ud,PIPE:Gd,PLUS:Yd,POUND:Qd,QUERY:Xd,QUOTE:Zd,FULLWIDTHMIDDLEDOT:eh,SEMI:th,SLASH:nh,TILDE:rh,UNDERSCORE:oh,EMOJI:ih,SYM:sh});const lh=/[a-z]/,ch=/\p{L}/u,dh=/\p{Emoji}/u,hh=/\d/,uh=/\s/,ph="\r",fh="\n",mh="️",gh="‍",yh="";let bh=null,vh=null;function wh(e,t){const n=function(e){const t=[],n=e.length;let r=0;for(;r<n;){let o,i=e.charCodeAt(r),s=i<55296||i>56319||r+1===n||(o=e.charCodeAt(r+1))<56320||o>57343?e[r]:e.slice(r,r+2);t.push(s),r+=s.length}return t}(t.replace(/[A-Z]/g,(e=>e.toLowerCase()))),r=n.length,o=[];let i=0,s=0;for(;s<r;){let a=e,l=null,c=0,d=null,h=-1,u=-1;for(;s<r&&(l=a.go(n[s]));)a=l,a.accepts()?(h=0,u=0,d=a):h>=0&&(h+=n[s].length,u++),c+=n[s].length,i+=n[s].length,s++;i-=h,s-=u,c-=h,o.push({t:d.t,v:t.slice(i-c,i),s:i-c,e:i})}return o}function kh(e,t,n,r,o){let i;const s=t.length;for(let n=0;n<s-1;n++){const s=t[n];e.j[s]?i=e.j[s]:(i=new td(r),i.jr=o.slice(),e.j[s]=i),e=i}return i=new td(n),i.jr=o.slice(),e.j[t[s-1]]=i,i}function xh(e){const t=[],n=[];let r=0;for(;r<e.length;){let o=0;for(;"0123456789".indexOf(e[r+o])>=0;)o++;if(o>0){t.push(n.join(""));for(let t=parseInt(e.substring(r,r+o),10);t>0;t--)n.pop();r+=o}else n.push(e[r]),r++}return t}const Sh={defaultProtocol:"http",events:null,format:Ch,formatHref:Ch,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function Oh(e,t=null){let n=Vc({},Sh);e&&(n=Vc(n,e instanceof Oh?e.o:e));const r=n.ignoreTags,o=[];for(let e=0;e<r.length;e++)o.push(r[e].toUpperCase());this.o=n,t&&(this.defaultRender=t),this.ignoreTags=o}function Ch(e){return e}function Mh(e,t){this.t="token",this.v=e,this.tk=t}function Eh(e,t){class n extends Mh{constructor(t,n){super(t,n),this.t=e}}for(const e in t)n.prototype[e]=t[e];return n.t=e,n}Oh.prototype={o:Sh,ignoreTags:[],defaultRender:e=>e,check(e){return this.get("validate",e.toString(),e)},get(e,t,n){const r=null!=t;let o=this.o[e];return o&&("object"==typeof o?(o=n.t in o?o[n.t]:Sh[e],"function"==typeof o&&r&&(o=o(t,n))):"function"==typeof o&&r&&(o=o(t,n.t,n)),o)},getObj(e,t,n){let r=this.o[e];return"function"==typeof r&&null!=t&&(r=r(t,n.t,n)),r},render(e){const t=e.render(this);return(this.get("render",null,e)||this.defaultRender)(t,e.t,e)}},Mh.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const t=this.toString(),n=e.get("truncate",t,this),r=e.get("format",t,this);return n&&r.length>n?r.substring(0,n)+"…":r},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=Sh.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const t=this,n=this.toHref(e.get("defaultProtocol")),r=e.get("formatHref",n,this),o=e.get("tagName",n,t),i=this.toFormattedString(e),s={},a=e.get("className",n,t),l=e.get("target",n,t),c=e.get("rel",n,t),d=e.getObj("attributes",n,t),h=e.getObj("events",n,t);return s.href=r,a&&(s.class=a),l&&(s.target=l),c&&(s.rel=c),d&&Vc(s,d),{tagName:o,attributes:s,content:i,eventListeners:h}}};const Th=Eh("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),Nh=Eh("text"),Ah=Eh("nl"),Dh=Eh("url",{isLink:!0,toHref(e=Sh.defaultProtocol){return this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==dd&&e[1].t===Fd}}),Rh=e=>new td(e);function Ih(e,t,n){const r=n[0].s,o=n[n.length-1].e;return new e(t.slice(r,o),n)}const Ph=typeof console<"u"&&console&&console.warn||(()=>{}),Lh={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function jh(e,t=!1){if(Lh.initialized&&Ph(`linkifyjs: already initialized - will not register custom scheme "${e}" until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e))throw new Error('linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or "-"\n2. Cannot start or end with "-"\n3. "-" cannot repeat');Lh.customSchemes.push([e,t])}function zh(){Lh.scanner=function(e=[]){const t={};td.groups=t;const n=new td;null==bh&&(bh=xh(_c)),null==vh&&(vh=xh(Fc)),id(n,"'",Ld),id(n,"{",bd),id(n,"}",vd),id(n,"[",wd),id(n,"]",kd),id(n,"(",xd),id(n,")",Sd),id(n,"<",Od),id(n,">",Cd),id(n,"(",Md),id(n,")",Ed),id(n,"「",Td),id(n,"」",Nd),id(n,"『",Ad),id(n,"』",Dd),id(n,"<",Rd),id(n,">",Id),id(n,"&",Pd),id(n,"*",jd),id(n,"@",zd),id(n,"`",Bd),id(n,"^",_d),id(n,":",Fd),id(n,",",Vd),id(n,"$",Hd),id(n,".",Wd),id(n,"=",Kd),id(n,"!",qd),id(n,"-",Jd),id(n,"%",Ud),id(n,"|",Gd),id(n,"+",Yd),id(n,"#",Qd),id(n,"?",Xd),id(n,'"',Zd),id(n,"/",nh),id(n,";",th),id(n,"~",rh),id(n,"_",oh),id(n,"\\",$d),id(n,"・",eh);const r=rd(n,hh,md,{[Hc]:!0});rd(r,hh,r);const o=rd(r,lh,ld,{[qc]:!0}),i=rd(r,ch,cd,{[Jc]:!0}),s=rd(n,lh,sd,{[Wc]:!0});rd(s,hh,o),rd(s,lh,s),rd(o,hh,o),rd(o,lh,o);const a=rd(n,ch,ad,{[Kc]:!0});rd(a,lh),rd(a,hh,i),rd(a,ch,a),rd(i,hh,i),rd(i,lh),rd(i,ch,i);const l=id(n,fh,yd,{[Xc]:!0}),c=id(n,ph,gd,{[Xc]:!0}),d=rd(n,uh,gd,{[Xc]:!0});id(n,yh,d),id(c,fh,l),id(c,yh,d),rd(c,uh,d),id(d,ph),id(d,fh),rd(d,uh,d),id(d,yh,d);const h=rd(n,dh,ih,{[Gc]:!0});id(h,"#"),rd(h,dh,h),id(h,mh,h);const u=id(h,gh);id(u,"#"),rd(u,dh,h);const p=[[lh,s],[hh,o]],f=[[lh,null],[ch,a],[hh,i]];for(let e=0;e<bh.length;e++)kh(n,bh[e],hd,sd,p);for(let e=0;e<vh.length;e++)kh(n,vh[e],ud,ad,f);ed(hd,{tld:!0,ascii:!0},t),ed(ud,{utld:!0,alpha:!0},t),kh(n,"file",pd,sd,p),kh(n,"mailto",pd,sd,p),kh(n,"http",fd,sd,p),kh(n,"https",fd,sd,p),kh(n,"ftp",fd,sd,p),kh(n,"ftps",fd,sd,p),ed(pd,{scheme:!0,ascii:!0},t),ed(fd,{slashscheme:!0,ascii:!0},t),e=e.sort(((e,t)=>e[0]>t[0]?1:-1));for(let t=0;t<e.length;t++){const r=e[t][0],o=e[t][1]?{[Yc]:!0}:{[Qc]:!0};r.indexOf("-")>=0?o[Uc]=!0:lh.test(r)?hh.test(r)?o[qc]=!0:o[Wc]=!0:o[Hc]=!0,od(n,r,r,o)}return od(n,"localhost",dd,{ascii:!0}),n.jd=new td(sh),{start:n,tokens:Vc({groups:t},ah)}}(Lh.customSchemes);for(let e=0;e<Lh.tokenQueue.length;e++)Lh.tokenQueue[e][1]({scanner:Lh.scanner});Lh.parser=function({groups:e}){const t=e.domain.concat([Pd,jd,zd,$d,Bd,_d,Hd,Kd,Jd,md,Ud,Gd,Yd,Qd,nh,sh,rh,oh]),n=[Fd,Vd,Wd,qd,Ud,Xd,Zd,th,Od,Cd,bd,vd,kd,wd,xd,Sd,Md,Ed,Td,Nd,Ad,Dd,Rd,Id],r=[Pd,Ld,jd,$d,Bd,_d,Hd,Kd,Jd,bd,vd,Ud,Gd,Yd,Qd,Xd,nh,sh,rh,oh],o=Rh(),i=id(o,rh);nd(i,r,i),nd(i,e.domain,i);const s=Rh(),a=Rh(),l=Rh();nd(o,e.domain,s),nd(o,e.scheme,a),nd(o,e.slashscheme,l),nd(s,r,i),nd(s,e.domain,s);const c=id(s,zd);id(i,zd,c),id(a,zd,c),id(l,zd,c);const d=id(i,Wd);nd(d,r,i),nd(d,e.domain,i);const h=Rh();nd(c,e.domain,h),nd(h,e.domain,h);const u=id(h,Wd);nd(u,e.domain,h);const p=Rh(Th);nd(u,e.tld,p),nd(u,e.utld,p),id(c,dd,p);const f=id(h,Jd);id(f,Jd,f),nd(f,e.domain,h),nd(p,e.domain,h),id(p,Wd,u),id(p,Jd,f);const m=id(p,Fd);nd(m,e.numeric,Th);const g=id(s,Jd),y=id(s,Wd);id(g,Jd,g),nd(g,e.domain,s),nd(y,r,i),nd(y,e.domain,s);const b=Rh(Dh);nd(y,e.tld,b),nd(y,e.utld,b),nd(b,e.domain,s),nd(b,r,i),id(b,Wd,y),id(b,Jd,g),id(b,zd,c);const v=id(b,Fd),w=Rh(Dh);nd(v,e.numeric,w);const k=Rh(Dh),x=Rh();nd(k,t,k),nd(k,n,x),nd(x,t,k),nd(x,n,x),id(b,nh,k),id(w,nh,k);const S=id(a,Fd),O=id(l,Fd),C=id(O,nh),M=id(C,nh);nd(a,e.domain,s),id(a,Wd,y),id(a,Jd,g),nd(l,e.domain,s),id(l,Wd,y),id(l,Jd,g),nd(S,e.domain,k),id(S,nh,k),id(S,Xd,k),nd(M,e.domain,k),nd(M,t,k),id(M,nh,k);const E=[[bd,vd],[wd,kd],[xd,Sd],[Od,Cd],[Md,Ed],[Td,Nd],[Ad,Dd],[Rd,Id]];for(let e=0;e<E.length;e++){const[r,o]=E[e],i=id(k,r);id(x,r,i),id(i,o,k);const s=Rh(Dh);nd(i,t,s);const a=Rh();nd(i,n),nd(s,t,s),nd(s,n,a),nd(a,t,s),nd(a,n,a),id(s,o,k),id(a,o,k)}return id(o,dd,b),id(o,yd,Ah),{start:o,tokens:ah}}(Lh.scanner.tokens);for(let e=0;e<Lh.pluginQueue.length;e++)Lh.pluginQueue[e][1]({scanner:Lh.scanner,parser:Lh.parser});return Lh.initialized=!0,Lh}function $h(e){return Lh.initialized||zh(),function(e,t,n){let r=n.length,o=0,i=[],s=[];for(;o<r;){let a=e,l=null,c=null,d=0,h=null,u=-1;for(;o<r&&!(l=a.go(n[o].t));)s.push(n[o++]);for(;o<r&&(c=l||a.go(n[o].t));)l=null,a=c,a.accepts()?(u=0,h=a):u>=0&&u++,o++,d++;if(u<0)o-=d,o<r&&(s.push(n[o]),o++);else{s.length>0&&(i.push(Ih(Nh,t,s)),s=[]),o-=u,d-=u;const e=h.t,r=n.slice(o-d,o);i.push(Ih(e,t,r))}}return s.length>0&&i.push(Ih(Nh,t,s)),i}(Lh.parser.start,e,wh(Lh.scanner.start,e))}function Bh(e,t=null,n=null){if(t&&"object"==typeof t){if(n)throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);n=t,t=null}const r=new Oh(n),o=$h(e),i=[];for(let e=0;e<o.length;e++){const n=o[e];n.isLink&&(!t||n.t===t)&&r.check(n)&&i.push(n.toFormattedObject(r))}return i}function _h(e){return new Yt({key:new Zt("autolink"),appendTransaction:(t,n,r)=>{const o=t.some((e=>e.docChanged))&&!n.doc.eq(r.doc),i=t.some((e=>e.getMeta("preventAutolink")));if(!o||i)return;const{tr:s}=r,a=function(e,t){const n=new Nt(e);return t.forEach((e=>{e.steps.forEach((e=>{n.step(e)}))})),n}(n.doc,[...t]);return function(e){const{mapping:t,steps:n}=e,r=[];return t.maps.forEach(((e,o)=>{const i=[];if(e.ranges.length)e.forEach(((e,t)=>{i.push({from:e,to:t})}));else{const{from:e,to:t}=n[o];if(void 0===e||void 0===t)return;i.push({from:e,to:t})}i.forEach((({from:e,to:n})=>{const i=t.slice(o).map(e,-1),s=t.slice(o).map(n),a=t.invert().map(i,-1),l=t.invert().map(s);r.push({oldRange:{from:a,to:l},newRange:{from:i,to:s}})}))})),Hs(r)}(a).forEach((({newRange:t})=>{const n=function(e,t,n){const r=[];return e.nodesBetween(t.from,t.to,((e,t)=>{n(e)&&r.push({node:e,pos:t})})),r}(r.doc,t,(e=>e.isTextblock));let o,i;if(n.length>1?(o=n[0],i=r.doc.textBetween(o.pos,o.pos+o.node.nodeSize,void 0," ")):n.length&&r.doc.textBetween(t.from,t.to," "," ").endsWith(" ")&&(o=n[0],i=r.doc.textBetween(o.pos,t.to,void 0," ")),o&&i){const t=i.split(" ").filter((e=>""!==e));if(t.length<=0)return!1;const n=t[t.length-1],a=o.pos+i.lastIndexOf(n);if(!n)return!1;const l=$h(n).map((t=>t.toObject(e.defaultProtocol)));if(!function(e){return 1===e.length?e[0].isLink:!(3!==e.length||!e[1].isLink)&&["()","[]"].includes(e[0].value+e[2].value)}(l))return!1;l.filter((e=>e.isLink)).map((e=>({...e,from:a+e.start+1,to:a+e.end+1}))).filter((e=>!r.schema.marks.code||!r.doc.rangeHasMark(e.from,e.to,r.schema.marks.code))).filter((t=>e.validate(t.value))).filter((t=>e.shouldAutoLink(t.value))).forEach((t=>{Ws(t.from,t.to,r.doc).some((t=>t.mark.type===e.type))||s.addMark(t.from,t.to,e.type.create({href:t.href}))}))}})),s.steps.length?s:void 0}})}$h.scan=wh;const Fh=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;function Vh(e,t){const n=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return t&&t.forEach((e=>{const t="string"==typeof e?e:e.scheme;t&&n.push(t)})),!e||e.replace(Fh,"").match(new RegExp(`^(?:(?:${n.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`,"i"))}const Hh=ps.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.validate&&!this.options.shouldAutoLink&&(this.options.shouldAutoLink=this.options.validate,console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")),this.options.protocols.forEach((e=>{"string"!=typeof e?jh(e.scheme,e.optionalSlashes):jh(e)}))},onDestroy(){td.groups={},Lh.scanner=null,Lh.parser=null,Lh.tokenQueue=[],Lh.pluginQueue=[],Lh.customSchemes=[],Lh.initialized=!1},inclusive(){return this.options.autolink},addOptions:()=>({openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},isAllowedUri:(e,t)=>!!Vh(e,t.protocols),validate:e=>!!e,shouldAutoLink:e=>!!e}),addAttributes(){return{href:{default:null,parseHTML:e=>e.getAttribute("href")},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:e=>{const t=e.getAttribute("href");return!(!t||!this.options.isAllowedUri(t,{defaultValidate:e=>!!Vh(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol}))&&null}}]},renderHTML({HTMLAttributes:e}){return this.options.isAllowedUri(e.href,{defaultValidate:e=>!!Vh(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?["a",Gi(this.options.HTMLAttributes,e),0]:["a",Gi(this.options.HTMLAttributes,{...e,href:""}),0]},addCommands(){return{setLink:e=>({chain:t})=>{const{href:n}=e;return!!this.options.isAllowedUri(n,{defaultValidate:e=>!!Vh(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})&&t().setMark(this.name,e).setMeta("preventAutolink",!0).run()},toggleLink:e=>({chain:t})=>{const{href:n}=e;return!!this.options.isAllowedUri(n,{defaultValidate:e=>!!Vh(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})&&t().toggleMark(this.name,e,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()},unsetLink:()=>({chain:e})=>e().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[ua({find:e=>{const t=[];if(e){const{protocols:n,defaultProtocol:r}=this.options,o=Bh(e).filter((e=>e.isLink&&this.options.isAllowedUri(e.value,{defaultValidate:e=>!!Vh(e,n),protocols:n,defaultProtocol:r})));o.length&&o.forEach((e=>t.push({text:e.value,data:{href:e.href},index:e.start})))}return t},type:this.type,getAttributes:e=>{var t;return{href:null===(t=e.data)||void 0===t?void 0:t.href}}})]},addProseMirrorPlugins(){const e=[],{protocols:t,defaultProtocol:n}=this.options;return this.options.autolink&&e.push(_h({type:this.type,defaultProtocol:this.options.defaultProtocol,validate:e=>this.options.isAllowedUri(e,{defaultValidate:e=>!!Vh(e,t),protocols:t,defaultProtocol:n}),shouldAutoLink:this.options.shouldAutoLink})),!0===this.options.openOnClick&&e.push(function(e){return new Yt({key:new Zt("handleClickLink"),props:{handleClick:(t,n,r)=>{var o,i;if(0!==r.button||!t.editable)return!1;let s=r.target;const a=[];for(;"DIV"!==s.nodeName;)a.push(s),s=s.parentNode;if(!a.find((e=>"A"===e.nodeName)))return!1;const l=Vs(t.state,e.type.name),c=r.target,d=null!==(o=null==c?void 0:c.href)&&void 0!==o?o:l.href,h=null!==(i=null==c?void 0:c.target)&&void 0!==i?i:l.target;return!(!c||!d||(window.open(d,h),0))}}})}({type:this.type})),this.options.linkOnPaste&&e.push(function(e){return new Yt({key:new Zt("handlePasteLink"),props:{handlePaste:(t,n,r)=>{const{state:o}=t,{selection:i}=o,{empty:s}=i;if(s)return!1;let a="";r.content.forEach((e=>{a+=e.textContent}));const l=Bh(a,{defaultProtocol:e.defaultProtocol}).find((e=>e.isLink&&e.value===a));return!(!a||!l)&&e.editor.commands.setMark(e.type,{href:l.href})}}})}({editor:this.editor,defaultProtocol:this.options.defaultProtocol,type:this.type})),e}}),Wh=ha.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",Gi(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),Kh="textStyle",qh=/^(\d+)\.\s$/,Jh=ha.create({name:"orderedList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes:()=>({start:{default:1,parseHTML:e=>e.hasAttribute("start")?parseInt(e.getAttribute("start")||"",10):1},type:{default:null,parseHTML:e=>e.getAttribute("type")}}),parseHTML:()=>[{tag:"ol"}],renderHTML({HTMLAttributes:e}){const{start:t,...n}=e;return 1===t?["ol",Gi(this.options.HTMLAttributes,n),0]:["ol",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleOrderedList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(Kh)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=da({find:qh,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(e=da({find:qh,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(Kh)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[e]}}),Uh=ha.create({name:"doc",topNode:!0,content:"block+"}),Gh=ha.create({name:"paragraph",priority:1e3,addOptions:()=>({HTMLAttributes:{}}),group:"block",content:"inline*",parseHTML:()=>[{tag:"p"}],renderHTML({HTMLAttributes:e}){return["p",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),Yh=ha.create({name:"text",group:"inline"}),Qh=ps.create({name:"textStyle",priority:101,addOptions:()=>({HTMLAttributes:{},mergeNestedSpanStyles:!1}),parseHTML(){return[{tag:"span",getAttrs:e=>!!e.hasAttribute("style")&&(this.options.mergeNestedSpanStyles&&(e=>{if(!e.children.length)return;const t=e.querySelectorAll("span");t&&t.forEach((e=>{var t,n;const r=e.getAttribute("style"),o=null===(n=null===(t=e.parentElement)||void 0===t?void 0:t.closest("span"))||void 0===n?void 0:n.getAttribute("style");e.setAttribute("style",`${o};${r}`)}))})(e),{})}]},renderHTML({HTMLAttributes:e}){return["span",Gi(this.options.HTMLAttributes,e),0]},addCommands(){return{removeEmptyTextStyle:()=>({tr:e})=>{const{selection:t}=e;return e.doc.nodesBetween(t.from,t.to,((t,n)=>{if(t.isTextblock)return!0;t.marks.filter((e=>e.type===this.type)).some((e=>Object.values(e.attrs).some((e=>!!e))))||e.removeMark(n,n+t.nodeSize,this.type)})),!0}}}});var Xh=vs.create({name:"fontSize",addOptions:function(){return{types:["textStyle"]}},addGlobalAttributes:function(){return[{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:function(e){return e.style.fontSize.replace(/['"]+/g,"")},renderHTML:function(e){return e.fontSize?{style:"font-size: "+e.fontSize}:{}}}}}]},addCommands:function(){return{setFontSize:function(e){return function(t){return(0,t.chain)().setMark("textStyle",{fontSize:e}).run()}},unsetFontSize:function(){return function(e){return(0,e.chain)().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()}}}}});const Zh=[Uh,Gh,Yh,Qh],eu=[Pc.configure({levels:[1,2]}),Wh,Ic,Jh,Hh,Ac,Bc,Xh],tu="_link-dialog-container_jjs9w_1",nu=({open:e,setOpen:t,editor:n,locale:o})=>{const[i,s]=r(""),a=h((()=>"no"===o),[o]);l((()=>{if(e){const{from:e,to:t}=n.state.selection;let r=null;n.state.doc.nodesBetween(e-1,t,(e=>{if(e.marks){const t=e.marks.find((e=>"link"===e.type.name));t&&(r=t.attrs.href)}})),s(r||"");const o=document.querySelector('[data-test="link-input-field"]');null==o||o.focus()}}),[e,n]);return T.jsx(v,{open:e,dataTest:"link-modal-rte",onClose:()=>t(!1),className:"z-[99]",dialogTitle:T.jsx("div",{className:"text-gray-700",children:a?"Legg til lenke":"Add link"}),children:T.jsxs("div",{className:tu,children:[T.jsx("div",{className:"link-input-field",children:T.jsx(m,{autoFocus:!0,multiline:!0,className:"w-full",dataTest:"link-input-field",size:"small",sx:{"& .MuiInputBase-root":{minHeight:64,alignItems:"start"}},value:i,onChange:e=>s(e.target.value)})}),T.jsxs("div",{className:"flex gap-2 p-0 w-full justify-end",children:[T.jsx(y,{dataTest:"delete-customer-reject-button",size:"medium",variant:"outlined",onClick:()=>{t(!1),s("")},children:a?"Avbryt":"Cancel"}),T.jsx(y,{dataTest:"delete-customer-confirm-button",size:"medium",variant:"contained",onClick:()=>{n.chain().focus().setLink({href:i}).run(),t(!1),s("")},children:a?"Legg til lenke":"Add link"})]})]})})},ru=vs.create({name:"placeholder",addOptions:()=>({emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}),addProseMirrorPlugins(){return[new Yt({key:new Zt("placeholder"),props:{decorations:({doc:e,selection:t})=>{const n=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:r}=t,o=[];if(!n)return null;const i=this.editor.isEmpty;return e.descendants(((e,t)=>{const n=r>=t&&r<=t+e.nodeSize,s=!e.isLeaf&&Us(e);if((n||!this.options.showOnlyCurrent)&&s){const r=[this.options.emptyNodeClass];i&&r.push(this.options.emptyEditorClass);const s=$o.node(t,t+e.nodeSize,{class:r.join(" "),"data-placeholder":"function"==typeof this.options.placeholder?this.options.placeholder({editor:this.editor,node:e,pos:t,hasAnchor:n}):this.options.placeholder});o.push(s)}return this.options.includeChildren})),Fo.create(e,o)}}})]}}),ou=({dataTest:e,id:t,inputRef:o,className:s,editorClassName:a,disabled:l,readOnly:c,error:d,locale:h,title:p,placeholder:f,helperText:m,required:g,maxScrollableHeight:y,toolbarDefaultVisible:b,hideToolbar:v,noDefaultStyles:x,...S})=>{const O=n(),C=Ba({...S,extensions:[ru.configure({placeholder:f}),...Zh,...eu,...S.extensions||[]],shouldRerenderOnTransaction:S.shouldRerenderOnTransaction||!1,immediatelyRender:S.immediatelyRender||!0,editable:S.editable||!l&&!c,onSelectionUpdate:e=>{var t;null==(t=S.onSelectionUpdate)||t.call(S,e),O.current=e.editor.state.selection.anchor,e.editor.commands.focus()}},[S.extensions,S.shouldRerenderOnTransaction,S.immediatelyRender,S.editable,S.content,l,c,f]);i((()=>{void 0!==O.current&&(null==C||C.commands.setTextSelection(O.current))}),[S.content,C]);const[M,E]=r(b),[N,D]=r(!1);u(o,(()=>C));const[R,I]=r(!1);return i((()=>{const e=()=>I(!0),t=()=>I(!1);return null==C||C.on("focus",e),null==C||C.on("blur",t),()=>{null==C||C.off("focus",e),null==C||C.off("blur",t)}}),[C]),C?T.jsxs(T.Fragment,{children:[T.jsxs(w,{className:s,children:[p&&T.jsx("p",{className:"font-semibold text-base text-gray-700 mb-2",children:p}),T.jsxs("div",{className:A(!x&&"rte-wrapper","outlined"===c&&"readonly-outlined","plain"===c&&"readonly-plain",d&&!R&&"error-state",R&&!c&&(d?"error-focused-state":"focused-state")),children:[T.jsx(Oa,{"data-test":e,id:t,className:A("border-none rounded-none",!x&&"core-ui-rte",!v&&!l&&!c&&!M&&"displace-text",!x&&!l&&!c&&"edit-mode",a),editor:C,onClick:()=>null==C?void 0:C.chain().focus().run(),style:{"--max-scrollable-height":y?`${y}${"number"==typeof y?"px":""}`:"none"}}),!v&&!l&&!c&&!M&&T.jsx(kc,{onClick:()=>E(!0),className:"cursor-pointer absolute bottom-2.5 right-4",icon:"material-symbols:format-color-text",color:"var(--colors-gray-700)",height:24,width:24}),!v&&!l&&!c&&M&&T.jsx(Cc,{editor:C,onClose:()=>E(!1),error:d,focused:R,openLinkDialog:()=>D(!0),locale:h})]}),(d||g)&&!c&&T.jsx(k,{error:d,"data-test":`error-${e}`,children:m})]}),T.jsx(nu,{open:N,setOpen:D,editor:C,locale:h})]}):null};export{ou as RichInput};
56
+ */"production"===process.env.NODE_ENV?Er.exports=function(){if(Mr)return Fr;Mr=1;var n=e,i=wr,t="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n},a=i.useSyncExternalStore,s=n.useRef,o=n.useEffect,r=n.useMemo,f=n.useDebugValue;return Fr.useSyncExternalStoreWithSelector=function(e,n,i,d,l){var c=s(null);if(null===c.current){var u={hasValue:!1,value:null};c.current=u}else u=c.current;c=r((function(){function e(e){if(!o){if(o=!0,a=e,e=d(e),void 0!==l&&u.hasValue){var n=u.value;if(l(n,e))return s=n}return s=e}if(n=s,t(a,e))return n;var i=d(e);return void 0!==l&&l(n,i)?n:(a=e,s=i)}var a,s,o=!1,r=void 0===i?null:i;return[function(){return e(n())},null===r?void 0:function(){return e(r())}]}),[n,i,d,l]);var h=a(e,c[0],c[1]);return o((function(){u.hasValue=!0,u.value=h}),[h]),f(h),h},Fr}():Er.exports=(Ar||(Ar=1,"production"!==process.env.NODE_ENV&&function(){typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error);var n=e,i=wr,t="function"==typeof Object.is?Object.is:function(e,n){return e===n&&(0!==e||1/e==1/n)||e!=e&&n!=n},a=i.useSyncExternalStore,s=n.useRef,o=n.useEffect,r=n.useMemo,f=n.useDebugValue;Nr.useSyncExternalStoreWithSelector=function(e,n,i,d,l){var c,u=s(null);null===u.current?(c={hasValue:!1,value:null},u.current=c):c=u.current;var h=r((function(){var e,a,s=!1,o=function(n){if(!s){s=!0,e=n;var i=d(n);if(void 0!==l&&c.hasValue){var o=c.value;if(l(o,i))return a=o,o}return a=i,i}var r=a;if(t(e,n))return r;var f=d(n);return void 0!==l&&l(r,f)?r:(e=n,a=f,f)},r=void 0===i?null:i;return[function(){return o(n())},null===r?void 0:function(){return o(r())}]}),[n,i,d,l]),m=h[0],p=h[1],v=a(e,m,p);return o((function(){c.hasValue=!0,c.value=v}),[v]),f(v),v},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error)}()),Nr);var jr=Er.exports;const Rr=typeof window<"u"?f:s;class Dr{constructor(e){this.transactionNumber=0,this.lastTransactionNumber=0,this.subscribers=new Set,this.editor=e,this.lastSnapshot={editor:e,transactionNumber:0},this.getSnapshot=this.getSnapshot.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.watch=this.watch.bind(this),this.subscribe=this.subscribe.bind(this)}getSnapshot(){return this.transactionNumber===this.lastTransactionNumber||(this.lastTransactionNumber=this.transactionNumber,this.lastSnapshot={editor:this.editor,transactionNumber:this.transactionNumber}),this.lastSnapshot}getServerSnapshot(){return{editor:null,transactionNumber:0}}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}watch(e){if(this.editor=e,this.editor){const e=()=>{this.transactionNumber+=1,this.subscribers.forEach((e=>e()))},n=this.editor;return n.on("transaction",e),()=>{n.off("transaction",e)}}}}const zr="production"!==process.env.NODE_ENV,Pr=typeof window>"u",Br=Pr||!!(typeof window<"u"&&window.next);class Lr{constructor(e){this.editor=null,this.subscriptions=new Set,this.isComponentMounted=!1,this.previousDeps=null,this.instanceId="",this.options=e,this.subscriptions=new Set,this.setEditor(this.getInitialEditor()),this.scheduleDestroy(),this.getEditor=this.getEditor.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.subscribe=this.subscribe.bind(this),this.refreshEditorInstance=this.refreshEditorInstance.bind(this),this.scheduleDestroy=this.scheduleDestroy.bind(this),this.onRender=this.onRender.bind(this),this.createEditor=this.createEditor.bind(this)}setEditor(e){this.editor=e,this.instanceId=Math.random().toString(36).slice(2,9),this.subscriptions.forEach((e=>e()))}getInitialEditor(){if(void 0===this.options.current.immediatelyRender)return Pr||Br?(zr&&console.warn("Tiptap Error: SSR has been detected, please set `immediatelyRender` explicitly to `false` to avoid hydration mismatches."),null):this.createEditor();if(this.options.current.immediatelyRender&&Pr&&zr)throw new Error("Tiptap Error: SSR has been detected, and `immediatelyRender` has been set to `true` this is an unsupported configuration that may result in errors, explicitly set `immediatelyRender` to `false` to avoid hydration mismatches.");return this.options.current.immediatelyRender?this.createEditor():null}createEditor(){const e={...this.options.current,onBeforeCreate:(...e)=>{var n,i;return null===(i=(n=this.options.current).onBeforeCreate)||void 0===i?void 0:i.call(n,...e)},onBlur:(...e)=>{var n,i;return null===(i=(n=this.options.current).onBlur)||void 0===i?void 0:i.call(n,...e)},onCreate:(...e)=>{var n,i;return null===(i=(n=this.options.current).onCreate)||void 0===i?void 0:i.call(n,...e)},onDestroy:(...e)=>{var n,i;return null===(i=(n=this.options.current).onDestroy)||void 0===i?void 0:i.call(n,...e)},onFocus:(...e)=>{var n,i;return null===(i=(n=this.options.current).onFocus)||void 0===i?void 0:i.call(n,...e)},onSelectionUpdate:(...e)=>{var n,i;return null===(i=(n=this.options.current).onSelectionUpdate)||void 0===i?void 0:i.call(n,...e)},onTransaction:(...e)=>{var n,i;return null===(i=(n=this.options.current).onTransaction)||void 0===i?void 0:i.call(n,...e)},onUpdate:(...e)=>{var n,i;return null===(i=(n=this.options.current).onUpdate)||void 0===i?void 0:i.call(n,...e)},onContentError:(...e)=>{var n,i;return null===(i=(n=this.options.current).onContentError)||void 0===i?void 0:i.call(n,...e)},onDrop:(...e)=>{var n,i;return null===(i=(n=this.options.current).onDrop)||void 0===i?void 0:i.call(n,...e)},onPaste:(...e)=>{var n,i;return null===(i=(n=this.options.current).onPaste)||void 0===i?void 0:i.call(n,...e)}};return new dr(e)}getEditor(){return this.editor}getServerSnapshot(){return null}subscribe(e){return this.subscriptions.add(e),()=>{this.subscriptions.delete(e)}}static compareOptions(e,n){return Object.keys(e).every((i=>!!["onCreate","onBeforeCreate","onDestroy","onUpdate","onTransaction","onFocus","onBlur","onSelectionUpdate","onContentError","onDrop","onPaste"].includes(i)||("extensions"===i&&e.extensions&&n.extensions?e.extensions.length===n.extensions.length&&e.extensions.every(((e,i)=>{var t;return e===(null===(t=n.extensions)||void 0===t?void 0:t[i])})):e[i]===n[i])))}onRender(e){return()=>(this.isComponentMounted=!0,clearTimeout(this.scheduledDestructionTimeout),this.editor&&!this.editor.isDestroyed&&0===e.length?Lr.compareOptions(this.options.current,this.editor.options)||this.editor.setOptions({...this.options.current,editable:this.editor.isEditable}):this.refreshEditorInstance(e),()=>{this.isComponentMounted=!1,this.scheduleDestroy()})}refreshEditorInstance(e){if(this.editor&&!this.editor.isDestroyed){if(null===this.previousDeps)return void(this.previousDeps=e);if(this.previousDeps.length===e.length&&this.previousDeps.every(((n,i)=>n===e[i])))return}this.editor&&!this.editor.isDestroyed&&this.editor.destroy(),this.setEditor(this.createEditor()),this.previousDeps=e}scheduleDestroy(){const e=this.instanceId,n=this.editor;this.scheduledDestructionTimeout=setTimeout((()=>{this.isComponentMounted&&this.instanceId===e?n&&n.setOptions(this.options.current):n&&!n.isDestroyed&&(n.destroy(),this.instanceId===e&&this.setEditor(null))}),1)}}function Ir(e={},n=[]){const o=i(e);o.current=e;const[r]=t((()=>new Lr(o))),f=wr.useSyncExternalStore(r.subscribe,r.getEditor,r.getServerSnapshot);return a(f),s(r.onRender(n)),function(e){var n;const[i]=t((()=>new Dr(e.editor))),s=jr.useSyncExternalStoreWithSelector(i.subscribe,i.getSnapshot,i.getServerSnapshot,e.selector,null!==(n=e.equalityFn)&&void 0!==n?n:Tr);Rr((()=>i.watch(e.editor)),[e.editor,i]),a(s)}({editor:f,selector:({transactionNumber:n})=>!1===e.shouldRerenderOnTransaction?null:e.immediatelyRender&&0===n?0:n+1}),f}o({editor:null}).Consumer;const Hr=o({onDragStart:void 0});e.forwardRef(((n,i)=>{const{onDragStart:t}=r(Hr),a=n.as||"div";return e.createElement(a,{...n,ref:i,"data-node-view-wrapper":"",onDragStart:t,style:{whiteSpace:"normal",...n.style}})}));const qr=Object.freeze({left:0,top:0,width:16,height:16}),Wr=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),$r=Object.freeze({...qr,...Wr}),Vr=Object.freeze({...$r,body:"",hidden:!1});function Ur(e,n){const i=function(e,n){const i={};!e.hFlip!=!n.hFlip&&(i.hFlip=!0),!e.vFlip!=!n.vFlip&&(i.vFlip=!0);const t=((e.rotate||0)+(n.rotate||0))%4;return t&&(i.rotate=t),i}(e,n);for(const t in Vr)t in Wr?t in e&&!(t in i)&&(i[t]=Wr[t]):t in n?i[t]=n[t]:t in e&&(i[t]=e[t]);return i}function Gr(e,n,i){const t=e.icons,a=e.aliases||Object.create(null);let s={};function o(e){s=Ur(t[e]||a[e],s)}return o(n),i.forEach(o),Ur(e,s)}function Kr(e,n){const i=[];if("object"!=typeof e||"object"!=typeof e.icons)return i;e.not_found instanceof Array&&e.not_found.forEach((e=>{n(e,null),i.push(e)}));const t=function(e,n){const i=e.icons,t=e.aliases||Object.create(null),a=Object.create(null);return(n||Object.keys(i).concat(Object.keys(t))).forEach((function e(n){if(i[n])return a[n]=[];if(!(n in a)){a[n]=null;const i=t[n]&&t[n].parent,s=i&&e(i);s&&(a[n]=[i].concat(s))}return a[n]})),a}(e);for(const a in t){const s=t[a];s&&(n(a,Gr(e,a,s)),i.push(a))}return i}const Jr=/^[a-z0-9]+(-[a-z0-9]+)*$/,Yr=(e,n,i,t="")=>{const a=e.split(":");if("@"===e.slice(0,1)){if(a.length<2||a.length>3)return null;t=a.shift().slice(1)}if(a.length>3||!a.length)return null;if(a.length>1){const e=a.pop(),i=a.pop(),s={provider:a.length>0?a[0]:t,prefix:i,name:e};return n&&!Qr(s)?null:s}const s=a[0],o=s.split("-");if(o.length>1){const e={provider:t,prefix:o.shift(),name:o.join("-")};return n&&!Qr(e)?null:e}if(i&&""===t){const e={provider:t,prefix:"",name:s};return n&&!Qr(e,i)?null:e}return null},Qr=(e,n)=>!!e&&!(""!==e.provider&&!e.provider.match(Jr)||!(n&&""===e.prefix||e.prefix.match(Jr))||!e.name.match(Jr)),Xr={provider:"",aliases:{},not_found:{},...qr};function Zr(e,n){for(const i in n)if(i in e&&typeof e[i]!=typeof n[i])return!1;return!0}function ef(e){if("object"!=typeof e||null===e)return null;const n=e;if("string"!=typeof n.prefix||!e.icons||"object"!=typeof e.icons||!Zr(e,Xr))return null;const i=n.icons;for(const e in i){const n=i[e];if(!e.match(Jr)||"string"!=typeof n.body||!Zr(n,Vr))return null}const t=n.aliases||Object.create(null);for(const e in t){const n=t[e],a=n.parent;if(!e.match(Jr)||"string"!=typeof a||!i[a]&&!t[a]||!Zr(n,Vr))return null}return n}const nf=Object.create(null);function tf(e,n){const i=nf[e]||(nf[e]=Object.create(null));return i[n]||(i[n]=function(e,n){return{provider:e,prefix:n,icons:Object.create(null),missing:new Set}}(e,n))}function af(e,n){return ef(n)?Kr(n,((n,i)=>{i?e.icons[n]=i:e.missing.add(n)})):[]}let sf=!1;function of(e){return"boolean"==typeof e&&(sf=e),sf}function rf(e){const n="string"==typeof e?Yr(e,!0,sf):e;if(n){const e=tf(n.provider,n.prefix),i=n.name;return e.icons[i]||(e.missing.has(i)?null:void 0)}}function ff(e,n){if("object"!=typeof e)return!1;if("string"!=typeof n&&(n=e.provider||""),sf&&!n&&!e.prefix){let n=!1;return ef(e)&&(e.prefix="",Kr(e,((e,i)=>{i&&function(e,n){const i=Yr(e,!0,sf);return!!i&&function(e,n,i){try{if("string"==typeof i.body)return e.icons[n]={...i},!0}catch{}return!1}(tf(i.provider,i.prefix),i.name,n)}(e,i)&&(n=!0)}))),n}const i=e.prefix;if(!Qr({provider:n,prefix:i,name:"a"}))return!1;return!!af(tf(n,i),e)}const df=Object.freeze({width:null,height:null}),lf=Object.freeze({...df,...Wr}),cf=/(-?[0-9.]*[0-9]+[0-9.]*)/g,uf=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function hf(e,n,i){if(1===n)return e;if(i=i||100,"number"==typeof e)return Math.ceil(e*n*i)/i;if("string"!=typeof e)return e;const t=e.split(cf);if(null===t||!t.length)return e;const a=[];let s=t.shift(),o=uf.test(s);for(;;){if(o){const e=parseFloat(s);isNaN(e)?a.push(s):a.push(Math.ceil(e*n*i)/i)}else a.push(s);if(s=t.shift(),void 0===s)return a.join("");o=!o}}const mf=/\sid="(\S+)"/g,pf="IconifyId"+Date.now().toString(16)+(16777216*Math.random()|0).toString(16);let vf=0;function gf(e,n=pf){const i=[];let t;for(;t=mf.exec(e);)i.push(t[1]);if(!i.length)return e;const a="suffix"+(16777216*Math.random()|Date.now()).toString(16);return i.forEach((i=>{const t="function"==typeof n?n(i):n+(vf++).toString(),s=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+s+')([")]|\\.[a-z])',"g"),"$1"+t+a+"$3")})),e=e.replace(new RegExp(a,"g"),"")}const kf=Object.create(null);function yf(e){return kf[e]||kf[""]}function wf(e){let n;if("string"==typeof e.resources)n=[e.resources];else if(n=e.resources,!(n instanceof Array&&n.length))return null;return{resources:n,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:!0===e.random,index:e.index||0,dataAfterTimeout:!1!==e.dataAfterTimeout}}const bf=Object.create(null),_f=["https://api.simplesvg.com","https://api.unisvg.com"],xf=[];for(;_f.length>0;)1===_f.length||Math.random()>.5?xf.push(_f.shift()):xf.push(_f.pop());function Sf(e,n){const i=wf(n);return null!==i&&(bf[e]=i,!0)}function Cf(e){return bf[e]}bf[""]=wf({resources:["https://api.iconify.design"].concat(xf)});let Mf=(()=>{let e;try{if(e=fetch,"function"==typeof e)return e}catch{}})();const Of={prepare:(e,n,i)=>{const t=[],a=function(e,n){const i=Cf(e);if(!i)return 0;let t;if(i.maxURL){let e=0;i.resources.forEach((n=>{e=Math.max(e,n.length)}));const a=n+".json?icons=";t=i.maxURL-e-i.path.length-a.length}else t=0;return t}(e,n),s="icons";let o={type:s,provider:e,prefix:n,icons:[]},r=0;return i.forEach(((i,f)=>{r+=i.length+1,r>=a&&f>0&&(t.push(o),o={type:s,provider:e,prefix:n,icons:[]},r=i.length),o.icons.push(i)})),t.push(o),t},send:(e,n,i)=>{if(!Mf)return void i("abort",424);let t=function(e){if("string"==typeof e){const n=Cf(e);if(n)return n.path}return"/"}(n.provider);switch(n.type){case"icons":{const e=n.prefix,i=n.icons.join(",");t+=e+".json?"+new URLSearchParams({icons:i}).toString();break}case"custom":{const e=n.uri;t+="/"===e.slice(0,1)?e.slice(1):e;break}default:return void i("abort",400)}let a=503;Mf(e+t).then((e=>{const n=e.status;if(200===n)return a=501,e.json();setTimeout((()=>{i(function(e){return 404===e}(n)?"abort":"next",n)}))})).then((e=>{"object"==typeof e&&null!==e?setTimeout((()=>{i("success",e)})):setTimeout((()=>{404===e?i("abort",e):i("next",a)}))})).catch((()=>{i("next",a)}))}};function Tf(e,n){e.forEach((e=>{const i=e.loaderCallbacks;i&&(e.loaderCallbacks=i.filter((e=>e.id!==n)))}))}let Ef=0;var Ff={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function Af(e,n,i,t){const a=e.resources.length,s=e.random?Math.floor(Math.random()*a):e.index;let o;if(e.random){let n=e.resources.slice(0);for(o=[];n.length>1;){const e=Math.floor(Math.random()*n.length);o.push(n[e]),n=n.slice(0,e).concat(n.slice(e+1))}o=o.concat(n)}else o=e.resources.slice(s).concat(e.resources.slice(0,s));const r=Date.now();let f,d="pending",l=0,c=null,u=[],h=[];function m(){c&&(clearTimeout(c),c=null)}function p(){"pending"===d&&(d="aborted"),m(),u.forEach((e=>{"pending"===e.status&&(e.status="aborted")})),u=[]}function v(e,n){n&&(h=[]),"function"==typeof e&&h.push(e)}function g(){d="failed",h.forEach((e=>{e(void 0,f)}))}function k(){u.forEach((e=>{"pending"===e.status&&(e.status="aborted")})),u=[]}function y(){if("pending"!==d)return;m();const t=o.shift();if(void 0===t)return u.length?void(c=setTimeout((()=>{m(),"pending"===d&&(k(),g())}),e.timeout)):void g();const a={status:"pending",resource:t,callback:(n,i)=>{!function(n,i,t){const a="success"!==i;switch(u=u.filter((e=>e!==n)),d){case"pending":break;case"failed":if(a||!e.dataAfterTimeout)return;break;default:return}if("abort"===i)return f=t,void g();if(a)return f=t,void(u.length||(o.length?y():g()));if(m(),k(),!e.random){const i=e.resources.indexOf(n.resource);-1!==i&&i!==e.index&&(e.index=i)}d="completed",h.forEach((e=>{e(t)}))}(a,n,i)}};u.push(a),l++,c=setTimeout(y,e.rotate),i(t,n,a.callback)}return"function"==typeof t&&h.push(t),setTimeout(y),function(){return{startTime:r,payload:n,status:d,queriesSent:l,queriesPending:u.length,subscribe:v,abort:p}}}function Nf(e){const n={...Ff,...e};let i=[];function t(){i=i.filter((e=>"pending"===e().status))}return{query:function(e,a,s){const o=Af(n,e,a,((e,n)=>{t(),s&&s(e,n)}));return i.push(o),o},find:function(e){return i.find((n=>e(n)))||null},setIndex:e=>{n.index=e},getIndex:()=>n.index,cleanup:t}}function jf(){}const Rf=Object.create(null);function Df(e,n,i){let t,a;if("string"==typeof e){const n=yf(e);if(!n)return i(void 0,424),jf;a=n.send;const s=function(e){if(!Rf[e]){const n=Cf(e);if(!n)return;const i={config:n,redundancy:Nf(n)};Rf[e]=i}return Rf[e]}(e);s&&(t=s.redundancy)}else{const n=wf(e);if(n){t=Nf(n);const i=yf(e.resources?e.resources[0]:"");i&&(a=i.send)}}return t&&a?t.query(n,a,i)().abort:(i(void 0,424),jf)}const zf="iconify2",Pf="iconify",Bf=Pf+"-count",Lf=Pf+"-version",If=36e5,Hf=168,qf=50;function Wf(e,n){try{return e.getItem(n)}catch{}}function $f(e,n,i){try{return e.setItem(n,i),!0}catch{}}function Vf(e,n){try{e.removeItem(n)}catch{}}function Uf(e,n){return $f(e,Bf,n.toString())}function Gf(e){return parseInt(Wf(e,Bf))||0}const Kf={local:!0,session:!0},Jf={local:new Set,session:new Set};let Yf=!1;let Qf=typeof window>"u"?{}:window;function Xf(e){const n=e+"Storage";try{if(Qf&&Qf[n]&&"number"==typeof Qf[n].length)return Qf[n]}catch{}Kf[e]=!1}function Zf(e,n){const i=Xf(e);if(!i)return;const t=Wf(i,Lf);if(t!==zf){if(t){const e=Gf(i);for(let n=0;n<e;n++)Vf(i,Pf+n.toString())}return $f(i,Lf,zf),void Uf(i,0)}const a=Math.floor(Date.now()/If)-Hf,s=e=>{const t=Pf+e.toString(),s=Wf(i,t);if("string"==typeof s){try{const i=JSON.parse(s);if("object"==typeof i&&"number"==typeof i.cached&&i.cached>a&&"string"==typeof i.provider&&"object"==typeof i.data&&"string"==typeof i.data.prefix&&n(i,e))return!0}catch{}Vf(i,t)}};let o=Gf(i);for(let n=o-1;n>=0;n--)s(n)||(n===o-1?(o--,Uf(i,o)):Jf[e].add(n))}function ed(){if(!Yf){Yf=!0;for(const e in Kf)Zf(e,(e=>{const n=e.data,i=tf(e.provider,n.prefix);if(!af(i,n).length)return!1;const t=n.lastModified||-1;return i.lastModifiedCached=i.lastModifiedCached?Math.min(i.lastModifiedCached,t):t,!0}))}}function nd(e,n){function i(i){let t;if(!Kf[i]||!(t=Xf(i)))return;const a=Jf[i];let s;if(a.size)a.delete(s=Array.from(a).shift());else if(s=Gf(t),s>=qf||!Uf(t,s+1))return;const o={cached:Math.floor(Date.now()/If),provider:e.provider,data:n};return $f(t,Pf+s.toString(),JSON.stringify(o))}Yf||ed(),n.lastModified&&!function(e,n){const i=e.lastModifiedCached;if(i&&i>=n)return i===n;if(e.lastModifiedCached=n,i)for(const i in Kf)Zf(i,(i=>{const t=i.data;return i.provider!==e.provider||t.prefix!==e.prefix||t.lastModified===n}));return!0}(e,n.lastModified)||Object.keys(n.icons).length&&(n.not_found&&delete(n=Object.assign({},n)).not_found,i("local")||i("session"))}function id(){}function td(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout((()=>{e.iconsLoaderFlag=!1,function(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout((()=>{e.pendingCallbacksFlag=!1;const n=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!n.length)return;let i=!1;const t=e.provider,a=e.prefix;n.forEach((n=>{const s=n.icons,o=s.pending.length;s.pending=s.pending.filter((n=>{if(n.prefix!==a)return!0;const o=n.name;if(e.icons[o])s.loaded.push({provider:t,prefix:a,name:o});else{if(!e.missing.has(o))return i=!0,!0;s.missing.push({provider:t,prefix:a,name:o})}return!1})),s.pending.length!==o&&(i||Tf([e],n.id),n.callback(s.loaded.slice(0),s.missing.slice(0),s.pending.slice(0),n.abort))}))})))}(e)})))}const ad=(e,n)=>{const i=function(e,n=!0,i=!1){const t=[];return e.forEach((e=>{const a="string"==typeof e?Yr(e,n,i):e;a&&t.push(a)})),t}(e,!0,of()),t=function(e){const n={loaded:[],missing:[],pending:[]},i=Object.create(null);e.sort(((e,n)=>e.provider!==n.provider?e.provider.localeCompare(n.provider):e.prefix!==n.prefix?e.prefix.localeCompare(n.prefix):e.name.localeCompare(n.name)));let t={provider:"",prefix:"",name:""};return e.forEach((e=>{if(t.name===e.name&&t.prefix===e.prefix&&t.provider===e.provider)return;t=e;const a=e.provider,s=e.prefix,o=e.name,r=i[a]||(i[a]=Object.create(null)),f=r[s]||(r[s]=tf(a,s));let d;d=o in f.icons?n.loaded:""===s||f.missing.has(o)?n.missing:n.pending;const l={provider:a,prefix:s,name:o};d.push(l)})),n}(i);if(!t.pending.length){let e=!0;return n&&setTimeout((()=>{e&&n(t.loaded,t.missing,t.pending,id)})),()=>{e=!1}}const a=Object.create(null),s=[];let o,r;return t.pending.forEach((e=>{const{provider:n,prefix:i}=e;if(i===r&&n===o)return;o=n,r=i,s.push(tf(n,i));const t=a[n]||(a[n]=Object.create(null));t[i]||(t[i]=[])})),t.pending.forEach((e=>{const{provider:n,prefix:i,name:t}=e,s=tf(n,i),o=s.pendingIcons||(s.pendingIcons=new Set);o.has(t)||(o.add(t),a[n][i].push(t))})),s.forEach((e=>{const{provider:n,prefix:i}=e;a[n][i].length&&function(e,n){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(n).sort():e.iconsToLoad=n,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout((()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:i}=e,t=e.iconsToLoad;let a;delete e.iconsToLoad,t&&(a=yf(n))&&a.prepare(n,i,t).forEach((i=>{Df(n,i,(n=>{if("object"!=typeof n)i.icons.forEach((n=>{e.missing.add(n)}));else try{const i=af(e,n);if(!i.length)return;const t=e.pendingIcons;t&&i.forEach((e=>{t.delete(e)})),nd(e,n)}catch(e){console.error(e)}td(e)}))}))})))}(e,a[n][i])})),n?function(e,n,i){const t=Ef++,a=Tf.bind(null,i,t);if(!n.pending.length)return a;const s={id:t,icons:n,callback:e,abort:a};return i.forEach((e=>{(e.loaderCallbacks||(e.loaderCallbacks=[])).push(s)})),a}(n,t,s):id};const sd=/[\s,]+/;function od(e,n){n.split(sd).forEach((n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0}}))}function rd(e,n=0){const i=e.replace(/^-?[0-9.]*/,"");function t(e){for(;e<0;)e+=4;return e%4}if(""===i){const n=parseInt(e);return isNaN(n)?0:t(n)}if(i!==e){let n=0;switch(i){case"%":n=25;break;case"deg":n=90}if(n){let a=parseFloat(e.slice(0,e.length-i.length));return isNaN(a)?0:(a/=n,a%1==0?t(a):0)}}return n}function fd(e){return'url("'+function(e){return"data:image/svg+xml,"+function(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}(e)}(e)+'")'}let dd;function ld(e){return void 0===dd&&function(){try{dd=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{dd=null}}(),dd?dd.createHTML(e):e}const cd={...lf,inline:!1},ud={xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},hd={display:"inline-block"},md={backgroundColor:"currentColor"},pd={backgroundColor:"transparent"},vd={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},gd={WebkitMask:md,mask:md,background:pd};for(const e in gd){const n=gd[e];for(const i in vd)n[e+i]=vd[i]}const kd={...cd,inline:!0};function yd(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const wd=(e,n,i)=>{const t=n.inline?kd:cd,a=function(e,n){const i={...e};for(const e in n){const t=n[e],a=typeof t;e in df?(null===t||t&&("string"===a||"number"===a))&&(i[e]=t):a===typeof i[e]&&(i[e]="rotate"===e?t%4:t)}return i}(t,n),s=n.mode||"svg",o={},r=n.style||{},f={..."svg"===s?ud:{}};if(i){const e=Yr(i,!1,!0);if(e){const n=["iconify"],i=["provider","prefix"];for(const t of i)e[t]&&n.push("iconify--"+e[t]);f.className=n.join(" ")}}for(let e in n){const i=n[e];if(void 0!==i)switch(e){case"icon":case"style":case"children":case"onLoad":case"mode":case"ssr":break;case"_ref":f.ref=i;break;case"className":f[e]=(f[e]?f[e]+" ":"")+i;break;case"inline":case"hFlip":case"vFlip":a[e]=!0===i||"true"===i||1===i;break;case"flip":"string"==typeof i&&od(a,i);break;case"color":o.color=i;break;case"rotate":"string"==typeof i?a[e]=rd(i):"number"==typeof i&&(a[e]=i);break;case"ariaHidden":case"aria-hidden":!0!==i&&"true"!==i&&delete f["aria-hidden"];break;default:void 0===t[e]&&(f[e]=i)}}const l=function(e,n){const i={...$r,...e},t={...lf,...n},a={left:i.left,top:i.top,width:i.width,height:i.height};let s=i.body;[i,t].forEach((e=>{const n=[],i=e.hFlip,t=e.vFlip;let o,r=e.rotate;switch(i?t?r+=2:(n.push("translate("+(a.width+a.left).toString()+" "+(0-a.top).toString()+")"),n.push("scale(-1 1)"),a.top=a.left=0):t&&(n.push("translate("+(0-a.left).toString()+" "+(a.height+a.top).toString()+")"),n.push("scale(1 -1)"),a.top=a.left=0),r<0&&(r-=4*Math.floor(r/4)),r%=4,r){case 1:o=a.height/2+a.top,n.unshift("rotate(90 "+o.toString()+" "+o.toString()+")");break;case 2:n.unshift("rotate(180 "+(a.width/2+a.left).toString()+" "+(a.height/2+a.top).toString()+")");break;case 3:o=a.width/2+a.left,n.unshift("rotate(-90 "+o.toString()+" "+o.toString()+")")}r%2==1&&(a.left!==a.top&&(o=a.left,a.left=a.top,a.top=o),a.width!==a.height&&(o=a.width,a.width=a.height,a.height=o)),n.length&&(s=function(e,n,i){const t=function(e,n="defs"){let i="";const t=e.indexOf("<"+n);for(;t>=0;){const a=e.indexOf(">",t),s=e.indexOf("</"+n);if(-1===a||-1===s)break;const o=e.indexOf(">",s);if(-1===o)break;i+=e.slice(a+1,s).trim(),e=e.slice(0,t).trim()+e.slice(o+1)}return{defs:i,content:e}}(e);return function(e,n){return e?"<defs>"+e+"</defs>"+n:n}(t.defs,n+t.content+i)}(s,'<g transform="'+n.join(" ")+'">',"</g>"))}));const o=t.width,r=t.height,f=a.width,d=a.height;let l,c;null===o?(c=null===r?"1em":"auto"===r?d:r,l=hf(c,f/d)):(l="auto"===o?f:o,c=null===r?hf(l,d/f):"auto"===r?d:r);const u={},h=(e,n)=>{(e=>"unset"===e||"undefined"===e||"none"===e)(n)||(u[e]=n.toString())};h("width",l),h("height",c);const m=[a.left,a.top,f,d];return u.viewBox=m.join(" "),{attributes:u,viewBox:m,body:s}}(e,a),c=l.attributes;if(a.inline&&(o.verticalAlign="-0.125em"),"svg"===s){f.style={...o,...r},Object.assign(f,c);let e=0,i=n.id;return"string"==typeof i&&(i=i.replace(/-/g,"_")),f.dangerouslySetInnerHTML={__html:ld(gf(l.body,i?()=>i+"ID"+e++:"iconifyReact"))},d("svg",f)}const{body:u,width:h,height:m}=e,p="mask"===s||"bg"!==s&&-1!==u.indexOf("currentColor"),v=function(e,n){let i=-1===e.indexOf("xlink:")?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const e in n)i+=" "+e+'="'+n[e]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+i+">"+e+"</svg>"}(u,{...c,width:h+"",height:m+""});return f.style={...o,"--svg":fd(v),width:yd(c.width),height:yd(c.height),...hd,...p?md:pd,...r},d("span",f)};var bd;if(of(!0),bd=Of,kf[""]=bd,typeof document<"u"&&typeof window<"u"){ed();const e=window;if(void 0!==e.IconifyPreload){const n=e.IconifyPreload,i="Invalid IconifyPreload syntax.";"object"==typeof n&&null!==n&&(n instanceof Array?n:[n]).forEach((e=>{try{("object"!=typeof e||null===e||e instanceof Array||"object"!=typeof e.icons||"string"!=typeof e.prefix||!ff(e))&&console.error(i)}catch{console.error(i)}}))}if(void 0!==e.IconifyProviders){const n=e.IconifyProviders;if("object"==typeof n&&null!==n)for(let e in n){const i="IconifyProviders["+e+"] is invalid.";try{const t=n[e];if("object"!=typeof t||!t||void 0===t.resources)continue;Sf(e,t)||console.error(i)}catch{console.error(i)}}}}function _d(e){const[n,i]=t(!!e.ssr),[a,o]=t({});const[r,f]=t(function(n){if(n){const n=e.icon;if("object"==typeof n)return{name:"",data:n};const i=rf(n);if(i)return{name:n,data:i}}return{name:""}}(!!e.ssr));function l(){const e=a.callback;e&&(e(),o({}))}function c(e){if(JSON.stringify(r)!==JSON.stringify(e))return l(),f(e),!0}function u(){var n;const i=e.icon;if("object"==typeof i)return void c({name:"",data:i});const t=rf(i);if(c({name:i,data:t}))if(void 0===t){const e=ad([i],u);o({callback:e})}else t&&(null===(n=e.onLoad)||void 0===n||n.call(e,i))}s((()=>(i(!0),l)),[]),s((()=>{n&&u()}),[e.icon,n]);const{name:h,data:m}=r;return m?wd({...$r,...m},e,h):e.children?e.children:d("span",{})}const xd=n(((e,n)=>_d({...e,_ref:n})));n(((e,n)=>_d({inline:!0,...e,_ref:n})));const Sd=e=>E.jsx(m,{...e,sx:{"&.MuiMenuItem-root":{color:"var(--colors-delta-700)",fontSize:"14px",lineHeight:"20px"}},children:e.children}),Cd={small:"10px",normal:"16px",large:"24px",huge:"32px"},Md=e=>{const{editor:n}=e,[i,a]=t("normal");return f((()=>{const{from:e,to:i}=n.state.selection;n.state.doc.nodesBetween(e-1,i,(e=>{if(e.marks){const n=e.marks.find((e=>"textStyle"===e.type.name)),i=null==n?void 0:n.attrs.fontSize,t=Object.keys(Cd).find((e=>Cd[e]===i))||"normal";a(t)}}))}),[n.state.selection,n.state.doc]),E.jsx(p,{...e,select:!0,size:"small",dataTest:"font-size-select",onChange:e=>{const i=e.target.value;n.chain().focus().setMark("textStyle",{fontSize:Cd[i]}).run(),a(i)},value:i,SelectProps:{IconComponent:()=>null},InputProps:{endAdornment:E.jsx(xd,{icon:"tabler:caret-up-down-filled",className:"chevron-icon"})},sx:{".MuiSelect-select":{border:"none",padding:0,overflow:"hidden",display:"flex",alignItems:"center",color:"var(--colors-delta-700)",fontSize:"14px",lineHeight:"20px"},".MuiOutlinedInput-root":{height:"32px",width:"75px","& .MuiOutlinedInput-notchedOutline":{border:"none"}}},children:e.children})},Od=({editor:e,onClose:n,error:a,focused:s,openLinkDialog:o,openEmojiPicker:r,locale:d})=>{const[u,h]=t(0),p=i(null),y=c((()=>"no"===d),[d]),[w,b]=t(!1),[S,C]=t([]);f((()=>{const n=new ResizeObserver((()=>{var n;if(p.current){const i=p.current.clientWidth;b(i<(y?416:420));const t=null==(n=[{width:y?296:300,buttons:3},{width:y?340:342,buttons:4},{width:y?374:378,buttons:5},{width:y?416:420,buttons:6},{width:y?416:420,buttons:7},{width:1/0,buttons:8}].find((e=>i<e.width)))?void 0:n.buttons;h(void 0!==t?t:8);const a=[];Number(t)<8&&a.push(E.jsx(_,{title:"Link",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(m,{className:"flex items-center justify-center",onClick:o,selected:e.isActive("link"),children:E.jsx(v,{})},"link")})},"link")),Number(t)<7&&a.push(E.jsx(_,{title:"Italic",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(m,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleItalic().run(),selected:e.isActive("italic"),children:E.jsx(xd,{icon:"material-symbols:format-italic",height:20})},"italic")})},"italic")),Number(t)<6&&a.push(E.jsx(_,{title:"Bold",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(m,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleBold().run(),selected:e.isActive("bold"),children:E.jsx(xd,{icon:"ooui:bold-b"})},"bold")})},"bold")),Number(t)<5&&a.push(E.jsx(_,{title:"Ordered list",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(m,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleOrderedList().run(),selected:e.isActive("orderedList"),children:E.jsx(xd,{icon:"mdi:format-list-numbered",fontSize:20})},"ordered")})},"ordered")),Number(t)<4&&a.push(E.jsx(_,{title:"Bullet list",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(m,{className:"flex items-center justify-center",onClick:()=>e.chain().focus().toggleBulletList().run(),selected:e.isActive("bulletList"),children:E.jsx(xd,{icon:"mdi:format-list-bulleted",fontSize:20})},"bullet")})},"bullet")),C(a)}}));return p.current&&n.observe(p.current),()=>n.disconnect()}),[e,o,y]);const{anchorEl:M,open:O,handleClose:T,handleOpen:F}=(()=>{const[e,n]=t(null),i=!!e,a=l((e=>{n(e.currentTarget)}),[]);return{open:i,handleClose:l((()=>{n(null)}),[]),handleOpen:a,anchorEl:e}})();return E.jsx(E.Fragment,{children:E.jsxs("div",{className:A("toolbar",{"toolbar-error":a,"toolbar-focused":s}),ref:p,children:[E.jsxs("div",{className:"flex flex-row items-center gap-1",children:[u>=1&&E.jsx(_,{arrow:!0,title:"Emojis",placement:"top",children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-emoji-button",size:"small",variant:"textGray",onClick:r,style:{minWidth:32,padding:0},children:E.jsx(xd,{icon:"mdi:emoticon-outline",fontSize:20})})})}),u>=2&&E.jsx(_,{title:"Heading 1",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-h1-button",size:"small",variant:e.isActive("heading",{level:1})?"text":"textGray",onClick:()=>{e.chain().focus().setMark("textStyle",{fontSize:void 0}).run(),e.chain().focus().toggleHeading({level:1}).run()},children:E.jsx(xd,{icon:"bi:type-h1"})})})}),u>=3&&E.jsx(_,{title:"Heading 2",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-h2-button",size:"small",variant:e.isActive("heading",{level:2})?"text":"textGray",onClick:()=>{e.chain().focus().setMark("textStyle",{fontSize:void 0}).run(),e.chain().focus().toggleHeading({level:2}).run()},children:E.jsx(xd,{icon:"bi:type-h2"})})})}),u>=4&&E.jsx(_,{title:"Font size",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsxs(Md,{editor:e,children:[E.jsx(Sd,{value:"small",children:y?"Liten":"Small"}),E.jsx(Sd,{value:"normal",children:"Normal"}),E.jsx(Sd,{value:"large",children:y?"Stor":"Large"}),E.jsx(Sd,{value:"huge",children:y?"Enorm":"Huge"})]})})}),u>=5&&E.jsx(_,{title:"Bullet list",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-bullet-list-button",size:"small",variant:e.isActive("bulletList")?"text":"textGray",onClick:()=>e.chain().focus().toggleBulletList().run(),children:E.jsx(xd,{icon:"mdi:format-list-bulleted",fontSize:20})})})}),u>=6&&E.jsx(_,{title:"Ordered list",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-ordered-list-button",size:"small",variant:e.isActive("orderedList")?"text":"textGray",onClick:()=>e.chain().focus().toggleOrderedList().run(),children:E.jsx(xd,{icon:"mdi:format-list-numbered",fontSize:20})})})}),u>=7&&E.jsx(_,{title:"Bold",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-bold-button",size:"small",variant:e.isActive("bold")?"text":"textGray",onClick:()=>e.chain().focus().toggleBold().run(),children:E.jsx(xd,{icon:"ooui:bold-b"})})})}),u>=8&&E.jsx(_,{title:"Italic",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-italic-button",size:"small",variant:e.isActive("italic")?"text":"textGray",onClick:()=>e.chain().focus().toggleItalic().run(),children:E.jsx(xd,{icon:"material-symbols:format-italic",height:20})})})}),u>=9&&E.jsx(_,{title:"Link",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{dataTest:"richeditor-link-button",size:"small",variant:e.isActive("link")?"text":"textGray",onClick:o,children:E.jsx(v,{})})})}),w&&E.jsxs(E.Fragment,{children:[E.jsx(_,{title:"More",placement:"top",arrow:!0,children:E.jsx("span",{children:E.jsx(g,{size:"small",dataTest:"richeditor-more-menu-button",variant:"text",onClick:e=>{e.stopPropagation(),e.preventDefault(),F(e)},onMouseDown:e=>{e.stopPropagation(),e.preventDefault()},onMouseUp:e=>{e.stopPropagation(),e.preventDefault()},children:E.jsx(k,{className:"text-delta-800",width:20,height:20})})})}),E.jsx(x,{open:O,anchorEl:M,onClose:T,onClick:T,anchorOrigin:{horizontal:"center",vertical:"bottom"},transformOrigin:{vertical:"top",horizontal:"right"},children:S})]})]}),E.jsx(g,{dataTest:"richeditor-close-toolbar-button",size:"small",variant:"text",onClick:n,children:y?"Lukk":"Close"})]})})},Td=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/,Ed=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g,Fd=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/,Ad=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g,Nd=mo.create({name:"bold",addOptions:()=>({HTMLAttributes:{}}),parseHTML(){return[{tag:"strong"},{tag:"b",getAttrs:e=>"normal"!==e.style.fontWeight&&null},{style:"font-weight=400",clearMark:e=>e.type.name===this.name},{style:"font-weight",getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}]},renderHTML({HTMLAttributes:e}){return["strong",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{setBold:()=>({commands:e})=>e.setMark(this.name),toggleBold:()=>({commands:e})=>e.toggleMark(this.name),unsetBold:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[lr({find:Td,type:this.type}),lr({find:Fd,type:this.type})]},addPasteRules(){return[hr({find:Ed,type:this.type}),hr({find:Ad,type:this.type})]}}),jd="textStyle",Rd=/^\s*([-+*])\s$/,Dd=ur.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:e}){return["ul",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleBulletList:()=>({commands:e,chain:n})=>this.options.keepAttributes?n().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(jd)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=cr({find:Rd,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=cr({find:Rd,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(jd),editor:this.editor})),[e]}}),zd=ur.create({name:"heading",addOptions:()=>({levels:[1,2,3,4,5,6],HTMLAttributes:{}}),content:"inline*",group:"block",defining:!0,addAttributes:()=>({level:{default:1,rendered:!1}}),parseHTML(){return this.options.levels.map((e=>({tag:`h${e}`,attrs:{level:e}})))},renderHTML({node:e,HTMLAttributes:n}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,Ys(this.options.HTMLAttributes,n),0]},addCommands(){return{setHeading:e=>({commands:n})=>!!this.options.levels.includes(e.level)&&n.setNode(this.name,e),toggleHeading:e=>({commands:n})=>!!this.options.levels.includes(e.level)&&n.toggleNode(this.name,"paragraph",e)}},addKeyboardShortcuts(){return this.options.levels.reduce(((e,n)=>({...e,[`Mod-Alt-${n}`]:()=>this.editor.commands.toggleHeading({level:n})})),{})},addInputRules(){return this.options.levels.map((e=>function(e){return new ro({find:e.find,handler:({state:n,range:i,match:t})=>{const a=n.doc.resolve(i.from),s=Zs(e.getAttributes,void 0,t)||{};if(!a.node(-1).canReplaceWith(a.index(-1),a.indexAfter(-1),e.type))return null;n.tr.delete(i.from,i.to).setBlockType(i.from,i.from,e.type,s)}})}({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}})))}}),Pd=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,Bd=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,Ld=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,Id=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,Hd=mo.create({name:"italic",addOptions:()=>({HTMLAttributes:{}}),parseHTML(){return[{tag:"em"},{tag:"i",getAttrs:e=>"normal"!==e.style.fontStyle&&null},{style:"font-style=normal",clearMark:e=>e.type.name===this.name},{style:"font-style=italic"}]},renderHTML({HTMLAttributes:e}){return["em",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{setItalic:()=>({commands:e})=>e.setMark(this.name),toggleItalic:()=>({commands:e})=>e.toggleMark(this.name),unsetItalic:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[lr({find:Pd,type:this.type}),lr({find:Ld,type:this.type})]},addPasteRules(){return[hr({find:Bd,type:this.type}),hr({find:Id,type:this.type})]}}),qd="aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2",Wd="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2",$d=(e,n)=>{for(const i in n)e[i]=n[i];return e},Vd="numeric",Ud="ascii",Gd="alpha",Kd="asciinumeric",Jd="alphanumeric",Yd="domain",Qd="emoji",Xd="scheme",Zd="slashscheme",el="whitespace";function nl(e,n){return e in n||(n[e]=[]),n[e]}function il(e,n,i){n[Vd]&&(n[Kd]=!0,n[Jd]=!0),n[Ud]&&(n[Kd]=!0,n[Gd]=!0),n[Kd]&&(n[Jd]=!0),n[Gd]&&(n[Jd]=!0),n[Jd]&&(n[Yd]=!0),n[Qd]&&(n[Yd]=!0);for(const t in n){const n=nl(t,i);n.indexOf(e)<0&&n.push(e)}}function tl(e=null){this.j={},this.jr=[],this.jd=null,this.t=e}tl.groups={},tl.prototype={accepts(){return!!this.t},go(e){const n=this,i=n.j[e];if(i)return i;for(let i=0;i<n.jr.length;i++){const t=n.jr[i][0],a=n.jr[i][1];if(a&&t.test(e))return a}return n.jd},has(e,n=!1){return n?e in this.j:!!this.go(e)},ta(e,n,i,t){for(let a=0;a<e.length;a++)this.tt(e[a],n,i,t)},tr(e,n,i,t){let a;return t=t||tl.groups,n&&n.j?a=n:(a=new tl(n),i&&t&&il(n,i,t)),this.jr.push([e,a]),a},ts(e,n,i,t){let a=this;const s=e.length;if(!s)return a;for(let n=0;n<s-1;n++)a=a.tt(e[n]);return a.tt(e[s-1],n,i,t)},tt(e,n,i,t){t=t||tl.groups;const a=this;if(n&&n.j)return a.j[e]=n,n;const s=n;let o,r=a.go(e);if(r?(o=new tl,$d(o.j,r.j),o.jr.push.apply(o.jr,r.jr),o.jd=r.jd,o.t=r.t):o=new tl,s){if(t)if(o.t&&"string"==typeof o.t){const e=$d(function(e,n){const i={};for(const t in n)n[t].indexOf(e)>=0&&(i[t]=!0);return i}(o.t,t),i);il(s,e,t)}else i&&il(s,i,t);o.t=s}return a.j[e]=o,o}};const al=(e,n,i,t,a)=>e.ta(n,i,t,a),sl=(e,n,i,t,a)=>e.tr(n,i,t,a),ol=(e,n,i,t,a)=>e.ts(n,i,t,a),rl=(e,n,i,t,a)=>e.tt(n,i,t,a),fl="WORD",dl="UWORD",ll="ASCIINUMERICAL",cl="ALPHANUMERICAL",ul="LOCALHOST",hl="TLD",ml="UTLD",pl="SCHEME",vl="SLASH_SCHEME",gl="NUM",kl="WS",yl="NL",wl="OPENBRACE",bl="CLOSEBRACE",_l="OPENBRACKET",xl="CLOSEBRACKET",Sl="OPENPAREN",Cl="CLOSEPAREN",Ml="OPENANGLEBRACKET",Ol="CLOSEANGLEBRACKET",Tl="FULLWIDTHLEFTPAREN",El="FULLWIDTHRIGHTPAREN",Fl="LEFTCORNERBRACKET",Al="RIGHTCORNERBRACKET",Nl="LEFTWHITECORNERBRACKET",jl="RIGHTWHITECORNERBRACKET",Rl="FULLWIDTHLESSTHAN",Dl="FULLWIDTHGREATERTHAN",zl="AMPERSAND",Pl="APOSTROPHE",Bl="ASTERISK",Ll="AT",Il="BACKSLASH",Hl="BACKTICK",ql="CARET",Wl="COLON",$l="COMMA",Vl="DOLLAR",Ul="DOT",Gl="EQUALS",Kl="EXCLAMATION",Jl="HYPHEN",Yl="PERCENT",Ql="PIPE",Xl="PLUS",Zl="POUND",ec="QUERY",nc="QUOTE",ic="FULLWIDTHMIDDLEDOT",tc="SEMI",ac="SLASH",sc="TILDE",oc="UNDERSCORE",rc="EMOJI",fc="SYM";var dc=Object.freeze({__proto__:null,WORD:fl,UWORD:dl,ASCIINUMERICAL:ll,ALPHANUMERICAL:cl,LOCALHOST:ul,TLD:hl,UTLD:ml,SCHEME:pl,SLASH_SCHEME:vl,NUM:gl,WS:kl,NL:yl,OPENBRACE:wl,CLOSEBRACE:bl,OPENBRACKET:_l,CLOSEBRACKET:xl,OPENPAREN:Sl,CLOSEPAREN:Cl,OPENANGLEBRACKET:Ml,CLOSEANGLEBRACKET:Ol,FULLWIDTHLEFTPAREN:Tl,FULLWIDTHRIGHTPAREN:El,LEFTCORNERBRACKET:Fl,RIGHTCORNERBRACKET:Al,LEFTWHITECORNERBRACKET:Nl,RIGHTWHITECORNERBRACKET:jl,FULLWIDTHLESSTHAN:Rl,FULLWIDTHGREATERTHAN:Dl,AMPERSAND:zl,APOSTROPHE:Pl,ASTERISK:Bl,AT:Ll,BACKSLASH:Il,BACKTICK:Hl,CARET:ql,COLON:Wl,COMMA:$l,DOLLAR:Vl,DOT:Ul,EQUALS:Gl,EXCLAMATION:Kl,HYPHEN:Jl,PERCENT:Yl,PIPE:Ql,PLUS:Xl,POUND:Zl,QUERY:ec,QUOTE:nc,FULLWIDTHMIDDLEDOT:ic,SEMI:tc,SLASH:ac,TILDE:sc,UNDERSCORE:oc,EMOJI:rc,SYM:fc});const lc=/[a-z]/,cc=/\p{L}/u,uc=/\p{Emoji}/u,hc=/\d/,mc=/\s/,pc="\r",vc="\n",gc="️",kc="‍",yc="";let wc=null,bc=null;function _c(e,n){const i=function(e){const n=[],i=e.length;let t=0;for(;t<i;){let a,s=e.charCodeAt(t),o=s<55296||s>56319||t+1===i||(a=e.charCodeAt(t+1))<56320||a>57343?e[t]:e.slice(t,t+2);n.push(o),t+=o.length}return n}(n.replace(/[A-Z]/g,(e=>e.toLowerCase()))),t=i.length,a=[];let s=0,o=0;for(;o<t;){let r=e,f=null,d=0,l=null,c=-1,u=-1;for(;o<t&&(f=r.go(i[o]));)r=f,r.accepts()?(c=0,u=0,l=r):c>=0&&(c+=i[o].length,u++),d+=i[o].length,s+=i[o].length,o++;s-=c,o-=u,d-=c,a.push({t:l.t,v:n.slice(s-d,s),s:s-d,e:s})}return a}function xc(e,n,i,t,a){let s;const o=n.length;for(let i=0;i<o-1;i++){const o=n[i];e.j[o]?s=e.j[o]:(s=new tl(t),s.jr=a.slice(),e.j[o]=s),e=s}return s=new tl(i),s.jr=a.slice(),e.j[n[o-1]]=s,s}function Sc(e){const n=[],i=[];let t=0;for(;t<e.length;){let a=0;for(;"0123456789".indexOf(e[t+a])>=0;)a++;if(a>0){n.push(i.join(""));for(let n=parseInt(e.substring(t,t+a),10);n>0;n--)i.pop();t+=a}else i.push(e[t]),t++}return n}const Cc={defaultProtocol:"http",events:null,format:Oc,formatHref:Oc,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function Mc(e,n=null){let i=$d({},Cc);e&&(i=$d(i,e instanceof Mc?e.o:e));const t=i.ignoreTags,a=[];for(let e=0;e<t.length;e++)a.push(t[e].toUpperCase());this.o=i,n&&(this.defaultRender=n),this.ignoreTags=a}function Oc(e){return e}function Tc(e,n){this.t="token",this.v=e,this.tk=n}function Ec(e,n){class i extends Tc{constructor(n,i){super(n,i),this.t=e}}for(const e in n)i.prototype[e]=n[e];return i.t=e,i}Mc.prototype={o:Cc,ignoreTags:[],defaultRender:e=>e,check(e){return this.get("validate",e.toString(),e)},get(e,n,i){const t=null!=n;let a=this.o[e];return a&&("object"==typeof a?(a=i.t in a?a[i.t]:Cc[e],"function"==typeof a&&t&&(a=a(n,i))):"function"==typeof a&&t&&(a=a(n,i.t,i)),a)},getObj(e,n,i){let t=this.o[e];return"function"==typeof t&&null!=n&&(t=t(n,i.t,i)),t},render(e){const n=e.render(this);return(this.get("render",null,e)||this.defaultRender)(n,e.t,e)}},Tc.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const n=this.toString(),i=e.get("truncate",n,this),t=e.get("format",n,this);return i&&t.length>i?t.substring(0,i)+"…":t},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=Cc.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const n=this,i=this.toHref(e.get("defaultProtocol")),t=e.get("formatHref",i,this),a=e.get("tagName",i,n),s=this.toFormattedString(e),o={},r=e.get("className",i,n),f=e.get("target",i,n),d=e.get("rel",i,n),l=e.getObj("attributes",i,n),c=e.getObj("events",i,n);return o.href=t,r&&(o.class=r),f&&(o.target=f),d&&(o.rel=d),l&&$d(o,l),{tagName:a,attributes:o,content:s,eventListeners:c}}};const Fc=Ec("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),Ac=Ec("text"),Nc=Ec("nl"),jc=Ec("url",{isLink:!0,toHref(e=Cc.defaultProtocol){return this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==ul&&e[1].t===Wl}}),Rc=e=>new tl(e);function Dc(e,n,i){const t=i[0].s,a=i[i.length-1].e;return new e(n.slice(t,a),i)}const zc=typeof console<"u"&&console&&console.warn||(()=>{}),Pc={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function Bc(e,n=!1){if(Pc.initialized&&zc(`linkifyjs: already initialized - will not register custom scheme "${e}" until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e))throw new Error('linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or "-"\n2. Cannot start or end with "-"\n3. "-" cannot repeat');Pc.customSchemes.push([e,n])}function Lc(){Pc.scanner=function(e=[]){const n={};tl.groups=n;const i=new tl;null==wc&&(wc=Sc(qd)),null==bc&&(bc=Sc(Wd)),rl(i,"'",Pl),rl(i,"{",wl),rl(i,"}",bl),rl(i,"[",_l),rl(i,"]",xl),rl(i,"(",Sl),rl(i,")",Cl),rl(i,"<",Ml),rl(i,">",Ol),rl(i,"(",Tl),rl(i,")",El),rl(i,"「",Fl),rl(i,"」",Al),rl(i,"『",Nl),rl(i,"』",jl),rl(i,"<",Rl),rl(i,">",Dl),rl(i,"&",zl),rl(i,"*",Bl),rl(i,"@",Ll),rl(i,"`",Hl),rl(i,"^",ql),rl(i,":",Wl),rl(i,",",$l),rl(i,"$",Vl),rl(i,".",Ul),rl(i,"=",Gl),rl(i,"!",Kl),rl(i,"-",Jl),rl(i,"%",Yl),rl(i,"|",Ql),rl(i,"+",Xl),rl(i,"#",Zl),rl(i,"?",ec),rl(i,'"',nc),rl(i,"/",ac),rl(i,";",tc),rl(i,"~",sc),rl(i,"_",oc),rl(i,"\\",Il),rl(i,"・",ic);const t=sl(i,hc,gl,{[Vd]:!0});sl(t,hc,t);const a=sl(t,lc,ll,{[Kd]:!0}),s=sl(t,cc,cl,{[Jd]:!0}),o=sl(i,lc,fl,{[Ud]:!0});sl(o,hc,a),sl(o,lc,o),sl(a,hc,a),sl(a,lc,a);const r=sl(i,cc,dl,{[Gd]:!0});sl(r,lc),sl(r,hc,s),sl(r,cc,r),sl(s,hc,s),sl(s,lc),sl(s,cc,s);const f=rl(i,vc,yl,{[el]:!0}),d=rl(i,pc,kl,{[el]:!0}),l=sl(i,mc,kl,{[el]:!0});rl(i,yc,l),rl(d,vc,f),rl(d,yc,l),sl(d,mc,l),rl(l,pc),rl(l,vc),sl(l,mc,l),rl(l,yc,l);const c=sl(i,uc,rc,{[Qd]:!0});rl(c,"#"),sl(c,uc,c),rl(c,gc,c);const u=rl(c,kc);rl(u,"#"),sl(u,uc,c);const h=[[lc,o],[hc,a]],m=[[lc,null],[cc,r],[hc,s]];for(let e=0;e<wc.length;e++)xc(i,wc[e],hl,fl,h);for(let e=0;e<bc.length;e++)xc(i,bc[e],ml,dl,m);il(hl,{tld:!0,ascii:!0},n),il(ml,{utld:!0,alpha:!0},n),xc(i,"file",pl,fl,h),xc(i,"mailto",pl,fl,h),xc(i,"http",vl,fl,h),xc(i,"https",vl,fl,h),xc(i,"ftp",vl,fl,h),xc(i,"ftps",vl,fl,h),il(pl,{scheme:!0,ascii:!0},n),il(vl,{slashscheme:!0,ascii:!0},n),e=e.sort(((e,n)=>e[0]>n[0]?1:-1));for(let n=0;n<e.length;n++){const t=e[n][0],a=e[n][1]?{[Xd]:!0}:{[Zd]:!0};t.indexOf("-")>=0?a[Yd]=!0:lc.test(t)?hc.test(t)?a[Kd]=!0:a[Ud]=!0:a[Vd]=!0,ol(i,t,t,a)}return ol(i,"localhost",ul,{ascii:!0}),i.jd=new tl(fc),{start:i,tokens:$d({groups:n},dc)}}(Pc.customSchemes);for(let e=0;e<Pc.tokenQueue.length;e++)Pc.tokenQueue[e][1]({scanner:Pc.scanner});Pc.parser=function({groups:e}){const n=e.domain.concat([zl,Bl,Ll,Il,Hl,ql,Vl,Gl,Jl,gl,Yl,Ql,Xl,Zl,ac,fc,sc,oc]),i=[Wl,$l,Ul,Kl,Yl,ec,nc,tc,Ml,Ol,wl,bl,xl,_l,Sl,Cl,Tl,El,Fl,Al,Nl,jl,Rl,Dl],t=[zl,Pl,Bl,Il,Hl,ql,Vl,Gl,Jl,wl,bl,Yl,Ql,Xl,Zl,ec,ac,fc,sc,oc],a=Rc(),s=rl(a,sc);al(s,t,s),al(s,e.domain,s);const o=Rc(),r=Rc(),f=Rc();al(a,e.domain,o),al(a,e.scheme,r),al(a,e.slashscheme,f),al(o,t,s),al(o,e.domain,o);const d=rl(o,Ll);rl(s,Ll,d),rl(r,Ll,d),rl(f,Ll,d);const l=rl(s,Ul);al(l,t,s),al(l,e.domain,s);const c=Rc();al(d,e.domain,c),al(c,e.domain,c);const u=rl(c,Ul);al(u,e.domain,c);const h=Rc(Fc);al(u,e.tld,h),al(u,e.utld,h),rl(d,ul,h);const m=rl(c,Jl);rl(m,Jl,m),al(m,e.domain,c),al(h,e.domain,c),rl(h,Ul,u),rl(h,Jl,m);const p=rl(h,Wl);al(p,e.numeric,Fc);const v=rl(o,Jl),g=rl(o,Ul);rl(v,Jl,v),al(v,e.domain,o),al(g,t,s),al(g,e.domain,o);const k=Rc(jc);al(g,e.tld,k),al(g,e.utld,k),al(k,e.domain,o),al(k,t,s),rl(k,Ul,g),rl(k,Jl,v),rl(k,Ll,d);const y=rl(k,Wl),w=Rc(jc);al(y,e.numeric,w);const b=Rc(jc),_=Rc();al(b,n,b),al(b,i,_),al(_,n,b),al(_,i,_),rl(k,ac,b),rl(w,ac,b);const x=rl(r,Wl),S=rl(f,Wl),C=rl(S,ac),M=rl(C,ac);al(r,e.domain,o),rl(r,Ul,g),rl(r,Jl,v),al(f,e.domain,o),rl(f,Ul,g),rl(f,Jl,v),al(x,e.domain,b),rl(x,ac,b),rl(x,ec,b),al(M,e.domain,b),al(M,n,b),rl(M,ac,b);const O=[[wl,bl],[_l,xl],[Sl,Cl],[Ml,Ol],[Tl,El],[Fl,Al],[Nl,jl],[Rl,Dl]];for(let e=0;e<O.length;e++){const[t,a]=O[e],s=rl(b,t);rl(_,t,s),rl(s,a,b);const o=Rc(jc);al(s,n,o);const r=Rc();al(s,i),al(o,n,o),al(o,i,r),al(r,n,o),al(r,i,r),rl(o,a,b),rl(r,a,b)}return rl(a,ul,k),rl(a,yl,Nc),{start:a,tokens:dc}}(Pc.scanner.tokens);for(let e=0;e<Pc.pluginQueue.length;e++)Pc.pluginQueue[e][1]({scanner:Pc.scanner,parser:Pc.parser});return Pc.initialized=!0,Pc}function Ic(e){return Pc.initialized||Lc(),function(e,n,i){let t=i.length,a=0,s=[],o=[];for(;a<t;){let r=e,f=null,d=null,l=0,c=null,u=-1;for(;a<t&&!(f=r.go(i[a].t));)o.push(i[a++]);for(;a<t&&(d=f||r.go(i[a].t));)f=null,r=d,r.accepts()?(u=0,c=r):u>=0&&u++,a++,l++;if(u<0)a-=l,a<t&&(o.push(i[a]),a++);else{o.length>0&&(s.push(Dc(Ac,n,o)),o=[]),a-=u,l-=u;const e=c.t,t=i.slice(a-l,a);s.push(Dc(e,n,t))}}return o.length>0&&s.push(Dc(Ac,n,o)),s}(Pc.parser.start,e,_c(Pc.scanner.start,e))}function Hc(e,n=null,i=null){if(n&&"object"==typeof n){if(i)throw Error(`linkifyjs: Invalid link type ${n}; must be a string`);i=n,n=null}const t=new Mc(i),a=Ic(e),s=[];for(let e=0;e<a.length;e++){const i=a[e];i.isLink&&(!n||i.t===n)&&t.check(i)&&s.push(i.toFormattedObject(t))}return s}function qc(e){return new Xn({key:new ni("autolink"),appendTransaction:(n,i,t)=>{const a=n.some((e=>e.docChanged))&&!i.doc.eq(t.doc),s=n.some((e=>e.getMeta("preventAutolink")));if(!a||s)return;const{tr:o}=t,r=function(e,n){const i=new An(e);return n.forEach((e=>{e.steps.forEach((e=>{i.step(e)}))})),i}(i.doc,[...n]);return function(e){const{mapping:n,steps:i}=e,t=[];return n.maps.forEach(((e,a)=>{const s=[];if(e.ranges.length)e.forEach(((e,n)=>{s.push({from:e,to:n})}));else{const{from:e,to:n}=i[a];if(void 0===e||void 0===n)return;s.push({from:e,to:n})}s.forEach((({from:e,to:i})=>{const s=n.slice(a).map(e,-1),o=n.slice(a).map(i),r=n.invert().map(s,-1),f=n.invert().map(o);t.push({oldRange:{from:r,to:f},newRange:{from:s,to:o}})}))})),$o(t)}(r).forEach((({newRange:n})=>{const i=function(e,n,i){const t=[];return e.nodesBetween(n.from,n.to,((e,n)=>{i(e)&&t.push({node:e,pos:n})})),t}(t.doc,n,(e=>e.isTextblock));let a,s;if(i.length>1?(a=i[0],s=t.doc.textBetween(a.pos,a.pos+a.node.nodeSize,void 0," ")):i.length&&t.doc.textBetween(n.from,n.to," "," ").endsWith(" ")&&(a=i[0],s=t.doc.textBetween(a.pos,n.to,void 0," ")),a&&s){const n=s.split(" ").filter((e=>""!==e));if(n.length<=0)return!1;const i=n[n.length-1],r=a.pos+s.lastIndexOf(i);if(!i)return!1;const f=Ic(i).map((n=>n.toObject(e.defaultProtocol)));if(!function(e){return 1===e.length?e[0].isLink:!(3!==e.length||!e[1].isLink)&&["()","[]"].includes(e[0].value+e[2].value)}(f))return!1;f.filter((e=>e.isLink)).map((e=>({...e,from:r+e.start+1,to:r+e.end+1}))).filter((e=>!t.schema.marks.code||!t.doc.rangeHasMark(e.from,e.to,t.schema.marks.code))).filter((n=>e.validate(n.value))).filter((n=>e.shouldAutoLink(n.value))).forEach((n=>{Vo(n.from,n.to,t.doc).some((n=>n.mark.type===e.type))||o.addMark(n.from,n.to,e.type.create({href:n.href}))}))}})),o.steps.length?o:void 0}})}Ic.scan=_c;const Wc=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;function $c(e,n){const i=["http","https","ftp","ftps","mailto","tel","callto","sms","cid","xmpp"];return n&&n.forEach((e=>{const n="string"==typeof e?e:e.scheme;n&&i.push(n)})),!e||e.replace(Wc,"").match(new RegExp(`^(?:(?:${i.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`,"i"))}const Vc=mo.create({name:"link",priority:1e3,keepOnSplit:!1,exitable:!0,onCreate(){this.options.validate&&!this.options.shouldAutoLink&&(this.options.shouldAutoLink=this.options.validate,console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")),this.options.protocols.forEach((e=>{"string"!=typeof e?Bc(e.scheme,e.optionalSlashes):Bc(e)}))},onDestroy(){tl.groups={},Pc.scanner=null,Pc.parser=null,Pc.tokenQueue=[],Pc.pluginQueue=[],Pc.customSchemes=[],Pc.initialized=!1},inclusive(){return this.options.autolink},addOptions:()=>({openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],defaultProtocol:"http",HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},isAllowedUri:(e,n)=>!!$c(e,n.protocols),validate:e=>!!e,shouldAutoLink:e=>!!e}),addAttributes(){return{href:{default:null,parseHTML:e=>e.getAttribute("href")},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:"a[href]",getAttrs:e=>{const n=e.getAttribute("href");return!(!n||!this.options.isAllowedUri(n,{defaultValidate:e=>!!$c(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol}))&&null}}]},renderHTML({HTMLAttributes:e}){return this.options.isAllowedUri(e.href,{defaultValidate:e=>!!$c(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})?["a",Ys(this.options.HTMLAttributes,e),0]:["a",Ys(this.options.HTMLAttributes,{...e,href:""}),0]},addCommands(){return{setLink:e=>({chain:n})=>{const{href:i}=e;return!!this.options.isAllowedUri(i,{defaultValidate:e=>!!$c(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})&&n().setMark(this.name,e).setMeta("preventAutolink",!0).run()},toggleLink:e=>({chain:n})=>{const{href:i}=e;return!!this.options.isAllowedUri(i,{defaultValidate:e=>!!$c(e,this.options.protocols),protocols:this.options.protocols,defaultProtocol:this.options.defaultProtocol})&&n().toggleMark(this.name,e,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()},unsetLink:()=>({chain:e})=>e().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[hr({find:e=>{const n=[];if(e){const{protocols:i,defaultProtocol:t}=this.options,a=Hc(e).filter((e=>e.isLink&&this.options.isAllowedUri(e.value,{defaultValidate:e=>!!$c(e,i),protocols:i,defaultProtocol:t})));a.length&&a.forEach((e=>n.push({text:e.value,data:{href:e.href},index:e.start})))}return n},type:this.type,getAttributes:e=>{var n;return{href:null===(n=e.data)||void 0===n?void 0:n.href}}})]},addProseMirrorPlugins(){const e=[],{protocols:n,defaultProtocol:i}=this.options;return this.options.autolink&&e.push(qc({type:this.type,defaultProtocol:this.options.defaultProtocol,validate:e=>this.options.isAllowedUri(e,{defaultValidate:e=>!!$c(e,n),protocols:n,defaultProtocol:i}),shouldAutoLink:this.options.shouldAutoLink})),!0===this.options.openOnClick&&e.push(function(e){return new Xn({key:new ni("handleClickLink"),props:{handleClick:(n,i,t)=>{var a,s;if(0!==t.button||!n.editable)return!1;let o=t.target;const r=[];for(;"DIV"!==o.nodeName;)r.push(o),o=o.parentNode;if(!r.find((e=>"A"===e.nodeName)))return!1;const f=Wo(n.state,e.type.name),d=t.target,l=null!==(a=null==d?void 0:d.href)&&void 0!==a?a:f.href,c=null!==(s=null==d?void 0:d.target)&&void 0!==s?s:f.target;return!(!d||!l||(window.open(l,c),0))}}})}({type:this.type})),this.options.linkOnPaste&&e.push(function(e){return new Xn({key:new ni("handlePasteLink"),props:{handlePaste:(n,i,t)=>{const{state:a}=n,{selection:s}=a,{empty:o}=s;if(o)return!1;let r="";t.content.forEach((e=>{r+=e.textContent}));const f=Hc(r,{defaultProtocol:e.defaultProtocol}).find((e=>e.isLink&&e.value===r));return!(!r||!f)&&e.editor.commands.setMark(e.type,{href:f.href})}}})}({editor:this.editor,defaultProtocol:this.options.defaultProtocol,type:this.type})),e}}),Uc=ur.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",Ys(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),Gc="textStyle",Kc=/^(\d+)\.\s$/,Jc=ur.create({name:"orderedList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes:()=>({start:{default:1,parseHTML:e=>e.hasAttribute("start")?parseInt(e.getAttribute("start")||"",10):1},type:{default:null,parseHTML:e=>e.getAttribute("type")}}),parseHTML:()=>[{tag:"ol"}],renderHTML({HTMLAttributes:e}){const{start:n,...i}=e;return 1===n?["ol",Ys(this.options.HTMLAttributes,i),0]:["ol",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleOrderedList:()=>({commands:e,chain:n})=>this.options.keepAttributes?n().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(Gc)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=cr({find:Kc,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,n)=>n.childCount+n.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(e=cr({find:Kc,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(Gc)}),joinPredicate:(e,n)=>n.childCount+n.attrs.start===+e[1],editor:this.editor})),[e]}}),Yc=ur.create({name:"doc",topNode:!0,content:"block+"}),Qc=ur.create({name:"paragraph",priority:1e3,addOptions:()=>({HTMLAttributes:{}}),group:"block",content:"inline*",parseHTML:()=>[{tag:"p"}],renderHTML({HTMLAttributes:e}){return["p",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),Xc=ur.create({name:"text",group:"inline"}),Zc=mo.create({name:"textStyle",priority:101,addOptions:()=>({HTMLAttributes:{},mergeNestedSpanStyles:!1}),parseHTML(){return[{tag:"span",getAttrs:e=>!!e.hasAttribute("style")&&(this.options.mergeNestedSpanStyles&&(e=>{if(!e.children.length)return;const n=e.querySelectorAll("span");n&&n.forEach((e=>{var n,i;const t=e.getAttribute("style"),a=null===(i=null===(n=e.parentElement)||void 0===n?void 0:n.closest("span"))||void 0===i?void 0:i.getAttribute("style");e.setAttribute("style",`${a};${t}`)}))})(e),{})}]},renderHTML({HTMLAttributes:e}){return["span",Ys(this.options.HTMLAttributes,e),0]},addCommands(){return{removeEmptyTextStyle:()=>({tr:e})=>{const{selection:n}=e;return e.doc.nodesBetween(n.from,n.to,((n,i)=>{if(n.isTextblock)return!0;n.marks.filter((e=>e.type===this.type)).some((e=>Object.values(e.attrs).some((e=>!!e))))||e.removeMark(i,i+n.nodeSize,this.type)})),!0}}}});var eu=wo.create({name:"fontSize",addOptions:function(){return{types:["textStyle"]}},addGlobalAttributes:function(){return[{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:function(e){return e.style.fontSize.replace(/['"]+/g,"")},renderHTML:function(e){return e.fontSize?{style:"font-size: "+e.fontSize}:{}}}}}]},addCommands:function(){return{setFontSize:function(e){return function(n){return(0,n.chain)().setMark("textStyle",{fontSize:e}).run()}},unsetFontSize:function(){return function(e){return(0,e.chain)().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()}}}}});const nu=[Yc,Qc,Xc,Zc],iu=[zd.configure({levels:[1,2]}),Uc,Dd,Jc,Vc,Nd,Hd,eu],tu="_link-dialog-container_jjs9w_1",au=({open:e,setOpen:n,editor:i,locale:a})=>{const[s,o]=t(""),r=c((()=>"no"===a),[a]);f((()=>{if(e){const{from:e,to:n}=i.state.selection;let t=null;i.state.doc.nodesBetween(e-1,n,(e=>{if(e.marks){const n=e.marks.find((e=>"link"===e.type.name));n&&(t=n.attrs.href)}})),o(t||"");const a=document.querySelector('[data-test="link-input-field"]');null==a||a.focus()}}),[e,i]);return E.jsx(y,{open:e,dataTest:"link-modal-rte",onClose:()=>n(!1),className:"z-[99]",dialogTitle:E.jsx("div",{className:"text-gray-700",children:r?"Legg til lenke":"Add link"}),children:E.jsxs("div",{className:tu,children:[E.jsx("div",{className:"link-input-field",children:E.jsx(p,{autoFocus:!0,multiline:!0,className:"w-full",dataTest:"link-input-field",size:"small",sx:{"& .MuiInputBase-root":{minHeight:64,alignItems:"start"}},value:s,onChange:e=>o(e.target.value)})}),E.jsxs("div",{className:"flex gap-2 p-0 w-full justify-end",children:[E.jsx(g,{dataTest:"delete-customer-reject-button",size:"medium",variant:"outlined",onClick:()=>{n(!1),o("")},children:r?"Avbryt":"Cancel"}),E.jsx(g,{dataTest:"delete-customer-confirm-button",size:"medium",variant:"contained",onClick:()=>{i.chain().focus().setLink({href:s}).run(),n(!1),o("")},children:r?"Legg til lenke":"Add link"})]})]})})},su=wo.create({name:"placeholder",addOptions:()=>({emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}),addProseMirrorPlugins(){return[new Xn({key:new ni("placeholder"),props:{decorations:({doc:e,selection:n})=>{const i=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:t}=n,a=[];if(!i)return null;const s=this.editor.isEmpty;return e.descendants(((e,n)=>{const i=t>=n&&t<=n+e.nodeSize,o=!e.isLeaf&&Jo(e);if((i||!this.options.showOnlyCurrent)&&o){const t=[this.options.emptyNodeClass];s&&t.push(this.options.emptyEditorClass);const o=Ba.node(n,n+e.nodeSize,{class:t.join(" "),"data-placeholder":"function"==typeof this.options.placeholder?this.options.placeholder({editor:this.editor,node:e,pos:n,hasAnchor:i}):this.options.placeholder});a.push(o)}return this.options.includeChildren})),Ha.create(e,a)}}})]}}),ou={categories:[{id:"people",emojis:["grinning","smiley","smile","grin","laughing","sweat_smile","rolling_on_the_floor_laughing","joy","slightly_smiling_face","upside_down_face","melting_face","wink","blush","innocent","smiling_face_with_3_hearts","heart_eyes","star-struck","kissing_heart","kissing","relaxed","kissing_closed_eyes","kissing_smiling_eyes","smiling_face_with_tear","yum","stuck_out_tongue","stuck_out_tongue_winking_eye","zany_face","stuck_out_tongue_closed_eyes","money_mouth_face","hugging_face","face_with_hand_over_mouth","face_with_open_eyes_and_hand_over_mouth","face_with_peeking_eye","shushing_face","thinking_face","saluting_face","zipper_mouth_face","face_with_raised_eyebrow","neutral_face","expressionless","no_mouth","dotted_line_face","face_in_clouds","smirk","unamused","face_with_rolling_eyes","grimacing","face_exhaling","lying_face","shaking_face","relieved","pensive","sleepy","drooling_face","sleeping","mask","face_with_thermometer","face_with_head_bandage","nauseated_face","face_vomiting","sneezing_face","hot_face","cold_face","woozy_face","dizzy_face","face_with_spiral_eyes","exploding_head","face_with_cowboy_hat","partying_face","disguised_face","sunglasses","nerd_face","face_with_monocle","confused","face_with_diagonal_mouth","worried","slightly_frowning_face","white_frowning_face","open_mouth","hushed","astonished","flushed","pleading_face","face_holding_back_tears","frowning","anguished","fearful","cold_sweat","disappointed_relieved","cry","sob","scream","confounded","persevere","disappointed","sweat","weary","tired_face","yawning_face","triumph","rage","angry","face_with_symbols_on_mouth","smiling_imp","imp","skull","skull_and_crossbones","hankey","clown_face","japanese_ogre","japanese_goblin","ghost","alien","space_invader","wave","raised_back_of_hand","raised_hand_with_fingers_splayed","hand","spock-hand","rightwards_hand","leftwards_hand","palm_down_hand","palm_up_hand","leftwards_pushing_hand","rightwards_pushing_hand","ok_hand","pinched_fingers","pinching_hand","v","crossed_fingers","hand_with_index_finger_and_thumb_crossed","i_love_you_hand_sign","the_horns","call_me_hand","point_left","point_right","point_up_2","middle_finger","point_down","point_up","index_pointing_at_the_viewer","+1","-1","fist","facepunch","left-facing_fist","right-facing_fist","clap","raised_hands","heart_hands","open_hands","palms_up_together","handshake","pray","writing_hand","nail_care","selfie","muscle","mechanical_arm","mechanical_leg","leg","foot","ear","ear_with_hearing_aid","nose","brain","anatomical_heart","lungs","tooth","bone","eyes","eye","tongue","lips","biting_lip","baby","child","boy","girl","adult","person_with_blond_hair","man","bearded_person","man_with_beard","woman_with_beard","red_haired_man","curly_haired_man","white_haired_man","bald_man","woman","red_haired_woman","red_haired_person","curly_haired_woman","curly_haired_person","white_haired_woman","white_haired_person","bald_woman","bald_person","blond-haired-woman","blond-haired-man","older_adult","older_man","older_woman","person_frowning","man-frowning","woman-frowning","person_with_pouting_face","man-pouting","woman-pouting","no_good","man-gesturing-no","woman-gesturing-no","ok_woman","man-gesturing-ok","woman-gesturing-ok","information_desk_person","man-tipping-hand","woman-tipping-hand","raising_hand","man-raising-hand","woman-raising-hand","deaf_person","deaf_man","deaf_woman","bow","man-bowing","woman-bowing","face_palm","man-facepalming","woman-facepalming","shrug","man-shrugging","woman-shrugging","health_worker","male-doctor","female-doctor","student","male-student","female-student","teacher","male-teacher","female-teacher","judge","male-judge","female-judge","farmer","male-farmer","female-farmer","cook","male-cook","female-cook","mechanic","male-mechanic","female-mechanic","factory_worker","male-factory-worker","female-factory-worker","office_worker","male-office-worker","female-office-worker","scientist","male-scientist","female-scientist","technologist","male-technologist","female-technologist","singer","male-singer","female-singer","artist","male-artist","female-artist","pilot","male-pilot","female-pilot","astronaut","male-astronaut","female-astronaut","firefighter","male-firefighter","female-firefighter","cop","male-police-officer","female-police-officer","sleuth_or_spy","male-detective","female-detective","guardsman","male-guard","female-guard","ninja","construction_worker","male-construction-worker","female-construction-worker","person_with_crown","prince","princess","man_with_turban","man-wearing-turban","woman-wearing-turban","man_with_gua_pi_mao","person_with_headscarf","person_in_tuxedo","man_in_tuxedo","woman_in_tuxedo","bride_with_veil","man_with_veil","woman_with_veil","pregnant_woman","pregnant_man","pregnant_person","breast-feeding","woman_feeding_baby","man_feeding_baby","person_feeding_baby","angel","santa","mrs_claus","mx_claus","superhero","male_superhero","female_superhero","supervillain","male_supervillain","female_supervillain","mage","male_mage","female_mage","fairy","male_fairy","female_fairy","vampire","male_vampire","female_vampire","merperson","merman","mermaid","elf","male_elf","female_elf","genie","male_genie","female_genie","zombie","male_zombie","female_zombie","troll","massage","man-getting-massage","woman-getting-massage","haircut","man-getting-haircut","woman-getting-haircut","walking","man-walking","woman-walking","standing_person","man_standing","woman_standing","kneeling_person","man_kneeling","woman_kneeling","person_with_probing_cane","man_with_probing_cane","woman_with_probing_cane","person_in_motorized_wheelchair","man_in_motorized_wheelchair","woman_in_motorized_wheelchair","person_in_manual_wheelchair","man_in_manual_wheelchair","woman_in_manual_wheelchair","runner","man-running","woman-running","dancer","man_dancing","man_in_business_suit_levitating","dancers","men-with-bunny-ears-partying","women-with-bunny-ears-partying","person_in_steamy_room","man_in_steamy_room","woman_in_steamy_room","person_climbing","man_climbing","woman_climbing","fencer","horse_racing","skier","snowboarder","golfer","man-golfing","woman-golfing","surfer","man-surfing","woman-surfing","rowboat","man-rowing-boat","woman-rowing-boat","swimmer","man-swimming","woman-swimming","person_with_ball","man-bouncing-ball","woman-bouncing-ball","weight_lifter","man-lifting-weights","woman-lifting-weights","bicyclist","man-biking","woman-biking","mountain_bicyclist","man-mountain-biking","woman-mountain-biking","person_doing_cartwheel","man-cartwheeling","woman-cartwheeling","wrestlers","man-wrestling","woman-wrestling","water_polo","man-playing-water-polo","woman-playing-water-polo","handball","man-playing-handball","woman-playing-handball","juggling","man-juggling","woman-juggling","person_in_lotus_position","man_in_lotus_position","woman_in_lotus_position","bath","sleeping_accommodation","people_holding_hands","two_women_holding_hands","man_and_woman_holding_hands","two_men_holding_hands","couplekiss","woman-kiss-man","man-kiss-man","woman-kiss-woman","couple_with_heart","woman-heart-man","man-heart-man","woman-heart-woman","family","man-woman-boy","man-woman-girl","man-woman-girl-boy","man-woman-boy-boy","man-woman-girl-girl","man-man-boy","man-man-girl","man-man-girl-boy","man-man-boy-boy","man-man-girl-girl","woman-woman-boy","woman-woman-girl","woman-woman-girl-boy","woman-woman-boy-boy","woman-woman-girl-girl","man-boy","man-boy-boy","man-girl","man-girl-boy","man-girl-girl","woman-boy","woman-boy-boy","woman-girl","woman-girl-boy","woman-girl-girl","speaking_head_in_silhouette","bust_in_silhouette","busts_in_silhouette","people_hugging","footprints","robot_face","smiley_cat","smile_cat","joy_cat","heart_eyes_cat","smirk_cat","kissing_cat","scream_cat","crying_cat_face","pouting_cat","see_no_evil","hear_no_evil","speak_no_evil","love_letter","cupid","gift_heart","sparkling_heart","heartpulse","heartbeat","revolving_hearts","two_hearts","heart_decoration","heavy_heart_exclamation_mark_ornament","broken_heart","heart_on_fire","mending_heart","heart","pink_heart","orange_heart","yellow_heart","green_heart","blue_heart","light_blue_heart","purple_heart","brown_heart","black_heart","grey_heart","white_heart","kiss","100","anger","boom","dizzy","sweat_drops","dash","hole","speech_balloon","eye-in-speech-bubble","left_speech_bubble","right_anger_bubble","thought_balloon","zzz"]},{id:"nature",emojis:["monkey_face","monkey","gorilla","orangutan","dog","dog2","guide_dog","service_dog","poodle","wolf","fox_face","raccoon","cat","cat2","black_cat","lion_face","tiger","tiger2","leopard","horse","moose","donkey","racehorse","unicorn_face","zebra_face","deer","bison","cow","ox","water_buffalo","cow2","pig","pig2","boar","pig_nose","ram","sheep","goat","dromedary_camel","camel","llama","giraffe_face","elephant","mammoth","rhinoceros","hippopotamus","mouse","mouse2","rat","hamster","rabbit","rabbit2","chipmunk","beaver","hedgehog","bat","bear","polar_bear","koala","panda_face","sloth","otter","skunk","kangaroo","badger","feet","turkey","chicken","rooster","hatching_chick","baby_chick","hatched_chick","bird","penguin","dove_of_peace","eagle","duck","swan","owl","dodo","feather","flamingo","peacock","parrot","wing","black_bird","goose","frog","crocodile","turtle","lizard","snake","dragon_face","dragon","sauropod","t-rex","whale","whale2","dolphin","seal","fish","tropical_fish","blowfish","shark","octopus","shell","coral","jellyfish","snail","butterfly","bug","ant","bee","beetle","ladybug","cricket","cockroach","spider","spider_web","scorpion","mosquito","fly","worm","microbe","bouquet","cherry_blossom","white_flower","lotus","rosette","rose","wilted_flower","hibiscus","sunflower","blossom","tulip","hyacinth","seedling","potted_plant","evergreen_tree","deciduous_tree","palm_tree","cactus","ear_of_rice","herb","shamrock","four_leaf_clover","maple_leaf","fallen_leaf","leaves","empty_nest","nest_with_eggs","mushroom"]},{id:"foods",emojis:["grapes","melon","watermelon","tangerine","lemon","banana","pineapple","mango","apple","green_apple","pear","peach","cherries","strawberry","blueberries","kiwifruit","tomato","olive","coconut","avocado","eggplant","potato","carrot","corn","hot_pepper","bell_pepper","cucumber","leafy_green","broccoli","garlic","onion","peanuts","beans","chestnut","ginger_root","pea_pod","bread","croissant","baguette_bread","flatbread","pretzel","bagel","pancakes","waffle","cheese_wedge","meat_on_bone","poultry_leg","cut_of_meat","bacon","hamburger","fries","pizza","hotdog","sandwich","taco","burrito","tamale","stuffed_flatbread","falafel","egg","fried_egg","shallow_pan_of_food","stew","fondue","bowl_with_spoon","green_salad","popcorn","butter","salt","canned_food","bento","rice_cracker","rice_ball","rice","curry","ramen","spaghetti","sweet_potato","oden","sushi","fried_shrimp","fish_cake","moon_cake","dango","dumpling","fortune_cookie","takeout_box","crab","lobster","shrimp","squid","oyster","icecream","shaved_ice","ice_cream","doughnut","cookie","birthday","cake","cupcake","pie","chocolate_bar","candy","lollipop","custard","honey_pot","baby_bottle","glass_of_milk","coffee","teapot","tea","sake","champagne","wine_glass","cocktail","tropical_drink","beer","beers","clinking_glasses","tumbler_glass","pouring_liquid","cup_with_straw","bubble_tea","beverage_box","mate_drink","ice_cube","chopsticks","knife_fork_plate","fork_and_knife","spoon","hocho","jar","amphora"]},{id:"activity",emojis:["jack_o_lantern","christmas_tree","fireworks","sparkler","firecracker","sparkles","balloon","tada","confetti_ball","tanabata_tree","bamboo","dolls","flags","wind_chime","rice_scene","red_envelope","ribbon","gift","reminder_ribbon","admission_tickets","ticket","medal","trophy","sports_medal","first_place_medal","second_place_medal","third_place_medal","soccer","baseball","softball","basketball","volleyball","football","rugby_football","tennis","flying_disc","bowling","cricket_bat_and_ball","field_hockey_stick_and_ball","ice_hockey_stick_and_puck","lacrosse","table_tennis_paddle_and_ball","badminton_racquet_and_shuttlecock","boxing_glove","martial_arts_uniform","goal_net","golf","ice_skate","fishing_pole_and_fish","diving_mask","running_shirt_with_sash","ski","sled","curling_stone","dart","yo-yo","kite","gun","8ball","crystal_ball","magic_wand","video_game","joystick","slot_machine","game_die","jigsaw","teddy_bear","pinata","mirror_ball","nesting_dolls","spades","hearts","diamonds","clubs","chess_pawn","black_joker","mahjong","flower_playing_cards","performing_arts","frame_with_picture","art","thread","sewing_needle","yarn","knot"]},{id:"places",emojis:["earth_africa","earth_americas","earth_asia","globe_with_meridians","world_map","japan","compass","snow_capped_mountain","mountain","volcano","mount_fuji","camping","beach_with_umbrella","desert","desert_island","national_park","stadium","classical_building","building_construction","bricks","rock","wood","hut","house_buildings","derelict_house_building","house","house_with_garden","office","post_office","european_post_office","hospital","bank","hotel","love_hotel","convenience_store","school","department_store","factory","japanese_castle","european_castle","wedding","tokyo_tower","statue_of_liberty","church","mosque","hindu_temple","synagogue","shinto_shrine","kaaba","fountain","tent","foggy","night_with_stars","cityscape","sunrise_over_mountains","sunrise","city_sunset","city_sunrise","bridge_at_night","hotsprings","carousel_horse","playground_slide","ferris_wheel","roller_coaster","barber","circus_tent","steam_locomotive","railway_car","bullettrain_side","bullettrain_front","train2","metro","light_rail","station","tram","monorail","mountain_railway","train","bus","oncoming_bus","trolleybus","minibus","ambulance","fire_engine","police_car","oncoming_police_car","taxi","oncoming_taxi","car","oncoming_automobile","blue_car","pickup_truck","truck","articulated_lorry","tractor","racing_car","racing_motorcycle","motor_scooter","manual_wheelchair","motorized_wheelchair","auto_rickshaw","bike","scooter","skateboard","roller_skate","busstop","motorway","railway_track","oil_drum","fuelpump","wheel","rotating_light","traffic_light","vertical_traffic_light","octagonal_sign","construction","anchor","ring_buoy","boat","canoe","speedboat","passenger_ship","ferry","motor_boat","ship","airplane","small_airplane","airplane_departure","airplane_arriving","parachute","seat","helicopter","suspension_railway","mountain_cableway","aerial_tramway","satellite","rocket","flying_saucer","bellhop_bell","luggage","hourglass","hourglass_flowing_sand","watch","alarm_clock","stopwatch","timer_clock","mantelpiece_clock","clock12","clock1230","clock1","clock130","clock2","clock230","clock3","clock330","clock4","clock430","clock5","clock530","clock6","clock630","clock7","clock730","clock8","clock830","clock9","clock930","clock10","clock1030","clock11","clock1130","new_moon","waxing_crescent_moon","first_quarter_moon","moon","full_moon","waning_gibbous_moon","last_quarter_moon","waning_crescent_moon","crescent_moon","new_moon_with_face","first_quarter_moon_with_face","last_quarter_moon_with_face","thermometer","sunny","full_moon_with_face","sun_with_face","ringed_planet","star","star2","stars","milky_way","cloud","partly_sunny","thunder_cloud_and_rain","mostly_sunny","barely_sunny","partly_sunny_rain","rain_cloud","snow_cloud","lightning","tornado","fog","wind_blowing_face","cyclone","rainbow","closed_umbrella","umbrella","umbrella_with_rain_drops","umbrella_on_ground","zap","snowflake","snowman","snowman_without_snow","comet","fire","droplet","ocean"]},{id:"objects",emojis:["eyeglasses","dark_sunglasses","goggles","lab_coat","safety_vest","necktie","shirt","jeans","scarf","gloves","coat","socks","dress","kimono","sari","one-piece_swimsuit","briefs","shorts","bikini","womans_clothes","folding_hand_fan","purse","handbag","pouch","shopping_bags","school_satchel","thong_sandal","mans_shoe","athletic_shoe","hiking_boot","womans_flat_shoe","high_heel","sandal","ballet_shoes","boot","hair_pick","crown","womans_hat","tophat","mortar_board","billed_cap","military_helmet","helmet_with_white_cross","prayer_beads","lipstick","ring","gem","mute","speaker","sound","loud_sound","loudspeaker","mega","postal_horn","bell","no_bell","musical_score","musical_note","notes","studio_microphone","level_slider","control_knobs","microphone","headphones","radio","saxophone","accordion","guitar","musical_keyboard","trumpet","violin","banjo","drum_with_drumsticks","long_drum","maracas","flute","iphone","calling","phone","telephone_receiver","pager","fax","battery","low_battery","electric_plug","computer","desktop_computer","printer","keyboard","three_button_mouse","trackball","minidisc","floppy_disk","cd","dvd","abacus","movie_camera","film_frames","film_projector","clapper","tv","camera","camera_with_flash","video_camera","vhs","mag","mag_right","candle","bulb","flashlight","izakaya_lantern","diya_lamp","notebook_with_decorative_cover","closed_book","book","green_book","blue_book","orange_book","books","notebook","ledger","page_with_curl","scroll","page_facing_up","newspaper","rolled_up_newspaper","bookmark_tabs","bookmark","label","moneybag","coin","yen","dollar","euro","pound","money_with_wings","credit_card","receipt","chart","email","e-mail","incoming_envelope","envelope_with_arrow","outbox_tray","inbox_tray","package","mailbox","mailbox_closed","mailbox_with_mail","mailbox_with_no_mail","postbox","ballot_box_with_ballot","pencil2","black_nib","lower_left_fountain_pen","lower_left_ballpoint_pen","lower_left_paintbrush","lower_left_crayon","memo","briefcase","file_folder","open_file_folder","card_index_dividers","date","calendar","spiral_note_pad","spiral_calendar_pad","card_index","chart_with_upwards_trend","chart_with_downwards_trend","bar_chart","clipboard","pushpin","round_pushpin","paperclip","linked_paperclips","straight_ruler","triangular_ruler","scissors","card_file_box","file_cabinet","wastebasket","lock","unlock","lock_with_ink_pen","closed_lock_with_key","key","old_key","hammer","axe","pick","hammer_and_pick","hammer_and_wrench","dagger_knife","crossed_swords","bomb","boomerang","bow_and_arrow","shield","carpentry_saw","wrench","screwdriver","nut_and_bolt","gear","compression","scales","probing_cane","link","chains","hook","toolbox","magnet","ladder","alembic","test_tube","petri_dish","dna","microscope","telescope","satellite_antenna","syringe","drop_of_blood","pill","adhesive_bandage","crutch","stethoscope","x-ray","door","elevator","mirror","window","bed","couch_and_lamp","chair","toilet","plunger","shower","bathtub","mouse_trap","razor","lotion_bottle","safety_pin","broom","basket","roll_of_paper","bucket","soap","bubbles","toothbrush","sponge","fire_extinguisher","shopping_trolley","smoking","coffin","headstone","funeral_urn","nazar_amulet","hamsa","moyai","placard","identification_card"]},{id:"symbols",emojis:["atm","put_litter_in_its_place","potable_water","wheelchair","mens","womens","restroom","baby_symbol","wc","passport_control","customs","baggage_claim","left_luggage","warning","children_crossing","no_entry","no_entry_sign","no_bicycles","no_smoking","do_not_litter","non-potable_water","no_pedestrians","no_mobile_phones","underage","radioactive_sign","biohazard_sign","arrow_up","arrow_upper_right","arrow_right","arrow_lower_right","arrow_down","arrow_lower_left","arrow_left","arrow_upper_left","arrow_up_down","left_right_arrow","leftwards_arrow_with_hook","arrow_right_hook","arrow_heading_up","arrow_heading_down","arrows_clockwise","arrows_counterclockwise","back","end","on","soon","top","place_of_worship","atom_symbol","om_symbol","star_of_david","wheel_of_dharma","yin_yang","latin_cross","orthodox_cross","star_and_crescent","peace_symbol","menorah_with_nine_branches","six_pointed_star","khanda","aries","taurus","gemini","cancer","leo","virgo","libra","scorpius","sagittarius","capricorn","aquarius","pisces","ophiuchus","twisted_rightwards_arrows","repeat","repeat_one","arrow_forward","fast_forward","black_right_pointing_double_triangle_with_vertical_bar","black_right_pointing_triangle_with_double_vertical_bar","arrow_backward","rewind","black_left_pointing_double_triangle_with_vertical_bar","arrow_up_small","arrow_double_up","arrow_down_small","arrow_double_down","double_vertical_bar","black_square_for_stop","black_circle_for_record","eject","cinema","low_brightness","high_brightness","signal_strength","wireless","vibration_mode","mobile_phone_off","female_sign","male_sign","transgender_symbol","heavy_multiplication_x","heavy_plus_sign","heavy_minus_sign","heavy_division_sign","heavy_equals_sign","infinity","bangbang","interrobang","question","grey_question","grey_exclamation","exclamation","wavy_dash","currency_exchange","heavy_dollar_sign","medical_symbol","recycle","fleur_de_lis","trident","name_badge","beginner","o","white_check_mark","ballot_box_with_check","heavy_check_mark","x","negative_squared_cross_mark","curly_loop","loop","part_alternation_mark","eight_spoked_asterisk","eight_pointed_black_star","sparkle","copyright","registered","tm","hash","keycap_star","zero","one","two","three","four","five","six","seven","eight","nine","keycap_ten","capital_abcd","abcd","1234","symbols","abc","a","ab","b","cl","cool","free","information_source","id","m","new","ng","o2","ok","parking","sos","up","vs","koko","sa","u6708","u6709","u6307","ideograph_advantage","u5272","u7121","u7981","accept","u7533","u5408","u7a7a","congratulations","secret","u55b6","u6e80","red_circle","large_orange_circle","large_yellow_circle","large_green_circle","large_blue_circle","large_purple_circle","large_brown_circle","black_circle","white_circle","large_red_square","large_orange_square","large_yellow_square","large_green_square","large_blue_square","large_purple_square","large_brown_square","black_large_square","white_large_square","black_medium_square","white_medium_square","black_medium_small_square","white_medium_small_square","black_small_square","white_small_square","large_orange_diamond","large_blue_diamond","small_orange_diamond","small_blue_diamond","small_red_triangle","small_red_triangle_down","diamond_shape_with_a_dot_inside","radio_button","white_square_button","black_square_button"]},{id:"flags",emojis:["checkered_flag","cn","crossed_flags","de","es","flag-ac","flag-ad","flag-ae","flag-af","flag-ag","flag-ai","flag-al","flag-am","flag-ao","flag-aq","flag-ar","flag-as","flag-at","flag-au","flag-aw","flag-ax","flag-az","flag-ba","flag-bb","flag-bd","flag-be","flag-bf","flag-bg","flag-bh","flag-bi","flag-bj","flag-bl","flag-bm","flag-bn","flag-bo","flag-bq","flag-br","flag-bs","flag-bt","flag-bv","flag-bw","flag-by","flag-bz","flag-ca","flag-cc","flag-cd","flag-cf","flag-cg","flag-ch","flag-ci","flag-ck","flag-cl","flag-cm","flag-co","flag-cp","flag-cr","flag-cu","flag-cv","flag-cw","flag-cx","flag-cy","flag-cz","flag-dg","flag-dj","flag-dk","flag-dm","flag-do","flag-dz","flag-ea","flag-ec","flag-ee","flag-eg","flag-eh","flag-england","flag-er","flag-et","flag-eu","flag-fi","flag-fj","flag-fk","flag-fm","flag-fo","flag-ga","flag-gd","flag-ge","flag-gf","flag-gg","flag-gh","flag-gi","flag-gl","flag-gm","flag-gn","flag-gp","flag-gq","flag-gr","flag-gs","flag-gt","flag-gu","flag-gw","flag-gy","flag-hk","flag-hm","flag-hn","flag-hr","flag-ht","flag-hu","flag-ic","flag-id","flag-ie","flag-il","flag-im","flag-in","flag-io","flag-iq","flag-ir","flag-is","flag-je","flag-jm","flag-jo","flag-ke","flag-kg","flag-kh","flag-ki","flag-km","flag-kn","flag-kp","flag-kw","flag-ky","flag-kz","flag-la","flag-lb","flag-lc","flag-li","flag-lk","flag-lr","flag-ls","flag-lt","flag-lu","flag-lv","flag-ly","flag-ma","flag-mc","flag-md","flag-me","flag-mf","flag-mg","flag-mh","flag-mk","flag-ml","flag-mm","flag-mn","flag-mo","flag-mp","flag-mq","flag-mr","flag-ms","flag-mt","flag-mu","flag-mv","flag-mw","flag-mx","flag-my","flag-mz","flag-na","flag-nc","flag-ne","flag-nf","flag-ng","flag-ni","flag-nl","flag-no","flag-np","flag-nr","flag-nu","flag-nz","flag-om","flag-pa","flag-pe","flag-pf","flag-pg","flag-ph","flag-pk","flag-pl","flag-pm","flag-pn","flag-pr","flag-ps","flag-pt","flag-pw","flag-py","flag-qa","flag-re","flag-ro","flag-rs","flag-rw","flag-sa","flag-sb","flag-sc","flag-scotland","flag-sd","flag-se","flag-sg","flag-sh","flag-si","flag-sj","flag-sk","flag-sl","flag-sm","flag-sn","flag-so","flag-sr","flag-ss","flag-st","flag-sv","flag-sx","flag-sy","flag-sz","flag-ta","flag-tc","flag-td","flag-tf","flag-tg","flag-th","flag-tj","flag-tk","flag-tl","flag-tm","flag-tn","flag-to","flag-tr","flag-tt","flag-tv","flag-tw","flag-tz","flag-ua","flag-ug","flag-um","flag-un","flag-uy","flag-uz","flag-va","flag-vc","flag-ve","flag-vg","flag-vi","flag-vn","flag-vu","flag-wales","flag-wf","flag-ws","flag-xk","flag-ye","flag-yt","flag-za","flag-zm","flag-zw","fr","gb","it","jp","kr","pirate_flag","rainbow-flag","ru","transgender_flag","triangular_flag_on_post","us","waving_black_flag","waving_white_flag"]}],emojis:{100:{id:"100",name:"Hundred Points",keywords:["100","score","perfect","numbers","century","exam","quiz","test","pass"],skins:[{unified:"1f4af",native:"💯"}],version:1},1234:{id:"1234",name:"Input Numbers",keywords:["1234","blue","square","1","2","3","4"],skins:[{unified:"1f522",native:"🔢"}],version:1},grinning:{id:"grinning",name:"Grinning Face",emoticons:[":D"],keywords:["smile","happy","joy",":D","grin"],skins:[{unified:"1f600",native:"😀"}],version:1},smiley:{id:"smiley",name:"Grinning Face with Big Eyes",emoticons:[":)","=)","=-)"],keywords:["smiley","happy","joy","haha",":D",":)","smile","funny"],skins:[{unified:"1f603",native:"😃"}],version:1},smile:{id:"smile",name:"Grinning Face with Smiling Eyes",emoticons:[":)","C:","c:",":D",":-D"],keywords:["smile","happy","joy","funny","haha","laugh","like",":D",":)"],skins:[{unified:"1f604",native:"😄"}],version:1},grin:{id:"grin",name:"Beaming Face with Smiling Eyes",keywords:["grin","happy","smile","joy","kawaii"],skins:[{unified:"1f601",native:"😁"}],version:1},laughing:{id:"laughing",name:"Grinning Squinting Face",emoticons:[":>",":->"],keywords:["laughing","satisfied","happy","joy","lol","haha","glad","XD","laugh"],skins:[{unified:"1f606",native:"😆"}],version:1},sweat_smile:{id:"sweat_smile",name:"Grinning Face with Sweat",keywords:["smile","hot","happy","laugh","relief"],skins:[{unified:"1f605",native:"😅"}],version:1},rolling_on_the_floor_laughing:{id:"rolling_on_the_floor_laughing",name:"Rolling on the Floor Laughing",keywords:["face","lol","haha","rofl"],skins:[{unified:"1f923",native:"🤣"}],version:3},joy:{id:"joy",name:"Face with Tears of Joy",keywords:["cry","weep","happy","happytears","haha"],skins:[{unified:"1f602",native:"😂"}],version:1},slightly_smiling_face:{id:"slightly_smiling_face",name:"Slightly Smiling Face",emoticons:[":)","(:",":-)"],keywords:["smile"],skins:[{unified:"1f642",native:"🙂"}],version:1},upside_down_face:{id:"upside_down_face",name:"Upside-Down Face",keywords:["upside","down","flipped","silly","smile"],skins:[{unified:"1f643",native:"🙃"}],version:1},melting_face:{id:"melting_face",name:"Melting Face",keywords:["hot","heat"],skins:[{unified:"1fae0",native:"🫠"}],version:14},wink:{id:"wink",name:"Winking Face",emoticons:[";)",";-)"],keywords:["wink","happy","mischievous","secret",";)","smile","eye"],skins:[{unified:"1f609",native:"😉"}],version:1},blush:{id:"blush",name:"Smiling Face with Smiling Eyes",emoticons:[":)"],keywords:["blush","smile","happy","flushed","crush","embarrassed","shy","joy"],skins:[{unified:"1f60a",native:"😊"}],version:1},innocent:{id:"innocent",name:"Smiling Face with Halo",keywords:["innocent","angel","heaven"],skins:[{unified:"1f607",native:"😇"}],version:1},smiling_face_with_3_hearts:{id:"smiling_face_with_3_hearts",name:"Smiling Face with Hearts",keywords:["3","love","like","affection","valentines","infatuation","crush","adore"],skins:[{unified:"1f970",native:"🥰"}],version:11},heart_eyes:{id:"heart_eyes",name:"Smiling Face with Heart-Eyes",keywords:["heart","eyes","love","like","affection","valentines","infatuation","crush"],skins:[{unified:"1f60d",native:"😍"}],version:1},"star-struck":{id:"star-struck",name:"Star-Struck",keywords:["star","struck","grinning","face","with","eyes","smile","starry"],skins:[{unified:"1f929",native:"🤩"}],version:5},kissing_heart:{id:"kissing_heart",name:"Face Blowing a Kiss",emoticons:[":*",":-*"],keywords:["kissing","heart","love","like","affection","valentines","infatuation"],skins:[{unified:"1f618",native:"😘"}],version:1},kissing:{id:"kissing",name:"Kissing Face",keywords:["love","like","3","valentines","infatuation","kiss"],skins:[{unified:"1f617",native:"😗"}],version:1},relaxed:{id:"relaxed",name:"Smiling Face",keywords:["relaxed","blush","massage","happiness"],skins:[{unified:"263a-fe0f",native:"☺️"}],version:1},kissing_closed_eyes:{id:"kissing_closed_eyes",name:"Kissing Face with Closed Eyes",keywords:["love","like","affection","valentines","infatuation","kiss"],skins:[{unified:"1f61a",native:"😚"}],version:1},kissing_smiling_eyes:{id:"kissing_smiling_eyes",name:"Kissing Face with Smiling Eyes",keywords:["affection","valentines","infatuation","kiss"],skins:[{unified:"1f619",native:"😙"}],version:1},smiling_face_with_tear:{id:"smiling_face_with_tear",name:"Smiling Face with Tear",keywords:["sad","cry","pretend"],skins:[{unified:"1f972",native:"🥲"}],version:13},yum:{id:"yum",name:"Face Savoring Food",keywords:["yum","happy","joy","tongue","smile","silly","yummy","nom","delicious","savouring"],skins:[{unified:"1f60b",native:"😋"}],version:1},stuck_out_tongue:{id:"stuck_out_tongue",name:"Face with Tongue",emoticons:[":p",":-p",":P",":-P",":b",":-b"],keywords:["stuck","out","prank","childish","playful","mischievous","smile"],skins:[{unified:"1f61b",native:"😛"}],version:1},stuck_out_tongue_winking_eye:{id:"stuck_out_tongue_winking_eye",name:"Winking Face with Tongue",emoticons:[";p",";-p",";b",";-b",";P",";-P"],keywords:["stuck","out","eye","prank","childish","playful","mischievous","smile","wink"],skins:[{unified:"1f61c",native:"😜"}],version:1},zany_face:{id:"zany_face",name:"Zany Face",keywords:["grinning","with","one","large","and","small","eye","goofy","crazy"],skins:[{unified:"1f92a",native:"🤪"}],version:5},stuck_out_tongue_closed_eyes:{id:"stuck_out_tongue_closed_eyes",name:"Squinting Face with Tongue",keywords:["stuck","out","closed","eyes","prank","playful","mischievous","smile"],skins:[{unified:"1f61d",native:"😝"}],version:1},money_mouth_face:{id:"money_mouth_face",name:"Money-Mouth Face",keywords:["money","mouth","rich","dollar"],skins:[{unified:"1f911",native:"🤑"}],version:1},hugging_face:{id:"hugging_face",name:"Hugging Face",keywords:["smile","hug"],skins:[{unified:"1f917",native:"🤗"}],version:1},face_with_hand_over_mouth:{id:"face_with_hand_over_mouth",name:"Face with Hand over Mouth",keywords:["smiling","eyes","and","covering","whoops","shock","surprise"],skins:[{unified:"1f92d",native:"🤭"}],version:5},face_with_open_eyes_and_hand_over_mouth:{id:"face_with_open_eyes_and_hand_over_mouth",name:"Face with Open Eyes and Hand over Mouth",keywords:["silence","secret","shock","surprise"],skins:[{unified:"1fae2",native:"🫢"}],version:14},face_with_peeking_eye:{id:"face_with_peeking_eye",name:"Face with Peeking Eye",keywords:["scared","frightening","embarrassing","shy"],skins:[{unified:"1fae3",native:"🫣"}],version:14},shushing_face:{id:"shushing_face",name:"Shushing Face",keywords:["with","finger","covering","closed","lips","quiet","shhh"],skins:[{unified:"1f92b",native:"🤫"}],version:5},thinking_face:{id:"thinking_face",name:"Thinking Face",keywords:["hmmm","think","consider"],skins:[{unified:"1f914",native:"🤔"}],version:1},saluting_face:{id:"saluting_face",name:"Saluting Face",keywords:["respect","salute"],skins:[{unified:"1fae1",native:"🫡"}],version:14},zipper_mouth_face:{id:"zipper_mouth_face",name:"Zipper-Mouth Face",keywords:["zipper","mouth","sealed","secret"],skins:[{unified:"1f910",native:"🤐"}],version:1},face_with_raised_eyebrow:{id:"face_with_raised_eyebrow",name:"Face with Raised Eyebrow",keywords:["one","distrust","scepticism","disapproval","disbelief","surprise"],skins:[{unified:"1f928",native:"🤨"}],version:5},neutral_face:{id:"neutral_face",name:"Neutral Face",emoticons:[":|",":-|"],keywords:["indifference","meh",":",""],skins:[{unified:"1f610",native:"😐"}],version:1},expressionless:{id:"expressionless",name:"Expressionless Face",emoticons:["-_-"],keywords:["indifferent","-","","meh","deadpan"],skins:[{unified:"1f611",native:"😑"}],version:1},no_mouth:{id:"no_mouth",name:"Face Without Mouth",keywords:["no","hellokitty"],skins:[{unified:"1f636",native:"😶"}],version:1},dotted_line_face:{id:"dotted_line_face",name:"Dotted Line Face",keywords:["invisible","lonely","isolation","depression"],skins:[{unified:"1fae5",native:"🫥"}],version:14},face_in_clouds:{id:"face_in_clouds",name:"Face in Clouds",keywords:["shower","steam","dream"],skins:[{unified:"1f636-200d-1f32b-fe0f",native:"😶‍🌫️"}],version:13.1},smirk:{id:"smirk",name:"Smirking Face",keywords:["smirk","smile","mean","prank","smug","sarcasm"],skins:[{unified:"1f60f",native:"😏"}],version:1},unamused:{id:"unamused",name:"Unamused Face",emoticons:[":("],keywords:["indifference","bored","straight","serious","sarcasm","unimpressed","skeptical","dubious","side","eye"],skins:[{unified:"1f612",native:"😒"}],version:1},face_with_rolling_eyes:{id:"face_with_rolling_eyes",name:"Face with Rolling Eyes",keywords:["eyeroll","frustrated"],skins:[{unified:"1f644",native:"🙄"}],version:1},grimacing:{id:"grimacing",name:"Grimacing Face",keywords:["grimace","teeth"],skins:[{unified:"1f62c",native:"😬"}],version:1},face_exhaling:{id:"face_exhaling",name:"Face Exhaling",keywords:["relieve","relief","tired","sigh"],skins:[{unified:"1f62e-200d-1f4a8",native:"😮‍💨"}],version:13.1},lying_face:{id:"lying_face",name:"Lying Face",keywords:["lie","pinocchio"],skins:[{unified:"1f925",native:"🤥"}],version:3},shaking_face:{id:"shaking_face",name:"Shaking Face",keywords:["dizzy","shock","blurry","earthquake"],skins:[{unified:"1fae8",native:"🫨"}],version:15},relieved:{id:"relieved",name:"Relieved Face",keywords:["relaxed","phew","massage","happiness"],skins:[{unified:"1f60c",native:"😌"}],version:1},pensive:{id:"pensive",name:"Pensive Face",keywords:["sad","depressed","upset"],skins:[{unified:"1f614",native:"😔"}],version:1},sleepy:{id:"sleepy",name:"Sleepy Face",keywords:["tired","rest","nap"],skins:[{unified:"1f62a",native:"😪"}],version:1},drooling_face:{id:"drooling_face",name:"Drooling Face",keywords:[],skins:[{unified:"1f924",native:"🤤"}],version:3},sleeping:{id:"sleeping",name:"Sleeping Face",keywords:["tired","sleepy","night","zzz"],skins:[{unified:"1f634",native:"😴"}],version:1},mask:{id:"mask",name:"Face with Medical Mask",keywords:["sick","ill","disease","covid"],skins:[{unified:"1f637",native:"😷"}],version:1},face_with_thermometer:{id:"face_with_thermometer",name:"Face with Thermometer",keywords:["sick","temperature","cold","fever","covid"],skins:[{unified:"1f912",native:"🤒"}],version:1},face_with_head_bandage:{id:"face_with_head_bandage",name:"Face with Head-Bandage",keywords:["head","bandage","injured","clumsy","hurt"],skins:[{unified:"1f915",native:"🤕"}],version:1},nauseated_face:{id:"nauseated_face",name:"Nauseated Face",keywords:["vomit","gross","green","sick","throw","up","ill"],skins:[{unified:"1f922",native:"🤢"}],version:3},face_vomiting:{id:"face_vomiting",name:"Face Vomiting",keywords:["with","open","mouth","sick"],skins:[{unified:"1f92e",native:"🤮"}],version:5},sneezing_face:{id:"sneezing_face",name:"Sneezing Face",keywords:["gesundheit","sneeze","sick","allergy"],skins:[{unified:"1f927",native:"🤧"}],version:3},hot_face:{id:"hot_face",name:"Hot Face",keywords:["feverish","heat","red","sweating"],skins:[{unified:"1f975",native:"🥵"}],version:11},cold_face:{id:"cold_face",name:"Cold Face",keywords:["blue","freezing","frozen","frostbite","icicles"],skins:[{unified:"1f976",native:"🥶"}],version:11},woozy_face:{id:"woozy_face",name:"Woozy Face",keywords:["dizzy","intoxicated","tipsy","wavy"],skins:[{unified:"1f974",native:"🥴"}],version:11},dizzy_face:{id:"dizzy_face",name:"Dizzy Face",keywords:["spent","unconscious","xox"],skins:[{unified:"1f635",native:"😵"}],version:1},face_with_spiral_eyes:{id:"face_with_spiral_eyes",name:"Face with Spiral Eyes",keywords:["sick","ill","confused","nauseous","nausea"],skins:[{unified:"1f635-200d-1f4ab",native:"😵‍💫"}],version:13.1},exploding_head:{id:"exploding_head",name:"Exploding Head",keywords:["shocked","face","with","mind","blown"],skins:[{unified:"1f92f",native:"🤯"}],version:5},face_with_cowboy_hat:{id:"face_with_cowboy_hat",name:"Cowboy Hat Face",keywords:["with","cowgirl"],skins:[{unified:"1f920",native:"🤠"}],version:3},partying_face:{id:"partying_face",name:"Partying Face",keywords:["celebration","woohoo"],skins:[{unified:"1f973",native:"🥳"}],version:11},disguised_face:{id:"disguised_face",name:"Disguised Face",keywords:["pretent","brows","glasses","moustache"],skins:[{unified:"1f978",native:"🥸"}],version:13},sunglasses:{id:"sunglasses",name:"Smiling Face with Sunglasses",emoticons:["8)"],keywords:["cool","smile","summer","beach","sunglass"],skins:[{unified:"1f60e",native:"😎"}],version:1},nerd_face:{id:"nerd_face",name:"Nerd Face",keywords:["nerdy","geek","dork"],skins:[{unified:"1f913",native:"🤓"}],version:1},face_with_monocle:{id:"face_with_monocle",name:"Face with Monocle",keywords:["stuffy","wealthy"],skins:[{unified:"1f9d0",native:"🧐"}],version:5},confused:{id:"confused",name:"Confused Face",emoticons:[":\\",":-\\",":/",":-/"],keywords:["indifference","huh","weird","hmmm",":/"],skins:[{unified:"1f615",native:"😕"}],version:1},face_with_diagonal_mouth:{id:"face_with_diagonal_mouth",name:"Face with Diagonal Mouth",keywords:["skeptic","confuse","frustrated","indifferent"],skins:[{unified:"1fae4",native:"🫤"}],version:14},worried:{id:"worried",name:"Worried Face",keywords:["concern","nervous",":("],skins:[{unified:"1f61f",native:"😟"}],version:1},slightly_frowning_face:{id:"slightly_frowning_face",name:"Slightly Frowning Face",keywords:["disappointed","sad","upset"],skins:[{unified:"1f641",native:"🙁"}],version:1},white_frowning_face:{id:"white_frowning_face",name:"Frowning Face",keywords:["white","sad","upset","frown"],skins:[{unified:"2639-fe0f",native:"☹️"}],version:1},open_mouth:{id:"open_mouth",name:"Face with Open Mouth",emoticons:[":o",":-o",":O",":-O"],keywords:["surprise","impressed","wow","whoa",":O"],skins:[{unified:"1f62e",native:"😮"}],version:1},hushed:{id:"hushed",name:"Hushed Face",keywords:["woo","shh"],skins:[{unified:"1f62f",native:"😯"}],version:1},astonished:{id:"astonished",name:"Astonished Face",keywords:["xox","surprised","poisoned"],skins:[{unified:"1f632",native:"😲"}],version:1},flushed:{id:"flushed",name:"Flushed Face",keywords:["blush","shy","flattered"],skins:[{unified:"1f633",native:"😳"}],version:1},pleading_face:{id:"pleading_face",name:"Pleading Face",keywords:["begging","mercy","cry","tears","sad","grievance"],skins:[{unified:"1f97a",native:"🥺"}],version:11},face_holding_back_tears:{id:"face_holding_back_tears",name:"Face Holding Back Tears",keywords:["touched","gratitude","cry"],skins:[{unified:"1f979",native:"🥹"}],version:14},frowning:{id:"frowning",name:"Frowning Face with Open Mouth",keywords:["aw","what"],skins:[{unified:"1f626",native:"😦"}],version:1},anguished:{id:"anguished",name:"Anguished Face",emoticons:["D:"],keywords:["stunned","nervous"],skins:[{unified:"1f627",native:"😧"}],version:1},fearful:{id:"fearful",name:"Fearful Face",keywords:["scared","terrified","nervous"],skins:[{unified:"1f628",native:"😨"}],version:1},cold_sweat:{id:"cold_sweat",name:"Anxious Face with Sweat",keywords:["cold","nervous"],skins:[{unified:"1f630",native:"😰"}],version:1},disappointed_relieved:{id:"disappointed_relieved",name:"Sad but Relieved Face",keywords:["disappointed","phew","sweat","nervous"],skins:[{unified:"1f625",native:"😥"}],version:1},cry:{id:"cry",name:"Crying Face",emoticons:[":'("],keywords:["cry","tears","sad","depressed","upset",":'("],skins:[{unified:"1f622",native:"😢"}],version:1},sob:{id:"sob",name:"Loudly Crying Face",emoticons:[":'("],keywords:["sob","cry","tears","sad","upset","depressed"],skins:[{unified:"1f62d",native:"😭"}],version:1},scream:{id:"scream",name:"Face Screaming in Fear",keywords:["scream","munch","scared","omg"],skins:[{unified:"1f631",native:"😱"}],version:1},confounded:{id:"confounded",name:"Confounded Face",keywords:["confused","sick","unwell","oops",":S"],skins:[{unified:"1f616",native:"😖"}],version:1},persevere:{id:"persevere",name:"Persevering Face",keywords:["persevere","sick","no","upset","oops"],skins:[{unified:"1f623",native:"😣"}],version:1},disappointed:{id:"disappointed",name:"Disappointed Face",emoticons:["):",":(",":-("],keywords:["sad","upset","depressed",":("],skins:[{unified:"1f61e",native:"😞"}],version:1},sweat:{id:"sweat",name:"Face with Cold Sweat",keywords:["downcast","hot","sad","tired","exercise"],skins:[{unified:"1f613",native:"😓"}],version:1},weary:{id:"weary",name:"Weary Face",keywords:["tired","sleepy","sad","frustrated","upset"],skins:[{unified:"1f629",native:"😩"}],version:1},tired_face:{id:"tired_face",name:"Tired Face",keywords:["sick","whine","upset","frustrated"],skins:[{unified:"1f62b",native:"😫"}],version:1},yawning_face:{id:"yawning_face",name:"Yawning Face",keywords:["tired","sleepy"],skins:[{unified:"1f971",native:"🥱"}],version:12},triumph:{id:"triumph",name:"Face with Look of Triumph",keywords:["steam","from","nose","gas","phew","proud","pride"],skins:[{unified:"1f624",native:"😤"}],version:1},rage:{id:"rage",name:"Pouting Face",keywords:["rage","angry","mad","hate","despise"],skins:[{unified:"1f621",native:"😡"}],version:1},angry:{id:"angry",name:"Angry Face",emoticons:[">:(",">:-("],keywords:["mad","annoyed","frustrated"],skins:[{unified:"1f620",native:"😠"}],version:1},face_with_symbols_on_mouth:{id:"face_with_symbols_on_mouth",name:"Face with Symbols on Mouth",keywords:["serious","covering","swearing","cursing","cussing","profanity","expletive"],skins:[{unified:"1f92c",native:"🤬"}],version:5},smiling_imp:{id:"smiling_imp",name:"Smiling Face with Horns",keywords:["imp","devil"],skins:[{unified:"1f608",native:"😈"}],version:1},imp:{id:"imp",name:"Imp",keywords:["angry","face","with","horns","devil"],skins:[{unified:"1f47f",native:"👿"}],version:1},skull:{id:"skull",name:"Skull",keywords:["dead","skeleton","creepy","death"],skins:[{unified:"1f480",native:"💀"}],version:1},skull_and_crossbones:{id:"skull_and_crossbones",name:"Skull and Crossbones",keywords:["poison","danger","deadly","scary","death","pirate","evil"],skins:[{unified:"2620-fe0f",native:"☠️"}],version:1},hankey:{id:"hankey",name:"Pile of Poo",keywords:["hankey","poop","shit","shitface","fail","turd"],skins:[{unified:"1f4a9",native:"💩"}],version:1},clown_face:{id:"clown_face",name:"Clown Face",keywords:[],skins:[{unified:"1f921",native:"🤡"}],version:3},japanese_ogre:{id:"japanese_ogre",name:"Ogre",keywords:["japanese","monster","red","mask","halloween","scary","creepy","devil","demon"],skins:[{unified:"1f479",native:"👹"}],version:1},japanese_goblin:{id:"japanese_goblin",name:"Goblin",keywords:["japanese","red","evil","mask","monster","scary","creepy"],skins:[{unified:"1f47a",native:"👺"}],version:1},ghost:{id:"ghost",name:"Ghost",keywords:["halloween","spooky","scary"],skins:[{unified:"1f47b",native:"👻"}],version:1},alien:{id:"alien",name:"Alien",keywords:["UFO","paul","weird","outer","space"],skins:[{unified:"1f47d",native:"👽"}],version:1},space_invader:{id:"space_invader",name:"Alien Monster",keywords:["space","invader","game","arcade","play"],skins:[{unified:"1f47e",native:"👾"}],version:1},robot_face:{id:"robot_face",name:"Robot",keywords:["face","computer","machine","bot"],skins:[{unified:"1f916",native:"🤖"}],version:1},smiley_cat:{id:"smiley_cat",name:"Grinning Cat",keywords:["smiley","animal","cats","happy","smile"],skins:[{unified:"1f63a",native:"😺"}],version:1},smile_cat:{id:"smile_cat",name:"Grinning Cat with Smiling Eyes",keywords:["smile","animal","cats"],skins:[{unified:"1f638",native:"😸"}],version:1},joy_cat:{id:"joy_cat",name:"Cat with Tears of Joy",keywords:["animal","cats","haha","happy"],skins:[{unified:"1f639",native:"😹"}],version:1},heart_eyes_cat:{id:"heart_eyes_cat",name:"Smiling Cat with Heart-Eyes",keywords:["heart","eyes","animal","love","like","affection","cats","valentines"],skins:[{unified:"1f63b",native:"😻"}],version:1},smirk_cat:{id:"smirk_cat",name:"Cat with Wry Smile",keywords:["smirk","animal","cats"],skins:[{unified:"1f63c",native:"😼"}],version:1},kissing_cat:{id:"kissing_cat",name:"Kissing Cat",keywords:["animal","cats","kiss"],skins:[{unified:"1f63d",native:"😽"}],version:1},scream_cat:{id:"scream_cat",name:"Weary Cat",keywords:["scream","animal","cats","munch","scared"],skins:[{unified:"1f640",native:"🙀"}],version:1},crying_cat_face:{id:"crying_cat_face",name:"Crying Cat",keywords:["face","animal","tears","weep","sad","cats","upset","cry"],skins:[{unified:"1f63f",native:"😿"}],version:1},pouting_cat:{id:"pouting_cat",name:"Pouting Cat",keywords:["animal","cats"],skins:[{unified:"1f63e",native:"😾"}],version:1},see_no_evil:{id:"see_no_evil",name:"See-No-Evil Monkey",keywords:["see","no","evil","animal","nature","haha"],skins:[{unified:"1f648",native:"🙈"}],version:1},hear_no_evil:{id:"hear_no_evil",name:"Hear-No-Evil Monkey",keywords:["hear","no","evil","animal","nature"],skins:[{unified:"1f649",native:"🙉"}],version:1},speak_no_evil:{id:"speak_no_evil",name:"Speak-No-Evil Monkey",keywords:["speak","no","evil","animal","nature","omg"],skins:[{unified:"1f64a",native:"🙊"}],version:1},love_letter:{id:"love_letter",name:"Love Letter",keywords:["email","like","affection","envelope","valentines"],skins:[{unified:"1f48c",native:"💌"}],version:1},cupid:{id:"cupid",name:"Heart with Arrow",keywords:["cupid","love","like","affection","valentines"],skins:[{unified:"1f498",native:"💘"}],version:1},gift_heart:{id:"gift_heart",name:"Heart with Ribbon",keywords:["gift","love","valentines"],skins:[{unified:"1f49d",native:"💝"}],version:1},sparkling_heart:{id:"sparkling_heart",name:"Sparkling Heart",keywords:["love","like","affection","valentines"],skins:[{unified:"1f496",native:"💖"}],version:1},heartpulse:{id:"heartpulse",name:"Growing Heart",keywords:["heartpulse","like","love","affection","valentines","pink"],skins:[{unified:"1f497",native:"💗"}],version:1},heartbeat:{id:"heartbeat",name:"Beating Heart",keywords:["heartbeat","love","like","affection","valentines","pink"],skins:[{unified:"1f493",native:"💓"}],version:1},revolving_hearts:{id:"revolving_hearts",name:"Revolving Hearts",keywords:["love","like","affection","valentines"],skins:[{unified:"1f49e",native:"💞"}],version:1},two_hearts:{id:"two_hearts",name:"Two Hearts",keywords:["love","like","affection","valentines","heart"],skins:[{unified:"1f495",native:"💕"}],version:1},heart_decoration:{id:"heart_decoration",name:"Heart Decoration",keywords:["purple","square","love","like"],skins:[{unified:"1f49f",native:"💟"}],version:1},heavy_heart_exclamation_mark_ornament:{id:"heavy_heart_exclamation_mark_ornament",name:"Heart Exclamation",keywords:["heavy","mark","ornament","decoration","love"],skins:[{unified:"2763-fe0f",native:"❣️"}],version:1},broken_heart:{id:"broken_heart",name:"Broken Heart",emoticons:["</3"],keywords:["sad","sorry","break","heartbreak"],skins:[{unified:"1f494",native:"💔"}],version:1},heart_on_fire:{id:"heart_on_fire",name:"Heart on Fire",keywords:["passionate","enthusiastic"],skins:[{unified:"2764-fe0f-200d-1f525",native:"❤️‍🔥"}],version:13.1},mending_heart:{id:"mending_heart",name:"Mending Heart",keywords:["broken","bandage","wounded"],skins:[{unified:"2764-fe0f-200d-1fa79",native:"❤️‍🩹"}],version:13.1},heart:{id:"heart",name:"Red Heart",emoticons:["<3"],keywords:["love","like","valentines"],skins:[{unified:"2764-fe0f",native:"❤️"}],version:1},pink_heart:{id:"pink_heart",name:"Pink Heart",keywords:["valentines"],skins:[{unified:"1fa77",native:"🩷"}],version:15},orange_heart:{id:"orange_heart",name:"Orange Heart",keywords:["love","like","affection","valentines"],skins:[{unified:"1f9e1",native:"🧡"}],version:5},yellow_heart:{id:"yellow_heart",name:"Yellow Heart",emoticons:["<3"],keywords:["love","like","affection","valentines"],skins:[{unified:"1f49b",native:"💛"}],version:1},green_heart:{id:"green_heart",name:"Green Heart",emoticons:["<3"],keywords:["love","like","affection","valentines"],skins:[{unified:"1f49a",native:"💚"}],version:1},blue_heart:{id:"blue_heart",name:"Blue Heart",emoticons:["<3"],keywords:["love","like","affection","valentines"],skins:[{unified:"1f499",native:"💙"}],version:1},light_blue_heart:{id:"light_blue_heart",name:"Light Blue Heart",keywords:["ice","baby"],skins:[{unified:"1fa75",native:"🩵"}],version:15},purple_heart:{id:"purple_heart",name:"Purple Heart",emoticons:["<3"],keywords:["love","like","affection","valentines"],skins:[{unified:"1f49c",native:"💜"}],version:1},brown_heart:{id:"brown_heart",name:"Brown Heart",keywords:["coffee"],skins:[{unified:"1f90e",native:"🤎"}],version:12},black_heart:{id:"black_heart",name:"Black Heart",keywords:["evil"],skins:[{unified:"1f5a4",native:"🖤"}],version:3},grey_heart:{id:"grey_heart",name:"Grey Heart",keywords:["silver","monochrome"],skins:[{unified:"1fa76",native:"🩶"}],version:15},white_heart:{id:"white_heart",name:"White Heart",keywords:["pure"],skins:[{unified:"1f90d",native:"🤍"}],version:12},kiss:{id:"kiss",name:"Kiss Mark",keywords:["face","lips","love","like","affection","valentines"],skins:[{unified:"1f48b",native:"💋"}],version:1},anger:{id:"anger",name:"Anger Symbol",keywords:["angry","mad"],skins:[{unified:"1f4a2",native:"💢"}],version:1},boom:{id:"boom",name:"Collision",keywords:["boom","bomb","explode","explosion","blown"],skins:[{unified:"1f4a5",native:"💥"}],version:1},dizzy:{id:"dizzy",name:"Dizzy",keywords:["star","sparkle","shoot","magic"],skins:[{unified:"1f4ab",native:"💫"}],version:1},sweat_drops:{id:"sweat_drops",name:"Sweat Droplets",keywords:["drops","water","drip","oops"],skins:[{unified:"1f4a6",native:"💦"}],version:1},dash:{id:"dash",name:"Dash Symbol",keywords:["dashing","away","wind","air","fast","shoo","fart","smoke","puff"],skins:[{unified:"1f4a8",native:"💨"}],version:1},hole:{id:"hole",name:"Hole",keywords:["embarrassing"],skins:[{unified:"1f573-fe0f",native:"🕳️"}],version:1},speech_balloon:{id:"speech_balloon",name:"Speech Balloon",keywords:["bubble","words","message","talk","chatting"],skins:[{unified:"1f4ac",native:"💬"}],version:1},"eye-in-speech-bubble":{id:"eye-in-speech-bubble",name:"Eye in Speech Bubble",keywords:["in-speech-bubble","info"],skins:[{unified:"1f441-fe0f-200d-1f5e8-fe0f",native:"👁️‍🗨️"}],version:2},left_speech_bubble:{id:"left_speech_bubble",name:"Left Speech Bubble",keywords:["words","message","talk","chatting"],skins:[{unified:"1f5e8-fe0f",native:"🗨️"}],version:2},right_anger_bubble:{id:"right_anger_bubble",name:"Right Anger Bubble",keywords:["caption","speech","thinking","mad"],skins:[{unified:"1f5ef-fe0f",native:"🗯️"}],version:1},thought_balloon:{id:"thought_balloon",name:"Thought Balloon",keywords:["bubble","cloud","speech","thinking","dream"],skins:[{unified:"1f4ad",native:"💭"}],version:1},zzz:{id:"zzz",name:"Zzz",keywords:["sleepy","tired","dream"],skins:[{unified:"1f4a4",native:"💤"}],version:1},wave:{id:"wave",name:"Waving Hand",keywords:["wave","hands","gesture","goodbye","solong","farewell","hello","hi","palm"],skins:[{unified:"1f44b",native:"👋"},{unified:"1f44b-1f3fb",native:"👋🏻"},{unified:"1f44b-1f3fc",native:"👋🏼"},{unified:"1f44b-1f3fd",native:"👋🏽"},{unified:"1f44b-1f3fe",native:"👋🏾"},{unified:"1f44b-1f3ff",native:"👋🏿"}],version:1},raised_back_of_hand:{id:"raised_back_of_hand",name:"Raised Back of Hand",keywords:["fingers","backhand"],skins:[{unified:"1f91a",native:"🤚"},{unified:"1f91a-1f3fb",native:"🤚🏻"},{unified:"1f91a-1f3fc",native:"🤚🏼"},{unified:"1f91a-1f3fd",native:"🤚🏽"},{unified:"1f91a-1f3fe",native:"🤚🏾"},{unified:"1f91a-1f3ff",native:"🤚🏿"}],version:3},raised_hand_with_fingers_splayed:{id:"raised_hand_with_fingers_splayed",name:"Hand with Fingers Splayed",keywords:["raised","palm"],skins:[{unified:"1f590-fe0f",native:"🖐️"},{unified:"1f590-1f3fb",native:"🖐🏻"},{unified:"1f590-1f3fc",native:"🖐🏼"},{unified:"1f590-1f3fd",native:"🖐🏽"},{unified:"1f590-1f3fe",native:"🖐🏾"},{unified:"1f590-1f3ff",native:"🖐🏿"}],version:1},hand:{id:"hand",name:"Raised Hand",keywords:["fingers","stop","highfive","high","five","palm","ban"],skins:[{unified:"270b",native:"✋"},{unified:"270b-1f3fb",native:"✋🏻"},{unified:"270b-1f3fc",native:"✋🏼"},{unified:"270b-1f3fd",native:"✋🏽"},{unified:"270b-1f3fe",native:"✋🏾"},{unified:"270b-1f3ff",native:"✋🏿"}],version:1},"spock-hand":{id:"spock-hand",name:"Vulcan Salute",keywords:["spock","hand","fingers","star","trek"],skins:[{unified:"1f596",native:"🖖"},{unified:"1f596-1f3fb",native:"🖖🏻"},{unified:"1f596-1f3fc",native:"🖖🏼"},{unified:"1f596-1f3fd",native:"🖖🏽"},{unified:"1f596-1f3fe",native:"🖖🏾"},{unified:"1f596-1f3ff",native:"🖖🏿"}],version:1},rightwards_hand:{id:"rightwards_hand",name:"Rightwards Hand",keywords:["palm","offer"],skins:[{unified:"1faf1",native:"🫱"},{unified:"1faf1-1f3fb",native:"🫱🏻"},{unified:"1faf1-1f3fc",native:"🫱🏼"},{unified:"1faf1-1f3fd",native:"🫱🏽"},{unified:"1faf1-1f3fe",native:"🫱🏾"},{unified:"1faf1-1f3ff",native:"🫱🏿"}],version:14},leftwards_hand:{id:"leftwards_hand",name:"Leftwards Hand",keywords:["palm","offer"],skins:[{unified:"1faf2",native:"🫲"},{unified:"1faf2-1f3fb",native:"🫲🏻"},{unified:"1faf2-1f3fc",native:"🫲🏼"},{unified:"1faf2-1f3fd",native:"🫲🏽"},{unified:"1faf2-1f3fe",native:"🫲🏾"},{unified:"1faf2-1f3ff",native:"🫲🏿"}],version:14},palm_down_hand:{id:"palm_down_hand",name:"Palm Down Hand",keywords:["drop"],skins:[{unified:"1faf3",native:"🫳"},{unified:"1faf3-1f3fb",native:"🫳🏻"},{unified:"1faf3-1f3fc",native:"🫳🏼"},{unified:"1faf3-1f3fd",native:"🫳🏽"},{unified:"1faf3-1f3fe",native:"🫳🏾"},{unified:"1faf3-1f3ff",native:"🫳🏿"}],version:14},palm_up_hand:{id:"palm_up_hand",name:"Palm Up Hand",keywords:["lift","offer","demand"],skins:[{unified:"1faf4",native:"🫴"},{unified:"1faf4-1f3fb",native:"🫴🏻"},{unified:"1faf4-1f3fc",native:"🫴🏼"},{unified:"1faf4-1f3fd",native:"🫴🏽"},{unified:"1faf4-1f3fe",native:"🫴🏾"},{unified:"1faf4-1f3ff",native:"🫴🏿"}],version:14},leftwards_pushing_hand:{id:"leftwards_pushing_hand",name:"Leftwards Pushing Hand",keywords:["highfive","high","five","pressing","stop"],skins:[{unified:"1faf7",native:"🫷"},{unified:"1faf7-1f3fb",native:"🫷🏻"},{unified:"1faf7-1f3fc",native:"🫷🏼"},{unified:"1faf7-1f3fd",native:"🫷🏽"},{unified:"1faf7-1f3fe",native:"🫷🏾"},{unified:"1faf7-1f3ff",native:"🫷🏿"}],version:15},rightwards_pushing_hand:{id:"rightwards_pushing_hand",name:"Rightwards Pushing Hand",keywords:["highfive","high","five","pressing","stop"],skins:[{unified:"1faf8",native:"🫸"},{unified:"1faf8-1f3fb",native:"🫸🏻"},{unified:"1faf8-1f3fc",native:"🫸🏼"},{unified:"1faf8-1f3fd",native:"🫸🏽"},{unified:"1faf8-1f3fe",native:"🫸🏾"},{unified:"1faf8-1f3ff",native:"🫸🏿"}],version:15},ok_hand:{id:"ok_hand",name:"Ok Hand",keywords:["fingers","limbs","perfect","okay"],skins:[{unified:"1f44c",native:"👌"},{unified:"1f44c-1f3fb",native:"👌🏻"},{unified:"1f44c-1f3fc",native:"👌🏼"},{unified:"1f44c-1f3fd",native:"👌🏽"},{unified:"1f44c-1f3fe",native:"👌🏾"},{unified:"1f44c-1f3ff",native:"👌🏿"}],version:1},pinched_fingers:{id:"pinched_fingers",name:"Pinched Fingers",keywords:["size","tiny","small"],skins:[{unified:"1f90c",native:"🤌"},{unified:"1f90c-1f3fb",native:"🤌🏻"},{unified:"1f90c-1f3fc",native:"🤌🏼"},{unified:"1f90c-1f3fd",native:"🤌🏽"},{unified:"1f90c-1f3fe",native:"🤌🏾"},{unified:"1f90c-1f3ff",native:"🤌🏿"}],version:13},pinching_hand:{id:"pinching_hand",name:"Pinching Hand",keywords:["tiny","small","size"],skins:[{unified:"1f90f",native:"🤏"},{unified:"1f90f-1f3fb",native:"🤏🏻"},{unified:"1f90f-1f3fc",native:"🤏🏼"},{unified:"1f90f-1f3fd",native:"🤏🏽"},{unified:"1f90f-1f3fe",native:"🤏🏾"},{unified:"1f90f-1f3ff",native:"🤏🏿"}],version:12},v:{id:"v",name:"Victory Hand",keywords:["v","fingers","ohyeah","peace","two"],skins:[{unified:"270c-fe0f",native:"✌️"},{unified:"270c-1f3fb",native:"✌🏻"},{unified:"270c-1f3fc",native:"✌🏼"},{unified:"270c-1f3fd",native:"✌🏽"},{unified:"270c-1f3fe",native:"✌🏾"},{unified:"270c-1f3ff",native:"✌🏿"}],version:1},crossed_fingers:{id:"crossed_fingers",name:"Crossed Fingers",keywords:["hand","with","index","and","middle","good","lucky"],skins:[{unified:"1f91e",native:"🤞"},{unified:"1f91e-1f3fb",native:"🤞🏻"},{unified:"1f91e-1f3fc",native:"🤞🏼"},{unified:"1f91e-1f3fd",native:"🤞🏽"},{unified:"1f91e-1f3fe",native:"🤞🏾"},{unified:"1f91e-1f3ff",native:"🤞🏿"}],version:3},hand_with_index_finger_and_thumb_crossed:{id:"hand_with_index_finger_and_thumb_crossed",name:"Hand with Index Finger and Thumb Crossed",keywords:["heart","love","money","expensive"],skins:[{unified:"1faf0",native:"🫰"},{unified:"1faf0-1f3fb",native:"🫰🏻"},{unified:"1faf0-1f3fc",native:"🫰🏼"},{unified:"1faf0-1f3fd",native:"🫰🏽"},{unified:"1faf0-1f3fe",native:"🫰🏾"},{unified:"1faf0-1f3ff",native:"🫰🏿"}],version:14},i_love_you_hand_sign:{id:"i_love_you_hand_sign",name:"Love-You Gesture",keywords:["i","love","you","hand","sign","fingers"],skins:[{unified:"1f91f",native:"🤟"},{unified:"1f91f-1f3fb",native:"🤟🏻"},{unified:"1f91f-1f3fc",native:"🤟🏼"},{unified:"1f91f-1f3fd",native:"🤟🏽"},{unified:"1f91f-1f3fe",native:"🤟🏾"},{unified:"1f91f-1f3ff",native:"🤟🏿"}],version:5},the_horns:{id:"the_horns",name:"Sign of the Horns",keywords:["hand","fingers","evil","eye","rock","on"],skins:[{unified:"1f918",native:"🤘"},{unified:"1f918-1f3fb",native:"🤘🏻"},{unified:"1f918-1f3fc",native:"🤘🏼"},{unified:"1f918-1f3fd",native:"🤘🏽"},{unified:"1f918-1f3fe",native:"🤘🏾"},{unified:"1f918-1f3ff",native:"🤘🏿"}],version:1},call_me_hand:{id:"call_me_hand",name:"Call Me Hand",keywords:["hands","gesture","shaka"],skins:[{unified:"1f919",native:"🤙"},{unified:"1f919-1f3fb",native:"🤙🏻"},{unified:"1f919-1f3fc",native:"🤙🏼"},{unified:"1f919-1f3fd",native:"🤙🏽"},{unified:"1f919-1f3fe",native:"🤙🏾"},{unified:"1f919-1f3ff",native:"🤙🏿"}],version:3},point_left:{id:"point_left",name:"Backhand Index Pointing Left",keywords:["point","direction","fingers","hand"],skins:[{unified:"1f448",native:"👈"},{unified:"1f448-1f3fb",native:"👈🏻"},{unified:"1f448-1f3fc",native:"👈🏼"},{unified:"1f448-1f3fd",native:"👈🏽"},{unified:"1f448-1f3fe",native:"👈🏾"},{unified:"1f448-1f3ff",native:"👈🏿"}],version:1},point_right:{id:"point_right",name:"Backhand Index Pointing Right",keywords:["point","fingers","hand","direction"],skins:[{unified:"1f449",native:"👉"},{unified:"1f449-1f3fb",native:"👉🏻"},{unified:"1f449-1f3fc",native:"👉🏼"},{unified:"1f449-1f3fd",native:"👉🏽"},{unified:"1f449-1f3fe",native:"👉🏾"},{unified:"1f449-1f3ff",native:"👉🏿"}],version:1},point_up_2:{id:"point_up_2",name:"Backhand Index Pointing Up",keywords:["point","2","fingers","hand","direction"],skins:[{unified:"1f446",native:"👆"},{unified:"1f446-1f3fb",native:"👆🏻"},{unified:"1f446-1f3fc",native:"👆🏼"},{unified:"1f446-1f3fd",native:"👆🏽"},{unified:"1f446-1f3fe",native:"👆🏾"},{unified:"1f446-1f3ff",native:"👆🏿"}],version:1},middle_finger:{id:"middle_finger",name:"Middle Finger",keywords:["reversed","hand","with","extended","fingers","rude","flipping"],skins:[{unified:"1f595",native:"🖕"},{unified:"1f595-1f3fb",native:"🖕🏻"},{unified:"1f595-1f3fc",native:"🖕🏼"},{unified:"1f595-1f3fd",native:"🖕🏽"},{unified:"1f595-1f3fe",native:"🖕🏾"},{unified:"1f595-1f3ff",native:"🖕🏿"}],version:1},point_down:{id:"point_down",name:"Backhand Index Pointing Down",keywords:["point","fingers","hand","direction"],skins:[{unified:"1f447",native:"👇"},{unified:"1f447-1f3fb",native:"👇🏻"},{unified:"1f447-1f3fc",native:"👇🏼"},{unified:"1f447-1f3fd",native:"👇🏽"},{unified:"1f447-1f3fe",native:"👇🏾"},{unified:"1f447-1f3ff",native:"👇🏿"}],version:1},point_up:{id:"point_up",name:"Index Pointing Up",keywords:["point","hand","fingers","direction"],skins:[{unified:"261d-fe0f",native:"☝️"},{unified:"261d-1f3fb",native:"☝🏻"},{unified:"261d-1f3fc",native:"☝🏼"},{unified:"261d-1f3fd",native:"☝🏽"},{unified:"261d-1f3fe",native:"☝🏾"},{unified:"261d-1f3ff",native:"☝🏿"}],version:1},index_pointing_at_the_viewer:{id:"index_pointing_at_the_viewer",name:"Index Pointing at the Viewer",keywords:["you","recruit"],skins:[{unified:"1faf5",native:"🫵"},{unified:"1faf5-1f3fb",native:"🫵🏻"},{unified:"1faf5-1f3fc",native:"🫵🏼"},{unified:"1faf5-1f3fd",native:"🫵🏽"},{unified:"1faf5-1f3fe",native:"🫵🏾"},{unified:"1faf5-1f3ff",native:"🫵🏿"}],version:14},"+1":{id:"+1",name:"Thumbs Up",keywords:["+1","thumbsup","yes","awesome","good","agree","accept","cool","hand","like"],skins:[{unified:"1f44d",native:"👍"},{unified:"1f44d-1f3fb",native:"👍🏻"},{unified:"1f44d-1f3fc",native:"👍🏼"},{unified:"1f44d-1f3fd",native:"👍🏽"},{unified:"1f44d-1f3fe",native:"👍🏾"},{unified:"1f44d-1f3ff",native:"👍🏿"}],version:1},"-1":{id:"-1",name:"Thumbs Down",keywords:["-1","thumbsdown","no","dislike","hand"],skins:[{unified:"1f44e",native:"👎"},{unified:"1f44e-1f3fb",native:"👎🏻"},{unified:"1f44e-1f3fc",native:"👎🏼"},{unified:"1f44e-1f3fd",native:"👎🏽"},{unified:"1f44e-1f3fe",native:"👎🏾"},{unified:"1f44e-1f3ff",native:"👎🏿"}],version:1},fist:{id:"fist",name:"Raised Fist",keywords:["fingers","hand","grasp"],skins:[{unified:"270a",native:"✊"},{unified:"270a-1f3fb",native:"✊🏻"},{unified:"270a-1f3fc",native:"✊🏼"},{unified:"270a-1f3fd",native:"✊🏽"},{unified:"270a-1f3fe",native:"✊🏾"},{unified:"270a-1f3ff",native:"✊🏿"}],version:1},facepunch:{id:"facepunch",name:"Oncoming Fist",keywords:["facepunch","punch","angry","violence","hit","attack","hand"],skins:[{unified:"1f44a",native:"👊"},{unified:"1f44a-1f3fb",native:"👊🏻"},{unified:"1f44a-1f3fc",native:"👊🏼"},{unified:"1f44a-1f3fd",native:"👊🏽"},{unified:"1f44a-1f3fe",native:"👊🏾"},{unified:"1f44a-1f3ff",native:"👊🏿"}],version:1},"left-facing_fist":{id:"left-facing_fist",name:"Left-Facing Fist",keywords:["left","facing","hand","fistbump"],skins:[{unified:"1f91b",native:"🤛"},{unified:"1f91b-1f3fb",native:"🤛🏻"},{unified:"1f91b-1f3fc",native:"🤛🏼"},{unified:"1f91b-1f3fd",native:"🤛🏽"},{unified:"1f91b-1f3fe",native:"🤛🏾"},{unified:"1f91b-1f3ff",native:"🤛🏿"}],version:3},"right-facing_fist":{id:"right-facing_fist",name:"Right-Facing Fist",keywords:["right","facing","hand","fistbump"],skins:[{unified:"1f91c",native:"🤜"},{unified:"1f91c-1f3fb",native:"🤜🏻"},{unified:"1f91c-1f3fc",native:"🤜🏼"},{unified:"1f91c-1f3fd",native:"🤜🏽"},{unified:"1f91c-1f3fe",native:"🤜🏾"},{unified:"1f91c-1f3ff",native:"🤜🏿"}],version:3},clap:{id:"clap",name:"Clapping Hands",keywords:["clap","praise","applause","congrats","yay"],skins:[{unified:"1f44f",native:"👏"},{unified:"1f44f-1f3fb",native:"👏🏻"},{unified:"1f44f-1f3fc",native:"👏🏼"},{unified:"1f44f-1f3fd",native:"👏🏽"},{unified:"1f44f-1f3fe",native:"👏🏾"},{unified:"1f44f-1f3ff",native:"👏🏿"}],version:1},raised_hands:{id:"raised_hands",name:"Raising Hands",keywords:["raised","gesture","hooray","yea","celebration"],skins:[{unified:"1f64c",native:"🙌"},{unified:"1f64c-1f3fb",native:"🙌🏻"},{unified:"1f64c-1f3fc",native:"🙌🏼"},{unified:"1f64c-1f3fd",native:"🙌🏽"},{unified:"1f64c-1f3fe",native:"🙌🏾"},{unified:"1f64c-1f3ff",native:"🙌🏿"}],version:1},heart_hands:{id:"heart_hands",name:"Heart Hands",keywords:["love","appreciation","support"],skins:[{unified:"1faf6",native:"🫶"},{unified:"1faf6-1f3fb",native:"🫶🏻"},{unified:"1faf6-1f3fc",native:"🫶🏼"},{unified:"1faf6-1f3fd",native:"🫶🏽"},{unified:"1faf6-1f3fe",native:"🫶🏾"},{unified:"1faf6-1f3ff",native:"🫶🏿"}],version:14},open_hands:{id:"open_hands",name:"Open Hands",keywords:["fingers","butterfly"],skins:[{unified:"1f450",native:"👐"},{unified:"1f450-1f3fb",native:"👐🏻"},{unified:"1f450-1f3fc",native:"👐🏼"},{unified:"1f450-1f3fd",native:"👐🏽"},{unified:"1f450-1f3fe",native:"👐🏾"},{unified:"1f450-1f3ff",native:"👐🏿"}],version:1},palms_up_together:{id:"palms_up_together",name:"Palms Up Together",keywords:["hands","gesture","cupped","prayer"],skins:[{unified:"1f932",native:"🤲"},{unified:"1f932-1f3fb",native:"🤲🏻"},{unified:"1f932-1f3fc",native:"🤲🏼"},{unified:"1f932-1f3fd",native:"🤲🏽"},{unified:"1f932-1f3fe",native:"🤲🏾"},{unified:"1f932-1f3ff",native:"🤲🏿"}],version:5},handshake:{id:"handshake",name:"Handshake",keywords:["agreement","shake"],skins:[{unified:"1f91d",native:"🤝"},{unified:"1f91d-1f3fb",native:"🤝🏻"},{unified:"1f91d-1f3fc",native:"🤝🏼"},{unified:"1f91d-1f3fd",native:"🤝🏽"},{unified:"1f91d-1f3fe",native:"🤝🏾"},{unified:"1f91d-1f3ff",native:"🤝🏿"}],version:3},pray:{id:"pray",name:"Folded Hands",keywords:["pray","please","hope","wish","namaste","highfive","high","five","thank","you","thanks","appreciate"],skins:[{unified:"1f64f",native:"🙏"},{unified:"1f64f-1f3fb",native:"🙏🏻"},{unified:"1f64f-1f3fc",native:"🙏🏼"},{unified:"1f64f-1f3fd",native:"🙏🏽"},{unified:"1f64f-1f3fe",native:"🙏🏾"},{unified:"1f64f-1f3ff",native:"🙏🏿"}],version:1},writing_hand:{id:"writing_hand",name:"Writing Hand",keywords:["lower","left","ballpoint","pen","stationery","write","compose"],skins:[{unified:"270d-fe0f",native:"✍️"},{unified:"270d-1f3fb",native:"✍🏻"},{unified:"270d-1f3fc",native:"✍🏼"},{unified:"270d-1f3fd",native:"✍🏽"},{unified:"270d-1f3fe",native:"✍🏾"},{unified:"270d-1f3ff",native:"✍🏿"}],version:1},nail_care:{id:"nail_care",name:"Nail Polish",keywords:["care","beauty","manicure","finger","fashion"],skins:[{unified:"1f485",native:"💅"},{unified:"1f485-1f3fb",native:"💅🏻"},{unified:"1f485-1f3fc",native:"💅🏼"},{unified:"1f485-1f3fd",native:"💅🏽"},{unified:"1f485-1f3fe",native:"💅🏾"},{unified:"1f485-1f3ff",native:"💅🏿"}],version:1},selfie:{id:"selfie",name:"Selfie",keywords:["camera","phone"],skins:[{unified:"1f933",native:"🤳"},{unified:"1f933-1f3fb",native:"🤳🏻"},{unified:"1f933-1f3fc",native:"🤳🏼"},{unified:"1f933-1f3fd",native:"🤳🏽"},{unified:"1f933-1f3fe",native:"🤳🏾"},{unified:"1f933-1f3ff",native:"🤳🏿"}],version:3},muscle:{id:"muscle",name:"Flexed Biceps",keywords:["muscle","arm","flex","hand","summer","strong"],skins:[{unified:"1f4aa",native:"💪"},{unified:"1f4aa-1f3fb",native:"💪🏻"},{unified:"1f4aa-1f3fc",native:"💪🏼"},{unified:"1f4aa-1f3fd",native:"💪🏽"},{unified:"1f4aa-1f3fe",native:"💪🏾"},{unified:"1f4aa-1f3ff",native:"💪🏿"}],version:1},mechanical_arm:{id:"mechanical_arm",name:"Mechanical Arm",keywords:["accessibility"],skins:[{unified:"1f9be",native:"🦾"}],version:12},mechanical_leg:{id:"mechanical_leg",name:"Mechanical Leg",keywords:["accessibility"],skins:[{unified:"1f9bf",native:"🦿"}],version:12},leg:{id:"leg",name:"Leg",keywords:["kick","limb"],skins:[{unified:"1f9b5",native:"🦵"},{unified:"1f9b5-1f3fb",native:"🦵🏻"},{unified:"1f9b5-1f3fc",native:"🦵🏼"},{unified:"1f9b5-1f3fd",native:"🦵🏽"},{unified:"1f9b5-1f3fe",native:"🦵🏾"},{unified:"1f9b5-1f3ff",native:"🦵🏿"}],version:11},foot:{id:"foot",name:"Foot",keywords:["kick","stomp"],skins:[{unified:"1f9b6",native:"🦶"},{unified:"1f9b6-1f3fb",native:"🦶🏻"},{unified:"1f9b6-1f3fc",native:"🦶🏼"},{unified:"1f9b6-1f3fd",native:"🦶🏽"},{unified:"1f9b6-1f3fe",native:"🦶🏾"},{unified:"1f9b6-1f3ff",native:"🦶🏿"}],version:11},ear:{id:"ear",name:"Ear",keywords:["face","hear","sound","listen"],skins:[{unified:"1f442",native:"👂"},{unified:"1f442-1f3fb",native:"👂🏻"},{unified:"1f442-1f3fc",native:"👂🏼"},{unified:"1f442-1f3fd",native:"👂🏽"},{unified:"1f442-1f3fe",native:"👂🏾"},{unified:"1f442-1f3ff",native:"👂🏿"}],version:1},ear_with_hearing_aid:{id:"ear_with_hearing_aid",name:"Ear with Hearing Aid",keywords:["accessibility"],skins:[{unified:"1f9bb",native:"🦻"},{unified:"1f9bb-1f3fb",native:"🦻🏻"},{unified:"1f9bb-1f3fc",native:"🦻🏼"},{unified:"1f9bb-1f3fd",native:"🦻🏽"},{unified:"1f9bb-1f3fe",native:"🦻🏾"},{unified:"1f9bb-1f3ff",native:"🦻🏿"}],version:12},nose:{id:"nose",name:"Nose",keywords:["smell","sniff"],skins:[{unified:"1f443",native:"👃"},{unified:"1f443-1f3fb",native:"👃🏻"},{unified:"1f443-1f3fc",native:"👃🏼"},{unified:"1f443-1f3fd",native:"👃🏽"},{unified:"1f443-1f3fe",native:"👃🏾"},{unified:"1f443-1f3ff",native:"👃🏿"}],version:1},brain:{id:"brain",name:"Brain",keywords:["smart","intelligent"],skins:[{unified:"1f9e0",native:"🧠"}],version:5},anatomical_heart:{id:"anatomical_heart",name:"Anatomical Heart",keywords:["health","heartbeat"],skins:[{unified:"1fac0",native:"🫀"}],version:13},lungs:{id:"lungs",name:"Lungs",keywords:["breathe"],skins:[{unified:"1fac1",native:"🫁"}],version:13},tooth:{id:"tooth",name:"Tooth",keywords:["teeth","dentist"],skins:[{unified:"1f9b7",native:"🦷"}],version:11},bone:{id:"bone",name:"Bone",keywords:["skeleton"],skins:[{unified:"1f9b4",native:"🦴"}],version:11},eyes:{id:"eyes",name:"Eyes",keywords:["look","watch","stalk","peek","see"],skins:[{unified:"1f440",native:"👀"}],version:1},eye:{id:"eye",name:"Eye",keywords:["face","look","see","watch","stare"],skins:[{unified:"1f441-fe0f",native:"👁️"}],version:1},tongue:{id:"tongue",name:"Tongue",keywords:["mouth","playful"],skins:[{unified:"1f445",native:"👅"}],version:1},lips:{id:"lips",name:"Mouth",keywords:["lips","kiss"],skins:[{unified:"1f444",native:"👄"}],version:1},biting_lip:{id:"biting_lip",name:"Biting Lip",keywords:["flirt","sexy","pain","worry"],skins:[{unified:"1fae6",native:"🫦"}],version:14},baby:{id:"baby",name:"Baby",keywords:["child","boy","girl","toddler"],skins:[{unified:"1f476",native:"👶"},{unified:"1f476-1f3fb",native:"👶🏻"},{unified:"1f476-1f3fc",native:"👶🏼"},{unified:"1f476-1f3fd",native:"👶🏽"},{unified:"1f476-1f3fe",native:"👶🏾"},{unified:"1f476-1f3ff",native:"👶🏿"}],version:1},child:{id:"child",name:"Child",keywords:["gender","neutral","young"],skins:[{unified:"1f9d2",native:"🧒"},{unified:"1f9d2-1f3fb",native:"🧒🏻"},{unified:"1f9d2-1f3fc",native:"🧒🏼"},{unified:"1f9d2-1f3fd",native:"🧒🏽"},{unified:"1f9d2-1f3fe",native:"🧒🏾"},{unified:"1f9d2-1f3ff",native:"🧒🏿"}],version:5},boy:{id:"boy",name:"Boy",keywords:["man","male","guy","teenager"],skins:[{unified:"1f466",native:"👦"},{unified:"1f466-1f3fb",native:"👦🏻"},{unified:"1f466-1f3fc",native:"👦🏼"},{unified:"1f466-1f3fd",native:"👦🏽"},{unified:"1f466-1f3fe",native:"👦🏾"},{unified:"1f466-1f3ff",native:"👦🏿"}],version:1},girl:{id:"girl",name:"Girl",keywords:["female","woman","teenager"],skins:[{unified:"1f467",native:"👧"},{unified:"1f467-1f3fb",native:"👧🏻"},{unified:"1f467-1f3fc",native:"👧🏼"},{unified:"1f467-1f3fd",native:"👧🏽"},{unified:"1f467-1f3fe",native:"👧🏾"},{unified:"1f467-1f3ff",native:"👧🏿"}],version:1},adult:{id:"adult",name:"Adult",keywords:["person","gender","neutral"],skins:[{unified:"1f9d1",native:"🧑"},{unified:"1f9d1-1f3fb",native:"🧑🏻"},{unified:"1f9d1-1f3fc",native:"🧑🏼"},{unified:"1f9d1-1f3fd",native:"🧑🏽"},{unified:"1f9d1-1f3fe",native:"🧑🏾"},{unified:"1f9d1-1f3ff",native:"🧑🏿"}],version:5},person_with_blond_hair:{id:"person_with_blond_hair",name:"Person Blond Hair",keywords:["with","hairstyle"],skins:[{unified:"1f471",native:"👱"},{unified:"1f471-1f3fb",native:"👱🏻"},{unified:"1f471-1f3fc",native:"👱🏼"},{unified:"1f471-1f3fd",native:"👱🏽"},{unified:"1f471-1f3fe",native:"👱🏾"},{unified:"1f471-1f3ff",native:"👱🏿"}],version:1},man:{id:"man",name:"Man",keywords:["mustache","father","dad","guy","classy","sir","moustache"],skins:[{unified:"1f468",native:"👨"},{unified:"1f468-1f3fb",native:"👨🏻"},{unified:"1f468-1f3fc",native:"👨🏼"},{unified:"1f468-1f3fd",native:"👨🏽"},{unified:"1f468-1f3fe",native:"👨🏾"},{unified:"1f468-1f3ff",native:"👨🏿"}],version:1},bearded_person:{id:"bearded_person",name:"Person Beard",keywords:["bearded","man","bewhiskered"],skins:[{unified:"1f9d4",native:"🧔"},{unified:"1f9d4-1f3fb",native:"🧔🏻"},{unified:"1f9d4-1f3fc",native:"🧔🏼"},{unified:"1f9d4-1f3fd",native:"🧔🏽"},{unified:"1f9d4-1f3fe",native:"🧔🏾"},{unified:"1f9d4-1f3ff",native:"🧔🏿"}],version:5},man_with_beard:{id:"man_with_beard",name:"Man: Beard",keywords:["man","with","facial","hair"],skins:[{unified:"1f9d4-200d-2642-fe0f",native:"🧔‍♂️"},{unified:"1f9d4-1f3fb-200d-2642-fe0f",native:"🧔🏻‍♂️"},{unified:"1f9d4-1f3fc-200d-2642-fe0f",native:"🧔🏼‍♂️"},{unified:"1f9d4-1f3fd-200d-2642-fe0f",native:"🧔🏽‍♂️"},{unified:"1f9d4-1f3fe-200d-2642-fe0f",native:"🧔🏾‍♂️"},{unified:"1f9d4-1f3ff-200d-2642-fe0f",native:"🧔🏿‍♂️"}],version:13.1},woman_with_beard:{id:"woman_with_beard",name:"Woman: Beard",keywords:["woman","with","facial","hair"],skins:[{unified:"1f9d4-200d-2640-fe0f",native:"🧔‍♀️"},{unified:"1f9d4-1f3fb-200d-2640-fe0f",native:"🧔🏻‍♀️"},{unified:"1f9d4-1f3fc-200d-2640-fe0f",native:"🧔🏼‍♀️"},{unified:"1f9d4-1f3fd-200d-2640-fe0f",native:"🧔🏽‍♀️"},{unified:"1f9d4-1f3fe-200d-2640-fe0f",native:"🧔🏾‍♀️"},{unified:"1f9d4-1f3ff-200d-2640-fe0f",native:"🧔🏿‍♀️"}],version:13.1},red_haired_man:{id:"red_haired_man",name:"Man: Red Hair",keywords:["haired","man","hairstyle"],skins:[{unified:"1f468-200d-1f9b0",native:"👨‍🦰"},{unified:"1f468-1f3fb-200d-1f9b0",native:"👨🏻‍🦰"},{unified:"1f468-1f3fc-200d-1f9b0",native:"👨🏼‍🦰"},{unified:"1f468-1f3fd-200d-1f9b0",native:"👨🏽‍🦰"},{unified:"1f468-1f3fe-200d-1f9b0",native:"👨🏾‍🦰"},{unified:"1f468-1f3ff-200d-1f9b0",native:"👨🏿‍🦰"}],version:11},curly_haired_man:{id:"curly_haired_man",name:"Man: Curly Hair",keywords:["haired","man","hairstyle"],skins:[{unified:"1f468-200d-1f9b1",native:"👨‍🦱"},{unified:"1f468-1f3fb-200d-1f9b1",native:"👨🏻‍🦱"},{unified:"1f468-1f3fc-200d-1f9b1",native:"👨🏼‍🦱"},{unified:"1f468-1f3fd-200d-1f9b1",native:"👨🏽‍🦱"},{unified:"1f468-1f3fe-200d-1f9b1",native:"👨🏾‍🦱"},{unified:"1f468-1f3ff-200d-1f9b1",native:"👨🏿‍🦱"}],version:11},white_haired_man:{id:"white_haired_man",name:"Man: White Hair",keywords:["haired","man","old","elder"],skins:[{unified:"1f468-200d-1f9b3",native:"👨‍🦳"},{unified:"1f468-1f3fb-200d-1f9b3",native:"👨🏻‍🦳"},{unified:"1f468-1f3fc-200d-1f9b3",native:"👨🏼‍🦳"},{unified:"1f468-1f3fd-200d-1f9b3",native:"👨🏽‍🦳"},{unified:"1f468-1f3fe-200d-1f9b3",native:"👨🏾‍🦳"},{unified:"1f468-1f3ff-200d-1f9b3",native:"👨🏿‍🦳"}],version:11},bald_man:{id:"bald_man",name:"Man: Bald",keywords:["man","hairless"],skins:[{unified:"1f468-200d-1f9b2",native:"👨‍🦲"},{unified:"1f468-1f3fb-200d-1f9b2",native:"👨🏻‍🦲"},{unified:"1f468-1f3fc-200d-1f9b2",native:"👨🏼‍🦲"},{unified:"1f468-1f3fd-200d-1f9b2",native:"👨🏽‍🦲"},{unified:"1f468-1f3fe-200d-1f9b2",native:"👨🏾‍🦲"},{unified:"1f468-1f3ff-200d-1f9b2",native:"👨🏿‍🦲"}],version:11},woman:{id:"woman",name:"Woman",keywords:["female","girls","lady"],skins:[{unified:"1f469",native:"👩"},{unified:"1f469-1f3fb",native:"👩🏻"},{unified:"1f469-1f3fc",native:"👩🏼"},{unified:"1f469-1f3fd",native:"👩🏽"},{unified:"1f469-1f3fe",native:"👩🏾"},{unified:"1f469-1f3ff",native:"👩🏿"}],version:1},red_haired_woman:{id:"red_haired_woman",name:"Woman: Red Hair",keywords:["haired","woman","hairstyle"],skins:[{unified:"1f469-200d-1f9b0",native:"👩‍🦰"},{unified:"1f469-1f3fb-200d-1f9b0",native:"👩🏻‍🦰"},{unified:"1f469-1f3fc-200d-1f9b0",native:"👩🏼‍🦰"},{unified:"1f469-1f3fd-200d-1f9b0",native:"👩🏽‍🦰"},{unified:"1f469-1f3fe-200d-1f9b0",native:"👩🏾‍🦰"},{unified:"1f469-1f3ff-200d-1f9b0",native:"👩🏿‍🦰"}],version:11},red_haired_person:{id:"red_haired_person",name:"Person: Red Hair",keywords:["haired","person","hairstyle"],skins:[{unified:"1f9d1-200d-1f9b0",native:"🧑‍🦰"},{unified:"1f9d1-1f3fb-200d-1f9b0",native:"🧑🏻‍🦰"},{unified:"1f9d1-1f3fc-200d-1f9b0",native:"🧑🏼‍🦰"},{unified:"1f9d1-1f3fd-200d-1f9b0",native:"🧑🏽‍🦰"},{unified:"1f9d1-1f3fe-200d-1f9b0",native:"🧑🏾‍🦰"},{unified:"1f9d1-1f3ff-200d-1f9b0",native:"🧑🏿‍🦰"}],version:12.1},curly_haired_woman:{id:"curly_haired_woman",name:"Woman: Curly Hair",keywords:["haired","woman","hairstyle"],skins:[{unified:"1f469-200d-1f9b1",native:"👩‍🦱"},{unified:"1f469-1f3fb-200d-1f9b1",native:"👩🏻‍🦱"},{unified:"1f469-1f3fc-200d-1f9b1",native:"👩🏼‍🦱"},{unified:"1f469-1f3fd-200d-1f9b1",native:"👩🏽‍🦱"},{unified:"1f469-1f3fe-200d-1f9b1",native:"👩🏾‍🦱"},{unified:"1f469-1f3ff-200d-1f9b1",native:"👩🏿‍🦱"}],version:11},curly_haired_person:{id:"curly_haired_person",name:"Person: Curly Hair",keywords:["haired","person","hairstyle"],skins:[{unified:"1f9d1-200d-1f9b1",native:"🧑‍🦱"},{unified:"1f9d1-1f3fb-200d-1f9b1",native:"🧑🏻‍🦱"},{unified:"1f9d1-1f3fc-200d-1f9b1",native:"🧑🏼‍🦱"},{unified:"1f9d1-1f3fd-200d-1f9b1",native:"🧑🏽‍🦱"},{unified:"1f9d1-1f3fe-200d-1f9b1",native:"🧑🏾‍🦱"},{unified:"1f9d1-1f3ff-200d-1f9b1",native:"🧑🏿‍🦱"}],version:12.1},white_haired_woman:{id:"white_haired_woman",name:"Woman: White Hair",keywords:["haired","woman","old","elder"],skins:[{unified:"1f469-200d-1f9b3",native:"👩‍🦳"},{unified:"1f469-1f3fb-200d-1f9b3",native:"👩🏻‍🦳"},{unified:"1f469-1f3fc-200d-1f9b3",native:"👩🏼‍🦳"},{unified:"1f469-1f3fd-200d-1f9b3",native:"👩🏽‍🦳"},{unified:"1f469-1f3fe-200d-1f9b3",native:"👩🏾‍🦳"},{unified:"1f469-1f3ff-200d-1f9b3",native:"👩🏿‍🦳"}],version:11},white_haired_person:{id:"white_haired_person",name:"Person: White Hair",keywords:["haired","person","elder","old"],skins:[{unified:"1f9d1-200d-1f9b3",native:"🧑‍🦳"},{unified:"1f9d1-1f3fb-200d-1f9b3",native:"🧑🏻‍🦳"},{unified:"1f9d1-1f3fc-200d-1f9b3",native:"🧑🏼‍🦳"},{unified:"1f9d1-1f3fd-200d-1f9b3",native:"🧑🏽‍🦳"},{unified:"1f9d1-1f3fe-200d-1f9b3",native:"🧑🏾‍🦳"},{unified:"1f9d1-1f3ff-200d-1f9b3",native:"🧑🏿‍🦳"}],version:12.1},bald_woman:{id:"bald_woman",name:"Woman: Bald",keywords:["woman","hairless"],skins:[{unified:"1f469-200d-1f9b2",native:"👩‍🦲"},{unified:"1f469-1f3fb-200d-1f9b2",native:"👩🏻‍🦲"},{unified:"1f469-1f3fc-200d-1f9b2",native:"👩🏼‍🦲"},{unified:"1f469-1f3fd-200d-1f9b2",native:"👩🏽‍🦲"},{unified:"1f469-1f3fe-200d-1f9b2",native:"👩🏾‍🦲"},{unified:"1f469-1f3ff-200d-1f9b2",native:"👩🏿‍🦲"}],version:11},bald_person:{id:"bald_person",name:"Person: Bald",keywords:["person","hairless"],skins:[{unified:"1f9d1-200d-1f9b2",native:"🧑‍🦲"},{unified:"1f9d1-1f3fb-200d-1f9b2",native:"🧑🏻‍🦲"},{unified:"1f9d1-1f3fc-200d-1f9b2",native:"🧑🏼‍🦲"},{unified:"1f9d1-1f3fd-200d-1f9b2",native:"🧑🏽‍🦲"},{unified:"1f9d1-1f3fe-200d-1f9b2",native:"🧑🏾‍🦲"},{unified:"1f9d1-1f3ff-200d-1f9b2",native:"🧑🏿‍🦲"}],version:12.1},"blond-haired-woman":{id:"blond-haired-woman",name:"Woman: Blond Hair",keywords:["haired-woman","woman","female","girl","blonde","person"],skins:[{unified:"1f471-200d-2640-fe0f",native:"👱‍♀️"},{unified:"1f471-1f3fb-200d-2640-fe0f",native:"👱🏻‍♀️"},{unified:"1f471-1f3fc-200d-2640-fe0f",native:"👱🏼‍♀️"},{unified:"1f471-1f3fd-200d-2640-fe0f",native:"👱🏽‍♀️"},{unified:"1f471-1f3fe-200d-2640-fe0f",native:"👱🏾‍♀️"},{unified:"1f471-1f3ff-200d-2640-fe0f",native:"👱🏿‍♀️"}],version:4},"blond-haired-man":{id:"blond-haired-man",name:"Man: Blond Hair",keywords:["haired-man","man","male","boy","blonde","guy","person"],skins:[{unified:"1f471-200d-2642-fe0f",native:"👱‍♂️"},{unified:"1f471-1f3fb-200d-2642-fe0f",native:"👱🏻‍♂️"},{unified:"1f471-1f3fc-200d-2642-fe0f",native:"👱🏼‍♂️"},{unified:"1f471-1f3fd-200d-2642-fe0f",native:"👱🏽‍♂️"},{unified:"1f471-1f3fe-200d-2642-fe0f",native:"👱🏾‍♂️"},{unified:"1f471-1f3ff-200d-2642-fe0f",native:"👱🏿‍♂️"}],version:4},older_adult:{id:"older_adult",name:"Older Adult",keywords:["person","human","elder","senior","gender","neutral"],skins:[{unified:"1f9d3",native:"🧓"},{unified:"1f9d3-1f3fb",native:"🧓🏻"},{unified:"1f9d3-1f3fc",native:"🧓🏼"},{unified:"1f9d3-1f3fd",native:"🧓🏽"},{unified:"1f9d3-1f3fe",native:"🧓🏾"},{unified:"1f9d3-1f3ff",native:"🧓🏿"}],version:5},older_man:{id:"older_man",name:"Old Man",keywords:["older","human","male","men","elder","senior"],skins:[{unified:"1f474",native:"👴"},{unified:"1f474-1f3fb",native:"👴🏻"},{unified:"1f474-1f3fc",native:"👴🏼"},{unified:"1f474-1f3fd",native:"👴🏽"},{unified:"1f474-1f3fe",native:"👴🏾"},{unified:"1f474-1f3ff",native:"👴🏿"}],version:1},older_woman:{id:"older_woman",name:"Old Woman",keywords:["older","human","female","women","lady","elder","senior"],skins:[{unified:"1f475",native:"👵"},{unified:"1f475-1f3fb",native:"👵🏻"},{unified:"1f475-1f3fc",native:"👵🏼"},{unified:"1f475-1f3fd",native:"👵🏽"},{unified:"1f475-1f3fe",native:"👵🏾"},{unified:"1f475-1f3ff",native:"👵🏿"}],version:1},person_frowning:{id:"person_frowning",name:"Person Frowning",keywords:["worried"],skins:[{unified:"1f64d",native:"🙍"},{unified:"1f64d-1f3fb",native:"🙍🏻"},{unified:"1f64d-1f3fc",native:"🙍🏼"},{unified:"1f64d-1f3fd",native:"🙍🏽"},{unified:"1f64d-1f3fe",native:"🙍🏾"},{unified:"1f64d-1f3ff",native:"🙍🏿"}],version:1},"man-frowning":{id:"man-frowning",name:"Man Frowning",keywords:["male","boy","sad","depressed","discouraged","unhappy"],skins:[{unified:"1f64d-200d-2642-fe0f",native:"🙍‍♂️"},{unified:"1f64d-1f3fb-200d-2642-fe0f",native:"🙍🏻‍♂️"},{unified:"1f64d-1f3fc-200d-2642-fe0f",native:"🙍🏼‍♂️"},{unified:"1f64d-1f3fd-200d-2642-fe0f",native:"🙍🏽‍♂️"},{unified:"1f64d-1f3fe-200d-2642-fe0f",native:"🙍🏾‍♂️"},{unified:"1f64d-1f3ff-200d-2642-fe0f",native:"🙍🏿‍♂️"}],version:4},"woman-frowning":{id:"woman-frowning",name:"Woman Frowning",keywords:["female","girl","sad","depressed","discouraged","unhappy"],skins:[{unified:"1f64d-200d-2640-fe0f",native:"🙍‍♀️"},{unified:"1f64d-1f3fb-200d-2640-fe0f",native:"🙍🏻‍♀️"},{unified:"1f64d-1f3fc-200d-2640-fe0f",native:"🙍🏼‍♀️"},{unified:"1f64d-1f3fd-200d-2640-fe0f",native:"🙍🏽‍♀️"},{unified:"1f64d-1f3fe-200d-2640-fe0f",native:"🙍🏾‍♀️"},{unified:"1f64d-1f3ff-200d-2640-fe0f",native:"🙍🏿‍♀️"}],version:4},person_with_pouting_face:{id:"person_with_pouting_face",name:"Person Pouting",keywords:["with","face","upset"],skins:[{unified:"1f64e",native:"🙎"},{unified:"1f64e-1f3fb",native:"🙎🏻"},{unified:"1f64e-1f3fc",native:"🙎🏼"},{unified:"1f64e-1f3fd",native:"🙎🏽"},{unified:"1f64e-1f3fe",native:"🙎🏾"},{unified:"1f64e-1f3ff",native:"🙎🏿"}],version:1},"man-pouting":{id:"man-pouting",name:"Man Pouting",keywords:["male","boy"],skins:[{unified:"1f64e-200d-2642-fe0f",native:"🙎‍♂️"},{unified:"1f64e-1f3fb-200d-2642-fe0f",native:"🙎🏻‍♂️"},{unified:"1f64e-1f3fc-200d-2642-fe0f",native:"🙎🏼‍♂️"},{unified:"1f64e-1f3fd-200d-2642-fe0f",native:"🙎🏽‍♂️"},{unified:"1f64e-1f3fe-200d-2642-fe0f",native:"🙎🏾‍♂️"},{unified:"1f64e-1f3ff-200d-2642-fe0f",native:"🙎🏿‍♂️"}],version:4},"woman-pouting":{id:"woman-pouting",name:"Woman Pouting",keywords:["female","girl"],skins:[{unified:"1f64e-200d-2640-fe0f",native:"🙎‍♀️"},{unified:"1f64e-1f3fb-200d-2640-fe0f",native:"🙎🏻‍♀️"},{unified:"1f64e-1f3fc-200d-2640-fe0f",native:"🙎🏼‍♀️"},{unified:"1f64e-1f3fd-200d-2640-fe0f",native:"🙎🏽‍♀️"},{unified:"1f64e-1f3fe-200d-2640-fe0f",native:"🙎🏾‍♀️"},{unified:"1f64e-1f3ff-200d-2640-fe0f",native:"🙎🏿‍♀️"}],version:4},no_good:{id:"no_good",name:"Person Gesturing No",keywords:["good","decline"],skins:[{unified:"1f645",native:"🙅"},{unified:"1f645-1f3fb",native:"🙅🏻"},{unified:"1f645-1f3fc",native:"🙅🏼"},{unified:"1f645-1f3fd",native:"🙅🏽"},{unified:"1f645-1f3fe",native:"🙅🏾"},{unified:"1f645-1f3ff",native:"🙅🏿"}],version:1},"man-gesturing-no":{id:"man-gesturing-no",name:"Man Gesturing No",keywords:["gesturing-no","male","boy","nope"],skins:[{unified:"1f645-200d-2642-fe0f",native:"🙅‍♂️"},{unified:"1f645-1f3fb-200d-2642-fe0f",native:"🙅🏻‍♂️"},{unified:"1f645-1f3fc-200d-2642-fe0f",native:"🙅🏼‍♂️"},{unified:"1f645-1f3fd-200d-2642-fe0f",native:"🙅🏽‍♂️"},{unified:"1f645-1f3fe-200d-2642-fe0f",native:"🙅🏾‍♂️"},{unified:"1f645-1f3ff-200d-2642-fe0f",native:"🙅🏿‍♂️"}],version:4},"woman-gesturing-no":{id:"woman-gesturing-no",name:"Woman Gesturing No",keywords:["gesturing-no","female","girl","nope"],skins:[{unified:"1f645-200d-2640-fe0f",native:"🙅‍♀️"},{unified:"1f645-1f3fb-200d-2640-fe0f",native:"🙅🏻‍♀️"},{unified:"1f645-1f3fc-200d-2640-fe0f",native:"🙅🏼‍♀️"},{unified:"1f645-1f3fd-200d-2640-fe0f",native:"🙅🏽‍♀️"},{unified:"1f645-1f3fe-200d-2640-fe0f",native:"🙅🏾‍♀️"},{unified:"1f645-1f3ff-200d-2640-fe0f",native:"🙅🏿‍♀️"}],version:4},ok_woman:{id:"ok_woman",name:"Person Gesturing Ok",keywords:["woman","agree"],skins:[{unified:"1f646",native:"🙆"},{unified:"1f646-1f3fb",native:"🙆🏻"},{unified:"1f646-1f3fc",native:"🙆🏼"},{unified:"1f646-1f3fd",native:"🙆🏽"},{unified:"1f646-1f3fe",native:"🙆🏾"},{unified:"1f646-1f3ff",native:"🙆🏿"}],version:1},"man-gesturing-ok":{id:"man-gesturing-ok",name:"Man Gesturing Ok",keywords:["gesturing-ok","men","boy","male","blue","human"],skins:[{unified:"1f646-200d-2642-fe0f",native:"🙆‍♂️"},{unified:"1f646-1f3fb-200d-2642-fe0f",native:"🙆🏻‍♂️"},{unified:"1f646-1f3fc-200d-2642-fe0f",native:"🙆🏼‍♂️"},{unified:"1f646-1f3fd-200d-2642-fe0f",native:"🙆🏽‍♂️"},{unified:"1f646-1f3fe-200d-2642-fe0f",native:"🙆🏾‍♂️"},{unified:"1f646-1f3ff-200d-2642-fe0f",native:"🙆🏿‍♂️"}],version:4},"woman-gesturing-ok":{id:"woman-gesturing-ok",name:"Woman Gesturing Ok",keywords:["gesturing-ok","women","girl","female","pink","human"],skins:[{unified:"1f646-200d-2640-fe0f",native:"🙆‍♀️"},{unified:"1f646-1f3fb-200d-2640-fe0f",native:"🙆🏻‍♀️"},{unified:"1f646-1f3fc-200d-2640-fe0f",native:"🙆🏼‍♀️"},{unified:"1f646-1f3fd-200d-2640-fe0f",native:"🙆🏽‍♀️"},{unified:"1f646-1f3fe-200d-2640-fe0f",native:"🙆🏾‍♀️"},{unified:"1f646-1f3ff-200d-2640-fe0f",native:"🙆🏿‍♀️"}],version:4},information_desk_person:{id:"information_desk_person",name:"Person Tipping Hand",keywords:["information","desk"],skins:[{unified:"1f481",native:"💁"},{unified:"1f481-1f3fb",native:"💁🏻"},{unified:"1f481-1f3fc",native:"💁🏼"},{unified:"1f481-1f3fd",native:"💁🏽"},{unified:"1f481-1f3fe",native:"💁🏾"},{unified:"1f481-1f3ff",native:"💁🏿"}],version:1},"man-tipping-hand":{id:"man-tipping-hand",name:"Man Tipping Hand",keywords:["tipping-hand","male","boy","human","information"],skins:[{unified:"1f481-200d-2642-fe0f",native:"💁‍♂️"},{unified:"1f481-1f3fb-200d-2642-fe0f",native:"💁🏻‍♂️"},{unified:"1f481-1f3fc-200d-2642-fe0f",native:"💁🏼‍♂️"},{unified:"1f481-1f3fd-200d-2642-fe0f",native:"💁🏽‍♂️"},{unified:"1f481-1f3fe-200d-2642-fe0f",native:"💁🏾‍♂️"},{unified:"1f481-1f3ff-200d-2642-fe0f",native:"💁🏿‍♂️"}],version:4},"woman-tipping-hand":{id:"woman-tipping-hand",name:"Woman Tipping Hand",keywords:["tipping-hand","female","girl","human","information"],skins:[{unified:"1f481-200d-2640-fe0f",native:"💁‍♀️"},{unified:"1f481-1f3fb-200d-2640-fe0f",native:"💁🏻‍♀️"},{unified:"1f481-1f3fc-200d-2640-fe0f",native:"💁🏼‍♀️"},{unified:"1f481-1f3fd-200d-2640-fe0f",native:"💁🏽‍♀️"},{unified:"1f481-1f3fe-200d-2640-fe0f",native:"💁🏾‍♀️"},{unified:"1f481-1f3ff-200d-2640-fe0f",native:"💁🏿‍♀️"}],version:4},raising_hand:{id:"raising_hand",name:"Person Raising Hand",keywords:["question"],skins:[{unified:"1f64b",native:"🙋"},{unified:"1f64b-1f3fb",native:"🙋🏻"},{unified:"1f64b-1f3fc",native:"🙋🏼"},{unified:"1f64b-1f3fd",native:"🙋🏽"},{unified:"1f64b-1f3fe",native:"🙋🏾"},{unified:"1f64b-1f3ff",native:"🙋🏿"}],version:1},"man-raising-hand":{id:"man-raising-hand",name:"Man Raising Hand",keywords:["raising-hand","male","boy"],skins:[{unified:"1f64b-200d-2642-fe0f",native:"🙋‍♂️"},{unified:"1f64b-1f3fb-200d-2642-fe0f",native:"🙋🏻‍♂️"},{unified:"1f64b-1f3fc-200d-2642-fe0f",native:"🙋🏼‍♂️"},{unified:"1f64b-1f3fd-200d-2642-fe0f",native:"🙋🏽‍♂️"},{unified:"1f64b-1f3fe-200d-2642-fe0f",native:"🙋🏾‍♂️"},{unified:"1f64b-1f3ff-200d-2642-fe0f",native:"🙋🏿‍♂️"}],version:4},"woman-raising-hand":{id:"woman-raising-hand",name:"Woman Raising Hand",keywords:["raising-hand","female","girl"],skins:[{unified:"1f64b-200d-2640-fe0f",native:"🙋‍♀️"},{unified:"1f64b-1f3fb-200d-2640-fe0f",native:"🙋🏻‍♀️"},{unified:"1f64b-1f3fc-200d-2640-fe0f",native:"🙋🏼‍♀️"},{unified:"1f64b-1f3fd-200d-2640-fe0f",native:"🙋🏽‍♀️"},{unified:"1f64b-1f3fe-200d-2640-fe0f",native:"🙋🏾‍♀️"},{unified:"1f64b-1f3ff-200d-2640-fe0f",native:"🙋🏿‍♀️"}],version:4},deaf_person:{id:"deaf_person",name:"Deaf Person",keywords:["accessibility"],skins:[{unified:"1f9cf",native:"🧏"},{unified:"1f9cf-1f3fb",native:"🧏🏻"},{unified:"1f9cf-1f3fc",native:"🧏🏼"},{unified:"1f9cf-1f3fd",native:"🧏🏽"},{unified:"1f9cf-1f3fe",native:"🧏🏾"},{unified:"1f9cf-1f3ff",native:"🧏🏿"}],version:12},deaf_man:{id:"deaf_man",name:"Deaf Man",keywords:["accessibility"],skins:[{unified:"1f9cf-200d-2642-fe0f",native:"🧏‍♂️"},{unified:"1f9cf-1f3fb-200d-2642-fe0f",native:"🧏🏻‍♂️"},{unified:"1f9cf-1f3fc-200d-2642-fe0f",native:"🧏🏼‍♂️"},{unified:"1f9cf-1f3fd-200d-2642-fe0f",native:"🧏🏽‍♂️"},{unified:"1f9cf-1f3fe-200d-2642-fe0f",native:"🧏🏾‍♂️"},{unified:"1f9cf-1f3ff-200d-2642-fe0f",native:"🧏🏿‍♂️"}],version:12},deaf_woman:{id:"deaf_woman",name:"Deaf Woman",keywords:["accessibility"],skins:[{unified:"1f9cf-200d-2640-fe0f",native:"🧏‍♀️"},{unified:"1f9cf-1f3fb-200d-2640-fe0f",native:"🧏🏻‍♀️"},{unified:"1f9cf-1f3fc-200d-2640-fe0f",native:"🧏🏼‍♀️"},{unified:"1f9cf-1f3fd-200d-2640-fe0f",native:"🧏🏽‍♀️"},{unified:"1f9cf-1f3fe-200d-2640-fe0f",native:"🧏🏾‍♀️"},{unified:"1f9cf-1f3ff-200d-2640-fe0f",native:"🧏🏿‍♀️"}],version:12},bow:{id:"bow",name:"Person Bowing",keywords:["bow","respectiful"],skins:[{unified:"1f647",native:"🙇"},{unified:"1f647-1f3fb",native:"🙇🏻"},{unified:"1f647-1f3fc",native:"🙇🏼"},{unified:"1f647-1f3fd",native:"🙇🏽"},{unified:"1f647-1f3fe",native:"🙇🏾"},{unified:"1f647-1f3ff",native:"🙇🏿"}],version:1},"man-bowing":{id:"man-bowing",name:"Man Bowing",keywords:["male","boy"],skins:[{unified:"1f647-200d-2642-fe0f",native:"🙇‍♂️"},{unified:"1f647-1f3fb-200d-2642-fe0f",native:"🙇🏻‍♂️"},{unified:"1f647-1f3fc-200d-2642-fe0f",native:"🙇🏼‍♂️"},{unified:"1f647-1f3fd-200d-2642-fe0f",native:"🙇🏽‍♂️"},{unified:"1f647-1f3fe-200d-2642-fe0f",native:"🙇🏾‍♂️"},{unified:"1f647-1f3ff-200d-2642-fe0f",native:"🙇🏿‍♂️"}],version:4},"woman-bowing":{id:"woman-bowing",name:"Woman Bowing",keywords:["female","girl"],skins:[{unified:"1f647-200d-2640-fe0f",native:"🙇‍♀️"},{unified:"1f647-1f3fb-200d-2640-fe0f",native:"🙇🏻‍♀️"},{unified:"1f647-1f3fc-200d-2640-fe0f",native:"🙇🏼‍♀️"},{unified:"1f647-1f3fd-200d-2640-fe0f",native:"🙇🏽‍♀️"},{unified:"1f647-1f3fe-200d-2640-fe0f",native:"🙇🏾‍♀️"},{unified:"1f647-1f3ff-200d-2640-fe0f",native:"🙇🏿‍♀️"}],version:4},face_palm:{id:"face_palm",name:"Face Palm",keywords:["person","facepalming","disappointed"],skins:[{unified:"1f926",native:"🤦"},{unified:"1f926-1f3fb",native:"🤦🏻"},{unified:"1f926-1f3fc",native:"🤦🏼"},{unified:"1f926-1f3fd",native:"🤦🏽"},{unified:"1f926-1f3fe",native:"🤦🏾"},{unified:"1f926-1f3ff",native:"🤦🏿"}],version:3},"man-facepalming":{id:"man-facepalming",name:"Man Facepalming",keywords:["male","boy","disbelief"],skins:[{unified:"1f926-200d-2642-fe0f",native:"🤦‍♂️"},{unified:"1f926-1f3fb-200d-2642-fe0f",native:"🤦🏻‍♂️"},{unified:"1f926-1f3fc-200d-2642-fe0f",native:"🤦🏼‍♂️"},{unified:"1f926-1f3fd-200d-2642-fe0f",native:"🤦🏽‍♂️"},{unified:"1f926-1f3fe-200d-2642-fe0f",native:"🤦🏾‍♂️"},{unified:"1f926-1f3ff-200d-2642-fe0f",native:"🤦🏿‍♂️"}],version:4},"woman-facepalming":{id:"woman-facepalming",name:"Woman Facepalming",keywords:["female","girl","disbelief"],skins:[{unified:"1f926-200d-2640-fe0f",native:"🤦‍♀️"},{unified:"1f926-1f3fb-200d-2640-fe0f",native:"🤦🏻‍♀️"},{unified:"1f926-1f3fc-200d-2640-fe0f",native:"🤦🏼‍♀️"},{unified:"1f926-1f3fd-200d-2640-fe0f",native:"🤦🏽‍♀️"},{unified:"1f926-1f3fe-200d-2640-fe0f",native:"🤦🏾‍♀️"},{unified:"1f926-1f3ff-200d-2640-fe0f",native:"🤦🏿‍♀️"}],version:4},shrug:{id:"shrug",name:"Shrug",keywords:["person","shrugging","regardless"],skins:[{unified:"1f937",native:"🤷"},{unified:"1f937-1f3fb",native:"🤷🏻"},{unified:"1f937-1f3fc",native:"🤷🏼"},{unified:"1f937-1f3fd",native:"🤷🏽"},{unified:"1f937-1f3fe",native:"🤷🏾"},{unified:"1f937-1f3ff",native:"🤷🏿"}],version:3},"man-shrugging":{id:"man-shrugging",name:"Man Shrugging",keywords:["male","boy","confused","indifferent","doubt"],skins:[{unified:"1f937-200d-2642-fe0f",native:"🤷‍♂️"},{unified:"1f937-1f3fb-200d-2642-fe0f",native:"🤷🏻‍♂️"},{unified:"1f937-1f3fc-200d-2642-fe0f",native:"🤷🏼‍♂️"},{unified:"1f937-1f3fd-200d-2642-fe0f",native:"🤷🏽‍♂️"},{unified:"1f937-1f3fe-200d-2642-fe0f",native:"🤷🏾‍♂️"},{unified:"1f937-1f3ff-200d-2642-fe0f",native:"🤷🏿‍♂️"}],version:4},"woman-shrugging":{id:"woman-shrugging",name:"Woman Shrugging",keywords:["female","girl","confused","indifferent","doubt"],skins:[{unified:"1f937-200d-2640-fe0f",native:"🤷‍♀️"},{unified:"1f937-1f3fb-200d-2640-fe0f",native:"🤷🏻‍♀️"},{unified:"1f937-1f3fc-200d-2640-fe0f",native:"🤷🏼‍♀️"},{unified:"1f937-1f3fd-200d-2640-fe0f",native:"🤷🏽‍♀️"},{unified:"1f937-1f3fe-200d-2640-fe0f",native:"🤷🏾‍♀️"},{unified:"1f937-1f3ff-200d-2640-fe0f",native:"🤷🏿‍♀️"}],version:4},health_worker:{id:"health_worker",name:"Health Worker",keywords:["hospital"],skins:[{unified:"1f9d1-200d-2695-fe0f",native:"🧑‍⚕️"},{unified:"1f9d1-1f3fb-200d-2695-fe0f",native:"🧑🏻‍⚕️"},{unified:"1f9d1-1f3fc-200d-2695-fe0f",native:"🧑🏼‍⚕️"},{unified:"1f9d1-1f3fd-200d-2695-fe0f",native:"🧑🏽‍⚕️"},{unified:"1f9d1-1f3fe-200d-2695-fe0f",native:"🧑🏾‍⚕️"},{unified:"1f9d1-1f3ff-200d-2695-fe0f",native:"🧑🏿‍⚕️"}],version:12.1},"male-doctor":{id:"male-doctor",name:"Man Health Worker",keywords:["male","doctor","nurse","therapist","healthcare","human"],skins:[{unified:"1f468-200d-2695-fe0f",native:"👨‍⚕️"},{unified:"1f468-1f3fb-200d-2695-fe0f",native:"👨🏻‍⚕️"},{unified:"1f468-1f3fc-200d-2695-fe0f",native:"👨🏼‍⚕️"},{unified:"1f468-1f3fd-200d-2695-fe0f",native:"👨🏽‍⚕️"},{unified:"1f468-1f3fe-200d-2695-fe0f",native:"👨🏾‍⚕️"},{unified:"1f468-1f3ff-200d-2695-fe0f",native:"👨🏿‍⚕️"}],version:4},"female-doctor":{id:"female-doctor",name:"Woman Health Worker",keywords:["female","doctor","nurse","therapist","healthcare","human"],skins:[{unified:"1f469-200d-2695-fe0f",native:"👩‍⚕️"},{unified:"1f469-1f3fb-200d-2695-fe0f",native:"👩🏻‍⚕️"},{unified:"1f469-1f3fc-200d-2695-fe0f",native:"👩🏼‍⚕️"},{unified:"1f469-1f3fd-200d-2695-fe0f",native:"👩🏽‍⚕️"},{unified:"1f469-1f3fe-200d-2695-fe0f",native:"👩🏾‍⚕️"},{unified:"1f469-1f3ff-200d-2695-fe0f",native:"👩🏿‍⚕️"}],version:4},student:{id:"student",name:"Student",keywords:["learn"],skins:[{unified:"1f9d1-200d-1f393",native:"🧑‍🎓"},{unified:"1f9d1-1f3fb-200d-1f393",native:"🧑🏻‍🎓"},{unified:"1f9d1-1f3fc-200d-1f393",native:"🧑🏼‍🎓"},{unified:"1f9d1-1f3fd-200d-1f393",native:"🧑🏽‍🎓"},{unified:"1f9d1-1f3fe-200d-1f393",native:"🧑🏾‍🎓"},{unified:"1f9d1-1f3ff-200d-1f393",native:"🧑🏿‍🎓"}],version:12.1},"male-student":{id:"male-student",name:"Man Student",keywords:["male","graduate","human"],skins:[{unified:"1f468-200d-1f393",native:"👨‍🎓"},{unified:"1f468-1f3fb-200d-1f393",native:"👨🏻‍🎓"},{unified:"1f468-1f3fc-200d-1f393",native:"👨🏼‍🎓"},{unified:"1f468-1f3fd-200d-1f393",native:"👨🏽‍🎓"},{unified:"1f468-1f3fe-200d-1f393",native:"👨🏾‍🎓"},{unified:"1f468-1f3ff-200d-1f393",native:"👨🏿‍🎓"}],version:4},"female-student":{id:"female-student",name:"Woman Student",keywords:["female","graduate","human"],skins:[{unified:"1f469-200d-1f393",native:"👩‍🎓"},{unified:"1f469-1f3fb-200d-1f393",native:"👩🏻‍🎓"},{unified:"1f469-1f3fc-200d-1f393",native:"👩🏼‍🎓"},{unified:"1f469-1f3fd-200d-1f393",native:"👩🏽‍🎓"},{unified:"1f469-1f3fe-200d-1f393",native:"👩🏾‍🎓"},{unified:"1f469-1f3ff-200d-1f393",native:"👩🏿‍🎓"}],version:4},teacher:{id:"teacher",name:"Teacher",keywords:["professor"],skins:[{unified:"1f9d1-200d-1f3eb",native:"🧑‍🏫"},{unified:"1f9d1-1f3fb-200d-1f3eb",native:"🧑🏻‍🏫"},{unified:"1f9d1-1f3fc-200d-1f3eb",native:"🧑🏼‍🏫"},{unified:"1f9d1-1f3fd-200d-1f3eb",native:"🧑🏽‍🏫"},{unified:"1f9d1-1f3fe-200d-1f3eb",native:"🧑🏾‍🏫"},{unified:"1f9d1-1f3ff-200d-1f3eb",native:"🧑🏿‍🏫"}],version:12.1},"male-teacher":{id:"male-teacher",name:"Man Teacher",keywords:["male","instructor","professor","human"],skins:[{unified:"1f468-200d-1f3eb",native:"👨‍🏫"},{unified:"1f468-1f3fb-200d-1f3eb",native:"👨🏻‍🏫"},{unified:"1f468-1f3fc-200d-1f3eb",native:"👨🏼‍🏫"},{unified:"1f468-1f3fd-200d-1f3eb",native:"👨🏽‍🏫"},{unified:"1f468-1f3fe-200d-1f3eb",native:"👨🏾‍🏫"},{unified:"1f468-1f3ff-200d-1f3eb",native:"👨🏿‍🏫"}],version:4},"female-teacher":{id:"female-teacher",name:"Woman Teacher",keywords:["female","instructor","professor","human"],skins:[{unified:"1f469-200d-1f3eb",native:"👩‍🏫"},{unified:"1f469-1f3fb-200d-1f3eb",native:"👩🏻‍🏫"},{unified:"1f469-1f3fc-200d-1f3eb",native:"👩🏼‍🏫"},{unified:"1f469-1f3fd-200d-1f3eb",native:"👩🏽‍🏫"},{unified:"1f469-1f3fe-200d-1f3eb",native:"👩🏾‍🏫"},{unified:"1f469-1f3ff-200d-1f3eb",native:"👩🏿‍🏫"}],version:4},judge:{id:"judge",name:"Judge",keywords:["law"],skins:[{unified:"1f9d1-200d-2696-fe0f",native:"🧑‍⚖️"},{unified:"1f9d1-1f3fb-200d-2696-fe0f",native:"🧑🏻‍⚖️"},{unified:"1f9d1-1f3fc-200d-2696-fe0f",native:"🧑🏼‍⚖️"},{unified:"1f9d1-1f3fd-200d-2696-fe0f",native:"🧑🏽‍⚖️"},{unified:"1f9d1-1f3fe-200d-2696-fe0f",native:"🧑🏾‍⚖️"},{unified:"1f9d1-1f3ff-200d-2696-fe0f",native:"🧑🏿‍⚖️"}],version:12.1},"male-judge":{id:"male-judge",name:"Man Judge",keywords:["male","justice","court","human"],skins:[{unified:"1f468-200d-2696-fe0f",native:"👨‍⚖️"},{unified:"1f468-1f3fb-200d-2696-fe0f",native:"👨🏻‍⚖️"},{unified:"1f468-1f3fc-200d-2696-fe0f",native:"👨🏼‍⚖️"},{unified:"1f468-1f3fd-200d-2696-fe0f",native:"👨🏽‍⚖️"},{unified:"1f468-1f3fe-200d-2696-fe0f",native:"👨🏾‍⚖️"},{unified:"1f468-1f3ff-200d-2696-fe0f",native:"👨🏿‍⚖️"}],version:4},"female-judge":{id:"female-judge",name:"Woman Judge",keywords:["female","justice","court","human"],skins:[{unified:"1f469-200d-2696-fe0f",native:"👩‍⚖️"},{unified:"1f469-1f3fb-200d-2696-fe0f",native:"👩🏻‍⚖️"},{unified:"1f469-1f3fc-200d-2696-fe0f",native:"👩🏼‍⚖️"},{unified:"1f469-1f3fd-200d-2696-fe0f",native:"👩🏽‍⚖️"},{unified:"1f469-1f3fe-200d-2696-fe0f",native:"👩🏾‍⚖️"},{unified:"1f469-1f3ff-200d-2696-fe0f",native:"👩🏿‍⚖️"}],version:4},farmer:{id:"farmer",name:"Farmer",keywords:["crops"],skins:[{unified:"1f9d1-200d-1f33e",native:"🧑‍🌾"},{unified:"1f9d1-1f3fb-200d-1f33e",native:"🧑🏻‍🌾"},{unified:"1f9d1-1f3fc-200d-1f33e",native:"🧑🏼‍🌾"},{unified:"1f9d1-1f3fd-200d-1f33e",native:"🧑🏽‍🌾"},{unified:"1f9d1-1f3fe-200d-1f33e",native:"🧑🏾‍🌾"},{unified:"1f9d1-1f3ff-200d-1f33e",native:"🧑🏿‍🌾"}],version:12.1},"male-farmer":{id:"male-farmer",name:"Man Farmer",keywords:["male","rancher","gardener","human"],skins:[{unified:"1f468-200d-1f33e",native:"👨‍🌾"},{unified:"1f468-1f3fb-200d-1f33e",native:"👨🏻‍🌾"},{unified:"1f468-1f3fc-200d-1f33e",native:"👨🏼‍🌾"},{unified:"1f468-1f3fd-200d-1f33e",native:"👨🏽‍🌾"},{unified:"1f468-1f3fe-200d-1f33e",native:"👨🏾‍🌾"},{unified:"1f468-1f3ff-200d-1f33e",native:"👨🏿‍🌾"}],version:4},"female-farmer":{id:"female-farmer",name:"Woman Farmer",keywords:["female","rancher","gardener","human"],skins:[{unified:"1f469-200d-1f33e",native:"👩‍🌾"},{unified:"1f469-1f3fb-200d-1f33e",native:"👩🏻‍🌾"},{unified:"1f469-1f3fc-200d-1f33e",native:"👩🏼‍🌾"},{unified:"1f469-1f3fd-200d-1f33e",native:"👩🏽‍🌾"},{unified:"1f469-1f3fe-200d-1f33e",native:"👩🏾‍🌾"},{unified:"1f469-1f3ff-200d-1f33e",native:"👩🏿‍🌾"}],version:4},cook:{id:"cook",name:"Cook",keywords:["food","kitchen","culinary"],skins:[{unified:"1f9d1-200d-1f373",native:"🧑‍🍳"},{unified:"1f9d1-1f3fb-200d-1f373",native:"🧑🏻‍🍳"},{unified:"1f9d1-1f3fc-200d-1f373",native:"🧑🏼‍🍳"},{unified:"1f9d1-1f3fd-200d-1f373",native:"🧑🏽‍🍳"},{unified:"1f9d1-1f3fe-200d-1f373",native:"🧑🏾‍🍳"},{unified:"1f9d1-1f3ff-200d-1f373",native:"🧑🏿‍🍳"}],version:12.1},"male-cook":{id:"male-cook",name:"Man Cook",keywords:["male","chef","human"],skins:[{unified:"1f468-200d-1f373",native:"👨‍🍳"},{unified:"1f468-1f3fb-200d-1f373",native:"👨🏻‍🍳"},{unified:"1f468-1f3fc-200d-1f373",native:"👨🏼‍🍳"},{unified:"1f468-1f3fd-200d-1f373",native:"👨🏽‍🍳"},{unified:"1f468-1f3fe-200d-1f373",native:"👨🏾‍🍳"},{unified:"1f468-1f3ff-200d-1f373",native:"👨🏿‍🍳"}],version:4},"female-cook":{id:"female-cook",name:"Woman Cook",keywords:["female","chef","human"],skins:[{unified:"1f469-200d-1f373",native:"👩‍🍳"},{unified:"1f469-1f3fb-200d-1f373",native:"👩🏻‍🍳"},{unified:"1f469-1f3fc-200d-1f373",native:"👩🏼‍🍳"},{unified:"1f469-1f3fd-200d-1f373",native:"👩🏽‍🍳"},{unified:"1f469-1f3fe-200d-1f373",native:"👩🏾‍🍳"},{unified:"1f469-1f3ff-200d-1f373",native:"👩🏿‍🍳"}],version:4},mechanic:{id:"mechanic",name:"Mechanic",keywords:["worker","technician"],skins:[{unified:"1f9d1-200d-1f527",native:"🧑‍🔧"},{unified:"1f9d1-1f3fb-200d-1f527",native:"🧑🏻‍🔧"},{unified:"1f9d1-1f3fc-200d-1f527",native:"🧑🏼‍🔧"},{unified:"1f9d1-1f3fd-200d-1f527",native:"🧑🏽‍🔧"},{unified:"1f9d1-1f3fe-200d-1f527",native:"🧑🏾‍🔧"},{unified:"1f9d1-1f3ff-200d-1f527",native:"🧑🏿‍🔧"}],version:12.1},"male-mechanic":{id:"male-mechanic",name:"Man Mechanic",keywords:["male","plumber","human","wrench"],skins:[{unified:"1f468-200d-1f527",native:"👨‍🔧"},{unified:"1f468-1f3fb-200d-1f527",native:"👨🏻‍🔧"},{unified:"1f468-1f3fc-200d-1f527",native:"👨🏼‍🔧"},{unified:"1f468-1f3fd-200d-1f527",native:"👨🏽‍🔧"},{unified:"1f468-1f3fe-200d-1f527",native:"👨🏾‍🔧"},{unified:"1f468-1f3ff-200d-1f527",native:"👨🏿‍🔧"}],version:4},"female-mechanic":{id:"female-mechanic",name:"Woman Mechanic",keywords:["female","plumber","human","wrench"],skins:[{unified:"1f469-200d-1f527",native:"👩‍🔧"},{unified:"1f469-1f3fb-200d-1f527",native:"👩🏻‍🔧"},{unified:"1f469-1f3fc-200d-1f527",native:"👩🏼‍🔧"},{unified:"1f469-1f3fd-200d-1f527",native:"👩🏽‍🔧"},{unified:"1f469-1f3fe-200d-1f527",native:"👩🏾‍🔧"},{unified:"1f469-1f3ff-200d-1f527",native:"👩🏿‍🔧"}],version:4},factory_worker:{id:"factory_worker",name:"Factory Worker",keywords:["labor"],skins:[{unified:"1f9d1-200d-1f3ed",native:"🧑‍🏭"},{unified:"1f9d1-1f3fb-200d-1f3ed",native:"🧑🏻‍🏭"},{unified:"1f9d1-1f3fc-200d-1f3ed",native:"🧑🏼‍🏭"},{unified:"1f9d1-1f3fd-200d-1f3ed",native:"🧑🏽‍🏭"},{unified:"1f9d1-1f3fe-200d-1f3ed",native:"🧑🏾‍🏭"},{unified:"1f9d1-1f3ff-200d-1f3ed",native:"🧑🏿‍🏭"}],version:12.1},"male-factory-worker":{id:"male-factory-worker",name:"Man Factory Worker",keywords:["male","factory-worker","assembly","industrial","human"],skins:[{unified:"1f468-200d-1f3ed",native:"👨‍🏭"},{unified:"1f468-1f3fb-200d-1f3ed",native:"👨🏻‍🏭"},{unified:"1f468-1f3fc-200d-1f3ed",native:"👨🏼‍🏭"},{unified:"1f468-1f3fd-200d-1f3ed",native:"👨🏽‍🏭"},{unified:"1f468-1f3fe-200d-1f3ed",native:"👨🏾‍🏭"},{unified:"1f468-1f3ff-200d-1f3ed",native:"👨🏿‍🏭"}],version:4},"female-factory-worker":{id:"female-factory-worker",name:"Woman Factory Worker",keywords:["female","factory-worker","assembly","industrial","human"],skins:[{unified:"1f469-200d-1f3ed",native:"👩‍🏭"},{unified:"1f469-1f3fb-200d-1f3ed",native:"👩🏻‍🏭"},{unified:"1f469-1f3fc-200d-1f3ed",native:"👩🏼‍🏭"},{unified:"1f469-1f3fd-200d-1f3ed",native:"👩🏽‍🏭"},{unified:"1f469-1f3fe-200d-1f3ed",native:"👩🏾‍🏭"},{unified:"1f469-1f3ff-200d-1f3ed",native:"👩🏿‍🏭"}],version:4},office_worker:{id:"office_worker",name:"Office Worker",keywords:["business"],skins:[{unified:"1f9d1-200d-1f4bc",native:"🧑‍💼"},{unified:"1f9d1-1f3fb-200d-1f4bc",native:"🧑🏻‍💼"},{unified:"1f9d1-1f3fc-200d-1f4bc",native:"🧑🏼‍💼"},{unified:"1f9d1-1f3fd-200d-1f4bc",native:"🧑🏽‍💼"},{unified:"1f9d1-1f3fe-200d-1f4bc",native:"🧑🏾‍💼"},{unified:"1f9d1-1f3ff-200d-1f4bc",native:"🧑🏿‍💼"}],version:12.1},"male-office-worker":{id:"male-office-worker",name:"Man Office Worker",keywords:["male","office-worker","business","manager","human"],skins:[{unified:"1f468-200d-1f4bc",native:"👨‍💼"},{unified:"1f468-1f3fb-200d-1f4bc",native:"👨🏻‍💼"},{unified:"1f468-1f3fc-200d-1f4bc",native:"👨🏼‍💼"},{unified:"1f468-1f3fd-200d-1f4bc",native:"👨🏽‍💼"},{unified:"1f468-1f3fe-200d-1f4bc",native:"👨🏾‍💼"},{unified:"1f468-1f3ff-200d-1f4bc",native:"👨🏿‍💼"}],version:4},"female-office-worker":{id:"female-office-worker",name:"Woman Office Worker",keywords:["female","office-worker","business","manager","human"],skins:[{unified:"1f469-200d-1f4bc",native:"👩‍💼"},{unified:"1f469-1f3fb-200d-1f4bc",native:"👩🏻‍💼"},{unified:"1f469-1f3fc-200d-1f4bc",native:"👩🏼‍💼"},{unified:"1f469-1f3fd-200d-1f4bc",native:"👩🏽‍💼"},{unified:"1f469-1f3fe-200d-1f4bc",native:"👩🏾‍💼"},{unified:"1f469-1f3ff-200d-1f4bc",native:"👩🏿‍💼"}],version:4},scientist:{id:"scientist",name:"Scientist",keywords:["chemistry"],skins:[{unified:"1f9d1-200d-1f52c",native:"🧑‍🔬"},{unified:"1f9d1-1f3fb-200d-1f52c",native:"🧑🏻‍🔬"},{unified:"1f9d1-1f3fc-200d-1f52c",native:"🧑🏼‍🔬"},{unified:"1f9d1-1f3fd-200d-1f52c",native:"🧑🏽‍🔬"},{unified:"1f9d1-1f3fe-200d-1f52c",native:"🧑🏾‍🔬"},{unified:"1f9d1-1f3ff-200d-1f52c",native:"🧑🏿‍🔬"}],version:12.1},"male-scientist":{id:"male-scientist",name:"Man Scientist",keywords:["male","biologist","chemist","engineer","physicist","human"],skins:[{unified:"1f468-200d-1f52c",native:"👨‍🔬"},{unified:"1f468-1f3fb-200d-1f52c",native:"👨🏻‍🔬"},{unified:"1f468-1f3fc-200d-1f52c",native:"👨🏼‍🔬"},{unified:"1f468-1f3fd-200d-1f52c",native:"👨🏽‍🔬"},{unified:"1f468-1f3fe-200d-1f52c",native:"👨🏾‍🔬"},{unified:"1f468-1f3ff-200d-1f52c",native:"👨🏿‍🔬"}],version:4},"female-scientist":{id:"female-scientist",name:"Woman Scientist",keywords:["female","biologist","chemist","engineer","physicist","human"],skins:[{unified:"1f469-200d-1f52c",native:"👩‍🔬"},{unified:"1f469-1f3fb-200d-1f52c",native:"👩🏻‍🔬"},{unified:"1f469-1f3fc-200d-1f52c",native:"👩🏼‍🔬"},{unified:"1f469-1f3fd-200d-1f52c",native:"👩🏽‍🔬"},{unified:"1f469-1f3fe-200d-1f52c",native:"👩🏾‍🔬"},{unified:"1f469-1f3ff-200d-1f52c",native:"👩🏿‍🔬"}],version:4},technologist:{id:"technologist",name:"Technologist",keywords:["computer"],skins:[{unified:"1f9d1-200d-1f4bb",native:"🧑‍💻"},{unified:"1f9d1-1f3fb-200d-1f4bb",native:"🧑🏻‍💻"},{unified:"1f9d1-1f3fc-200d-1f4bb",native:"🧑🏼‍💻"},{unified:"1f9d1-1f3fd-200d-1f4bb",native:"🧑🏽‍💻"},{unified:"1f9d1-1f3fe-200d-1f4bb",native:"🧑🏾‍💻"},{unified:"1f9d1-1f3ff-200d-1f4bb",native:"🧑🏿‍💻"}],version:12.1},"male-technologist":{id:"male-technologist",name:"Man Technologist",keywords:["male","coder","developer","engineer","programmer","software","human","laptop","computer"],skins:[{unified:"1f468-200d-1f4bb",native:"👨‍💻"},{unified:"1f468-1f3fb-200d-1f4bb",native:"👨🏻‍💻"},{unified:"1f468-1f3fc-200d-1f4bb",native:"👨🏼‍💻"},{unified:"1f468-1f3fd-200d-1f4bb",native:"👨🏽‍💻"},{unified:"1f468-1f3fe-200d-1f4bb",native:"👨🏾‍💻"},{unified:"1f468-1f3ff-200d-1f4bb",native:"👨🏿‍💻"}],version:4},"female-technologist":{id:"female-technologist",name:"Woman Technologist",keywords:["female","coder","developer","engineer","programmer","software","human","laptop","computer"],skins:[{unified:"1f469-200d-1f4bb",native:"👩‍💻"},{unified:"1f469-1f3fb-200d-1f4bb",native:"👩🏻‍💻"},{unified:"1f469-1f3fc-200d-1f4bb",native:"👩🏼‍💻"},{unified:"1f469-1f3fd-200d-1f4bb",native:"👩🏽‍💻"},{unified:"1f469-1f3fe-200d-1f4bb",native:"👩🏾‍💻"},{unified:"1f469-1f3ff-200d-1f4bb",native:"👩🏿‍💻"}],version:4},singer:{id:"singer",name:"Singer",keywords:["song","artist","performer"],skins:[{unified:"1f9d1-200d-1f3a4",native:"🧑‍🎤"},{unified:"1f9d1-1f3fb-200d-1f3a4",native:"🧑🏻‍🎤"},{unified:"1f9d1-1f3fc-200d-1f3a4",native:"🧑🏼‍🎤"},{unified:"1f9d1-1f3fd-200d-1f3a4",native:"🧑🏽‍🎤"},{unified:"1f9d1-1f3fe-200d-1f3a4",native:"🧑🏾‍🎤"},{unified:"1f9d1-1f3ff-200d-1f3a4",native:"🧑🏿‍🎤"}],version:12.1},"male-singer":{id:"male-singer",name:"Man Singer",keywords:["male","rockstar","entertainer","human"],skins:[{unified:"1f468-200d-1f3a4",native:"👨‍🎤"},{unified:"1f468-1f3fb-200d-1f3a4",native:"👨🏻‍🎤"},{unified:"1f468-1f3fc-200d-1f3a4",native:"👨🏼‍🎤"},{unified:"1f468-1f3fd-200d-1f3a4",native:"👨🏽‍🎤"},{unified:"1f468-1f3fe-200d-1f3a4",native:"👨🏾‍🎤"},{unified:"1f468-1f3ff-200d-1f3a4",native:"👨🏿‍🎤"}],version:4},"female-singer":{id:"female-singer",name:"Woman Singer",keywords:["female","rockstar","entertainer","human"],skins:[{unified:"1f469-200d-1f3a4",native:"👩‍🎤"},{unified:"1f469-1f3fb-200d-1f3a4",native:"👩🏻‍🎤"},{unified:"1f469-1f3fc-200d-1f3a4",native:"👩🏼‍🎤"},{unified:"1f469-1f3fd-200d-1f3a4",native:"👩🏽‍🎤"},{unified:"1f469-1f3fe-200d-1f3a4",native:"👩🏾‍🎤"},{unified:"1f469-1f3ff-200d-1f3a4",native:"👩🏿‍🎤"}],version:4},artist:{id:"artist",name:"Artist",keywords:["painting","draw","creativity"],skins:[{unified:"1f9d1-200d-1f3a8",native:"🧑‍🎨"},{unified:"1f9d1-1f3fb-200d-1f3a8",native:"🧑🏻‍🎨"},{unified:"1f9d1-1f3fc-200d-1f3a8",native:"🧑🏼‍🎨"},{unified:"1f9d1-1f3fd-200d-1f3a8",native:"🧑🏽‍🎨"},{unified:"1f9d1-1f3fe-200d-1f3a8",native:"🧑🏾‍🎨"},{unified:"1f9d1-1f3ff-200d-1f3a8",native:"🧑🏿‍🎨"}],version:12.1},"male-artist":{id:"male-artist",name:"Man Artist",keywords:["male","painter","human"],skins:[{unified:"1f468-200d-1f3a8",native:"👨‍🎨"},{unified:"1f468-1f3fb-200d-1f3a8",native:"👨🏻‍🎨"},{unified:"1f468-1f3fc-200d-1f3a8",native:"👨🏼‍🎨"},{unified:"1f468-1f3fd-200d-1f3a8",native:"👨🏽‍🎨"},{unified:"1f468-1f3fe-200d-1f3a8",native:"👨🏾‍🎨"},{unified:"1f468-1f3ff-200d-1f3a8",native:"👨🏿‍🎨"}],version:4},"female-artist":{id:"female-artist",name:"Woman Artist",keywords:["female","painter","human"],skins:[{unified:"1f469-200d-1f3a8",native:"👩‍🎨"},{unified:"1f469-1f3fb-200d-1f3a8",native:"👩🏻‍🎨"},{unified:"1f469-1f3fc-200d-1f3a8",native:"👩🏼‍🎨"},{unified:"1f469-1f3fd-200d-1f3a8",native:"👩🏽‍🎨"},{unified:"1f469-1f3fe-200d-1f3a8",native:"👩🏾‍🎨"},{unified:"1f469-1f3ff-200d-1f3a8",native:"👩🏿‍🎨"}],version:4},pilot:{id:"pilot",name:"Pilot",keywords:["fly","plane","airplane"],skins:[{unified:"1f9d1-200d-2708-fe0f",native:"🧑‍✈️"},{unified:"1f9d1-1f3fb-200d-2708-fe0f",native:"🧑🏻‍✈️"},{unified:"1f9d1-1f3fc-200d-2708-fe0f",native:"🧑🏼‍✈️"},{unified:"1f9d1-1f3fd-200d-2708-fe0f",native:"🧑🏽‍✈️"},{unified:"1f9d1-1f3fe-200d-2708-fe0f",native:"🧑🏾‍✈️"},{unified:"1f9d1-1f3ff-200d-2708-fe0f",native:"🧑🏿‍✈️"}],version:12.1},"male-pilot":{id:"male-pilot",name:"Man Pilot",keywords:["male","aviator","plane","human"],skins:[{unified:"1f468-200d-2708-fe0f",native:"👨‍✈️"},{unified:"1f468-1f3fb-200d-2708-fe0f",native:"👨🏻‍✈️"},{unified:"1f468-1f3fc-200d-2708-fe0f",native:"👨🏼‍✈️"},{unified:"1f468-1f3fd-200d-2708-fe0f",native:"👨🏽‍✈️"},{unified:"1f468-1f3fe-200d-2708-fe0f",native:"👨🏾‍✈️"},{unified:"1f468-1f3ff-200d-2708-fe0f",native:"👨🏿‍✈️"}],version:4},"female-pilot":{id:"female-pilot",name:"Woman Pilot",keywords:["female","aviator","plane","human"],skins:[{unified:"1f469-200d-2708-fe0f",native:"👩‍✈️"},{unified:"1f469-1f3fb-200d-2708-fe0f",native:"👩🏻‍✈️"},{unified:"1f469-1f3fc-200d-2708-fe0f",native:"👩🏼‍✈️"},{unified:"1f469-1f3fd-200d-2708-fe0f",native:"👩🏽‍✈️"},{unified:"1f469-1f3fe-200d-2708-fe0f",native:"👩🏾‍✈️"},{unified:"1f469-1f3ff-200d-2708-fe0f",native:"👩🏿‍✈️"}],version:4},astronaut:{id:"astronaut",name:"Astronaut",keywords:["outerspace"],skins:[{unified:"1f9d1-200d-1f680",native:"🧑‍🚀"},{unified:"1f9d1-1f3fb-200d-1f680",native:"🧑🏻‍🚀"},{unified:"1f9d1-1f3fc-200d-1f680",native:"🧑🏼‍🚀"},{unified:"1f9d1-1f3fd-200d-1f680",native:"🧑🏽‍🚀"},{unified:"1f9d1-1f3fe-200d-1f680",native:"🧑🏾‍🚀"},{unified:"1f9d1-1f3ff-200d-1f680",native:"🧑🏿‍🚀"}],version:12.1},"male-astronaut":{id:"male-astronaut",name:"Man Astronaut",keywords:["male","space","rocket","human"],skins:[{unified:"1f468-200d-1f680",native:"👨‍🚀"},{unified:"1f468-1f3fb-200d-1f680",native:"👨🏻‍🚀"},{unified:"1f468-1f3fc-200d-1f680",native:"👨🏼‍🚀"},{unified:"1f468-1f3fd-200d-1f680",native:"👨🏽‍🚀"},{unified:"1f468-1f3fe-200d-1f680",native:"👨🏾‍🚀"},{unified:"1f468-1f3ff-200d-1f680",native:"👨🏿‍🚀"}],version:4},"female-astronaut":{id:"female-astronaut",name:"Woman Astronaut",keywords:["female","space","rocket","human"],skins:[{unified:"1f469-200d-1f680",native:"👩‍🚀"},{unified:"1f469-1f3fb-200d-1f680",native:"👩🏻‍🚀"},{unified:"1f469-1f3fc-200d-1f680",native:"👩🏼‍🚀"},{unified:"1f469-1f3fd-200d-1f680",native:"👩🏽‍🚀"},{unified:"1f469-1f3fe-200d-1f680",native:"👩🏾‍🚀"},{unified:"1f469-1f3ff-200d-1f680",native:"👩🏿‍🚀"}],version:4},firefighter:{id:"firefighter",name:"Firefighter",keywords:["fire"],skins:[{unified:"1f9d1-200d-1f692",native:"🧑‍🚒"},{unified:"1f9d1-1f3fb-200d-1f692",native:"🧑🏻‍🚒"},{unified:"1f9d1-1f3fc-200d-1f692",native:"🧑🏼‍🚒"},{unified:"1f9d1-1f3fd-200d-1f692",native:"🧑🏽‍🚒"},{unified:"1f9d1-1f3fe-200d-1f692",native:"🧑🏾‍🚒"},{unified:"1f9d1-1f3ff-200d-1f692",native:"🧑🏿‍🚒"}],version:12.1},"male-firefighter":{id:"male-firefighter",name:"Man Firefighter",keywords:["male","fireman","human"],skins:[{unified:"1f468-200d-1f692",native:"👨‍🚒"},{unified:"1f468-1f3fb-200d-1f692",native:"👨🏻‍🚒"},{unified:"1f468-1f3fc-200d-1f692",native:"👨🏼‍🚒"},{unified:"1f468-1f3fd-200d-1f692",native:"👨🏽‍🚒"},{unified:"1f468-1f3fe-200d-1f692",native:"👨🏾‍🚒"},{unified:"1f468-1f3ff-200d-1f692",native:"👨🏿‍🚒"}],version:4},"female-firefighter":{id:"female-firefighter",name:"Woman Firefighter",keywords:["female","fireman","human"],skins:[{unified:"1f469-200d-1f692",native:"👩‍🚒"},{unified:"1f469-1f3fb-200d-1f692",native:"👩🏻‍🚒"},{unified:"1f469-1f3fc-200d-1f692",native:"👩🏼‍🚒"},{unified:"1f469-1f3fd-200d-1f692",native:"👩🏽‍🚒"},{unified:"1f469-1f3fe-200d-1f692",native:"👩🏾‍🚒"},{unified:"1f469-1f3ff-200d-1f692",native:"👩🏿‍🚒"}],version:4},cop:{id:"cop",name:"Police Officer",keywords:["cop"],skins:[{unified:"1f46e",native:"👮"},{unified:"1f46e-1f3fb",native:"👮🏻"},{unified:"1f46e-1f3fc",native:"👮🏼"},{unified:"1f46e-1f3fd",native:"👮🏽"},{unified:"1f46e-1f3fe",native:"👮🏾"},{unified:"1f46e-1f3ff",native:"👮🏿"}],version:1},"male-police-officer":{id:"male-police-officer",name:"Man Police Officer",keywords:["male","police-officer","law","legal","enforcement","arrest","911"],skins:[{unified:"1f46e-200d-2642-fe0f",native:"👮‍♂️"},{unified:"1f46e-1f3fb-200d-2642-fe0f",native:"👮🏻‍♂️"},{unified:"1f46e-1f3fc-200d-2642-fe0f",native:"👮🏼‍♂️"},{unified:"1f46e-1f3fd-200d-2642-fe0f",native:"👮🏽‍♂️"},{unified:"1f46e-1f3fe-200d-2642-fe0f",native:"👮🏾‍♂️"},{unified:"1f46e-1f3ff-200d-2642-fe0f",native:"👮🏿‍♂️"}],version:4},"female-police-officer":{id:"female-police-officer",name:"Woman Police Officer",keywords:["female","police-officer","law","legal","enforcement","arrest","911"],skins:[{unified:"1f46e-200d-2640-fe0f",native:"👮‍♀️"},{unified:"1f46e-1f3fb-200d-2640-fe0f",native:"👮🏻‍♀️"},{unified:"1f46e-1f3fc-200d-2640-fe0f",native:"👮🏼‍♀️"},{unified:"1f46e-1f3fd-200d-2640-fe0f",native:"👮🏽‍♀️"},{unified:"1f46e-1f3fe-200d-2640-fe0f",native:"👮🏾‍♀️"},{unified:"1f46e-1f3ff-200d-2640-fe0f",native:"👮🏿‍♀️"}],version:4},sleuth_or_spy:{id:"sleuth_or_spy",name:"Detective",keywords:["sleuth","or","spy","human"],skins:[{unified:"1f575-fe0f",native:"🕵️"},{unified:"1f575-1f3fb",native:"🕵🏻"},{unified:"1f575-1f3fc",native:"🕵🏼"},{unified:"1f575-1f3fd",native:"🕵🏽"},{unified:"1f575-1f3fe",native:"🕵🏾"},{unified:"1f575-1f3ff",native:"🕵🏿"}],version:1},"male-detective":{id:"male-detective",name:"Man Detective",keywords:["male","crime"],skins:[{unified:"1f575-fe0f-200d-2642-fe0f",native:"🕵️‍♂️"},{unified:"1f575-1f3fb-200d-2642-fe0f",native:"🕵🏻‍♂️"},{unified:"1f575-1f3fc-200d-2642-fe0f",native:"🕵🏼‍♂️"},{unified:"1f575-1f3fd-200d-2642-fe0f",native:"🕵🏽‍♂️"},{unified:"1f575-1f3fe-200d-2642-fe0f",native:"🕵🏾‍♂️"},{unified:"1f575-1f3ff-200d-2642-fe0f",native:"🕵🏿‍♂️"}],version:4},"female-detective":{id:"female-detective",name:"Woman Detective",keywords:["female","human","spy"],skins:[{unified:"1f575-fe0f-200d-2640-fe0f",native:"🕵️‍♀️"},{unified:"1f575-1f3fb-200d-2640-fe0f",native:"🕵🏻‍♀️"},{unified:"1f575-1f3fc-200d-2640-fe0f",native:"🕵🏼‍♀️"},{unified:"1f575-1f3fd-200d-2640-fe0f",native:"🕵🏽‍♀️"},{unified:"1f575-1f3fe-200d-2640-fe0f",native:"🕵🏾‍♀️"},{unified:"1f575-1f3ff-200d-2640-fe0f",native:"🕵🏿‍♀️"}],version:4},guardsman:{id:"guardsman",name:"Guard",keywords:["guardsman","protect"],skins:[{unified:"1f482",native:"💂"},{unified:"1f482-1f3fb",native:"💂🏻"},{unified:"1f482-1f3fc",native:"💂🏼"},{unified:"1f482-1f3fd",native:"💂🏽"},{unified:"1f482-1f3fe",native:"💂🏾"},{unified:"1f482-1f3ff",native:"💂🏿"}],version:1},"male-guard":{id:"male-guard",name:"Man Guard",keywords:["male","uk","gb","british","guy","royal"],skins:[{unified:"1f482-200d-2642-fe0f",native:"💂‍♂️"},{unified:"1f482-1f3fb-200d-2642-fe0f",native:"💂🏻‍♂️"},{unified:"1f482-1f3fc-200d-2642-fe0f",native:"💂🏼‍♂️"},{unified:"1f482-1f3fd-200d-2642-fe0f",native:"💂🏽‍♂️"},{unified:"1f482-1f3fe-200d-2642-fe0f",native:"💂🏾‍♂️"},{unified:"1f482-1f3ff-200d-2642-fe0f",native:"💂🏿‍♂️"}],version:4},"female-guard":{id:"female-guard",name:"Woman Guard",keywords:["female","uk","gb","british","royal"],skins:[{unified:"1f482-200d-2640-fe0f",native:"💂‍♀️"},{unified:"1f482-1f3fb-200d-2640-fe0f",native:"💂🏻‍♀️"},{unified:"1f482-1f3fc-200d-2640-fe0f",native:"💂🏼‍♀️"},{unified:"1f482-1f3fd-200d-2640-fe0f",native:"💂🏽‍♀️"},{unified:"1f482-1f3fe-200d-2640-fe0f",native:"💂🏾‍♀️"},{unified:"1f482-1f3ff-200d-2640-fe0f",native:"💂🏿‍♀️"}],version:4},ninja:{id:"ninja",name:"Ninja",keywords:["ninjutsu","skills","japanese"],skins:[{unified:"1f977",native:"🥷"},{unified:"1f977-1f3fb",native:"🥷🏻"},{unified:"1f977-1f3fc",native:"🥷🏼"},{unified:"1f977-1f3fd",native:"🥷🏽"},{unified:"1f977-1f3fe",native:"🥷🏾"},{unified:"1f977-1f3ff",native:"🥷🏿"}],version:13},construction_worker:{id:"construction_worker",name:"Construction Worker",keywords:["labor","build"],skins:[{unified:"1f477",native:"👷"},{unified:"1f477-1f3fb",native:"👷🏻"},{unified:"1f477-1f3fc",native:"👷🏼"},{unified:"1f477-1f3fd",native:"👷🏽"},{unified:"1f477-1f3fe",native:"👷🏾"},{unified:"1f477-1f3ff",native:"👷🏿"}],version:1},"male-construction-worker":{id:"male-construction-worker",name:"Man Construction Worker",keywords:["male","construction-worker","human","wip","guy","build","labor"],skins:[{unified:"1f477-200d-2642-fe0f",native:"👷‍♂️"},{unified:"1f477-1f3fb-200d-2642-fe0f",native:"👷🏻‍♂️"},{unified:"1f477-1f3fc-200d-2642-fe0f",native:"👷🏼‍♂️"},{unified:"1f477-1f3fd-200d-2642-fe0f",native:"👷🏽‍♂️"},{unified:"1f477-1f3fe-200d-2642-fe0f",native:"👷🏾‍♂️"},{unified:"1f477-1f3ff-200d-2642-fe0f",native:"👷🏿‍♂️"}],version:4},"female-construction-worker":{id:"female-construction-worker",name:"Woman Construction Worker",keywords:["female","construction-worker","human","wip","build","labor"],skins:[{unified:"1f477-200d-2640-fe0f",native:"👷‍♀️"},{unified:"1f477-1f3fb-200d-2640-fe0f",native:"👷🏻‍♀️"},{unified:"1f477-1f3fc-200d-2640-fe0f",native:"👷🏼‍♀️"},{unified:"1f477-1f3fd-200d-2640-fe0f",native:"👷🏽‍♀️"},{unified:"1f477-1f3fe-200d-2640-fe0f",native:"👷🏾‍♀️"},{unified:"1f477-1f3ff-200d-2640-fe0f",native:"👷🏿‍♀️"}],version:4},person_with_crown:{id:"person_with_crown",name:"Person with Crown",keywords:["royalty","power"],skins:[{unified:"1fac5",native:"🫅"},{unified:"1fac5-1f3fb",native:"🫅🏻"},{unified:"1fac5-1f3fc",native:"🫅🏼"},{unified:"1fac5-1f3fd",native:"🫅🏽"},{unified:"1fac5-1f3fe",native:"🫅🏾"},{unified:"1fac5-1f3ff",native:"🫅🏿"}],version:14},prince:{id:"prince",name:"Prince",keywords:["boy","man","male","crown","royal","king"],skins:[{unified:"1f934",native:"🤴"},{unified:"1f934-1f3fb",native:"🤴🏻"},{unified:"1f934-1f3fc",native:"🤴🏼"},{unified:"1f934-1f3fd",native:"🤴🏽"},{unified:"1f934-1f3fe",native:"🤴🏾"},{unified:"1f934-1f3ff",native:"🤴🏿"}],version:3},princess:{id:"princess",name:"Princess",keywords:["girl","woman","female","blond","crown","royal","queen"],skins:[{unified:"1f478",native:"👸"},{unified:"1f478-1f3fb",native:"👸🏻"},{unified:"1f478-1f3fc",native:"👸🏼"},{unified:"1f478-1f3fd",native:"👸🏽"},{unified:"1f478-1f3fe",native:"👸🏾"},{unified:"1f478-1f3ff",native:"👸🏿"}],version:1},man_with_turban:{id:"man_with_turban",name:"Man with Turban",keywords:["person","wearing","headdress"],skins:[{unified:"1f473",native:"👳"},{unified:"1f473-1f3fb",native:"👳🏻"},{unified:"1f473-1f3fc",native:"👳🏼"},{unified:"1f473-1f3fd",native:"👳🏽"},{unified:"1f473-1f3fe",native:"👳🏾"},{unified:"1f473-1f3ff",native:"👳🏿"}],version:1},"man-wearing-turban":{id:"man-wearing-turban",name:"Man Wearing Turban",keywords:["wearing-turban","male","indian","hinduism","arabs"],skins:[{unified:"1f473-200d-2642-fe0f",native:"👳‍♂️"},{unified:"1f473-1f3fb-200d-2642-fe0f",native:"👳🏻‍♂️"},{unified:"1f473-1f3fc-200d-2642-fe0f",native:"👳🏼‍♂️"},{unified:"1f473-1f3fd-200d-2642-fe0f",native:"👳🏽‍♂️"},{unified:"1f473-1f3fe-200d-2642-fe0f",native:"👳🏾‍♂️"},{unified:"1f473-1f3ff-200d-2642-fe0f",native:"👳🏿‍♂️"}],version:4},"woman-wearing-turban":{id:"woman-wearing-turban",name:"Woman Wearing Turban",keywords:["wearing-turban","female","indian","hinduism","arabs"],skins:[{unified:"1f473-200d-2640-fe0f",native:"👳‍♀️"},{unified:"1f473-1f3fb-200d-2640-fe0f",native:"👳🏻‍♀️"},{unified:"1f473-1f3fc-200d-2640-fe0f",native:"👳🏼‍♀️"},{unified:"1f473-1f3fd-200d-2640-fe0f",native:"👳🏽‍♀️"},{unified:"1f473-1f3fe-200d-2640-fe0f",native:"👳🏾‍♀️"},{unified:"1f473-1f3ff-200d-2640-fe0f",native:"👳🏿‍♀️"}],version:4},man_with_gua_pi_mao:{id:"man_with_gua_pi_mao",name:"Man with Gua Pi Mao",keywords:["skullcap","male","boy","chinese"],skins:[{unified:"1f472",native:"👲"},{unified:"1f472-1f3fb",native:"👲🏻"},{unified:"1f472-1f3fc",native:"👲🏼"},{unified:"1f472-1f3fd",native:"👲🏽"},{unified:"1f472-1f3fe",native:"👲🏾"},{unified:"1f472-1f3ff",native:"👲🏿"}],version:1},person_with_headscarf:{id:"person_with_headscarf",name:"Woman with Headscarf",keywords:["person","female","hijab","mantilla","tichel"],skins:[{unified:"1f9d5",native:"🧕"},{unified:"1f9d5-1f3fb",native:"🧕🏻"},{unified:"1f9d5-1f3fc",native:"🧕🏼"},{unified:"1f9d5-1f3fd",native:"🧕🏽"},{unified:"1f9d5-1f3fe",native:"🧕🏾"},{unified:"1f9d5-1f3ff",native:"🧕🏿"}],version:5},person_in_tuxedo:{id:"person_in_tuxedo",name:"Man in Tuxedo",keywords:["person","couple","marriage","wedding","groom"],skins:[{unified:"1f935",native:"🤵"},{unified:"1f935-1f3fb",native:"🤵🏻"},{unified:"1f935-1f3fc",native:"🤵🏼"},{unified:"1f935-1f3fd",native:"🤵🏽"},{unified:"1f935-1f3fe",native:"🤵🏾"},{unified:"1f935-1f3ff",native:"🤵🏿"}],version:3},man_in_tuxedo:{id:"man_in_tuxedo",name:"Man in Tuxedo",keywords:["formal","fashion"],skins:[{unified:"1f935-200d-2642-fe0f",native:"🤵‍♂️"},{unified:"1f935-1f3fb-200d-2642-fe0f",native:"🤵🏻‍♂️"},{unified:"1f935-1f3fc-200d-2642-fe0f",native:"🤵🏼‍♂️"},{unified:"1f935-1f3fd-200d-2642-fe0f",native:"🤵🏽‍♂️"},{unified:"1f935-1f3fe-200d-2642-fe0f",native:"🤵🏾‍♂️"},{unified:"1f935-1f3ff-200d-2642-fe0f",native:"🤵🏿‍♂️"}],version:13},woman_in_tuxedo:{id:"woman_in_tuxedo",name:"Woman in Tuxedo",keywords:["formal","fashion"],skins:[{unified:"1f935-200d-2640-fe0f",native:"🤵‍♀️"},{unified:"1f935-1f3fb-200d-2640-fe0f",native:"🤵🏻‍♀️"},{unified:"1f935-1f3fc-200d-2640-fe0f",native:"🤵🏼‍♀️"},{unified:"1f935-1f3fd-200d-2640-fe0f",native:"🤵🏽‍♀️"},{unified:"1f935-1f3fe-200d-2640-fe0f",native:"🤵🏾‍♀️"},{unified:"1f935-1f3ff-200d-2640-fe0f",native:"🤵🏿‍♀️"}],version:13},bride_with_veil:{id:"bride_with_veil",name:"Bride with Veil",keywords:["couple","marriage","wedding","woman"],skins:[{unified:"1f470",native:"👰"},{unified:"1f470-1f3fb",native:"👰🏻"},{unified:"1f470-1f3fc",native:"👰🏼"},{unified:"1f470-1f3fd",native:"👰🏽"},{unified:"1f470-1f3fe",native:"👰🏾"},{unified:"1f470-1f3ff",native:"👰🏿"}],version:1},man_with_veil:{id:"man_with_veil",name:"Man with Veil",keywords:["wedding","marriage"],skins:[{unified:"1f470-200d-2642-fe0f",native:"👰‍♂️"},{unified:"1f470-1f3fb-200d-2642-fe0f",native:"👰🏻‍♂️"},{unified:"1f470-1f3fc-200d-2642-fe0f",native:"👰🏼‍♂️"},{unified:"1f470-1f3fd-200d-2642-fe0f",native:"👰🏽‍♂️"},{unified:"1f470-1f3fe-200d-2642-fe0f",native:"👰🏾‍♂️"},{unified:"1f470-1f3ff-200d-2642-fe0f",native:"👰🏿‍♂️"}],version:13},woman_with_veil:{id:"woman_with_veil",name:"Woman with Veil",keywords:["wedding","marriage"],skins:[{unified:"1f470-200d-2640-fe0f",native:"👰‍♀️"},{unified:"1f470-1f3fb-200d-2640-fe0f",native:"👰🏻‍♀️"},{unified:"1f470-1f3fc-200d-2640-fe0f",native:"👰🏼‍♀️"},{unified:"1f470-1f3fd-200d-2640-fe0f",native:"👰🏽‍♀️"},{unified:"1f470-1f3fe-200d-2640-fe0f",native:"👰🏾‍♀️"},{unified:"1f470-1f3ff-200d-2640-fe0f",native:"👰🏿‍♀️"}],version:13},pregnant_woman:{id:"pregnant_woman",name:"Pregnant Woman",keywords:["baby"],skins:[{unified:"1f930",native:"🤰"},{unified:"1f930-1f3fb",native:"🤰🏻"},{unified:"1f930-1f3fc",native:"🤰🏼"},{unified:"1f930-1f3fd",native:"🤰🏽"},{unified:"1f930-1f3fe",native:"🤰🏾"},{unified:"1f930-1f3ff",native:"🤰🏿"}],version:3},pregnant_man:{id:"pregnant_man",name:"Pregnant Man",keywords:["baby","belly"],skins:[{unified:"1fac3",native:"🫃"},{unified:"1fac3-1f3fb",native:"🫃🏻"},{unified:"1fac3-1f3fc",native:"🫃🏼"},{unified:"1fac3-1f3fd",native:"🫃🏽"},{unified:"1fac3-1f3fe",native:"🫃🏾"},{unified:"1fac3-1f3ff",native:"🫃🏿"}],version:14},pregnant_person:{id:"pregnant_person",name:"Pregnant Person",keywords:["baby","belly"],skins:[{unified:"1fac4",native:"🫄"},{unified:"1fac4-1f3fb",native:"🫄🏻"},{unified:"1fac4-1f3fc",native:"🫄🏼"},{unified:"1fac4-1f3fd",native:"🫄🏽"},{unified:"1fac4-1f3fe",native:"🫄🏾"},{unified:"1fac4-1f3ff",native:"🫄🏿"}],version:14},"breast-feeding":{id:"breast-feeding",name:"Breast-Feeding",keywords:["breast","feeding","nursing","baby"],skins:[{unified:"1f931",native:"🤱"},{unified:"1f931-1f3fb",native:"🤱🏻"},{unified:"1f931-1f3fc",native:"🤱🏼"},{unified:"1f931-1f3fd",native:"🤱🏽"},{unified:"1f931-1f3fe",native:"🤱🏾"},{unified:"1f931-1f3ff",native:"🤱🏿"}],version:5},woman_feeding_baby:{id:"woman_feeding_baby",name:"Woman Feeding Baby",keywords:["birth","food"],skins:[{unified:"1f469-200d-1f37c",native:"👩‍🍼"},{unified:"1f469-1f3fb-200d-1f37c",native:"👩🏻‍🍼"},{unified:"1f469-1f3fc-200d-1f37c",native:"👩🏼‍🍼"},{unified:"1f469-1f3fd-200d-1f37c",native:"👩🏽‍🍼"},{unified:"1f469-1f3fe-200d-1f37c",native:"👩🏾‍🍼"},{unified:"1f469-1f3ff-200d-1f37c",native:"👩🏿‍🍼"}],version:13},man_feeding_baby:{id:"man_feeding_baby",name:"Man Feeding Baby",keywords:["birth","food"],skins:[{unified:"1f468-200d-1f37c",native:"👨‍🍼"},{unified:"1f468-1f3fb-200d-1f37c",native:"👨🏻‍🍼"},{unified:"1f468-1f3fc-200d-1f37c",native:"👨🏼‍🍼"},{unified:"1f468-1f3fd-200d-1f37c",native:"👨🏽‍🍼"},{unified:"1f468-1f3fe-200d-1f37c",native:"👨🏾‍🍼"},{unified:"1f468-1f3ff-200d-1f37c",native:"👨🏿‍🍼"}],version:13},person_feeding_baby:{id:"person_feeding_baby",name:"Person Feeding Baby",keywords:["birth","food"],skins:[{unified:"1f9d1-200d-1f37c",native:"🧑‍🍼"},{unified:"1f9d1-1f3fb-200d-1f37c",native:"🧑🏻‍🍼"},{unified:"1f9d1-1f3fc-200d-1f37c",native:"🧑🏼‍🍼"},{unified:"1f9d1-1f3fd-200d-1f37c",native:"🧑🏽‍🍼"},{unified:"1f9d1-1f3fe-200d-1f37c",native:"🧑🏾‍🍼"},{unified:"1f9d1-1f3ff-200d-1f37c",native:"🧑🏿‍🍼"}],version:13},angel:{id:"angel",name:"Baby Angel",keywords:["heaven","wings","halo"],skins:[{unified:"1f47c",native:"👼"},{unified:"1f47c-1f3fb",native:"👼🏻"},{unified:"1f47c-1f3fc",native:"👼🏼"},{unified:"1f47c-1f3fd",native:"👼🏽"},{unified:"1f47c-1f3fe",native:"👼🏾"},{unified:"1f47c-1f3ff",native:"👼🏿"}],version:1},santa:{id:"santa",name:"Santa Claus",keywords:["festival","man","male","xmas","father","christmas"],skins:[{unified:"1f385",native:"🎅"},{unified:"1f385-1f3fb",native:"🎅🏻"},{unified:"1f385-1f3fc",native:"🎅🏼"},{unified:"1f385-1f3fd",native:"🎅🏽"},{unified:"1f385-1f3fe",native:"🎅🏾"},{unified:"1f385-1f3ff",native:"🎅🏿"}],version:1},mrs_claus:{id:"mrs_claus",name:"Mrs. Claus",keywords:["mrs","mother","christmas","woman","female","xmas"],skins:[{unified:"1f936",native:"🤶"},{unified:"1f936-1f3fb",native:"🤶🏻"},{unified:"1f936-1f3fc",native:"🤶🏼"},{unified:"1f936-1f3fd",native:"🤶🏽"},{unified:"1f936-1f3fe",native:"🤶🏾"},{unified:"1f936-1f3ff",native:"🤶🏿"}],version:3},mx_claus:{id:"mx_claus",name:"Mx Claus",keywords:["christmas"],skins:[{unified:"1f9d1-200d-1f384",native:"🧑‍🎄"},{unified:"1f9d1-1f3fb-200d-1f384",native:"🧑🏻‍🎄"},{unified:"1f9d1-1f3fc-200d-1f384",native:"🧑🏼‍🎄"},{unified:"1f9d1-1f3fd-200d-1f384",native:"🧑🏽‍🎄"},{unified:"1f9d1-1f3fe-200d-1f384",native:"🧑🏾‍🎄"},{unified:"1f9d1-1f3ff-200d-1f384",native:"🧑🏿‍🎄"}],version:13},superhero:{id:"superhero",name:"Superhero",keywords:["marvel"],skins:[{unified:"1f9b8",native:"🦸"},{unified:"1f9b8-1f3fb",native:"🦸🏻"},{unified:"1f9b8-1f3fc",native:"🦸🏼"},{unified:"1f9b8-1f3fd",native:"🦸🏽"},{unified:"1f9b8-1f3fe",native:"🦸🏾"},{unified:"1f9b8-1f3ff",native:"🦸🏿"}],version:11},male_superhero:{id:"male_superhero",name:"Man Superhero",keywords:["male","good","hero","superpowers"],skins:[{unified:"1f9b8-200d-2642-fe0f",native:"🦸‍♂️"},{unified:"1f9b8-1f3fb-200d-2642-fe0f",native:"🦸🏻‍♂️"},{unified:"1f9b8-1f3fc-200d-2642-fe0f",native:"🦸🏼‍♂️"},{unified:"1f9b8-1f3fd-200d-2642-fe0f",native:"🦸🏽‍♂️"},{unified:"1f9b8-1f3fe-200d-2642-fe0f",native:"🦸🏾‍♂️"},{unified:"1f9b8-1f3ff-200d-2642-fe0f",native:"🦸🏿‍♂️"}],version:11},female_superhero:{id:"female_superhero",name:"Woman Superhero",keywords:["female","good","heroine","superpowers"],skins:[{unified:"1f9b8-200d-2640-fe0f",native:"🦸‍♀️"},{unified:"1f9b8-1f3fb-200d-2640-fe0f",native:"🦸🏻‍♀️"},{unified:"1f9b8-1f3fc-200d-2640-fe0f",native:"🦸🏼‍♀️"},{unified:"1f9b8-1f3fd-200d-2640-fe0f",native:"🦸🏽‍♀️"},{unified:"1f9b8-1f3fe-200d-2640-fe0f",native:"🦸🏾‍♀️"},{unified:"1f9b8-1f3ff-200d-2640-fe0f",native:"🦸🏿‍♀️"}],version:11},supervillain:{id:"supervillain",name:"Supervillain",keywords:["marvel"],skins:[{unified:"1f9b9",native:"🦹"},{unified:"1f9b9-1f3fb",native:"🦹🏻"},{unified:"1f9b9-1f3fc",native:"🦹🏼"},{unified:"1f9b9-1f3fd",native:"🦹🏽"},{unified:"1f9b9-1f3fe",native:"🦹🏾"},{unified:"1f9b9-1f3ff",native:"🦹🏿"}],version:11},male_supervillain:{id:"male_supervillain",name:"Man Supervillain",keywords:["male","evil","bad","criminal","hero","superpowers"],skins:[{unified:"1f9b9-200d-2642-fe0f",native:"🦹‍♂️"},{unified:"1f9b9-1f3fb-200d-2642-fe0f",native:"🦹🏻‍♂️"},{unified:"1f9b9-1f3fc-200d-2642-fe0f",native:"🦹🏼‍♂️"},{unified:"1f9b9-1f3fd-200d-2642-fe0f",native:"🦹🏽‍♂️"},{unified:"1f9b9-1f3fe-200d-2642-fe0f",native:"🦹🏾‍♂️"},{unified:"1f9b9-1f3ff-200d-2642-fe0f",native:"🦹🏿‍♂️"}],version:11},female_supervillain:{id:"female_supervillain",name:"Woman Supervillain",keywords:["female","evil","bad","criminal","heroine","superpowers"],skins:[{unified:"1f9b9-200d-2640-fe0f",native:"🦹‍♀️"},{unified:"1f9b9-1f3fb-200d-2640-fe0f",native:"🦹🏻‍♀️"},{unified:"1f9b9-1f3fc-200d-2640-fe0f",native:"🦹🏼‍♀️"},{unified:"1f9b9-1f3fd-200d-2640-fe0f",native:"🦹🏽‍♀️"},{unified:"1f9b9-1f3fe-200d-2640-fe0f",native:"🦹🏾‍♀️"},{unified:"1f9b9-1f3ff-200d-2640-fe0f",native:"🦹🏿‍♀️"}],version:11},mage:{id:"mage",name:"Mage",keywords:["magic"],skins:[{unified:"1f9d9",native:"🧙"},{unified:"1f9d9-1f3fb",native:"🧙🏻"},{unified:"1f9d9-1f3fc",native:"🧙🏼"},{unified:"1f9d9-1f3fd",native:"🧙🏽"},{unified:"1f9d9-1f3fe",native:"🧙🏾"},{unified:"1f9d9-1f3ff",native:"🧙🏿"}],version:5},male_mage:{id:"male_mage",name:"Man Mage",keywords:["male","sorcerer"],skins:[{unified:"1f9d9-200d-2642-fe0f",native:"🧙‍♂️"},{unified:"1f9d9-1f3fb-200d-2642-fe0f",native:"🧙🏻‍♂️"},{unified:"1f9d9-1f3fc-200d-2642-fe0f",native:"🧙🏼‍♂️"},{unified:"1f9d9-1f3fd-200d-2642-fe0f",native:"🧙🏽‍♂️"},{unified:"1f9d9-1f3fe-200d-2642-fe0f",native:"🧙🏾‍♂️"},{unified:"1f9d9-1f3ff-200d-2642-fe0f",native:"🧙🏿‍♂️"}],version:5},female_mage:{id:"female_mage",name:"Woman Mage",keywords:["female","witch"],skins:[{unified:"1f9d9-200d-2640-fe0f",native:"🧙‍♀️"},{unified:"1f9d9-1f3fb-200d-2640-fe0f",native:"🧙🏻‍♀️"},{unified:"1f9d9-1f3fc-200d-2640-fe0f",native:"🧙🏼‍♀️"},{unified:"1f9d9-1f3fd-200d-2640-fe0f",native:"🧙🏽‍♀️"},{unified:"1f9d9-1f3fe-200d-2640-fe0f",native:"🧙🏾‍♀️"},{unified:"1f9d9-1f3ff-200d-2640-fe0f",native:"🧙🏿‍♀️"}],version:5},fairy:{id:"fairy",name:"Fairy",keywords:["wings","magical"],skins:[{unified:"1f9da",native:"🧚"},{unified:"1f9da-1f3fb",native:"🧚🏻"},{unified:"1f9da-1f3fc",native:"🧚🏼"},{unified:"1f9da-1f3fd",native:"🧚🏽"},{unified:"1f9da-1f3fe",native:"🧚🏾"},{unified:"1f9da-1f3ff",native:"🧚🏿"}],version:5},male_fairy:{id:"male_fairy",name:"Man Fairy",keywords:["male"],skins:[{unified:"1f9da-200d-2642-fe0f",native:"🧚‍♂️"},{unified:"1f9da-1f3fb-200d-2642-fe0f",native:"🧚🏻‍♂️"},{unified:"1f9da-1f3fc-200d-2642-fe0f",native:"🧚🏼‍♂️"},{unified:"1f9da-1f3fd-200d-2642-fe0f",native:"🧚🏽‍♂️"},{unified:"1f9da-1f3fe-200d-2642-fe0f",native:"🧚🏾‍♂️"},{unified:"1f9da-1f3ff-200d-2642-fe0f",native:"🧚🏿‍♂️"}],version:5},female_fairy:{id:"female_fairy",name:"Woman Fairy",keywords:["female"],skins:[{unified:"1f9da-200d-2640-fe0f",native:"🧚‍♀️"},{unified:"1f9da-1f3fb-200d-2640-fe0f",native:"🧚🏻‍♀️"},{unified:"1f9da-1f3fc-200d-2640-fe0f",native:"🧚🏼‍♀️"},{unified:"1f9da-1f3fd-200d-2640-fe0f",native:"🧚🏽‍♀️"},{unified:"1f9da-1f3fe-200d-2640-fe0f",native:"🧚🏾‍♀️"},{unified:"1f9da-1f3ff-200d-2640-fe0f",native:"🧚🏿‍♀️"}],version:5},vampire:{id:"vampire",name:"Vampire",keywords:["blood","twilight"],skins:[{unified:"1f9db",native:"🧛"},{unified:"1f9db-1f3fb",native:"🧛🏻"},{unified:"1f9db-1f3fc",native:"🧛🏼"},{unified:"1f9db-1f3fd",native:"🧛🏽"},{unified:"1f9db-1f3fe",native:"🧛🏾"},{unified:"1f9db-1f3ff",native:"🧛🏿"}],version:5},male_vampire:{id:"male_vampire",name:"Man Vampire",keywords:["male","dracula"],skins:[{unified:"1f9db-200d-2642-fe0f",native:"🧛‍♂️"},{unified:"1f9db-1f3fb-200d-2642-fe0f",native:"🧛🏻‍♂️"},{unified:"1f9db-1f3fc-200d-2642-fe0f",native:"🧛🏼‍♂️"},{unified:"1f9db-1f3fd-200d-2642-fe0f",native:"🧛🏽‍♂️"},{unified:"1f9db-1f3fe-200d-2642-fe0f",native:"🧛🏾‍♂️"},{unified:"1f9db-1f3ff-200d-2642-fe0f",native:"🧛🏿‍♂️"}],version:5},female_vampire:{id:"female_vampire",name:"Woman Vampire",keywords:["female"],skins:[{unified:"1f9db-200d-2640-fe0f",native:"🧛‍♀️"},{unified:"1f9db-1f3fb-200d-2640-fe0f",native:"🧛🏻‍♀️"},{unified:"1f9db-1f3fc-200d-2640-fe0f",native:"🧛🏼‍♀️"},{unified:"1f9db-1f3fd-200d-2640-fe0f",native:"🧛🏽‍♀️"},{unified:"1f9db-1f3fe-200d-2640-fe0f",native:"🧛🏾‍♀️"},{unified:"1f9db-1f3ff-200d-2640-fe0f",native:"🧛🏿‍♀️"}],version:5},merperson:{id:"merperson",name:"Merperson",keywords:["sea"],skins:[{unified:"1f9dc",native:"🧜"},{unified:"1f9dc-1f3fb",native:"🧜🏻"},{unified:"1f9dc-1f3fc",native:"🧜🏼"},{unified:"1f9dc-1f3fd",native:"🧜🏽"},{unified:"1f9dc-1f3fe",native:"🧜🏾"},{unified:"1f9dc-1f3ff",native:"🧜🏿"}],version:5},merman:{id:"merman",name:"Merman",keywords:["man","male","triton"],skins:[{unified:"1f9dc-200d-2642-fe0f",native:"🧜‍♂️"},{unified:"1f9dc-1f3fb-200d-2642-fe0f",native:"🧜🏻‍♂️"},{unified:"1f9dc-1f3fc-200d-2642-fe0f",native:"🧜🏼‍♂️"},{unified:"1f9dc-1f3fd-200d-2642-fe0f",native:"🧜🏽‍♂️"},{unified:"1f9dc-1f3fe-200d-2642-fe0f",native:"🧜🏾‍♂️"},{unified:"1f9dc-1f3ff-200d-2642-fe0f",native:"🧜🏿‍♂️"}],version:5},mermaid:{id:"mermaid",name:"Mermaid",keywords:["woman","female","merwoman","ariel"],skins:[{unified:"1f9dc-200d-2640-fe0f",native:"🧜‍♀️"},{unified:"1f9dc-1f3fb-200d-2640-fe0f",native:"🧜🏻‍♀️"},{unified:"1f9dc-1f3fc-200d-2640-fe0f",native:"🧜🏼‍♀️"},{unified:"1f9dc-1f3fd-200d-2640-fe0f",native:"🧜🏽‍♀️"},{unified:"1f9dc-1f3fe-200d-2640-fe0f",native:"🧜🏾‍♀️"},{unified:"1f9dc-1f3ff-200d-2640-fe0f",native:"🧜🏿‍♀️"}],version:5},elf:{id:"elf",name:"Elf",keywords:["magical"],skins:[{unified:"1f9dd",native:"🧝"},{unified:"1f9dd-1f3fb",native:"🧝🏻"},{unified:"1f9dd-1f3fc",native:"🧝🏼"},{unified:"1f9dd-1f3fd",native:"🧝🏽"},{unified:"1f9dd-1f3fe",native:"🧝🏾"},{unified:"1f9dd-1f3ff",native:"🧝🏿"}],version:5},male_elf:{id:"male_elf",name:"Man Elf",keywords:["male"],skins:[{unified:"1f9dd-200d-2642-fe0f",native:"🧝‍♂️"},{unified:"1f9dd-1f3fb-200d-2642-fe0f",native:"🧝🏻‍♂️"},{unified:"1f9dd-1f3fc-200d-2642-fe0f",native:"🧝🏼‍♂️"},{unified:"1f9dd-1f3fd-200d-2642-fe0f",native:"🧝🏽‍♂️"},{unified:"1f9dd-1f3fe-200d-2642-fe0f",native:"🧝🏾‍♂️"},{unified:"1f9dd-1f3ff-200d-2642-fe0f",native:"🧝🏿‍♂️"}],version:5},female_elf:{id:"female_elf",name:"Woman Elf",keywords:["female"],skins:[{unified:"1f9dd-200d-2640-fe0f",native:"🧝‍♀️"},{unified:"1f9dd-1f3fb-200d-2640-fe0f",native:"🧝🏻‍♀️"},{unified:"1f9dd-1f3fc-200d-2640-fe0f",native:"🧝🏼‍♀️"},{unified:"1f9dd-1f3fd-200d-2640-fe0f",native:"🧝🏽‍♀️"},{unified:"1f9dd-1f3fe-200d-2640-fe0f",native:"🧝🏾‍♀️"},{unified:"1f9dd-1f3ff-200d-2640-fe0f",native:"🧝🏿‍♀️"}],version:5},genie:{id:"genie",name:"Genie",keywords:["magical","wishes"],skins:[{unified:"1f9de",native:"🧞"}],version:5},male_genie:{id:"male_genie",name:"Man Genie",keywords:["male"],skins:[{unified:"1f9de-200d-2642-fe0f",native:"🧞‍♂️"}],version:5},female_genie:{id:"female_genie",name:"Woman Genie",keywords:["female"],skins:[{unified:"1f9de-200d-2640-fe0f",native:"🧞‍♀️"}],version:5},zombie:{id:"zombie",name:"Zombie",keywords:["dead"],skins:[{unified:"1f9df",native:"🧟"}],version:5},male_zombie:{id:"male_zombie",name:"Man Zombie",keywords:["male","dracula","undead","walking","dead"],skins:[{unified:"1f9df-200d-2642-fe0f",native:"🧟‍♂️"}],version:5},female_zombie:{id:"female_zombie",name:"Woman Zombie",keywords:["female","undead","walking","dead"],skins:[{unified:"1f9df-200d-2640-fe0f",native:"🧟‍♀️"}],version:5},troll:{id:"troll",name:"Troll",keywords:["mystical","monster"],skins:[{unified:"1f9cc",native:"🧌"}],version:14},massage:{id:"massage",name:"Face Massage",keywords:["person","getting","relax"],skins:[{unified:"1f486",native:"💆"},{unified:"1f486-1f3fb",native:"💆🏻"},{unified:"1f486-1f3fc",native:"💆🏼"},{unified:"1f486-1f3fd",native:"💆🏽"},{unified:"1f486-1f3fe",native:"💆🏾"},{unified:"1f486-1f3ff",native:"💆🏿"}],version:1},"man-getting-massage":{id:"man-getting-massage",name:"Man Getting Massage",keywords:["getting-massage","male","boy","head"],skins:[{unified:"1f486-200d-2642-fe0f",native:"💆‍♂️"},{unified:"1f486-1f3fb-200d-2642-fe0f",native:"💆🏻‍♂️"},{unified:"1f486-1f3fc-200d-2642-fe0f",native:"💆🏼‍♂️"},{unified:"1f486-1f3fd-200d-2642-fe0f",native:"💆🏽‍♂️"},{unified:"1f486-1f3fe-200d-2642-fe0f",native:"💆🏾‍♂️"},{unified:"1f486-1f3ff-200d-2642-fe0f",native:"💆🏿‍♂️"}],version:4},"woman-getting-massage":{id:"woman-getting-massage",name:"Woman Getting Massage",keywords:["getting-massage","female","girl","head"],skins:[{unified:"1f486-200d-2640-fe0f",native:"💆‍♀️"},{unified:"1f486-1f3fb-200d-2640-fe0f",native:"💆🏻‍♀️"},{unified:"1f486-1f3fc-200d-2640-fe0f",native:"💆🏼‍♀️"},{unified:"1f486-1f3fd-200d-2640-fe0f",native:"💆🏽‍♀️"},{unified:"1f486-1f3fe-200d-2640-fe0f",native:"💆🏾‍♀️"},{unified:"1f486-1f3ff-200d-2640-fe0f",native:"💆🏿‍♀️"}],version:4},haircut:{id:"haircut",name:"Haircut",keywords:["person","getting","hairstyle"],skins:[{unified:"1f487",native:"💇"},{unified:"1f487-1f3fb",native:"💇🏻"},{unified:"1f487-1f3fc",native:"💇🏼"},{unified:"1f487-1f3fd",native:"💇🏽"},{unified:"1f487-1f3fe",native:"💇🏾"},{unified:"1f487-1f3ff",native:"💇🏿"}],version:1},"man-getting-haircut":{id:"man-getting-haircut",name:"Man Getting Haircut",keywords:["getting-haircut","male","boy"],skins:[{unified:"1f487-200d-2642-fe0f",native:"💇‍♂️"},{unified:"1f487-1f3fb-200d-2642-fe0f",native:"💇🏻‍♂️"},{unified:"1f487-1f3fc-200d-2642-fe0f",native:"💇🏼‍♂️"},{unified:"1f487-1f3fd-200d-2642-fe0f",native:"💇🏽‍♂️"},{unified:"1f487-1f3fe-200d-2642-fe0f",native:"💇🏾‍♂️"},{unified:"1f487-1f3ff-200d-2642-fe0f",native:"💇🏿‍♂️"}],version:4},"woman-getting-haircut":{id:"woman-getting-haircut",name:"Woman Getting Haircut",keywords:["getting-haircut","female","girl"],skins:[{unified:"1f487-200d-2640-fe0f",native:"💇‍♀️"},{unified:"1f487-1f3fb-200d-2640-fe0f",native:"💇🏻‍♀️"},{unified:"1f487-1f3fc-200d-2640-fe0f",native:"💇🏼‍♀️"},{unified:"1f487-1f3fd-200d-2640-fe0f",native:"💇🏽‍♀️"},{unified:"1f487-1f3fe-200d-2640-fe0f",native:"💇🏾‍♀️"},{unified:"1f487-1f3ff-200d-2640-fe0f",native:"💇🏿‍♀️"}],version:4},walking:{id:"walking",name:"Pedestrian",keywords:["walking","person","move"],skins:[{unified:"1f6b6",native:"🚶"},{unified:"1f6b6-1f3fb",native:"🚶🏻"},{unified:"1f6b6-1f3fc",native:"🚶🏼"},{unified:"1f6b6-1f3fd",native:"🚶🏽"},{unified:"1f6b6-1f3fe",native:"🚶🏾"},{unified:"1f6b6-1f3ff",native:"🚶🏿"}],version:1},"man-walking":{id:"man-walking",name:"Man Walking",keywords:["human","feet","steps"],skins:[{unified:"1f6b6-200d-2642-fe0f",native:"🚶‍♂️"},{unified:"1f6b6-1f3fb-200d-2642-fe0f",native:"🚶🏻‍♂️"},{unified:"1f6b6-1f3fc-200d-2642-fe0f",native:"🚶🏼‍♂️"},{unified:"1f6b6-1f3fd-200d-2642-fe0f",native:"🚶🏽‍♂️"},{unified:"1f6b6-1f3fe-200d-2642-fe0f",native:"🚶🏾‍♂️"},{unified:"1f6b6-1f3ff-200d-2642-fe0f",native:"🚶🏿‍♂️"}],version:4},"woman-walking":{id:"woman-walking",name:"Woman Walking",keywords:["human","feet","steps","female"],skins:[{unified:"1f6b6-200d-2640-fe0f",native:"🚶‍♀️"},{unified:"1f6b6-1f3fb-200d-2640-fe0f",native:"🚶🏻‍♀️"},{unified:"1f6b6-1f3fc-200d-2640-fe0f",native:"🚶🏼‍♀️"},{unified:"1f6b6-1f3fd-200d-2640-fe0f",native:"🚶🏽‍♀️"},{unified:"1f6b6-1f3fe-200d-2640-fe0f",native:"🚶🏾‍♀️"},{unified:"1f6b6-1f3ff-200d-2640-fe0f",native:"🚶🏿‍♀️"}],version:4},standing_person:{id:"standing_person",name:"Standing Person",keywords:["still"],skins:[{unified:"1f9cd",native:"🧍"},{unified:"1f9cd-1f3fb",native:"🧍🏻"},{unified:"1f9cd-1f3fc",native:"🧍🏼"},{unified:"1f9cd-1f3fd",native:"🧍🏽"},{unified:"1f9cd-1f3fe",native:"🧍🏾"},{unified:"1f9cd-1f3ff",native:"🧍🏿"}],version:12},man_standing:{id:"man_standing",name:"Man Standing",keywords:["still"],skins:[{unified:"1f9cd-200d-2642-fe0f",native:"🧍‍♂️"},{unified:"1f9cd-1f3fb-200d-2642-fe0f",native:"🧍🏻‍♂️"},{unified:"1f9cd-1f3fc-200d-2642-fe0f",native:"🧍🏼‍♂️"},{unified:"1f9cd-1f3fd-200d-2642-fe0f",native:"🧍🏽‍♂️"},{unified:"1f9cd-1f3fe-200d-2642-fe0f",native:"🧍🏾‍♂️"},{unified:"1f9cd-1f3ff-200d-2642-fe0f",native:"🧍🏿‍♂️"}],version:12},woman_standing:{id:"woman_standing",name:"Woman Standing",keywords:["still"],skins:[{unified:"1f9cd-200d-2640-fe0f",native:"🧍‍♀️"},{unified:"1f9cd-1f3fb-200d-2640-fe0f",native:"🧍🏻‍♀️"},{unified:"1f9cd-1f3fc-200d-2640-fe0f",native:"🧍🏼‍♀️"},{unified:"1f9cd-1f3fd-200d-2640-fe0f",native:"🧍🏽‍♀️"},{unified:"1f9cd-1f3fe-200d-2640-fe0f",native:"🧍🏾‍♀️"},{unified:"1f9cd-1f3ff-200d-2640-fe0f",native:"🧍🏿‍♀️"}],version:12},kneeling_person:{id:"kneeling_person",name:"Kneeling Person",keywords:["pray","respectful"],skins:[{unified:"1f9ce",native:"🧎"},{unified:"1f9ce-1f3fb",native:"🧎🏻"},{unified:"1f9ce-1f3fc",native:"🧎🏼"},{unified:"1f9ce-1f3fd",native:"🧎🏽"},{unified:"1f9ce-1f3fe",native:"🧎🏾"},{unified:"1f9ce-1f3ff",native:"🧎🏿"}],version:12},man_kneeling:{id:"man_kneeling",name:"Man Kneeling",keywords:["pray","respectful"],skins:[{unified:"1f9ce-200d-2642-fe0f",native:"🧎‍♂️"},{unified:"1f9ce-1f3fb-200d-2642-fe0f",native:"🧎🏻‍♂️"},{unified:"1f9ce-1f3fc-200d-2642-fe0f",native:"🧎🏼‍♂️"},{unified:"1f9ce-1f3fd-200d-2642-fe0f",native:"🧎🏽‍♂️"},{unified:"1f9ce-1f3fe-200d-2642-fe0f",native:"🧎🏾‍♂️"},{unified:"1f9ce-1f3ff-200d-2642-fe0f",native:"🧎🏿‍♂️"}],version:12},woman_kneeling:{id:"woman_kneeling",name:"Woman Kneeling",keywords:["respectful","pray"],skins:[{unified:"1f9ce-200d-2640-fe0f",native:"🧎‍♀️"},{unified:"1f9ce-1f3fb-200d-2640-fe0f",native:"🧎🏻‍♀️"},{unified:"1f9ce-1f3fc-200d-2640-fe0f",native:"🧎🏼‍♀️"},{unified:"1f9ce-1f3fd-200d-2640-fe0f",native:"🧎🏽‍♀️"},{unified:"1f9ce-1f3fe-200d-2640-fe0f",native:"🧎🏾‍♀️"},{unified:"1f9ce-1f3ff-200d-2640-fe0f",native:"🧎🏿‍♀️"}],version:12},person_with_probing_cane:{id:"person_with_probing_cane",name:"Person with White Cane",keywords:["probing","blind"],skins:[{unified:"1f9d1-200d-1f9af",native:"🧑‍🦯"},{unified:"1f9d1-1f3fb-200d-1f9af",native:"🧑🏻‍🦯"},{unified:"1f9d1-1f3fc-200d-1f9af",native:"🧑🏼‍🦯"},{unified:"1f9d1-1f3fd-200d-1f9af",native:"🧑🏽‍🦯"},{unified:"1f9d1-1f3fe-200d-1f9af",native:"🧑🏾‍🦯"},{unified:"1f9d1-1f3ff-200d-1f9af",native:"🧑🏿‍🦯"}],version:12.1},man_with_probing_cane:{id:"man_with_probing_cane",name:"Man with White Cane",keywords:["probing","blind"],skins:[{unified:"1f468-200d-1f9af",native:"👨‍🦯"},{unified:"1f468-1f3fb-200d-1f9af",native:"👨🏻‍🦯"},{unified:"1f468-1f3fc-200d-1f9af",native:"👨🏼‍🦯"},{unified:"1f468-1f3fd-200d-1f9af",native:"👨🏽‍🦯"},{unified:"1f468-1f3fe-200d-1f9af",native:"👨🏾‍🦯"},{unified:"1f468-1f3ff-200d-1f9af",native:"👨🏿‍🦯"}],version:12},woman_with_probing_cane:{id:"woman_with_probing_cane",name:"Woman with White Cane",keywords:["probing","blind"],skins:[{unified:"1f469-200d-1f9af",native:"👩‍🦯"},{unified:"1f469-1f3fb-200d-1f9af",native:"👩🏻‍🦯"},{unified:"1f469-1f3fc-200d-1f9af",native:"👩🏼‍🦯"},{unified:"1f469-1f3fd-200d-1f9af",native:"👩🏽‍🦯"},{unified:"1f469-1f3fe-200d-1f9af",native:"👩🏾‍🦯"},{unified:"1f469-1f3ff-200d-1f9af",native:"👩🏿‍🦯"}],version:12},person_in_motorized_wheelchair:{id:"person_in_motorized_wheelchair",name:"Person in Motorized Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f9d1-200d-1f9bc",native:"🧑‍🦼"},{unified:"1f9d1-1f3fb-200d-1f9bc",native:"🧑🏻‍🦼"},{unified:"1f9d1-1f3fc-200d-1f9bc",native:"🧑🏼‍🦼"},{unified:"1f9d1-1f3fd-200d-1f9bc",native:"🧑🏽‍🦼"},{unified:"1f9d1-1f3fe-200d-1f9bc",native:"🧑🏾‍🦼"},{unified:"1f9d1-1f3ff-200d-1f9bc",native:"🧑🏿‍🦼"}],version:12.1},man_in_motorized_wheelchair:{id:"man_in_motorized_wheelchair",name:"Man in Motorized Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f468-200d-1f9bc",native:"👨‍🦼"},{unified:"1f468-1f3fb-200d-1f9bc",native:"👨🏻‍🦼"},{unified:"1f468-1f3fc-200d-1f9bc",native:"👨🏼‍🦼"},{unified:"1f468-1f3fd-200d-1f9bc",native:"👨🏽‍🦼"},{unified:"1f468-1f3fe-200d-1f9bc",native:"👨🏾‍🦼"},{unified:"1f468-1f3ff-200d-1f9bc",native:"👨🏿‍🦼"}],version:12},woman_in_motorized_wheelchair:{id:"woman_in_motorized_wheelchair",name:"Woman in Motorized Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f469-200d-1f9bc",native:"👩‍🦼"},{unified:"1f469-1f3fb-200d-1f9bc",native:"👩🏻‍🦼"},{unified:"1f469-1f3fc-200d-1f9bc",native:"👩🏼‍🦼"},{unified:"1f469-1f3fd-200d-1f9bc",native:"👩🏽‍🦼"},{unified:"1f469-1f3fe-200d-1f9bc",native:"👩🏾‍🦼"},{unified:"1f469-1f3ff-200d-1f9bc",native:"👩🏿‍🦼"}],version:12},person_in_manual_wheelchair:{id:"person_in_manual_wheelchair",name:"Person in Manual Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f9d1-200d-1f9bd",native:"🧑‍🦽"},{unified:"1f9d1-1f3fb-200d-1f9bd",native:"🧑🏻‍🦽"},{unified:"1f9d1-1f3fc-200d-1f9bd",native:"🧑🏼‍🦽"},{unified:"1f9d1-1f3fd-200d-1f9bd",native:"🧑🏽‍🦽"},{unified:"1f9d1-1f3fe-200d-1f9bd",native:"🧑🏾‍🦽"},{unified:"1f9d1-1f3ff-200d-1f9bd",native:"🧑🏿‍🦽"}],version:12.1},man_in_manual_wheelchair:{id:"man_in_manual_wheelchair",name:"Man in Manual Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f468-200d-1f9bd",native:"👨‍🦽"},{unified:"1f468-1f3fb-200d-1f9bd",native:"👨🏻‍🦽"},{unified:"1f468-1f3fc-200d-1f9bd",native:"👨🏼‍🦽"},{unified:"1f468-1f3fd-200d-1f9bd",native:"👨🏽‍🦽"},{unified:"1f468-1f3fe-200d-1f9bd",native:"👨🏾‍🦽"},{unified:"1f468-1f3ff-200d-1f9bd",native:"👨🏿‍🦽"}],version:12},woman_in_manual_wheelchair:{id:"woman_in_manual_wheelchair",name:"Woman in Manual Wheelchair",keywords:["disability","accessibility"],skins:[{unified:"1f469-200d-1f9bd",native:"👩‍🦽"},{unified:"1f469-1f3fb-200d-1f9bd",native:"👩🏻‍🦽"},{unified:"1f469-1f3fc-200d-1f9bd",native:"👩🏼‍🦽"},{unified:"1f469-1f3fd-200d-1f9bd",native:"👩🏽‍🦽"},{unified:"1f469-1f3fe-200d-1f9bd",native:"👩🏾‍🦽"},{unified:"1f469-1f3ff-200d-1f9bd",native:"👩🏿‍🦽"}],version:12},runner:{id:"runner",name:"Runner",keywords:["running","person","move"],skins:[{unified:"1f3c3",native:"🏃"},{unified:"1f3c3-1f3fb",native:"🏃🏻"},{unified:"1f3c3-1f3fc",native:"🏃🏼"},{unified:"1f3c3-1f3fd",native:"🏃🏽"},{unified:"1f3c3-1f3fe",native:"🏃🏾"},{unified:"1f3c3-1f3ff",native:"🏃🏿"}],version:1},"man-running":{id:"man-running",name:"Man Running",keywords:["walking","exercise","race"],skins:[{unified:"1f3c3-200d-2642-fe0f",native:"🏃‍♂️"},{unified:"1f3c3-1f3fb-200d-2642-fe0f",native:"🏃🏻‍♂️"},{unified:"1f3c3-1f3fc-200d-2642-fe0f",native:"🏃🏼‍♂️"},{unified:"1f3c3-1f3fd-200d-2642-fe0f",native:"🏃🏽‍♂️"},{unified:"1f3c3-1f3fe-200d-2642-fe0f",native:"🏃🏾‍♂️"},{unified:"1f3c3-1f3ff-200d-2642-fe0f",native:"🏃🏿‍♂️"}],version:4},"woman-running":{id:"woman-running",name:"Woman Running",keywords:["walking","exercise","race","female"],skins:[{unified:"1f3c3-200d-2640-fe0f",native:"🏃‍♀️"},{unified:"1f3c3-1f3fb-200d-2640-fe0f",native:"🏃🏻‍♀️"},{unified:"1f3c3-1f3fc-200d-2640-fe0f",native:"🏃🏼‍♀️"},{unified:"1f3c3-1f3fd-200d-2640-fe0f",native:"🏃🏽‍♀️"},{unified:"1f3c3-1f3fe-200d-2640-fe0f",native:"🏃🏾‍♀️"},{unified:"1f3c3-1f3ff-200d-2640-fe0f",native:"🏃🏿‍♀️"}],version:4},dancer:{id:"dancer",name:"Dancer",keywords:["woman","dancing","female","girl","fun"],skins:[{unified:"1f483",native:"💃"},{unified:"1f483-1f3fb",native:"💃🏻"},{unified:"1f483-1f3fc",native:"💃🏼"},{unified:"1f483-1f3fd",native:"💃🏽"},{unified:"1f483-1f3fe",native:"💃🏾"},{unified:"1f483-1f3ff",native:"💃🏿"}],version:1},man_dancing:{id:"man_dancing",name:"Man Dancing",keywords:["male","boy","fun","dancer"],skins:[{unified:"1f57a",native:"🕺"},{unified:"1f57a-1f3fb",native:"🕺🏻"},{unified:"1f57a-1f3fc",native:"🕺🏼"},{unified:"1f57a-1f3fd",native:"🕺🏽"},{unified:"1f57a-1f3fe",native:"🕺🏾"},{unified:"1f57a-1f3ff",native:"🕺🏿"}],version:3},man_in_business_suit_levitating:{id:"man_in_business_suit_levitating",name:"Person in Suit Levitating",keywords:["man","business","levitate","hover","jump"],skins:[{unified:"1f574-fe0f",native:"🕴️"},{unified:"1f574-1f3fb",native:"🕴🏻"},{unified:"1f574-1f3fc",native:"🕴🏼"},{unified:"1f574-1f3fd",native:"🕴🏽"},{unified:"1f574-1f3fe",native:"🕴🏾"},{unified:"1f574-1f3ff",native:"🕴🏿"}],version:1},dancers:{id:"dancers",name:"Woman with Bunny Ears",keywords:["dancers","people","perform","costume"],skins:[{unified:"1f46f",native:"👯"}],version:1},"men-with-bunny-ears-partying":{id:"men-with-bunny-ears-partying",name:"Men with Bunny Ears",keywords:["with-bunny-ears-partying","man","male","boys"],skins:[{unified:"1f46f-200d-2642-fe0f",native:"👯‍♂️"}],version:4},"women-with-bunny-ears-partying":{id:"women-with-bunny-ears-partying",name:"Women with Bunny Ears",keywords:["with-bunny-ears-partying","woman","female","girls"],skins:[{unified:"1f46f-200d-2640-fe0f",native:"👯‍♀️"}],version:4},person_in_steamy_room:{id:"person_in_steamy_room",name:"Person in Steamy Room",keywords:["relax","spa"],skins:[{unified:"1f9d6",native:"🧖"},{unified:"1f9d6-1f3fb",native:"🧖🏻"},{unified:"1f9d6-1f3fc",native:"🧖🏼"},{unified:"1f9d6-1f3fd",native:"🧖🏽"},{unified:"1f9d6-1f3fe",native:"🧖🏾"},{unified:"1f9d6-1f3ff",native:"🧖🏿"}],version:5},man_in_steamy_room:{id:"man_in_steamy_room",name:"Man in Steamy Room",keywords:["male","spa","steamroom","sauna"],skins:[{unified:"1f9d6-200d-2642-fe0f",native:"🧖‍♂️"},{unified:"1f9d6-1f3fb-200d-2642-fe0f",native:"🧖🏻‍♂️"},{unified:"1f9d6-1f3fc-200d-2642-fe0f",native:"🧖🏼‍♂️"},{unified:"1f9d6-1f3fd-200d-2642-fe0f",native:"🧖🏽‍♂️"},{unified:"1f9d6-1f3fe-200d-2642-fe0f",native:"🧖🏾‍♂️"},{unified:"1f9d6-1f3ff-200d-2642-fe0f",native:"🧖🏿‍♂️"}],version:5},woman_in_steamy_room:{id:"woman_in_steamy_room",name:"Woman in Steamy Room",keywords:["female","spa","steamroom","sauna"],skins:[{unified:"1f9d6-200d-2640-fe0f",native:"🧖‍♀️"},{unified:"1f9d6-1f3fb-200d-2640-fe0f",native:"🧖🏻‍♀️"},{unified:"1f9d6-1f3fc-200d-2640-fe0f",native:"🧖🏼‍♀️"},{unified:"1f9d6-1f3fd-200d-2640-fe0f",native:"🧖🏽‍♀️"},{unified:"1f9d6-1f3fe-200d-2640-fe0f",native:"🧖🏾‍♀️"},{unified:"1f9d6-1f3ff-200d-2640-fe0f",native:"🧖🏿‍♀️"}],version:5},person_climbing:{id:"person_climbing",name:"Person Climbing",keywords:["sport"],skins:[{unified:"1f9d7",native:"🧗"},{unified:"1f9d7-1f3fb",native:"🧗🏻"},{unified:"1f9d7-1f3fc",native:"🧗🏼"},{unified:"1f9d7-1f3fd",native:"🧗🏽"},{unified:"1f9d7-1f3fe",native:"🧗🏾"},{unified:"1f9d7-1f3ff",native:"🧗🏿"}],version:5},man_climbing:{id:"man_climbing",name:"Man Climbing",keywords:["sports","hobby","male","rock"],skins:[{unified:"1f9d7-200d-2642-fe0f",native:"🧗‍♂️"},{unified:"1f9d7-1f3fb-200d-2642-fe0f",native:"🧗🏻‍♂️"},{unified:"1f9d7-1f3fc-200d-2642-fe0f",native:"🧗🏼‍♂️"},{unified:"1f9d7-1f3fd-200d-2642-fe0f",native:"🧗🏽‍♂️"},{unified:"1f9d7-1f3fe-200d-2642-fe0f",native:"🧗🏾‍♂️"},{unified:"1f9d7-1f3ff-200d-2642-fe0f",native:"🧗🏿‍♂️"}],version:5},woman_climbing:{id:"woman_climbing",name:"Woman Climbing",keywords:["sports","hobby","female","rock"],skins:[{unified:"1f9d7-200d-2640-fe0f",native:"🧗‍♀️"},{unified:"1f9d7-1f3fb-200d-2640-fe0f",native:"🧗🏻‍♀️"},{unified:"1f9d7-1f3fc-200d-2640-fe0f",native:"🧗🏼‍♀️"},{unified:"1f9d7-1f3fd-200d-2640-fe0f",native:"🧗🏽‍♀️"},{unified:"1f9d7-1f3fe-200d-2640-fe0f",native:"🧗🏾‍♀️"},{unified:"1f9d7-1f3ff-200d-2640-fe0f",native:"🧗🏿‍♀️"}],version:5},fencer:{id:"fencer",name:"Fencer",keywords:["person","fencing","sports","sword"],skins:[{unified:"1f93a",native:"🤺"}],version:3},horse_racing:{id:"horse_racing",name:"Horse Racing",keywords:["animal","betting","competition","gambling","luck"],skins:[{unified:"1f3c7",native:"🏇"},{unified:"1f3c7-1f3fb",native:"🏇🏻"},{unified:"1f3c7-1f3fc",native:"🏇🏼"},{unified:"1f3c7-1f3fd",native:"🏇🏽"},{unified:"1f3c7-1f3fe",native:"🏇🏾"},{unified:"1f3c7-1f3ff",native:"🏇🏿"}],version:1},skier:{id:"skier",name:"Skier",keywords:["sports","winter","snow"],skins:[{unified:"26f7-fe0f",native:"⛷️"}],version:1},snowboarder:{id:"snowboarder",name:"Snowboarder",keywords:["sports","winter"],skins:[{unified:"1f3c2",native:"🏂"},{unified:"1f3c2-1f3fb",native:"🏂🏻"},{unified:"1f3c2-1f3fc",native:"🏂🏼"},{unified:"1f3c2-1f3fd",native:"🏂🏽"},{unified:"1f3c2-1f3fe",native:"🏂🏾"},{unified:"1f3c2-1f3ff",native:"🏂🏿"}],version:1},golfer:{id:"golfer",name:"Person Golfing",keywords:["golfer","sports","business"],skins:[{unified:"1f3cc-fe0f",native:"🏌️"},{unified:"1f3cc-1f3fb",native:"🏌🏻"},{unified:"1f3cc-1f3fc",native:"🏌🏼"},{unified:"1f3cc-1f3fd",native:"🏌🏽"},{unified:"1f3cc-1f3fe",native:"🏌🏾"},{unified:"1f3cc-1f3ff",native:"🏌🏿"}],version:1},"man-golfing":{id:"man-golfing",name:"Man Golfing",keywords:["sport"],skins:[{unified:"1f3cc-fe0f-200d-2642-fe0f",native:"🏌️‍♂️"},{unified:"1f3cc-1f3fb-200d-2642-fe0f",native:"🏌🏻‍♂️"},{unified:"1f3cc-1f3fc-200d-2642-fe0f",native:"🏌🏼‍♂️"},{unified:"1f3cc-1f3fd-200d-2642-fe0f",native:"🏌🏽‍♂️"},{unified:"1f3cc-1f3fe-200d-2642-fe0f",native:"🏌🏾‍♂️"},{unified:"1f3cc-1f3ff-200d-2642-fe0f",native:"🏌🏿‍♂️"}],version:4},"woman-golfing":{id:"woman-golfing",name:"Woman Golfing",keywords:["sports","business","female"],skins:[{unified:"1f3cc-fe0f-200d-2640-fe0f",native:"🏌️‍♀️"},{unified:"1f3cc-1f3fb-200d-2640-fe0f",native:"🏌🏻‍♀️"},{unified:"1f3cc-1f3fc-200d-2640-fe0f",native:"🏌🏼‍♀️"},{unified:"1f3cc-1f3fd-200d-2640-fe0f",native:"🏌🏽‍♀️"},{unified:"1f3cc-1f3fe-200d-2640-fe0f",native:"🏌🏾‍♀️"},{unified:"1f3cc-1f3ff-200d-2640-fe0f",native:"🏌🏿‍♀️"}],version:4},surfer:{id:"surfer",name:"Surfer",keywords:["person","surfing","sport","sea"],skins:[{unified:"1f3c4",native:"🏄"},{unified:"1f3c4-1f3fb",native:"🏄🏻"},{unified:"1f3c4-1f3fc",native:"🏄🏼"},{unified:"1f3c4-1f3fd",native:"🏄🏽"},{unified:"1f3c4-1f3fe",native:"🏄🏾"},{unified:"1f3c4-1f3ff",native:"🏄🏿"}],version:1},"man-surfing":{id:"man-surfing",name:"Man Surfing",keywords:["sports","ocean","sea","summer","beach"],skins:[{unified:"1f3c4-200d-2642-fe0f",native:"🏄‍♂️"},{unified:"1f3c4-1f3fb-200d-2642-fe0f",native:"🏄🏻‍♂️"},{unified:"1f3c4-1f3fc-200d-2642-fe0f",native:"🏄🏼‍♂️"},{unified:"1f3c4-1f3fd-200d-2642-fe0f",native:"🏄🏽‍♂️"},{unified:"1f3c4-1f3fe-200d-2642-fe0f",native:"🏄🏾‍♂️"},{unified:"1f3c4-1f3ff-200d-2642-fe0f",native:"🏄🏿‍♂️"}],version:4},"woman-surfing":{id:"woman-surfing",name:"Woman Surfing",keywords:["sports","ocean","sea","summer","beach","female"],skins:[{unified:"1f3c4-200d-2640-fe0f",native:"🏄‍♀️"},{unified:"1f3c4-1f3fb-200d-2640-fe0f",native:"🏄🏻‍♀️"},{unified:"1f3c4-1f3fc-200d-2640-fe0f",native:"🏄🏼‍♀️"},{unified:"1f3c4-1f3fd-200d-2640-fe0f",native:"🏄🏽‍♀️"},{unified:"1f3c4-1f3fe-200d-2640-fe0f",native:"🏄🏾‍♀️"},{unified:"1f3c4-1f3ff-200d-2640-fe0f",native:"🏄🏿‍♀️"}],version:4},rowboat:{id:"rowboat",name:"Rowboat",keywords:["person","rowing","boat","sport","move"],skins:[{unified:"1f6a3",native:"🚣"},{unified:"1f6a3-1f3fb",native:"🚣🏻"},{unified:"1f6a3-1f3fc",native:"🚣🏼"},{unified:"1f6a3-1f3fd",native:"🚣🏽"},{unified:"1f6a3-1f3fe",native:"🚣🏾"},{unified:"1f6a3-1f3ff",native:"🚣🏿"}],version:1},"man-rowing-boat":{id:"man-rowing-boat",name:"Man Rowing Boat",keywords:["rowing-boat","sports","hobby","water","ship"],skins:[{unified:"1f6a3-200d-2642-fe0f",native:"🚣‍♂️"},{unified:"1f6a3-1f3fb-200d-2642-fe0f",native:"🚣🏻‍♂️"},{unified:"1f6a3-1f3fc-200d-2642-fe0f",native:"🚣🏼‍♂️"},{unified:"1f6a3-1f3fd-200d-2642-fe0f",native:"🚣🏽‍♂️"},{unified:"1f6a3-1f3fe-200d-2642-fe0f",native:"🚣🏾‍♂️"},{unified:"1f6a3-1f3ff-200d-2642-fe0f",native:"🚣🏿‍♂️"}],version:4},"woman-rowing-boat":{id:"woman-rowing-boat",name:"Woman Rowing Boat",keywords:["rowing-boat","sports","hobby","water","ship","female"],skins:[{unified:"1f6a3-200d-2640-fe0f",native:"🚣‍♀️"},{unified:"1f6a3-1f3fb-200d-2640-fe0f",native:"🚣🏻‍♀️"},{unified:"1f6a3-1f3fc-200d-2640-fe0f",native:"🚣🏼‍♀️"},{unified:"1f6a3-1f3fd-200d-2640-fe0f",native:"🚣🏽‍♀️"},{unified:"1f6a3-1f3fe-200d-2640-fe0f",native:"🚣🏾‍♀️"},{unified:"1f6a3-1f3ff-200d-2640-fe0f",native:"🚣🏿‍♀️"}],version:4},swimmer:{id:"swimmer",name:"Swimmer",keywords:["person","swimming","sport","pool"],skins:[{unified:"1f3ca",native:"🏊"},{unified:"1f3ca-1f3fb",native:"🏊🏻"},{unified:"1f3ca-1f3fc",native:"🏊🏼"},{unified:"1f3ca-1f3fd",native:"🏊🏽"},{unified:"1f3ca-1f3fe",native:"🏊🏾"},{unified:"1f3ca-1f3ff",native:"🏊🏿"}],version:1},"man-swimming":{id:"man-swimming",name:"Man Swimming",keywords:["sports","exercise","human","athlete","water","summer"],skins:[{unified:"1f3ca-200d-2642-fe0f",native:"🏊‍♂️"},{unified:"1f3ca-1f3fb-200d-2642-fe0f",native:"🏊🏻‍♂️"},{unified:"1f3ca-1f3fc-200d-2642-fe0f",native:"🏊🏼‍♂️"},{unified:"1f3ca-1f3fd-200d-2642-fe0f",native:"🏊🏽‍♂️"},{unified:"1f3ca-1f3fe-200d-2642-fe0f",native:"🏊🏾‍♂️"},{unified:"1f3ca-1f3ff-200d-2642-fe0f",native:"🏊🏿‍♂️"}],version:4},"woman-swimming":{id:"woman-swimming",name:"Woman Swimming",keywords:["sports","exercise","human","athlete","water","summer","female"],skins:[{unified:"1f3ca-200d-2640-fe0f",native:"🏊‍♀️"},{unified:"1f3ca-1f3fb-200d-2640-fe0f",native:"🏊🏻‍♀️"},{unified:"1f3ca-1f3fc-200d-2640-fe0f",native:"🏊🏼‍♀️"},{unified:"1f3ca-1f3fd-200d-2640-fe0f",native:"🏊🏽‍♀️"},{unified:"1f3ca-1f3fe-200d-2640-fe0f",native:"🏊🏾‍♀️"},{unified:"1f3ca-1f3ff-200d-2640-fe0f",native:"🏊🏿‍♀️"}],version:4},person_with_ball:{id:"person_with_ball",name:"Person Bouncing Ball",keywords:["with","sports","human"],skins:[{unified:"26f9-fe0f",native:"⛹️"},{unified:"26f9-1f3fb",native:"⛹🏻"},{unified:"26f9-1f3fc",native:"⛹🏼"},{unified:"26f9-1f3fd",native:"⛹🏽"},{unified:"26f9-1f3fe",native:"⛹🏾"},{unified:"26f9-1f3ff",native:"⛹🏿"}],version:1},"man-bouncing-ball":{id:"man-bouncing-ball",name:"Man Bouncing Ball",keywords:["bouncing-ball","sport"],skins:[{unified:"26f9-fe0f-200d-2642-fe0f",native:"⛹️‍♂️"},{unified:"26f9-1f3fb-200d-2642-fe0f",native:"⛹🏻‍♂️"},{unified:"26f9-1f3fc-200d-2642-fe0f",native:"⛹🏼‍♂️"},{unified:"26f9-1f3fd-200d-2642-fe0f",native:"⛹🏽‍♂️"},{unified:"26f9-1f3fe-200d-2642-fe0f",native:"⛹🏾‍♂️"},{unified:"26f9-1f3ff-200d-2642-fe0f",native:"⛹🏿‍♂️"}],version:4},"woman-bouncing-ball":{id:"woman-bouncing-ball",name:"Woman Bouncing Ball",keywords:["bouncing-ball","sports","human","female"],skins:[{unified:"26f9-fe0f-200d-2640-fe0f",native:"⛹️‍♀️"},{unified:"26f9-1f3fb-200d-2640-fe0f",native:"⛹🏻‍♀️"},{unified:"26f9-1f3fc-200d-2640-fe0f",native:"⛹🏼‍♀️"},{unified:"26f9-1f3fd-200d-2640-fe0f",native:"⛹🏽‍♀️"},{unified:"26f9-1f3fe-200d-2640-fe0f",native:"⛹🏾‍♀️"},{unified:"26f9-1f3ff-200d-2640-fe0f",native:"⛹🏿‍♀️"}],version:4},weight_lifter:{id:"weight_lifter",name:"Person Lifting Weights",keywords:["weight","lifter","sports","training","exercise"],skins:[{unified:"1f3cb-fe0f",native:"🏋️"},{unified:"1f3cb-1f3fb",native:"🏋🏻"},{unified:"1f3cb-1f3fc",native:"🏋🏼"},{unified:"1f3cb-1f3fd",native:"🏋🏽"},{unified:"1f3cb-1f3fe",native:"🏋🏾"},{unified:"1f3cb-1f3ff",native:"🏋🏿"}],version:1},"man-lifting-weights":{id:"man-lifting-weights",name:"Man Lifting Weights",keywords:["lifting-weights","sport"],skins:[{unified:"1f3cb-fe0f-200d-2642-fe0f",native:"🏋️‍♂️"},{unified:"1f3cb-1f3fb-200d-2642-fe0f",native:"🏋🏻‍♂️"},{unified:"1f3cb-1f3fc-200d-2642-fe0f",native:"🏋🏼‍♂️"},{unified:"1f3cb-1f3fd-200d-2642-fe0f",native:"🏋🏽‍♂️"},{unified:"1f3cb-1f3fe-200d-2642-fe0f",native:"🏋🏾‍♂️"},{unified:"1f3cb-1f3ff-200d-2642-fe0f",native:"🏋🏿‍♂️"}],version:4},"woman-lifting-weights":{id:"woman-lifting-weights",name:"Woman Lifting Weights",keywords:["lifting-weights","sports","training","exercise","female"],skins:[{unified:"1f3cb-fe0f-200d-2640-fe0f",native:"🏋️‍♀️"},{unified:"1f3cb-1f3fb-200d-2640-fe0f",native:"🏋🏻‍♀️"},{unified:"1f3cb-1f3fc-200d-2640-fe0f",native:"🏋🏼‍♀️"},{unified:"1f3cb-1f3fd-200d-2640-fe0f",native:"🏋🏽‍♀️"},{unified:"1f3cb-1f3fe-200d-2640-fe0f",native:"🏋🏾‍♀️"},{unified:"1f3cb-1f3ff-200d-2640-fe0f",native:"🏋🏿‍♀️"}],version:4},bicyclist:{id:"bicyclist",name:"Bicyclist",keywords:["person","biking","sport","move"],skins:[{unified:"1f6b4",native:"🚴"},{unified:"1f6b4-1f3fb",native:"🚴🏻"},{unified:"1f6b4-1f3fc",native:"🚴🏼"},{unified:"1f6b4-1f3fd",native:"🚴🏽"},{unified:"1f6b4-1f3fe",native:"🚴🏾"},{unified:"1f6b4-1f3ff",native:"🚴🏿"}],version:1},"man-biking":{id:"man-biking",name:"Man Biking",keywords:["sports","bike","exercise","hipster"],skins:[{unified:"1f6b4-200d-2642-fe0f",native:"🚴‍♂️"},{unified:"1f6b4-1f3fb-200d-2642-fe0f",native:"🚴🏻‍♂️"},{unified:"1f6b4-1f3fc-200d-2642-fe0f",native:"🚴🏼‍♂️"},{unified:"1f6b4-1f3fd-200d-2642-fe0f",native:"🚴🏽‍♂️"},{unified:"1f6b4-1f3fe-200d-2642-fe0f",native:"🚴🏾‍♂️"},{unified:"1f6b4-1f3ff-200d-2642-fe0f",native:"🚴🏿‍♂️"}],version:4},"woman-biking":{id:"woman-biking",name:"Woman Biking",keywords:["sports","bike","exercise","hipster","female"],skins:[{unified:"1f6b4-200d-2640-fe0f",native:"🚴‍♀️"},{unified:"1f6b4-1f3fb-200d-2640-fe0f",native:"🚴🏻‍♀️"},{unified:"1f6b4-1f3fc-200d-2640-fe0f",native:"🚴🏼‍♀️"},{unified:"1f6b4-1f3fd-200d-2640-fe0f",native:"🚴🏽‍♀️"},{unified:"1f6b4-1f3fe-200d-2640-fe0f",native:"🚴🏾‍♀️"},{unified:"1f6b4-1f3ff-200d-2640-fe0f",native:"🚴🏿‍♀️"}],version:4},mountain_bicyclist:{id:"mountain_bicyclist",name:"Mountain Bicyclist",keywords:["person","biking","sport","move"],skins:[{unified:"1f6b5",native:"🚵"},{unified:"1f6b5-1f3fb",native:"🚵🏻"},{unified:"1f6b5-1f3fc",native:"🚵🏼"},{unified:"1f6b5-1f3fd",native:"🚵🏽"},{unified:"1f6b5-1f3fe",native:"🚵🏾"},{unified:"1f6b5-1f3ff",native:"🚵🏿"}],version:1},"man-mountain-biking":{id:"man-mountain-biking",name:"Man Mountain Biking",keywords:["mountain-biking","transportation","sports","human","race","bike"],skins:[{unified:"1f6b5-200d-2642-fe0f",native:"🚵‍♂️"},{unified:"1f6b5-1f3fb-200d-2642-fe0f",native:"🚵🏻‍♂️"},{unified:"1f6b5-1f3fc-200d-2642-fe0f",native:"🚵🏼‍♂️"},{unified:"1f6b5-1f3fd-200d-2642-fe0f",native:"🚵🏽‍♂️"},{unified:"1f6b5-1f3fe-200d-2642-fe0f",native:"🚵🏾‍♂️"},{unified:"1f6b5-1f3ff-200d-2642-fe0f",native:"🚵🏿‍♂️"}],version:4},"woman-mountain-biking":{id:"woman-mountain-biking",name:"Woman Mountain Biking",keywords:["mountain-biking","transportation","sports","human","race","bike","female"],skins:[{unified:"1f6b5-200d-2640-fe0f",native:"🚵‍♀️"},{unified:"1f6b5-1f3fb-200d-2640-fe0f",native:"🚵🏻‍♀️"},{unified:"1f6b5-1f3fc-200d-2640-fe0f",native:"🚵🏼‍♀️"},{unified:"1f6b5-1f3fd-200d-2640-fe0f",native:"🚵🏽‍♀️"},{unified:"1f6b5-1f3fe-200d-2640-fe0f",native:"🚵🏾‍♀️"},{unified:"1f6b5-1f3ff-200d-2640-fe0f",native:"🚵🏿‍♀️"}],version:4},person_doing_cartwheel:{id:"person_doing_cartwheel",name:"Person Cartwheeling",keywords:["doing","cartwheel","sport","gymnastic"],skins:[{unified:"1f938",native:"🤸"},{unified:"1f938-1f3fb",native:"🤸🏻"},{unified:"1f938-1f3fc",native:"🤸🏼"},{unified:"1f938-1f3fd",native:"🤸🏽"},{unified:"1f938-1f3fe",native:"🤸🏾"},{unified:"1f938-1f3ff",native:"🤸🏿"}],version:3},"man-cartwheeling":{id:"man-cartwheeling",name:"Man Cartwheeling",keywords:["gymnastics"],skins:[{unified:"1f938-200d-2642-fe0f",native:"🤸‍♂️"},{unified:"1f938-1f3fb-200d-2642-fe0f",native:"🤸🏻‍♂️"},{unified:"1f938-1f3fc-200d-2642-fe0f",native:"🤸🏼‍♂️"},{unified:"1f938-1f3fd-200d-2642-fe0f",native:"🤸🏽‍♂️"},{unified:"1f938-1f3fe-200d-2642-fe0f",native:"🤸🏾‍♂️"},{unified:"1f938-1f3ff-200d-2642-fe0f",native:"🤸🏿‍♂️"}],version:4},"woman-cartwheeling":{id:"woman-cartwheeling",name:"Woman Cartwheeling",keywords:["gymnastics"],skins:[{unified:"1f938-200d-2640-fe0f",native:"🤸‍♀️"},{unified:"1f938-1f3fb-200d-2640-fe0f",native:"🤸🏻‍♀️"},{unified:"1f938-1f3fc-200d-2640-fe0f",native:"🤸🏼‍♀️"},{unified:"1f938-1f3fd-200d-2640-fe0f",native:"🤸🏽‍♀️"},{unified:"1f938-1f3fe-200d-2640-fe0f",native:"🤸🏾‍♀️"},{unified:"1f938-1f3ff-200d-2640-fe0f",native:"🤸🏿‍♀️"}],version:4},wrestlers:{id:"wrestlers",name:"Wrestlers",keywords:["people","wrestling","sport"],skins:[{unified:"1f93c",native:"🤼"}],version:3},"man-wrestling":{id:"man-wrestling",name:"Men Wrestling",keywords:["man","sports","wrestlers"],skins:[{unified:"1f93c-200d-2642-fe0f",native:"🤼‍♂️"}],version:4},"woman-wrestling":{id:"woman-wrestling",name:"Women Wrestling",keywords:["woman","sports","wrestlers"],skins:[{unified:"1f93c-200d-2640-fe0f",native:"🤼‍♀️"}],version:4},water_polo:{id:"water_polo",name:"Water Polo",keywords:["person","playing","sport"],skins:[{unified:"1f93d",native:"🤽"},{unified:"1f93d-1f3fb",native:"🤽🏻"},{unified:"1f93d-1f3fc",native:"🤽🏼"},{unified:"1f93d-1f3fd",native:"🤽🏽"},{unified:"1f93d-1f3fe",native:"🤽🏾"},{unified:"1f93d-1f3ff",native:"🤽🏿"}],version:3},"man-playing-water-polo":{id:"man-playing-water-polo",name:"Man Playing Water Polo",keywords:["playing-water-polo","sports","pool"],skins:[{unified:"1f93d-200d-2642-fe0f",native:"🤽‍♂️"},{unified:"1f93d-1f3fb-200d-2642-fe0f",native:"🤽🏻‍♂️"},{unified:"1f93d-1f3fc-200d-2642-fe0f",native:"🤽🏼‍♂️"},{unified:"1f93d-1f3fd-200d-2642-fe0f",native:"🤽🏽‍♂️"},{unified:"1f93d-1f3fe-200d-2642-fe0f",native:"🤽🏾‍♂️"},{unified:"1f93d-1f3ff-200d-2642-fe0f",native:"🤽🏿‍♂️"}],version:4},"woman-playing-water-polo":{id:"woman-playing-water-polo",name:"Woman Playing Water Polo",keywords:["playing-water-polo","sports","pool"],skins:[{unified:"1f93d-200d-2640-fe0f",native:"🤽‍♀️"},{unified:"1f93d-1f3fb-200d-2640-fe0f",native:"🤽🏻‍♀️"},{unified:"1f93d-1f3fc-200d-2640-fe0f",native:"🤽🏼‍♀️"},{unified:"1f93d-1f3fd-200d-2640-fe0f",native:"🤽🏽‍♀️"},{unified:"1f93d-1f3fe-200d-2640-fe0f",native:"🤽🏾‍♀️"},{unified:"1f93d-1f3ff-200d-2640-fe0f",native:"🤽🏿‍♀️"}],version:4},handball:{id:"handball",name:"Handball",keywords:["person","playing","sport"],skins:[{unified:"1f93e",native:"🤾"},{unified:"1f93e-1f3fb",native:"🤾🏻"},{unified:"1f93e-1f3fc",native:"🤾🏼"},{unified:"1f93e-1f3fd",native:"🤾🏽"},{unified:"1f93e-1f3fe",native:"🤾🏾"},{unified:"1f93e-1f3ff",native:"🤾🏿"}],version:3},"man-playing-handball":{id:"man-playing-handball",name:"Man Playing Handball",keywords:["playing-handball","sports"],skins:[{unified:"1f93e-200d-2642-fe0f",native:"🤾‍♂️"},{unified:"1f93e-1f3fb-200d-2642-fe0f",native:"🤾🏻‍♂️"},{unified:"1f93e-1f3fc-200d-2642-fe0f",native:"🤾🏼‍♂️"},{unified:"1f93e-1f3fd-200d-2642-fe0f",native:"🤾🏽‍♂️"},{unified:"1f93e-1f3fe-200d-2642-fe0f",native:"🤾🏾‍♂️"},{unified:"1f93e-1f3ff-200d-2642-fe0f",native:"🤾🏿‍♂️"}],version:4},"woman-playing-handball":{id:"woman-playing-handball",name:"Woman Playing Handball",keywords:["playing-handball","sports"],skins:[{unified:"1f93e-200d-2640-fe0f",native:"🤾‍♀️"},{unified:"1f93e-1f3fb-200d-2640-fe0f",native:"🤾🏻‍♀️"},{unified:"1f93e-1f3fc-200d-2640-fe0f",native:"🤾🏼‍♀️"},{unified:"1f93e-1f3fd-200d-2640-fe0f",native:"🤾🏽‍♀️"},{unified:"1f93e-1f3fe-200d-2640-fe0f",native:"🤾🏾‍♀️"},{unified:"1f93e-1f3ff-200d-2640-fe0f",native:"🤾🏿‍♀️"}],version:4},juggling:{id:"juggling",name:"Juggling",keywords:["person","performance","balance"],skins:[{unified:"1f939",native:"🤹"},{unified:"1f939-1f3fb",native:"🤹🏻"},{unified:"1f939-1f3fc",native:"🤹🏼"},{unified:"1f939-1f3fd",native:"🤹🏽"},{unified:"1f939-1f3fe",native:"🤹🏾"},{unified:"1f939-1f3ff",native:"🤹🏿"}],version:3},"man-juggling":{id:"man-juggling",name:"Man Juggling",keywords:["juggle","balance","skill","multitask"],skins:[{unified:"1f939-200d-2642-fe0f",native:"🤹‍♂️"},{unified:"1f939-1f3fb-200d-2642-fe0f",native:"🤹🏻‍♂️"},{unified:"1f939-1f3fc-200d-2642-fe0f",native:"🤹🏼‍♂️"},{unified:"1f939-1f3fd-200d-2642-fe0f",native:"🤹🏽‍♂️"},{unified:"1f939-1f3fe-200d-2642-fe0f",native:"🤹🏾‍♂️"},{unified:"1f939-1f3ff-200d-2642-fe0f",native:"🤹🏿‍♂️"}],version:4},"woman-juggling":{id:"woman-juggling",name:"Woman Juggling",keywords:["juggle","balance","skill","multitask"],skins:[{unified:"1f939-200d-2640-fe0f",native:"🤹‍♀️"},{unified:"1f939-1f3fb-200d-2640-fe0f",native:"🤹🏻‍♀️"},{unified:"1f939-1f3fc-200d-2640-fe0f",native:"🤹🏼‍♀️"},{unified:"1f939-1f3fd-200d-2640-fe0f",native:"🤹🏽‍♀️"},{unified:"1f939-1f3fe-200d-2640-fe0f",native:"🤹🏾‍♀️"},{unified:"1f939-1f3ff-200d-2640-fe0f",native:"🤹🏿‍♀️"}],version:4},person_in_lotus_position:{id:"person_in_lotus_position",name:"Person in Lotus Position",keywords:["meditate"],skins:[{unified:"1f9d8",native:"🧘"},{unified:"1f9d8-1f3fb",native:"🧘🏻"},{unified:"1f9d8-1f3fc",native:"🧘🏼"},{unified:"1f9d8-1f3fd",native:"🧘🏽"},{unified:"1f9d8-1f3fe",native:"🧘🏾"},{unified:"1f9d8-1f3ff",native:"🧘🏿"}],version:5},man_in_lotus_position:{id:"man_in_lotus_position",name:"Man in Lotus Position",keywords:["male","meditation","yoga","serenity","zen","mindfulness"],skins:[{unified:"1f9d8-200d-2642-fe0f",native:"🧘‍♂️"},{unified:"1f9d8-1f3fb-200d-2642-fe0f",native:"🧘🏻‍♂️"},{unified:"1f9d8-1f3fc-200d-2642-fe0f",native:"🧘🏼‍♂️"},{unified:"1f9d8-1f3fd-200d-2642-fe0f",native:"🧘🏽‍♂️"},{unified:"1f9d8-1f3fe-200d-2642-fe0f",native:"🧘🏾‍♂️"},{unified:"1f9d8-1f3ff-200d-2642-fe0f",native:"🧘🏿‍♂️"}],version:5},woman_in_lotus_position:{id:"woman_in_lotus_position",name:"Woman in Lotus Position",keywords:["female","meditation","yoga","serenity","zen","mindfulness"],skins:[{unified:"1f9d8-200d-2640-fe0f",native:"🧘‍♀️"},{unified:"1f9d8-1f3fb-200d-2640-fe0f",native:"🧘🏻‍♀️"},{unified:"1f9d8-1f3fc-200d-2640-fe0f",native:"🧘🏼‍♀️"},{unified:"1f9d8-1f3fd-200d-2640-fe0f",native:"🧘🏽‍♀️"},{unified:"1f9d8-1f3fe-200d-2640-fe0f",native:"🧘🏾‍♀️"},{unified:"1f9d8-1f3ff-200d-2640-fe0f",native:"🧘🏿‍♀️"}],version:5},bath:{id:"bath",name:"Bath",keywords:["person","taking","clean","shower","bathroom"],skins:[{unified:"1f6c0",native:"🛀"},{unified:"1f6c0-1f3fb",native:"🛀🏻"},{unified:"1f6c0-1f3fc",native:"🛀🏼"},{unified:"1f6c0-1f3fd",native:"🛀🏽"},{unified:"1f6c0-1f3fe",native:"🛀🏾"},{unified:"1f6c0-1f3ff",native:"🛀🏿"}],version:1},sleeping_accommodation:{id:"sleeping_accommodation",name:"Person in Bed",keywords:["sleeping","accommodation","rest"],skins:[{unified:"1f6cc",native:"🛌"},{unified:"1f6cc-1f3fb",native:"🛌🏻"},{unified:"1f6cc-1f3fc",native:"🛌🏼"},{unified:"1f6cc-1f3fd",native:"🛌🏽"},{unified:"1f6cc-1f3fe",native:"🛌🏾"},{unified:"1f6cc-1f3ff",native:"🛌🏿"}],version:1},people_holding_hands:{id:"people_holding_hands",name:"People Holding Hands",keywords:["friendship"],skins:[{unified:"1f9d1-200d-1f91d-200d-1f9d1",native:"🧑‍🤝‍🧑"},{unified:"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3fb",native:"🧑🏻‍🤝‍🧑🏻"},{unified:"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3fc",native:"🧑🏼‍🤝‍🧑🏼"},{unified:"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3fd",native:"🧑🏽‍🤝‍🧑🏽"},{unified:"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3fe",native:"🧑🏾‍🤝‍🧑🏾"},{unified:"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3ff",native:"🧑🏿‍🤝‍🧑🏿"}],version:12},two_women_holding_hands:{id:"two_women_holding_hands",name:"Women Holding Hands",keywords:["two","pair","friendship","couple","love","like","female","people","human"],skins:[{unified:"1f46d",native:"👭"},{unified:"1f46d-1f3fb",native:"👭🏻"},{unified:"1f46d-1f3fc",native:"👭🏼"},{unified:"1f46d-1f3fd",native:"👭🏽"},{unified:"1f46d-1f3fe",native:"👭🏾"},{unified:"1f46d-1f3ff",native:"👭🏿"}],version:1},man_and_woman_holding_hands:{id:"man_and_woman_holding_hands",name:"Man and Woman Holding Hands",keywords:["couple","pair","people","human","love","date","dating","like","affection","valentines","marriage"],skins:[{unified:"1f46b",native:"👫"},{unified:"1f46b-1f3fb",native:"👫🏻"},{unified:"1f46b-1f3fc",native:"👫🏼"},{unified:"1f46b-1f3fd",native:"👫🏽"},{unified:"1f46b-1f3fe",native:"👫🏾"},{unified:"1f46b-1f3ff",native:"👫🏿"}],version:1},two_men_holding_hands:{id:"two_men_holding_hands",name:"Men Holding Hands",keywords:["two","pair","couple","love","like","bromance","friendship","people","human"],skins:[{unified:"1f46c",native:"👬"},{unified:"1f46c-1f3fb",native:"👬🏻"},{unified:"1f46c-1f3fc",native:"👬🏼"},{unified:"1f46c-1f3fd",native:"👬🏽"},{unified:"1f46c-1f3fe",native:"👬🏾"},{unified:"1f46c-1f3ff",native:"👬🏿"}],version:1},couplekiss:{id:"couplekiss",name:"Kiss",keywords:["couplekiss","pair","valentines","love","like","dating","marriage"],skins:[{unified:"1f48f",native:"💏"},{unified:"1f48f-1f3fb",native:"💏🏻"},{unified:"1f48f-1f3fc",native:"💏🏼"},{unified:"1f48f-1f3fd",native:"💏🏽"},{unified:"1f48f-1f3fe",native:"💏🏾"},{unified:"1f48f-1f3ff",native:"💏🏿"}],version:1},"woman-kiss-man":{id:"woman-kiss-man",name:"Kiss: Woman, Man",keywords:["woman","kiss-man","kiss","love"],skins:[{unified:"1f469-200d-2764-fe0f-200d-1f48b-200d-1f468",native:"👩‍❤️‍💋‍👨"},{unified:"1f469-1f3fb-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fb",native:"👩🏻‍❤️‍💋‍👨🏻"},{unified:"1f469-1f3fc-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fc",native:"👩🏼‍❤️‍💋‍👨🏼"},{unified:"1f469-1f3fd-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fd",native:"👩🏽‍❤️‍💋‍👨🏽"},{unified:"1f469-1f3fe-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fe",native:"👩🏾‍❤️‍💋‍👨🏾"},{unified:"1f469-1f3ff-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3ff",native:"👩🏿‍❤️‍💋‍👨🏿"}],version:2},"man-kiss-man":{id:"man-kiss-man",name:"Kiss: Man, Man",keywords:["kiss-man","kiss","pair","valentines","love","like","dating","marriage"],skins:[{unified:"1f468-200d-2764-fe0f-200d-1f48b-200d-1f468",native:"👨‍❤️‍💋‍👨"},{unified:"1f468-1f3fb-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fb",native:"👨🏻‍❤️‍💋‍👨🏻"},{unified:"1f468-1f3fc-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fc",native:"👨🏼‍❤️‍💋‍👨🏼"},{unified:"1f468-1f3fd-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fd",native:"👨🏽‍❤️‍💋‍👨🏽"},{unified:"1f468-1f3fe-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3fe",native:"👨🏾‍❤️‍💋‍👨🏾"},{unified:"1f468-1f3ff-200d-2764-fe0f-200d-1f48b-200d-1f468-1f3ff",native:"👨🏿‍❤️‍💋‍👨🏿"}],version:2},"woman-kiss-woman":{id:"woman-kiss-woman",name:"Kiss: Woman, Woman",keywords:["kiss-woman","kiss","pair","valentines","love","like","dating","marriage"],skins:[{unified:"1f469-200d-2764-fe0f-200d-1f48b-200d-1f469",native:"👩‍❤️‍💋‍👩"},{unified:"1f469-1f3fb-200d-2764-fe0f-200d-1f48b-200d-1f469-1f3fb",native:"👩🏻‍❤️‍💋‍👩🏻"},{unified:"1f469-1f3fc-200d-2764-fe0f-200d-1f48b-200d-1f469-1f3fc",native:"👩🏼‍❤️‍💋‍👩🏼"},{unified:"1f469-1f3fd-200d-2764-fe0f-200d-1f48b-200d-1f469-1f3fd",native:"👩🏽‍❤️‍💋‍👩🏽"},{unified:"1f469-1f3fe-200d-2764-fe0f-200d-1f48b-200d-1f469-1f3fe",native:"👩🏾‍❤️‍💋‍👩🏾"},{unified:"1f469-1f3ff-200d-2764-fe0f-200d-1f48b-200d-1f469-1f3ff",native:"👩🏿‍❤️‍💋‍👩🏿"}],version:2},couple_with_heart:{id:"couple_with_heart",name:"Couple with Heart",keywords:["pair","love","like","affection","human","dating","valentines","marriage"],skins:[{unified:"1f491",native:"💑"},{unified:"1f491-1f3fb",native:"💑🏻"},{unified:"1f491-1f3fc",native:"💑🏼"},{unified:"1f491-1f3fd",native:"💑🏽"},{unified:"1f491-1f3fe",native:"💑🏾"},{unified:"1f491-1f3ff",native:"💑🏿"}],version:1},"woman-heart-man":{id:"woman-heart-man",name:"Couple with Heart: Woman, Man",keywords:["woman","heart-man","heart","love"],skins:[{unified:"1f469-200d-2764-fe0f-200d-1f468",native:"👩‍❤️‍👨"},{unified:"1f469-1f3fb-200d-2764-fe0f-200d-1f468-1f3fb",native:"👩🏻‍❤️‍👨🏻"},{unified:"1f469-1f3fc-200d-2764-fe0f-200d-1f468-1f3fc",native:"👩🏼‍❤️‍👨🏼"},{unified:"1f469-1f3fd-200d-2764-fe0f-200d-1f468-1f3fd",native:"👩🏽‍❤️‍👨🏽"},{unified:"1f469-1f3fe-200d-2764-fe0f-200d-1f468-1f3fe",native:"👩🏾‍❤️‍👨🏾"},{unified:"1f469-1f3ff-200d-2764-fe0f-200d-1f468-1f3ff",native:"👩🏿‍❤️‍👨🏿"}],version:2},"man-heart-man":{id:"man-heart-man",name:"Couple with Heart: Man, Man",keywords:["heart-man","heart","pair","love","like","affection","human","dating","valentines","marriage"],skins:[{unified:"1f468-200d-2764-fe0f-200d-1f468",native:"👨‍❤️‍👨"},{unified:"1f468-1f3fb-200d-2764-fe0f-200d-1f468-1f3fb",native:"👨🏻‍❤️‍👨🏻"},{unified:"1f468-1f3fc-200d-2764-fe0f-200d-1f468-1f3fc",native:"👨🏼‍❤️‍👨🏼"},{unified:"1f468-1f3fd-200d-2764-fe0f-200d-1f468-1f3fd",native:"👨🏽‍❤️‍👨🏽"},{unified:"1f468-1f3fe-200d-2764-fe0f-200d-1f468-1f3fe",native:"👨🏾‍❤️‍👨🏾"},{unified:"1f468-1f3ff-200d-2764-fe0f-200d-1f468-1f3ff",native:"👨🏿‍❤️‍👨🏿"}],version:2},"woman-heart-woman":{id:"woman-heart-woman",name:"Couple with Heart: Woman, Woman",keywords:["heart-woman","heart","pair","love","like","affection","human","dating","valentines","marriage"],skins:[{unified:"1f469-200d-2764-fe0f-200d-1f469",native:"👩‍❤️‍👩"},{unified:"1f469-1f3fb-200d-2764-fe0f-200d-1f469-1f3fb",native:"👩🏻‍❤️‍👩🏻"},{unified:"1f469-1f3fc-200d-2764-fe0f-200d-1f469-1f3fc",native:"👩🏼‍❤️‍👩🏼"},{unified:"1f469-1f3fd-200d-2764-fe0f-200d-1f469-1f3fd",native:"👩🏽‍❤️‍👩🏽"},{unified:"1f469-1f3fe-200d-2764-fe0f-200d-1f469-1f3fe",native:"👩🏾‍❤️‍👩🏾"},{unified:"1f469-1f3ff-200d-2764-fe0f-200d-1f469-1f3ff",native:"👩🏿‍❤️‍👩🏿"}],version:2},family:{id:"family",name:"Family",keywords:["home","parents","child","mom","dad","father","mother","people","human"],skins:[{unified:"1f46a",native:"👪"}],version:1},"man-woman-boy":{id:"man-woman-boy",name:"Family: Man, Woman, Boy",keywords:["man","woman-boy","family","woman","love"],skins:[{unified:"1f468-200d-1f469-200d-1f466",native:"👨‍👩‍👦"}],version:2},"man-woman-girl":{id:"man-woman-girl",name:"Family: Man, Woman, Girl",keywords:["man","woman-girl","family","woman","home","parents","people","human","child"],skins:[{unified:"1f468-200d-1f469-200d-1f467",native:"👨‍👩‍👧"}],version:2},"man-woman-girl-boy":{id:"man-woman-girl-boy",name:"Family: Man, Woman, Girl, Boy",keywords:["man","woman-girl-boy","family","woman","girl","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f469-200d-1f467-200d-1f466",native:"👨‍👩‍👧‍👦"}],version:2},"man-woman-boy-boy":{id:"man-woman-boy-boy",name:"Family: Man, Woman, Boy, Boy",keywords:["man","woman-boy-boy","family","woman","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f469-200d-1f466-200d-1f466",native:"👨‍👩‍👦‍👦"}],version:2},"man-woman-girl-girl":{id:"man-woman-girl-girl",name:"Family: Man, Woman, Girl, Girl",keywords:["man","woman-girl-girl","family","woman","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f469-200d-1f467-200d-1f467",native:"👨‍👩‍👧‍👧"}],version:2},"man-man-boy":{id:"man-man-boy",name:"Family: Man, Man, Boy",keywords:["man","man-boy","family","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f468-200d-1f466",native:"👨‍👨‍👦"}],version:2},"man-man-girl":{id:"man-man-girl",name:"Family: Man, Man, Girl",keywords:["man","man-girl","family","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f468-200d-1f467",native:"👨‍👨‍👧"}],version:2},"man-man-girl-boy":{id:"man-man-girl-boy",name:"Family: Man, Man, Girl, Boy",keywords:["man","man-girl-boy","family","girl","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f468-200d-1f467-200d-1f466",native:"👨‍👨‍👧‍👦"}],version:2},"man-man-boy-boy":{id:"man-man-boy-boy",name:"Family: Man, Man, Boy, Boy",keywords:["man","man-boy-boy","family","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f468-200d-1f466-200d-1f466",native:"👨‍👨‍👦‍👦"}],version:2},"man-man-girl-girl":{id:"man-man-girl-girl",name:"Family: Man, Man, Girl, Girl",keywords:["man","man-girl-girl","family","home","parents","people","human","children"],skins:[{unified:"1f468-200d-1f468-200d-1f467-200d-1f467",native:"👨‍👨‍👧‍👧"}],version:2},"woman-woman-boy":{id:"woman-woman-boy",name:"Family: Woman, Woman, Boy",keywords:["woman","woman-boy","family","home","parents","people","human","children"],skins:[{unified:"1f469-200d-1f469-200d-1f466",native:"👩‍👩‍👦"}],version:2},"woman-woman-girl":{id:"woman-woman-girl",name:"Family: Woman, Woman, Girl",keywords:["woman","woman-girl","family","home","parents","people","human","children"],skins:[{unified:"1f469-200d-1f469-200d-1f467",native:"👩‍👩‍👧"}],version:2},"woman-woman-girl-boy":{id:"woman-woman-girl-boy",name:"Family: Woman, Woman, Girl, Boy",keywords:["woman","woman-girl-boy","family","girl","home","parents","people","human","children"],skins:[{unified:"1f469-200d-1f469-200d-1f467-200d-1f466",native:"👩‍👩‍👧‍👦"}],version:2},"woman-woman-boy-boy":{id:"woman-woman-boy-boy",name:"Family: Woman, Woman, Boy, Boy",keywords:["woman","woman-boy-boy","family","home","parents","people","human","children"],skins:[{unified:"1f469-200d-1f469-200d-1f466-200d-1f466",native:"👩‍👩‍👦‍👦"}],version:2},"woman-woman-girl-girl":{id:"woman-woman-girl-girl",name:"Family: Woman, Woman, Girl, Girl",keywords:["woman","woman-girl-girl","family","home","parents","people","human","children"],skins:[{unified:"1f469-200d-1f469-200d-1f467-200d-1f467",native:"👩‍👩‍👧‍👧"}],version:2},"man-boy":{id:"man-boy",name:"Family: Man, Boy",keywords:["man","family","home","parent","people","human","child"],skins:[{unified:"1f468-200d-1f466",native:"👨‍👦"}],version:4},"man-boy-boy":{id:"man-boy-boy",name:"Family: Man, Boy, Boy",keywords:["man","boy-boy","family","home","parent","people","human","children"],skins:[{unified:"1f468-200d-1f466-200d-1f466",native:"👨‍👦‍👦"}],version:4},"man-girl":{id:"man-girl",name:"Family: Man, Girl",keywords:["man","family","home","parent","people","human","child"],skins:[{unified:"1f468-200d-1f467",native:"👨‍👧"}],version:4},"man-girl-boy":{id:"man-girl-boy",name:"Family: Man, Girl, Boy",keywords:["man","girl-boy","family","girl","home","parent","people","human","children"],skins:[{unified:"1f468-200d-1f467-200d-1f466",native:"👨‍👧‍👦"}],version:4},"man-girl-girl":{id:"man-girl-girl",name:"Family: Man, Girl, Girl",keywords:["man","girl-girl","family","home","parent","people","human","children"],skins:[{unified:"1f468-200d-1f467-200d-1f467",native:"👨‍👧‍👧"}],version:4},"woman-boy":{id:"woman-boy",name:"Family: Woman, Boy",keywords:["woman","family","home","parent","people","human","child"],skins:[{unified:"1f469-200d-1f466",native:"👩‍👦"}],version:4},"woman-boy-boy":{id:"woman-boy-boy",name:"Family: Woman, Boy, Boy",keywords:["woman","boy-boy","family","home","parent","people","human","children"],skins:[{unified:"1f469-200d-1f466-200d-1f466",native:"👩‍👦‍👦"}],version:4},"woman-girl":{id:"woman-girl",name:"Family: Woman, Girl",keywords:["woman","family","home","parent","people","human","child"],skins:[{unified:"1f469-200d-1f467",native:"👩‍👧"}],version:4},"woman-girl-boy":{id:"woman-girl-boy",name:"Family: Woman, Girl, Boy",keywords:["woman","girl-boy","family","girl","home","parent","people","human","children"],skins:[{unified:"1f469-200d-1f467-200d-1f466",native:"👩‍👧‍👦"}],version:4},"woman-girl-girl":{id:"woman-girl-girl",name:"Family: Woman, Girl, Girl",keywords:["woman","girl-girl","family","home","parent","people","human","children"],skins:[{unified:"1f469-200d-1f467-200d-1f467",native:"👩‍👧‍👧"}],version:4},speaking_head_in_silhouette:{id:"speaking_head_in_silhouette",name:"Speaking Head",keywords:["in","silhouette","user","person","human","sing","say","talk"],skins:[{unified:"1f5e3-fe0f",native:"🗣️"}],version:1},bust_in_silhouette:{id:"bust_in_silhouette",name:"Bust in Silhouette",keywords:["user","person","human"],skins:[{unified:"1f464",native:"👤"}],version:1},busts_in_silhouette:{id:"busts_in_silhouette",name:"Busts in Silhouette",keywords:["user","person","human","group","team"],skins:[{unified:"1f465",native:"👥"}],version:1},people_hugging:{id:"people_hugging",name:"People Hugging",keywords:["care"],skins:[{unified:"1fac2",native:"🫂"}],version:13},footprints:{id:"footprints",name:"Footprints",keywords:["feet","tracking","walking","beach"],skins:[{unified:"1f463",native:"👣"}],version:1},monkey_face:{id:"monkey_face",name:"Monkey Face",emoticons:[":o)"],keywords:["animal","nature","circus"],skins:[{unified:"1f435",native:"🐵"}],version:1},monkey:{id:"monkey",name:"Monkey",keywords:["animal","nature","banana","circus"],skins:[{unified:"1f412",native:"🐒"}],version:1},gorilla:{id:"gorilla",name:"Gorilla",keywords:["animal","nature","circus"],skins:[{unified:"1f98d",native:"🦍"}],version:3},orangutan:{id:"orangutan",name:"Orangutan",keywords:["animal"],skins:[{unified:"1f9a7",native:"🦧"}],version:12},dog:{id:"dog",name:"Dog Face",keywords:["animal","friend","nature","woof","puppy","pet","faithful"],skins:[{unified:"1f436",native:"🐶"}],version:1},dog2:{id:"dog2",name:"Dog",keywords:["dog2","animal","nature","friend","doge","pet","faithful"],skins:[{unified:"1f415",native:"🐕"}],version:1},guide_dog:{id:"guide_dog",name:"Guide Dog",keywords:["animal","blind"],skins:[{unified:"1f9ae",native:"🦮"}],version:12},service_dog:{id:"service_dog",name:"Service Dog",keywords:["blind","animal"],skins:[{unified:"1f415-200d-1f9ba",native:"🐕‍🦺"}],version:12},poodle:{id:"poodle",name:"Poodle",keywords:["dog","animal","101","nature","pet"],skins:[{unified:"1f429",native:"🐩"}],version:1},wolf:{id:"wolf",name:"Wolf",keywords:["animal","nature","wild"],skins:[{unified:"1f43a",native:"🐺"}],version:1},fox_face:{id:"fox_face",name:"Fox",keywords:["face","animal","nature"],skins:[{unified:"1f98a",native:"🦊"}],version:3},raccoon:{id:"raccoon",name:"Raccoon",keywords:["animal","nature"],skins:[{unified:"1f99d",native:"🦝"}],version:11},cat:{id:"cat",name:"Cat Face",keywords:["animal","meow","nature","pet","kitten"],skins:[{unified:"1f431",native:"🐱"}],version:1},cat2:{id:"cat2",name:"Cat",keywords:["cat2","animal","meow","pet","cats"],skins:[{unified:"1f408",native:"🐈"}],version:1},black_cat:{id:"black_cat",name:"Black Cat",keywords:["superstition","luck"],skins:[{unified:"1f408-200d-2b1b",native:"🐈‍⬛"}],version:13},lion_face:{id:"lion_face",name:"Lion",keywords:["face","animal","nature"],skins:[{unified:"1f981",native:"🦁"}],version:1},tiger:{id:"tiger",name:"Tiger Face",keywords:["animal","cat","danger","wild","nature","roar"],skins:[{unified:"1f42f",native:"🐯"}],version:1},tiger2:{id:"tiger2",name:"Tiger",keywords:["tiger2","animal","nature","roar"],skins:[{unified:"1f405",native:"🐅"}],version:1},leopard:{id:"leopard",name:"Leopard",keywords:["animal","nature"],skins:[{unified:"1f406",native:"🐆"}],version:1},horse:{id:"horse",name:"Horse Face",keywords:["animal","brown","nature"],skins:[{unified:"1f434",native:"🐴"}],version:1},moose:{id:"moose",name:"Moose",keywords:["shrek","canada","sweden","sven","cool"],skins:[{unified:"1face",native:"🫎"}],version:15},donkey:{id:"donkey",name:"Donkey",keywords:["eeyore","mule"],skins:[{unified:"1facf",native:"🫏"}],version:15},racehorse:{id:"racehorse",name:"Horse",keywords:["racehorse","animal","gamble","luck"],skins:[{unified:"1f40e",native:"🐎"}],version:1},unicorn_face:{id:"unicorn_face",name:"Unicorn",keywords:["face","animal","nature","mystical"],skins:[{unified:"1f984",native:"🦄"}],version:1},zebra_face:{id:"zebra_face",name:"Zebra",keywords:["face","animal","nature","stripes","safari"],skins:[{unified:"1f993",native:"🦓"}],version:5},deer:{id:"deer",name:"Deer",keywords:["animal","nature","horns","venison"],skins:[{unified:"1f98c",native:"🦌"}],version:3},bison:{id:"bison",name:"Bison",keywords:["ox"],skins:[{unified:"1f9ac",native:"🦬"}],version:13},cow:{id:"cow",name:"Cow Face",keywords:["beef","ox","animal","nature","moo","milk"],skins:[{unified:"1f42e",native:"🐮"}],version:1},ox:{id:"ox",name:"Ox",keywords:["animal","cow","beef"],skins:[{unified:"1f402",native:"🐂"}],version:1},water_buffalo:{id:"water_buffalo",name:"Water Buffalo",keywords:["animal","nature","ox","cow"],skins:[{unified:"1f403",native:"🐃"}],version:1},cow2:{id:"cow2",name:"Cow",keywords:["cow2","beef","ox","animal","nature","moo","milk"],skins:[{unified:"1f404",native:"🐄"}],version:1},pig:{id:"pig",name:"Pig Face",keywords:["animal","oink","nature"],skins:[{unified:"1f437",native:"🐷"}],version:1},pig2:{id:"pig2",name:"Pig",keywords:["pig2","animal","nature"],skins:[{unified:"1f416",native:"🐖"}],version:1},boar:{id:"boar",name:"Boar",keywords:["animal","nature"],skins:[{unified:"1f417",native:"🐗"}],version:1},pig_nose:{id:"pig_nose",name:"Pig Nose",keywords:["animal","oink"],skins:[{unified:"1f43d",native:"🐽"}],version:1},ram:{id:"ram",name:"Ram",keywords:["animal","sheep","nature"],skins:[{unified:"1f40f",native:"🐏"}],version:1},sheep:{id:"sheep",name:"Ewe",keywords:["sheep","animal","nature","wool","shipit"],skins:[{unified:"1f411",native:"🐑"}],version:1},goat:{id:"goat",name:"Goat",keywords:["animal","nature"],skins:[{unified:"1f410",native:"🐐"}],version:1},dromedary_camel:{id:"dromedary_camel",name:"Camel",keywords:["dromedary","animal","hot","desert","hump"],skins:[{unified:"1f42a",native:"🐪"}],version:1},camel:{id:"camel",name:"Bactrian Camel",keywords:["two","hump","animal","nature","hot","desert"],skins:[{unified:"1f42b",native:"🐫"}],version:1},llama:{id:"llama",name:"Llama",keywords:["animal","nature","alpaca"],skins:[{unified:"1f999",native:"🦙"}],version:11},giraffe_face:{id:"giraffe_face",name:"Giraffe",keywords:["face","animal","nature","spots","safari"],skins:[{unified:"1f992",native:"🦒"}],version:5},elephant:{id:"elephant",name:"Elephant",keywords:["animal","nature","nose","th","circus"],skins:[{unified:"1f418",native:"🐘"}],version:1},mammoth:{id:"mammoth",name:"Mammoth",keywords:["elephant","tusks"],skins:[{unified:"1f9a3",native:"🦣"}],version:13},rhinoceros:{id:"rhinoceros",name:"Rhinoceros",keywords:["animal","nature","horn"],skins:[{unified:"1f98f",native:"🦏"}],version:3},hippopotamus:{id:"hippopotamus",name:"Hippopotamus",keywords:["animal","nature"],skins:[{unified:"1f99b",native:"🦛"}],version:11},mouse:{id:"mouse",name:"Mouse Face",keywords:["animal","nature","cheese","wedge","rodent"],skins:[{unified:"1f42d",native:"🐭"}],version:1},mouse2:{id:"mouse2",name:"Mouse",keywords:["mouse2","animal","nature","rodent"],skins:[{unified:"1f401",native:"🐁"}],version:1},rat:{id:"rat",name:"Rat",keywords:["animal","mouse","rodent"],skins:[{unified:"1f400",native:"🐀"}],version:1},hamster:{id:"hamster",name:"Hamster",keywords:["animal","nature"],skins:[{unified:"1f439",native:"🐹"}],version:1},rabbit:{id:"rabbit",name:"Rabbit Face",keywords:["animal","nature","pet","spring","magic","bunny"],skins:[{unified:"1f430",native:"🐰"}],version:1},rabbit2:{id:"rabbit2",name:"Rabbit",keywords:["rabbit2","animal","nature","pet","magic","spring"],skins:[{unified:"1f407",native:"🐇"}],version:1},chipmunk:{id:"chipmunk",name:"Chipmunk",keywords:["animal","nature","rodent","squirrel"],skins:[{unified:"1f43f-fe0f",native:"🐿️"}],version:1},beaver:{id:"beaver",name:"Beaver",keywords:["animal","rodent"],skins:[{unified:"1f9ab",native:"🦫"}],version:13},hedgehog:{id:"hedgehog",name:"Hedgehog",keywords:["animal","nature","spiny"],skins:[{unified:"1f994",native:"🦔"}],version:5},bat:{id:"bat",name:"Bat",keywords:["animal","nature","blind","vampire"],skins:[{unified:"1f987",native:"🦇"}],version:3},bear:{id:"bear",name:"Bear",keywords:["animal","nature","wild"],skins:[{unified:"1f43b",native:"🐻"}],version:1},polar_bear:{id:"polar_bear",name:"Polar Bear",keywords:["animal","arctic"],skins:[{unified:"1f43b-200d-2744-fe0f",native:"🐻‍❄️"}],version:13},koala:{id:"koala",name:"Koala",keywords:["animal","nature"],skins:[{unified:"1f428",native:"🐨"}],version:1},panda_face:{id:"panda_face",name:"Panda",keywords:["face","animal","nature"],skins:[{unified:"1f43c",native:"🐼"}],version:1},sloth:{id:"sloth",name:"Sloth",keywords:["animal"],skins:[{unified:"1f9a5",native:"🦥"}],version:12},otter:{id:"otter",name:"Otter",keywords:["animal"],skins:[{unified:"1f9a6",native:"🦦"}],version:12},skunk:{id:"skunk",name:"Skunk",keywords:["animal"],skins:[{unified:"1f9a8",native:"🦨"}],version:12},kangaroo:{id:"kangaroo",name:"Kangaroo",keywords:["animal","nature","australia","joey","hop","marsupial"],skins:[{unified:"1f998",native:"🦘"}],version:11},badger:{id:"badger",name:"Badger",keywords:["animal","nature","honey"],skins:[{unified:"1f9a1",native:"🦡"}],version:11},feet:{id:"feet",name:"Paw Prints",keywords:["feet","animal","tracking","footprints","dog","cat","pet"],skins:[{unified:"1f43e",native:"🐾"}],version:1},turkey:{id:"turkey",name:"Turkey",keywords:["animal","bird"],skins:[{unified:"1f983",native:"🦃"}],version:1},chicken:{id:"chicken",name:"Chicken",keywords:["animal","cluck","nature","bird"],skins:[{unified:"1f414",native:"🐔"}],version:1},rooster:{id:"rooster",name:"Rooster",keywords:["animal","nature","chicken"],skins:[{unified:"1f413",native:"🐓"}],version:1},hatching_chick:{id:"hatching_chick",name:"Hatching Chick",keywords:["animal","chicken","egg","born","baby","bird"],skins:[{unified:"1f423",native:"🐣"}],version:1},baby_chick:{id:"baby_chick",name:"Baby Chick",keywords:["animal","chicken","bird"],skins:[{unified:"1f424",native:"🐤"}],version:1},hatched_chick:{id:"hatched_chick",name:"Front-Facing Baby Chick",keywords:["hatched","front","facing","animal","chicken","bird"],skins:[{unified:"1f425",native:"🐥"}],version:1},bird:{id:"bird",name:"Bird",keywords:["animal","nature","fly","tweet","spring"],skins:[{unified:"1f426",native:"🐦"}],version:1},penguin:{id:"penguin",name:"Penguin",keywords:["animal","nature"],skins:[{unified:"1f427",native:"🐧"}],version:1},dove_of_peace:{id:"dove_of_peace",name:"Dove",keywords:["of","peace","animal","bird"],skins:[{unified:"1f54a-fe0f",native:"🕊️"}],version:1},eagle:{id:"eagle",name:"Eagle",keywords:["animal","nature","bird"],skins:[{unified:"1f985",native:"🦅"}],version:3},duck:{id:"duck",name:"Duck",keywords:["animal","nature","bird","mallard"],skins:[{unified:"1f986",native:"🦆"}],version:3},swan:{id:"swan",name:"Swan",keywords:["animal","nature","bird"],skins:[{unified:"1f9a2",native:"🦢"}],version:11},owl:{id:"owl",name:"Owl",keywords:["animal","nature","bird","hoot"],skins:[{unified:"1f989",native:"🦉"}],version:3},dodo:{id:"dodo",name:"Dodo",keywords:["animal","bird"],skins:[{unified:"1f9a4",native:"🦤"}],version:13},feather:{id:"feather",name:"Feather",keywords:["bird","fly"],skins:[{unified:"1fab6",native:"🪶"}],version:13},flamingo:{id:"flamingo",name:"Flamingo",keywords:["animal"],skins:[{unified:"1f9a9",native:"🦩"}],version:12},peacock:{id:"peacock",name:"Peacock",keywords:["animal","nature","peahen","bird"],skins:[{unified:"1f99a",native:"🦚"}],version:11},parrot:{id:"parrot",name:"Parrot",keywords:["animal","nature","bird","pirate","talk"],skins:[{unified:"1f99c",native:"🦜"}],version:11},wing:{id:"wing",name:"Wing",keywords:["angel","birds","flying"],skins:[{unified:"1fabd",native:"🪽"}],version:15},black_bird:{id:"black_bird",name:"Black Bird",keywords:["crow"],skins:[{unified:"1f426-200d-2b1b",native:"🐦‍⬛"}],version:15},goose:{id:"goose",name:"Goose",keywords:["silly","jemima","goosebumps"],skins:[{unified:"1fabf",native:"🪿"}],version:15},frog:{id:"frog",name:"Frog",keywords:["animal","nature","croak","toad"],skins:[{unified:"1f438",native:"🐸"}],version:1},crocodile:{id:"crocodile",name:"Crocodile",keywords:["animal","nature","reptile","lizard","alligator"],skins:[{unified:"1f40a",native:"🐊"}],version:1},turtle:{id:"turtle",name:"Turtle",keywords:["animal","slow","nature","tortoise"],skins:[{unified:"1f422",native:"🐢"}],version:1},lizard:{id:"lizard",name:"Lizard",keywords:["animal","nature","reptile"],skins:[{unified:"1f98e",native:"🦎"}],version:3},snake:{id:"snake",name:"Snake",keywords:["animal","evil","nature","hiss","python"],skins:[{unified:"1f40d",native:"🐍"}],version:1},dragon_face:{id:"dragon_face",name:"Dragon Face",keywords:["animal","myth","nature","chinese","green"],skins:[{unified:"1f432",native:"🐲"}],version:1},dragon:{id:"dragon",name:"Dragon",keywords:["animal","myth","nature","chinese","green"],skins:[{unified:"1f409",native:"🐉"}],version:1},sauropod:{id:"sauropod",name:"Sauropod",keywords:["animal","nature","dinosaur","brachiosaurus","brontosaurus","diplodocus","extinct"],skins:[{unified:"1f995",native:"🦕"}],version:5},"t-rex":{id:"t-rex",name:"T-Rex",keywords:["t","rex","animal","nature","dinosaur","tyrannosaurus","extinct"],skins:[{unified:"1f996",native:"🦖"}],version:5},whale:{id:"whale",name:"Spouting Whale",keywords:["animal","nature","sea","ocean"],skins:[{unified:"1f433",native:"🐳"}],version:1},whale2:{id:"whale2",name:"Whale",keywords:["whale2","animal","nature","sea","ocean"],skins:[{unified:"1f40b",native:"🐋"}],version:1},dolphin:{id:"dolphin",name:"Dolphin",keywords:["flipper","animal","nature","fish","sea","ocean","fins","beach"],skins:[{unified:"1f42c",native:"🐬"}],version:1},seal:{id:"seal",name:"Seal",keywords:["animal","creature","sea"],skins:[{unified:"1f9ad",native:"🦭"}],version:13},fish:{id:"fish",name:"Fish",keywords:["animal","food","nature"],skins:[{unified:"1f41f",native:"🐟"}],version:1},tropical_fish:{id:"tropical_fish",name:"Tropical Fish",keywords:["animal","swim","ocean","beach","nemo"],skins:[{unified:"1f420",native:"🐠"}],version:1},blowfish:{id:"blowfish",name:"Blowfish",keywords:["animal","nature","food","sea","ocean"],skins:[{unified:"1f421",native:"🐡"}],version:1},shark:{id:"shark",name:"Shark",keywords:["animal","nature","fish","sea","ocean","jaws","fins","beach"],skins:[{unified:"1f988",native:"🦈"}],version:3},octopus:{id:"octopus",name:"Octopus",keywords:["animal","creature","ocean","sea","nature","beach"],skins:[{unified:"1f419",native:"🐙"}],version:1},shell:{id:"shell",name:"Spiral Shell",keywords:["nature","sea","beach"],skins:[{unified:"1f41a",native:"🐚"}],version:1},coral:{id:"coral",name:"Coral",keywords:["ocean","sea","reef"],skins:[{unified:"1fab8",native:"🪸"}],version:14},jellyfish:{id:"jellyfish",name:"Jellyfish",keywords:["sting","tentacles"],skins:[{unified:"1fabc",native:"🪼"}],version:15},snail:{id:"snail",name:"Snail",keywords:["slow","animal","shell"],skins:[{unified:"1f40c",native:"🐌"}],version:1},butterfly:{id:"butterfly",name:"Butterfly",keywords:["animal","insect","nature","caterpillar"],skins:[{unified:"1f98b",native:"🦋"}],version:3},bug:{id:"bug",name:"Bug",keywords:["animal","insect","nature","worm"],skins:[{unified:"1f41b",native:"🐛"}],version:1},ant:{id:"ant",name:"Ant",keywords:["animal","insect","nature","bug"],skins:[{unified:"1f41c",native:"🐜"}],version:1},bee:{id:"bee",name:"Honeybee",keywords:["bee","animal","insect","nature","bug","spring","honey"],skins:[{unified:"1f41d",native:"🐝"}],version:1},beetle:{id:"beetle",name:"Beetle",keywords:["insect"],skins:[{unified:"1fab2",native:"🪲"}],version:13},ladybug:{id:"ladybug",name:"Lady Beetle",keywords:["ladybug","animal","insect","nature"],skins:[{unified:"1f41e",native:"🐞"}],version:1},cricket:{id:"cricket",name:"Cricket",keywords:["animal","chirp"],skins:[{unified:"1f997",native:"🦗"}],version:5},cockroach:{id:"cockroach",name:"Cockroach",keywords:["insect","pests"],skins:[{unified:"1fab3",native:"🪳"}],version:13},spider:{id:"spider",name:"Spider",keywords:["animal","arachnid"],skins:[{unified:"1f577-fe0f",native:"🕷️"}],version:1},spider_web:{id:"spider_web",name:"Spider Web",keywords:["animal","insect","arachnid","silk"],skins:[{unified:"1f578-fe0f",native:"🕸️"}],version:1},scorpion:{id:"scorpion",name:"Scorpion",keywords:["animal","arachnid"],skins:[{unified:"1f982",native:"🦂"}],version:1},mosquito:{id:"mosquito",name:"Mosquito",keywords:["animal","nature","insect","malaria"],skins:[{unified:"1f99f",native:"🦟"}],version:11},fly:{id:"fly",name:"Fly",keywords:["insect"],skins:[{unified:"1fab0",native:"🪰"}],version:13},worm:{id:"worm",name:"Worm",keywords:["animal"],skins:[{unified:"1fab1",native:"🪱"}],version:13},microbe:{id:"microbe",name:"Microbe",keywords:["amoeba","bacteria","germs","virus","covid"],skins:[{unified:"1f9a0",native:"🦠"}],version:11},bouquet:{id:"bouquet",name:"Bouquet",keywords:["flowers","nature","spring"],skins:[{unified:"1f490",native:"💐"}],version:1},cherry_blossom:{id:"cherry_blossom",name:"Cherry Blossom",keywords:["nature","plant","spring","flower"],skins:[{unified:"1f338",native:"🌸"}],version:1},white_flower:{id:"white_flower",name:"White Flower",keywords:["japanese","spring"],skins:[{unified:"1f4ae",native:"💮"}],version:1},lotus:{id:"lotus",name:"Lotus",keywords:["flower","calm","meditation"],skins:[{unified:"1fab7",native:"🪷"}],version:14},rosette:{id:"rosette",name:"Rosette",keywords:["flower","decoration","military"],skins:[{unified:"1f3f5-fe0f",native:"🏵️"}],version:1},rose:{id:"rose",name:"Rose",keywords:["flowers","valentines","love","spring"],skins:[{unified:"1f339",native:"🌹"}],version:1},wilted_flower:{id:"wilted_flower",name:"Wilted Flower",keywords:["plant","nature","rose"],skins:[{unified:"1f940",native:"🥀"}],version:3},hibiscus:{id:"hibiscus",name:"Hibiscus",keywords:["plant","vegetable","flowers","beach"],skins:[{unified:"1f33a",native:"🌺"}],version:1},sunflower:{id:"sunflower",name:"Sunflower",keywords:["nature","plant","fall"],skins:[{unified:"1f33b",native:"🌻"}],version:1},blossom:{id:"blossom",name:"Blossom",keywords:["nature","flowers","yellow"],skins:[{unified:"1f33c",native:"🌼"}],version:1},tulip:{id:"tulip",name:"Tulip",keywords:["flowers","plant","nature","summer","spring"],skins:[{unified:"1f337",native:"🌷"}],version:1},hyacinth:{id:"hyacinth",name:"Hyacinth",keywords:["flower","lavender"],skins:[{unified:"1fabb",native:"🪻"}],version:15},seedling:{id:"seedling",name:"Seedling",keywords:["plant","nature","grass","lawn","spring"],skins:[{unified:"1f331",native:"🌱"}],version:1},potted_plant:{id:"potted_plant",name:"Potted Plant",keywords:["greenery","house"],skins:[{unified:"1fab4",native:"🪴"}],version:13},evergreen_tree:{id:"evergreen_tree",name:"Evergreen Tree",keywords:["plant","nature"],skins:[{unified:"1f332",native:"🌲"}],version:1},deciduous_tree:{id:"deciduous_tree",name:"Deciduous Tree",keywords:["plant","nature"],skins:[{unified:"1f333",native:"🌳"}],version:1},palm_tree:{id:"palm_tree",name:"Palm Tree",keywords:["plant","vegetable","nature","summer","beach","mojito","tropical"],skins:[{unified:"1f334",native:"🌴"}],version:1},cactus:{id:"cactus",name:"Cactus",keywords:["vegetable","plant","nature"],skins:[{unified:"1f335",native:"🌵"}],version:1},ear_of_rice:{id:"ear_of_rice",name:"Ear of Rice",keywords:["sheaf","nature","plant"],skins:[{unified:"1f33e",native:"🌾"}],version:1},herb:{id:"herb",name:"Herb",keywords:["vegetable","plant","medicine","weed","grass","lawn"],skins:[{unified:"1f33f",native:"🌿"}],version:1},shamrock:{id:"shamrock",name:"Shamrock",keywords:["vegetable","plant","nature","irish","clover"],skins:[{unified:"2618-fe0f",native:"☘️"}],version:1},four_leaf_clover:{id:"four_leaf_clover",name:"Four Leaf Clover",keywords:["vegetable","plant","nature","lucky","irish"],skins:[{unified:"1f340",native:"🍀"}],version:1},maple_leaf:{id:"maple_leaf",name:"Maple Leaf",keywords:["nature","plant","vegetable","ca","fall"],skins:[{unified:"1f341",native:"🍁"}],version:1},fallen_leaf:{id:"fallen_leaf",name:"Fallen Leaf",keywords:["nature","plant","vegetable","leaves"],skins:[{unified:"1f342",native:"🍂"}],version:1},leaves:{id:"leaves",name:"Leaf Fluttering in Wind",keywords:["leaves","nature","plant","tree","vegetable","grass","lawn","spring"],skins:[{unified:"1f343",native:"🍃"}],version:1},empty_nest:{id:"empty_nest",name:"Empty Nest",keywords:["bird"],skins:[{unified:"1fab9",native:"🪹"}],version:14},nest_with_eggs:{id:"nest_with_eggs",name:"Nest with Eggs",keywords:["bird"],skins:[{unified:"1faba",native:"🪺"}],version:14},mushroom:{id:"mushroom",name:"Mushroom",keywords:["plant","vegetable"],skins:[{unified:"1f344",native:"🍄"}],version:1},grapes:{id:"grapes",name:"Grapes",keywords:["fruit","food","wine"],skins:[{unified:"1f347",native:"🍇"}],version:1},melon:{id:"melon",name:"Melon",keywords:["fruit","nature","food"],skins:[{unified:"1f348",native:"🍈"}],version:1},watermelon:{id:"watermelon",name:"Watermelon",keywords:["fruit","food","picnic","summer"],skins:[{unified:"1f349",native:"🍉"}],version:1},tangerine:{id:"tangerine",name:"Tangerine",keywords:["food","fruit","nature","orange"],skins:[{unified:"1f34a",native:"🍊"}],version:1},lemon:{id:"lemon",name:"Lemon",keywords:["fruit","nature"],skins:[{unified:"1f34b",native:"🍋"}],version:1},banana:{id:"banana",name:"Banana",keywords:["fruit","food","monkey"],skins:[{unified:"1f34c",native:"🍌"}],version:1},pineapple:{id:"pineapple",name:"Pineapple",keywords:["fruit","nature","food"],skins:[{unified:"1f34d",native:"🍍"}],version:1},mango:{id:"mango",name:"Mango",keywords:["fruit","food","tropical"],skins:[{unified:"1f96d",native:"🥭"}],version:11},apple:{id:"apple",name:"Red Apple",keywords:["fruit","mac","school"],skins:[{unified:"1f34e",native:"🍎"}],version:1},green_apple:{id:"green_apple",name:"Green Apple",keywords:["fruit","nature"],skins:[{unified:"1f34f",native:"🍏"}],version:1},pear:{id:"pear",name:"Pear",keywords:["fruit","nature","food"],skins:[{unified:"1f350",native:"🍐"}],version:1},peach:{id:"peach",name:"Peach",keywords:["fruit","nature","food"],skins:[{unified:"1f351",native:"🍑"}],version:1},cherries:{id:"cherries",name:"Cherries",keywords:["food","fruit"],skins:[{unified:"1f352",native:"🍒"}],version:1},strawberry:{id:"strawberry",name:"Strawberry",keywords:["fruit","food","nature"],skins:[{unified:"1f353",native:"🍓"}],version:1},blueberries:{id:"blueberries",name:"Blueberries",keywords:["fruit"],skins:[{unified:"1fad0",native:"🫐"}],version:13},kiwifruit:{id:"kiwifruit",name:"Kiwifruit",keywords:["kiwi","fruit","food"],skins:[{unified:"1f95d",native:"🥝"}],version:3},tomato:{id:"tomato",name:"Tomato",keywords:["fruit","vegetable","nature","food"],skins:[{unified:"1f345",native:"🍅"}],version:1},olive:{id:"olive",name:"Olive",keywords:["fruit"],skins:[{unified:"1fad2",native:"🫒"}],version:13},coconut:{id:"coconut",name:"Coconut",keywords:["fruit","nature","food","palm"],skins:[{unified:"1f965",native:"🥥"}],version:5},avocado:{id:"avocado",name:"Avocado",keywords:["fruit","food"],skins:[{unified:"1f951",native:"🥑"}],version:3},eggplant:{id:"eggplant",name:"Eggplant",keywords:["vegetable","nature","food","aubergine"],skins:[{unified:"1f346",native:"🍆"}],version:1},potato:{id:"potato",name:"Potato",keywords:["food","tuber","vegatable","starch"],skins:[{unified:"1f954",native:"🥔"}],version:3},carrot:{id:"carrot",name:"Carrot",keywords:["vegetable","food","orange"],skins:[{unified:"1f955",native:"🥕"}],version:3},corn:{id:"corn",name:"Ear of Corn",keywords:["food","vegetable","plant"],skins:[{unified:"1f33d",native:"🌽"}],version:1},hot_pepper:{id:"hot_pepper",name:"Hot Pepper",keywords:["food","spicy","chilli","chili"],skins:[{unified:"1f336-fe0f",native:"🌶️"}],version:1},bell_pepper:{id:"bell_pepper",name:"Bell Pepper",keywords:["fruit","plant"],skins:[{unified:"1fad1",native:"🫑"}],version:13},cucumber:{id:"cucumber",name:"Cucumber",keywords:["fruit","food","pickle"],skins:[{unified:"1f952",native:"🥒"}],version:3},leafy_green:{id:"leafy_green",name:"Leafy Green",keywords:["food","vegetable","plant","bok","choy","cabbage","kale","lettuce"],skins:[{unified:"1f96c",native:"🥬"}],version:11},broccoli:{id:"broccoli",name:"Broccoli",keywords:["fruit","food","vegetable"],skins:[{unified:"1f966",native:"🥦"}],version:5},garlic:{id:"garlic",name:"Garlic",keywords:["food","spice","cook"],skins:[{unified:"1f9c4",native:"🧄"}],version:12},onion:{id:"onion",name:"Onion",keywords:["cook","food","spice"],skins:[{unified:"1f9c5",native:"🧅"}],version:12},peanuts:{id:"peanuts",name:"Peanuts",keywords:["food","nut"],skins:[{unified:"1f95c",native:"🥜"}],version:3},beans:{id:"beans",name:"Beans",keywords:["food"],skins:[{unified:"1fad8",native:"🫘"}],version:14},chestnut:{id:"chestnut",name:"Chestnut",keywords:["food","squirrel"],skins:[{unified:"1f330",native:"🌰"}],version:1},ginger_root:{id:"ginger_root",name:"Ginger Root",keywords:["spice","yellow","cooking","gingerbread"],skins:[{unified:"1fada",native:"🫚"}],version:15},pea_pod:{id:"pea_pod",name:"Pea Pod",keywords:["cozy","green"],skins:[{unified:"1fadb",native:"🫛"}],version:15},bread:{id:"bread",name:"Bread",keywords:["food","wheat","breakfast","toast"],skins:[{unified:"1f35e",native:"🍞"}],version:1},croissant:{id:"croissant",name:"Croissant",keywords:["food","bread","french"],skins:[{unified:"1f950",native:"🥐"}],version:3},baguette_bread:{id:"baguette_bread",name:"Baguette Bread",keywords:["food","french","france","bakery"],skins:[{unified:"1f956",native:"🥖"}],version:3},flatbread:{id:"flatbread",name:"Flatbread",keywords:["flour","food","bakery"],skins:[{unified:"1fad3",native:"🫓"}],version:13},pretzel:{id:"pretzel",name:"Pretzel",keywords:["food","bread","twisted","germany","bakery"],skins:[{unified:"1f968",native:"🥨"}],version:5},bagel:{id:"bagel",name:"Bagel",keywords:["food","bread","bakery","schmear","jewish"],skins:[{unified:"1f96f",native:"🥯"}],version:11},pancakes:{id:"pancakes",name:"Pancakes",keywords:["food","breakfast","flapjacks","hotcakes","brunch"],skins:[{unified:"1f95e",native:"🥞"}],version:3},waffle:{id:"waffle",name:"Waffle",keywords:["food","breakfast","brunch"],skins:[{unified:"1f9c7",native:"🧇"}],version:12},cheese_wedge:{id:"cheese_wedge",name:"Cheese Wedge",keywords:["food","chadder","swiss"],skins:[{unified:"1f9c0",native:"🧀"}],version:1},meat_on_bone:{id:"meat_on_bone",name:"Meat on Bone",keywords:["good","food","drumstick"],skins:[{unified:"1f356",native:"🍖"}],version:1},poultry_leg:{id:"poultry_leg",name:"Poultry Leg",keywords:["food","meat","drumstick","bird","chicken","turkey"],skins:[{unified:"1f357",native:"🍗"}],version:1},cut_of_meat:{id:"cut_of_meat",name:"Cut of Meat",keywords:["food","cow","chop","lambchop","porkchop"],skins:[{unified:"1f969",native:"🥩"}],version:5},bacon:{id:"bacon",name:"Bacon",keywords:["food","breakfast","pork","pig","meat","brunch"],skins:[{unified:"1f953",native:"🥓"}],version:3},hamburger:{id:"hamburger",name:"Hamburger",keywords:["meat","fast","food","beef","cheeseburger","mcdonalds","burger","king"],skins:[{unified:"1f354",native:"🍔"}],version:1},fries:{id:"fries",name:"French Fries",keywords:["chips","snack","fast","food","potato"],skins:[{unified:"1f35f",native:"🍟"}],version:1},pizza:{id:"pizza",name:"Pizza",keywords:["food","party","italy"],skins:[{unified:"1f355",native:"🍕"}],version:1},hotdog:{id:"hotdog",name:"Hot Dog",keywords:["hotdog","food","frankfurter","america"],skins:[{unified:"1f32d",native:"🌭"}],version:1},sandwich:{id:"sandwich",name:"Sandwich",keywords:["food","lunch","bread","toast","bakery"],skins:[{unified:"1f96a",native:"🥪"}],version:5},taco:{id:"taco",name:"Taco",keywords:["food","mexican"],skins:[{unified:"1f32e",native:"🌮"}],version:1},burrito:{id:"burrito",name:"Burrito",keywords:["food","mexican"],skins:[{unified:"1f32f",native:"🌯"}],version:1},tamale:{id:"tamale",name:"Tamale",keywords:["food","masa"],skins:[{unified:"1fad4",native:"🫔"}],version:13},stuffed_flatbread:{id:"stuffed_flatbread",name:"Stuffed Flatbread",keywords:["food","gyro","mediterranean"],skins:[{unified:"1f959",native:"🥙"}],version:3},falafel:{id:"falafel",name:"Falafel",keywords:["food","mediterranean"],skins:[{unified:"1f9c6",native:"🧆"}],version:12},egg:{id:"egg",name:"Egg",keywords:["food","chicken","breakfast"],skins:[{unified:"1f95a",native:"🥚"}],version:3},fried_egg:{id:"fried_egg",name:"Cooking",keywords:["fried","egg","food","breakfast","kitchen","skillet"],skins:[{unified:"1f373",native:"🍳"}],version:1},shallow_pan_of_food:{id:"shallow_pan_of_food",name:"Shallow Pan of Food",keywords:["cooking","casserole","paella","skillet"],skins:[{unified:"1f958",native:"🥘"}],version:3},stew:{id:"stew",name:"Pot of Food",keywords:["stew","meat","soup","hot"],skins:[{unified:"1f372",native:"🍲"}],version:1},fondue:{id:"fondue",name:"Fondue",keywords:["cheese","pot","food"],skins:[{unified:"1fad5",native:"🫕"}],version:13},bowl_with_spoon:{id:"bowl_with_spoon",name:"Bowl with Spoon",keywords:["food","breakfast","cereal","oatmeal","porridge"],skins:[{unified:"1f963",native:"🥣"}],version:5},green_salad:{id:"green_salad",name:"Green Salad",keywords:["food","healthy","lettuce","vegetable"],skins:[{unified:"1f957",native:"🥗"}],version:3},popcorn:{id:"popcorn",name:"Popcorn",keywords:["food","movie","theater","films","snack","drama"],skins:[{unified:"1f37f",native:"🍿"}],version:1},butter:{id:"butter",name:"Butter",keywords:["food","cook"],skins:[{unified:"1f9c8",native:"🧈"}],version:12},salt:{id:"salt",name:"Salt",keywords:["condiment","shaker"],skins:[{unified:"1f9c2",native:"🧂"}],version:11},canned_food:{id:"canned_food",name:"Canned Food",keywords:["soup","tomatoes"],skins:[{unified:"1f96b",native:"🥫"}],version:5},bento:{id:"bento",name:"Bento Box",keywords:["food","japanese","lunch"],skins:[{unified:"1f371",native:"🍱"}],version:1},rice_cracker:{id:"rice_cracker",name:"Rice Cracker",keywords:["food","japanese","snack"],skins:[{unified:"1f358",native:"🍘"}],version:1},rice_ball:{id:"rice_ball",name:"Rice Ball",keywords:["food","japanese"],skins:[{unified:"1f359",native:"🍙"}],version:1},rice:{id:"rice",name:"Cooked Rice",keywords:["food","asian"],skins:[{unified:"1f35a",native:"🍚"}],version:1},curry:{id:"curry",name:"Curry Rice",keywords:["food","spicy","hot","indian"],skins:[{unified:"1f35b",native:"🍛"}],version:1},ramen:{id:"ramen",name:"Steaming Bowl",keywords:["ramen","food","japanese","noodle","chopsticks"],skins:[{unified:"1f35c",native:"🍜"}],version:1},spaghetti:{id:"spaghetti",name:"Spaghetti",keywords:["food","italian","pasta","noodle"],skins:[{unified:"1f35d",native:"🍝"}],version:1},sweet_potato:{id:"sweet_potato",name:"Roasted Sweet Potato",keywords:["food","nature","plant"],skins:[{unified:"1f360",native:"🍠"}],version:1},oden:{id:"oden",name:"Oden",keywords:["food","japanese"],skins:[{unified:"1f362",native:"🍢"}],version:1},sushi:{id:"sushi",name:"Sushi",keywords:["food","fish","japanese","rice"],skins:[{unified:"1f363",native:"🍣"}],version:1},fried_shrimp:{id:"fried_shrimp",name:"Fried Shrimp",keywords:["food","animal","appetizer","summer"],skins:[{unified:"1f364",native:"🍤"}],version:1},fish_cake:{id:"fish_cake",name:"Fish Cake with Swirl",keywords:["food","japan","sea","beach","narutomaki","pink","kamaboko","surimi","ramen"],skins:[{unified:"1f365",native:"🍥"}],version:1},moon_cake:{id:"moon_cake",name:"Moon Cake",keywords:["food","autumn","dessert"],skins:[{unified:"1f96e",native:"🥮"}],version:11},dango:{id:"dango",name:"Dango",keywords:["food","dessert","sweet","japanese","barbecue","meat"],skins:[{unified:"1f361",native:"🍡"}],version:1},dumpling:{id:"dumpling",name:"Dumpling",keywords:["food","empanada","pierogi","potsticker","gyoza"],skins:[{unified:"1f95f",native:"🥟"}],version:5},fortune_cookie:{id:"fortune_cookie",name:"Fortune Cookie",keywords:["food","prophecy","dessert"],skins:[{unified:"1f960",native:"🥠"}],version:5},takeout_box:{id:"takeout_box",name:"Takeout Box",keywords:["food","leftovers"],skins:[{unified:"1f961",native:"🥡"}],version:5},crab:{id:"crab",name:"Crab",keywords:["animal","crustacean"],skins:[{unified:"1f980",native:"🦀"}],version:1},lobster:{id:"lobster",name:"Lobster",keywords:["animal","nature","bisque","claws","seafood"],skins:[{unified:"1f99e",native:"🦞"}],version:11},shrimp:{id:"shrimp",name:"Shrimp",keywords:["animal","ocean","nature","seafood"],skins:[{unified:"1f990",native:"🦐"}],version:3},squid:{id:"squid",name:"Squid",keywords:["animal","nature","ocean","sea"],skins:[{unified:"1f991",native:"🦑"}],version:3},oyster:{id:"oyster",name:"Oyster",keywords:["food"],skins:[{unified:"1f9aa",native:"🦪"}],version:12},icecream:{id:"icecream",name:"Soft Ice Cream",keywords:["icecream","food","hot","dessert","summer"],skins:[{unified:"1f366",native:"🍦"}],version:1},shaved_ice:{id:"shaved_ice",name:"Shaved Ice",keywords:["hot","dessert","summer"],skins:[{unified:"1f367",native:"🍧"}],version:1},ice_cream:{id:"ice_cream",name:"Ice Cream",keywords:["food","hot","dessert"],skins:[{unified:"1f368",native:"🍨"}],version:1},doughnut:{id:"doughnut",name:"Doughnut",keywords:["food","dessert","snack","sweet","donut"],skins:[{unified:"1f369",native:"🍩"}],version:1},cookie:{id:"cookie",name:"Cookie",keywords:["food","snack","oreo","chocolate","sweet","dessert"],skins:[{unified:"1f36a",native:"🍪"}],version:1},birthday:{id:"birthday",name:"Birthday Cake",keywords:["food","dessert"],skins:[{unified:"1f382",native:"🎂"}],version:1},cake:{id:"cake",name:"Shortcake",keywords:["cake","food","dessert"],skins:[{unified:"1f370",native:"🍰"}],version:1},cupcake:{id:"cupcake",name:"Cupcake",keywords:["food","dessert","bakery","sweet"],skins:[{unified:"1f9c1",native:"🧁"}],version:11},pie:{id:"pie",name:"Pie",keywords:["food","dessert","pastry"],skins:[{unified:"1f967",native:"🥧"}],version:5},chocolate_bar:{id:"chocolate_bar",name:"Chocolate Bar",keywords:["food","snack","dessert","sweet"],skins:[{unified:"1f36b",native:"🍫"}],version:1},candy:{id:"candy",name:"Candy",keywords:["snack","dessert","sweet","lolly"],skins:[{unified:"1f36c",native:"🍬"}],version:1},lollipop:{id:"lollipop",name:"Lollipop",keywords:["food","snack","candy","sweet"],skins:[{unified:"1f36d",native:"🍭"}],version:1},custard:{id:"custard",name:"Custard",keywords:["dessert","food"],skins:[{unified:"1f36e",native:"🍮"}],version:1},honey_pot:{id:"honey_pot",name:"Honey Pot",keywords:["bees","sweet","kitchen"],skins:[{unified:"1f36f",native:"🍯"}],version:1},baby_bottle:{id:"baby_bottle",name:"Baby Bottle",keywords:["food","container","milk"],skins:[{unified:"1f37c",native:"🍼"}],version:1},glass_of_milk:{id:"glass_of_milk",name:"Glass of Milk",keywords:["beverage","drink","cow"],skins:[{unified:"1f95b",native:"🥛"}],version:3},coffee:{id:"coffee",name:"Hot Beverage",keywords:["coffee","caffeine","latte","espresso","mug"],skins:[{unified:"2615",native:"☕"}],version:1},teapot:{id:"teapot",name:"Teapot",keywords:["drink","hot"],skins:[{unified:"1fad6",native:"🫖"}],version:13},tea:{id:"tea",name:"Teacup Without Handle",keywords:["tea","drink","bowl","breakfast","green","british"],skins:[{unified:"1f375",native:"🍵"}],version:1},sake:{id:"sake",name:"Sake",keywords:["wine","drink","drunk","beverage","japanese","alcohol","booze"],skins:[{unified:"1f376",native:"🍶"}],version:1},champagne:{id:"champagne",name:"Bottle with Popping Cork",keywords:["champagne","drink","wine","celebration"],skins:[{unified:"1f37e",native:"🍾"}],version:1},wine_glass:{id:"wine_glass",name:"Wine Glass",keywords:["drink","beverage","drunk","alcohol","booze"],skins:[{unified:"1f377",native:"🍷"}],version:1},cocktail:{id:"cocktail",name:"Cocktail Glass",keywords:["drink","drunk","alcohol","beverage","booze","mojito"],skins:[{unified:"1f378",native:"🍸"}],version:1},tropical_drink:{id:"tropical_drink",name:"Tropical Drink",keywords:["beverage","cocktail","summer","beach","alcohol","booze","mojito"],skins:[{unified:"1f379",native:"🍹"}],version:1},beer:{id:"beer",name:"Beer Mug",keywords:["relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],skins:[{unified:"1f37a",native:"🍺"}],version:1},beers:{id:"beers",name:"Clinking Beer Mugs",keywords:["beers","relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],skins:[{unified:"1f37b",native:"🍻"}],version:1},clinking_glasses:{id:"clinking_glasses",name:"Clinking Glasses",keywords:["beverage","drink","party","alcohol","celebrate","cheers","wine","champagne","toast"],skins:[{unified:"1f942",native:"🥂"}],version:3},tumbler_glass:{id:"tumbler_glass",name:"Tumbler Glass",keywords:["drink","beverage","drunk","alcohol","liquor","booze","bourbon","scotch","whisky","shot"],skins:[{unified:"1f943",native:"🥃"}],version:3},pouring_liquid:{id:"pouring_liquid",name:"Pouring Liquid",keywords:["cup","water"],skins:[{unified:"1fad7",native:"🫗"}],version:14},cup_with_straw:{id:"cup_with_straw",name:"Cup with Straw",keywords:["drink","soda"],skins:[{unified:"1f964",native:"🥤"}],version:5},bubble_tea:{id:"bubble_tea",name:"Bubble Tea",keywords:["taiwan","boba","milk","straw"],skins:[{unified:"1f9cb",native:"🧋"}],version:13},beverage_box:{id:"beverage_box",name:"Beverage Box",keywords:["drink"],skins:[{unified:"1f9c3",native:"🧃"}],version:12},mate_drink:{id:"mate_drink",name:"Mate",keywords:["drink","tea","beverage"],skins:[{unified:"1f9c9",native:"🧉"}],version:12},ice_cube:{id:"ice_cube",name:"Ice",keywords:["cube","water","cold"],skins:[{unified:"1f9ca",native:"🧊"}],version:12},chopsticks:{id:"chopsticks",name:"Chopsticks",keywords:["food"],skins:[{unified:"1f962",native:"🥢"}],version:5},knife_fork_plate:{id:"knife_fork_plate",name:"Fork and Knife with Plate",keywords:["food","eat","meal","lunch","dinner","restaurant"],skins:[{unified:"1f37d-fe0f",native:"🍽️"}],version:1},fork_and_knife:{id:"fork_and_knife",name:"Fork and Knife",keywords:["cutlery","kitchen"],skins:[{unified:"1f374",native:"🍴"}],version:1},spoon:{id:"spoon",name:"Spoon",keywords:["cutlery","kitchen","tableware"],skins:[{unified:"1f944",native:"🥄"}],version:3},hocho:{id:"hocho",name:"Hocho",keywords:["knife","kitchen","blade","cutlery","weapon"],skins:[{unified:"1f52a",native:"🔪"}],version:1},jar:{id:"jar",name:"Jar",keywords:["container","sauce"],skins:[{unified:"1fad9",native:"🫙"}],version:14},amphora:{id:"amphora",name:"Amphora",keywords:["vase","jar"],skins:[{unified:"1f3fa",native:"🏺"}],version:1},earth_africa:{id:"earth_africa",name:"Earth Globe Europe-Africa",keywords:["africa","showing","europe","world","international"],skins:[{unified:"1f30d",native:"🌍"}],version:1},earth_americas:{id:"earth_americas",name:"Earth Globe Americas",keywords:["showing","world","USA","international"],skins:[{unified:"1f30e",native:"🌎"}],version:1},earth_asia:{id:"earth_asia",name:"Earth Globe Asia-Australia",keywords:["asia","showing","australia","world","east","international"],skins:[{unified:"1f30f",native:"🌏"}],version:1},globe_with_meridians:{id:"globe_with_meridians",name:"Globe with Meridians",keywords:["earth","international","world","internet","interweb","i18n"],skins:[{unified:"1f310",native:"🌐"}],version:1},world_map:{id:"world_map",name:"World Map",keywords:["location","direction"],skins:[{unified:"1f5fa-fe0f",native:"🗺️"}],version:1},japan:{id:"japan",name:"Map of Japan",keywords:["nation","country","japanese","asia"],skins:[{unified:"1f5fe",native:"🗾"}],version:1},compass:{id:"compass",name:"Compass",keywords:["magnetic","navigation","orienteering"],skins:[{unified:"1f9ed",native:"🧭"}],version:11},snow_capped_mountain:{id:"snow_capped_mountain",name:"Snow-Capped Mountain",keywords:["snow","capped","photo","nature","environment","winter","cold"],skins:[{unified:"1f3d4-fe0f",native:"🏔️"}],version:1},mountain:{id:"mountain",name:"Mountain",keywords:["photo","nature","environment"],skins:[{unified:"26f0-fe0f",native:"⛰️"}],version:1},volcano:{id:"volcano",name:"Volcano",keywords:["photo","nature","disaster"],skins:[{unified:"1f30b",native:"🌋"}],version:1},mount_fuji:{id:"mount_fuji",name:"Mount Fuji",keywords:["photo","mountain","nature","japanese"],skins:[{unified:"1f5fb",native:"🗻"}],version:1},camping:{id:"camping",name:"Camping",keywords:["photo","outdoors","tent"],skins:[{unified:"1f3d5-fe0f",native:"🏕️"}],version:1},beach_with_umbrella:{id:"beach_with_umbrella",name:"Beach with Umbrella",keywords:["weather","summer","sunny","sand","mojito"],skins:[{unified:"1f3d6-fe0f",native:"🏖️"}],version:1},desert:{id:"desert",name:"Desert",keywords:["photo","warm","saharah"],skins:[{unified:"1f3dc-fe0f",native:"🏜️"}],version:1},desert_island:{id:"desert_island",name:"Desert Island",keywords:["photo","tropical","mojito"],skins:[{unified:"1f3dd-fe0f",native:"🏝️"}],version:1},national_park:{id:"national_park",name:"National Park",keywords:["photo","environment","nature"],skins:[{unified:"1f3de-fe0f",native:"🏞️"}],version:1},stadium:{id:"stadium",name:"Stadium",keywords:["photo","place","sports","concert","venue"],skins:[{unified:"1f3df-fe0f",native:"🏟️"}],version:1},classical_building:{id:"classical_building",name:"Classical Building",keywords:["art","culture","history"],skins:[{unified:"1f3db-fe0f",native:"🏛️"}],version:1},building_construction:{id:"building_construction",name:"Building Construction",keywords:["wip","working","progress"],skins:[{unified:"1f3d7-fe0f",native:"🏗️"}],version:1},bricks:{id:"bricks",name:"Brick",keywords:["bricks"],skins:[{unified:"1f9f1",native:"🧱"}],version:11},rock:{id:"rock",name:"Rock",keywords:["stone"],skins:[{unified:"1faa8",native:"🪨"}],version:13},wood:{id:"wood",name:"Wood",keywords:["nature","timber","trunk"],skins:[{unified:"1fab5",native:"🪵"}],version:13},hut:{id:"hut",name:"Hut",keywords:["house","structure"],skins:[{unified:"1f6d6",native:"🛖"}],version:13},house_buildings:{id:"house_buildings",name:"Houses",keywords:["house","buildings","photo"],skins:[{unified:"1f3d8-fe0f",native:"🏘️"}],version:1},derelict_house_building:{id:"derelict_house_building",name:"Derelict House",keywords:["building","abandon","evict","broken"],skins:[{unified:"1f3da-fe0f",native:"🏚️"}],version:1},house:{id:"house",name:"House",keywords:["building","home"],skins:[{unified:"1f3e0",native:"🏠"}],version:1},house_with_garden:{id:"house_with_garden",name:"House with Garden",keywords:["home","plant","nature"],skins:[{unified:"1f3e1",native:"🏡"}],version:1},office:{id:"office",name:"Office Building",keywords:["bureau","work"],skins:[{unified:"1f3e2",native:"🏢"}],version:1},post_office:{id:"post_office",name:"Japanese Post Office",keywords:["building","envelope","communication"],skins:[{unified:"1f3e3",native:"🏣"}],version:1},european_post_office:{id:"european_post_office",name:"Post Office",keywords:["european","building","email"],skins:[{unified:"1f3e4",native:"🏤"}],version:1},hospital:{id:"hospital",name:"Hospital",keywords:["building","health","surgery","doctor"],skins:[{unified:"1f3e5",native:"🏥"}],version:1},bank:{id:"bank",name:"Bank",keywords:["building","money","sales","cash","business","enterprise"],skins:[{unified:"1f3e6",native:"🏦"}],version:1},hotel:{id:"hotel",name:"Hotel",keywords:["building","accomodation","checkin"],skins:[{unified:"1f3e8",native:"🏨"}],version:1},love_hotel:{id:"love_hotel",name:"Love Hotel",keywords:["like","affection","dating"],skins:[{unified:"1f3e9",native:"🏩"}],version:1},convenience_store:{id:"convenience_store",name:"Convenience Store",keywords:["building","shopping","groceries"],skins:[{unified:"1f3ea",native:"🏪"}],version:1},school:{id:"school",name:"School",keywords:["building","student","education","learn","teach"],skins:[{unified:"1f3eb",native:"🏫"}],version:1},department_store:{id:"department_store",name:"Department Store",keywords:["building","shopping","mall"],skins:[{unified:"1f3ec",native:"🏬"}],version:1},factory:{id:"factory",name:"Factory",keywords:["building","industry","pollution","smoke"],skins:[{unified:"1f3ed",native:"🏭"}],version:1},japanese_castle:{id:"japanese_castle",name:"Japanese Castle",keywords:["photo","building"],skins:[{unified:"1f3ef",native:"🏯"}],version:1},european_castle:{id:"european_castle",name:"Castle",keywords:["european","building","royalty","history"],skins:[{unified:"1f3f0",native:"🏰"}],version:1},wedding:{id:"wedding",name:"Wedding",keywords:["love","like","affection","couple","marriage","bride","groom"],skins:[{unified:"1f492",native:"💒"}],version:1},tokyo_tower:{id:"tokyo_tower",name:"Tokyo Tower",keywords:["photo","japanese"],skins:[{unified:"1f5fc",native:"🗼"}],version:1},statue_of_liberty:{id:"statue_of_liberty",name:"Statue of Liberty",keywords:["american","newyork"],skins:[{unified:"1f5fd",native:"🗽"}],version:1},church:{id:"church",name:"Church",keywords:["building","religion","christ"],skins:[{unified:"26ea",native:"⛪"}],version:1},mosque:{id:"mosque",name:"Mosque",keywords:["islam","worship","minaret"],skins:[{unified:"1f54c",native:"🕌"}],version:1},hindu_temple:{id:"hindu_temple",name:"Hindu Temple",keywords:["religion"],skins:[{unified:"1f6d5",native:"🛕"}],version:12},synagogue:{id:"synagogue",name:"Synagogue",keywords:["judaism","worship","temple","jewish"],skins:[{unified:"1f54d",native:"🕍"}],version:1},shinto_shrine:{id:"shinto_shrine",name:"Shinto Shrine",keywords:["temple","japan","kyoto"],skins:[{unified:"26e9-fe0f",native:"⛩️"}],version:1},kaaba:{id:"kaaba",name:"Kaaba",keywords:["mecca","mosque","islam"],skins:[{unified:"1f54b",native:"🕋"}],version:1},fountain:{id:"fountain",name:"Fountain",keywords:["photo","summer","water","fresh"],skins:[{unified:"26f2",native:"⛲"}],version:1},tent:{id:"tent",name:"Tent",keywords:["photo","camping","outdoors"],skins:[{unified:"26fa",native:"⛺"}],version:1},foggy:{id:"foggy",name:"Foggy",keywords:["photo","mountain"],skins:[{unified:"1f301",native:"🌁"}],version:1},night_with_stars:{id:"night_with_stars",name:"Night with Stars",keywords:["evening","city","downtown"],skins:[{unified:"1f303",native:"🌃"}],version:1},cityscape:{id:"cityscape",name:"Cityscape",keywords:["photo","night","life","urban"],skins:[{unified:"1f3d9-fe0f",native:"🏙️"}],version:1},sunrise_over_mountains:{id:"sunrise_over_mountains",name:"Sunrise over Mountains",keywords:["view","vacation","photo"],skins:[{unified:"1f304",native:"🌄"}],version:1},sunrise:{id:"sunrise",name:"Sunrise",keywords:["morning","view","vacation","photo"],skins:[{unified:"1f305",native:"🌅"}],version:1},city_sunset:{id:"city_sunset",name:"Cityscape at Dusk",keywords:["city","sunset","photo","evening","sky","buildings"],skins:[{unified:"1f306",native:"🌆"}],version:1},city_sunrise:{id:"city_sunrise",name:"Sunset",keywords:["city","sunrise","photo","good","morning","dawn"],skins:[{unified:"1f307",native:"🌇"}],version:1},bridge_at_night:{id:"bridge_at_night",name:"Bridge at Night",keywords:["photo","sanfrancisco"],skins:[{unified:"1f309",native:"🌉"}],version:1},hotsprings:{id:"hotsprings",name:"Hot Springs",keywords:["hotsprings","bath","warm","relax"],skins:[{unified:"2668-fe0f",native:"♨️"}],version:1},carousel_horse:{id:"carousel_horse",name:"Carousel Horse",keywords:["photo","carnival"],skins:[{unified:"1f3a0",native:"🎠"}],version:1},playground_slide:{id:"playground_slide",name:"Playground Slide",keywords:["fun","park"],skins:[{unified:"1f6dd",native:"🛝"}],version:14},ferris_wheel:{id:"ferris_wheel",name:"Ferris Wheel",keywords:["photo","carnival","londoneye"],skins:[{unified:"1f3a1",native:"🎡"}],version:1},roller_coaster:{id:"roller_coaster",name:"Roller Coaster",keywords:["carnival","playground","photo","fun"],skins:[{unified:"1f3a2",native:"🎢"}],version:1},barber:{id:"barber",name:"Barber Pole",keywords:["hair","salon","style"],skins:[{unified:"1f488",native:"💈"}],version:1},circus_tent:{id:"circus_tent",name:"Circus Tent",keywords:["festival","carnival","party"],skins:[{unified:"1f3aa",native:"🎪"}],version:1},steam_locomotive:{id:"steam_locomotive",name:"Locomotive",keywords:["steam","transportation","vehicle","train"],skins:[{unified:"1f682",native:"🚂"}],version:1},railway_car:{id:"railway_car",name:"Railway Car",keywords:["transportation","vehicle"],skins:[{unified:"1f683",native:"🚃"}],version:1},bullettrain_side:{id:"bullettrain_side",name:"High-Speed Train",keywords:["bullettrain","side","high","speed","transportation","vehicle"],skins:[{unified:"1f684",native:"🚄"}],version:1},bullettrain_front:{id:"bullettrain_front",name:"Bullet Train",keywords:["bullettrain","front","transportation","vehicle","speed","fast","public","travel"],skins:[{unified:"1f685",native:"🚅"}],version:1},train2:{id:"train2",name:"Train",keywords:["train2","transportation","vehicle"],skins:[{unified:"1f686",native:"🚆"}],version:1},metro:{id:"metro",name:"Metro",keywords:["transportation","blue","square","mrt","underground","tube"],skins:[{unified:"1f687",native:"🚇"}],version:1},light_rail:{id:"light_rail",name:"Light Rail",keywords:["transportation","vehicle"],skins:[{unified:"1f688",native:"🚈"}],version:1},station:{id:"station",name:"Station",keywords:["transportation","vehicle","public"],skins:[{unified:"1f689",native:"🚉"}],version:1},tram:{id:"tram",name:"Tram",keywords:["transportation","vehicle"],skins:[{unified:"1f68a",native:"🚊"}],version:1},monorail:{id:"monorail",name:"Monorail",keywords:["transportation","vehicle"],skins:[{unified:"1f69d",native:"🚝"}],version:1},mountain_railway:{id:"mountain_railway",name:"Mountain Railway",keywords:["transportation","vehicle"],skins:[{unified:"1f69e",native:"🚞"}],version:1},train:{id:"train",name:"Tram Car",keywords:["train","transportation","vehicle","carriage","public","travel"],skins:[{unified:"1f68b",native:"🚋"}],version:1},bus:{id:"bus",name:"Bus",keywords:["car","vehicle","transportation"],skins:[{unified:"1f68c",native:"🚌"}],version:1},oncoming_bus:{id:"oncoming_bus",name:"Oncoming Bus",keywords:["vehicle","transportation"],skins:[{unified:"1f68d",native:"🚍"}],version:1},trolleybus:{id:"trolleybus",name:"Trolleybus",keywords:["bart","transportation","vehicle"],skins:[{unified:"1f68e",native:"🚎"}],version:1},minibus:{id:"minibus",name:"Minibus",keywords:["vehicle","car","transportation"],skins:[{unified:"1f690",native:"🚐"}],version:1},ambulance:{id:"ambulance",name:"Ambulance",keywords:["health","911","hospital"],skins:[{unified:"1f691",native:"🚑"}],version:1},fire_engine:{id:"fire_engine",name:"Fire Engine",keywords:["transportation","cars","vehicle"],skins:[{unified:"1f692",native:"🚒"}],version:1},police_car:{id:"police_car",name:"Police Car",keywords:["vehicle","cars","transportation","law","legal","enforcement"],skins:[{unified:"1f693",native:"🚓"}],version:1},oncoming_police_car:{id:"oncoming_police_car",name:"Oncoming Police Car",keywords:["vehicle","law","legal","enforcement","911"],skins:[{unified:"1f694",native:"🚔"}],version:1},taxi:{id:"taxi",name:"Taxi",keywords:["uber","vehicle","cars","transportation"],skins:[{unified:"1f695",native:"🚕"}],version:1},oncoming_taxi:{id:"oncoming_taxi",name:"Oncoming Taxi",keywords:["vehicle","cars","uber"],skins:[{unified:"1f696",native:"🚖"}],version:1},car:{id:"car",name:"Automobile",keywords:["car","red","transportation","vehicle"],skins:[{unified:"1f697",native:"🚗"}],version:1},oncoming_automobile:{id:"oncoming_automobile",name:"Oncoming Automobile",keywords:["car","vehicle","transportation"],skins:[{unified:"1f698",native:"🚘"}],version:1},blue_car:{id:"blue_car",name:"Recreational Vehicle",keywords:["blue","car","sport","utility","transportation"],skins:[{unified:"1f699",native:"🚙"}],version:1},pickup_truck:{id:"pickup_truck",name:"Pickup Truck",keywords:["car","transportation"],skins:[{unified:"1f6fb",native:"🛻"}],version:13},truck:{id:"truck",name:"Delivery Truck",keywords:["cars","transportation"],skins:[{unified:"1f69a",native:"🚚"}],version:1},articulated_lorry:{id:"articulated_lorry",name:"Articulated Lorry",keywords:["vehicle","cars","transportation","express"],skins:[{unified:"1f69b",native:"🚛"}],version:1},tractor:{id:"tractor",name:"Tractor",keywords:["vehicle","car","farming","agriculture"],skins:[{unified:"1f69c",native:"🚜"}],version:1},racing_car:{id:"racing_car",name:"Racing Car",keywords:["sports","race","fast","formula","f1"],skins:[{unified:"1f3ce-fe0f",native:"🏎️"}],version:1},racing_motorcycle:{id:"racing_motorcycle",name:"Motorcycle",keywords:["racing","race","sports","fast"],skins:[{unified:"1f3cd-fe0f",native:"🏍️"}],version:1},motor_scooter:{id:"motor_scooter",name:"Motor Scooter",keywords:["vehicle","vespa","sasha"],skins:[{unified:"1f6f5",native:"🛵"}],version:3},manual_wheelchair:{id:"manual_wheelchair",name:"Manual Wheelchair",keywords:["accessibility"],skins:[{unified:"1f9bd",native:"🦽"}],version:12},motorized_wheelchair:{id:"motorized_wheelchair",name:"Motorized Wheelchair",keywords:["accessibility"],skins:[{unified:"1f9bc",native:"🦼"}],version:12},auto_rickshaw:{id:"auto_rickshaw",name:"Auto Rickshaw",keywords:["move","transportation"],skins:[{unified:"1f6fa",native:"🛺"}],version:12},bike:{id:"bike",name:"Bicycle",keywords:["bike","sports","exercise","hipster"],skins:[{unified:"1f6b2",native:"🚲"}],version:1},scooter:{id:"scooter",name:"Scooter",keywords:["kick","vehicle","razor"],skins:[{unified:"1f6f4",native:"🛴"}],version:3},skateboard:{id:"skateboard",name:"Skateboard",keywords:["board"],skins:[{unified:"1f6f9",native:"🛹"}],version:11},roller_skate:{id:"roller_skate",name:"Roller Skate",keywords:["footwear","sports"],skins:[{unified:"1f6fc",native:"🛼"}],version:13},busstop:{id:"busstop",name:"Bus Stop",keywords:["busstop","transportation","wait"],skins:[{unified:"1f68f",native:"🚏"}],version:1},motorway:{id:"motorway",name:"Motorway",keywords:["road","cupertino","interstate","highway"],skins:[{unified:"1f6e3-fe0f",native:"🛣️"}],version:1},railway_track:{id:"railway_track",name:"Railway Track",keywords:["train","transportation"],skins:[{unified:"1f6e4-fe0f",native:"🛤️"}],version:1},oil_drum:{id:"oil_drum",name:"Oil Drum",keywords:["barrell"],skins:[{unified:"1f6e2-fe0f",native:"🛢️"}],version:1},fuelpump:{id:"fuelpump",name:"Fuel Pump",keywords:["fuelpump","gas","station","petroleum"],skins:[{unified:"26fd",native:"⛽"}],version:1},wheel:{id:"wheel",name:"Wheel",keywords:["car","transport"],skins:[{unified:"1f6de",native:"🛞"}],version:14},rotating_light:{id:"rotating_light",name:"Police Car Light",keywords:["rotating","ambulance","911","emergency","alert","error","pinged","law","legal"],skins:[{unified:"1f6a8",native:"🚨"}],version:1},traffic_light:{id:"traffic_light",name:"Horizontal Traffic Light",keywords:["transportation","signal"],skins:[{unified:"1f6a5",native:"🚥"}],version:1},vertical_traffic_light:{id:"vertical_traffic_light",name:"Vertical Traffic Light",keywords:["transportation","driving"],skins:[{unified:"1f6a6",native:"🚦"}],version:1},octagonal_sign:{id:"octagonal_sign",name:"Stop Sign",keywords:["octagonal"],skins:[{unified:"1f6d1",native:"🛑"}],version:3},construction:{id:"construction",name:"Construction",keywords:["wip","progress","caution","warning"],skins:[{unified:"1f6a7",native:"🚧"}],version:1},anchor:{id:"anchor",name:"Anchor",keywords:["ship","ferry","sea","boat"],skins:[{unified:"2693",native:"⚓"}],version:1},ring_buoy:{id:"ring_buoy",name:"Ring Buoy",keywords:["life","saver","preserver"],skins:[{unified:"1f6df",native:"🛟"}],version:14},boat:{id:"boat",name:"Sailboat",keywords:["boat","ship","summer","transportation","water","sailing"],skins:[{unified:"26f5",native:"⛵"}],version:1},canoe:{id:"canoe",name:"Canoe",keywords:["boat","paddle","water","ship"],skins:[{unified:"1f6f6",native:"🛶"}],version:3},speedboat:{id:"speedboat",name:"Speedboat",keywords:["ship","transportation","vehicle","summer"],skins:[{unified:"1f6a4",native:"🚤"}],version:1},passenger_ship:{id:"passenger_ship",name:"Passenger Ship",keywords:["yacht","cruise","ferry"],skins:[{unified:"1f6f3-fe0f",native:"🛳️"}],version:1},ferry:{id:"ferry",name:"Ferry",keywords:["boat","ship","yacht"],skins:[{unified:"26f4-fe0f",native:"⛴️"}],version:1},motor_boat:{id:"motor_boat",name:"Motor Boat",keywords:["ship"],skins:[{unified:"1f6e5-fe0f",native:"🛥️"}],version:1},ship:{id:"ship",name:"Ship",keywords:["transportation","titanic","deploy"],skins:[{unified:"1f6a2",native:"🚢"}],version:1},airplane:{id:"airplane",name:"Airplane",keywords:["vehicle","transportation","flight","fly"],skins:[{unified:"2708-fe0f",native:"✈️"}],version:1},small_airplane:{id:"small_airplane",name:"Small Airplane",keywords:["flight","transportation","fly","vehicle"],skins:[{unified:"1f6e9-fe0f",native:"🛩️"}],version:1},airplane_departure:{id:"airplane_departure",name:"Airplane Departure",keywords:["airport","flight","landing"],skins:[{unified:"1f6eb",native:"🛫"}],version:1},airplane_arriving:{id:"airplane_arriving",name:"Airplane Arrival",keywords:["arriving","airport","flight","boarding"],skins:[{unified:"1f6ec",native:"🛬"}],version:1},parachute:{id:"parachute",name:"Parachute",keywords:["fly","glide"],skins:[{unified:"1fa82",native:"🪂"}],version:12},seat:{id:"seat",name:"Seat",keywords:["sit","airplane","transport","bus","flight","fly"],skins:[{unified:"1f4ba",native:"💺"}],version:1},helicopter:{id:"helicopter",name:"Helicopter",keywords:["transportation","vehicle","fly"],skins:[{unified:"1f681",native:"🚁"}],version:1},suspension_railway:{id:"suspension_railway",name:"Suspension Railway",keywords:["vehicle","transportation"],skins:[{unified:"1f69f",native:"🚟"}],version:1},mountain_cableway:{id:"mountain_cableway",name:"Mountain Cableway",keywords:["transportation","vehicle","ski"],skins:[{unified:"1f6a0",native:"🚠"}],version:1},aerial_tramway:{id:"aerial_tramway",name:"Aerial Tramway",keywords:["transportation","vehicle","ski"],skins:[{unified:"1f6a1",native:"🚡"}],version:1},satellite:{id:"satellite",name:"Satellite",keywords:["communication","gps","orbit","spaceflight","NASA","ISS"],skins:[{unified:"1f6f0-fe0f",native:"🛰️"}],version:1},rocket:{id:"rocket",name:"Rocket",keywords:["launch","ship","staffmode","NASA","outer","space","fly"],skins:[{unified:"1f680",native:"🚀"}],version:1},flying_saucer:{id:"flying_saucer",name:"Flying Saucer",keywords:["transportation","vehicle","ufo"],skins:[{unified:"1f6f8",native:"🛸"}],version:5},bellhop_bell:{id:"bellhop_bell",name:"Bellhop Bell",keywords:["service"],skins:[{unified:"1f6ce-fe0f",native:"🛎️"}],version:1},luggage:{id:"luggage",name:"Luggage",keywords:["packing","travel"],skins:[{unified:"1f9f3",native:"🧳"}],version:11},hourglass:{id:"hourglass",name:"Hourglass",keywords:["done","time","clock","oldschool","limit","exam","quiz","test"],skins:[{unified:"231b",native:"⌛"}],version:1},hourglass_flowing_sand:{id:"hourglass_flowing_sand",name:"Hourglass Not Done",keywords:["flowing","sand","oldschool","time","countdown"],skins:[{unified:"23f3",native:"⏳"}],version:1},watch:{id:"watch",name:"Watch",keywords:["time","accessories"],skins:[{unified:"231a",native:"⌚"}],version:1},alarm_clock:{id:"alarm_clock",name:"Alarm Clock",keywords:["time","wake"],skins:[{unified:"23f0",native:"⏰"}],version:1},stopwatch:{id:"stopwatch",name:"Stopwatch",keywords:["time","deadline"],skins:[{unified:"23f1-fe0f",native:"⏱️"}],version:1},timer_clock:{id:"timer_clock",name:"Timer Clock",keywords:["alarm"],skins:[{unified:"23f2-fe0f",native:"⏲️"}],version:1},mantelpiece_clock:{id:"mantelpiece_clock",name:"Mantelpiece Clock",keywords:["time"],skins:[{unified:"1f570-fe0f",native:"🕰️"}],version:1},clock12:{id:"clock12",name:"Twelve O’clock",keywords:["clock12","o","clock","12","00:00","0000","12:00","1200","time","noon","midnight","midday","late","early","schedule"],skins:[{unified:"1f55b",native:"🕛"}],version:1},clock1230:{id:"clock1230",name:"Twelve-Thirty",keywords:["clock1230","twelve","thirty","00:30","0030","12:30","1230","time","late","early","schedule"],skins:[{unified:"1f567",native:"🕧"}],version:1},clock1:{id:"clock1",name:"One O’clock",keywords:["clock1","o","clock","1","1:00","100","13:00","1300","time","late","early","schedule"],skins:[{unified:"1f550",native:"🕐"}],version:1},clock130:{id:"clock130",name:"One-Thirty",keywords:["clock130","one","thirty","1:30","130","13:30","1330","time","late","early","schedule"],skins:[{unified:"1f55c",native:"🕜"}],version:1},clock2:{id:"clock2",name:"Two O’clock",keywords:["clock2","o","clock","2","2:00","200","14:00","1400","time","late","early","schedule"],skins:[{unified:"1f551",native:"🕑"}],version:1},clock230:{id:"clock230",name:"Two-Thirty",keywords:["clock230","two","thirty","2:30","230","14:30","1430","time","late","early","schedule"],skins:[{unified:"1f55d",native:"🕝"}],version:1},clock3:{id:"clock3",name:"Three O’clock",keywords:["clock3","o","clock","3","3:00","300","15:00","1500","time","late","early","schedule"],skins:[{unified:"1f552",native:"🕒"}],version:1},clock330:{id:"clock330",name:"Three-Thirty",keywords:["clock330","three","thirty","3:30","330","15:30","1530","time","late","early","schedule"],skins:[{unified:"1f55e",native:"🕞"}],version:1},clock4:{id:"clock4",name:"Four O’clock",keywords:["clock4","o","clock","4","4:00","400","16:00","1600","time","late","early","schedule"],skins:[{unified:"1f553",native:"🕓"}],version:1},clock430:{id:"clock430",name:"Four-Thirty",keywords:["clock430","four","thirty","4:30","430","16:30","1630","time","late","early","schedule"],skins:[{unified:"1f55f",native:"🕟"}],version:1},clock5:{id:"clock5",name:"Five O’clock",keywords:["clock5","o","clock","5","5:00","500","17:00","1700","time","late","early","schedule"],skins:[{unified:"1f554",native:"🕔"}],version:1},clock530:{id:"clock530",name:"Five-Thirty",keywords:["clock530","five","thirty","5:30","530","17:30","1730","time","late","early","schedule"],skins:[{unified:"1f560",native:"🕠"}],version:1},clock6:{id:"clock6",name:"Six O’clock",keywords:["clock6","o","clock","6","6:00","600","18:00","1800","time","late","early","schedule","dawn","dusk"],skins:[{unified:"1f555",native:"🕕"}],version:1},clock630:{id:"clock630",name:"Six-Thirty",keywords:["clock630","six","thirty","6:30","630","18:30","1830","time","late","early","schedule"],skins:[{unified:"1f561",native:"🕡"}],version:1},clock7:{id:"clock7",name:"Seven O’clock",keywords:["clock7","o","clock","7","7:00","700","19:00","1900","time","late","early","schedule"],skins:[{unified:"1f556",native:"🕖"}],version:1},clock730:{id:"clock730",name:"Seven-Thirty",keywords:["clock730","seven","thirty","7:30","730","19:30","1930","time","late","early","schedule"],skins:[{unified:"1f562",native:"🕢"}],version:1},clock8:{id:"clock8",name:"Eight O’clock",keywords:["clock8","o","clock","8","8:00","800","20:00","2000","time","late","early","schedule"],skins:[{unified:"1f557",native:"🕗"}],version:1},clock830:{id:"clock830",name:"Eight-Thirty",keywords:["clock830","eight","thirty","8:30","830","20:30","2030","time","late","early","schedule"],skins:[{unified:"1f563",native:"🕣"}],version:1},clock9:{id:"clock9",name:"Nine O’clock",keywords:["clock9","o","clock","9","9:00","900","21:00","2100","time","late","early","schedule"],skins:[{unified:"1f558",native:"🕘"}],version:1},clock930:{id:"clock930",name:"Nine-Thirty",keywords:["clock930","nine","thirty","9:30","930","21:30","2130","time","late","early","schedule"],skins:[{unified:"1f564",native:"🕤"}],version:1},clock10:{id:"clock10",name:"Ten O’clock",keywords:["clock10","o","clock","10","10:00","1000","22:00","2200","time","late","early","schedule"],skins:[{unified:"1f559",native:"🕙"}],version:1},clock1030:{id:"clock1030",name:"Ten-Thirty",keywords:["clock1030","ten","thirty","10:30","1030","22:30","2230","time","late","early","schedule"],skins:[{unified:"1f565",native:"🕥"}],version:1},clock11:{id:"clock11",name:"Eleven O’clock",keywords:["clock11","o","clock","11","11:00","1100","23:00","2300","time","late","early","schedule"],skins:[{unified:"1f55a",native:"🕚"}],version:1},clock1130:{id:"clock1130",name:"Eleven-Thirty",keywords:["clock1130","eleven","thirty","11:30","1130","23:30","2330","time","late","early","schedule"],skins:[{unified:"1f566",native:"🕦"}],version:1},new_moon:{id:"new_moon",name:"New Moon",keywords:["nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f311",native:"🌑"}],version:1},waxing_crescent_moon:{id:"waxing_crescent_moon",name:"Waxing Crescent Moon",keywords:["nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f312",native:"🌒"}],version:1},first_quarter_moon:{id:"first_quarter_moon",name:"First Quarter Moon",keywords:["nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f313",native:"🌓"}],version:1},moon:{id:"moon",name:"Waxing Gibbous Moon",keywords:["nature","night","sky","gray","twilight","planet","space","evening","sleep"],skins:[{unified:"1f314",native:"🌔"}],version:1},full_moon:{id:"full_moon",name:"Full Moon",keywords:["nature","yellow","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f315",native:"🌕"}],version:1},waning_gibbous_moon:{id:"waning_gibbous_moon",name:"Waning Gibbous Moon",keywords:["nature","twilight","planet","space","night","evening","sleep","waxing"],skins:[{unified:"1f316",native:"🌖"}],version:1},last_quarter_moon:{id:"last_quarter_moon",name:"Last Quarter Moon",keywords:["nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f317",native:"🌗"}],version:1},waning_crescent_moon:{id:"waning_crescent_moon",name:"Waning Crescent Moon",keywords:["nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f318",native:"🌘"}],version:1},crescent_moon:{id:"crescent_moon",name:"Crescent Moon",keywords:["night","sleep","sky","evening","magic"],skins:[{unified:"1f319",native:"🌙"}],version:1},new_moon_with_face:{id:"new_moon_with_face",name:"New Moon Face",keywords:["with","nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f31a",native:"🌚"}],version:1},first_quarter_moon_with_face:{id:"first_quarter_moon_with_face",name:"First Quarter Moon Face",keywords:["with","nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f31b",native:"🌛"}],version:1},last_quarter_moon_with_face:{id:"last_quarter_moon_with_face",name:"Last Quarter Moon Face",keywords:["with","nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f31c",native:"🌜"}],version:1},thermometer:{id:"thermometer",name:"Thermometer",keywords:["weather","temperature","hot","cold"],skins:[{unified:"1f321-fe0f",native:"🌡️"}],version:1},sunny:{id:"sunny",name:"Sun",keywords:["sunny","weather","nature","brightness","summer","beach","spring"],skins:[{unified:"2600-fe0f",native:"☀️"}],version:1},full_moon_with_face:{id:"full_moon_with_face",name:"Full Moon Face",keywords:["with","nature","twilight","planet","space","night","evening","sleep"],skins:[{unified:"1f31d",native:"🌝"}],version:1},sun_with_face:{id:"sun_with_face",name:"Sun with Face",keywords:["nature","morning","sky"],skins:[{unified:"1f31e",native:"🌞"}],version:1},ringed_planet:{id:"ringed_planet",name:"Ringed Planet",keywords:["outerspace"],skins:[{unified:"1fa90",native:"🪐"}],version:12},star:{id:"star",name:"Star",keywords:["night","yellow"],skins:[{unified:"2b50",native:"⭐"}],version:1},star2:{id:"star2",name:"Glowing Star",keywords:["star2","night","sparkle","awesome","good","magic"],skins:[{unified:"1f31f",native:"🌟"}],version:1},stars:{id:"stars",name:"Shooting Star",keywords:["stars","night","photo"],skins:[{unified:"1f320",native:"🌠"}],version:1},milky_way:{id:"milky_way",name:"Milky Way",keywords:["photo","space","stars"],skins:[{unified:"1f30c",native:"🌌"}],version:1},cloud:{id:"cloud",name:"Cloud",keywords:["weather","sky"],skins:[{unified:"2601-fe0f",native:"☁️"}],version:1},partly_sunny:{id:"partly_sunny",name:"Sun Behind Cloud",keywords:["partly","sunny","weather","nature","cloudy","morning","fall","spring"],skins:[{unified:"26c5",native:"⛅"}],version:1},thunder_cloud_and_rain:{id:"thunder_cloud_and_rain",name:"Cloud with Lightning and Rain",keywords:["thunder","weather"],skins:[{unified:"26c8-fe0f",native:"⛈️"}],version:1},mostly_sunny:{id:"mostly_sunny",name:"Sun Behind Small Cloud",keywords:["mostly","sunny","weather"],skins:[{unified:"1f324-fe0f",native:"🌤️"}],version:1},barely_sunny:{id:"barely_sunny",name:"Sun Behind Large Cloud",keywords:["barely","sunny","weather"],skins:[{unified:"1f325-fe0f",native:"🌥️"}],version:1},partly_sunny_rain:{id:"partly_sunny_rain",name:"Sun Behind Rain Cloud",keywords:["partly","sunny","weather"],skins:[{unified:"1f326-fe0f",native:"🌦️"}],version:1},rain_cloud:{id:"rain_cloud",name:"Cloud with Rain",keywords:["weather"],skins:[{unified:"1f327-fe0f",native:"🌧️"}],version:1},snow_cloud:{id:"snow_cloud",name:"Cloud with Snow",keywords:["weather"],skins:[{unified:"1f328-fe0f",native:"🌨️"}],version:1},lightning:{id:"lightning",name:"Cloud with Lightning",keywords:["weather","thunder"],skins:[{unified:"1f329-fe0f",native:"🌩️"}],version:1},tornado:{id:"tornado",name:"Tornado",keywords:["cloud","weather","cyclone","twister"],skins:[{unified:"1f32a-fe0f",native:"🌪️"}],version:1},fog:{id:"fog",name:"Fog",keywords:["weather"],skins:[{unified:"1f32b-fe0f",native:"🌫️"}],version:1},wind_blowing_face:{id:"wind_blowing_face",name:"Wind Face",keywords:["blowing","gust","air"],skins:[{unified:"1f32c-fe0f",native:"🌬️"}],version:1},cyclone:{id:"cyclone",name:"Cyclone",keywords:["weather","swirl","blue","cloud","vortex","spiral","whirlpool","spin","tornado","hurricane","typhoon"],skins:[{unified:"1f300",native:"🌀"}],version:1},rainbow:{id:"rainbow",name:"Rainbow",keywords:["nature","happy","unicorn","face","photo","sky","spring"],skins:[{unified:"1f308",native:"🌈"}],version:1},closed_umbrella:{id:"closed_umbrella",name:"Closed Umbrella",keywords:["weather","rain","drizzle"],skins:[{unified:"1f302",native:"🌂"}],version:1},umbrella:{id:"umbrella",name:"Umbrella",keywords:["weather","spring"],skins:[{unified:"2602-fe0f",native:"☂️"}],version:1},umbrella_with_rain_drops:{id:"umbrella_with_rain_drops",name:"Umbrella with Rain Drops",keywords:["rainy","weather","spring"],skins:[{unified:"2614",native:"☔"}],version:1},umbrella_on_ground:{id:"umbrella_on_ground",name:"Umbrella on Ground",keywords:["weather","summer"],skins:[{unified:"26f1-fe0f",native:"⛱️"}],version:1},zap:{id:"zap",name:"High Voltage",keywords:["zap","thunder","weather","lightning","bolt","fast"],skins:[{unified:"26a1",native:"⚡"}],version:1},snowflake:{id:"snowflake",name:"Snowflake",keywords:["winter","season","cold","weather","christmas","xmas"],skins:[{unified:"2744-fe0f",native:"❄️"}],version:1},snowman:{id:"snowman",name:"Snowman",keywords:["winter","season","cold","weather","christmas","xmas","frozen"],skins:[{unified:"2603-fe0f",native:"☃️"}],version:1},snowman_without_snow:{id:"snowman_without_snow",name:"Snowman Without Snow",keywords:["winter","season","cold","weather","christmas","xmas","frozen"],skins:[{unified:"26c4",native:"⛄"}],version:1},comet:{id:"comet",name:"Comet",keywords:["space"],skins:[{unified:"2604-fe0f",native:"☄️"}],version:1},fire:{id:"fire",name:"Fire",keywords:["hot","cook","flame"],skins:[{unified:"1f525",native:"🔥"}],version:1},droplet:{id:"droplet",name:"Droplet",keywords:["water","drip","faucet","spring"],skins:[{unified:"1f4a7",native:"💧"}],version:1},ocean:{id:"ocean",name:"Water Wave",keywords:["ocean","sea","nature","tsunami","disaster"],skins:[{unified:"1f30a",native:"🌊"}],version:1},jack_o_lantern:{id:"jack_o_lantern",name:"Jack-O-Lantern",keywords:["jack","o","lantern","halloween","light","pumpkin","creepy","fall"],skins:[{unified:"1f383",native:"🎃"}],version:1},christmas_tree:{id:"christmas_tree",name:"Christmas Tree",keywords:["festival","vacation","december","xmas","celebration"],skins:[{unified:"1f384",native:"🎄"}],version:1},fireworks:{id:"fireworks",name:"Fireworks",keywords:["photo","festival","carnival","congratulations"],skins:[{unified:"1f386",native:"🎆"}],version:1},sparkler:{id:"sparkler",name:"Sparkler",keywords:["stars","night","shine"],skins:[{unified:"1f387",native:"🎇"}],version:1},firecracker:{id:"firecracker",name:"Firecracker",keywords:["dynamite","boom","explode","explosion","explosive"],skins:[{unified:"1f9e8",native:"🧨"}],version:11},sparkles:{id:"sparkles",name:"Sparkles",keywords:["stars","shine","shiny","cool","awesome","good","magic"],skins:[{unified:"2728",native:"✨"}],version:1},balloon:{id:"balloon",name:"Balloon",keywords:["party","celebration","birthday","circus"],skins:[{unified:"1f388",native:"🎈"}],version:1},tada:{id:"tada",name:"Party Popper",keywords:["tada","congratulations","birthday","magic","circus","celebration"],skins:[{unified:"1f389",native:"🎉"}],version:1},confetti_ball:{id:"confetti_ball",name:"Confetti Ball",keywords:["festival","party","birthday","circus"],skins:[{unified:"1f38a",native:"🎊"}],version:1},tanabata_tree:{id:"tanabata_tree",name:"Tanabata Tree",keywords:["plant","nature","branch","summer","bamboo","wish","star","festival","tanzaku"],skins:[{unified:"1f38b",native:"🎋"}],version:1},bamboo:{id:"bamboo",name:"Pine Decoration",keywords:["bamboo","japanese","plant","nature","vegetable","panda","new","years"],skins:[{unified:"1f38d",native:"🎍"}],version:1},dolls:{id:"dolls",name:"Japanese Dolls",keywords:["toy","kimono"],skins:[{unified:"1f38e",native:"🎎"}],version:1},flags:{id:"flags",name:"Carp Streamer",keywords:["flags","fish","japanese","koinobori","banner"],skins:[{unified:"1f38f",native:"🎏"}],version:1},wind_chime:{id:"wind_chime",name:"Wind Chime",keywords:["nature","ding","spring","bell"],skins:[{unified:"1f390",native:"🎐"}],version:1},rice_scene:{id:"rice_scene",name:"Moon Viewing Ceremony",keywords:["rice","scene","photo","japan","asia","tsukimi"],skins:[{unified:"1f391",native:"🎑"}],version:1},red_envelope:{id:"red_envelope",name:"Red Envelope",keywords:["gift"],skins:[{unified:"1f9e7",native:"🧧"}],version:11},ribbon:{id:"ribbon",name:"Ribbon",keywords:["decoration","pink","girl","bowtie"],skins:[{unified:"1f380",native:"🎀"}],version:1},gift:{id:"gift",name:"Wrapped Gift",keywords:["present","birthday","christmas","xmas"],skins:[{unified:"1f381",native:"🎁"}],version:1},reminder_ribbon:{id:"reminder_ribbon",name:"Reminder Ribbon",keywords:["sports","cause","support","awareness"],skins:[{unified:"1f397-fe0f",native:"🎗️"}],version:1},admission_tickets:{id:"admission_tickets",name:"Admission Tickets",keywords:["sports","concert","entrance"],skins:[{unified:"1f39f-fe0f",native:"🎟️"}],version:1},ticket:{id:"ticket",name:"Ticket",keywords:["event","concert","pass"],skins:[{unified:"1f3ab",native:"🎫"}],version:1},medal:{id:"medal",name:"Military Medal",keywords:["award","winning","army"],skins:[{unified:"1f396-fe0f",native:"🎖️"}],version:1},trophy:{id:"trophy",name:"Trophy",keywords:["win","award","contest","place","ftw","ceremony"],skins:[{unified:"1f3c6",native:"🏆"}],version:1},sports_medal:{id:"sports_medal",name:"Sports Medal",keywords:["award","winning"],skins:[{unified:"1f3c5",native:"🏅"}],version:1},first_place_medal:{id:"first_place_medal",name:"1st Place Medal",keywords:["first","award","winning"],skins:[{unified:"1f947",native:"🥇"}],version:3},second_place_medal:{id:"second_place_medal",name:"2nd Place Medal",keywords:["second","award"],skins:[{unified:"1f948",native:"🥈"}],version:3},third_place_medal:{id:"third_place_medal",name:"3rd Place Medal",keywords:["third","award"],skins:[{unified:"1f949",native:"🥉"}],version:3},soccer:{id:"soccer",name:"Soccer Ball",keywords:["sports","football"],skins:[{unified:"26bd",native:"⚽"}],version:1},baseball:{id:"baseball",name:"Baseball",keywords:["sports","balls"],skins:[{unified:"26be",native:"⚾"}],version:1},softball:{id:"softball",name:"Softball",keywords:["sports","balls"],skins:[{unified:"1f94e",native:"🥎"}],version:11},basketball:{id:"basketball",name:"Basketball",keywords:["sports","balls","NBA"],skins:[{unified:"1f3c0",native:"🏀"}],version:1},volleyball:{id:"volleyball",name:"Volleyball",keywords:["sports","balls"],skins:[{unified:"1f3d0",native:"🏐"}],version:1},football:{id:"football",name:"American Football",keywords:["sports","balls","NFL"],skins:[{unified:"1f3c8",native:"🏈"}],version:1},rugby_football:{id:"rugby_football",name:"Rugby Football",keywords:["sports","team"],skins:[{unified:"1f3c9",native:"🏉"}],version:1},tennis:{id:"tennis",name:"Tennis",keywords:["sports","balls","green"],skins:[{unified:"1f3be",native:"🎾"}],version:1},flying_disc:{id:"flying_disc",name:"Flying Disc",keywords:["sports","frisbee","ultimate"],skins:[{unified:"1f94f",native:"🥏"}],version:11},bowling:{id:"bowling",name:"Bowling",keywords:["sports","fun","play"],skins:[{unified:"1f3b3",native:"🎳"}],version:1},cricket_bat_and_ball:{id:"cricket_bat_and_ball",name:"Cricket Game",keywords:["bat","and","ball","sports"],skins:[{unified:"1f3cf",native:"🏏"}],version:1},field_hockey_stick_and_ball:{id:"field_hockey_stick_and_ball",name:"Field Hockey",keywords:["stick","and","ball","sports"],skins:[{unified:"1f3d1",native:"🏑"}],version:1},ice_hockey_stick_and_puck:{id:"ice_hockey_stick_and_puck",name:"Ice Hockey",keywords:["stick","and","puck","sports"],skins:[{unified:"1f3d2",native:"🏒"}],version:1},lacrosse:{id:"lacrosse",name:"Lacrosse",keywords:["sports","ball","stick"],skins:[{unified:"1f94d",native:"🥍"}],version:11},table_tennis_paddle_and_ball:{id:"table_tennis_paddle_and_ball",name:"Ping Pong",keywords:["table","tennis","paddle","and","ball","sports","pingpong"],skins:[{unified:"1f3d3",native:"🏓"}],version:1},badminton_racquet_and_shuttlecock:{id:"badminton_racquet_and_shuttlecock",name:"Badminton",keywords:["racquet","and","shuttlecock","sports"],skins:[{unified:"1f3f8",native:"🏸"}],version:1},boxing_glove:{id:"boxing_glove",name:"Boxing Glove",keywords:["sports","fighting"],skins:[{unified:"1f94a",native:"🥊"}],version:3},martial_arts_uniform:{id:"martial_arts_uniform",name:"Martial Arts Uniform",keywords:["judo","karate","taekwondo"],skins:[{unified:"1f94b",native:"🥋"}],version:3},goal_net:{id:"goal_net",name:"Goal Net",keywords:["sports"],skins:[{unified:"1f945",native:"🥅"}],version:3},golf:{id:"golf",name:"Flag in Hole",keywords:["golf","sports","business","summer"],skins:[{unified:"26f3",native:"⛳"}],version:1},ice_skate:{id:"ice_skate",name:"Ice Skate",keywords:["sports"],skins:[{unified:"26f8-fe0f",native:"⛸️"}],version:1},fishing_pole_and_fish:{id:"fishing_pole_and_fish",name:"Fishing Pole",keywords:["and","fish","food","hobby","summer"],skins:[{unified:"1f3a3",native:"🎣"}],version:1},diving_mask:{id:"diving_mask",name:"Diving Mask",keywords:["sport","ocean"],skins:[{unified:"1f93f",native:"🤿"}],version:12},running_shirt_with_sash:{id:"running_shirt_with_sash",name:"Running Shirt",keywords:["with","sash","play","pageant"],skins:[{unified:"1f3bd",native:"🎽"}],version:1},ski:{id:"ski",name:"Skis",keywords:["ski","sports","winter","cold","snow"],skins:[{unified:"1f3bf",native:"🎿"}],version:1},sled:{id:"sled",name:"Sled",keywords:["sleigh","luge","toboggan"],skins:[{unified:"1f6f7",native:"🛷"}],version:5},curling_stone:{id:"curling_stone",name:"Curling Stone",keywords:["sports"],skins:[{unified:"1f94c",native:"🥌"}],version:5},dart:{id:"dart",name:"Bullseye",keywords:["dart","direct","hit","game","play","bar","target"],skins:[{unified:"1f3af",native:"🎯"}],version:1},"yo-yo":{id:"yo-yo",name:"Yo-Yo",keywords:["yo","toy"],skins:[{unified:"1fa80",native:"🪀"}],version:12},kite:{id:"kite",name:"Kite",keywords:["wind","fly"],skins:[{unified:"1fa81",native:"🪁"}],version:12},gun:{id:"gun",name:"Pistol",keywords:["gun","violence","weapon","revolver"],skins:[{unified:"1f52b",native:"🔫"}],version:1},"8ball":{id:"8ball",name:"Billiards",keywords:["8ball","pool","8","ball","hobby","game","luck","magic"],skins:[{unified:"1f3b1",native:"🎱"}],version:1},crystal_ball:{id:"crystal_ball",name:"Crystal Ball",keywords:["disco","party","magic","circus","fortune","teller"],skins:[{unified:"1f52e",native:"🔮"}],version:1},magic_wand:{id:"magic_wand",name:"Magic Wand",keywords:["supernature","power"],skins:[{unified:"1fa84",native:"🪄"}],version:13},video_game:{id:"video_game",name:"Video Game",keywords:["play","console","PS4","controller"],skins:[{unified:"1f3ae",native:"🎮"}],version:1},joystick:{id:"joystick",name:"Joystick",keywords:["game","play"],skins:[{unified:"1f579-fe0f",native:"🕹️"}],version:1},slot_machine:{id:"slot_machine",name:"Slot Machine",keywords:["bet","gamble","vegas","fruit","luck","casino"],skins:[{unified:"1f3b0",native:"🎰"}],version:1},game_die:{id:"game_die",name:"Game Die",keywords:["dice","random","tabletop","play","luck"],skins:[{unified:"1f3b2",native:"🎲"}],version:1},jigsaw:{id:"jigsaw",name:"Puzzle Piece",keywords:["jigsaw","interlocking"],skins:[{unified:"1f9e9",native:"🧩"}],version:11},teddy_bear:{id:"teddy_bear",name:"Teddy Bear",keywords:["plush","stuffed"],skins:[{unified:"1f9f8",native:"🧸"}],version:11},pinata:{id:"pinata",name:"Pinata",keywords:["mexico","candy","celebration"],skins:[{unified:"1fa85",native:"🪅"}],version:13},mirror_ball:{id:"mirror_ball",name:"Mirror Ball",keywords:["disco","dance","party"],skins:[{unified:"1faa9",native:"🪩"}],version:14},nesting_dolls:{id:"nesting_dolls",name:"Nesting Dolls",keywords:["matryoshka","toy"],skins:[{unified:"1fa86",native:"🪆"}],version:13},spades:{id:"spades",name:"Spade Suit",keywords:["spades","poker","cards","suits","magic"],skins:[{unified:"2660-fe0f",native:"♠️"}],version:1},hearts:{id:"hearts",name:"Heart Suit",keywords:["hearts","poker","cards","magic","suits"],skins:[{unified:"2665-fe0f",native:"♥️"}],version:1},diamonds:{id:"diamonds",name:"Diamond Suit",keywords:["diamonds","poker","cards","magic","suits"],skins:[{unified:"2666-fe0f",native:"♦️"}],version:1},clubs:{id:"clubs",name:"Club Suit",keywords:["clubs","poker","cards","magic","suits"],skins:[{unified:"2663-fe0f",native:"♣️"}],version:1},chess_pawn:{id:"chess_pawn",name:"Chess Pawn",keywords:["expendable"],skins:[{unified:"265f-fe0f",native:"♟️"}],version:11},black_joker:{id:"black_joker",name:"Joker",keywords:["black","poker","cards","game","play","magic"],skins:[{unified:"1f0cf",native:"🃏"}],version:1},mahjong:{id:"mahjong",name:"Mahjong Red Dragon",keywords:["game","play","chinese","kanji"],skins:[{unified:"1f004",native:"🀄"}],version:1},flower_playing_cards:{id:"flower_playing_cards",name:"Flower Playing Cards",keywords:["game","sunset","red"],skins:[{unified:"1f3b4",native:"🎴"}],version:1},performing_arts:{id:"performing_arts",name:"Performing Arts",keywords:["acting","theater","drama"],skins:[{unified:"1f3ad",native:"🎭"}],version:1},frame_with_picture:{id:"frame_with_picture",name:"Framed Picture",keywords:["frame","with","photography"],skins:[{unified:"1f5bc-fe0f",native:"🖼️"}],version:1},art:{id:"art",name:"Artist Palette",keywords:["art","design","paint","draw","colors"],skins:[{unified:"1f3a8",native:"🎨"}],version:1},thread:{id:"thread",name:"Thread",keywords:["needle","sewing","spool","string"],skins:[{unified:"1f9f5",native:"🧵"}],version:11},sewing_needle:{id:"sewing_needle",name:"Sewing Needle",keywords:["stitches"],skins:[{unified:"1faa1",native:"🪡"}],version:13},yarn:{id:"yarn",name:"Yarn",keywords:["ball","crochet","knit"],skins:[{unified:"1f9f6",native:"🧶"}],version:11},knot:{id:"knot",name:"Knot",keywords:["rope","scout"],skins:[{unified:"1faa2",native:"🪢"}],version:13},eyeglasses:{id:"eyeglasses",name:"Glasses",keywords:["eyeglasses","fashion","accessories","eyesight","nerdy","dork","geek"],skins:[{unified:"1f453",native:"👓"}],version:1},dark_sunglasses:{id:"dark_sunglasses",name:"Sunglasses",keywords:["dark","face","cool","accessories"],skins:[{unified:"1f576-fe0f",native:"🕶️"}],version:1},goggles:{id:"goggles",name:"Goggles",keywords:["eyes","protection","safety"],skins:[{unified:"1f97d",native:"🥽"}],version:11},lab_coat:{id:"lab_coat",name:"Lab Coat",keywords:["doctor","experiment","scientist","chemist"],skins:[{unified:"1f97c",native:"🥼"}],version:11},safety_vest:{id:"safety_vest",name:"Safety Vest",keywords:["protection"],skins:[{unified:"1f9ba",native:"🦺"}],version:12},necktie:{id:"necktie",name:"Necktie",keywords:["shirt","suitup","formal","fashion","cloth","business"],skins:[{unified:"1f454",native:"👔"}],version:1},shirt:{id:"shirt",name:"T-Shirt",keywords:["shirt","tshirt","t","fashion","cloth","casual","tee"],skins:[{unified:"1f455",native:"👕"}],version:1},jeans:{id:"jeans",name:"Jeans",keywords:["fashion","shopping"],skins:[{unified:"1f456",native:"👖"}],version:1},scarf:{id:"scarf",name:"Scarf",keywords:["neck","winter","clothes"],skins:[{unified:"1f9e3",native:"🧣"}],version:5},gloves:{id:"gloves",name:"Gloves",keywords:["hands","winter","clothes"],skins:[{unified:"1f9e4",native:"🧤"}],version:5},coat:{id:"coat",name:"Coat",keywords:["jacket"],skins:[{unified:"1f9e5",native:"🧥"}],version:5},socks:{id:"socks",name:"Socks",keywords:["stockings","clothes"],skins:[{unified:"1f9e6",native:"🧦"}],version:5},dress:{id:"dress",name:"Dress",keywords:["clothes","fashion","shopping"],skins:[{unified:"1f457",native:"👗"}],version:1},kimono:{id:"kimono",name:"Kimono",keywords:["dress","fashion","women","female","japanese"],skins:[{unified:"1f458",native:"👘"}],version:1},sari:{id:"sari",name:"Sari",keywords:["dress"],skins:[{unified:"1f97b",native:"🥻"}],version:12},"one-piece_swimsuit":{id:"one-piece_swimsuit",name:"One-Piece Swimsuit",keywords:["one","piece","fashion"],skins:[{unified:"1fa71",native:"🩱"}],version:12},briefs:{id:"briefs",name:"Briefs",keywords:["clothing"],skins:[{unified:"1fa72",native:"🩲"}],version:12},shorts:{id:"shorts",name:"Shorts",keywords:["clothing"],skins:[{unified:"1fa73",native:"🩳"}],version:12},bikini:{id:"bikini",name:"Bikini",keywords:["swimming","female","woman","girl","fashion","beach","summer"],skins:[{unified:"1f459",native:"👙"}],version:1},womans_clothes:{id:"womans_clothes",name:"Womans Clothes",keywords:["woman","s","fashion","shopping","bags","female"],skins:[{unified:"1f45a",native:"👚"}],version:1},folding_hand_fan:{id:"folding_hand_fan",name:"Folding Hand Fan",keywords:["flamenco","hot"],skins:[{unified:"1faad",native:"🪭"}],version:15},purse:{id:"purse",name:"Purse",keywords:["fashion","accessories","money","sales","shopping"],skins:[{unified:"1f45b",native:"👛"}],version:1},handbag:{id:"handbag",name:"Handbag",keywords:["fashion","accessory","accessories","shopping"],skins:[{unified:"1f45c",native:"👜"}],version:1},pouch:{id:"pouch",name:"Pouch",keywords:["clutch","bag","accessories","shopping"],skins:[{unified:"1f45d",native:"👝"}],version:1},shopping_bags:{id:"shopping_bags",name:"Shopping Bags",keywords:["mall","buy","purchase"],skins:[{unified:"1f6cd-fe0f",native:"🛍️"}],version:1},school_satchel:{id:"school_satchel",name:"Backpack",keywords:["school","satchel","student","education","bag"],skins:[{unified:"1f392",native:"🎒"}],version:1},thong_sandal:{id:"thong_sandal",name:"Thong Sandal",keywords:["footwear","summer"],skins:[{unified:"1fa74",native:"🩴"}],version:13},mans_shoe:{id:"mans_shoe",name:"Mans Shoe",keywords:["man","s","fashion","male"],skins:[{unified:"1f45e",native:"👞"}],version:1},athletic_shoe:{id:"athletic_shoe",name:"Running Shoe",keywords:["athletic","shoes","sports","sneakers"],skins:[{unified:"1f45f",native:"👟"}],version:1},hiking_boot:{id:"hiking_boot",name:"Hiking Boot",keywords:["backpacking","camping"],skins:[{unified:"1f97e",native:"🥾"}],version:11},womans_flat_shoe:{id:"womans_flat_shoe",name:"Flat Shoe",keywords:["womans","ballet","slip","on","slipper"],skins:[{unified:"1f97f",native:"🥿"}],version:11},high_heel:{id:"high_heel",name:"High-Heeled Shoe",keywords:["high","heel","heeled","fashion","shoes","female","pumps","stiletto"],skins:[{unified:"1f460",native:"👠"}],version:1},sandal:{id:"sandal",name:"Womans Sandal",keywords:["woman","s","shoes","fashion","flip","flops"],skins:[{unified:"1f461",native:"👡"}],version:1},ballet_shoes:{id:"ballet_shoes",name:"Ballet Shoes",keywords:["dance"],skins:[{unified:"1fa70",native:"🩰"}],version:12},boot:{id:"boot",name:"Womans Boots",keywords:["boot","woman","s","shoes","fashion"],skins:[{unified:"1f462",native:"👢"}],version:1},hair_pick:{id:"hair_pick",name:"Hair Pick",keywords:["afro","comb"],skins:[{unified:"1faae",native:"🪮"}],version:15},crown:{id:"crown",name:"Crown",keywords:["king","kod","leader","royalty","lord"],skins:[{unified:"1f451",native:"👑"}],version:1},womans_hat:{id:"womans_hat",name:"Womans Hat",keywords:["woman","s","fashion","accessories","female","lady","spring"],skins:[{unified:"1f452",native:"👒"}],version:1},tophat:{id:"tophat",name:"Top Hat",keywords:["tophat","magic","gentleman","classy","circus"],skins:[{unified:"1f3a9",native:"🎩"}],version:1},mortar_board:{id:"mortar_board",name:"Graduation Cap",keywords:["mortar","board","school","college","degree","university","hat","legal","learn","education"],skins:[{unified:"1f393",native:"🎓"}],version:1},billed_cap:{id:"billed_cap",name:"Billed Cap",keywords:["baseball"],skins:[{unified:"1f9e2",native:"🧢"}],version:5},military_helmet:{id:"military_helmet",name:"Military Helmet",keywords:["army","protection"],skins:[{unified:"1fa96",native:"🪖"}],version:13},helmet_with_white_cross:{id:"helmet_with_white_cross",name:"Rescue Worker’s Helmet",keywords:["with","white","cross","worker","s","construction","build"],skins:[{unified:"26d1-fe0f",native:"⛑️"}],version:1},prayer_beads:{id:"prayer_beads",name:"Prayer Beads",keywords:["dhikr","religious"],skins:[{unified:"1f4ff",native:"📿"}],version:1},lipstick:{id:"lipstick",name:"Lipstick",keywords:["female","girl","fashion","woman"],skins:[{unified:"1f484",native:"💄"}],version:1},ring:{id:"ring",name:"Ring",keywords:["wedding","propose","marriage","valentines","diamond","fashion","jewelry","gem","engagement"],skins:[{unified:"1f48d",native:"💍"}],version:1},gem:{id:"gem",name:"Gem Stone",keywords:["blue","ruby","diamond","jewelry"],skins:[{unified:"1f48e",native:"💎"}],version:1},mute:{id:"mute",name:"Muted Speaker",keywords:["mute","sound","volume","silence","quiet"],skins:[{unified:"1f507",native:"🔇"}],version:1},speaker:{id:"speaker",name:"Speaker",keywords:["low","volume","sound","silence","broadcast"],skins:[{unified:"1f508",native:"🔈"}],version:1},sound:{id:"sound",name:"Speaker Medium Volume",keywords:["sound","broadcast"],skins:[{unified:"1f509",native:"🔉"}],version:1},loud_sound:{id:"loud_sound",name:"Speaker High Volume",keywords:["loud","sound","noise","noisy","broadcast"],skins:[{unified:"1f50a",native:"🔊"}],version:1},loudspeaker:{id:"loudspeaker",name:"Loudspeaker",keywords:["volume","sound"],skins:[{unified:"1f4e2",native:"📢"}],version:1},mega:{id:"mega",name:"Megaphone",keywords:["mega","sound","speaker","volume"],skins:[{unified:"1f4e3",native:"📣"}],version:1},postal_horn:{id:"postal_horn",name:"Postal Horn",keywords:["instrument","music"],skins:[{unified:"1f4ef",native:"📯"}],version:1},bell:{id:"bell",name:"Bell",keywords:["sound","notification","christmas","xmas","chime"],skins:[{unified:"1f514",native:"🔔"}],version:1},no_bell:{id:"no_bell",name:"Bell with Slash",keywords:["no","sound","volume","mute","quiet","silent"],skins:[{unified:"1f515",native:"🔕"}],version:1},musical_score:{id:"musical_score",name:"Musical Score",keywords:["treble","clef","compose"],skins:[{unified:"1f3bc",native:"🎼"}],version:1},musical_note:{id:"musical_note",name:"Musical Note",keywords:["score","tone","sound"],skins:[{unified:"1f3b5",native:"🎵"}],version:1},notes:{id:"notes",name:"Musical Notes",keywords:["music","score"],skins:[{unified:"1f3b6",native:"🎶"}],version:1},studio_microphone:{id:"studio_microphone",name:"Studio Microphone",keywords:["sing","recording","artist","talkshow"],skins:[{unified:"1f399-fe0f",native:"🎙️"}],version:1},level_slider:{id:"level_slider",name:"Level Slider",keywords:["scale"],skins:[{unified:"1f39a-fe0f",native:"🎚️"}],version:1},control_knobs:{id:"control_knobs",name:"Control Knobs",keywords:["dial"],skins:[{unified:"1f39b-fe0f",native:"🎛️"}],version:1},microphone:{id:"microphone",name:"Microphone",keywords:["sound","music","PA","sing","talkshow"],skins:[{unified:"1f3a4",native:"🎤"}],version:1},headphones:{id:"headphones",name:"Headphone",keywords:["headphones","music","score","gadgets"],skins:[{unified:"1f3a7",native:"🎧"}],version:1},radio:{id:"radio",name:"Radio",keywords:["communication","music","podcast","program"],skins:[{unified:"1f4fb",native:"📻"}],version:1},saxophone:{id:"saxophone",name:"Saxophone",keywords:["music","instrument","jazz","blues"],skins:[{unified:"1f3b7",native:"🎷"}],version:1},accordion:{id:"accordion",name:"Accordion",keywords:["music"],skins:[{unified:"1fa97",native:"🪗"}],version:13},guitar:{id:"guitar",name:"Guitar",keywords:["music","instrument"],skins:[{unified:"1f3b8",native:"🎸"}],version:1},musical_keyboard:{id:"musical_keyboard",name:"Musical Keyboard",keywords:["piano","instrument","compose"],skins:[{unified:"1f3b9",native:"🎹"}],version:1},trumpet:{id:"trumpet",name:"Trumpet",keywords:["music","brass"],skins:[{unified:"1f3ba",native:"🎺"}],version:1},violin:{id:"violin",name:"Violin",keywords:["music","instrument","orchestra","symphony"],skins:[{unified:"1f3bb",native:"🎻"}],version:1},banjo:{id:"banjo",name:"Banjo",keywords:["music","instructment"],skins:[{unified:"1fa95",native:"🪕"}],version:12},drum_with_drumsticks:{id:"drum_with_drumsticks",name:"Drum",keywords:["with","drumsticks","music","instrument","snare"],skins:[{unified:"1f941",native:"🥁"}],version:3},long_drum:{id:"long_drum",name:"Long Drum",keywords:["music"],skins:[{unified:"1fa98",native:"🪘"}],version:13},maracas:{id:"maracas",name:"Maracas",keywords:["music","instrument","percussion"],skins:[{unified:"1fa87",native:"🪇"}],version:15},flute:{id:"flute",name:"Flute",keywords:["bamboo","music","instrument","pied","piper"],skins:[{unified:"1fa88",native:"🪈"}],version:15},iphone:{id:"iphone",name:"Mobile Phone",keywords:["iphone","technology","apple","gadgets","dial"],skins:[{unified:"1f4f1",native:"📱"}],version:1},calling:{id:"calling",name:"Mobile Phone with Arrow",keywords:["calling","iphone","incoming"],skins:[{unified:"1f4f2",native:"📲"}],version:1},phone:{id:"phone",name:"Telephone",keywords:["phone","technology","communication","dial"],skins:[{unified:"260e-fe0f",native:"☎️"}],version:1},telephone_receiver:{id:"telephone_receiver",name:"Telephone Receiver",keywords:["technology","communication","dial"],skins:[{unified:"1f4de",native:"📞"}],version:1},pager:{id:"pager",name:"Pager",keywords:["bbcall","oldschool","90s"],skins:[{unified:"1f4df",native:"📟"}],version:1},fax:{id:"fax",name:"Fax Machine",keywords:["communication","technology"],skins:[{unified:"1f4e0",native:"📠"}],version:1},battery:{id:"battery",name:"Battery",keywords:["power","energy","sustain"],skins:[{unified:"1f50b",native:"🔋"}],version:1},low_battery:{id:"low_battery",name:"Low Battery",keywords:["drained","dead"],skins:[{unified:"1faab",native:"🪫"}],version:14},electric_plug:{id:"electric_plug",name:"Electric Plug",keywords:["charger","power"],skins:[{unified:"1f50c",native:"🔌"}],version:1},computer:{id:"computer",name:"Laptop",keywords:["computer","technology","screen","display","monitor"],skins:[{unified:"1f4bb",native:"💻"}],version:1},desktop_computer:{id:"desktop_computer",name:"Desktop Computer",keywords:["technology","computing","screen"],skins:[{unified:"1f5a5-fe0f",native:"🖥️"}],version:1},printer:{id:"printer",name:"Printer",keywords:["paper","ink"],skins:[{unified:"1f5a8-fe0f",native:"🖨️"}],version:1},keyboard:{id:"keyboard",name:"Keyboard",keywords:["technology","computer","type","input","text"],skins:[{unified:"2328-fe0f",native:"⌨️"}],version:1},three_button_mouse:{id:"three_button_mouse",name:"Computer Mouse",keywords:["three","button","click"],skins:[{unified:"1f5b1-fe0f",native:"🖱️"}],version:1},trackball:{id:"trackball",name:"Trackball",keywords:["technology","trackpad"],skins:[{unified:"1f5b2-fe0f",native:"🖲️"}],version:1},minidisc:{id:"minidisc",name:"Minidisc",keywords:["computer","disk","technology","record","data","90s"],skins:[{unified:"1f4bd",native:"💽"}],version:1},floppy_disk:{id:"floppy_disk",name:"Floppy Disk",keywords:["oldschool","technology","save","90s","80s"],skins:[{unified:"1f4be",native:"💾"}],version:1},cd:{id:"cd",name:"Optical Disc",keywords:["cd","disk","technology","dvd","90s"],skins:[{unified:"1f4bf",native:"💿"}],version:1},dvd:{id:"dvd",name:"Dvd",keywords:["cd","disk","disc"],skins:[{unified:"1f4c0",native:"📀"}],version:1},abacus:{id:"abacus",name:"Abacus",keywords:["calculation"],skins:[{unified:"1f9ee",native:"🧮"}],version:11},movie_camera:{id:"movie_camera",name:"Movie Camera",keywords:["film","record"],skins:[{unified:"1f3a5",native:"🎥"}],version:1},film_frames:{id:"film_frames",name:"Film Frames",keywords:["movie"],skins:[{unified:"1f39e-fe0f",native:"🎞️"}],version:1},film_projector:{id:"film_projector",name:"Film Projector",keywords:["video","tape","record","movie"],skins:[{unified:"1f4fd-fe0f",native:"📽️"}],version:1},clapper:{id:"clapper",name:"Clapper Board",keywords:["movie","film","record"],skins:[{unified:"1f3ac",native:"🎬"}],version:1},tv:{id:"tv",name:"Television",keywords:["tv","technology","program","oldschool","show"],skins:[{unified:"1f4fa",native:"📺"}],version:1},camera:{id:"camera",name:"Camera",keywords:["gadgets","photography"],skins:[{unified:"1f4f7",native:"📷"}],version:1},camera_with_flash:{id:"camera_with_flash",name:"Camera with Flash",keywords:["photography","gadgets"],skins:[{unified:"1f4f8",native:"📸"}],version:1},video_camera:{id:"video_camera",name:"Video Camera",keywords:["film","record"],skins:[{unified:"1f4f9",native:"📹"}],version:1},vhs:{id:"vhs",name:"Videocassette",keywords:["vhs","record","video","oldschool","90s","80s"],skins:[{unified:"1f4fc",native:"📼"}],version:1},mag:{id:"mag",name:"Magnifying Glass Tilted Left",keywords:["mag","search","zoom","find","detective"],skins:[{unified:"1f50d",native:"🔍"}],version:1},mag_right:{id:"mag_right",name:"Magnifying Glass Tilted Right",keywords:["mag","search","zoom","find","detective"],skins:[{unified:"1f50e",native:"🔎"}],version:1},candle:{id:"candle",name:"Candle",keywords:["fire","wax"],skins:[{unified:"1f56f-fe0f",native:"🕯️"}],version:1},bulb:{id:"bulb",name:"Light Bulb",keywords:["electricity","idea"],skins:[{unified:"1f4a1",native:"💡"}],version:1},flashlight:{id:"flashlight",name:"Flashlight",keywords:["dark","camping","sight","night"],skins:[{unified:"1f526",native:"🔦"}],version:1},izakaya_lantern:{id:"izakaya_lantern",name:"Izakaya Lantern",keywords:["red","paper","light","halloween","spooky"],skins:[{unified:"1f3ee",native:"🏮"}],version:1},diya_lamp:{id:"diya_lamp",name:"Diya Lamp",keywords:["lighting"],skins:[{unified:"1fa94",native:"🪔"}],version:12},notebook_with_decorative_cover:{id:"notebook_with_decorative_cover",name:"Notebook with Decorative Cover",keywords:["classroom","notes","record","paper","study"],skins:[{unified:"1f4d4",native:"📔"}],version:1},closed_book:{id:"closed_book",name:"Closed Book",keywords:["read","library","knowledge","textbook","learn"],skins:[{unified:"1f4d5",native:"📕"}],version:1},book:{id:"book",name:"Open Book",keywords:["read","library","knowledge","literature","learn","study"],skins:[{unified:"1f4d6",native:"📖"}],version:1},green_book:{id:"green_book",name:"Green Book",keywords:["read","library","knowledge","study"],skins:[{unified:"1f4d7",native:"📗"}],version:1},blue_book:{id:"blue_book",name:"Blue Book",keywords:["read","library","knowledge","learn","study"],skins:[{unified:"1f4d8",native:"📘"}],version:1},orange_book:{id:"orange_book",name:"Orange Book",keywords:["read","library","knowledge","textbook","study"],skins:[{unified:"1f4d9",native:"📙"}],version:1},books:{id:"books",name:"Books",keywords:["literature","library","study"],skins:[{unified:"1f4da",native:"📚"}],version:1},notebook:{id:"notebook",name:"Notebook",keywords:["stationery","record","notes","paper","study"],skins:[{unified:"1f4d3",native:"📓"}],version:1},ledger:{id:"ledger",name:"Ledger",keywords:["notes","paper"],skins:[{unified:"1f4d2",native:"📒"}],version:1},page_with_curl:{id:"page_with_curl",name:"Page with Curl",keywords:["documents","office","paper"],skins:[{unified:"1f4c3",native:"📃"}],version:1},scroll:{id:"scroll",name:"Scroll",keywords:["documents","ancient","history","paper"],skins:[{unified:"1f4dc",native:"📜"}],version:1},page_facing_up:{id:"page_facing_up",name:"Page Facing Up",keywords:["documents","office","paper","information"],skins:[{unified:"1f4c4",native:"📄"}],version:1},newspaper:{id:"newspaper",name:"Newspaper",keywords:["press","headline"],skins:[{unified:"1f4f0",native:"📰"}],version:1},rolled_up_newspaper:{id:"rolled_up_newspaper",name:"Rolled-Up Newspaper",keywords:["rolled","up","press","headline"],skins:[{unified:"1f5de-fe0f",native:"🗞️"}],version:1},bookmark_tabs:{id:"bookmark_tabs",name:"Bookmark Tabs",keywords:["favorite","save","order","tidy"],skins:[{unified:"1f4d1",native:"📑"}],version:1},bookmark:{id:"bookmark",name:"Bookmark",keywords:["favorite","label","save"],skins:[{unified:"1f516",native:"🔖"}],version:1},label:{id:"label",name:"Label",keywords:["sale","tag"],skins:[{unified:"1f3f7-fe0f",native:"🏷️"}],version:1},moneybag:{id:"moneybag",name:"Money Bag",keywords:["moneybag","dollar","payment","coins","sale"],skins:[{unified:"1f4b0",native:"💰"}],version:1},coin:{id:"coin",name:"Coin",keywords:["money","currency"],skins:[{unified:"1fa99",native:"🪙"}],version:13},yen:{id:"yen",name:"Yen Banknote",keywords:["money","sales","japanese","dollar","currency"],skins:[{unified:"1f4b4",native:"💴"}],version:1},dollar:{id:"dollar",name:"Dollar Banknote",keywords:["money","sales","bill","currency"],skins:[{unified:"1f4b5",native:"💵"}],version:1},euro:{id:"euro",name:"Euro Banknote",keywords:["money","sales","dollar","currency"],skins:[{unified:"1f4b6",native:"💶"}],version:1},pound:{id:"pound",name:"Pound Banknote",keywords:["british","sterling","money","sales","bills","uk","england","currency"],skins:[{unified:"1f4b7",native:"💷"}],version:1},money_with_wings:{id:"money_with_wings",name:"Money with Wings",keywords:["dollar","bills","payment","sale"],skins:[{unified:"1f4b8",native:"💸"}],version:1},credit_card:{id:"credit_card",name:"Credit Card",keywords:["money","sales","dollar","bill","payment","shopping"],skins:[{unified:"1f4b3",native:"💳"}],version:1},receipt:{id:"receipt",name:"Receipt",keywords:["accounting","expenses"],skins:[{unified:"1f9fe",native:"🧾"}],version:11},chart:{id:"chart",name:"Chart Increasing with Yen",keywords:["green","square","graph","presentation","stats"],skins:[{unified:"1f4b9",native:"💹"}],version:1},email:{id:"email",name:"Envelope",keywords:["email","letter","postal","inbox","communication"],skins:[{unified:"2709-fe0f",native:"✉️"}],version:1},"e-mail":{id:"e-mail",name:"E-Mail",keywords:["e","mail","communication","inbox"],skins:[{unified:"1f4e7",native:"📧"}],version:1},incoming_envelope:{id:"incoming_envelope",name:"Incoming Envelope",keywords:["email","inbox"],skins:[{unified:"1f4e8",native:"📨"}],version:1},envelope_with_arrow:{id:"envelope_with_arrow",name:"Envelope with Arrow",keywords:["email","communication"],skins:[{unified:"1f4e9",native:"📩"}],version:1},outbox_tray:{id:"outbox_tray",name:"Outbox Tray",keywords:["inbox","email"],skins:[{unified:"1f4e4",native:"📤"}],version:1},inbox_tray:{id:"inbox_tray",name:"Inbox Tray",keywords:["email","documents"],skins:[{unified:"1f4e5",native:"📥"}],version:1},package:{id:"package",name:"Package",keywords:["mail","gift","cardboard","box","moving"],skins:[{unified:"1f4e6",native:"📦"}],version:1},mailbox:{id:"mailbox",name:"Closed Mailbox with Raised Flag",keywords:["email","inbox","communication"],skins:[{unified:"1f4eb",native:"📫"}],version:1},mailbox_closed:{id:"mailbox_closed",name:"Closed Mailbox with Lowered Flag",keywords:["email","communication","inbox"],skins:[{unified:"1f4ea",native:"📪"}],version:1},mailbox_with_mail:{id:"mailbox_with_mail",name:"Open Mailbox with Raised Flag",keywords:["mail","email","inbox","communication"],skins:[{unified:"1f4ec",native:"📬"}],version:1},mailbox_with_no_mail:{id:"mailbox_with_no_mail",name:"Open Mailbox with Lowered Flag",keywords:["no","mail","email","inbox"],skins:[{unified:"1f4ed",native:"📭"}],version:1},postbox:{id:"postbox",name:"Postbox",keywords:["email","letter","envelope"],skins:[{unified:"1f4ee",native:"📮"}],version:1},ballot_box_with_ballot:{id:"ballot_box_with_ballot",name:"Ballot Box with Ballot",keywords:["election","vote"],skins:[{unified:"1f5f3-fe0f",native:"🗳️"}],version:1},pencil2:{id:"pencil2",name:"Pencil",keywords:["pencil2","stationery","write","paper","writing","school","study"],skins:[{unified:"270f-fe0f",native:"✏️"}],version:1},black_nib:{id:"black_nib",name:"Black Nib",keywords:["pen","stationery","writing","write"],skins:[{unified:"2712-fe0f",native:"✒️"}],version:1},lower_left_fountain_pen:{id:"lower_left_fountain_pen",name:"Fountain Pen",keywords:["lower","left","stationery","writing","write"],skins:[{unified:"1f58b-fe0f",native:"🖋️"}],version:1},lower_left_ballpoint_pen:{id:"lower_left_ballpoint_pen",name:"Pen",keywords:["lower","left","ballpoint","stationery","writing","write"],skins:[{unified:"1f58a-fe0f",native:"🖊️"}],version:1},lower_left_paintbrush:{id:"lower_left_paintbrush",name:"Paintbrush",keywords:["lower","left","drawing","creativity","art"],skins:[{unified:"1f58c-fe0f",native:"🖌️"}],version:1},lower_left_crayon:{id:"lower_left_crayon",name:"Crayon",keywords:["lower","left","drawing","creativity"],skins:[{unified:"1f58d-fe0f",native:"🖍️"}],version:1},memo:{id:"memo",name:"Memo",keywords:["pencil","write","documents","stationery","paper","writing","legal","exam","quiz","test","study","compose"],skins:[{unified:"1f4dd",native:"📝"}],version:1},briefcase:{id:"briefcase",name:"Briefcase",keywords:["business","documents","work","law","legal","job","career"],skins:[{unified:"1f4bc",native:"💼"}],version:1},file_folder:{id:"file_folder",name:"File Folder",keywords:["documents","business","office"],skins:[{unified:"1f4c1",native:"📁"}],version:1},open_file_folder:{id:"open_file_folder",name:"Open File Folder",keywords:["documents","load"],skins:[{unified:"1f4c2",native:"📂"}],version:1},card_index_dividers:{id:"card_index_dividers",name:"Card Index Dividers",keywords:["organizing","business","stationery"],skins:[{unified:"1f5c2-fe0f",native:"🗂️"}],version:1},date:{id:"date",name:"Calendar",keywords:["date","schedule"],skins:[{unified:"1f4c5",native:"📅"}],version:1},calendar:{id:"calendar",name:"Tear-off Calendar",keywords:["tear","off","schedule","date","planning"],skins:[{unified:"1f4c6",native:"📆"}],version:1},spiral_note_pad:{id:"spiral_note_pad",name:"Spiral Notepad",keywords:["note","pad","memo","stationery"],skins:[{unified:"1f5d2-fe0f",native:"🗒️"}],version:1},spiral_calendar_pad:{id:"spiral_calendar_pad",name:"Spiral Calendar",keywords:["pad","date","schedule","planning"],skins:[{unified:"1f5d3-fe0f",native:"🗓️"}],version:1},card_index:{id:"card_index",name:"Card Index",keywords:["business","stationery"],skins:[{unified:"1f4c7",native:"📇"}],version:1},chart_with_upwards_trend:{id:"chart_with_upwards_trend",name:"Chart Increasing",keywords:["with","upwards","trend","graph","presentation","stats","recovery","business","economics","money","sales","good","success"],skins:[{unified:"1f4c8",native:"📈"}],version:1},chart_with_downwards_trend:{id:"chart_with_downwards_trend",name:"Chart Decreasing",keywords:["with","downwards","trend","graph","presentation","stats","recession","business","economics","money","sales","bad","failure"],skins:[{unified:"1f4c9",native:"📉"}],version:1},bar_chart:{id:"bar_chart",name:"Bar Chart",keywords:["graph","presentation","stats"],skins:[{unified:"1f4ca",native:"📊"}],version:1},clipboard:{id:"clipboard",name:"Clipboard",keywords:["stationery","documents"],skins:[{unified:"1f4cb",native:"📋"}],version:1},pushpin:{id:"pushpin",name:"Pushpin",keywords:["stationery","mark","here"],skins:[{unified:"1f4cc",native:"📌"}],version:1},round_pushpin:{id:"round_pushpin",name:"Round Pushpin",keywords:["stationery","location","map","here"],skins:[{unified:"1f4cd",native:"📍"}],version:1},paperclip:{id:"paperclip",name:"Paperclip",keywords:["documents","stationery"],skins:[{unified:"1f4ce",native:"📎"}],version:1},linked_paperclips:{id:"linked_paperclips",name:"Linked Paperclips",keywords:["documents","stationery"],skins:[{unified:"1f587-fe0f",native:"🖇️"}],version:1},straight_ruler:{id:"straight_ruler",name:"Straight Ruler",keywords:["stationery","calculate","length","math","school","drawing","architect","sketch"],skins:[{unified:"1f4cf",native:"📏"}],version:1},triangular_ruler:{id:"triangular_ruler",name:"Triangular Ruler",keywords:["stationery","math","architect","sketch"],skins:[{unified:"1f4d0",native:"📐"}],version:1},scissors:{id:"scissors",name:"Scissors",keywords:["stationery","cut"],skins:[{unified:"2702-fe0f",native:"✂️"}],version:1},card_file_box:{id:"card_file_box",name:"Card File Box",keywords:["business","stationery"],skins:[{unified:"1f5c3-fe0f",native:"🗃️"}],version:1},file_cabinet:{id:"file_cabinet",name:"File Cabinet",keywords:["filing","organizing"],skins:[{unified:"1f5c4-fe0f",native:"🗄️"}],version:1},wastebasket:{id:"wastebasket",name:"Wastebasket",keywords:["bin","trash","rubbish","garbage","toss"],skins:[{unified:"1f5d1-fe0f",native:"🗑️"}],version:1},lock:{id:"lock",name:"Lock",keywords:["locked","security","password","padlock"],skins:[{unified:"1f512",native:"🔒"}],version:1},unlock:{id:"unlock",name:"Unlocked",keywords:["unlock","privacy","security"],skins:[{unified:"1f513",native:"🔓"}],version:1},lock_with_ink_pen:{id:"lock_with_ink_pen",name:"Locked with Pen",keywords:["lock","ink","security","secret"],skins:[{unified:"1f50f",native:"🔏"}],version:1},closed_lock_with_key:{id:"closed_lock_with_key",name:"Locked with Key",keywords:["closed","lock","security","privacy"],skins:[{unified:"1f510",native:"🔐"}],version:1},key:{id:"key",name:"Key",keywords:["lock","door","password"],skins:[{unified:"1f511",native:"🔑"}],version:1},old_key:{id:"old_key",name:"Old Key",keywords:["lock","door","password"],skins:[{unified:"1f5dd-fe0f",native:"🗝️"}],version:1},hammer:{id:"hammer",name:"Hammer",keywords:["tools","build","create"],skins:[{unified:"1f528",native:"🔨"}],version:1},axe:{id:"axe",name:"Axe",keywords:["tool","chop","cut"],skins:[{unified:"1fa93",native:"🪓"}],version:12},pick:{id:"pick",name:"Pick",keywords:["tools","dig"],skins:[{unified:"26cf-fe0f",native:"⛏️"}],version:1},hammer_and_pick:{id:"hammer_and_pick",name:"Hammer and Pick",keywords:["tools","build","create"],skins:[{unified:"2692-fe0f",native:"⚒️"}],version:1},hammer_and_wrench:{id:"hammer_and_wrench",name:"Hammer and Wrench",keywords:["tools","build","create"],skins:[{unified:"1f6e0-fe0f",native:"🛠️"}],version:1},dagger_knife:{id:"dagger_knife",name:"Dagger",keywords:["knife","weapon"],skins:[{unified:"1f5e1-fe0f",native:"🗡️"}],version:1},crossed_swords:{id:"crossed_swords",name:"Crossed Swords",keywords:["weapon"],skins:[{unified:"2694-fe0f",native:"⚔️"}],version:1},bomb:{id:"bomb",name:"Bomb",keywords:["boom","explode","explosion","terrorism"],skins:[{unified:"1f4a3",native:"💣"}],version:1},boomerang:{id:"boomerang",name:"Boomerang",keywords:["weapon"],skins:[{unified:"1fa83",native:"🪃"}],version:13},bow_and_arrow:{id:"bow_and_arrow",name:"Bow and Arrow",keywords:["sports"],skins:[{unified:"1f3f9",native:"🏹"}],version:1},shield:{id:"shield",name:"Shield",keywords:["protection","security"],skins:[{unified:"1f6e1-fe0f",native:"🛡️"}],version:1},carpentry_saw:{id:"carpentry_saw",name:"Carpentry Saw",keywords:["cut","chop"],skins:[{unified:"1fa9a",native:"🪚"}],version:13},wrench:{id:"wrench",name:"Wrench",keywords:["tools","diy","ikea","fix","maintainer"],skins:[{unified:"1f527",native:"🔧"}],version:1},screwdriver:{id:"screwdriver",name:"Screwdriver",keywords:["tools"],skins:[{unified:"1fa9b",native:"🪛"}],version:13},nut_and_bolt:{id:"nut_and_bolt",name:"Nut and Bolt",keywords:["handy","tools","fix"],skins:[{unified:"1f529",native:"🔩"}],version:1},gear:{id:"gear",name:"Gear",keywords:["cog"],skins:[{unified:"2699-fe0f",native:"⚙️"}],version:1},compression:{id:"compression",name:"Clamp",keywords:["compression","tool"],skins:[{unified:"1f5dc-fe0f",native:"🗜️"}],version:1},scales:{id:"scales",name:"Balance Scale",keywords:["scales","law","fairness","weight"],skins:[{unified:"2696-fe0f",native:"⚖️"}],version:1},probing_cane:{id:"probing_cane",name:"White Cane",keywords:["probing","accessibility"],skins:[{unified:"1f9af",native:"🦯"}],version:12},link:{id:"link",name:"Link",keywords:["rings","url"],skins:[{unified:"1f517",native:"🔗"}],version:1},chains:{id:"chains",name:"Chains",keywords:["lock","arrest"],skins:[{unified:"26d3-fe0f",native:"⛓️"}],version:1},hook:{id:"hook",name:"Hook",keywords:["tools"],skins:[{unified:"1fa9d",native:"🪝"}],version:13},toolbox:{id:"toolbox",name:"Toolbox",keywords:["tools","diy","fix","maintainer","mechanic"],skins:[{unified:"1f9f0",native:"🧰"}],version:11},magnet:{id:"magnet",name:"Magnet",keywords:["attraction","magnetic"],skins:[{unified:"1f9f2",native:"🧲"}],version:11},ladder:{id:"ladder",name:"Ladder",keywords:["tools"],skins:[{unified:"1fa9c",native:"🪜"}],version:13},alembic:{id:"alembic",name:"Alembic",keywords:["distilling","science","experiment","chemistry"],skins:[{unified:"2697-fe0f",native:"⚗️"}],version:1},test_tube:{id:"test_tube",name:"Test Tube",keywords:["chemistry","experiment","lab","science"],skins:[{unified:"1f9ea",native:"🧪"}],version:11},petri_dish:{id:"petri_dish",name:"Petri Dish",keywords:["bacteria","biology","culture","lab"],skins:[{unified:"1f9eb",native:"🧫"}],version:11},dna:{id:"dna",name:"Dna",keywords:["biologist","genetics","life"],skins:[{unified:"1f9ec",native:"🧬"}],version:11},microscope:{id:"microscope",name:"Microscope",keywords:["laboratory","experiment","zoomin","science","study"],skins:[{unified:"1f52c",native:"🔬"}],version:1},telescope:{id:"telescope",name:"Telescope",keywords:["stars","space","zoom","science","astronomy"],skins:[{unified:"1f52d",native:"🔭"}],version:1},satellite_antenna:{id:"satellite_antenna",name:"Satellite Antenna",keywords:["communication","future","radio","space"],skins:[{unified:"1f4e1",native:"📡"}],version:1},syringe:{id:"syringe",name:"Syringe",keywords:["health","hospital","drugs","blood","medicine","needle","doctor","nurse"],skins:[{unified:"1f489",native:"💉"}],version:1},drop_of_blood:{id:"drop_of_blood",name:"Drop of Blood",keywords:["period","hurt","harm","wound"],skins:[{unified:"1fa78",native:"🩸"}],version:12},pill:{id:"pill",name:"Pill",keywords:["health","medicine","doctor","pharmacy","drug"],skins:[{unified:"1f48a",native:"💊"}],version:1},adhesive_bandage:{id:"adhesive_bandage",name:"Adhesive Bandage",keywords:["heal"],skins:[{unified:"1fa79",native:"🩹"}],version:12},crutch:{id:"crutch",name:"Crutch",keywords:["accessibility","assist"],skins:[{unified:"1fa7c",native:"🩼"}],version:14},stethoscope:{id:"stethoscope",name:"Stethoscope",keywords:["health"],skins:[{unified:"1fa7a",native:"🩺"}],version:12},"x-ray":{id:"x-ray",name:"X-Ray",keywords:["x","ray","skeleton","medicine"],skins:[{unified:"1fa7b",native:"🩻"}],version:14},door:{id:"door",name:"Door",keywords:["house","entry","exit"],skins:[{unified:"1f6aa",native:"🚪"}],version:1},elevator:{id:"elevator",name:"Elevator",keywords:["lift"],skins:[{unified:"1f6d7",native:"🛗"}],version:13},mirror:{id:"mirror",name:"Mirror",keywords:["reflection"],skins:[{unified:"1fa9e",native:"🪞"}],version:13},window:{id:"window",name:"Window",keywords:["scenery"],skins:[{unified:"1fa9f",native:"🪟"}],version:13},bed:{id:"bed",name:"Bed",keywords:["sleep","rest"],skins:[{unified:"1f6cf-fe0f",native:"🛏️"}],version:1},couch_and_lamp:{id:"couch_and_lamp",name:"Couch and Lamp",keywords:["read","chill"],skins:[{unified:"1f6cb-fe0f",native:"🛋️"}],version:1},chair:{id:"chair",name:"Chair",keywords:["sit","furniture"],skins:[{unified:"1fa91",native:"🪑"}],version:12},toilet:{id:"toilet",name:"Toilet",keywords:["restroom","wc","washroom","bathroom","potty"],skins:[{unified:"1f6bd",native:"🚽"}],version:1},plunger:{id:"plunger",name:"Plunger",keywords:["toilet"],skins:[{unified:"1faa0",native:"🪠"}],version:13},shower:{id:"shower",name:"Shower",keywords:["clean","water","bathroom"],skins:[{unified:"1f6bf",native:"🚿"}],version:1},bathtub:{id:"bathtub",name:"Bathtub",keywords:["clean","shower","bathroom"],skins:[{unified:"1f6c1",native:"🛁"}],version:1},mouse_trap:{id:"mouse_trap",name:"Mouse Trap",keywords:["cheese"],skins:[{unified:"1faa4",native:"🪤"}],version:13},razor:{id:"razor",name:"Razor",keywords:["cut"],skins:[{unified:"1fa92",native:"🪒"}],version:12},lotion_bottle:{id:"lotion_bottle",name:"Lotion Bottle",keywords:["moisturizer","sunscreen"],skins:[{unified:"1f9f4",native:"🧴"}],version:11},safety_pin:{id:"safety_pin",name:"Safety Pin",keywords:["diaper"],skins:[{unified:"1f9f7",native:"🧷"}],version:11},broom:{id:"broom",name:"Broom",keywords:["cleaning","sweeping","witch"],skins:[{unified:"1f9f9",native:"🧹"}],version:11},basket:{id:"basket",name:"Basket",keywords:["laundry"],skins:[{unified:"1f9fa",native:"🧺"}],version:11},roll_of_paper:{id:"roll_of_paper",name:"Roll of Paper",keywords:[],skins:[{unified:"1f9fb",native:"🧻"}],version:11},bucket:{id:"bucket",name:"Bucket",keywords:["water","container"],skins:[{unified:"1faa3",native:"🪣"}],version:13},soap:{id:"soap",name:"Soap",keywords:["bar","bathing","cleaning","lather"],skins:[{unified:"1f9fc",native:"🧼"}],version:11},bubbles:{id:"bubbles",name:"Bubbles",keywords:["soap","fun","carbonation","sparkling"],skins:[{unified:"1fae7",native:"🫧"}],version:14},toothbrush:{id:"toothbrush",name:"Toothbrush",keywords:["hygiene","dental"],skins:[{unified:"1faa5",native:"🪥"}],version:13},sponge:{id:"sponge",name:"Sponge",keywords:["absorbing","cleaning","porous"],skins:[{unified:"1f9fd",native:"🧽"}],version:11},fire_extinguisher:{id:"fire_extinguisher",name:"Fire Extinguisher",keywords:["quench"],skins:[{unified:"1f9ef",native:"🧯"}],version:11},shopping_trolley:{id:"shopping_trolley",name:"Shopping Cart",keywords:["trolley"],skins:[{unified:"1f6d2",native:"🛒"}],version:3},smoking:{id:"smoking",name:"Cigarette",keywords:["smoking","kills","tobacco","joint","smoke"],skins:[{unified:"1f6ac",native:"🚬"}],version:1},coffin:{id:"coffin",name:"Coffin",keywords:["vampire","dead","die","death","rip","graveyard","cemetery","casket","funeral","box"],skins:[{unified:"26b0-fe0f",native:"⚰️"}],version:1},headstone:{id:"headstone",name:"Headstone",keywords:["death","rip","grave"],skins:[{unified:"1faa6",native:"🪦"}],version:13},funeral_urn:{id:"funeral_urn",name:"Funeral Urn",keywords:["dead","die","death","rip","ashes"],skins:[{unified:"26b1-fe0f",native:"⚱️"}],version:1},nazar_amulet:{id:"nazar_amulet",name:"Nazar Amulet",keywords:["bead","charm"],skins:[{unified:"1f9ff",native:"🧿"}],version:11},hamsa:{id:"hamsa",name:"Hamsa",keywords:["religion","protection"],skins:[{unified:"1faac",native:"🪬"}],version:14},moyai:{id:"moyai",name:"Moai",keywords:["moyai","rock","easter","island"],skins:[{unified:"1f5ff",native:"🗿"}],version:1},placard:{id:"placard",name:"Placard",keywords:["announcement"],skins:[{unified:"1faa7",native:"🪧"}],version:13},identification_card:{id:"identification_card",name:"Identification Card",keywords:["document"],skins:[{unified:"1faaa",native:"🪪"}],version:14},atm:{id:"atm",name:"Atm Sign",keywords:["money","sales","cash","blue","square","payment","bank"],skins:[{unified:"1f3e7",native:"🏧"}],version:1},put_litter_in_its_place:{id:"put_litter_in_its_place",name:"Litter in Bin Sign",keywords:["put","its","place","blue","square","human","info"],skins:[{unified:"1f6ae",native:"🚮"}],version:1},potable_water:{id:"potable_water",name:"Potable Water",keywords:["blue","square","liquid","restroom","cleaning","faucet"],skins:[{unified:"1f6b0",native:"🚰"}],version:1},wheelchair:{id:"wheelchair",name:"Wheelchair Symbol",keywords:["blue","square","disabled","accessibility"],skins:[{unified:"267f",native:"♿"}],version:1},mens:{id:"mens",name:"Men’s Room",keywords:["mens","men","s","toilet","restroom","wc","blue","square","gender","male"],skins:[{unified:"1f6b9",native:"🚹"}],version:1},womens:{id:"womens",name:"Women’s Room",keywords:["womens","women","s","purple","square","woman","female","toilet","loo","restroom","gender"],skins:[{unified:"1f6ba",native:"🚺"}],version:1},restroom:{id:"restroom",name:"Restroom",keywords:["blue","square","toilet","refresh","wc","gender"],skins:[{unified:"1f6bb",native:"🚻"}],version:1},baby_symbol:{id:"baby_symbol",name:"Baby Symbol",keywords:["orange","square","child"],skins:[{unified:"1f6bc",native:"🚼"}],version:1},wc:{id:"wc",name:"Water Closet",keywords:["wc","toilet","restroom","blue","square"],skins:[{unified:"1f6be",native:"🚾"}],version:1},passport_control:{id:"passport_control",name:"Passport Control",keywords:["custom","blue","square"],skins:[{unified:"1f6c2",native:"🛂"}],version:1},customs:{id:"customs",name:"Customs",keywords:["passport","border","blue","square"],skins:[{unified:"1f6c3",native:"🛃"}],version:1},baggage_claim:{id:"baggage_claim",name:"Baggage Claim",keywords:["blue","square","airport","transport"],skins:[{unified:"1f6c4",native:"🛄"}],version:1},left_luggage:{id:"left_luggage",name:"Left Luggage",keywords:["blue","square","travel"],skins:[{unified:"1f6c5",native:"🛅"}],version:1},warning:{id:"warning",name:"Warning",keywords:["exclamation","wip","alert","error","problem","issue"],skins:[{unified:"26a0-fe0f",native:"⚠️"}],version:1},children_crossing:{id:"children_crossing",name:"Children Crossing",keywords:["school","warning","danger","sign","driving","yellow","diamond"],skins:[{unified:"1f6b8",native:"🚸"}],version:1},no_entry:{id:"no_entry",name:"No Entry",keywords:["limit","security","privacy","bad","denied","stop","circle"],skins:[{unified:"26d4",native:"⛔"}],version:1},no_entry_sign:{id:"no_entry_sign",name:"Prohibited",keywords:["no","entry","sign","forbid","stop","limit","denied","disallow","circle"],skins:[{unified:"1f6ab",native:"🚫"}],version:1},no_bicycles:{id:"no_bicycles",name:"No Bicycles",keywords:["cyclist","prohibited","circle"],skins:[{unified:"1f6b3",native:"🚳"}],version:1},no_smoking:{id:"no_smoking",name:"No Smoking",keywords:["cigarette","blue","square","smell","smoke"],skins:[{unified:"1f6ad",native:"🚭"}],version:1},do_not_litter:{id:"do_not_litter",name:"No Littering",keywords:["do","not","litter","trash","bin","garbage","circle"],skins:[{unified:"1f6af",native:"🚯"}],version:1},"non-potable_water":{id:"non-potable_water",name:"Non-Potable Water",keywords:["non","potable","drink","faucet","tap","circle"],skins:[{unified:"1f6b1",native:"🚱"}],version:1},no_pedestrians:{id:"no_pedestrians",name:"No Pedestrians",keywords:["rules","crossing","walking","circle"],skins:[{unified:"1f6b7",native:"🚷"}],version:1},no_mobile_phones:{id:"no_mobile_phones",name:"No Mobile Phones",keywords:["iphone","mute","circle"],skins:[{unified:"1f4f5",native:"📵"}],version:1},underage:{id:"underage",name:"No One Under Eighteen",keywords:["underage","18","drink","pub","night","minor","circle"],skins:[{unified:"1f51e",native:"🔞"}],version:1},radioactive_sign:{id:"radioactive_sign",name:"Radioactive",keywords:["sign","nuclear","danger"],skins:[{unified:"2622-fe0f",native:"☢️"}],version:1},biohazard_sign:{id:"biohazard_sign",name:"Biohazard",keywords:["sign","danger"],skins:[{unified:"2623-fe0f",native:"☣️"}],version:1},arrow_up:{id:"arrow_up",name:"Up Arrow",keywords:["blue","square","continue","top","direction"],skins:[{unified:"2b06-fe0f",native:"⬆️"}],version:1},arrow_upper_right:{id:"arrow_upper_right",name:"Up-Right Arrow",keywords:["upper","right","up","blue","square","point","direction","diagonal","northeast"],skins:[{unified:"2197-fe0f",native:"↗️"}],version:1},arrow_right:{id:"arrow_right",name:"Right Arrow",keywords:["blue","square","next"],skins:[{unified:"27a1-fe0f",native:"➡️"}],version:1},arrow_lower_right:{id:"arrow_lower_right",name:"South East Arrow",keywords:["lower","right","down","blue","square","direction","diagonal","southeast"],skins:[{unified:"2198-fe0f",native:"↘️"}],version:1},arrow_down:{id:"arrow_down",name:"Down Arrow",keywords:["blue","square","direction","bottom"],skins:[{unified:"2b07-fe0f",native:"⬇️"}],version:1},arrow_lower_left:{id:"arrow_lower_left",name:"Down-Left Arrow",keywords:["lower","left","down","blue","square","direction","diagonal","southwest"],skins:[{unified:"2199-fe0f",native:"↙️"}],version:1},arrow_left:{id:"arrow_left",name:"Left Arrow",keywords:["blue","square","previous","back"],skins:[{unified:"2b05-fe0f",native:"⬅️"}],version:1},arrow_upper_left:{id:"arrow_upper_left",name:"Up-Left Arrow",keywords:["upper","left","up","blue","square","point","direction","diagonal","northwest"],skins:[{unified:"2196-fe0f",native:"↖️"}],version:1},arrow_up_down:{id:"arrow_up_down",name:"Up Down Arrow",keywords:["blue","square","direction","way","vertical"],skins:[{unified:"2195-fe0f",native:"↕️"}],version:1},left_right_arrow:{id:"left_right_arrow",name:"Left Right Arrow",keywords:["shape","direction","horizontal","sideways"],skins:[{unified:"2194-fe0f",native:"↔️"}],version:1},leftwards_arrow_with_hook:{id:"leftwards_arrow_with_hook",name:"Right Arrow Curving Left",keywords:["leftwards","with","hook","back","return","blue","square","undo","enter"],skins:[{unified:"21a9-fe0f",native:"↩️"}],version:1},arrow_right_hook:{id:"arrow_right_hook",name:"Left Arrow Curving Right",keywords:["hook","blue","square","return","rotate","direction"],skins:[{unified:"21aa-fe0f",native:"↪️"}],version:1},arrow_heading_up:{id:"arrow_heading_up",name:"Right Arrow Curving Up",keywords:["heading","blue","square","direction","top"],skins:[{unified:"2934-fe0f",native:"⤴️"}],version:1},arrow_heading_down:{id:"arrow_heading_down",name:"Right Arrow Curving Down",keywords:["heading","blue","square","direction","bottom"],skins:[{unified:"2935-fe0f",native:"⤵️"}],version:1},arrows_clockwise:{id:"arrows_clockwise",name:"Clockwise Vertical Arrows",keywords:["sync","cycle","round","repeat"],skins:[{unified:"1f503",native:"🔃"}],version:1},arrows_counterclockwise:{id:"arrows_counterclockwise",name:"Counterclockwise Arrows Button",keywords:["blue","square","sync","cycle"],skins:[{unified:"1f504",native:"🔄"}],version:1},back:{id:"back",name:"Back Arrow",keywords:["words","return"],skins:[{unified:"1f519",native:"🔙"}],version:1},end:{id:"end",name:"End Arrow",keywords:["words"],skins:[{unified:"1f51a",native:"🔚"}],version:1},on:{id:"on",name:"On! Arrow",keywords:["on","words"],skins:[{unified:"1f51b",native:"🔛"}],version:1},soon:{id:"soon",name:"Soon Arrow",keywords:["words"],skins:[{unified:"1f51c",native:"🔜"}],version:1},top:{id:"top",name:"Top Arrow",keywords:["words","blue","square"],skins:[{unified:"1f51d",native:"🔝"}],version:1},place_of_worship:{id:"place_of_worship",name:"Place of Worship",keywords:["religion","church","temple","prayer"],skins:[{unified:"1f6d0",native:"🛐"}],version:1},atom_symbol:{id:"atom_symbol",name:"Atom Symbol",keywords:["science","physics","chemistry"],skins:[{unified:"269b-fe0f",native:"⚛️"}],version:1},om_symbol:{id:"om_symbol",name:"Om",keywords:["symbol","hinduism","buddhism","sikhism","jainism"],skins:[{unified:"1f549-fe0f",native:"🕉️"}],version:1},star_of_david:{id:"star_of_david",name:"Star of David",keywords:["judaism"],skins:[{unified:"2721-fe0f",native:"✡️"}],version:1},wheel_of_dharma:{id:"wheel_of_dharma",name:"Wheel of Dharma",keywords:["hinduism","buddhism","sikhism","jainism"],skins:[{unified:"2638-fe0f",native:"☸️"}],version:1},yin_yang:{id:"yin_yang",name:"Yin Yang",keywords:["balance"],skins:[{unified:"262f-fe0f",native:"☯️"}],version:1},latin_cross:{id:"latin_cross",name:"Latin Cross",keywords:["christianity"],skins:[{unified:"271d-fe0f",native:"✝️"}],version:1},orthodox_cross:{id:"orthodox_cross",name:"Orthodox Cross",keywords:["suppedaneum","religion"],skins:[{unified:"2626-fe0f",native:"☦️"}],version:1},star_and_crescent:{id:"star_and_crescent",name:"Star and Crescent",keywords:["islam"],skins:[{unified:"262a-fe0f",native:"☪️"}],version:1},peace_symbol:{id:"peace_symbol",name:"Peace Symbol",keywords:["hippie"],skins:[{unified:"262e-fe0f",native:"☮️"}],version:1},menorah_with_nine_branches:{id:"menorah_with_nine_branches",name:"Menorah",keywords:["with","nine","branches","hanukkah","candles","jewish"],skins:[{unified:"1f54e",native:"🕎"}],version:1},six_pointed_star:{id:"six_pointed_star",name:"Dotted Six-Pointed Star",keywords:["six","pointed","purple","square","religion","jewish","hexagram"],skins:[{unified:"1f52f",native:"🔯"}],version:1},khanda:{id:"khanda",name:"Khanda",keywords:["Sikhism","religion"],skins:[{unified:"1faaf",native:"🪯"}],version:15},aries:{id:"aries",name:"Aries",keywords:["sign","purple","square","zodiac","astrology"],skins:[{unified:"2648",native:"♈"}],version:1},taurus:{id:"taurus",name:"Taurus",keywords:["purple","square","sign","zodiac","astrology"],skins:[{unified:"2649",native:"♉"}],version:1},gemini:{id:"gemini",name:"Gemini",keywords:["sign","zodiac","purple","square","astrology"],skins:[{unified:"264a",native:"♊"}],version:1},cancer:{id:"cancer",name:"Cancer",keywords:["sign","zodiac","purple","square","astrology"],skins:[{unified:"264b",native:"♋"}],version:1},leo:{id:"leo",name:"Leo",keywords:["sign","purple","square","zodiac","astrology"],skins:[{unified:"264c",native:"♌"}],version:1},virgo:{id:"virgo",name:"Virgo",keywords:["sign","zodiac","purple","square","astrology"],skins:[{unified:"264d",native:"♍"}],version:1},libra:{id:"libra",name:"Libra",keywords:["sign","purple","square","zodiac","astrology"],skins:[{unified:"264e",native:"♎"}],version:1},scorpius:{id:"scorpius",name:"Scorpio",keywords:["scorpius","sign","zodiac","purple","square","astrology"],skins:[{unified:"264f",native:"♏"}],version:1},sagittarius:{id:"sagittarius",name:"Sagittarius",keywords:["sign","zodiac","purple","square","astrology"],skins:[{unified:"2650",native:"♐"}],version:1},capricorn:{id:"capricorn",name:"Capricorn",keywords:["sign","zodiac","purple","square","astrology"],skins:[{unified:"2651",native:"♑"}],version:1},aquarius:{id:"aquarius",name:"Aquarius",keywords:["sign","purple","square","zodiac","astrology"],skins:[{unified:"2652",native:"♒"}],version:1},pisces:{id:"pisces",name:"Pisces",keywords:["purple","square","sign","zodiac","astrology"],skins:[{unified:"2653",native:"♓"}],version:1},ophiuchus:{id:"ophiuchus",name:"Ophiuchus",keywords:["sign","purple","square","constellation","astrology"],skins:[{unified:"26ce",native:"⛎"}],version:1},twisted_rightwards_arrows:{id:"twisted_rightwards_arrows",name:"Shuffle Tracks Button",keywords:["twisted","rightwards","arrows","blue","square","music","random"],skins:[{unified:"1f500",native:"🔀"}],version:1},repeat:{id:"repeat",name:"Repeat Button",keywords:["loop","record"],skins:[{unified:"1f501",native:"🔁"}],version:1},repeat_one:{id:"repeat_one",name:"Repeat Single Button",keywords:["one","blue","square","loop"],skins:[{unified:"1f502",native:"🔂"}],version:1},arrow_forward:{id:"arrow_forward",name:"Play Button",keywords:["arrow","forward","blue","square","right","direction"],skins:[{unified:"25b6-fe0f",native:"▶️"}],version:1},fast_forward:{id:"fast_forward",name:"Fast-Forward Button",keywords:["fast","forward","blue","square","play","speed","continue"],skins:[{unified:"23e9",native:"⏩"}],version:1},black_right_pointing_double_triangle_with_vertical_bar:{id:"black_right_pointing_double_triangle_with_vertical_bar",name:"Next Track Button",keywords:["black","right","pointing","double","triangle","with","vertical","bar","forward","blue","square"],skins:[{unified:"23ed-fe0f",native:"⏭️"}],version:1},black_right_pointing_triangle_with_double_vertical_bar:{id:"black_right_pointing_triangle_with_double_vertical_bar",name:"Play or Pause Button",keywords:["black","right","pointing","triangle","with","double","vertical","bar","blue","square"],skins:[{unified:"23ef-fe0f",native:"⏯️"}],version:1},arrow_backward:{id:"arrow_backward",name:"Reverse Button",keywords:["arrow","backward","blue","square","left","direction"],skins:[{unified:"25c0-fe0f",native:"◀️"}],version:1},rewind:{id:"rewind",name:"Fast Reverse Button",keywords:["rewind","play","blue","square"],skins:[{unified:"23ea",native:"⏪"}],version:1},black_left_pointing_double_triangle_with_vertical_bar:{id:"black_left_pointing_double_triangle_with_vertical_bar",name:"Last Track Button",keywords:["black","left","pointing","double","triangle","with","vertical","bar","backward"],skins:[{unified:"23ee-fe0f",native:"⏮️"}],version:1},arrow_up_small:{id:"arrow_up_small",name:"Upwards Button",keywords:["arrow","up","small","blue","square","triangle","direction","point","forward","top"],skins:[{unified:"1f53c",native:"🔼"}],version:1},arrow_double_up:{id:"arrow_double_up",name:"Fast Up Button",keywords:["arrow","double","blue","square","direction","top"],skins:[{unified:"23eb",native:"⏫"}],version:1},arrow_down_small:{id:"arrow_down_small",name:"Downwards Button",keywords:["arrow","down","small","blue","square","direction","bottom"],skins:[{unified:"1f53d",native:"🔽"}],version:1},arrow_double_down:{id:"arrow_double_down",name:"Fast Down Button",keywords:["arrow","double","blue","square","direction","bottom"],skins:[{unified:"23ec",native:"⏬"}],version:1},double_vertical_bar:{id:"double_vertical_bar",name:"Pause Button",keywords:["double","vertical","bar","blue","square"],skins:[{unified:"23f8-fe0f",native:"⏸️"}],version:1},black_square_for_stop:{id:"black_square_for_stop",name:"Stop Button",keywords:["black","square","for","blue"],skins:[{unified:"23f9-fe0f",native:"⏹️"}],version:1},black_circle_for_record:{id:"black_circle_for_record",name:"Record Button",keywords:["black","circle","for","blue","square"],skins:[{unified:"23fa-fe0f",native:"⏺️"}],version:1},eject:{id:"eject",name:"Eject Button",keywords:["blue","square"],skins:[{unified:"23cf-fe0f",native:"⏏️"}],version:1},cinema:{id:"cinema",name:"Cinema",keywords:["blue","square","record","film","movie","curtain","stage","theater"],skins:[{unified:"1f3a6",native:"🎦"}],version:1},low_brightness:{id:"low_brightness",name:"Dim Button",keywords:["low","brightness","sun","afternoon","warm","summer"],skins:[{unified:"1f505",native:"🔅"}],version:1},high_brightness:{id:"high_brightness",name:"Bright Button",keywords:["high","brightness","sun","light"],skins:[{unified:"1f506",native:"🔆"}],version:1},signal_strength:{id:"signal_strength",name:"Antenna Bars",keywords:["signal","strength","blue","square","reception","phone","internet","connection","wifi","bluetooth"],skins:[{unified:"1f4f6",native:"📶"}],version:1},wireless:{id:"wireless",name:"Wireless",keywords:["wifi","internet","contactless","signal"],skins:[{unified:"1f6dc",native:"🛜"}],version:15},vibration_mode:{id:"vibration_mode",name:"Vibration Mode",keywords:["orange","square","phone"],skins:[{unified:"1f4f3",native:"📳"}],version:1},mobile_phone_off:{id:"mobile_phone_off",name:"Mobile Phone off",keywords:["mute","orange","square","silence","quiet"],skins:[{unified:"1f4f4",native:"📴"}],version:1},female_sign:{id:"female_sign",name:"Female Sign",keywords:["woman","women","lady","girl"],skins:[{unified:"2640-fe0f",native:"♀️"}],version:4},male_sign:{id:"male_sign",name:"Male Sign",keywords:["man","boy","men"],skins:[{unified:"2642-fe0f",native:"♂️"}],version:4},transgender_symbol:{id:"transgender_symbol",name:"Transgender Symbol",keywords:["lgbtq"],skins:[{unified:"26a7-fe0f",native:"⚧️"}],version:13},heavy_multiplication_x:{id:"heavy_multiplication_x",name:"Multiply",keywords:["heavy","multiplication","x","sign","math","calculation"],skins:[{unified:"2716-fe0f",native:"✖️"}],version:1},heavy_plus_sign:{id:"heavy_plus_sign",name:"Plus",keywords:["heavy","sign","math","calculation","addition","more","increase"],skins:[{unified:"2795",native:"➕"}],version:1},heavy_minus_sign:{id:"heavy_minus_sign",name:"Minus",keywords:["heavy","sign","math","calculation","subtract","less"],skins:[{unified:"2796",native:"➖"}],version:1},heavy_division_sign:{id:"heavy_division_sign",name:"Divide",keywords:["heavy","division","sign","math","calculation"],skins:[{unified:"2797",native:"➗"}],version:1},heavy_equals_sign:{id:"heavy_equals_sign",name:"Heavy Equals Sign",keywords:["math"],skins:[{unified:"1f7f0",native:"🟰"}],version:14},infinity:{id:"infinity",name:"Infinity",keywords:["forever"],skins:[{unified:"267e-fe0f",native:"♾️"}],version:11},bangbang:{id:"bangbang",name:"Double Exclamation Mark",keywords:["bangbang","surprise"],skins:[{unified:"203c-fe0f",native:"‼️"}],version:1},interrobang:{id:"interrobang",name:"Exclamation Question Mark",keywords:["interrobang","wat","punctuation","surprise"],skins:[{unified:"2049-fe0f",native:"⁉️"}],version:1},question:{id:"question",name:"Red Question Mark",keywords:["doubt","confused"],skins:[{unified:"2753",native:"❓"}],version:1},grey_question:{id:"grey_question",name:"White Question Mark",keywords:["grey","doubts","gray","huh","confused"],skins:[{unified:"2754",native:"❔"}],version:1},grey_exclamation:{id:"grey_exclamation",name:"White Exclamation Mark",keywords:["grey","surprise","punctuation","gray","wow","warning"],skins:[{unified:"2755",native:"❕"}],version:1},exclamation:{id:"exclamation",name:"Red Exclamation Mark",keywords:["heavy","danger","surprise","punctuation","wow","warning"],skins:[{unified:"2757",native:"❗"}],version:1},wavy_dash:{id:"wavy_dash",name:"Wavy Dash",keywords:["draw","line","moustache","mustache","squiggle","scribble"],skins:[{unified:"3030-fe0f",native:"〰️"}],version:1},currency_exchange:{id:"currency_exchange",name:"Currency Exchange",keywords:["money","sales","dollar","travel"],skins:[{unified:"1f4b1",native:"💱"}],version:1},heavy_dollar_sign:{id:"heavy_dollar_sign",name:"Heavy Dollar Sign",keywords:["money","sales","payment","currency","buck"],skins:[{unified:"1f4b2",native:"💲"}],version:1},medical_symbol:{id:"medical_symbol",name:"Medical Symbol",keywords:["staff","of","aesculapius","health","hospital"],skins:[{unified:"2695-fe0f",native:"⚕️"}],version:4},recycle:{id:"recycle",name:"Recycling Symbol",keywords:["recycle","arrow","environment","garbage","trash"],skins:[{unified:"267b-fe0f",native:"♻️"}],version:1},fleur_de_lis:{id:"fleur_de_lis",name:"Fleur-De-Lis",keywords:["fleur","de","lis","decorative","scout"],skins:[{unified:"269c-fe0f",native:"⚜️"}],version:1},trident:{id:"trident",name:"Trident Emblem",keywords:["weapon","spear"],skins:[{unified:"1f531",native:"🔱"}],version:1},name_badge:{id:"name_badge",name:"Name Badge",keywords:["fire","forbid"],skins:[{unified:"1f4db",native:"📛"}],version:1},beginner:{id:"beginner",name:"Japanese Symbol for Beginner",keywords:["badge","shield"],skins:[{unified:"1f530",native:"🔰"}],version:1},o:{id:"o",name:"Hollow Red Circle",keywords:["o","round"],skins:[{unified:"2b55",native:"⭕"}],version:1},white_check_mark:{id:"white_check_mark",name:"Check Mark Button",keywords:["white","green","square","ok","agree","vote","election","answer","tick"],skins:[{unified:"2705",native:"✅"}],version:1},ballot_box_with_check:{id:"ballot_box_with_check",name:"Check Box with Check",keywords:["ballot","ok","agree","confirm","black","square","vote","election","yes","tick"],skins:[{unified:"2611-fe0f",native:"☑️"}],version:1},heavy_check_mark:{id:"heavy_check_mark",name:"Check Mark",keywords:["heavy","ok","nike","answer","yes","tick"],skins:[{unified:"2714-fe0f",native:"✔️"}],version:1},x:{id:"x",name:"Cross Mark",keywords:["x","no","delete","remove","cancel","red"],skins:[{unified:"274c",native:"❌"}],version:1},negative_squared_cross_mark:{id:"negative_squared_cross_mark",name:"Cross Mark Button",keywords:["negative","squared","x","green","square","no","deny"],skins:[{unified:"274e",native:"❎"}],version:1},curly_loop:{id:"curly_loop",name:"Curly Loop",keywords:["scribble","draw","shape","squiggle"],skins:[{unified:"27b0",native:"➰"}],version:1},loop:{id:"loop",name:"Double Curly Loop",keywords:["tape","cassette"],skins:[{unified:"27bf",native:"➿"}],version:1},part_alternation_mark:{id:"part_alternation_mark",name:"Part Alternation Mark",keywords:["graph","presentation","stats","business","economics","bad"],skins:[{unified:"303d-fe0f",native:"〽️"}],version:1},eight_spoked_asterisk:{id:"eight_spoked_asterisk",name:"Eight Spoked Asterisk",keywords:["star","sparkle","green","square"],skins:[{unified:"2733-fe0f",native:"✳️"}],version:1},eight_pointed_black_star:{id:"eight_pointed_black_star",name:"Eight-Pointed Star",keywords:["eight","pointed","black","orange","square","shape","polygon"],skins:[{unified:"2734-fe0f",native:"✴️"}],version:1},sparkle:{id:"sparkle",name:"Sparkle",keywords:["stars","green","square","awesome","good","fireworks"],skins:[{unified:"2747-fe0f",native:"❇️"}],version:1},copyright:{id:"copyright",name:"Copyright",keywords:["ip","license","circle","law","legal"],skins:[{unified:"00a9-fe0f",native:"©️"}],version:1},registered:{id:"registered",name:"Registered",keywords:["alphabet","circle"],skins:[{unified:"00ae-fe0f",native:"®️"}],version:1},tm:{id:"tm",name:"Trade Mark",keywords:["tm","trademark","brand","law","legal"],skins:[{unified:"2122-fe0f",native:"™️"}],version:1},hash:{id:"hash",name:"Hash Key",keywords:["keycap","","symbol","blue","square","twitter"],skins:[{unified:"0023-fe0f-20e3",native:"#️⃣"}],version:1},keycap_star:{id:"keycap_star",name:"Keycap: *",keywords:["keycap","star",""],skins:[{unified:"002a-fe0f-20e3",native:"*️⃣"}],version:2},zero:{id:"zero",name:"Keycap 0",keywords:["zero","numbers","blue","square","null"],skins:[{unified:"0030-fe0f-20e3",native:"0️⃣"}],version:1},one:{id:"one",name:"Keycap 1",keywords:["one","blue","square","numbers"],skins:[{unified:"0031-fe0f-20e3",native:"1️⃣"}],version:1},two:{id:"two",name:"Keycap 2",keywords:["two","numbers","prime","blue","square"],skins:[{unified:"0032-fe0f-20e3",native:"2️⃣"}],version:1},three:{id:"three",name:"Keycap 3",keywords:["three","numbers","prime","blue","square"],skins:[{unified:"0033-fe0f-20e3",native:"3️⃣"}],version:1},four:{id:"four",name:"Keycap 4",keywords:["four","numbers","blue","square"],skins:[{unified:"0034-fe0f-20e3",native:"4️⃣"}],version:1},five:{id:"five",name:"Keycap 5",keywords:["five","numbers","blue","square","prime"],skins:[{unified:"0035-fe0f-20e3",native:"5️⃣"}],version:1},six:{id:"six",name:"Keycap 6",keywords:["six","numbers","blue","square"],skins:[{unified:"0036-fe0f-20e3",native:"6️⃣"}],version:1},seven:{id:"seven",name:"Keycap 7",keywords:["seven","numbers","blue","square","prime"],skins:[{unified:"0037-fe0f-20e3",native:"7️⃣"}],version:1},eight:{id:"eight",name:"Keycap 8",keywords:["eight","blue","square","numbers"],skins:[{unified:"0038-fe0f-20e3",native:"8️⃣"}],version:1},nine:{id:"nine",name:"Keycap 9",keywords:["nine","blue","square","numbers"],skins:[{unified:"0039-fe0f-20e3",native:"9️⃣"}],version:1},keycap_ten:{id:"keycap_ten",name:"Keycap 10",keywords:["ten","numbers","blue","square"],skins:[{unified:"1f51f",native:"🔟"}],version:1},capital_abcd:{id:"capital_abcd",name:"Input Latin Uppercase",keywords:["capital","abcd","alphabet","words","blue","square"],skins:[{unified:"1f520",native:"🔠"}],version:1},abcd:{id:"abcd",name:"Input Latin Lowercase",keywords:["abcd","blue","square","alphabet"],skins:[{unified:"1f521",native:"🔡"}],version:1},symbols:{id:"symbols",name:"Input Symbols",keywords:["blue","square","music","note","ampersand","percent","glyphs","characters"],skins:[{unified:"1f523",native:"🔣"}],version:1},abc:{id:"abc",name:"Input Latin Letters",keywords:["abc","blue","square","alphabet"],skins:[{unified:"1f524",native:"🔤"}],version:1},a:{id:"a",name:"A Button (blood Type)",keywords:["red","square","alphabet","letter"],skins:[{unified:"1f170-fe0f",native:"🅰️"}],version:1},ab:{id:"ab",name:"Negative Squared Ab",keywords:["button","red","square","alphabet"],skins:[{unified:"1f18e",native:"🆎"}],version:1},b:{id:"b",name:"B Button (blood Type)",keywords:["red","square","alphabet","letter"],skins:[{unified:"1f171-fe0f",native:"🅱️"}],version:1},cl:{id:"cl",name:"Cl Button",keywords:["alphabet","words","red","square"],skins:[{unified:"1f191",native:"🆑"}],version:1},cool:{id:"cool",name:"Cool Button",keywords:["words","blue","square"],skins:[{unified:"1f192",native:"🆒"}],version:1},free:{id:"free",name:"Free Button",keywords:["blue","square","words"],skins:[{unified:"1f193",native:"🆓"}],version:1},information_source:{id:"information_source",name:"Information",keywords:["source","blue","square","alphabet","letter"],skins:[{unified:"2139-fe0f",native:"ℹ️"}],version:1},id:{id:"id",name:"Id Button",keywords:["purple","square","words"],skins:[{unified:"1f194",native:"🆔"}],version:1},m:{id:"m",name:"Circled M",keywords:["alphabet","blue","circle","letter"],skins:[{unified:"24c2-fe0f",native:"Ⓜ️"}],version:1},new:{id:"new",name:"New Button",keywords:["blue","square","words","start"],skins:[{unified:"1f195",native:"🆕"}],version:1},ng:{id:"ng",name:"Ng Button",keywords:["blue","square","words","shape","icon"],skins:[{unified:"1f196",native:"🆖"}],version:1},o2:{id:"o2",name:"O Button (blood Type)",keywords:["o2","alphabet","red","square","letter"],skins:[{unified:"1f17e-fe0f",native:"🅾️"}],version:1},ok:{id:"ok",name:"Ok Button",keywords:["good","agree","yes","blue","square"],skins:[{unified:"1f197",native:"🆗"}],version:1},parking:{id:"parking",name:"P Button",keywords:["parking","cars","blue","square","alphabet","letter"],skins:[{unified:"1f17f-fe0f",native:"🅿️"}],version:1},sos:{id:"sos",name:"Sos Button",keywords:["help","red","square","words","emergency","911"],skins:[{unified:"1f198",native:"🆘"}],version:1},up:{id:"up",name:"Up! Button",keywords:["up","blue","square","above","high"],skins:[{unified:"1f199",native:"🆙"}],version:1},vs:{id:"vs",name:"Vs Button",keywords:["words","orange","square"],skins:[{unified:"1f19a",native:"🆚"}],version:1},koko:{id:"koko",name:"Squared Katakana Koko",keywords:["japanese","here","button","blue","square","destination"],skins:[{unified:"1f201",native:"🈁"}],version:1},sa:{id:"sa",name:"Squared Katakana Sa",keywords:["japanese","service","charge","button","blue","square"],skins:[{unified:"1f202-fe0f",native:"🈂️"}],version:1},u6708:{id:"u6708",name:"Japanese “monthly Amount” Button",keywords:["u6708","monthly","amount","chinese","month","moon","orange","square","kanji"],skins:[{unified:"1f237-fe0f",native:"🈷️"}],version:1},u6709:{id:"u6709",name:"Squared Cjk Unified Ideograph-6709",keywords:["u6709","japanese","not","free","of","charge","button","orange","square","chinese","have","kanji"],skins:[{unified:"1f236",native:"🈶"}],version:1},u6307:{id:"u6307",name:"Japanese “reserved” Button",keywords:["u6307","reserved","chinese","point","green","square","kanji"],skins:[{unified:"1f22f",native:"🈯"}],version:1},ideograph_advantage:{id:"ideograph_advantage",name:"Japanese “bargain” Button",keywords:["ideograph","advantage","bargain","chinese","kanji","obtain","get","circle"],skins:[{unified:"1f250",native:"🉐"}],version:1},u5272:{id:"u5272",name:"Japanese “discount” Button",keywords:["u5272","discount","cut","divide","chinese","kanji","pink","square"],skins:[{unified:"1f239",native:"🈹"}],version:1},u7121:{id:"u7121",name:"Japanese “free of Charge” Button",keywords:["u7121","free","charge","nothing","chinese","kanji","orange","square"],skins:[{unified:"1f21a",native:"🈚"}],version:1},u7981:{id:"u7981",name:"Japanese “prohibited” Button",keywords:["u7981","prohibited","kanji","chinese","forbidden","limit","restricted","red","square"],skins:[{unified:"1f232",native:"🈲"}],version:1},accept:{id:"accept",name:"Circled Ideograph Accept",keywords:["japanese","acceptable","button","ok","good","chinese","kanji","agree","yes","orange","circle"],skins:[{unified:"1f251",native:"🉑"}],version:1},u7533:{id:"u7533",name:"Japanese “application” Button",keywords:["u7533","application","chinese","kanji","orange","square"],skins:[{unified:"1f238",native:"🈸"}],version:1},u5408:{id:"u5408",name:"Japanese “passing Grade” Button",keywords:["u5408","passing","grade","chinese","join","kanji","red","square"],skins:[{unified:"1f234",native:"🈴"}],version:1},u7a7a:{id:"u7a7a",name:"Japanese “vacancy” Button",keywords:["u7a7a","vacancy","kanji","chinese","empty","sky","blue","square"],skins:[{unified:"1f233",native:"🈳"}],version:1},congratulations:{id:"congratulations",name:"Circled Ideograph Congratulation",keywords:["congratulations","japanese","button","chinese","kanji","red","circle"],skins:[{unified:"3297-fe0f",native:"㊗️"}],version:1},secret:{id:"secret",name:"Circled Ideograph Secret",keywords:["japanese","button","privacy","chinese","sshh","kanji","red","circle"],skins:[{unified:"3299-fe0f",native:"㊙️"}],version:1},u55b6:{id:"u55b6",name:"Squared Cjk Unified Ideograph-55b6",keywords:["u55b6","japanese","open","for","business","button","opening","hours","orange","square"],skins:[{unified:"1f23a",native:"🈺"}],version:1},u6e80:{id:"u6e80",name:"Japanese “no Vacancy” Button",keywords:["u6e80","no","vacancy","full","chinese","red","square","kanji"],skins:[{unified:"1f235",native:"🈵"}],version:1},red_circle:{id:"red_circle",name:"Red Circle",keywords:["shape","error","danger"],skins:[{unified:"1f534",native:"🔴"}],version:1},large_orange_circle:{id:"large_orange_circle",name:"Orange Circle",keywords:["large","round"],skins:[{unified:"1f7e0",native:"🟠"}],version:12},large_yellow_circle:{id:"large_yellow_circle",name:"Yellow Circle",keywords:["large","round"],skins:[{unified:"1f7e1",native:"🟡"}],version:12},large_green_circle:{id:"large_green_circle",name:"Green Circle",keywords:["large","round"],skins:[{unified:"1f7e2",native:"🟢"}],version:12},large_blue_circle:{id:"large_blue_circle",name:"Blue Circle",keywords:["large","shape","icon","button"],skins:[{unified:"1f535",native:"🔵"}],version:1},large_purple_circle:{id:"large_purple_circle",name:"Purple Circle",keywords:["large","round"],skins:[{unified:"1f7e3",native:"🟣"}],version:12},large_brown_circle:{id:"large_brown_circle",name:"Brown Circle",keywords:["large","round"],skins:[{unified:"1f7e4",native:"🟤"}],version:12},black_circle:{id:"black_circle",name:"Black Circle",keywords:["shape","button","round"],skins:[{unified:"26ab",native:"⚫"}],version:1},white_circle:{id:"white_circle",name:"White Circle",keywords:["shape","round"],skins:[{unified:"26aa",native:"⚪"}],version:1},large_red_square:{id:"large_red_square",name:"Red Square",keywords:["large"],skins:[{unified:"1f7e5",native:"🟥"}],version:12},large_orange_square:{id:"large_orange_square",name:"Orange Square",keywords:["large"],skins:[{unified:"1f7e7",native:"🟧"}],version:12},large_yellow_square:{id:"large_yellow_square",name:"Yellow Square",keywords:["large"],skins:[{unified:"1f7e8",native:"🟨"}],version:12},large_green_square:{id:"large_green_square",name:"Green Square",keywords:["large"],skins:[{unified:"1f7e9",native:"🟩"}],version:12},large_blue_square:{id:"large_blue_square",name:"Blue Square",keywords:["large"],skins:[{unified:"1f7e6",native:"🟦"}],version:12},large_purple_square:{id:"large_purple_square",name:"Purple Square",keywords:["large"],skins:[{unified:"1f7ea",native:"🟪"}],version:12},large_brown_square:{id:"large_brown_square",name:"Brown Square",keywords:["large"],skins:[{unified:"1f7eb",native:"🟫"}],version:12},black_large_square:{id:"black_large_square",name:"Black Large Square",keywords:["shape","icon","button"],skins:[{unified:"2b1b",native:"⬛"}],version:1},white_large_square:{id:"white_large_square",name:"White Large Square",keywords:["shape","icon","stone","button"],skins:[{unified:"2b1c",native:"⬜"}],version:1},black_medium_square:{id:"black_medium_square",name:"Black Medium Square",keywords:["shape","button","icon"],skins:[{unified:"25fc-fe0f",native:"◼️"}],version:1},white_medium_square:{id:"white_medium_square",name:"White Medium Square",keywords:["shape","stone","icon"],skins:[{unified:"25fb-fe0f",native:"◻️"}],version:1},black_medium_small_square:{id:"black_medium_small_square",name:"Black Medium Small Square",keywords:["icon","shape","button"],skins:[{unified:"25fe",native:"◾"}],version:1},white_medium_small_square:{id:"white_medium_small_square",name:"White Medium Small Square",keywords:["shape","stone","icon","button"],skins:[{unified:"25fd",native:"◽"}],version:1},black_small_square:{id:"black_small_square",name:"Black Small Square",keywords:["shape","icon"],skins:[{unified:"25aa-fe0f",native:"▪️"}],version:1},white_small_square:{id:"white_small_square",name:"White Small Square",keywords:["shape","icon"],skins:[{unified:"25ab-fe0f",native:"▫️"}],version:1},large_orange_diamond:{id:"large_orange_diamond",name:"Large Orange Diamond",keywords:["shape","jewel","gem"],skins:[{unified:"1f536",native:"🔶"}],version:1},large_blue_diamond:{id:"large_blue_diamond",name:"Large Blue Diamond",keywords:["shape","jewel","gem"],skins:[{unified:"1f537",native:"🔷"}],version:1},small_orange_diamond:{id:"small_orange_diamond",name:"Small Orange Diamond",keywords:["shape","jewel","gem"],skins:[{unified:"1f538",native:"🔸"}],version:1},small_blue_diamond:{id:"small_blue_diamond",name:"Small Blue Diamond",keywords:["shape","jewel","gem"],skins:[{unified:"1f539",native:"🔹"}],version:1},small_red_triangle:{id:"small_red_triangle",name:"Red Triangle Pointed Up",keywords:["small","shape","direction","top"],skins:[{unified:"1f53a",native:"🔺"}],version:1},small_red_triangle_down:{id:"small_red_triangle_down",name:"Red Triangle Pointed Down",keywords:["small","shape","direction","bottom"],skins:[{unified:"1f53b",native:"🔻"}],version:1},diamond_shape_with_a_dot_inside:{id:"diamond_shape_with_a_dot_inside",name:"Diamond with a Dot",keywords:["shape","inside","jewel","blue","gem","crystal","fancy"],skins:[{unified:"1f4a0",native:"💠"}],version:1},radio_button:{id:"radio_button",name:"Radio Button",keywords:["input","old","music","circle"],skins:[{unified:"1f518",native:"🔘"}],version:1},white_square_button:{id:"white_square_button",name:"White Square Button",keywords:["shape","input"],skins:[{unified:"1f533",native:"🔳"}],version:1},black_square_button:{id:"black_square_button",name:"Black Square Button",keywords:["shape","input","frame"],skins:[{unified:"1f532",native:"🔲"}],version:1},checkered_flag:{id:"checkered_flag",name:"Chequered Flag",keywords:["checkered","contest","finishline","race","gokart"],skins:[{unified:"1f3c1",native:"🏁"}],version:1},triangular_flag_on_post:{id:"triangular_flag_on_post",name:"Triangular Flag",keywords:["on","post","mark","milestone","place"],skins:[{unified:"1f6a9",native:"🚩"}],version:1},crossed_flags:{id:"crossed_flags",name:"Crossed Flags",keywords:["japanese","nation","country","border"],skins:[{unified:"1f38c",native:"🎌"}],version:1},waving_black_flag:{id:"waving_black_flag",name:"Black Flag",keywords:["waving","pirate"],skins:[{unified:"1f3f4",native:"🏴"}],version:1},waving_white_flag:{id:"waving_white_flag",name:"White Flag",keywords:["waving","losing","loser","lost","surrender","give","up","fail"],skins:[{unified:"1f3f3-fe0f",native:"🏳️"}],version:1},"rainbow-flag":{id:"rainbow-flag",name:"Rainbow Flag",keywords:["pride","gay","lgbt","glbt","queer","homosexual","lesbian","bisexual","transgender"],skins:[{unified:"1f3f3-fe0f-200d-1f308",native:"🏳️‍🌈"}],version:4},transgender_flag:{id:"transgender_flag",name:"Transgender Flag",keywords:["lgbtq"],skins:[{unified:"1f3f3-fe0f-200d-26a7-fe0f",native:"🏳️‍⚧️"}],version:13},pirate_flag:{id:"pirate_flag",name:"Pirate Flag",keywords:["skull","crossbones","banner"],skins:[{unified:"1f3f4-200d-2620-fe0f",native:"🏴‍☠️"}],version:11},"flag-ac":{id:"flag-ac",name:"Ascension Island Flag",keywords:["ac"],skins:[{unified:"1f1e6-1f1e8",native:"🇦🇨"}],version:2},"flag-ad":{id:"flag-ad",name:"Andorra Flag",keywords:["ad","nation","country","banner"],skins:[{unified:"1f1e6-1f1e9",native:"🇦🇩"}],version:2},"flag-ae":{id:"flag-ae",name:"United Arab Emirates Flag",keywords:["ae","nation","country","banner"],skins:[{unified:"1f1e6-1f1ea",native:"🇦🇪"}],version:2},"flag-af":{id:"flag-af",name:"Afghanistan Flag",keywords:["af","nation","country","banner"],skins:[{unified:"1f1e6-1f1eb",native:"🇦🇫"}],version:2},"flag-ag":{id:"flag-ag",name:"Antigua & Barbuda Flag",keywords:["ag","nation","country","banner"],skins:[{unified:"1f1e6-1f1ec",native:"🇦🇬"}],version:2},"flag-ai":{id:"flag-ai",name:"Anguilla Flag",keywords:["ai","nation","country","banner"],skins:[{unified:"1f1e6-1f1ee",native:"🇦🇮"}],version:2},"flag-al":{id:"flag-al",name:"Albania Flag",keywords:["al","nation","country","banner"],skins:[{unified:"1f1e6-1f1f1",native:"🇦🇱"}],version:2},"flag-am":{id:"flag-am",name:"Armenia Flag",keywords:["am","nation","country","banner"],skins:[{unified:"1f1e6-1f1f2",native:"🇦🇲"}],version:2},"flag-ao":{id:"flag-ao",name:"Angola Flag",keywords:["ao","nation","country","banner"],skins:[{unified:"1f1e6-1f1f4",native:"🇦🇴"}],version:2},"flag-aq":{id:"flag-aq",name:"Antarctica Flag",keywords:["aq","nation","country","banner"],skins:[{unified:"1f1e6-1f1f6",native:"🇦🇶"}],version:2},"flag-ar":{id:"flag-ar",name:"Argentina Flag",keywords:["ar","nation","country","banner"],skins:[{unified:"1f1e6-1f1f7",native:"🇦🇷"}],version:2},"flag-as":{id:"flag-as",name:"American Samoa Flag",keywords:["as","ws","nation","country","banner"],skins:[{unified:"1f1e6-1f1f8",native:"🇦🇸"}],version:2},"flag-at":{id:"flag-at",name:"Austria Flag",keywords:["at","nation","country","banner"],skins:[{unified:"1f1e6-1f1f9",native:"🇦🇹"}],version:2},"flag-au":{id:"flag-au",name:"Australia Flag",keywords:["au","nation","country","banner"],skins:[{unified:"1f1e6-1f1fa",native:"🇦🇺"}],version:2},"flag-aw":{id:"flag-aw",name:"Aruba Flag",keywords:["aw","nation","country","banner"],skins:[{unified:"1f1e6-1f1fc",native:"🇦🇼"}],version:2},"flag-ax":{id:"flag-ax",name:"Åland Islands Flag",keywords:["ax","aland","Aland","nation","country","banner"],skins:[{unified:"1f1e6-1f1fd",native:"🇦🇽"}],version:2},"flag-az":{id:"flag-az",name:"Azerbaijan Flag",keywords:["az","nation","country","banner"],skins:[{unified:"1f1e6-1f1ff",native:"🇦🇿"}],version:2},"flag-ba":{id:"flag-ba",name:"Bosnia & Herzegovina Flag",keywords:["ba","nation","country","banner"],skins:[{unified:"1f1e7-1f1e6",native:"🇧🇦"}],version:2},"flag-bb":{id:"flag-bb",name:"Barbados Flag",keywords:["bb","nation","country","banner"],skins:[{unified:"1f1e7-1f1e7",native:"🇧🇧"}],version:2},"flag-bd":{id:"flag-bd",name:"Bangladesh Flag",keywords:["bd","nation","country","banner"],skins:[{unified:"1f1e7-1f1e9",native:"🇧🇩"}],version:2},"flag-be":{id:"flag-be",name:"Belgium Flag",keywords:["be","nation","country","banner"],skins:[{unified:"1f1e7-1f1ea",native:"🇧🇪"}],version:2},"flag-bf":{id:"flag-bf",name:"Burkina Faso Flag",keywords:["bf","nation","country","banner"],skins:[{unified:"1f1e7-1f1eb",native:"🇧🇫"}],version:2},"flag-bg":{id:"flag-bg",name:"Bulgaria Flag",keywords:["bg","nation","country","banner"],skins:[{unified:"1f1e7-1f1ec",native:"🇧🇬"}],version:2},"flag-bh":{id:"flag-bh",name:"Bahrain Flag",keywords:["bh","nation","country","banner"],skins:[{unified:"1f1e7-1f1ed",native:"🇧🇭"}],version:2},"flag-bi":{id:"flag-bi",name:"Burundi Flag",keywords:["bi","nation","country","banner"],skins:[{unified:"1f1e7-1f1ee",native:"🇧🇮"}],version:2},"flag-bj":{id:"flag-bj",name:"Benin Flag",keywords:["bj","nation","country","banner"],skins:[{unified:"1f1e7-1f1ef",native:"🇧🇯"}],version:2},"flag-bl":{id:"flag-bl",name:"St. Barthélemy Flag",keywords:["bl","st","barthelemy","saint","nation","country","banner"],skins:[{unified:"1f1e7-1f1f1",native:"🇧🇱"}],version:2},"flag-bm":{id:"flag-bm",name:"Bermuda Flag",keywords:["bm","nation","country","banner"],skins:[{unified:"1f1e7-1f1f2",native:"🇧🇲"}],version:2},"flag-bn":{id:"flag-bn",name:"Brunei Flag",keywords:["bn","darussalam","nation","country","banner"],skins:[{unified:"1f1e7-1f1f3",native:"🇧🇳"}],version:2},"flag-bo":{id:"flag-bo",name:"Bolivia Flag",keywords:["bo","nation","country","banner"],skins:[{unified:"1f1e7-1f1f4",native:"🇧🇴"}],version:2},"flag-bq":{id:"flag-bq",name:"Caribbean Netherlands Flag",keywords:["bq","bonaire","nation","country","banner"],skins:[{unified:"1f1e7-1f1f6",native:"🇧🇶"}],version:2},"flag-br":{id:"flag-br",name:"Brazil Flag",keywords:["br","nation","country","banner"],skins:[{unified:"1f1e7-1f1f7",native:"🇧🇷"}],version:2},"flag-bs":{id:"flag-bs",name:"Bahamas Flag",keywords:["bs","nation","country","banner"],skins:[{unified:"1f1e7-1f1f8",native:"🇧🇸"}],version:2},"flag-bt":{id:"flag-bt",name:"Bhutan Flag",keywords:["bt","nation","country","banner"],skins:[{unified:"1f1e7-1f1f9",native:"🇧🇹"}],version:2},"flag-bv":{id:"flag-bv",name:"Bouvet Island Flag",keywords:["bv","norway"],skins:[{unified:"1f1e7-1f1fb",native:"🇧🇻"}],version:2},"flag-bw":{id:"flag-bw",name:"Botswana Flag",keywords:["bw","nation","country","banner"],skins:[{unified:"1f1e7-1f1fc",native:"🇧🇼"}],version:2},"flag-by":{id:"flag-by",name:"Belarus Flag",keywords:["by","nation","country","banner"],skins:[{unified:"1f1e7-1f1fe",native:"🇧🇾"}],version:2},"flag-bz":{id:"flag-bz",name:"Belize Flag",keywords:["bz","nation","country","banner"],skins:[{unified:"1f1e7-1f1ff",native:"🇧🇿"}],version:2},"flag-ca":{id:"flag-ca",name:"Canada Flag",keywords:["ca","nation","country","banner"],skins:[{unified:"1f1e8-1f1e6",native:"🇨🇦"}],version:2},"flag-cc":{id:"flag-cc",name:"Cocos (keeling) Islands Flag",keywords:["cc","keeling","nation","country","banner"],skins:[{unified:"1f1e8-1f1e8",native:"🇨🇨"}],version:2},"flag-cd":{id:"flag-cd",name:"Congo - Kinshasa Flag",keywords:["cd","democratic","republic","nation","country","banner"],skins:[{unified:"1f1e8-1f1e9",native:"🇨🇩"}],version:2},"flag-cf":{id:"flag-cf",name:"Central African Republic Flag",keywords:["cf","nation","country","banner"],skins:[{unified:"1f1e8-1f1eb",native:"🇨🇫"}],version:2},"flag-cg":{id:"flag-cg",name:"Congo - Brazzaville Flag",keywords:["cg","nation","country","banner"],skins:[{unified:"1f1e8-1f1ec",native:"🇨🇬"}],version:2},"flag-ch":{id:"flag-ch",name:"Switzerland Flag",keywords:["ch","nation","country","banner"],skins:[{unified:"1f1e8-1f1ed",native:"🇨🇭"}],version:2},"flag-ci":{id:"flag-ci",name:"Côte D’ivoire Flag",keywords:["ci","cote","d","ivoire","ivory","coast","nation","country","banner"],skins:[{unified:"1f1e8-1f1ee",native:"🇨🇮"}],version:2},"flag-ck":{id:"flag-ck",name:"Cook Islands Flag",keywords:["ck","nation","country","banner"],skins:[{unified:"1f1e8-1f1f0",native:"🇨🇰"}],version:2},"flag-cl":{id:"flag-cl",name:"Chile Flag",keywords:["cl","nation","country","banner"],skins:[{unified:"1f1e8-1f1f1",native:"🇨🇱"}],version:2},"flag-cm":{id:"flag-cm",name:"Cameroon Flag",keywords:["cm","nation","country","banner"],skins:[{unified:"1f1e8-1f1f2",native:"🇨🇲"}],version:2},cn:{id:"cn",name:"China Flag",keywords:["cn","chinese","prc","country","nation","banner"],skins:[{unified:"1f1e8-1f1f3",native:"🇨🇳"}],version:1},"flag-co":{id:"flag-co",name:"Colombia Flag",keywords:["co","nation","country","banner"],skins:[{unified:"1f1e8-1f1f4",native:"🇨🇴"}],version:2},"flag-cp":{id:"flag-cp",name:"Clipperton Island Flag",keywords:["cp"],skins:[{unified:"1f1e8-1f1f5",native:"🇨🇵"}],version:2},"flag-cr":{id:"flag-cr",name:"Costa Rica Flag",keywords:["cr","nation","country","banner"],skins:[{unified:"1f1e8-1f1f7",native:"🇨🇷"}],version:2},"flag-cu":{id:"flag-cu",name:"Cuba Flag",keywords:["cu","nation","country","banner"],skins:[{unified:"1f1e8-1f1fa",native:"🇨🇺"}],version:2},"flag-cv":{id:"flag-cv",name:"Cape Verde Flag",keywords:["cv","cabo","nation","country","banner"],skins:[{unified:"1f1e8-1f1fb",native:"🇨🇻"}],version:2},"flag-cw":{id:"flag-cw",name:"Curaçao Flag",keywords:["cw","curacao","nation","country","banner"],skins:[{unified:"1f1e8-1f1fc",native:"🇨🇼"}],version:2},"flag-cx":{id:"flag-cx",name:"Christmas Island Flag",keywords:["cx","nation","country","banner"],skins:[{unified:"1f1e8-1f1fd",native:"🇨🇽"}],version:2},"flag-cy":{id:"flag-cy",name:"Cyprus Flag",keywords:["cy","nation","country","banner"],skins:[{unified:"1f1e8-1f1fe",native:"🇨🇾"}],version:2},"flag-cz":{id:"flag-cz",name:"Czechia Flag",keywords:["cz","nation","country","banner"],skins:[{unified:"1f1e8-1f1ff",native:"🇨🇿"}],version:2},de:{id:"de",name:"Germany Flag",keywords:["de","german","nation","country","banner"],skins:[{unified:"1f1e9-1f1ea",native:"🇩🇪"}],version:1},"flag-dg":{id:"flag-dg",name:"Diego Garcia Flag",keywords:["dg"],skins:[{unified:"1f1e9-1f1ec",native:"🇩🇬"}],version:2},"flag-dj":{id:"flag-dj",name:"Djibouti Flag",keywords:["dj","nation","country","banner"],skins:[{unified:"1f1e9-1f1ef",native:"🇩🇯"}],version:2},"flag-dk":{id:"flag-dk",name:"Denmark Flag",keywords:["dk","nation","country","banner"],skins:[{unified:"1f1e9-1f1f0",native:"🇩🇰"}],version:2},"flag-dm":{id:"flag-dm",name:"Dominica Flag",keywords:["dm","nation","country","banner"],skins:[{unified:"1f1e9-1f1f2",native:"🇩🇲"}],version:2},"flag-do":{id:"flag-do",name:"Dominican Republic Flag",keywords:["do","nation","country","banner"],skins:[{unified:"1f1e9-1f1f4",native:"🇩🇴"}],version:2},"flag-dz":{id:"flag-dz",name:"Algeria Flag",keywords:["dz","nation","country","banner"],skins:[{unified:"1f1e9-1f1ff",native:"🇩🇿"}],version:2},"flag-ea":{id:"flag-ea",name:"Ceuta & Melilla Flag",keywords:["ea"],skins:[{unified:"1f1ea-1f1e6",native:"🇪🇦"}],version:2},"flag-ec":{id:"flag-ec",name:"Ecuador Flag",keywords:["ec","nation","country","banner"],skins:[{unified:"1f1ea-1f1e8",native:"🇪🇨"}],version:2},"flag-ee":{id:"flag-ee",name:"Estonia Flag",keywords:["ee","nation","country","banner"],skins:[{unified:"1f1ea-1f1ea",native:"🇪🇪"}],version:2},"flag-eg":{id:"flag-eg",name:"Egypt Flag",keywords:["eg","nation","country","banner"],skins:[{unified:"1f1ea-1f1ec",native:"🇪🇬"}],version:2},"flag-eh":{id:"flag-eh",name:"Western Sahara Flag",keywords:["eh","nation","country","banner"],skins:[{unified:"1f1ea-1f1ed",native:"🇪🇭"}],version:2},"flag-er":{id:"flag-er",name:"Eritrea Flag",keywords:["er","nation","country","banner"],skins:[{unified:"1f1ea-1f1f7",native:"🇪🇷"}],version:2},es:{id:"es",name:"Spain Flag",keywords:["es","nation","country","banner"],skins:[{unified:"1f1ea-1f1f8",native:"🇪🇸"}],version:1},"flag-et":{id:"flag-et",name:"Ethiopia Flag",keywords:["et","nation","country","banner"],skins:[{unified:"1f1ea-1f1f9",native:"🇪🇹"}],version:2},"flag-eu":{id:"flag-eu",name:"European Union Flag",keywords:["eu","banner"],skins:[{unified:"1f1ea-1f1fa",native:"🇪🇺"}],version:2},"flag-fi":{id:"flag-fi",name:"Finland Flag",keywords:["fi","nation","country","banner"],skins:[{unified:"1f1eb-1f1ee",native:"🇫🇮"}],version:2},"flag-fj":{id:"flag-fj",name:"Fiji Flag",keywords:["fj","nation","country","banner"],skins:[{unified:"1f1eb-1f1ef",native:"🇫🇯"}],version:2},"flag-fk":{id:"flag-fk",name:"Falkland Islands Flag",keywords:["fk","malvinas","nation","country","banner"],skins:[{unified:"1f1eb-1f1f0",native:"🇫🇰"}],version:2},"flag-fm":{id:"flag-fm",name:"Micronesia Flag",keywords:["fm","federated","states","nation","country","banner"],skins:[{unified:"1f1eb-1f1f2",native:"🇫🇲"}],version:2},"flag-fo":{id:"flag-fo",name:"Faroe Islands Flag",keywords:["fo","nation","country","banner"],skins:[{unified:"1f1eb-1f1f4",native:"🇫🇴"}],version:2},fr:{id:"fr",name:"France Flag",keywords:["fr","banner","nation","french","country"],skins:[{unified:"1f1eb-1f1f7",native:"🇫🇷"}],version:1},"flag-ga":{id:"flag-ga",name:"Gabon Flag",keywords:["ga","nation","country","banner"],skins:[{unified:"1f1ec-1f1e6",native:"🇬🇦"}],version:2},gb:{id:"gb",name:"United Kingdom Flag",keywords:["gb","uk","great","britain","northern","ireland","nation","country","banner","british","UK","english","england","union","jack"],skins:[{unified:"1f1ec-1f1e7",native:"🇬🇧"}],version:1},"flag-gd":{id:"flag-gd",name:"Grenada Flag",keywords:["gd","nation","country","banner"],skins:[{unified:"1f1ec-1f1e9",native:"🇬🇩"}],version:2},"flag-ge":{id:"flag-ge",name:"Georgia Flag",keywords:["ge","nation","country","banner"],skins:[{unified:"1f1ec-1f1ea",native:"🇬🇪"}],version:2},"flag-gf":{id:"flag-gf",name:"French Guiana Flag",keywords:["gf","nation","country","banner"],skins:[{unified:"1f1ec-1f1eb",native:"🇬🇫"}],version:2},"flag-gg":{id:"flag-gg",name:"Guernsey Flag",keywords:["gg","nation","country","banner"],skins:[{unified:"1f1ec-1f1ec",native:"🇬🇬"}],version:2},"flag-gh":{id:"flag-gh",name:"Ghana Flag",keywords:["gh","nation","country","banner"],skins:[{unified:"1f1ec-1f1ed",native:"🇬🇭"}],version:2},"flag-gi":{id:"flag-gi",name:"Gibraltar Flag",keywords:["gi","nation","country","banner"],skins:[{unified:"1f1ec-1f1ee",native:"🇬🇮"}],version:2},"flag-gl":{id:"flag-gl",name:"Greenland Flag",keywords:["gl","nation","country","banner"],skins:[{unified:"1f1ec-1f1f1",native:"🇬🇱"}],version:2},"flag-gm":{id:"flag-gm",name:"Gambia Flag",keywords:["gm","nation","country","banner"],skins:[{unified:"1f1ec-1f1f2",native:"🇬🇲"}],version:2},"flag-gn":{id:"flag-gn",name:"Guinea Flag",keywords:["gn","nation","country","banner"],skins:[{unified:"1f1ec-1f1f3",native:"🇬🇳"}],version:2},"flag-gp":{id:"flag-gp",name:"Guadeloupe Flag",keywords:["gp","nation","country","banner"],skins:[{unified:"1f1ec-1f1f5",native:"🇬🇵"}],version:2},"flag-gq":{id:"flag-gq",name:"Equatorial Guinea Flag",keywords:["gq","gn","nation","country","banner"],skins:[{unified:"1f1ec-1f1f6",native:"🇬🇶"}],version:2},"flag-gr":{id:"flag-gr",name:"Greece Flag",keywords:["gr","nation","country","banner"],skins:[{unified:"1f1ec-1f1f7",native:"🇬🇷"}],version:2},"flag-gs":{id:"flag-gs",name:"South Georgia & South Sandwich Islands Flag",keywords:["gs","nation","country","banner"],skins:[{unified:"1f1ec-1f1f8",native:"🇬🇸"}],version:2},"flag-gt":{id:"flag-gt",name:"Guatemala Flag",keywords:["gt","nation","country","banner"],skins:[{unified:"1f1ec-1f1f9",native:"🇬🇹"}],version:2},"flag-gu":{id:"flag-gu",name:"Guam Flag",keywords:["gu","nation","country","banner"],skins:[{unified:"1f1ec-1f1fa",native:"🇬🇺"}],version:2},"flag-gw":{id:"flag-gw",name:"Guinea-Bissau Flag",keywords:["gw","guinea","bissau","nation","country","banner"],skins:[{unified:"1f1ec-1f1fc",native:"🇬🇼"}],version:2},"flag-gy":{id:"flag-gy",name:"Guyana Flag",keywords:["gy","nation","country","banner"],skins:[{unified:"1f1ec-1f1fe",native:"🇬🇾"}],version:2},"flag-hk":{id:"flag-hk",name:"Hong Kong Sar China Flag",keywords:["hk","nation","country","banner"],skins:[{unified:"1f1ed-1f1f0",native:"🇭🇰"}],version:2},"flag-hm":{id:"flag-hm",name:"Heard & Mcdonald Islands Flag",keywords:["hm"],skins:[{unified:"1f1ed-1f1f2",native:"🇭🇲"}],version:2},"flag-hn":{id:"flag-hn",name:"Honduras Flag",keywords:["hn","nation","country","banner"],skins:[{unified:"1f1ed-1f1f3",native:"🇭🇳"}],version:2},"flag-hr":{id:"flag-hr",name:"Croatia Flag",keywords:["hr","nation","country","banner"],skins:[{unified:"1f1ed-1f1f7",native:"🇭🇷"}],version:2},"flag-ht":{id:"flag-ht",name:"Haiti Flag",keywords:["ht","nation","country","banner"],skins:[{unified:"1f1ed-1f1f9",native:"🇭🇹"}],version:2},"flag-hu":{id:"flag-hu",name:"Hungary Flag",keywords:["hu","nation","country","banner"],skins:[{unified:"1f1ed-1f1fa",native:"🇭🇺"}],version:2},"flag-ic":{id:"flag-ic",name:"Canary Islands Flag",keywords:["ic","nation","country","banner"],skins:[{unified:"1f1ee-1f1e8",native:"🇮🇨"}],version:2},"flag-id":{id:"flag-id",name:"Indonesia Flag",keywords:["id","nation","country","banner"],skins:[{unified:"1f1ee-1f1e9",native:"🇮🇩"}],version:2},"flag-ie":{id:"flag-ie",name:"Ireland Flag",keywords:["ie","nation","country","banner"],skins:[{unified:"1f1ee-1f1ea",native:"🇮🇪"}],version:2},"flag-il":{id:"flag-il",name:"Israel Flag",keywords:["il","nation","country","banner"],skins:[{unified:"1f1ee-1f1f1",native:"🇮🇱"}],version:2},"flag-im":{id:"flag-im",name:"Isle of Man Flag",keywords:["im","nation","country","banner"],skins:[{unified:"1f1ee-1f1f2",native:"🇮🇲"}],version:2},"flag-in":{id:"flag-in",name:"India Flag",keywords:["in","nation","country","banner"],skins:[{unified:"1f1ee-1f1f3",native:"🇮🇳"}],version:2},"flag-io":{id:"flag-io",name:"British Indian Ocean Territory Flag",keywords:["io","nation","country","banner"],skins:[{unified:"1f1ee-1f1f4",native:"🇮🇴"}],version:2},"flag-iq":{id:"flag-iq",name:"Iraq Flag",keywords:["iq","nation","country","banner"],skins:[{unified:"1f1ee-1f1f6",native:"🇮🇶"}],version:2},"flag-ir":{id:"flag-ir",name:"Iran Flag",keywords:["ir","islamic","republic","nation","country","banner"],skins:[{unified:"1f1ee-1f1f7",native:"🇮🇷"}],version:2},"flag-is":{id:"flag-is",name:"Iceland Flag",keywords:["is","nation","country","banner"],skins:[{unified:"1f1ee-1f1f8",native:"🇮🇸"}],version:2},it:{id:"it",name:"Italy Flag",keywords:["it","nation","country","banner"],skins:[{unified:"1f1ee-1f1f9",native:"🇮🇹"}],version:1},"flag-je":{id:"flag-je",name:"Jersey Flag",keywords:["je","nation","country","banner"],skins:[{unified:"1f1ef-1f1ea",native:"🇯🇪"}],version:2},"flag-jm":{id:"flag-jm",name:"Jamaica Flag",keywords:["jm","nation","country","banner"],skins:[{unified:"1f1ef-1f1f2",native:"🇯🇲"}],version:2},"flag-jo":{id:"flag-jo",name:"Jordan Flag",keywords:["jo","nation","country","banner"],skins:[{unified:"1f1ef-1f1f4",native:"🇯🇴"}],version:2},jp:{id:"jp",name:"Japan Flag",keywords:["jp","japanese","nation","country","banner","ja"],skins:[{unified:"1f1ef-1f1f5",native:"🇯🇵"}],version:1},"flag-ke":{id:"flag-ke",name:"Kenya Flag",keywords:["ke","nation","country","banner"],skins:[{unified:"1f1f0-1f1ea",native:"🇰🇪"}],version:2},"flag-kg":{id:"flag-kg",name:"Kyrgyzstan Flag",keywords:["kg","nation","country","banner"],skins:[{unified:"1f1f0-1f1ec",native:"🇰🇬"}],version:2},"flag-kh":{id:"flag-kh",name:"Cambodia Flag",keywords:["kh","nation","country","banner"],skins:[{unified:"1f1f0-1f1ed",native:"🇰🇭"}],version:2},"flag-ki":{id:"flag-ki",name:"Kiribati Flag",keywords:["ki","nation","country","banner"],skins:[{unified:"1f1f0-1f1ee",native:"🇰🇮"}],version:2},"flag-km":{id:"flag-km",name:"Comoros Flag",keywords:["km","nation","country","banner"],skins:[{unified:"1f1f0-1f1f2",native:"🇰🇲"}],version:2},"flag-kn":{id:"flag-kn",name:"St. Kitts & Nevis Flag",keywords:["kn","st","saint","nation","country","banner"],skins:[{unified:"1f1f0-1f1f3",native:"🇰🇳"}],version:2},"flag-kp":{id:"flag-kp",name:"North Korea Flag",keywords:["kp","nation","country","banner"],skins:[{unified:"1f1f0-1f1f5",native:"🇰🇵"}],version:2},kr:{id:"kr",name:"South Korea Flag",keywords:["kr","nation","country","banner"],skins:[{unified:"1f1f0-1f1f7",native:"🇰🇷"}],version:1},"flag-kw":{id:"flag-kw",name:"Kuwait Flag",keywords:["kw","nation","country","banner"],skins:[{unified:"1f1f0-1f1fc",native:"🇰🇼"}],version:2},"flag-ky":{id:"flag-ky",name:"Cayman Islands Flag",keywords:["ky","nation","country","banner"],skins:[{unified:"1f1f0-1f1fe",native:"🇰🇾"}],version:2},"flag-kz":{id:"flag-kz",name:"Kazakhstan Flag",keywords:["kz","nation","country","banner"],skins:[{unified:"1f1f0-1f1ff",native:"🇰🇿"}],version:2},"flag-la":{id:"flag-la",name:"Laos Flag",keywords:["la","lao","democratic","republic","nation","country","banner"],skins:[{unified:"1f1f1-1f1e6",native:"🇱🇦"}],version:2},"flag-lb":{id:"flag-lb",name:"Lebanon Flag",keywords:["lb","nation","country","banner"],skins:[{unified:"1f1f1-1f1e7",native:"🇱🇧"}],version:2},"flag-lc":{id:"flag-lc",name:"St. Lucia Flag",keywords:["lc","st","saint","nation","country","banner"],skins:[{unified:"1f1f1-1f1e8",native:"🇱🇨"}],version:2},"flag-li":{id:"flag-li",name:"Liechtenstein Flag",keywords:["li","nation","country","banner"],skins:[{unified:"1f1f1-1f1ee",native:"🇱🇮"}],version:2},"flag-lk":{id:"flag-lk",name:"Sri Lanka Flag",keywords:["lk","nation","country","banner"],skins:[{unified:"1f1f1-1f1f0",native:"🇱🇰"}],version:2},"flag-lr":{id:"flag-lr",name:"Liberia Flag",keywords:["lr","nation","country","banner"],skins:[{unified:"1f1f1-1f1f7",native:"🇱🇷"}],version:2},"flag-ls":{id:"flag-ls",name:"Lesotho Flag",keywords:["ls","nation","country","banner"],skins:[{unified:"1f1f1-1f1f8",native:"🇱🇸"}],version:2},"flag-lt":{id:"flag-lt",name:"Lithuania Flag",keywords:["lt","nation","country","banner"],skins:[{unified:"1f1f1-1f1f9",native:"🇱🇹"}],version:2},"flag-lu":{id:"flag-lu",name:"Luxembourg Flag",keywords:["lu","nation","country","banner"],skins:[{unified:"1f1f1-1f1fa",native:"🇱🇺"}],version:2},"flag-lv":{id:"flag-lv",name:"Latvia Flag",keywords:["lv","nation","country","banner"],skins:[{unified:"1f1f1-1f1fb",native:"🇱🇻"}],version:2},"flag-ly":{id:"flag-ly",name:"Libya Flag",keywords:["ly","nation","country","banner"],skins:[{unified:"1f1f1-1f1fe",native:"🇱🇾"}],version:2},"flag-ma":{id:"flag-ma",name:"Morocco Flag",keywords:["ma","nation","country","banner"],skins:[{unified:"1f1f2-1f1e6",native:"🇲🇦"}],version:2},"flag-mc":{id:"flag-mc",name:"Monaco Flag",keywords:["mc","nation","country","banner"],skins:[{unified:"1f1f2-1f1e8",native:"🇲🇨"}],version:2},"flag-md":{id:"flag-md",name:"Moldova Flag",keywords:["md","republic","nation","country","banner"],skins:[{unified:"1f1f2-1f1e9",native:"🇲🇩"}],version:2},"flag-me":{id:"flag-me",name:"Montenegro Flag",keywords:["me","nation","country","banner"],skins:[{unified:"1f1f2-1f1ea",native:"🇲🇪"}],version:2},"flag-mf":{id:"flag-mf",name:"St. Martin Flag",keywords:["mf","st"],skins:[{unified:"1f1f2-1f1eb",native:"🇲🇫"}],version:2},"flag-mg":{id:"flag-mg",name:"Madagascar Flag",keywords:["mg","nation","country","banner"],skins:[{unified:"1f1f2-1f1ec",native:"🇲🇬"}],version:2},"flag-mh":{id:"flag-mh",name:"Marshall Islands Flag",keywords:["mh","nation","country","banner"],skins:[{unified:"1f1f2-1f1ed",native:"🇲🇭"}],version:2},"flag-mk":{id:"flag-mk",name:"North Macedonia Flag",keywords:["mk","nation","country","banner"],skins:[{unified:"1f1f2-1f1f0",native:"🇲🇰"}],version:2},"flag-ml":{id:"flag-ml",name:"Mali Flag",keywords:["ml","nation","country","banner"],skins:[{unified:"1f1f2-1f1f1",native:"🇲🇱"}],version:2},"flag-mm":{id:"flag-mm",name:"Myanmar (burma) Flag",keywords:["mm","nation","country","banner"],skins:[{unified:"1f1f2-1f1f2",native:"🇲🇲"}],version:2},"flag-mn":{id:"flag-mn",name:"Mongolia Flag",keywords:["mn","nation","country","banner"],skins:[{unified:"1f1f2-1f1f3",native:"🇲🇳"}],version:2},"flag-mo":{id:"flag-mo",name:"Macao Sar China Flag",keywords:["mo","nation","country","banner"],skins:[{unified:"1f1f2-1f1f4",native:"🇲🇴"}],version:2},"flag-mp":{id:"flag-mp",name:"Northern Mariana Islands Flag",keywords:["mp","nation","country","banner"],skins:[{unified:"1f1f2-1f1f5",native:"🇲🇵"}],version:2},"flag-mq":{id:"flag-mq",name:"Martinique Flag",keywords:["mq","nation","country","banner"],skins:[{unified:"1f1f2-1f1f6",native:"🇲🇶"}],version:2},"flag-mr":{id:"flag-mr",name:"Mauritania Flag",keywords:["mr","nation","country","banner"],skins:[{unified:"1f1f2-1f1f7",native:"🇲🇷"}],version:2},"flag-ms":{id:"flag-ms",name:"Montserrat Flag",keywords:["ms","nation","country","banner"],skins:[{unified:"1f1f2-1f1f8",native:"🇲🇸"}],version:2},"flag-mt":{id:"flag-mt",name:"Malta Flag",keywords:["mt","nation","country","banner"],skins:[{unified:"1f1f2-1f1f9",native:"🇲🇹"}],version:2},"flag-mu":{id:"flag-mu",name:"Mauritius Flag",keywords:["mu","nation","country","banner"],skins:[{unified:"1f1f2-1f1fa",native:"🇲🇺"}],version:2},"flag-mv":{id:"flag-mv",name:"Maldives Flag",keywords:["mv","nation","country","banner"],skins:[{unified:"1f1f2-1f1fb",native:"🇲🇻"}],version:2},"flag-mw":{id:"flag-mw",name:"Malawi Flag",keywords:["mw","nation","country","banner"],skins:[{unified:"1f1f2-1f1fc",native:"🇲🇼"}],version:2},"flag-mx":{id:"flag-mx",name:"Mexico Flag",keywords:["mx","nation","country","banner"],skins:[{unified:"1f1f2-1f1fd",native:"🇲🇽"}],version:2},"flag-my":{id:"flag-my",name:"Malaysia Flag",keywords:["my","nation","country","banner"],skins:[{unified:"1f1f2-1f1fe",native:"🇲🇾"}],version:2},"flag-mz":{id:"flag-mz",name:"Mozambique Flag",keywords:["mz","nation","country","banner"],skins:[{unified:"1f1f2-1f1ff",native:"🇲🇿"}],version:2},"flag-na":{id:"flag-na",name:"Namibia Flag",keywords:["na","nation","country","banner"],skins:[{unified:"1f1f3-1f1e6",native:"🇳🇦"}],version:2},"flag-nc":{id:"flag-nc",name:"New Caledonia Flag",keywords:["nc","nation","country","banner"],skins:[{unified:"1f1f3-1f1e8",native:"🇳🇨"}],version:2},"flag-ne":{id:"flag-ne",name:"Niger Flag",keywords:["ne","nation","country","banner"],skins:[{unified:"1f1f3-1f1ea",native:"🇳🇪"}],version:2},"flag-nf":{id:"flag-nf",name:"Norfolk Island Flag",keywords:["nf","nation","country","banner"],skins:[{unified:"1f1f3-1f1eb",native:"🇳🇫"}],version:2},"flag-ng":{id:"flag-ng",name:"Nigeria Flag",keywords:["ng","nation","country","banner"],skins:[{unified:"1f1f3-1f1ec",native:"🇳🇬"}],version:2},"flag-ni":{id:"flag-ni",name:"Nicaragua Flag",keywords:["ni","nation","country","banner"],skins:[{unified:"1f1f3-1f1ee",native:"🇳🇮"}],version:2},"flag-nl":{id:"flag-nl",name:"Netherlands Flag",keywords:["nl","nation","country","banner"],skins:[{unified:"1f1f3-1f1f1",native:"🇳🇱"}],version:2},"flag-no":{id:"flag-no",name:"Norway Flag",keywords:["no","nation","country","banner"],skins:[{unified:"1f1f3-1f1f4",native:"🇳🇴"}],version:2},"flag-np":{id:"flag-np",name:"Nepal Flag",keywords:["np","nation","country","banner"],skins:[{unified:"1f1f3-1f1f5",native:"🇳🇵"}],version:2},"flag-nr":{id:"flag-nr",name:"Nauru Flag",keywords:["nr","nation","country","banner"],skins:[{unified:"1f1f3-1f1f7",native:"🇳🇷"}],version:2},"flag-nu":{id:"flag-nu",name:"Niue Flag",keywords:["nu","nation","country","banner"],skins:[{unified:"1f1f3-1f1fa",native:"🇳🇺"}],version:2},"flag-nz":{id:"flag-nz",name:"New Zealand Flag",keywords:["nz","nation","country","banner"],skins:[{unified:"1f1f3-1f1ff",native:"🇳🇿"}],version:2},"flag-om":{id:"flag-om",name:"Oman Flag",keywords:["om","symbol","nation","country","banner"],skins:[{unified:"1f1f4-1f1f2",native:"🇴🇲"}],version:2},"flag-pa":{id:"flag-pa",name:"Panama Flag",keywords:["pa","nation","country","banner"],skins:[{unified:"1f1f5-1f1e6",native:"🇵🇦"}],version:2},"flag-pe":{id:"flag-pe",name:"Peru Flag",keywords:["pe","nation","country","banner"],skins:[{unified:"1f1f5-1f1ea",native:"🇵🇪"}],version:2},"flag-pf":{id:"flag-pf",name:"French Polynesia Flag",keywords:["pf","nation","country","banner"],skins:[{unified:"1f1f5-1f1eb",native:"🇵🇫"}],version:2},"flag-pg":{id:"flag-pg",name:"Papua New Guinea Flag",keywords:["pg","nation","country","banner"],skins:[{unified:"1f1f5-1f1ec",native:"🇵🇬"}],version:2},"flag-ph":{id:"flag-ph",name:"Philippines Flag",keywords:["ph","nation","country","banner"],skins:[{unified:"1f1f5-1f1ed",native:"🇵🇭"}],version:2},"flag-pk":{id:"flag-pk",name:"Pakistan Flag",keywords:["pk","nation","country","banner"],skins:[{unified:"1f1f5-1f1f0",native:"🇵🇰"}],version:2},"flag-pl":{id:"flag-pl",name:"Poland Flag",keywords:["pl","nation","country","banner"],skins:[{unified:"1f1f5-1f1f1",native:"🇵🇱"}],version:2},"flag-pm":{id:"flag-pm",name:"St. Pierre & Miquelon Flag",keywords:["pm","st","saint","nation","country","banner"],skins:[{unified:"1f1f5-1f1f2",native:"🇵🇲"}],version:2},"flag-pn":{id:"flag-pn",name:"Pitcairn Islands Flag",keywords:["pn","nation","country","banner"],skins:[{unified:"1f1f5-1f1f3",native:"🇵🇳"}],version:2},"flag-pr":{id:"flag-pr",name:"Puerto Rico Flag",keywords:["pr","nation","country","banner"],skins:[{unified:"1f1f5-1f1f7",native:"🇵🇷"}],version:2},"flag-ps":{id:"flag-ps",name:"Palestinian Territories Flag",keywords:["ps","palestine","nation","country","banner"],skins:[{unified:"1f1f5-1f1f8",native:"🇵🇸"}],version:2},"flag-pt":{id:"flag-pt",name:"Portugal Flag",keywords:["pt","nation","country","banner"],skins:[{unified:"1f1f5-1f1f9",native:"🇵🇹"}],version:2},"flag-pw":{id:"flag-pw",name:"Palau Flag",keywords:["pw","nation","country","banner"],skins:[{unified:"1f1f5-1f1fc",native:"🇵🇼"}],version:2},"flag-py":{id:"flag-py",name:"Paraguay Flag",keywords:["py","nation","country","banner"],skins:[{unified:"1f1f5-1f1fe",native:"🇵🇾"}],version:2},"flag-qa":{id:"flag-qa",name:"Qatar Flag",keywords:["qa","nation","country","banner"],skins:[{unified:"1f1f6-1f1e6",native:"🇶🇦"}],version:2},"flag-re":{id:"flag-re",name:"Réunion Flag",keywords:["re","reunion","nation","country","banner"],skins:[{unified:"1f1f7-1f1ea",native:"🇷🇪"}],version:2},"flag-ro":{id:"flag-ro",name:"Romania Flag",keywords:["ro","nation","country","banner"],skins:[{unified:"1f1f7-1f1f4",native:"🇷🇴"}],version:2},"flag-rs":{id:"flag-rs",name:"Serbia Flag",keywords:["rs","nation","country","banner"],skins:[{unified:"1f1f7-1f1f8",native:"🇷🇸"}],version:2},ru:{id:"ru",name:"Russia Flag",keywords:["ru","russian","federation","nation","country","banner"],skins:[{unified:"1f1f7-1f1fa",native:"🇷🇺"}],version:1},"flag-rw":{id:"flag-rw",name:"Rwanda Flag",keywords:["rw","nation","country","banner"],skins:[{unified:"1f1f7-1f1fc",native:"🇷🇼"}],version:2},"flag-sa":{id:"flag-sa",name:"Saudi Arabia Flag",keywords:["sa","nation","country","banner"],skins:[{unified:"1f1f8-1f1e6",native:"🇸🇦"}],version:2},"flag-sb":{id:"flag-sb",name:"Solomon Islands Flag",keywords:["sb","nation","country","banner"],skins:[{unified:"1f1f8-1f1e7",native:"🇸🇧"}],version:2},"flag-sc":{id:"flag-sc",name:"Seychelles Flag",keywords:["sc","nation","country","banner"],skins:[{unified:"1f1f8-1f1e8",native:"🇸🇨"}],version:2},"flag-sd":{id:"flag-sd",name:"Sudan Flag",keywords:["sd","nation","country","banner"],skins:[{unified:"1f1f8-1f1e9",native:"🇸🇩"}],version:2},"flag-se":{id:"flag-se",name:"Sweden Flag",keywords:["se","nation","country","banner"],skins:[{unified:"1f1f8-1f1ea",native:"🇸🇪"}],version:2},"flag-sg":{id:"flag-sg",name:"Singapore Flag",keywords:["sg","nation","country","banner"],skins:[{unified:"1f1f8-1f1ec",native:"🇸🇬"}],version:2},"flag-sh":{id:"flag-sh",name:"St. Helena Flag",keywords:["sh","st","saint","ascension","tristan","cunha","nation","country","banner"],skins:[{unified:"1f1f8-1f1ed",native:"🇸🇭"}],version:2},"flag-si":{id:"flag-si",name:"Slovenia Flag",keywords:["si","nation","country","banner"],skins:[{unified:"1f1f8-1f1ee",native:"🇸🇮"}],version:2},"flag-sj":{id:"flag-sj",name:"Svalbard & Jan Mayen Flag",keywords:["sj"],skins:[{unified:"1f1f8-1f1ef",native:"🇸🇯"}],version:2},"flag-sk":{id:"flag-sk",name:"Slovakia Flag",keywords:["sk","nation","country","banner"],skins:[{unified:"1f1f8-1f1f0",native:"🇸🇰"}],version:2},"flag-sl":{id:"flag-sl",name:"Sierra Leone Flag",keywords:["sl","nation","country","banner"],skins:[{unified:"1f1f8-1f1f1",native:"🇸🇱"}],version:2},"flag-sm":{id:"flag-sm",name:"San Marino Flag",keywords:["sm","nation","country","banner"],skins:[{unified:"1f1f8-1f1f2",native:"🇸🇲"}],version:2},"flag-sn":{id:"flag-sn",name:"Senegal Flag",keywords:["sn","nation","country","banner"],skins:[{unified:"1f1f8-1f1f3",native:"🇸🇳"}],version:2},"flag-so":{id:"flag-so",name:"Somalia Flag",keywords:["so","nation","country","banner"],skins:[{unified:"1f1f8-1f1f4",native:"🇸🇴"}],version:2},"flag-sr":{id:"flag-sr",name:"Suriname Flag",keywords:["sr","nation","country","banner"],skins:[{unified:"1f1f8-1f1f7",native:"🇸🇷"}],version:2},"flag-ss":{id:"flag-ss",name:"South Sudan Flag",keywords:["ss","sd","nation","country","banner"],skins:[{unified:"1f1f8-1f1f8",native:"🇸🇸"}],version:2},"flag-st":{id:"flag-st",name:"São Tomé & Príncipe Flag",keywords:["st","sao","tome","principe","nation","country","banner"],skins:[{unified:"1f1f8-1f1f9",native:"🇸🇹"}],version:2},"flag-sv":{id:"flag-sv",name:"El Salvador Flag",keywords:["sv","nation","country","banner"],skins:[{unified:"1f1f8-1f1fb",native:"🇸🇻"}],version:2},"flag-sx":{id:"flag-sx",name:"Sint Maarten Flag",keywords:["sx","dutch","nation","country","banner"],skins:[{unified:"1f1f8-1f1fd",native:"🇸🇽"}],version:2},"flag-sy":{id:"flag-sy",name:"Syria Flag",keywords:["sy","syrian","arab","republic","nation","country","banner"],skins:[{unified:"1f1f8-1f1fe",native:"🇸🇾"}],version:2},"flag-sz":{id:"flag-sz",name:"Eswatini Flag",keywords:["sz","nation","country","banner"],skins:[{unified:"1f1f8-1f1ff",native:"🇸🇿"}],version:2},"flag-ta":{id:"flag-ta",name:"Tristan Da Cunha Flag",keywords:["ta"],skins:[{unified:"1f1f9-1f1e6",native:"🇹🇦"}],version:2},"flag-tc":{id:"flag-tc",name:"Turks & Caicos Islands Flag",keywords:["tc","nation","country","banner"],skins:[{unified:"1f1f9-1f1e8",native:"🇹🇨"}],version:2},"flag-td":{id:"flag-td",name:"Chad Flag",keywords:["td","nation","country","banner"],skins:[{unified:"1f1f9-1f1e9",native:"🇹🇩"}],version:2},"flag-tf":{id:"flag-tf",name:"French Southern Territories Flag",keywords:["tf","nation","country","banner"],skins:[{unified:"1f1f9-1f1eb",native:"🇹🇫"}],version:2},"flag-tg":{id:"flag-tg",name:"Togo Flag",keywords:["tg","nation","country","banner"],skins:[{unified:"1f1f9-1f1ec",native:"🇹🇬"}],version:2},"flag-th":{id:"flag-th",name:"Thailand Flag",keywords:["th","nation","country","banner"],skins:[{unified:"1f1f9-1f1ed",native:"🇹🇭"}],version:2},"flag-tj":{id:"flag-tj",name:"Tajikistan Flag",keywords:["tj","nation","country","banner"],skins:[{unified:"1f1f9-1f1ef",native:"🇹🇯"}],version:2},"flag-tk":{id:"flag-tk",name:"Tokelau Flag",keywords:["tk","nation","country","banner"],skins:[{unified:"1f1f9-1f1f0",native:"🇹🇰"}],version:2},"flag-tl":{id:"flag-tl",name:"Timor-Leste Flag",keywords:["tl","timor","leste","nation","country","banner"],skins:[{unified:"1f1f9-1f1f1",native:"🇹🇱"}],version:2},"flag-tm":{id:"flag-tm",name:"Turkmenistan Flag",keywords:["tm","nation","country","banner"],skins:[{unified:"1f1f9-1f1f2",native:"🇹🇲"}],version:2},"flag-tn":{id:"flag-tn",name:"Tunisia Flag",keywords:["tn","nation","country","banner"],skins:[{unified:"1f1f9-1f1f3",native:"🇹🇳"}],version:2},"flag-to":{id:"flag-to",name:"Tonga Flag",keywords:["to","nation","country","banner"],skins:[{unified:"1f1f9-1f1f4",native:"🇹🇴"}],version:2},"flag-tr":{id:"flag-tr",name:"Turkey Flag",keywords:["tr","nation","country","banner"],skins:[{unified:"1f1f9-1f1f7",native:"🇹🇷"}],version:2},"flag-tt":{id:"flag-tt",name:"Trinidad & Tobago Flag",keywords:["tt","nation","country","banner"],skins:[{unified:"1f1f9-1f1f9",native:"🇹🇹"}],version:2},"flag-tv":{id:"flag-tv",name:"Tuvalu Flag",keywords:["tv","nation","country","banner"],skins:[{unified:"1f1f9-1f1fb",native:"🇹🇻"}],version:2},"flag-tw":{id:"flag-tw",name:"Taiwan Flag",keywords:["tw","nation","country","banner"],skins:[{unified:"1f1f9-1f1fc",native:"🇹🇼"}],version:2},"flag-tz":{id:"flag-tz",name:"Tanzania Flag",keywords:["tz","united","republic","nation","country","banner"],skins:[{unified:"1f1f9-1f1ff",native:"🇹🇿"}],version:2},"flag-ua":{id:"flag-ua",name:"Ukraine Flag",keywords:["ua","nation","country","banner"],skins:[{unified:"1f1fa-1f1e6",native:"🇺🇦"}],version:2},"flag-ug":{id:"flag-ug",name:"Uganda Flag",keywords:["ug","nation","country","banner"],skins:[{unified:"1f1fa-1f1ec",native:"🇺🇬"}],version:2},"flag-um":{id:"flag-um",name:"U.s. Outlying Islands Flag",keywords:["um","u","s"],skins:[{unified:"1f1fa-1f1f2",native:"🇺🇲"}],version:2},"flag-un":{id:"flag-un",name:"United Nations Flag",keywords:["un","banner"],skins:[{unified:"1f1fa-1f1f3",native:"🇺🇳"}],version:4},us:{id:"us",name:"United States Flag",keywords:["us","america","nation","country","banner"],skins:[{unified:"1f1fa-1f1f8",native:"🇺🇸"}],version:1},"flag-uy":{id:"flag-uy",name:"Uruguay Flag",keywords:["uy","nation","country","banner"],skins:[{unified:"1f1fa-1f1fe",native:"🇺🇾"}],version:2},"flag-uz":{id:"flag-uz",name:"Uzbekistan Flag",keywords:["uz","nation","country","banner"],skins:[{unified:"1f1fa-1f1ff",native:"🇺🇿"}],version:2},"flag-va":{id:"flag-va",name:"Vatican City Flag",keywords:["va","nation","country","banner"],skins:[{unified:"1f1fb-1f1e6",native:"🇻🇦"}],version:2},"flag-vc":{id:"flag-vc",name:"St. Vincent & Grenadines Flag",keywords:["vc","st","saint","nation","country","banner"],skins:[{unified:"1f1fb-1f1e8",native:"🇻🇨"}],version:2},"flag-ve":{id:"flag-ve",name:"Venezuela Flag",keywords:["ve","bolivarian","republic","nation","country","banner"],skins:[{unified:"1f1fb-1f1ea",native:"🇻🇪"}],version:2},"flag-vg":{id:"flag-vg",name:"British Virgin Islands Flag",keywords:["vg","bvi","nation","country","banner"],skins:[{unified:"1f1fb-1f1ec",native:"🇻🇬"}],version:2},"flag-vi":{id:"flag-vi",name:"U.s. Virgin Islands Flag",keywords:["vi","u","s","us","nation","country","banner"],skins:[{unified:"1f1fb-1f1ee",native:"🇻🇮"}],version:2},"flag-vn":{id:"flag-vn",name:"Vietnam Flag",keywords:["vn","viet","nam","nation","country","banner"],skins:[{unified:"1f1fb-1f1f3",native:"🇻🇳"}],version:2},"flag-vu":{id:"flag-vu",name:"Vanuatu Flag",keywords:["vu","nation","country","banner"],skins:[{unified:"1f1fb-1f1fa",native:"🇻🇺"}],version:2},"flag-wf":{id:"flag-wf",name:"Wallis & Futuna Flag",keywords:["wf","nation","country","banner"],skins:[{unified:"1f1fc-1f1eb",native:"🇼🇫"}],version:2},"flag-ws":{id:"flag-ws",name:"Samoa Flag",keywords:["ws","nation","country","banner"],skins:[{unified:"1f1fc-1f1f8",native:"🇼🇸"}],version:2},"flag-xk":{id:"flag-xk",name:"Kosovo Flag",keywords:["xk","nation","country","banner"],skins:[{unified:"1f1fd-1f1f0",native:"🇽🇰"}],version:2},"flag-ye":{id:"flag-ye",name:"Yemen Flag",keywords:["ye","nation","country","banner"],skins:[{unified:"1f1fe-1f1ea",native:"🇾🇪"}],version:2},"flag-yt":{id:"flag-yt",name:"Mayotte Flag",keywords:["yt","nation","country","banner"],skins:[{unified:"1f1fe-1f1f9",native:"🇾🇹"}],version:2},"flag-za":{id:"flag-za",name:"South Africa Flag",keywords:["za","nation","country","banner"],skins:[{unified:"1f1ff-1f1e6",native:"🇿🇦"}],version:2},"flag-zm":{id:"flag-zm",name:"Zambia Flag",keywords:["zm","nation","country","banner"],skins:[{unified:"1f1ff-1f1f2",native:"🇿🇲"}],version:2},"flag-zw":{id:"flag-zw",name:"Zimbabwe Flag",keywords:["zw","nation","country","banner"],skins:[{unified:"1f1ff-1f1fc",native:"🇿🇼"}],version:2},"flag-england":{id:"flag-england",name:"England Flag",keywords:["english"],skins:[{unified:"1f3f4-e0067-e0062-e0065-e006e-e0067-e007f",native:"🏴󠁧󠁢󠁥󠁮󠁧󠁿"}],version:5},"flag-scotland":{id:"flag-scotland",name:"Scotland Flag",keywords:["scottish"],skins:[{unified:"1f3f4-e0067-e0062-e0073-e0063-e0074-e007f",native:"🏴󠁧󠁢󠁳󠁣󠁴󠁿"}],version:5},"flag-wales":{id:"flag-wales",name:"Wales Flag",keywords:["welsh"],skins:[{unified:"1f3f4-e0067-e0062-e0077-e006c-e0073-e007f",native:"🏴󠁧󠁢󠁷󠁬󠁳󠁿"}],version:5}},aliases:{satisfied:"laughing",grinning_face_with_star_eyes:"star-struck",grinning_face_with_one_large_and_one_small_eye:"zany_face",smiling_face_with_smiling_eyes_and_hand_covering_mouth:"face_with_hand_over_mouth",face_with_finger_covering_closed_lips:"shushing_face",face_with_one_eyebrow_raised:"face_with_raised_eyebrow",face_with_open_mouth_vomiting:"face_vomiting",shocked_face_with_exploding_head:"exploding_head",serious_face_with_symbols_covering_mouth:"face_with_symbols_on_mouth",poop:"hankey",shit:"hankey",collision:"boom",raised_hand:"hand",hand_with_index_and_middle_fingers_crossed:"crossed_fingers",sign_of_the_horns:"the_horns",reversed_hand_with_middle_finger_extended:"middle_finger",thumbsup:"+1",thumbsdown:"-1",punch:"facepunch",mother_christmas:"mrs_claus",running:"runner","man-with-bunny-ears-partying":"men-with-bunny-ears-partying","woman-with-bunny-ears-partying":"women-with-bunny-ears-partying",women_holding_hands:"two_women_holding_hands",woman_and_man_holding_hands:"man_and_woman_holding_hands",couple:"man_and_woman_holding_hands",men_holding_hands:"two_men_holding_hands",paw_prints:"feet",flipper:"dolphin",honeybee:"bee",lady_beetle:"ladybug",cooking:"fried_egg",knife:"hocho",red_car:"car",sailboat:"boat",waxing_gibbous_moon:"moon",sun_small_cloud:"mostly_sunny",sun_behind_cloud:"barely_sunny",sun_behind_rain_cloud:"partly_sunny_rain",lightning_cloud:"lightning",tornado_cloud:"tornado",tshirt:"shirt",shoe:"mans_shoe",telephone:"phone",lantern:"izakaya_lantern",open_book:"book",envelope:"email",pencil:"memo",heavy_exclamation_mark:"exclamation",staff_of_aesculapius:"medical_symbol","flag-cn":"cn","flag-de":"de","flag-es":"es","flag-fr":"fr",uk:"gb","flag-gb":"gb","flag-it":"it","flag-jp":"jp","flag-kr":"kr","flag-ru":"ru","flag-us":"us"},sheet:{cols:61,rows:61}};function ru(e){return e&&e.__esModule?e.default:e}function fu(e,n,i){return n in e?Object.defineProperty(e,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[n]=i,e}var du,lu,cu,uu,hu,mu,pu={},vu=[],gu=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function ku(e,n){for(var i in n)e[i]=n[i];return e}function yu(e){var n=e.parentNode;n&&n.removeChild(e)}function wu(e,n,i){var t,a,s,o={};for(s in n)"key"==s?t=n[s]:"ref"==s?a=n[s]:o[s]=n[s];if(arguments.length>2&&(o.children=arguments.length>3?du.call(arguments,2):i),"function"==typeof e&&null!=e.defaultProps)for(s in e.defaultProps)void 0===o[s]&&(o[s]=e.defaultProps[s]);return bu(e,o,t,a,null)}function bu(e,n,i,t,a){var s={type:e,props:n,key:i,ref:t,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:a??++cu};return null==a&&null!=lu.vnode&&lu.vnode(s),s}function _u(e){return e.children}function xu(e,n){this.props=e,this.context=n}function Su(e,n){if(null==n)return e.__?Su(e.__,e.__.__k.indexOf(e)+1):null;for(var i;n<e.__k.length;n++)if(null!=(i=e.__k[n])&&null!=i.__e)return i.__e;return"function"==typeof e.type?Su(e):null}function Cu(e){var n,i;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,n=0;n<e.__k.length;n++)if(null!=(i=e.__k[n])&&null!=i.__e){e.__e=e.__c.base=i.__e;break}return Cu(e)}}function Mu(e){(!e.__d&&(e.__d=!0)&&uu.push(e)&&!Ou.__r++||mu!==lu.debounceRendering)&&((mu=lu.debounceRendering)||hu)(Ou)}function Ou(){for(var e;Ou.__r=uu.length;)e=uu.sort((function(e,n){return e.__v.__b-n.__v.__b})),uu=[],e.some((function(e){var n,i,t,a,s,o;e.__d&&(s=(a=(n=e).__v).__e,(o=n.__P)&&(i=[],(t=ku({},a)).__v=a.__v+1,zu(o,a,t,n.__n,void 0!==o.ownerSVGElement,null!=a.__h?[s]:null,i,s??Su(a),a.__h),Pu(i,a),a.__e!=s&&Cu(a)))}))}function Tu(e,n,i,t,a,s,o,r,f,d){var l,c,u,h,m,p,v,g=t&&t.__k||vu,k=g.length;for(i.__k=[],l=0;l<n.length;l++)if(null!=(h=i.__k[l]=null==(h=n[l])||"boolean"==typeof h?null:"string"==typeof h||"number"==typeof h||"bigint"==typeof h?bu(null,h,null,null,h):Array.isArray(h)?bu(_u,{children:h},null,null,null):h.__b>0?bu(h.type,h.props,h.key,null,h.__v):h)){if(h.__=i,h.__b=i.__b+1,null===(u=g[l])||u&&h.key==u.key&&h.type===u.type)g[l]=void 0;else for(c=0;c<k;c++){if((u=g[c])&&h.key==u.key&&h.type===u.type){g[c]=void 0;break}u=null}zu(e,h,u=u||pu,a,s,o,r,f,d),m=h.__e,(c=h.ref)&&u.ref!=c&&(v||(v=[]),u.ref&&v.push(u.ref,null,h),v.push(c,h.__c||m,h)),null!=m?(null==p&&(p=m),"function"==typeof h.type&&h.__k===u.__k?h.__d=f=Eu(h,f,e):f=Au(e,h,u,g,m,f),"function"==typeof i.type&&(i.__d=f)):f&&u.__e==f&&f.parentNode!=e&&(f=Su(u))}for(i.__e=p,l=k;l--;)null!=g[l]&&("function"==typeof i.type&&null!=g[l].__e&&g[l].__e==i.__d&&(i.__d=Su(t,l+1)),Lu(g[l],g[l]));if(v)for(l=0;l<v.length;l++)Bu(v[l],v[++l],v[++l])}function Eu(e,n,i){for(var t,a=e.__k,s=0;a&&s<a.length;s++)(t=a[s])&&(t.__=e,n="function"==typeof t.type?Eu(t,n,i):Au(i,t,t,a,t.__e,n));return n}function Fu(e,n){return n=n||[],null==e||"boolean"==typeof e||(Array.isArray(e)?e.some((function(e){Fu(e,n)})):n.push(e)),n}function Au(e,n,i,t,a,s){var o,r,f;if(void 0!==n.__d)o=n.__d,n.__d=void 0;else if(null==i||a!=s||null==a.parentNode)e:if(null==s||s.parentNode!==e)e.appendChild(a),o=null;else{for(r=s,f=0;(r=r.nextSibling)&&f<t.length;f+=2)if(r==a)break e;e.insertBefore(a,s),o=s}return void 0!==o?o:a.nextSibling}function Nu(e,n,i){"-"===n[0]?e.setProperty(n,i):e[n]=null==i?"":"number"!=typeof i||gu.test(n)?i:i+"px"}function ju(e,n,i,t,a){var s;e:if("style"===n)if("string"==typeof i)e.style.cssText=i;else{if("string"==typeof t&&(e.style.cssText=t=""),t)for(n in t)i&&n in i||Nu(e.style,n,"");if(i)for(n in i)t&&i[n]===t[n]||Nu(e.style,n,i[n])}else if("o"===n[0]&&"n"===n[1])s=n!==(n=n.replace(/Capture$/,"")),n=n.toLowerCase()in e?n.toLowerCase().slice(2):n.slice(2),e.l||(e.l={}),e.l[n+s]=i,i?t||e.addEventListener(n,s?Du:Ru,s):e.removeEventListener(n,s?Du:Ru,s);else if("dangerouslySetInnerHTML"!==n){if(a)n=n.replace(/xlink[H:h]/,"h").replace(/sName$/,"s");else if("href"!==n&&"list"!==n&&"form"!==n&&"tabIndex"!==n&&"download"!==n&&n in e)try{e[n]=i??"";break e}catch{}"function"==typeof i||(null!=i&&(!1!==i||"a"===n[0]&&"r"===n[1])?e.setAttribute(n,i):e.removeAttribute(n))}}function Ru(e){this.l[e.type+!1](lu.event?lu.event(e):e)}function Du(e){this.l[e.type+!0](lu.event?lu.event(e):e)}function zu(e,n,i,t,a,s,o,r,f){var d,l,c,u,h,m,p,v,g,k,y,w=n.type;if(void 0!==n.constructor)return null;null!=i.__h&&(f=i.__h,r=n.__e=i.__e,n.__h=null,s=[r]),(d=lu.__b)&&d(n);try{e:if("function"==typeof w){if(v=n.props,g=(d=w.contextType)&&t[d.__c],k=d?g?g.props.value:d.__:t,i.__c?p=(l=n.__c=i.__c).__=l.__E:("prototype"in w&&w.prototype.render?n.__c=l=new w(v,k):(n.__c=l=new xu(v,k),l.constructor=w,l.render=Iu),g&&g.sub(l),l.props=v,l.state||(l.state={}),l.context=k,l.__n=t,c=l.__d=!0,l.__h=[]),null==l.__s&&(l.__s=l.state),null!=w.getDerivedStateFromProps&&(l.__s==l.state&&(l.__s=ku({},l.__s)),ku(l.__s,w.getDerivedStateFromProps(v,l.__s))),u=l.props,h=l.state,c)null==w.getDerivedStateFromProps&&null!=l.componentWillMount&&l.componentWillMount(),null!=l.componentDidMount&&l.__h.push(l.componentDidMount);else{if(null==w.getDerivedStateFromProps&&v!==u&&null!=l.componentWillReceiveProps&&l.componentWillReceiveProps(v,k),!l.__e&&null!=l.shouldComponentUpdate&&!1===l.shouldComponentUpdate(v,l.__s,k)||n.__v===i.__v){l.props=v,l.state=l.__s,n.__v!==i.__v&&(l.__d=!1),l.__v=n,n.__e=i.__e,n.__k=i.__k,n.__k.forEach((function(e){e&&(e.__=n)})),l.__h.length&&o.push(l);break e}null!=l.componentWillUpdate&&l.componentWillUpdate(v,l.__s,k),null!=l.componentDidUpdate&&l.__h.push((function(){l.componentDidUpdate(u,h,m)}))}l.context=k,l.props=v,l.state=l.__s,(d=lu.__r)&&d(n),l.__d=!1,l.__v=n,l.__P=e,d=l.render(l.props,l.state,l.context),l.state=l.__s,null!=l.getChildContext&&(t=ku(ku({},t),l.getChildContext())),c||null==l.getSnapshotBeforeUpdate||(m=l.getSnapshotBeforeUpdate(u,h)),y=null!=d&&d.type===_u&&null==d.key?d.props.children:d,Tu(e,Array.isArray(y)?y:[y],n,i,t,a,s,o,r,f),l.base=n.__e,n.__h=null,l.__h.length&&o.push(l),p&&(l.__E=l.__=null),l.__e=!1}else null==s&&n.__v===i.__v?(n.__k=i.__k,n.__e=i.__e):n.__e=function(e,n,i,t,a,s,o,r){var f,d,l,c=i.props,u=n.props,h=n.type,m=0;if("svg"===h&&(a=!0),null!=s)for(;m<s.length;m++)if((f=s[m])&&"setAttribute"in f==!!h&&(h?f.localName===h:3===f.nodeType)){e=f,s[m]=null;break}if(null==e){if(null===h)return document.createTextNode(u);e=a?document.createElementNS("http://www.w3.org/2000/svg",h):document.createElement(h,u.is&&u),s=null,r=!1}if(null===h)c===u||r&&e.data===u||(e.data=u);else{if(s=s&&du.call(e.childNodes),d=(c=i.props||pu).dangerouslySetInnerHTML,l=u.dangerouslySetInnerHTML,!r){if(null!=s)for(c={},m=0;m<e.attributes.length;m++)c[e.attributes[m].name]=e.attributes[m].value;(l||d)&&(l&&(d&&l.__html==d.__html||l.__html===e.innerHTML)||(e.innerHTML=l&&l.__html||""))}if(function(e,n,i,t,a){var s;for(s in i)"children"===s||"key"===s||s in n||ju(e,s,null,i[s],t);for(s in n)a&&"function"!=typeof n[s]||"children"===s||"key"===s||"value"===s||"checked"===s||i[s]===n[s]||ju(e,s,n[s],i[s],t)}(e,u,c,a,r),l)n.__k=[];else if(m=n.props.children,Tu(e,Array.isArray(m)?m:[m],n,i,t,a&&"foreignObject"!==h,s,o,s?s[0]:i.__k&&Su(i,0),r),null!=s)for(m=s.length;m--;)null!=s[m]&&yu(s[m]);r||("value"in u&&void 0!==(m=u.value)&&(m!==c.value||m!==e.value||"progress"===h&&!m)&&ju(e,"value",m,c.value,!1),"checked"in u&&void 0!==(m=u.checked)&&m!==e.checked&&ju(e,"checked",m,c.checked,!1))}return e}(i.__e,n,i,t,a,s,o,f);(d=lu.diffed)&&d(n)}catch(e){n.__v=null,(f||null!=s)&&(n.__e=r,n.__h=!!f,s[s.indexOf(r)]=null),lu.__e(e,n,i)}}function Pu(e,n){lu.__c&&lu.__c(n,e),e.some((function(n){try{e=n.__h,n.__h=[],e.some((function(e){e.call(n)}))}catch(e){lu.__e(e,n.__v)}}))}function Bu(e,n,i){try{"function"==typeof e?e(n):e.current=n}catch(e){lu.__e(e,i)}}function Lu(e,n,i){var t,a;if(lu.unmount&&lu.unmount(e),(t=e.ref)&&(t.current&&t.current!==e.__e||Bu(t,null,n)),null!=(t=e.__c)){if(t.componentWillUnmount)try{t.componentWillUnmount()}catch(e){lu.__e(e,n)}t.base=t.__P=null}if(t=e.__k)for(a=0;a<t.length;a++)t[a]&&Lu(t[a],n,"function"!=typeof e.type);i||null==e.__e||yu(e.__e),e.__e=e.__d=void 0}function Iu(e,n,i){return this.constructor(e,i)}function Hu(e,n,i){var t,a,s;lu.__&&lu.__(e,n),a=(t="function"==typeof i)?null:i&&i.__k||n.__k,s=[],zu(n,e=(!t&&i||n).__k=wu(_u,null,[e]),a||pu,pu,void 0!==n.ownerSVGElement,!t&&i?[i]:a?null:n.firstChild?du.call(n.childNodes):null,s,!t&&i?i:a?a.__e:n.firstChild,t),Pu(s,e)}du=vu.slice,lu={__e:function(e,n){for(var i,t,a;n=n.__;)if((i=n.__c)&&!i.__)try{if((t=i.constructor)&&null!=t.getDerivedStateFromError&&(i.setState(t.getDerivedStateFromError(e)),a=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(e),a=i.__d),a)return i.__E=i}catch(n){e=n}throw e}},cu=0,xu.prototype.setState=function(e,n){var i;i=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=ku({},this.state),"function"==typeof e&&(e=e(ku({},i),this.props)),e&&ku(i,e),null!=e&&this.__v&&(n&&this.__h.push(n),Mu(this))},xu.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),Mu(this))},xu.prototype.render=_u,uu=[],hu="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Ou.__r=0;var qu=0;function Wu(e,n,i,t,a){var s,o,r={};for(o in n)"ref"==o?s=n[o]:r[o]=n[o];var f={type:e,props:r,key:i,ref:s,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:--qu,__source:t,__self:a};if("function"==typeof e&&(s=e.defaultProps))for(o in s)void 0===r[o]&&(r[o]=s[o]);return lu.vnode&&lu.vnode(f),f}var $u={set:function(e,n){try{window.localStorage[`emoji-mart.${e}`]=JSON.stringify(n)}catch{}},get:function(e){try{const n=window.localStorage[`emoji-mart.${e}`];if(n)return JSON.parse(n)}catch{}}};const Vu=new Map,Uu=[{v:15,emoji:"🫨"},{v:14,emoji:"🫠"},{v:13.1,emoji:"😶‍🌫️"},{v:13,emoji:"🥸"},{v:12.1,emoji:"🧑‍🦰"},{v:12,emoji:"🥱"},{v:11,emoji:"🥰"},{v:5,emoji:"🤩"},{v:4,emoji:"👱‍♀️"},{v:3,emoji:"🤣"},{v:2,emoji:"👋🏻"},{v:1,emoji:"🙃"}];function Gu(e){if(Vu.has(e))return Vu.get(e);const n=Ku(e);return Vu.set(e,n),n}const Ku=(()=>{let e=null;try{navigator.userAgent.includes("jsdom")||(e=document.createElement("canvas").getContext("2d",{willReadFrequently:!0}))}catch{}if(!e)return()=>!1;const n=20,i=Math.floor(12.5);return e.font=i+"px Arial, Sans-Serif",e.textBaseline="top",e.canvas.width=40,e.canvas.height=25,i=>{e.clearRect(0,0,40,25),e.fillStyle="#FF0000",e.fillText(i,0,22),e.fillStyle="#0000FF",e.fillText(i,n,22);const t=e.getImageData(0,0,n,25).data,a=t.length;let s=0;for(;s<a&&!t[s+3];s+=4);if(s>=a)return!1;const o=n+s/4%n,r=Math.floor(s/4/n),f=e.getImageData(o,r,1,1).data;return!(t[s]!==f[0]||t[s+2]!==f[2]||e.measureText(i).width>=n)}})();var Ju={latestVersion:function(){for(const{v:e,emoji:n}of Uu)if(Gu(n))return e},noCountryFlags:function(){return!Gu("🇨🇦")}};const Yu=["+1","grinning","kissing_heart","heart_eyes","laughing","stuck_out_tongue_winking_eye","sweat_smile","joy","scream","disappointed","unamused","weary","sob","sunglasses","heart"];let Qu=null;var Xu={add:function(e){Qu||(Qu=$u.get("frequently")||{});const n=e.id||e;n&&(Qu[n]||(Qu[n]=0),Qu[n]+=1,$u.set("last",n),$u.set("frequently",Qu))},get:function({maxFrequentRows:e,perLine:n}){if(!e)return[];Qu||(Qu=$u.get("frequently"));let i=[];if(!Qu){Qu={};for(let e in Yu.slice(0,n)){const t=Yu[e];Qu[t]=n-e,i.push(t)}return i}const t=e*n,a=$u.get("last");for(let e in Qu)i.push(e);if(i.sort(((e,n)=>{const i=Qu[n],t=Qu[e];return i==t?e.localeCompare(n):i-t})),i.length>t){const e=i.slice(t);i=i.slice(0,t);for(let n of e)n!=a&&delete Qu[n];a&&-1==i.indexOf(a)&&(delete Qu[i[i.length-1]],i.splice(-1,1,a)),$u.set("frequently",Qu)}return i},DEFAULTS:Yu},Zu={};Zu=JSON.parse('{"search":"Search","search_no_results_1":"Oh no!","search_no_results_2":"That emoji couldn’t be found","pick":"Pick an emoji…","add_custom":"Add custom emoji","categories":{"activity":"Activity","custom":"Custom","flags":"Flags","foods":"Food & Drink","frequent":"Frequently used","nature":"Animals & Nature","objects":"Objects","people":"Smileys & People","places":"Travel & Places","search":"Search Results","symbols":"Symbols"},"skins":{"1":"Default","2":"Light","3":"Medium-Light","4":"Medium","5":"Medium-Dark","6":"Dark","choose":"Choose default skin tone"}}');var eh={autoFocus:{value:!1},dynamicWidth:{value:!1},emojiButtonColors:{value:null},emojiButtonRadius:{value:"100%"},emojiButtonSize:{value:36},emojiSize:{value:24},emojiVersion:{value:15,choices:[1,2,3,4,5,11,12,12.1,13,13.1,14,15]},exceptEmojis:{value:[]},icons:{value:"auto",choices:["auto","outline","solid"]},locale:{value:"en",choices:["en","ar","be","cs","de","es","fa","fi","fr","hi","it","ja","ko","nl","pl","pt","ru","sa","tr","uk","vi","zh"]},maxFrequentRows:{value:4},navPosition:{value:"top",choices:["top","bottom","none"]},noCountryFlags:{value:!1},noResultsEmoji:{value:null},perLine:{value:9},previewEmoji:{value:null},previewPosition:{value:"bottom",choices:["top","bottom","none"]},searchPosition:{value:"sticky",choices:["sticky","static","none"]},set:{value:"native",choices:["native","apple","facebook","google","twitter"]},skin:{value:1,choices:[1,2,3,4,5,6]},skinTonePosition:{value:"preview",choices:["preview","search","none"]},theme:{value:"auto",choices:["auto","light","dark"]},categories:null,categoryIcons:null,custom:null,data:null,i18n:null,getImageURL:null,getSpritesheetURL:null,onAddCustomEmoji:null,onClickOutside:null,onEmojiSelect:null,stickySearch:{deprecated:!0,value:!0}};let nh=null,ih=null;const th={};async function ah(e){if(th[e])return th[e];const n=await(await fetch(e)).json();return th[e]=n,n}let sh=null,oh=null,rh=!1;function fh(e,{caller:n}={}){return sh||(sh=new Promise((e=>{oh=e}))),e?async function(e){rh=!0;let{emojiVersion:n,set:i,locale:t}=e;if(n||(n=eh.emojiVersion.value),i||(i=eh.set.value),t||(t=eh.locale.value),ih)ih.categories=ih.categories.filter((e=>!e.name));else{ih=("function"==typeof e.data?await e.data():e.data)||await ah(`https://cdn.jsdelivr.net/npm/@emoji-mart/data@latest/sets/${n}/${i}.json`),ih.emoticons={},ih.natives={},ih.categories.unshift({id:"frequent",emojis:[]});for(const e in ih.aliases){const n=ih.aliases[e],i=ih.emojis[n];i&&(i.aliases||(i.aliases=[]),i.aliases.push(e))}ih.originalCategories=ih.categories}if(nh=("function"==typeof e.i18n?await e.i18n():e.i18n)||("en"==t?ru(Zu):await ah(`https://cdn.jsdelivr.net/npm/@emoji-mart/data@latest/i18n/${t}.json`)),e.custom)for(let n in e.custom){n=parseInt(n);const i=e.custom[n],t=e.custom[n-1];if(i.emojis&&i.emojis.length){i.id||(i.id=`custom_${n+1}`),i.name||(i.name=nh.categories.custom),t&&!i.icon&&(i.target=t.target||t),ih.categories.push(i);for(const e of i.emojis)ih.emojis[e.id]=e}}e.categories&&(ih.categories=ih.originalCategories.filter((n=>-1!=e.categories.indexOf(n.id))).sort(((n,i)=>e.categories.indexOf(n.id)-e.categories.indexOf(i.id))));let a=null,s=null;"native"==i&&(a=Ju.latestVersion(),s=e.noCountryFlags||Ju.noCountryFlags());let o=ih.categories.length,r=!1;for(;o--;){const n=ih.categories[o];if("frequent"==n.id){let{maxFrequentRows:i,perLine:t}=e;i=i>=0?i:eh.maxFrequentRows.value,t||(t=eh.perLine.value),n.emojis=Xu.get({maxFrequentRows:i,perLine:t})}if(!n.emojis||!n.emojis.length){ih.categories.splice(o,1);continue}const{categoryIcons:i}=e;if(i){const e=i[n.id];e&&!n.icon&&(n.icon=e)}let t=n.emojis.length;for(;t--;){const i=n.emojis[t],o=i.id?i:ih.emojis[i],f=()=>{n.emojis.splice(t,1)};if(!o||e.exceptEmojis&&e.exceptEmojis.includes(o.id))f();else if(a&&o.version>a)f();else if(!s||"flags"!=n.id||hh.includes(o.id)){if(!o.search){if(r=!0,o.search=","+[[o.id,!1],[o.name,!0],[o.keywords,!1],[o.emoticons,!1]].map((([e,n])=>{if(e)return(Array.isArray(e)?e:[e]).map((e=>(n?e.split(/[-|_|\s]+/):[e]).map((e=>e.toLowerCase())))).flat()})).flat().filter((e=>e&&e.trim())).join(","),o.emoticons)for(const e of o.emoticons)ih.emoticons[e]||(ih.emoticons[e]=o.id);let e=0;for(const n of o.skins){if(!n)continue;e++;const{native:i}=n;i&&(ih.natives[i]=o.id,o.search+=`,${i}`);const t=1==e?"":`:skin-tone-${e}:`;n.shortcodes=`:${o.id}:${t}`}}}else f()}}r&&uh.reset(),oh()}(e):n&&!rh&&console.warn(`\`${n}\` requires data to be initialized first. Promise will be pending until \`init\` is called.`),sh}function dh(e,n,i){e||(e={});const t={};for(let a in n)t[a]=lh(a,e,n,i);return t}function lh(e,n,i,t){const a=i[e];let s=t&&t.getAttribute(e)||(null!=n[e]&&null!=n[e]?n[e]:null);return a&&(null!=s&&a.value&&typeof a.value!=typeof s&&(s="boolean"==typeof a.value?"false"!=s:a.value.constructor(s)),a.transform&&s&&(s=a.transform(s)),(null==s||a.choices&&-1==a.choices.indexOf(s))&&(s=a.value)),s}let ch=null;var uh={search:async function(e,{maxResults:n,caller:i}={}){if(!e||!e.trim().length)return null;n||(n=90),await fh(null,{caller:i||"SearchIndex.search"});const t=e.toLowerCase().replace(/(\w)-/,"$1 ").split(/[\s|,]+/).filter(((e,n,i)=>e.trim()&&i.indexOf(e)==n));if(!t.length)return;let a,s,o=ch||(ch=Object.values(ih.emojis));for(const e of t){if(!o.length)break;a=[],s={};for(const n of o){if(!n.search)continue;const i=n.search.indexOf(`,${e}`);-1!=i&&(a.push(n),s[n.id]||(s[n.id]=0),s[n.id]+=n.id==e?0:i+1)}o=a}return a.length<2||(a.sort(((e,n)=>{const i=s[e.id],t=s[n.id];return i==t?e.id.localeCompare(n.id):i-t})),a.length>n&&(a=a.slice(0,n))),a},get:function(e){return e.id?e:ih.emojis[e]||ih.emojis[ih.aliases[e]]||ih.emojis[ih.natives[e]]},reset:function(){ch=null},SHORTCODES_REGEX:/^(?:\:([^\:]+)\:)(?:\:skin-tone-(\d)\:)?$/};const hh=["checkered_flag","crossed_flags","pirate_flag","rainbow-flag","transgender_flag","triangular_flag_on_post","waving_black_flag","waving_white_flag"];var mh={categories:{activity:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Wu("path",{d:"M12 0C5.373 0 0 5.372 0 12c0 6.627 5.373 12 12 12 6.628 0 12-5.373 12-12 0-6.628-5.372-12-12-12m9.949 11H17.05c.224-2.527 1.232-4.773 1.968-6.113A9.966 9.966 0 0 1 21.949 11M13 11V2.051a9.945 9.945 0 0 1 4.432 1.564c-.858 1.491-2.156 4.22-2.392 7.385H13zm-2 0H8.961c-.238-3.165-1.536-5.894-2.393-7.385A9.95 9.95 0 0 1 11 2.051V11zm0 2v8.949a9.937 9.937 0 0 1-4.432-1.564c.857-1.492 2.155-4.221 2.393-7.385H11zm4.04 0c.236 3.164 1.534 5.893 2.392 7.385A9.92 9.92 0 0 1 13 21.949V13h2.04zM4.982 4.887C5.718 6.227 6.726 8.473 6.951 11h-4.9a9.977 9.977 0 0 1 2.931-6.113M2.051 13h4.9c-.226 2.527-1.233 4.771-1.969 6.113A9.972 9.972 0 0 1 2.051 13m16.967 6.113c-.735-1.342-1.744-3.586-1.968-6.113h4.899a9.961 9.961 0 0 1-2.931 6.113"})}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M16.17 337.5c0 44.98 7.565 83.54 13.98 107.9C35.22 464.3 50.46 496 174.9 496c9.566 0 19.59-.4707 29.84-1.271L17.33 307.3C16.53 317.6 16.17 327.7 16.17 337.5zM495.8 174.5c0-44.98-7.565-83.53-13.98-107.9c-4.688-17.54-18.34-31.23-36.04-35.95C435.5 27.91 392.9 16 337 16c-9.564 0-19.59 .4707-29.84 1.271l187.5 187.5C495.5 194.4 495.8 184.3 495.8 174.5zM26.77 248.8l236.3 236.3c142-36.1 203.9-150.4 222.2-221.1L248.9 26.87C106.9 62.96 45.07 177.2 26.77 248.8zM256 335.1c0 9.141-7.474 16-16 16c-4.094 0-8.188-1.564-11.31-4.689L164.7 283.3C161.6 280.2 160 276.1 160 271.1c0-8.529 6.865-16 16-16c4.095 0 8.189 1.562 11.31 4.688l64.01 64C254.4 327.8 256 331.9 256 335.1zM304 287.1c0 9.141-7.474 16-16 16c-4.094 0-8.188-1.564-11.31-4.689L212.7 235.3C209.6 232.2 208 228.1 208 223.1c0-9.141 7.473-16 16-16c4.094 0 8.188 1.562 11.31 4.688l64.01 64.01C302.5 279.8 304 283.9 304 287.1zM256 175.1c0-9.141 7.473-16 16-16c4.094 0 8.188 1.562 11.31 4.688l64.01 64.01c3.125 3.125 4.688 7.219 4.688 11.31c0 9.133-7.468 16-16 16c-4.094 0-8.189-1.562-11.31-4.688l-64.01-64.01C257.6 184.2 256 180.1 256 175.1z"})})},custom:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",children:Wu("path",{d:"M417.1 368c-5.937 10.27-16.69 16-27.75 16c-5.422 0-10.92-1.375-15.97-4.281L256 311.4V448c0 17.67-14.33 32-31.1 32S192 465.7 192 448V311.4l-118.3 68.29C68.67 382.6 63.17 384 57.75 384c-11.06 0-21.81-5.734-27.75-16c-8.828-15.31-3.594-34.88 11.72-43.72L159.1 256L41.72 187.7C26.41 178.9 21.17 159.3 29.1 144C36.63 132.5 49.26 126.7 61.65 128.2C65.78 128.7 69.88 130.1 73.72 132.3L192 200.6V64c0-17.67 14.33-32 32-32S256 46.33 256 64v136.6l118.3-68.29c3.838-2.213 7.939-3.539 12.07-4.051C398.7 126.7 411.4 132.5 417.1 144c8.828 15.31 3.594 34.88-11.72 43.72L288 256l118.3 68.28C421.6 333.1 426.8 352.7 417.1 368z"})}),flags:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Wu("path",{d:"M0 0l6.084 24H8L1.916 0zM21 5h-4l-1-4H4l3 12h3l1 4h13L21 5zM6.563 3h7.875l2 8H8.563l-2-8zm8.832 10l-2.856 1.904L12.063 13h3.332zM19 13l-1.5-6h1.938l2 8H16l3-2z"})}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M64 496C64 504.8 56.75 512 48 512h-32C7.25 512 0 504.8 0 496V32c0-17.75 14.25-32 32-32s32 14.25 32 32V496zM476.3 0c-6.365 0-13.01 1.35-19.34 4.233c-45.69 20.86-79.56 27.94-107.8 27.94c-59.96 0-94.81-31.86-163.9-31.87C160.9 .3055 131.6 4.867 96 15.75v350.5c32-9.984 59.87-14.1 84.85-14.1c73.63 0 124.9 31.78 198.6 31.78c31.91 0 68.02-5.971 111.1-23.09C504.1 355.9 512 344.4 512 332.1V30.73C512 11.1 495.3 0 476.3 0z"})})},foods:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Wu("path",{d:"M17 4.978c-1.838 0-2.876.396-3.68.934.513-1.172 1.768-2.934 4.68-2.934a1 1 0 0 0 0-2c-2.921 0-4.629 1.365-5.547 2.512-.064.078-.119.162-.18.244C11.73 1.838 10.798.023 9.207.023 8.579.022 7.85.306 7 .978 5.027 2.54 5.329 3.902 6.492 4.999 3.609 5.222 0 7.352 0 12.969c0 4.582 4.961 11.009 9 11.009 1.975 0 2.371-.486 3-1 .629.514 1.025 1 3 1 4.039 0 9-6.418 9-11 0-5.953-4.055-8-7-8M8.242 2.546c.641-.508.943-.523.965-.523.426.169.975 1.405 1.357 3.055-1.527-.629-2.741-1.352-2.98-1.846.059-.112.241-.356.658-.686M15 21.978c-1.08 0-1.21-.109-1.559-.402l-.176-.146c-.367-.302-.816-.452-1.266-.452s-.898.15-1.266.452l-.176.146c-.347.292-.477.402-1.557.402-2.813 0-7-5.389-7-9.009 0-5.823 4.488-5.991 5-5.991 1.939 0 2.484.471 3.387 1.251l.323.276a1.995 1.995 0 0 0 2.58 0l.323-.276c.902-.78 1.447-1.251 3.387-1.251.512 0 5 .168 5 6 0 3.617-4.187 9-7 9"})}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M481.9 270.1C490.9 279.1 496 291.3 496 304C496 316.7 490.9 328.9 481.9 337.9C472.9 346.9 460.7 352 448 352H64C51.27 352 39.06 346.9 30.06 337.9C21.06 328.9 16 316.7 16 304C16 291.3 21.06 279.1 30.06 270.1C39.06 261.1 51.27 256 64 256H448C460.7 256 472.9 261.1 481.9 270.1zM475.3 388.7C478.3 391.7 480 395.8 480 400V416C480 432.1 473.3 449.3 461.3 461.3C449.3 473.3 432.1 480 416 480H96C79.03 480 62.75 473.3 50.75 461.3C38.74 449.3 32 432.1 32 416V400C32 395.8 33.69 391.7 36.69 388.7C39.69 385.7 43.76 384 48 384H464C468.2 384 472.3 385.7 475.3 388.7zM50.39 220.8C45.93 218.6 42.03 215.5 38.97 211.6C35.91 207.7 33.79 203.2 32.75 198.4C31.71 193.5 31.8 188.5 32.99 183.7C54.98 97.02 146.5 32 256 32C365.5 32 457 97.02 479 183.7C480.2 188.5 480.3 193.5 479.2 198.4C478.2 203.2 476.1 207.7 473 211.6C469.1 215.5 466.1 218.6 461.6 220.8C457.2 222.9 452.3 224 447.3 224H64.67C59.73 224 54.84 222.9 50.39 220.8zM372.7 116.7C369.7 119.7 368 123.8 368 128C368 131.2 368.9 134.3 370.7 136.9C372.5 139.5 374.1 141.6 377.9 142.8C380.8 143.1 384 144.3 387.1 143.7C390.2 143.1 393.1 141.6 395.3 139.3C397.6 137.1 399.1 134.2 399.7 131.1C400.3 128 399.1 124.8 398.8 121.9C397.6 118.1 395.5 116.5 392.9 114.7C390.3 112.9 387.2 111.1 384 111.1C379.8 111.1 375.7 113.7 372.7 116.7V116.7zM244.7 84.69C241.7 87.69 240 91.76 240 96C240 99.16 240.9 102.3 242.7 104.9C244.5 107.5 246.1 109.6 249.9 110.8C252.8 111.1 256 112.3 259.1 111.7C262.2 111.1 265.1 109.6 267.3 107.3C269.6 105.1 271.1 102.2 271.7 99.12C272.3 96.02 271.1 92.8 270.8 89.88C269.6 86.95 267.5 84.45 264.9 82.7C262.3 80.94 259.2 79.1 256 79.1C251.8 79.1 247.7 81.69 244.7 84.69V84.69zM116.7 116.7C113.7 119.7 112 123.8 112 128C112 131.2 112.9 134.3 114.7 136.9C116.5 139.5 118.1 141.6 121.9 142.8C124.8 143.1 128 144.3 131.1 143.7C134.2 143.1 137.1 141.6 139.3 139.3C141.6 137.1 143.1 134.2 143.7 131.1C144.3 128 143.1 124.8 142.8 121.9C141.6 118.1 139.5 116.5 136.9 114.7C134.3 112.9 131.2 111.1 128 111.1C123.8 111.1 119.7 113.7 116.7 116.7L116.7 116.7z"})})},frequent:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:[Wu("path",{d:"M13 4h-2l-.001 7H9v2h2v2h2v-2h4v-2h-4z"}),Wu("path",{d:"M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12 12-5.373 12-12S18.627 0 12 0m0 22C6.486 22 2 17.514 2 12S6.486 2 12 2s10 4.486 10 10-4.486 10-10 10"})]}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512zM232 256C232 264 236 271.5 242.7 275.1L338.7 339.1C349.7 347.3 364.6 344.3 371.1 333.3C379.3 322.3 376.3 307.4 365.3 300L280 243.2V120C280 106.7 269.3 96 255.1 96C242.7 96 231.1 106.7 231.1 120L232 256z"})})},nature:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:[Wu("path",{d:"M15.5 8a1.5 1.5 0 1 0 .001 3.001A1.5 1.5 0 0 0 15.5 8M8.5 8a1.5 1.5 0 1 0 .001 3.001A1.5 1.5 0 0 0 8.5 8"}),Wu("path",{d:"M18.933 0h-.027c-.97 0-2.138.787-3.018 1.497-1.274-.374-2.612-.51-3.887-.51-1.285 0-2.616.133-3.874.517C7.245.79 6.069 0 5.093 0h-.027C3.352 0 .07 2.67.002 7.026c-.039 2.479.276 4.238 1.04 5.013.254.258.882.677 1.295.882.191 3.177.922 5.238 2.536 6.38.897.637 2.187.949 3.2 1.102C8.04 20.6 8 20.795 8 21c0 1.773 2.35 3 4 3 1.648 0 4-1.227 4-3 0-.201-.038-.393-.072-.586 2.573-.385 5.435-1.877 5.925-7.587.396-.22.887-.568 1.104-.788.763-.774 1.079-2.534 1.04-5.013C23.929 2.67 20.646 0 18.933 0M3.223 9.135c-.237.281-.837 1.155-.884 1.238-.15-.41-.368-1.349-.337-3.291.051-3.281 2.478-4.972 3.091-5.031.256.015.731.27 1.265.646-1.11 1.171-2.275 2.915-2.352 5.125-.133.546-.398.858-.783 1.313M12 22c-.901 0-1.954-.693-2-1 0-.654.475-1.236 1-1.602V20a1 1 0 1 0 2 0v-.602c.524.365 1 .947 1 1.602-.046.307-1.099 1-2 1m3-3.48v.02a4.752 4.752 0 0 0-1.262-1.02c1.092-.516 2.239-1.334 2.239-2.217 0-1.842-1.781-2.195-3.977-2.195-2.196 0-3.978.354-3.978 2.195 0 .883 1.148 1.701 2.238 2.217A4.8 4.8 0 0 0 9 18.539v-.025c-1-.076-2.182-.281-2.973-.842-1.301-.92-1.838-3.045-1.853-6.478l.023-.041c.496-.826 1.49-1.45 1.804-3.102 0-2.047 1.357-3.631 2.362-4.522C9.37 3.178 10.555 3 11.948 3c1.447 0 2.685.192 3.733.57 1 .9 2.316 2.465 2.316 4.48.313 1.651 1.307 2.275 1.803 3.102.035.058.068.117.102.178-.059 5.967-1.949 7.01-4.902 7.19m6.628-8.202c-.037-.065-.074-.13-.113-.195a7.587 7.587 0 0 0-.739-.987c-.385-.455-.648-.768-.782-1.313-.076-2.209-1.241-3.954-2.353-5.124.531-.376 1.004-.63 1.261-.647.636.071 3.044 1.764 3.096 5.031.027 1.81-.347 3.218-.37 3.235"})]}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 576 512",children:Wu("path",{d:"M332.7 19.85C334.6 8.395 344.5 0 356.1 0C363.6 0 370.6 3.52 375.1 9.502L392 32H444.1C456.8 32 469.1 37.06 478.1 46.06L496 64H552C565.3 64 576 74.75 576 88V112C576 156.2 540.2 192 496 192H426.7L421.6 222.5L309.6 158.5L332.7 19.85zM448 64C439.2 64 432 71.16 432 80C432 88.84 439.2 96 448 96C456.8 96 464 88.84 464 80C464 71.16 456.8 64 448 64zM416 256.1V480C416 497.7 401.7 512 384 512H352C334.3 512 320 497.7 320 480V364.8C295.1 377.1 268.8 384 240 384C211.2 384 184 377.1 160 364.8V480C160 497.7 145.7 512 128 512H96C78.33 512 64 497.7 64 480V249.8C35.23 238.9 12.64 214.5 4.836 183.3L.9558 167.8C-3.331 150.6 7.094 133.2 24.24 128.1C41.38 124.7 58.76 135.1 63.05 152.2L66.93 167.8C70.49 182 83.29 191.1 97.97 191.1H303.8L416 256.1z"})})},objects:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:[Wu("path",{d:"M12 0a9 9 0 0 0-5 16.482V21s2.035 3 5 3 5-3 5-3v-4.518A9 9 0 0 0 12 0zm0 2c3.86 0 7 3.141 7 7s-3.14 7-7 7-7-3.141-7-7 3.14-7 7-7zM9 17.477c.94.332 1.946.523 3 .523s2.06-.19 3-.523v.834c-.91.436-1.925.689-3 .689a6.924 6.924 0 0 1-3-.69v-.833zm.236 3.07A8.854 8.854 0 0 0 12 21c.965 0 1.888-.167 2.758-.451C14.155 21.173 13.153 22 12 22c-1.102 0-2.117-.789-2.764-1.453z"}),Wu("path",{d:"M14.745 12.449h-.004c-.852-.024-1.188-.858-1.577-1.824-.421-1.061-.703-1.561-1.182-1.566h-.009c-.481 0-.783.497-1.235 1.537-.436.982-.801 1.811-1.636 1.791l-.276-.043c-.565-.171-.853-.691-1.284-1.794-.125-.313-.202-.632-.27-.913-.051-.213-.127-.53-.195-.634C7.067 9.004 7.039 9 6.99 9A1 1 0 0 1 7 7h.01c1.662.017 2.015 1.373 2.198 2.134.486-.981 1.304-2.058 2.797-2.075 1.531.018 2.28 1.153 2.731 2.141l.002-.008C14.944 8.424 15.327 7 16.979 7h.032A1 1 0 1 1 17 9h-.011c-.149.076-.256.474-.319.709a6.484 6.484 0 0 1-.311.951c-.429.973-.79 1.789-1.614 1.789"})]}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512",children:Wu("path",{d:"M112.1 454.3c0 6.297 1.816 12.44 5.284 17.69l17.14 25.69c5.25 7.875 17.17 14.28 26.64 14.28h61.67c9.438 0 21.36-6.401 26.61-14.28l17.08-25.68c2.938-4.438 5.348-12.37 5.348-17.7L272 415.1h-160L112.1 454.3zM191.4 .0132C89.44 .3257 16 82.97 16 175.1c0 44.38 16.44 84.84 43.56 115.8c16.53 18.84 42.34 58.23 52.22 91.45c.0313 .25 .0938 .5166 .125 .7823h160.2c.0313-.2656 .0938-.5166 .125-.7823c9.875-33.22 35.69-72.61 52.22-91.45C351.6 260.8 368 220.4 368 175.1C368 78.61 288.9-.2837 191.4 .0132zM192 96.01c-44.13 0-80 35.89-80 79.1C112 184.8 104.8 192 96 192S80 184.8 80 176c0-61.76 50.25-111.1 112-111.1c8.844 0 16 7.159 16 16S200.8 96.01 192 96.01z"})})},people:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:[Wu("path",{d:"M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12 12-5.373 12-12S18.627 0 12 0m0 22C6.486 22 2 17.514 2 12S6.486 2 12 2s10 4.486 10 10-4.486 10-10 10"}),Wu("path",{d:"M8 7a2 2 0 1 0-.001 3.999A2 2 0 0 0 8 7M16 7a2 2 0 1 0-.001 3.999A2 2 0 0 0 16 7M15.232 15c-.693 1.195-1.87 2-3.349 2-1.477 0-2.655-.805-3.347-2H15m3-2H6a6 6 0 1 0 12 0"})]}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256zM256 432C332.1 432 396.2 382 415.2 314.1C419.1 300.4 407.8 288 393.6 288H118.4C104.2 288 92.92 300.4 96.76 314.1C115.8 382 179.9 432 256 432V432zM176.4 160C158.7 160 144.4 174.3 144.4 192C144.4 209.7 158.7 224 176.4 224C194 224 208.4 209.7 208.4 192C208.4 174.3 194 160 176.4 160zM336.4 224C354 224 368.4 209.7 368.4 192C368.4 174.3 354 160 336.4 160C318.7 160 304.4 174.3 304.4 192C304.4 209.7 318.7 224 336.4 224z"})})},places:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:[Wu("path",{d:"M6.5 12C5.122 12 4 13.121 4 14.5S5.122 17 6.5 17 9 15.879 9 14.5 7.878 12 6.5 12m0 3c-.275 0-.5-.225-.5-.5s.225-.5.5-.5.5.225.5.5-.225.5-.5.5M17.5 12c-1.378 0-2.5 1.121-2.5 2.5s1.122 2.5 2.5 2.5 2.5-1.121 2.5-2.5-1.122-2.5-2.5-2.5m0 3c-.275 0-.5-.225-.5-.5s.225-.5.5-.5.5.225.5.5-.225.5-.5.5"}),Wu("path",{d:"M22.482 9.494l-1.039-.346L21.4 9h.6c.552 0 1-.439 1-.992 0-.006-.003-.008-.003-.008H23c0-1-.889-2-1.984-2h-.642l-.731-1.717C19.262 3.012 18.091 2 16.764 2H7.236C5.909 2 4.738 3.012 4.357 4.283L3.626 6h-.642C1.889 6 1 7 1 8h.003S1 8.002 1 8.008C1 8.561 1.448 9 2 9h.6l-.043.148-1.039.346a2.001 2.001 0 0 0-1.359 2.097l.751 7.508a1 1 0 0 0 .994.901H3v1c0 1.103.896 2 2 2h2c1.104 0 2-.897 2-2v-1h6v1c0 1.103.896 2 2 2h2c1.104 0 2-.897 2-2v-1h1.096a.999.999 0 0 0 .994-.901l.751-7.508a2.001 2.001 0 0 0-1.359-2.097M6.273 4.857C6.402 4.43 6.788 4 7.236 4h9.527c.448 0 .834.43.963.857L19.313 9H4.688l1.585-4.143zM7 21H5v-1h2v1zm12 0h-2v-1h2v1zm2.189-3H2.811l-.662-6.607L3 11h18l.852.393L21.189 18z"})]}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M39.61 196.8L74.8 96.29C88.27 57.78 124.6 32 165.4 32H346.6C387.4 32 423.7 57.78 437.2 96.29L472.4 196.8C495.6 206.4 512 229.3 512 256V448C512 465.7 497.7 480 480 480H448C430.3 480 416 465.7 416 448V400H96V448C96 465.7 81.67 480 64 480H32C14.33 480 0 465.7 0 448V256C0 229.3 16.36 206.4 39.61 196.8V196.8zM109.1 192H402.9L376.8 117.4C372.3 104.6 360.2 96 346.6 96H165.4C151.8 96 139.7 104.6 135.2 117.4L109.1 192zM96 256C78.33 256 64 270.3 64 288C64 305.7 78.33 320 96 320C113.7 320 128 305.7 128 288C128 270.3 113.7 256 96 256zM416 320C433.7 320 448 305.7 448 288C448 270.3 433.7 256 416 256C398.3 256 384 270.3 384 288C384 305.7 398.3 320 416 320z"})})},symbols:{outline:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Wu("path",{d:"M0 0h11v2H0zM4 11h3V6h4V4H0v2h4zM15.5 17c1.381 0 2.5-1.116 2.5-2.493s-1.119-2.493-2.5-2.493S13 13.13 13 14.507 14.119 17 15.5 17m0-2.986c.276 0 .5.222.5.493 0 .272-.224.493-.5.493s-.5-.221-.5-.493.224-.493.5-.493M21.5 19.014c-1.381 0-2.5 1.116-2.5 2.493S20.119 24 21.5 24s2.5-1.116 2.5-2.493-1.119-2.493-2.5-2.493m0 2.986a.497.497 0 0 1-.5-.493c0-.271.224-.493.5-.493s.5.222.5.493a.497.497 0 0 1-.5.493M22 13l-9 9 1.513 1.5 8.99-9.009zM17 11c2.209 0 4-1.119 4-2.5V2s.985-.161 1.498.949C23.01 4.055 23 6 23 6s1-1.119 1-3.135C24-.02 21 0 21 0h-2v6.347A5.853 5.853 0 0 0 17 6c-2.209 0-4 1.119-4 2.5s1.791 2.5 4 2.5M10.297 20.482l-1.475-1.585a47.54 47.54 0 0 1-1.442 1.129c-.307-.288-.989-1.016-2.045-2.183.902-.836 1.479-1.466 1.729-1.892s.376-.871.376-1.336c0-.592-.273-1.178-.818-1.759-.546-.581-1.329-.871-2.349-.871-1.008 0-1.79.293-2.344.879-.556.587-.832 1.181-.832 1.784 0 .813.419 1.748 1.256 2.805-.847.614-1.444 1.208-1.794 1.784a3.465 3.465 0 0 0-.523 1.833c0 .857.308 1.56.924 2.107.616.549 1.423.823 2.42.823 1.173 0 2.444-.379 3.813-1.137L8.235 24h2.819l-2.09-2.383 1.333-1.135zm-6.736-6.389a1.02 1.02 0 0 1 .73-.286c.31 0 .559.085.747.254a.849.849 0 0 1 .283.659c0 .518-.419 1.112-1.257 1.784-.536-.651-.805-1.231-.805-1.742a.901.901 0 0 1 .302-.669M3.74 22c-.427 0-.778-.116-1.057-.349-.279-.232-.418-.487-.418-.766 0-.594.509-1.288 1.527-2.083.968 1.134 1.717 1.946 2.248 2.438-.921.507-1.686.76-2.3.76"})}),solid:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",children:Wu("path",{d:"M500.3 7.251C507.7 13.33 512 22.41 512 31.1V175.1C512 202.5 483.3 223.1 447.1 223.1C412.7 223.1 383.1 202.5 383.1 175.1C383.1 149.5 412.7 127.1 447.1 127.1V71.03L351.1 90.23V207.1C351.1 234.5 323.3 255.1 287.1 255.1C252.7 255.1 223.1 234.5 223.1 207.1C223.1 181.5 252.7 159.1 287.1 159.1V63.1C287.1 48.74 298.8 35.61 313.7 32.62L473.7 .6198C483.1-1.261 492.9 1.173 500.3 7.251H500.3zM74.66 303.1L86.5 286.2C92.43 277.3 102.4 271.1 113.1 271.1H174.9C185.6 271.1 195.6 277.3 201.5 286.2L213.3 303.1H239.1C266.5 303.1 287.1 325.5 287.1 351.1V463.1C287.1 490.5 266.5 511.1 239.1 511.1H47.1C21.49 511.1-.0019 490.5-.0019 463.1V351.1C-.0019 325.5 21.49 303.1 47.1 303.1H74.66zM143.1 359.1C117.5 359.1 95.1 381.5 95.1 407.1C95.1 434.5 117.5 455.1 143.1 455.1C170.5 455.1 191.1 434.5 191.1 407.1C191.1 381.5 170.5 359.1 143.1 359.1zM440.3 367.1H496C502.7 367.1 508.6 372.1 510.1 378.4C513.3 384.6 511.6 391.7 506.5 396L378.5 508C372.9 512.1 364.6 513.3 358.6 508.9C352.6 504.6 350.3 496.6 353.3 489.7L391.7 399.1H336C329.3 399.1 323.4 395.9 321 389.6C318.7 383.4 320.4 376.3 325.5 371.1L453.5 259.1C459.1 255 467.4 254.7 473.4 259.1C479.4 263.4 481.6 271.4 478.7 278.3L440.3 367.1zM116.7 219.1L19.85 119.2C-8.112 90.26-6.614 42.31 24.85 15.34C51.82-8.137 93.26-3.642 118.2 21.83L128.2 32.32L137.7 21.83C162.7-3.642 203.6-8.137 231.6 15.34C262.6 42.31 264.1 90.26 236.1 119.2L139.7 219.1C133.2 225.6 122.7 225.6 116.7 219.1H116.7z"})})}},search:{loupe:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",children:Wu("path",{d:"M12.9 14.32a8 8 0 1 1 1.41-1.41l5.35 5.33-1.42 1.42-5.33-5.34zM8 14A6 6 0 1 0 8 2a6 6 0 0 0 0 12z"})}),delete:Wu("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",children:Wu("path",{d:"M10 8.586L2.929 1.515 1.515 2.929 8.586 10l-7.071 7.071 1.414 1.414L10 11.414l7.071 7.071 1.414-1.414L11.414 10l7.071-7.071-1.414-1.414L10 8.586z"})})}};function ph(e){let{id:n,skin:i,emoji:t}=e;if(e.shortcodes){const t=e.shortcodes.match(uh.SHORTCODES_REGEX);t&&(n=t[1],t[2]&&(i=t[2]))}if(t||(t=uh.get(n||e.native)),!t)return e.fallback;const a=t.skins[i-1]||t.skins[0],s=a.src||("native"==e.set||e.spritesheet?void 0:"function"==typeof e.getImageURL?e.getImageURL(e.set,a.unified):`https://cdn.jsdelivr.net/npm/emoji-datasource-${e.set}@15.0.1/img/${e.set}/64/${a.unified}.png`),o="function"==typeof e.getSpritesheetURL?e.getSpritesheetURL(e.set):`https://cdn.jsdelivr.net/npm/emoji-datasource-${e.set}@15.0.1/img/${e.set}/sheets-256/64.png`;return Wu("span",{class:"emoji-mart-emoji","data-emoji-set":e.set,children:s?Wu("img",{style:{maxWidth:e.size||"1em",maxHeight:e.size||"1em",display:"inline-block"},alt:a.native||a.shortcodes,src:s}):"native"==e.set?Wu("span",{style:{fontSize:e.size,fontFamily:'"EmojiMart", "Segoe UI Emoji", "Segoe UI Symbol", "Segoe UI", "Apple Color Emoji", "Twemoji Mozilla", "Noto Color Emoji", "Android Emoji"'},children:a.native}):Wu("span",{style:{display:"block",width:e.size,height:e.size,backgroundImage:`url(${o})`,backgroundSize:`${100*ih.sheet.cols}% ${100*ih.sheet.rows}%`,backgroundPosition:`${100/(ih.sheet.cols-1)*a.x}% ${100/(ih.sheet.rows-1)*a.y}%`}})})}const vh=typeof window<"u"&&window.HTMLElement?window.HTMLElement:Object;class gh extends vh{static get observedAttributes(){return Object.keys(this.Props)}update(e={}){for(let n in e)this.attributeChangedCallback(n,null,e[n])}attributeChangedCallback(e,n,i){if(!this.component)return;const t=lh(e,{[e]:i},this.constructor.Props,this);this.component.componentWillReceiveProps?this.component.componentWillReceiveProps({[e]:t}):(this.component.props[e]=t,this.component.forceUpdate())}disconnectedCallback(){this.disconnected=!0,this.component&&this.component.unregister&&this.component.unregister()}constructor(e={}){if(super(),this.props=e,e.parent||e.ref){let n=null;const i=e.parent||(n=e.ref&&e.ref.current);n&&(n.innerHTML=""),i&&i.appendChild(this)}}}class kh extends gh{setShadow(){this.attachShadow({mode:"open"})}injectStyles(e){if(!e)return;const n=document.createElement("style");n.textContent=e,this.shadowRoot.insertBefore(n,this.shadowRoot.firstChild)}constructor(e,{styles:n}={}){super(e),this.setShadow(),this.injectStyles(n)}}var yh={fallback:"",id:"",native:"",shortcodes:"",size:{value:"",transform:e=>/\D/.test(e)?e:`${e}px`},set:eh.set,skin:eh.skin};class wh extends gh{async connectedCallback(){const e=dh(this.props,yh,this);e.element=this,e.ref=e=>{this.component=e},await fh(),!this.disconnected&&Hu(Wu(ph,{...e}),this)}constructor(e){super(e)}}fu(wh,"Props",yh),typeof customElements<"u"&&!customElements.get("em-emoji")&&customElements.define("em-emoji",wh);var bh,_h=[],xh=lu.__b,Sh=lu.__r,Ch=lu.diffed,Mh=lu.__c,Oh=lu.unmount;function Th(){var e;for(_h.sort((function(e,n){return e.__v.__b-n.__v.__b}));e=_h.pop();)if(e.__P)try{e.__H.__h.forEach(Fh),e.__H.__h.forEach(Ah),e.__H.__h=[]}catch(n){e.__H.__h=[],lu.__e(n,e.__v)}}lu.__b=function(e){xh&&xh(e)},lu.__r=function(e){Sh&&Sh(e);var n=e.__c.__H;n&&(n.__h.forEach(Fh),n.__h.forEach(Ah),n.__h=[])},lu.diffed=function(e){Ch&&Ch(e);var n=e.__c;n&&n.__H&&n.__H.__h.length&&(1!==_h.push(n)&&bh===lu.requestAnimationFrame||((bh=lu.requestAnimationFrame)||function(e){var n,i=function(){clearTimeout(t),Eh&&cancelAnimationFrame(n),setTimeout(e)},t=setTimeout(i,100);Eh&&(n=requestAnimationFrame(i))})(Th))},lu.__c=function(e,n){n.some((function(e){try{e.__h.forEach(Fh),e.__h=e.__h.filter((function(e){return!e.__||Ah(e)}))}catch(i){n.some((function(e){e.__h&&(e.__h=[])})),n=[],lu.__e(i,e.__v)}})),Mh&&Mh(e,n)},lu.unmount=function(e){Oh&&Oh(e);var n,i=e.__c;i&&i.__H&&(i.__H.__.forEach((function(e){try{Fh(e)}catch(e){n=e}})),n&&lu.__e(n,i.__v))};var Eh="function"==typeof requestAnimationFrame;function Fh(e){var n=e.__c;"function"==typeof n&&(e.__c=void 0,n())}function Ah(e){e.__c=e.__()}function Nh(e,n){for(var i in e)if("__source"!==i&&!(i in n))return!0;for(var t in n)if("__source"!==t&&e[t]!==n[t])return!0;return!1}function jh(e){this.props=e}(jh.prototype=new xu).isPureReactComponent=!0,jh.prototype.shouldComponentUpdate=function(e,n){return Nh(this.props,e)||Nh(this.state,n)};var Rh=lu.__b;lu.__b=function(e){e.type&&e.type.__f&&e.ref&&(e.props.ref=e.ref,e.ref=null),Rh&&Rh(e)};var Dh=lu.__e;lu.__e=function(e,n,i){if(e.then)for(var t,a=n;a=a.__;)if((t=a.__c)&&t.__c)return null==n.__e&&(n.__e=i.__e,n.__k=i.__k),t.__c(e,n);Dh(e,n,i)};var zh=lu.unmount;function Ph(){this.__u=0,this.t=null,this.__b=null}function Bh(e){var n=e.__.__c;return n&&n.__e&&n.__e(e)}function Lh(){this.u=null,this.o=null}lu.unmount=function(e){var n=e.__c;n&&n.__R&&n.__R(),n&&!0===e.__h&&(e.type=null),zh&&zh(e)},(Ph.prototype=new xu).__c=function(e,n){var i=n.__c,t=this;null==t.t&&(t.t=[]),t.t.push(i);var a=Bh(t.__v),s=!1,o=function(){s||(s=!0,i.__R=null,a?a(r):r())};i.__R=o;var r=function(){if(!--t.__u){if(t.state.__e){var e=t.state.__e;t.__v.__k[0]=function e(n,i,t){return n&&(n.__v=null,n.__k=n.__k&&n.__k.map((function(n){return e(n,i,t)})),n.__c&&n.__c.__P===i&&(n.__e&&t.insertBefore(n.__e,n.__d),n.__c.__e=!0,n.__c.__P=t)),n}(e,e.__c.__P,e.__c.__O)}var n;for(t.setState({__e:t.__b=null});n=t.t.pop();)n.forceUpdate()}},f=!0===n.__h;t.__u++||f||t.setState({__e:t.__b=t.__v.__k[0]}),e.then(o,o)},Ph.prototype.componentWillUnmount=function(){this.t=[]},Ph.prototype.render=function(e,n){if(this.__b){if(this.__v.__k){var i=document.createElement("div"),t=this.__v.__k[0].__c;this.__v.__k[0]=function e(n,i,t){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach((function(e){"function"==typeof e.__c&&e.__c()})),n.__c.__H=null),null!=(n=function(e,n){for(var i in n)e[i]=n[i];return e}({},n)).__c&&(n.__c.__P===t&&(n.__c.__P=i),n.__c=null),n.__k=n.__k&&n.__k.map((function(n){return e(n,i,t)}))),n}(this.__b,i,t.__O=t.__P)}this.__b=null}var a=n.__e&&wu(_u,null,e.fallback);return a&&(a.__h=null),[wu(_u,null,n.__e?null:e.children),a]};var Ih=function(e,n,i){if(++i[1]===i[0]&&e.o.delete(n),e.props.revealOrder&&("t"!==e.props.revealOrder[0]||!e.o.size))for(i=e.u;i;){for(;i.length>3;)i.pop()();if(i[1]<i[0])break;e.u=i=i[2]}};(Lh.prototype=new xu).__e=function(e){var n=this,i=Bh(n.__v),t=n.o.get(e);return t[0]++,function(a){var s=function(){n.props.revealOrder?(t.push(a),Ih(n,e,t)):a()};i?i(s):s()}},Lh.prototype.render=function(e){this.u=null,this.o=new Map;var n=Fu(e.children);e.revealOrder&&"b"===e.revealOrder[0]&&n.reverse();for(var i=n.length;i--;)this.o.set(n[i],this.u=[1,0,this.u]);return e.children},Lh.prototype.componentDidUpdate=Lh.prototype.componentDidMount=function(){var e=this;this.o.forEach((function(n,i){Ih(e,i,n)}))};var Hh=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,qh=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,Wh=typeof document<"u",$h=function(e){return(typeof Symbol<"u"&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(e)};xu.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach((function(e){Object.defineProperty(xu.prototype,e,{configurable:!0,get:function(){return this["UNSAFE_"+e]},set:function(n){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:n})}})}));var Vh=lu.event;function Uh(){}function Gh(){return this.cancelBubble}function Kh(){return this.defaultPrevented}lu.event=function(e){return Vh&&(e=Vh(e)),e.persist=Uh,e.isPropagationStopped=Gh,e.isDefaultPrevented=Kh,e.nativeEvent=e};var Jh={configurable:!0,get:function(){return this.class}},Yh=lu.vnode;lu.vnode=function(e){var n=e.type,i=e.props,t=i;if("string"==typeof n){var a=-1===n.indexOf("-");for(var s in t={},i){var o=i[s];Wh&&"children"===s&&"noscript"===n||"value"===s&&"defaultValue"in i&&null==o||("defaultValue"===s&&"value"in i&&null==i.value?s="value":"download"===s&&!0===o?o="":/ondoubleclick/i.test(s)?s="ondblclick":/^onchange(textarea|input)/i.test(s+n)&&!$h(i.type)?s="oninput":/^onfocus$/i.test(s)?s="onfocusin":/^onblur$/i.test(s)?s="onfocusout":/^on(Ani|Tra|Tou|BeforeInp)/.test(s)?s=s.toLowerCase():a&&qh.test(s)?s=s.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===o&&(o=void 0),t[s]=o)}"select"==n&&t.multiple&&Array.isArray(t.value)&&(t.value=Fu(i.children).forEach((function(e){e.props.selected=-1!=t.value.indexOf(e.props.value)}))),"select"==n&&null!=t.defaultValue&&(t.value=Fu(i.children).forEach((function(e){e.props.selected=t.multiple?-1!=t.defaultValue.indexOf(e.props.value):t.defaultValue==e.props.value}))),e.props=t,i.class!=i.className&&(Jh.enumerable="className"in i,null!=i.className&&(t.class=i.className),Object.defineProperty(t,"className",Jh))}e.$$typeof=Hh,Yh&&Yh(e)};var Qh=lu.__r;lu.__r=function(e){Qh&&Qh(e),e.__c};const Xh={light:"outline",dark:"solid"};class Zh extends jh{renderIcon(e){const{icon:n}=e;if(n){if(n.svg)return Wu("span",{class:"flex",dangerouslySetInnerHTML:{__html:n.svg}});if(n.src)return Wu("img",{src:n.src})}const i=mh.categories[e.id]||mh.categories.custom;return i["auto"==this.props.icons?Xh[this.props.theme]:this.props.icons]||i}render(){let e=null;return Wu("nav",{id:"nav",class:"padding","data-position":this.props.position,dir:this.props.dir,children:Wu("div",{class:"flex relative",children:[this.categories.map(((n,i)=>{const t=n.name||nh.categories[n.id],a=!this.props.unfocused&&n.id==this.state.categoryId;return a&&(e=i),Wu("button",{"aria-label":t,"aria-selected":a||void 0,title:t,type:"button",class:"flex flex-grow flex-center",onMouseDown:e=>e.preventDefault(),onClick:()=>{this.props.onClick({category:n,i:i})},children:this.renderIcon(n)})})),Wu("div",{class:"bar",style:{width:100/this.categories.length+"%",opacity:null==e?0:1,transform:"rtl"===this.props.dir?`scaleX(-1) translateX(${100*e}%)`:`translateX(${100*e}%)`}})]})})}constructor(){super(),this.categories=ih.categories.filter((e=>!e.target)),this.state={categoryId:this.categories[0].id}}}class em extends jh{shouldComponentUpdate(e){for(let n in e)if("children"!=n&&e[n]!=this.props[n])return!0;return!1}render(){return this.props.children}}const nm=10;class im extends xu{getInitialState(e=this.props){return{skin:$u.get("skin")||e.skin,theme:this.initTheme(e.theme)}}componentWillMount(){this.dir=nh.rtl?"rtl":"ltr",this.refs={menu:{current:null},navigation:{current:null},scroll:{current:null},search:{current:null},searchInput:{current:null},skinToneButton:{current:null},skinToneRadio:{current:null}},this.initGrid(),0==this.props.stickySearch&&"sticky"==this.props.searchPosition&&(console.warn("[EmojiMart] Deprecation warning: `stickySearch` has been renamed `searchPosition`."),this.props.searchPosition="static")}componentDidMount(){if(this.register(),this.shadowRoot=this.base.parentNode,this.props.autoFocus){const{searchInput:e}=this.refs;e.current&&e.current.focus()}}componentWillReceiveProps(e){this.nextState||(this.nextState={});for(const n in e)this.nextState[n]=e[n];clearTimeout(this.nextStateTimer),this.nextStateTimer=setTimeout((()=>{let e=!1;for(const n in this.nextState)this.props[n]=this.nextState[n],("custom"===n||"categories"===n)&&(e=!0);delete this.nextState;const n=this.getInitialState();if(e)return this.reset(n);this.setState(n)}))}componentWillUnmount(){this.unregister()}async reset(e={}){await fh(this.props),this.initGrid(),this.unobserve(),this.setState(e,(()=>{this.observeCategories(),this.observeRows()}))}register(){document.addEventListener("click",this.handleClickOutside),this.observe()}unregister(){var e;document.removeEventListener("click",this.handleClickOutside),null==(e=this.darkMedia)||e.removeEventListener("change",this.darkMediaCallback),this.unobserve()}observe(){this.observeCategories(),this.observeRows()}unobserve({except:e=[]}={}){Array.isArray(e)||(e=[e]);for(const n of this.observers)e.includes(n)||n.disconnect();this.observers=[].concat(e)}initGrid(){const{categories:e}=ih;this.refs.categories=new Map;const n=ih.categories.map((e=>e.id)).join(",");this.navKey&&this.navKey!=n&&this.refs.scroll.current&&(this.refs.scroll.current.scrollTop=0),this.navKey=n,this.grid=[],this.grid.setsize=0;const i=(e,n)=>{const i=[];i.__categoryId=n.id,i.__index=e.length,this.grid.push(i);const t=this.grid.length-1,a=t%nm?{}:{current:null};return a.index=t,a.posinset=this.grid.setsize+1,e.push(a),i};for(let n of e){const e=[];let t=i(e,n);for(let a of n.emojis)t.length==this.getPerLine()&&(t=i(e,n)),this.grid.setsize+=1,t.push(a);this.refs.categories.set(n.id,{root:{current:null},rows:e})}}initTheme(e){if("auto"!=e)return e;if(!this.darkMedia){if(this.darkMedia=matchMedia("(prefers-color-scheme: dark)"),this.darkMedia.media.match(/^not/))return"light";this.darkMedia.addEventListener("change",this.darkMediaCallback)}return this.darkMedia.matches?"dark":"light"}initDynamicPerLine(e=this.props){if(!e.dynamicWidth)return;const{element:n,emojiButtonSize:i}=e,t=()=>{const{width:e}=n.getBoundingClientRect();return Math.floor(e/i)},a=new ResizeObserver((()=>{this.unobserve({except:a}),this.setState({perLine:t()},(()=>{this.initGrid(),this.forceUpdate((()=>{this.observeCategories(),this.observeRows()}))}))}));return a.observe(n),this.observers.push(a),t()}getPerLine(){return this.state.perLine||this.props.perLine}getEmojiByPos([e,n]){const i=this.state.searchResults||this.grid,t=i[e]&&i[e][n];if(t)return uh.get(t)}observeCategories(){const e=this.refs.navigation.current;if(!e)return;const n=new Map,i=n=>{n!=e.state.categoryId&&e.setState({categoryId:n})},t={root:this.refs.scroll.current,threshold:[0,1]},a=new IntersectionObserver((e=>{for(const i of e){const e=i.target.dataset.id;n.set(e,i.intersectionRatio)}const t=[...n];for(const[e,n]of t)if(n){i(e);break}}),t);for(const{root:e}of this.refs.categories.values())a.observe(e.current);this.observers.push(a)}observeRows(){const e={...this.state.visibleRows},n=new IntersectionObserver((n=>{for(const i of n){const n=parseInt(i.target.dataset.index);i.isIntersecting?e[n]=!0:delete e[n]}this.setState({visibleRows:e})}),{root:this.refs.scroll.current,rootMargin:`${this.props.emojiButtonSize*(nm+5)}px 0px ${this.props.emojiButtonSize*nm}px`});for(const{rows:e}of this.refs.categories.values())for(const i of e)i.current&&n.observe(i.current);this.observers.push(n)}preventDefault(e){e.preventDefault()}unfocusSearch(){const e=this.refs.searchInput.current;e&&e.blur()}navigate({e:e,input:n,left:i,right:t,up:a,down:s}){const o=this.state.searchResults||this.grid;if(!o.length)return;let[r,f]=this.state.pos;const d=(()=>{if(0==r&&0==f&&!e.repeat&&(i||a))return null;if(-1==r)return e.repeat||!t&&!s||n.selectionStart!=n.value.length?null:[0,0];if(i||t){let e=o[r];const n=i?-1:1;if(f+=n,!e[f]){if(r+=n,e=o[r],!e)return r=i?0:o.length-1,f=i?0:o[r].length-1,[r,f];f=i?e.length-1:0}return[r,f]}if(a||s){r+=a?-1:1;const e=o[r];return e?(e[f]||(f=e.length-1),[r,f]):(r=a?0:o.length-1,f=a?0:o[r].length-1,[r,f])}})();d?(e.preventDefault(),this.setState({pos:d,keyboard:!0},(()=>{this.scrollTo({row:d[0]})}))):this.state.pos[0]>-1&&this.setState({pos:[-1,-1]})}scrollTo({categoryId:e,row:n}){const i=this.state.searchResults||this.grid;if(!i.length)return;const t=this.refs.scroll.current,a=t.getBoundingClientRect();let s=0;if(n>=0&&(e=i[n].__categoryId),e&&(s=(this.refs[e]||this.refs.categories.get(e).root).current.getBoundingClientRect().top-(a.top-t.scrollTop)+1),n>=0)if(n){const e=s+i[n].__index*this.props.emojiButtonSize,o=e+this.props.emojiButtonSize+.88*this.props.emojiButtonSize;if(e<t.scrollTop)s=e;else{if(!(o>t.scrollTop+a.height))return;s=o-a.height}}else s=0;this.ignoreMouse(),t.scrollTop=s}ignoreMouse(){this.mouseIsIgnored=!0,clearTimeout(this.ignoreMouseTimer),this.ignoreMouseTimer=setTimeout((()=>{delete this.mouseIsIgnored}),100)}handleEmojiOver(e){this.mouseIsIgnored||this.state.showSkins||this.setState({pos:e||[-1,-1],keyboard:!1})}handleEmojiClick({e:e,emoji:n,pos:i}){if(this.props.onEmojiSelect&&(!n&&i&&(n=this.getEmojiByPos(i)),n)){const i=function(e,{skinIndex:n=0}={}){const i=e.skins[n]||(n=0,e.skins[n]),t={id:e.id,name:e.name,native:i.native,unified:i.unified,keywords:e.keywords,shortcodes:i.shortcodes||e.shortcodes};return e.skins.length>1&&(t.skin=n+1),i.src&&(t.src=i.src),e.aliases&&e.aliases.length&&(t.aliases=e.aliases),e.emoticons&&e.emoticons.length&&(t.emoticons=e.emoticons),t}(n,{skinIndex:this.state.skin-1});this.props.maxFrequentRows&&Xu.add(i,this.props),this.props.onEmojiSelect(i,e)}}closeSkins(){this.state.showSkins&&(this.setState({showSkins:null,tempSkin:null}),this.base.removeEventListener("click",this.handleBaseClick),this.base.removeEventListener("keydown",this.handleBaseKeydown))}handleSkinMouseOver(e){this.setState({tempSkin:e})}handleSkinClick(e){this.ignoreMouse(),this.closeSkins(),this.setState({skin:e,tempSkin:null}),$u.set("skin",e)}renderNav(){return Wu(Zh,{ref:this.refs.navigation,icons:this.props.icons,theme:this.state.theme,dir:this.dir,unfocused:!!this.state.searchResults,position:this.props.navPosition,onClick:this.handleCategoryClick},this.navKey)}renderPreview(){const e=this.getEmojiByPos(this.state.pos),n=this.state.searchResults&&!this.state.searchResults.length;return Wu("div",{id:"preview",class:"flex flex-middle",dir:this.dir,"data-position":this.props.previewPosition,children:[Wu("div",{class:"flex flex-middle flex-grow",children:[Wu("div",{class:"flex flex-auto flex-middle flex-center",style:{height:this.props.emojiButtonSize,fontSize:this.props.emojiButtonSize},children:Wu(ph,{emoji:e,id:n?this.props.noResultsEmoji||"cry":this.props.previewEmoji||("top"==this.props.previewPosition?"point_down":"point_up"),set:this.props.set,size:this.props.emojiButtonSize,skin:this.state.tempSkin||this.state.skin,spritesheet:!0,getSpritesheetURL:this.props.getSpritesheetURL})}),Wu("div",{class:`margin-${this.dir[0]}`,children:Wu("div",e||n?{class:`padding-${this.dir[2]} align-${this.dir[0]}`,children:[Wu("div",{class:"preview-title ellipsis",children:e?e.name:nh.search_no_results_1}),Wu("div",{class:"preview-subtitle ellipsis color-c",children:e?e.skins[0].shortcodes:nh.search_no_results_2})]}:{class:"preview-placeholder color-c",children:nh.pick})})]}),!e&&"preview"==this.props.skinTonePosition&&this.renderSkinToneButton()]})}renderEmojiButton(e,{pos:n,posinset:i,grid:t}){const a=this.props.emojiButtonSize,s=this.state.tempSkin||this.state.skin,o=(e.skins[s-1]||e.skins[0]).native,r=function(e,n){return Array.isArray(e)&&Array.isArray(n)&&e.length===n.length&&e.every(((e,i)=>e==n[i]))}(this.state.pos,n),f=n.concat(e.id).join("");return Wu(em,{selected:r,skin:s,size:a,children:Wu("button",{"aria-label":o,"aria-selected":r||void 0,"aria-posinset":i,"aria-setsize":t.setsize,"data-keyboard":this.state.keyboard,title:"none"==this.props.previewPosition?e.name:void 0,type:"button",class:"flex flex-center flex-middle",tabindex:"-1",onClick:n=>this.handleEmojiClick({e:n,emoji:e}),onMouseEnter:()=>this.handleEmojiOver(n),onMouseLeave:()=>this.handleEmojiOver(),style:{width:this.props.emojiButtonSize,height:this.props.emojiButtonSize,fontSize:this.props.emojiSize,lineHeight:0},children:[Wu("div",{"aria-hidden":"true",class:"background",style:{borderRadius:this.props.emojiButtonRadius,backgroundColor:this.props.emojiButtonColors?this.props.emojiButtonColors[(i-1)%this.props.emojiButtonColors.length]:void 0}}),Wu(ph,{emoji:e,set:this.props.set,size:this.props.emojiSize,skin:s,spritesheet:!0,getSpritesheetURL:this.props.getSpritesheetURL})]})},f)}renderSearch(){const e="none"==this.props.previewPosition||"search"==this.props.skinTonePosition;return Wu("div",{children:[Wu("div",{class:"spacer"}),Wu("div",{class:"flex flex-middle",children:[Wu("div",{class:"search relative flex-grow",children:[Wu("input",{type:"search",ref:this.refs.searchInput,placeholder:nh.search,onClick:this.handleSearchClick,onInput:this.handleSearchInput,onKeyDown:this.handleSearchKeyDown,autoComplete:"off"}),Wu("span",{class:"icon loupe flex",children:mh.search.loupe}),this.state.searchResults&&Wu("button",{title:"Clear","aria-label":"Clear",type:"button",class:"icon delete flex",onClick:this.clearSearch,onMouseDown:this.preventDefault,children:mh.search.delete})]}),e&&this.renderSkinToneButton()]})]})}renderSearchResults(){const{searchResults:e}=this.state;return e?Wu("div",{class:"category",ref:this.refs.search,children:[Wu("div",{class:`sticky padding-small align-${this.dir[0]}`,children:nh.categories.search}),Wu("div",{children:e.length?e.map(((n,i)=>Wu("div",{class:"flex",children:n.map(((n,t)=>this.renderEmojiButton(n,{pos:[i,t],posinset:i*this.props.perLine+t+1,grid:e})))}))):Wu("div",{class:`padding-small align-${this.dir[0]}`,children:this.props.onAddCustomEmoji&&Wu("a",{onClick:this.props.onAddCustomEmoji,children:nh.add_custom})})})]}):null}renderCategories(){const{categories:e}=ih,n=!!this.state.searchResults,i=this.getPerLine();return Wu("div",{style:{visibility:n?"hidden":void 0,display:n?"none":void 0,height:"100%"},children:e.map((e=>{const{root:n,rows:t}=this.refs.categories.get(e.id);return Wu("div",{"data-id":e.target?e.target.id:e.id,class:"category",ref:n,children:[Wu("div",{class:`sticky padding-small align-${this.dir[0]}`,children:e.name||nh.categories[e.id]}),Wu("div",{class:"relative",style:{height:t.length*this.props.emojiButtonSize},children:t.map(((n,t)=>{const a=n.index-n.index%nm,s=this.state.visibleRows[a],o="current"in n?n:void 0;if(!s&&!o)return null;const r=t*i,f=r+i,d=e.emojis.slice(r,f);return d.length<i&&d.push(...new Array(i-d.length)),Wu("div",{"data-index":n.index,ref:o,class:"flex row",style:{top:t*this.props.emojiButtonSize},children:s&&d.map(((e,i)=>{if(!e)return Wu("div",{style:{width:this.props.emojiButtonSize,height:this.props.emojiButtonSize}});const t=uh.get(e);return this.renderEmojiButton(t,{pos:[n.index,i],posinset:n.posinset+i,grid:this.grid})}))},n.index)}))})]})}))})}renderSkinToneButton(){return"none"==this.props.skinTonePosition?null:Wu("div",{class:"flex flex-auto flex-center flex-middle",style:{position:"relative",width:this.props.emojiButtonSize,height:this.props.emojiButtonSize},children:Wu("button",{type:"button",ref:this.refs.skinToneButton,class:"skin-tone-button flex flex-auto flex-center flex-middle","aria-selected":this.state.showSkins?"":void 0,"aria-label":nh.skins.choose,title:nh.skins.choose,onClick:this.openSkins,style:{width:this.props.emojiSize,height:this.props.emojiSize},children:Wu("span",{class:`skin-tone skin-tone-${this.state.skin}`})})})}renderLiveRegion(){const e=this.getEmojiByPos(this.state.pos);return Wu("div",{"aria-live":"polite",class:"sr-only",children:e?e.name:""})}renderSkins(){const e=this.refs.skinToneButton.current.getBoundingClientRect(),n=this.base.getBoundingClientRect(),i={};return"ltr"==this.dir?i.right=n.right-e.right-3:i.left=e.left-n.left-3,"bottom"==this.props.previewPosition&&"preview"==this.props.skinTonePosition?i.bottom=n.bottom-e.top+6:(i.top=e.bottom-n.top+3,i.bottom="auto"),Wu("div",{ref:this.refs.menu,role:"radiogroup",dir:this.dir,"aria-label":nh.skins.choose,class:"menu hidden","data-position":i.top?"top":"bottom",style:i,children:[...Array(6).keys()].map((e=>{const n=e+1,i=this.state.skin==n;return Wu("div",{children:[Wu("input",{type:"radio",name:"skin-tone",value:n,"aria-label":nh.skins[n],ref:i?this.refs.skinToneRadio:null,defaultChecked:i,onChange:()=>this.handleSkinMouseOver(n),onKeyDown:e=>{("Enter"==e.code||"Space"==e.code||"Tab"==e.code)&&(e.preventDefault(),this.handleSkinClick(n))}}),Wu("button",{"aria-hidden":"true",tabindex:"-1",onClick:()=>this.handleSkinClick(n),onMouseEnter:()=>this.handleSkinMouseOver(n),onMouseLeave:()=>this.handleSkinMouseOver(),class:"option flex flex-grow flex-middle",children:[Wu("span",{class:`skin-tone skin-tone-${n}`}),Wu("span",{class:"margin-small-lr",children:nh.skins[n]})]})]})}))})}render(){const e=this.props.perLine*this.props.emojiButtonSize;return Wu("section",{id:"root",class:"flex flex-column",dir:this.dir,style:{width:this.props.dynamicWidth?"100%":`calc(${e}px + (var(--padding) + var(--sidebar-width)))`},"data-emoji-set":this.props.set,"data-theme":this.state.theme,"data-menu":this.state.showSkins?"":void 0,children:["top"==this.props.previewPosition&&this.renderPreview(),"top"==this.props.navPosition&&this.renderNav(),"sticky"==this.props.searchPosition&&Wu("div",{class:"padding-lr",children:this.renderSearch()}),Wu("div",{ref:this.refs.scroll,class:"scroll flex-grow padding-lr",children:Wu("div",{style:{width:this.props.dynamicWidth?"100%":e,height:"100%"},children:["static"==this.props.searchPosition&&this.renderSearch(),this.renderSearchResults(),this.renderCategories()]})}),"bottom"==this.props.navPosition&&this.renderNav(),"bottom"==this.props.previewPosition&&this.renderPreview(),this.state.showSkins&&this.renderSkins(),this.renderLiveRegion()]})}constructor(e){super(),fu(this,"darkMediaCallback",(()=>{"auto"==this.props.theme&&this.setState({theme:this.darkMedia.matches?"dark":"light"})})),fu(this,"handleClickOutside",(e=>{const{element:n}=this.props;e.target!=n&&(this.state.showSkins&&this.closeSkins(),this.props.onClickOutside&&this.props.onClickOutside(e))})),fu(this,"handleBaseClick",(e=>{this.state.showSkins&&(e.target.closest(".menu")||(e.preventDefault(),e.stopImmediatePropagation(),this.closeSkins()))})),fu(this,"handleBaseKeydown",(e=>{this.state.showSkins&&"Escape"==e.key&&(e.preventDefault(),e.stopImmediatePropagation(),this.closeSkins())})),fu(this,"handleSearchClick",(()=>{this.getEmojiByPos(this.state.pos)&&this.setState({pos:[-1,-1]})})),fu(this,"handleSearchInput",(async()=>{const e=this.refs.searchInput.current;if(!e)return;const{value:n}=e,i=await uh.search(n),t=()=>{this.refs.scroll.current&&(this.refs.scroll.current.scrollTop=0)};if(!i)return this.setState({searchResults:i,pos:[-1,-1]},t);const a=e.selectionStart==e.value.length?[0,0]:[-1,-1],s=[];s.setsize=i.length;let o=null;for(let e of i)(!s.length||o.length==this.getPerLine())&&(o=[],o.__categoryId="search",o.__index=s.length,s.push(o)),o.push(e);this.ignoreMouse(),this.setState({searchResults:s,pos:a},t)})),fu(this,"handleSearchKeyDown",(e=>{const n=e.currentTarget;switch(e.stopImmediatePropagation(),e.key){case"ArrowLeft":this.navigate({e:e,input:n,left:!0});break;case"ArrowRight":this.navigate({e:e,input:n,right:!0});break;case"ArrowUp":this.navigate({e:e,input:n,up:!0});break;case"ArrowDown":this.navigate({e:e,input:n,down:!0});break;case"Enter":e.preventDefault(),this.handleEmojiClick({e:e,pos:this.state.pos});break;case"Escape":e.preventDefault(),this.state.searchResults?this.clearSearch():this.unfocusSearch()}})),fu(this,"clearSearch",(()=>{const e=this.refs.searchInput.current;e&&(e.value="",e.focus(),this.handleSearchInput())})),fu(this,"handleCategoryClick",(({category:e,i:n})=>{this.scrollTo(0==n?{row:-1}:{categoryId:e.id})})),fu(this,"openSkins",(e=>{const{currentTarget:n}=e,i=n.getBoundingClientRect();this.setState({showSkins:i},(async()=>{await async function(e=1){for(let n in[...Array(e).keys()])await new Promise(requestAnimationFrame)}(2);const e=this.refs.menu.current;e&&(e.classList.remove("hidden"),this.refs.skinToneRadio.current.focus(),this.base.addEventListener("click",this.handleBaseClick,!0),this.base.addEventListener("keydown",this.handleBaseKeydown,!0))}))})),this.observers=[],this.state={pos:[-1,-1],perLine:this.initDynamicPerLine(e),visibleRows:{0:!0},...this.getInitialState(e)}}}class tm extends kh{async connectedCallback(){const e=dh(this.props,eh,this);e.element=this,e.ref=e=>{this.component=e},await fh(e),!this.disconnected&&Hu(Wu(im,{...e}),this.shadowRoot)}constructor(e){super(e,{styles:ru(am)})}}fu(tm,"Props",eh),typeof customElements<"u"&&!customElements.get("em-emoji-picker")&&customElements.define("em-emoji-picker",tm);var am={};function sm(n){const t=i(null),a=i(null);return a.current&&a.current.update(n),s((()=>(a.current=new tm({...n,ref:t}),()=>{a.current=null})),[]),e.createElement("div",{ref:t})}am=':host {\n width: min-content;\n height: 435px;\n min-height: 230px;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow);\n --border-radius: 10px;\n --category-icon-size: 18px;\n --font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;\n --font-size: 15px;\n --preview-placeholder-size: 21px;\n --preview-title-size: 1.1em;\n --preview-subtitle-size: .9em;\n --shadow-color: 0deg 0% 0%;\n --shadow: .3px .5px 2.7px hsl(var(--shadow-color) / .14), .4px .8px 1px -3.2px hsl(var(--shadow-color) / .14), 1px 2px 2.5px -4.5px hsl(var(--shadow-color) / .14);\n display: flex;\n}\n\n[data-theme="light"] {\n --em-rgb-color: var(--rgb-color, 34, 36, 39);\n --em-rgb-accent: var(--rgb-accent, 34, 102, 237);\n --em-rgb-background: var(--rgb-background, 255, 255, 255);\n --em-rgb-input: var(--rgb-input, 255, 255, 255);\n --em-color-border: var(--color-border, rgba(0, 0, 0, .05));\n --em-color-border-over: var(--color-border-over, rgba(0, 0, 0, .1));\n}\n\n[data-theme="dark"] {\n --em-rgb-color: var(--rgb-color, 222, 222, 221);\n --em-rgb-accent: var(--rgb-accent, 58, 130, 247);\n --em-rgb-background: var(--rgb-background, 21, 22, 23);\n --em-rgb-input: var(--rgb-input, 0, 0, 0);\n --em-color-border: var(--color-border, rgba(255, 255, 255, .1));\n --em-color-border-over: var(--color-border-over, rgba(255, 255, 255, .2));\n}\n\n#root {\n --color-a: rgb(var(--em-rgb-color));\n --color-b: rgba(var(--em-rgb-color), .65);\n --color-c: rgba(var(--em-rgb-color), .45);\n --padding: 12px;\n --padding-small: calc(var(--padding) / 2);\n --sidebar-width: 16px;\n --duration: 225ms;\n --duration-fast: 125ms;\n --duration-instant: 50ms;\n --easing: cubic-bezier(.4, 0, .2, 1);\n width: 100%;\n text-align: left;\n border-radius: var(--border-radius);\n background-color: rgb(var(--em-rgb-background));\n position: relative;\n}\n\n@media (prefers-reduced-motion) {\n #root {\n --duration: 0;\n --duration-fast: 0;\n --duration-instant: 0;\n }\n}\n\n#root[data-menu] button {\n cursor: auto;\n}\n\n#root[data-menu] .menu button {\n cursor: pointer;\n}\n\n:host, #root, input, button {\n color: rgb(var(--em-rgb-color));\n font-family: var(--font-family);\n font-size: var(--font-size);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n line-height: normal;\n}\n\n*, :before, :after {\n box-sizing: border-box;\n min-width: 0;\n margin: 0;\n padding: 0;\n}\n\n.relative {\n position: relative;\n}\n\n.flex {\n display: flex;\n}\n\n.flex-auto {\n flex: none;\n}\n\n.flex-center {\n justify-content: center;\n}\n\n.flex-column {\n flex-direction: column;\n}\n\n.flex-grow {\n flex: auto;\n}\n\n.flex-middle {\n align-items: center;\n}\n\n.flex-wrap {\n flex-wrap: wrap;\n}\n\n.padding {\n padding: var(--padding);\n}\n\n.padding-t {\n padding-top: var(--padding);\n}\n\n.padding-lr {\n padding-left: var(--padding);\n padding-right: var(--padding);\n}\n\n.padding-r {\n padding-right: var(--padding);\n}\n\n.padding-small {\n padding: var(--padding-small);\n}\n\n.padding-small-b {\n padding-bottom: var(--padding-small);\n}\n\n.padding-small-lr {\n padding-left: var(--padding-small);\n padding-right: var(--padding-small);\n}\n\n.margin {\n margin: var(--padding);\n}\n\n.margin-r {\n margin-right: var(--padding);\n}\n\n.margin-l {\n margin-left: var(--padding);\n}\n\n.margin-small-l {\n margin-left: var(--padding-small);\n}\n\n.margin-small-lr {\n margin-left: var(--padding-small);\n margin-right: var(--padding-small);\n}\n\n.align-l {\n text-align: left;\n}\n\n.align-r {\n text-align: right;\n}\n\n.color-a {\n color: var(--color-a);\n}\n\n.color-b {\n color: var(--color-b);\n}\n\n.color-c {\n color: var(--color-c);\n}\n\n.ellipsis {\n white-space: nowrap;\n max-width: 100%;\n width: auto;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.sr-only {\n width: 1px;\n height: 1px;\n position: absolute;\n top: auto;\n left: -10000px;\n overflow: hidden;\n}\n\na {\n cursor: pointer;\n color: rgb(var(--em-rgb-accent));\n}\n\na:hover {\n text-decoration: underline;\n}\n\n.spacer {\n height: 10px;\n}\n\n[dir="rtl"] .scroll {\n padding-left: 0;\n padding-right: var(--padding);\n}\n\n.scroll {\n padding-right: 0;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.scroll::-webkit-scrollbar {\n width: var(--sidebar-width);\n height: var(--sidebar-width);\n}\n\n.scroll::-webkit-scrollbar-track {\n border: 0;\n}\n\n.scroll::-webkit-scrollbar-button {\n width: 0;\n height: 0;\n display: none;\n}\n\n.scroll::-webkit-scrollbar-corner {\n background-color: rgba(0, 0, 0, 0);\n}\n\n.scroll::-webkit-scrollbar-thumb {\n min-height: 20%;\n min-height: 65px;\n border: 4px solid rgb(var(--em-rgb-background));\n border-radius: 8px;\n}\n\n.scroll::-webkit-scrollbar-thumb:hover {\n background-color: var(--em-color-border-over) !important;\n}\n\n.scroll:hover::-webkit-scrollbar-thumb {\n background-color: var(--em-color-border);\n}\n\n.sticky {\n z-index: 1;\n background-color: rgba(var(--em-rgb-background), .9);\n -webkit-backdrop-filter: blur(4px);\n backdrop-filter: blur(4px);\n font-weight: 500;\n position: sticky;\n top: -1px;\n}\n\n[dir="rtl"] .search input[type="search"] {\n padding: 10px 2.2em 10px 2em;\n}\n\n[dir="rtl"] .search .loupe {\n left: auto;\n right: .7em;\n}\n\n[dir="rtl"] .search .delete {\n left: .7em;\n right: auto;\n}\n\n.search {\n z-index: 2;\n position: relative;\n}\n\n.search input, .search button {\n font-size: calc(var(--font-size) - 1px);\n}\n\n.search input[type="search"] {\n width: 100%;\n background-color: var(--em-color-border);\n transition-duration: var(--duration);\n transition-property: background-color, box-shadow;\n transition-timing-function: var(--easing);\n border: 0;\n border-radius: 10px;\n outline: 0;\n padding: 10px 2em 10px 2.2em;\n display: block;\n}\n\n.search input[type="search"]::-ms-input-placeholder {\n color: inherit;\n opacity: .6;\n}\n\n.search input[type="search"]::placeholder {\n color: inherit;\n opacity: .6;\n}\n\n.search input[type="search"], .search input[type="search"]::-webkit-search-decoration, .search input[type="search"]::-webkit-search-cancel-button, .search input[type="search"]::-webkit-search-results-button, .search input[type="search"]::-webkit-search-results-decoration {\n -webkit-appearance: none;\n -ms-appearance: none;\n appearance: none;\n}\n\n.search input[type="search"]:focus {\n background-color: rgb(var(--em-rgb-input));\n box-shadow: inset 0 0 0 1px rgb(var(--em-rgb-accent)), 0 1px 3px rgba(65, 69, 73, .2);\n}\n\n.search .icon {\n z-index: 1;\n color: rgba(var(--em-rgb-color), .7);\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n}\n\n.search .loupe {\n pointer-events: none;\n left: .7em;\n}\n\n.search .delete {\n right: .7em;\n}\n\nsvg {\n fill: currentColor;\n width: 1em;\n height: 1em;\n}\n\nbutton {\n -webkit-appearance: none;\n -ms-appearance: none;\n appearance: none;\n cursor: pointer;\n color: currentColor;\n background-color: rgba(0, 0, 0, 0);\n border: 0;\n}\n\n#nav {\n z-index: 2;\n padding-top: 12px;\n padding-bottom: 12px;\n padding-right: var(--sidebar-width);\n position: relative;\n}\n\n#nav button {\n color: var(--color-b);\n transition: color var(--duration) var(--easing);\n}\n\n#nav button:hover {\n color: var(--color-a);\n}\n\n#nav svg, #nav img {\n width: var(--category-icon-size);\n height: var(--category-icon-size);\n}\n\n#nav[dir="rtl"] .bar {\n left: auto;\n right: 0;\n}\n\n#nav .bar {\n width: 100%;\n height: 3px;\n background-color: rgb(var(--em-rgb-accent));\n transition: transform var(--duration) var(--easing);\n border-radius: 3px 3px 0 0;\n position: absolute;\n bottom: -12px;\n left: 0;\n}\n\n#nav button[aria-selected] {\n color: rgb(var(--em-rgb-accent));\n}\n\n#preview {\n z-index: 2;\n padding: calc(var(--padding) + 4px) var(--padding);\n padding-right: var(--sidebar-width);\n position: relative;\n}\n\n#preview .preview-placeholder {\n font-size: var(--preview-placeholder-size);\n}\n\n#preview .preview-title {\n font-size: var(--preview-title-size);\n}\n\n#preview .preview-subtitle {\n font-size: var(--preview-subtitle-size);\n}\n\n#nav:before, #preview:before {\n content: "";\n height: 2px;\n position: absolute;\n left: 0;\n right: 0;\n}\n\n#nav[data-position="top"]:before, #preview[data-position="top"]:before {\n background: linear-gradient(to bottom, var(--em-color-border), transparent);\n top: 100%;\n}\n\n#nav[data-position="bottom"]:before, #preview[data-position="bottom"]:before {\n background: linear-gradient(to top, var(--em-color-border), transparent);\n bottom: 100%;\n}\n\n.category:last-child {\n min-height: calc(100% + 1px);\n}\n\n.category button {\n font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, sans-serif;\n position: relative;\n}\n\n.category button > * {\n position: relative;\n}\n\n.category button .background {\n opacity: 0;\n background-color: var(--em-color-border);\n transition: opacity var(--duration-fast) var(--easing) var(--duration-instant);\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n}\n\n.category button:hover .background {\n transition-duration: var(--duration-instant);\n transition-delay: 0s;\n}\n\n.category button[aria-selected] .background {\n opacity: 1;\n}\n\n.category button[data-keyboard] .background {\n transition: none;\n}\n\n.row {\n width: 100%;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.skin-tone-button {\n border: 1px solid rgba(0, 0, 0, 0);\n border-radius: 100%;\n}\n\n.skin-tone-button:hover {\n border-color: var(--em-color-border);\n}\n\n.skin-tone-button:active .skin-tone {\n transform: scale(.85) !important;\n}\n\n.skin-tone-button .skin-tone {\n transition: transform var(--duration) var(--easing);\n}\n\n.skin-tone-button[aria-selected] {\n background-color: var(--em-color-border);\n border-top-color: rgba(0, 0, 0, .05);\n border-bottom-color: rgba(0, 0, 0, 0);\n border-left-width: 0;\n border-right-width: 0;\n}\n\n.skin-tone-button[aria-selected] .skin-tone {\n transform: scale(.9);\n}\n\n.menu {\n z-index: 2;\n white-space: nowrap;\n border: 1px solid var(--em-color-border);\n background-color: rgba(var(--em-rgb-background), .9);\n -webkit-backdrop-filter: blur(4px);\n backdrop-filter: blur(4px);\n transition-property: opacity, transform;\n transition-duration: var(--duration);\n transition-timing-function: var(--easing);\n border-radius: 10px;\n padding: 4px;\n position: absolute;\n box-shadow: 1px 1px 5px rgba(0, 0, 0, .05);\n}\n\n.menu.hidden {\n opacity: 0;\n}\n\n.menu[data-position="bottom"] {\n transform-origin: 100% 100%;\n}\n\n.menu[data-position="bottom"].hidden {\n transform: scale(.9)rotate(-3deg)translateY(5%);\n}\n\n.menu[data-position="top"] {\n transform-origin: 100% 0;\n}\n\n.menu[data-position="top"].hidden {\n transform: scale(.9)rotate(3deg)translateY(-5%);\n}\n\n.menu input[type="radio"] {\n clip: rect(0 0 0 0);\n width: 1px;\n height: 1px;\n border: 0;\n margin: 0;\n padding: 0;\n position: absolute;\n overflow: hidden;\n}\n\n.menu input[type="radio"]:checked + .option {\n box-shadow: 0 0 0 2px rgb(var(--em-rgb-accent));\n}\n\n.option {\n width: 100%;\n border-radius: 6px;\n padding: 4px 6px;\n}\n\n.option:hover {\n color: #fff;\n background-color: rgb(var(--em-rgb-accent));\n}\n\n.skin-tone {\n width: 16px;\n height: 16px;\n border-radius: 100%;\n display: inline-block;\n position: relative;\n overflow: hidden;\n}\n\n.skin-tone:after {\n content: "";\n mix-blend-mode: overlay;\n background: linear-gradient(rgba(255, 255, 255, .2), rgba(0, 0, 0, 0));\n border: 1px solid rgba(0, 0, 0, .8);\n border-radius: 100%;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n box-shadow: inset 0 -2px 3px #000, inset 0 1px 2px #fff;\n}\n\n.skin-tone-1 {\n background-color: #ffc93a;\n}\n\n.skin-tone-2 {\n background-color: #ffdab7;\n}\n\n.skin-tone-3 {\n background-color: #e7b98f;\n}\n\n.skin-tone-4 {\n background-color: #c88c61;\n}\n\n.skin-tone-5 {\n background-color: #a46134;\n}\n\n.skin-tone-6 {\n background-color: #5d4437;\n}\n\n[data-index] {\n justify-content: space-between;\n}\n\n[data-emoji-set="twitter"] .skin-tone:after {\n box-shadow: none;\n border-color: rgba(0, 0, 0, .5);\n}\n\n[data-emoji-set="twitter"] .skin-tone-1 {\n background-color: #fade72;\n}\n\n[data-emoji-set="twitter"] .skin-tone-2 {\n background-color: #f3dfd0;\n}\n\n[data-emoji-set="twitter"] .skin-tone-3 {\n background-color: #eed3a8;\n}\n\n[data-emoji-set="twitter"] .skin-tone-4 {\n background-color: #cfad8d;\n}\n\n[data-emoji-set="twitter"] .skin-tone-5 {\n background-color: #a8805d;\n}\n\n[data-emoji-set="twitter"] .skin-tone-6 {\n background-color: #765542;\n}\n\n[data-emoji-set="google"] .skin-tone:after {\n box-shadow: inset 0 0 2px 2px rgba(0, 0, 0, .4);\n}\n\n[data-emoji-set="google"] .skin-tone-1 {\n background-color: #f5c748;\n}\n\n[data-emoji-set="google"] .skin-tone-2 {\n background-color: #f1d5aa;\n}\n\n[data-emoji-set="google"] .skin-tone-3 {\n background-color: #d4b48d;\n}\n\n[data-emoji-set="google"] .skin-tone-4 {\n background-color: #aa876b;\n}\n\n[data-emoji-set="google"] .skin-tone-5 {\n background-color: #916544;\n}\n\n[data-emoji-set="google"] .skin-tone-6 {\n background-color: #61493f;\n}\n\n[data-emoji-set="facebook"] .skin-tone:after {\n border-color: rgba(0, 0, 0, .4);\n box-shadow: inset 0 -2px 3px #000, inset 0 1px 4px #fff;\n}\n\n[data-emoji-set="facebook"] .skin-tone-1 {\n background-color: #f5c748;\n}\n\n[data-emoji-set="facebook"] .skin-tone-2 {\n background-color: #f1d5aa;\n}\n\n[data-emoji-set="facebook"] .skin-tone-3 {\n background-color: #d4b48d;\n}\n\n[data-emoji-set="facebook"] .skin-tone-4 {\n background-color: #aa876b;\n}\n\n[data-emoji-set="facebook"] .skin-tone-5 {\n background-color: #916544;\n}\n\n[data-emoji-set="facebook"] .skin-tone-6 {\n background-color: #61493f;\n}\n\n';const om=({dataTest:e,id:n,inputRef:a,className:o,editorClassName:r,disabled:f,readOnly:d,error:l,locale:c,title:h,placeholder:m,helperText:p,required:v,maxScrollableHeight:g,toolbarDefaultVisible:k,hideToolbar:y,noDefaultStyles:_,...x})=>{const S=i(),C=Ir({...x,extensions:[su.configure({placeholder:m}),...nu,...iu,...x.extensions||[]],parseOptions:{preserveWhitespace:!0,...x.parseOptions},shouldRerenderOnTransaction:x.shouldRerenderOnTransaction||!1,immediatelyRender:x.immediatelyRender||!0,editable:x.editable||!f&&!d,onSelectionUpdate:e=>{var n;null==(n=x.onSelectionUpdate)||n.call(x,e),S.current=e.editor.state.selection.anchor,e.editor.commands.focus()}},[x.extensions,x.shouldRerenderOnTransaction,x.immediatelyRender,x.editable,x.content,f,d,m]);s((()=>{void 0!==S.current&&(null==C||C.commands.setTextSelection(S.current))}),[x.content,C]);const[M,O]=t(k),[T,F]=t(!1);u(a,(()=>C));const[N,j]=t(!1),[R,D]=t(!1);s((()=>{const e=()=>j(!0),n=()=>j(!1);return null==C||C.on("focus",e),null==C||C.on("blur",n),()=>{null==C||C.off("focus",e),null==C||C.off("blur",n)}}),[C]);return C?E.jsxs(E.Fragment,{children:[E.jsxs(w,{className:o,children:[h&&E.jsx("p",{className:"font-semibold text-base text-gray-700 mb-2",children:h}),E.jsxs("div",{className:A(!_&&"rte-wrapper","outlined"===d&&"readonly-outlined","plain"===d&&"readonly-plain",l&&!N&&"error-state",N&&!d&&(l?"error-focused-state":"focused-state")),children:[E.jsx(Cr,{"data-test":e,id:n,className:A("border-none rounded-none",!_&&"core-ui-rte",!y&&!f&&!d&&!M&&"displace-text",!_&&!f&&!d&&"edit-mode",r),editor:C,onClick:()=>null==C?void 0:C.chain().focus().run(),style:{"--max-scrollable-height":g?`${g}${"number"==typeof g?"px":""}`:"none"}}),!y&&!f&&!d&&!M&&E.jsx(xd,{onClick:()=>O(!0),className:"cursor-pointer absolute bottom-2.5 right-4",icon:"material-symbols:format-color-text",color:"var(--colors-gray-700)",height:24,width:24}),!y&&!f&&!d&&M&&E.jsx(Od,{editor:C,onClose:()=>O(!1),error:l,focused:N,openLinkDialog:()=>F(!0),openEmojiPicker:()=>D(!0),locale:c})]}),(l||v)&&!d&&E.jsx(b,{error:l,"data-test":`error-${e}`,children:p})]}),E.jsx(au,{open:T,setOpen:F,editor:C,locale:c}),R&&E.jsx("div",{className:"fixed inset-0 bg-black/20 z-[9999] flex items-center justify-center",onClick:()=>D(!1),children:E.jsx("div",{onClick:e=>e.stopPropagation(),children:E.jsx(sm,{theme:"light",data:ou,onEmojiSelect:e=>{C&&C.chain().focus().insertContent(e.native).run(),D(!1)},locale:c})})})]}):null};export{om as RichInput};