UNPKG

@eventcatalogtest/studio

Version:

A drag and drop UI for distributed systems that keeps your diagrams where they belong – in your repo

1 lines 94.8 kB
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6168],{80684:(u,e,r)=>{r.d(e,{EY:()=>G,Hg:()=>N,I:()=>I,KE:()=>V,Q6:()=>j,bP:()=>T,bR:()=>$,gB:()=>uw,h6:()=>Z,ie:()=>eg,wA:()=>h});var t,n=r(81356),o={transform(u,e){var{current:r,affinity:t}=u;if(null!=r){var n=h.transform(r,e,{affinity:t});u.current=n,null==n&&u.unref()}}},a={transform(u,e){var{current:r,affinity:t}=u;if(null!=r){var n=$.transform(r,e,{affinity:t});u.current=n,null==n&&u.unref()}}},i={transform(u,e){var{current:r,affinity:t}=u;if(null!=r){var n=j.transform(r,e,{affinity:t});u.current=n,null==n&&u.unref()}}},D=new WeakMap,s=new WeakMap,l=new WeakMap,C=new WeakMap,c=new WeakMap,f=new WeakMap,B=new WeakMap,h={ancestors(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=e,t=h.levels(u,e);return r?t.slice(1):t.slice(0,-1)},common(u,e){for(var r=[],t=0;t<u.length&&t<e.length;t++){var n=u[t];if(n!==e[t])break;r.push(n)}return r},compare(u,e){for(var r=Math.min(u.length,e.length),t=0;t<r;t++){if(u[t]<e[t])return -1;if(u[t]>e[t])return 1}return 0},endsAfter(u,e){var r=u.length-1,t=u.slice(0,r),n=e.slice(0,r),o=u[r],a=e[r];return h.equals(t,n)&&o>a},endsAt(u,e){var r=u.length,t=u.slice(0,r),n=e.slice(0,r);return h.equals(t,n)},endsBefore(u,e){var r=u.length-1,t=u.slice(0,r),n=e.slice(0,r),o=u[r],a=e[r];return h.equals(t,n)&&o<a},equals:(u,e)=>u.length===e.length&&u.every((u,r)=>u===e[r]),hasPrevious:u=>u[u.length-1]>0,isAfter:(u,e)=>1===h.compare(u,e),isAncestor:(u,e)=>u.length<e.length&&0===h.compare(u,e),isBefore:(u,e)=>-1===h.compare(u,e),isChild:(u,e)=>u.length===e.length+1&&0===h.compare(u,e),isCommon:(u,e)=>u.length<=e.length&&0===h.compare(u,e),isDescendant:(u,e)=>u.length>e.length&&0===h.compare(u,e),isParent:(u,e)=>u.length+1===e.length&&0===h.compare(u,e),isPath:u=>Array.isArray(u)&&(0===u.length||"number"==typeof u[0]),isSibling(u,e){if(u.length!==e.length)return!1;var r=u.slice(0,-1),t=e.slice(0,-1);return u[u.length-1]!==e[e.length-1]&&h.equals(r,t)},levels(u){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=e,t=[],n=0;n<=u.length;n++)t.push(u.slice(0,n));return r&&t.reverse(),t},next(u){if(0===u.length)throw Error("Cannot get the next path of a root path [".concat(u,"], because it has no next index."));var e=u[u.length-1];return u.slice(0,-1).concat(e+1)},operationCanTransformPath(u){switch(u.type){case"insert_node":case"remove_node":case"merge_node":case"split_node":case"move_node":return!0;default:return!1}},parent(u){if(0===u.length)throw Error("Cannot get the parent path of the root path [".concat(u,"]."));return u.slice(0,-1)},previous(u){if(0===u.length)throw Error("Cannot get the previous path of a root path [".concat(u,"], because it has no previous index."));var e=u[u.length-1];if(e<=0)throw Error("Cannot get the previous path of a first child path [".concat(u,"] because it would result in a negative index."));return u.slice(0,-1).concat(e-1)},relative(u,e){if(!h.isAncestor(e,u)&&!h.equals(u,e))throw Error("Cannot get the relative path of [".concat(u,"] inside ancestor [").concat(e,"], because it is not above or equal to the path."));return u.slice(e.length)},transform(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!u)return null;var t=[...u],{affinity:n="forward"}=r;if(0===u.length)return t;switch(e.type){case"insert_node":var{path:o}=e;(h.equals(o,t)||h.endsBefore(o,t)||h.isAncestor(o,t))&&(t[o.length-1]+=1);break;case"remove_node":var{path:a}=e;if(h.equals(a,t)||h.isAncestor(a,t))return null;h.endsBefore(a,t)&&(t[a.length-1]-=1);break;case"merge_node":var{path:i,position:D}=e;h.equals(i,t)||h.endsBefore(i,t)?t[i.length-1]-=1:h.isAncestor(i,t)&&(t[i.length-1]-=1,t[i.length]+=D);break;case"split_node":var{path:s,position:l}=e;if(h.equals(s,t)){if("forward"===n)t[t.length-1]+=1;else if("backward"!==n)return null}else h.endsBefore(s,t)?t[s.length-1]+=1:h.isAncestor(s,t)&&u[s.length]>=l&&(t[s.length-1]+=1,t[s.length]-=l);break;case"move_node":var{path:C,newPath:c}=e;if(h.equals(C,c))break;if(h.isAncestor(C,t)||h.equals(C,t)){var f=c.slice();return h.endsBefore(C,c)&&C.length<c.length&&(f[C.length-1]-=1),f.concat(t.slice(C.length))}h.isSibling(C,c)&&(h.isAncestor(c,t)||h.equals(c,t))?h.endsBefore(C,t)?t[C.length-1]-=1:t[C.length-1]+=1:h.endsBefore(c,t)||h.equals(c,t)||h.isAncestor(c,t)?(h.endsBefore(C,t)&&(t[C.length-1]-=1),t[c.length-1]+=1):h.endsBefore(C,t)&&(h.equals(c,t)&&(t[c.length-1]+=1),t[C.length-1]-=1)}return t}};function A(u){return(A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(u){return typeof u}:function(u){return u&&"function"==typeof Symbol&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u})(u)}function v(u,e,r){var t;return t=function(u,e){if("object"!==A(u)||null===u)return u;var r=u[Symbol.toPrimitive];if(void 0!==r){var t=r.call(u,e||"default");if("object"!==A(t))return t;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(u)}(e,"string"),(e="symbol"===A(t)?t:String(t))in u?Object.defineProperty(u,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):u[e]=r,u}function d(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}function F(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?d(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):d(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}var p=function(u,e){for(var r=arguments.length,t=Array(r>2?r-2:0),n=2;n<r;n++)t[n-2]=arguments[n];return[...u.slice(0,e),...t,...u.slice(e)]},E=function(u,e,r){for(var t=arguments.length,n=Array(t>3?t-3:0),o=3;o<t;o++)n[o-3]=arguments[o];return[...u.slice(0,e),...n,...u.slice(e+r)]},g=(u,e,r)=>{if(0===e.length)throw Error("Cannot modify the editor");for(var t=T.get(u,e),n=e.slice(),o=r(t);n.length>1;){var a=n.pop(),i=T.get(u,n);o=F(F({},i),{},{children:E(i.children,a,1,o)})}var D=n.pop();u.children=E(u.children,D,1,o)},y=(u,e,r)=>{0===e.length?u.children=r(u.children):g(u,e,u=>{if(G.isText(u))throw Error("Cannot get the element at path [".concat(e,"] because it refers to a leaf node: ").concat(Z.stringify(u)));return F(F({},u),{},{children:r(u.children)})})},m=(u,e,r)=>g(u,e,u=>{if(!G.isText(u))throw Error("Cannot get the leaf node at path [".concat(e,"] because it refers to a non-leaf node: ").concat(Z.stringify(u)));return r(u)}),b=u=>"object"==typeof u&&null!==u,O=(u,e)=>{for(var r in u){var t=u[r],n=e[r];if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(t[o]!==n[o])return!1}else if(b(t)&&b(n)){if(!O(t,n))return!1}else if(t!==n)return!1}for(var a in e)if(void 0===u[a]&&void 0!==e[a])return!1;return!0};function w(u,e){if(null==u)return{};var r,t,n=function(u,e){if(null==u)return{};var r,t,n={},o=Object.keys(u);for(t=0;t<o.length;t++)r=o[t],e.indexOf(r)>=0||(n[r]=u[r]);return n}(u,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(u);for(t=0;t<o.length;t++)r=o[t],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(u,r)&&(n[r]=u[r])}return n}var P=["anchor","focus"];function x(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}var j={edges(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=e,{anchor:t,focus:n}=u;return j.isBackward(u)===r?[t,n]:[n,t]},end(u){var[,e]=j.edges(u);return e},equals:(u,e)=>$.equals(u.anchor,e.anchor)&&$.equals(u.focus,e.focus),surrounds(u,e){var r=j.intersection(u,e);return!!r&&j.equals(r,e)},includes(u,e){if(j.isRange(e)){if(j.includes(u,e.anchor)||j.includes(u,e.focus))return!0;var[r,t]=j.edges(u),[n,o]=j.edges(e);return $.isBefore(r,n)&&$.isAfter(t,o)}var[a,i]=j.edges(u),D=!1,s=!1;return $.isPoint(e)?(D=$.compare(e,a)>=0,s=0>=$.compare(e,i)):(D=h.compare(e,a.path)>=0,s=0>=h.compare(e,i.path)),D&&s},intersection(u,e){var r=w(u,P),[t,n]=j.edges(u),[o,a]=j.edges(e),i=$.isBefore(t,o)?o:t,D=$.isBefore(n,a)?n:a;return $.isBefore(D,i)?null:function(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?x(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):x(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}({anchor:i,focus:D},r)},isBackward(u){var{anchor:e,focus:r}=u;return $.isAfter(e,r)},isCollapsed(u){var{anchor:e,focus:r}=u;return $.equals(e,r)},isExpanded:u=>!j.isCollapsed(u),isForward:u=>!j.isBackward(u),isRange:u=>b(u)&&$.isPoint(u.anchor)&&$.isPoint(u.focus),*points(u){yield[u.anchor,"anchor"],yield[u.focus,"focus"]},start(u){var[e]=j.edges(u);return e},transform(u,e){var r,t,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===u)return null;var{affinity:o="inward"}=n;if("inward"===o){var a=j.isCollapsed(u);j.isForward(u)?(r="forward",t=a?r:"backward"):(r="backward",t=a?r:"forward")}else"outward"===o?j.isForward(u)?(r="backward",t="forward"):(r="forward",t="backward"):(r=o,t=o);var i=$.transform(u.anchor,e,{affinity:r}),D=$.transform(u.focus,e,{affinity:t});return i&&D?{anchor:i,focus:D}:null}},k=function(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!b(u)&&"function"!=typeof u.apply&&(e?T.isNodeList(u.children):Array.isArray(u.children))},N={isAncestor(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return b(u)&&T.isNodeList(u.children,{deep:e})},isElement:k,isElementList(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(u)&&u.every(u=>N.isElement(u,{deep:e}))},isElementProps:u=>void 0!==u.children,isElementType:function(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"type";return k(u)&&u[r]===e},matches(u,e){for(var r in e)if("children"!==r&&u[r]!==e[r])return!1;return!0}},R=["children"],S=["text"],T={ancestor(u,e){var r=T.get(u,e);if(G.isText(r))throw Error("Cannot get the ancestor node at path [".concat(e,"] because it refers to a text node instead: ").concat(Z.stringify(r)));return r},ancestors(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var t of h.ancestors(e,r)){var n=[T.ancestor(u,t),t];yield n}}()},child(u,e){if(G.isText(u))throw Error("Cannot get the child of a text node: ".concat(Z.stringify(u)));var r=u.children[e];if(null==r)throw Error("Cannot get child at index `".concat(e,"` in node: ").concat(Z.stringify(u)));return r},children(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var{reverse:t=!1}=r,n=T.ancestor(u,e),{children:o}=n,a=t?o.length-1:0;t?a>=0:a<o.length;){var i=T.child(n,a),D=e.concat(a);yield[i,D],a=t?a-1:a+1}}()},common(u,e,r){var t=h.common(e,r);return[T.get(u,t),t]},descendant(u,e){var r=T.get(u,e);if(V.isEditor(r))throw Error("Cannot get the descendant node at path [".concat(e,"] because it refers to the root editor node instead: ").concat(Z.stringify(r)));return r},descendants(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,t]of T.nodes(u,e))0!==t.length&&(yield[r,t])}()},elements(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,t]of T.nodes(u,e))N.isElement(r)&&(yield[r,t])}()},extractProps(u){if(N.isAncestor(u)){var e=w(u,R);return e}var e=w(u,S);return e},first(u,e){for(var r=e.slice(),t=T.get(u,r);t;)if(G.isText(t)||0===t.children.length)break;else t=t.children[0],r.push(0);return[t,r]},fragment(u,e){if(G.isText(u))throw Error("Cannot get a fragment starting from a root text node: ".concat(Z.stringify(u)));return(0,n.jM)({children:u.children},u=>{var[r,t]=j.edges(e);for(var[,n]of T.nodes(u,{reverse:!0,pass:u=>{var[,r]=u;return!j.includes(e,r)}})){if(!j.includes(e,n)){var o=T.parent(u,n),a=n[n.length-1];o.children.splice(a,1)}if(h.equals(n,t.path)){var i=T.leaf(u,n);i.text=i.text.slice(0,t.offset)}if(h.equals(n,r.path)){var D=T.leaf(u,n);D.text=D.text.slice(r.offset)}}V.isEditor(u)&&(u.selection=null)}).children},get(u,e){var r=T.getIf(u,e);if(void 0===r)throw Error("Cannot find a descendant at path [".concat(e,"] in node: ").concat(Z.stringify(u)));return r},getIf(u,e){for(var r=u,t=0;t<e.length;t++){var n=e[t];if(G.isText(r)||!r.children[n])return;r=r.children[n]}return r},has(u,e){for(var r=u,t=0;t<e.length;t++){var n=e[t];if(G.isText(r)||!r.children[n])return!1;r=r.children[n]}return!0},isNode(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return G.isText(u)||N.isElement(u,{deep:e})||V.isEditor(u,{deep:e})},isNodeList(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(u)&&u.every(u=>T.isNode(u,{deep:e}))},last(u,e){for(var r=e.slice(),t=T.get(u,r);t;)if(G.isText(t)||0===t.children.length)break;else{var n=t.children.length-1;t=t.children[n],r.push(n)}return[t,r]},leaf(u,e){var r=T.get(u,e);if(!G.isText(r))throw Error("Cannot get the leaf node at path [".concat(e,"] because it refers to a non-leaf node: ").concat(Z.stringify(r)));return r},levels(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var t of h.levels(e,r)){var n=T.get(u,t);yield[n,t]}}()},matches:(u,e)=>N.isElement(u)&&N.isElementProps(e)&&N.matches(u,e)||G.isText(u)&&G.isTextProps(e)&&G.matches(u,e),nodes(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var{pass:r,reverse:t=!1}=e,{from:n=[],to:o}=e,a=new Set,i=[],D=u;!(o&&(t?h.isBefore(i,o):h.isAfter(i,o)));){if(a.has(D)||(yield[D,i]),!a.has(D)&&!G.isText(D)&&0!==D.children.length&&(null==r||!1===r([D,i]))){a.add(D);var s=t?D.children.length-1:0;h.isAncestor(i,n)&&(s=n[i.length]),i=i.concat(s),D=T.get(u,i);continue}if(0===i.length)break;if(!t){var l=h.next(i);if(T.has(u,l)){i=l,D=T.get(u,i);continue}}if(t&&0!==i[i.length-1]){i=h.previous(i),D=T.get(u,i);continue}i=h.parent(i),D=T.get(u,i),a.add(D)}}()},parent(u,e){var r=h.parent(e),t=T.get(u,r);if(G.isText(t))throw Error("Cannot get the parent of path [".concat(e,"] because it does not exist in the root."));return t},string:u=>G.isText(u)?u.text:u.children.map(T.string).join(""),texts(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,t]of T.nodes(u,e))G.isText(r)&&(yield[r,t])}()}};function _(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}function q(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?_(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):_(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}var I={isNodeOperation:u=>I.isOperation(u)&&u.type.endsWith("_node"),isOperation(u){if(!b(u))return!1;switch(u.type){case"insert_node":case"remove_node":return h.isPath(u.path)&&T.isNode(u.node);case"insert_text":case"remove_text":return"number"==typeof u.offset&&"string"==typeof u.text&&h.isPath(u.path);case"merge_node":return"number"==typeof u.position&&h.isPath(u.path)&&b(u.properties);case"move_node":return h.isPath(u.path)&&h.isPath(u.newPath);case"set_node":return h.isPath(u.path)&&b(u.properties)&&b(u.newProperties);case"set_selection":return null===u.properties&&j.isRange(u.newProperties)||null===u.newProperties&&j.isRange(u.properties)||b(u.properties)&&b(u.newProperties);case"split_node":return h.isPath(u.path)&&"number"==typeof u.position&&b(u.properties);default:return!1}},isOperationList:u=>Array.isArray(u)&&u.every(u=>I.isOperation(u)),isSelectionOperation:u=>I.isOperation(u)&&u.type.endsWith("_selection"),isTextOperation:u=>I.isOperation(u)&&u.type.endsWith("_text"),inverse(u){switch(u.type){case"insert_node":return q(q({},u),{},{type:"remove_node"});case"insert_text":return q(q({},u),{},{type:"remove_text"});case"merge_node":return q(q({},u),{},{type:"split_node",path:h.previous(u.path)});case"move_node":var{newPath:e,path:r}=u;if(h.equals(e,r))return u;if(h.isSibling(r,e))return q(q({},u),{},{path:e,newPath:r});var t=h.transform(r,u),n=h.transform(h.next(r),u);return q(q({},u),{},{path:t,newPath:n});case"remove_node":return q(q({},u),{},{type:"insert_node"});case"remove_text":return q(q({},u),{},{type:"insert_text"});case"set_node":var{properties:o,newProperties:a}=u;return q(q({},u),{},{properties:a,newProperties:o});case"set_selection":var{properties:i,newProperties:D}=u;if(null==i)return q(q({},u),{},{properties:D,newProperties:null});if(null==D)return q(q({},u),{},{properties:null,newProperties:i});return q(q({},u),{},{properties:D,newProperties:i});case"split_node":return q(q({},u),{},{type:"merge_node",path:h.next(u.path)})}}},z=function(u){var{deep:e=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!b(u)&&"function"==typeof u.addMark&&"function"==typeof u.apply&&"function"==typeof u.deleteFragment&&"function"==typeof u.insertBreak&&"function"==typeof u.insertSoftBreak&&"function"==typeof u.insertFragment&&"function"==typeof u.insertNode&&"function"==typeof u.insertText&&"function"==typeof u.isElementReadOnly&&"function"==typeof u.isInline&&"function"==typeof u.isSelectable&&"function"==typeof u.isVoid&&"function"==typeof u.normalizeNode&&"function"==typeof u.onChange&&"function"==typeof u.removeMark&&"function"==typeof u.getDirtyPaths&&(null===u.marks||b(u.marks))&&(null===u.selection||j.isRange(u.selection))&&(!e||T.isNodeList(u.children))&&I.isOperationList(u.operations)},V={above:(u,e)=>u.above(e),addMark(u,e,r){u.addMark(e,r)},after:(u,e,r)=>u.after(e,r),before:(u,e,r)=>u.before(e,r),deleteBackward(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=e;u.deleteBackward(r)},deleteForward(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=e;u.deleteForward(r)},deleteFragment(u,e){u.deleteFragment(e)},edges:(u,e)=>u.edges(e),elementReadOnly(u){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return u.elementReadOnly(e)},end:(u,e)=>u.end(e),first:(u,e)=>u.first(e),fragment:(u,e)=>u.fragment(e),hasBlocks:(u,e)=>u.hasBlocks(e),hasInlines:(u,e)=>u.hasInlines(e),hasPath:(u,e)=>u.hasPath(e),hasTexts:(u,e)=>u.hasTexts(e),insertBreak(u){u.insertBreak()},insertFragment(u,e,r){u.insertFragment(e,r)},insertNode(u,e){u.insertNode(e)},insertSoftBreak(u){u.insertSoftBreak()},insertText(u,e){u.insertText(e)},isBlock:(u,e)=>u.isBlock(e),isEdge:(u,e,r)=>u.isEdge(e,r),isEditor:u=>z(u),isElementReadOnly:(u,e)=>u.isElementReadOnly(e),isEmpty:(u,e)=>u.isEmpty(e),isEnd:(u,e,r)=>u.isEnd(e,r),isInline:(u,e)=>u.isInline(e),isNormalizing:u=>u.isNormalizing(),isSelectable:(u,e)=>u.isSelectable(e),isStart:(u,e,r)=>u.isStart(e,r),isVoid:(u,e)=>u.isVoid(e),last:(u,e)=>u.last(e),leaf:(u,e,r)=>u.leaf(e,r),levels:(u,e)=>u.levels(e),marks:u=>u.getMarks(),next:(u,e)=>u.next(e),node:(u,e,r)=>u.node(e,r),nodes:(u,e)=>u.nodes(e),normalize(u,e){u.normalize(e)},parent:(u,e,r)=>u.parent(e,r),path:(u,e,r)=>u.path(e,r),pathRef:(u,e,r)=>u.pathRef(e,r),pathRefs:u=>u.pathRefs(),point:(u,e,r)=>u.point(e,r),pointRef:(u,e,r)=>u.pointRef(e,r),pointRefs:u=>u.pointRefs(),positions:(u,e)=>u.positions(e),previous:(u,e)=>u.previous(e),range:(u,e,r)=>u.range(e,r),rangeRef:(u,e,r)=>u.rangeRef(e,r),rangeRefs:u=>u.rangeRefs(),removeMark(u,e){u.removeMark(e)},setNormalizing(u,e){u.setNormalizing(e)},start:(u,e)=>u.start(e),string:(u,e,r)=>u.string(e,r),unhangRange:(u,e,r)=>u.unhangRange(e,r),void:(u,e)=>u.void(e),withoutNormalizing(u,e){u.withoutNormalizing(e)},shouldMergeNodesRemovePrevNode:(u,e,r)=>u.shouldMergeNodesRemovePrevNode(e,r)},M={isSpan:u=>Array.isArray(u)&&2===u.length&&u.every(h.isPath)};function L(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}function W(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?L(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):L(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}var $={compare(u,e){var r=h.compare(u.path,e.path);return 0===r?u.offset<e.offset?-1:+(u.offset>e.offset):r},isAfter:(u,e)=>1===$.compare(u,e),isBefore:(u,e)=>-1===$.compare(u,e),equals:(u,e)=>u.offset===e.offset&&h.equals(u.path,e.path),isPoint:u=>b(u)&&"number"==typeof u.offset&&h.isPath(u.path),transform(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===u)return null;var{affinity:t="forward"}=r,{path:n,offset:o}=u;switch(e.type){case"insert_node":case"move_node":n=h.transform(n,e,r);break;case"insert_text":h.equals(e.path,n)&&(e.offset<o||e.offset===o&&"forward"===t)&&(o+=e.text.length);break;case"merge_node":h.equals(e.path,n)&&(o+=e.position),n=h.transform(n,e,r);break;case"remove_text":h.equals(e.path,n)&&e.offset<=o&&(o-=Math.min(o-e.offset,e.text.length));break;case"remove_node":if(h.equals(e.path,n)||h.isAncestor(e.path,n))return null;n=h.transform(n,e,r);break;case"split_node":if(h.equals(e.path,n))if(e.position===o&&null==t)return null;else(e.position<o||e.position===o&&"forward"===t)&&(o-=e.position,n=h.transform(n,e,W(W({},r),{},{affinity:"forward"})));else n=h.transform(n,e,r);break;default:return u}return{path:n,offset:o}}},J=void 0,Z={setScrubber(u){J=u},stringify:u=>JSON.stringify(u,J)},H=["text"],K=["anchor","focus","merge"];function Q(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}function Y(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Q(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}var G={equals(u,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{loose:t=!1}=r;return O(t?w(u,H):u,t?w(e,H):e)},isText:u=>b(u)&&"string"==typeof u.text,isTextList:u=>Array.isArray(u)&&u.every(u=>G.isText(u)),isTextProps:u=>void 0!==u.text,matches(u,e){for(var r in e)if("text"!==r&&(!u.hasOwnProperty(r)||u[r]!==e[r]))return!1;return!0},decorations(u,e){var r=[{leaf:Y({},u)}];for(var t of e){var{anchor:n,focus:o,merge:a}=t,i=w(t,K),[D,s]=j.edges(t),l=[],C=0,c=D.offset,f=s.offset,B=null!=a?a:Object.assign;for(var{leaf:h}of r){var{length:A}=h.text,v=C;if(C+=A,c<=v&&C<=f){B(h,i),l.push({leaf:h});continue}if(c!==f&&(c===C||f===v)||c>C||f<v||f===v&&0!==v){l.push({leaf:h});continue}var d=h,F=void 0,p=void 0;if(f<C){var E=f-v;p={leaf:Y(Y({},d),{},{text:d.text.slice(E)})},d=Y(Y({},d),{},{text:d.text.slice(0,E)})}if(c>v){var g=c-v;F={leaf:Y(Y({},d),{},{text:d.text.slice(0,g)})},d=Y(Y({},d),{},{text:d.text.slice(g)})}B(d,i),F&&l.push(F),l.push({leaf:d}),p&&l.push(p)}r=l}if(r.length>1){var y=0;for(var[m,b]of r.entries()){var O=y,P=O+b.leaf.text.length,x={start:O,end:P};0===m&&(x.isFirst=!0),m===r.length-1&&(x.isLast=!0),b.position=x,y=P}}return r}},U=u=>u.selection?u.selection:u.children.length>0?V.end(u,[]):[0],X=(u,e)=>{var[r]=V.node(u,e);return u=>u===r},uu=function(u){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!e,n=e?ui(u):u,o=t.None,a=t.None,i=0,D=null;for(var s of n){var l=s.codePointAt(0);if(!l)break;var C=uF(s,l);if([o,a]=r?[a,C]:[C,o],(o&t.ZWJ)!=0&&(a&t.ExtPict)!=0&&!(r?ug(u.substring(0,i)):ug(u.substring(0,u.length-i))))break;if((o&t.RI)!=0&&(a&t.RI)!=0&&!(D=null!==D?!D:!!r||um(u.substring(0,u.length-i)))||o!==t.None&&a!==t.None&&function(u,e){return -1===up.findIndex(r=>(u&r[0])!=0&&(e&r[1])!=0)}(o,a))break;i+=s.length}return i||1},ue=/\s/,ur=/[\u002B\u0021-\u0023\u0025-\u002A\u002C-\u002F\u003A\u003B\u003F\u0040\u005B-\u005D\u005F\u007B\u007D\u00A1\u00A7\u00AB\u00B6\u00B7\u00BB\u00BF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E3B\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/,ut=/['\u2018\u2019]/,un=function(u){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=0,t=!1;u.length>0;){var n=uu(u,e),[o,a]=uo(u,n,e);if(ua(o,a,e))t=!0,r+=n;else if(t)break;else r+=n;u=a}return r},uo=(u,e,r)=>{if(r){var t=u.length-e;return[u.slice(t,u.length),u.slice(0,t)]}return[u.slice(0,e),u.slice(e)]},ua=function u(e,r){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(ue.test(e))return!1;if(ut.test(e)){var n=uu(r,t),[o,a]=uo(r,n,t);if(u(o,a,t))return!0}return!ur.test(e)},ui=function*(u){for(var e=u.length-1,r=0;r<u.length;r++){var t=u.charAt(e-r);if(us(t.charCodeAt(0))){var n=u.charAt(e-r-1);if(uD(n.charCodeAt(0))){yield n+t,r++;continue}}yield t}},uD=u=>u>=55296&&u<=56319,us=u=>u>=56320&&u<=57343;!function(u){u[u.None=0]="None",u[u.Extend=1]="Extend",u[u.ZWJ=2]="ZWJ",u[u.RI=4]="RI",u[u.Prepend=8]="Prepend",u[u.SpacingMark=16]="SpacingMark",u[u.L=32]="L",u[u.V=64]="V",u[u.T=128]="T",u[u.LV=256]="LV",u[u.LVT=512]="LVT",u[u.ExtPict=1024]="ExtPict",u[u.Any=2048]="Any"}(t||(t={}));var ul=/^(?:[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09BE\u09C1-\u09C4\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3E\u0B3F\u0B41-\u0B44\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B82\u0BBE\u0BC0\u0BCD\u0BD7\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC2\u0CC6\u0CCC\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D3E\u0D41-\u0D44\u0D4D\u0D57\u0D62\u0D63\u0D81\u0DCA\u0DCF\u0DD2-\u0DD4\u0DD6\u0DDF\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u200C\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFF9E\uFF9F]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDEAB\uDEAC\uDEFD-\uDEFF\uDF46-\uDF50\uDF82-\uDF85]|\uD804[\uDC01\uDC38-\uDC46\uDC70\uDC73\uDC74\uDC7F-\uDC81\uDCB3-\uDCB6\uDCB9\uDCBA\uDCC2\uDD00-\uDD02\uDD27-\uDD2B\uDD2D-\uDD34\uDD73\uDD80\uDD81\uDDB6-\uDDBE\uDDC9-\uDDCC\uDDCF\uDE2F-\uDE31\uDE34\uDE36\uDE37\uDE3E\uDE41\uDEDF\uDEE3-\uDEEA\uDF00\uDF01\uDF3B\uDF3C\uDF3E\uDF40\uDF57\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC38-\uDC3F\uDC42-\uDC44\uDC46\uDC5E\uDCB0\uDCB3-\uDCB8\uDCBA\uDCBD\uDCBF\uDCC0\uDCC2\uDCC3\uDDAF\uDDB2-\uDDB5\uDDBC\uDDBD\uDDBF\uDDC0\uDDDC\uDDDD\uDE33-\uDE3A\uDE3D\uDE3F\uDE40\uDEAB\uDEAD\uDEB0-\uDEB5\uDEB7\uDF1D-\uDF1F\uDF22-\uDF25\uDF27-\uDF2B]|\uD806[\uDC2F-\uDC37\uDC39\uDC3A\uDD30\uDD3B\uDD3C\uDD3E\uDD43\uDDD4-\uDDD7\uDDDA\uDDDB\uDDE0\uDE01-\uDE0A\uDE33-\uDE38\uDE3B-\uDE3E\uDE47\uDE51-\uDE56\uDE59-\uDE5B\uDE8A-\uDE96\uDE98\uDE99]|\uD807[\uDC30-\uDC36\uDC38-\uDC3D\uDC3F\uDC92-\uDCA7\uDCAA-\uDCB0\uDCB2\uDCB3\uDCB5\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD90\uDD91\uDD95\uDD97\uDEF3\uDEF4\uDF00\uDF01\uDF36-\uDF3A\uDF40\uDF42]|\uD80D[\uDC40\uDC47-\uDC55]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF4F\uDF8F-\uDF92\uDFE4]|\uD82F[\uDC9D\uDC9E]|\uD833[\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65\uDD67-\uDD69\uDD6E-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC8F\uDD30-\uDD36\uDEAE\uDEEC-\uDEEF]|\uD839[\uDCEC-\uDCEF]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uD83C[\uDFFB-\uDFFF]|\uDB40[\uDC20-\uDC7F\uDD00-\uDDEF])$/,uC=/^(?:[\u0600-\u0605\u06DD\u070F\u0890\u0891\u08E2\u0D4E]|\uD804[\uDCBD\uDCCD\uDDC2\uDDC3]|\uD806[\uDD3F\uDD41\uDE3A\uDE84-\uDE89]|\uD807\uDD46)$/,uc=/^(?:[\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E\u094F\u0982\u0983\u09BF\u09C0\u09C7\u09C8\u09CB\u09CC\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB\u0ACC\u0B02\u0B03\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0C01-\u0C03\u0C41-\u0C44\u0C82\u0C83\u0CBE\u0CC0\u0CC1\u0CC3\u0CC4\u0CC7\u0CC8\u0CCA\u0CCB\u0D02\u0D03\u0D3F\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D82\u0D83\u0DD0\u0DD1\u0DD8-\u0DDE\u0DF2\u0DF3\u0E33\u0EB3\u0F3E\u0F3F\u0F7F\u1031\u103B\u103C\u1056\u1057\u1084\u1715\u1734\u17B6\u17BE-\u17C5\u17C7\u17C8\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1A19\u1A1A\u1A55\u1A57\u1A6D-\u1A72\u1B04\u1B3B\u1B3D-\u1B41\u1B43\u1B44\u1B82\u1BA1\u1BA6\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1C24-\u1C2B\u1C34\u1C35\u1CE1\u1CF7\uA823\uA824\uA827\uA880\uA881\uA8B4-\uA8C3\uA952\uA953\uA983\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9C0\uAA2F\uAA30\uAA33\uAA34\uAA4D\uAAEB\uAAEE\uAAEF\uAAF5\uABE3\uABE4\uABE6\uABE7\uABE9\uABEA\uABEC]|\uD804[\uDC00\uDC02\uDC82\uDCB0-\uDCB2\uDCB7\uDCB8\uDD2C\uDD45\uDD46\uDD82\uDDB3-\uDDB5\uDDBF\uDDC0\uDDCE\uDE2C-\uDE2E\uDE32\uDE33\uDE35\uDEE0-\uDEE2\uDF02\uDF03\uDF3F\uDF41-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF62\uDF63]|\uD805[\uDC35-\uDC37\uDC40\uDC41\uDC45\uDCB1\uDCB2\uDCB9\uDCBB\uDCBC\uDCBE\uDCC1\uDDB0\uDDB1\uDDB8-\uDDBB\uDDBE\uDE30-\uDE32\uDE3B\uDE3C\uDE3E\uDEAC\uDEAE\uDEAF\uDEB6\uDF26]|\uD806[\uDC2C-\uDC2E\uDC38\uDD31-\uDD35\uDD37\uDD38\uDD3D\uDD40\uDD42\uDDD1-\uDDD3\uDDDC-\uDDDF\uDDE4\uDE39\uDE57\uDE58\uDE97]|\uD807[\uDC2F\uDC3E\uDCA9\uDCB1\uDCB4\uDD8A-\uDD8E\uDD93\uDD94\uDD96\uDEF5\uDEF6]|\uD81B[\uDF51-\uDF87\uDFF0\uDFF1]|\uD834[\uDD66\uDD6D])$/,uf=/^[\u1100-\u115F\uA960-\uA97C]$/,uB=/^[\u1160-\u11A7\uD7B0-\uD7C6]$/,uh=/^[\u11A8-\u11FF\uD7CB-\uD7FB]$/,uA=/^[\uAC00\uAC1C\uAC38\uAC54\uAC70\uAC8C\uACA8\uACC4\uACE0\uACFC\uAD18\uAD34\uAD50\uAD6C\uAD88\uADA4\uADC0\uADDC\uADF8\uAE14\uAE30\uAE4C\uAE68\uAE84\uAEA0\uAEBC\uAED8\uAEF4\uAF10\uAF2C\uAF48\uAF64\uAF80\uAF9C\uAFB8\uAFD4\uAFF0\uB00C\uB028\uB044\uB060\uB07C\uB098\uB0B4\uB0D0\uB0EC\uB108\uB124\uB140\uB15C\uB178\uB194\uB1B0\uB1CC\uB1E8\uB204\uB220\uB23C\uB258\uB274\uB290\uB2AC\uB2C8\uB2E4\uB300\uB31C\uB338\uB354\uB370\uB38C\uB3A8\uB3C4\uB3E0\uB3FC\uB418\uB434\uB450\uB46C\uB488\uB4A4\uB4C0\uB4DC\uB4F8\uB514\uB530\uB54C\uB568\uB584\uB5A0\uB5BC\uB5D8\uB5F4\uB610\uB62C\uB648\uB664\uB680\uB69C\uB6B8\uB6D4\uB6F0\uB70C\uB728\uB744\uB760\uB77C\uB798\uB7B4\uB7D0\uB7EC\uB808\uB824\uB840\uB85C\uB878\uB894\uB8B0\uB8CC\uB8E8\uB904\uB920\uB93C\uB958\uB974\uB990\uB9AC\uB9C8\uB9E4\uBA00\uBA1C\uBA38\uBA54\uBA70\uBA8C\uBAA8\uBAC4\uBAE0\uBAFC\uBB18\uBB34\uBB50\uBB6C\uBB88\uBBA4\uBBC0\uBBDC\uBBF8\uBC14\uBC30\uBC4C\uBC68\uBC84\uBCA0\uBCBC\uBCD8\uBCF4\uBD10\uBD2C\uBD48\uBD64\uBD80\uBD9C\uBDB8\uBDD4\uBDF0\uBE0C\uBE28\uBE44\uBE60\uBE7C\uBE98\uBEB4\uBED0\uBEEC\uBF08\uBF24\uBF40\uBF5C\uBF78\uBF94\uBFB0\uBFCC\uBFE8\uC004\uC020\uC03C\uC058\uC074\uC090\uC0AC\uC0C8\uC0E4\uC100\uC11C\uC138\uC154\uC170\uC18C\uC1A8\uC1C4\uC1E0\uC1FC\uC218\uC234\uC250\uC26C\uC288\uC2A4\uC2C0\uC2DC\uC2F8\uC314\uC330\uC34C\uC368\uC384\uC3A0\uC3BC\uC3D8\uC3F4\uC410\uC42C\uC448\uC464\uC480\uC49C\uC4B8\uC4D4\uC4F0\uC50C\uC528\uC544\uC560\uC57C\uC598\uC5B4\uC5D0\uC5EC\uC608\uC624\uC640\uC65C\uC678\uC694\uC6B0\uC6CC\uC6E8\uC704\uC720\uC73C\uC758\uC774\uC790\uC7AC\uC7C8\uC7E4\uC800\uC81C\uC838\uC854\uC870\uC88C\uC8A8\uC8C4\uC8E0\uC8FC\uC918\uC934\uC950\uC96C\uC988\uC9A4\uC9C0\uC9DC\uC9F8\uCA14\uCA30\uCA4C\uCA68\uCA84\uCAA0\uCABC\uCAD8\uCAF4\uCB10\uCB2C\uCB48\uCB64\uCB80\uCB9C\uCBB8\uCBD4\uCBF0\uCC0C\uCC28\uCC44\uCC60\uCC7C\uCC98\uCCB4\uCCD0\uCCEC\uCD08\uCD24\uCD40\uCD5C\uCD78\uCD94\uCDB0\uCDCC\uCDE8\uCE04\uCE20\uCE3C\uCE58\uCE74\uCE90\uCEAC\uCEC8\uCEE4\uCF00\uCF1C\uCF38\uCF54\uCF70\uCF8C\uCFA8\uCFC4\uCFE0\uCFFC\uD018\uD034\uD050\uD06C\uD088\uD0A4\uD0C0\uD0DC\uD0F8\uD114\uD130\uD14C\uD168\uD184\uD1A0\uD1BC\uD1D8\uD1F4\uD210\uD22C\uD248\uD264\uD280\uD29C\uD2B8\uD2D4\uD2F0\uD30C\uD328\uD344\uD360\uD37C\uD398\uD3B4\uD3D0\uD3EC\uD408\uD424\uD440\uD45C\uD478\uD494\uD4B0\uD4CC\uD4E8\uD504\uD520\uD53C\uD558\uD574\uD590\uD5AC\uD5C8\uD5E4\uD600\uD61C\uD638\uD654\uD670\uD68C\uD6A8\uD6C4\uD6E0\uD6FC\uD718\uD734\uD750\uD76C\uD788]$/,uv=/^[\uAC01-\uAC1B\uAC1D-\uAC37\uAC39-\uAC53\uAC55-\uAC6F\uAC71-\uAC8B\uAC8D-\uACA7\uACA9-\uACC3\uACC5-\uACDF\uACE1-\uACFB\uACFD-\uAD17\uAD19-\uAD33\uAD35-\uAD4F\uAD51-\uAD6B\uAD6D-\uAD87\uAD89-\uADA3\uADA5-\uADBF\uADC1-\uADDB\uADDD-\uADF7\uADF9-\uAE13\uAE15-\uAE2F\uAE31-\uAE4B\uAE4D-\uAE67\uAE69-\uAE83\uAE85-\uAE9F\uAEA1-\uAEBB\uAEBD-\uAED7\uAED9-\uAEF3\uAEF5-\uAF0F\uAF11-\uAF2B\uAF2D-\uAF47\uAF49-\uAF63\uAF65-\uAF7F\uAF81-\uAF9B\uAF9D-\uAFB7\uAFB9-\uAFD3\uAFD5-\uAFEF\uAFF1-\uB00B\uB00D-\uB027\uB029-\uB043\uB045-\uB05F\uB061-\uB07B\uB07D-\uB097\uB099-\uB0B3\uB0B5-\uB0CF\uB0D1-\uB0EB\uB0ED-\uB107\uB109-\uB123\uB125-\uB13F\uB141-\uB15B\uB15D-\uB177\uB179-\uB193\uB195-\uB1AF\uB1B1-\uB1CB\uB1CD-\uB1E7\uB1E9-\uB203\uB205-\uB21F\uB221-\uB23B\uB23D-\uB257\uB259-\uB273\uB275-\uB28F\uB291-\uB2AB\uB2AD-\uB2C7\uB2C9-\uB2E3\uB2E5-\uB2FF\uB301-\uB31B\uB31D-\uB337\uB339-\uB353\uB355-\uB36F\uB371-\uB38B\uB38D-\uB3A7\uB3A9-\uB3C3\uB3C5-\uB3DF\uB3E1-\uB3FB\uB3FD-\uB417\uB419-\uB433\uB435-\uB44F\uB451-\uB46B\uB46D-\uB487\uB489-\uB4A3\uB4A5-\uB4BF\uB4C1-\uB4DB\uB4DD-\uB4F7\uB4F9-\uB513\uB515-\uB52F\uB531-\uB54B\uB54D-\uB567\uB569-\uB583\uB585-\uB59F\uB5A1-\uB5BB\uB5BD-\uB5D7\uB5D9-\uB5F3\uB5F5-\uB60F\uB611-\uB62B\uB62D-\uB647\uB649-\uB663\uB665-\uB67F\uB681-\uB69B\uB69D-\uB6B7\uB6B9-\uB6D3\uB6D5-\uB6EF\uB6F1-\uB70B\uB70D-\uB727\uB729-\uB743\uB745-\uB75F\uB761-\uB77B\uB77D-\uB797\uB799-\uB7B3\uB7B5-\uB7CF\uB7D1-\uB7EB\uB7ED-\uB807\uB809-\uB823\uB825-\uB83F\uB841-\uB85B\uB85D-\uB877\uB879-\uB893\uB895-\uB8AF\uB8B1-\uB8CB\uB8CD-\uB8E7\uB8E9-\uB903\uB905-\uB91F\uB921-\uB93B\uB93D-\uB957\uB959-\uB973\uB975-\uB98F\uB991-\uB9AB\uB9AD-\uB9C7\uB9C9-\uB9E3\uB9E5-\uB9FF\uBA01-\uBA1B\uBA1D-\uBA37\uBA39-\uBA53\uBA55-\uBA6F\uBA71-\uBA8B\uBA8D-\uBAA7\uBAA9-\uBAC3\uBAC5-\uBADF\uBAE1-\uBAFB\uBAFD-\uBB17\uBB19-\uBB33\uBB35-\uBB4F\uBB51-\uBB6B\uBB6D-\uBB87\uBB89-\uBBA3\uBBA5-\uBBBF\uBBC1-\uBBDB\uBBDD-\uBBF7\uBBF9-\uBC13\uBC15-\uBC2F\uBC31-\uBC4B\uBC4D-\uBC67\uBC69-\uBC83\uBC85-\uBC9F\uBCA1-\uBCBB\uBCBD-\uBCD7\uBCD9-\uBCF3\uBCF5-\uBD0F\uBD11-\uBD2B\uBD2D-\uBD47\uBD49-\uBD63\uBD65-\uBD7F\uBD81-\uBD9B\uBD9D-\uBDB7\uBDB9-\uBDD3\uBDD5-\uBDEF\uBDF1-\uBE0B\uBE0D-\uBE27\uBE29-\uBE43\uBE45-\uBE5F\uBE61-\uBE7B\uBE7D-\uBE97\uBE99-\uBEB3\uBEB5-\uBECF\uBED1-\uBEEB\uBEED-\uBF07\uBF09-\uBF23\uBF25-\uBF3F\uBF41-\uBF5B\uBF5D-\uBF77\uBF79-\uBF93\uBF95-\uBFAF\uBFB1-\uBFCB\uBFCD-\uBFE7\uBFE9-\uC003\uC005-\uC01F\uC021-\uC03B\uC03D-\uC057\uC059-\uC073\uC075-\uC08F\uC091-\uC0AB\uC0AD-\uC0C7\uC0C9-\uC0E3\uC0E5-\uC0FF\uC101-\uC11B\uC11D-\uC137\uC139-\uC153\uC155-\uC16F\uC171-\uC18B\uC18D-\uC1A7\uC1A9-\uC1C3\uC1C5-\uC1DF\uC1E1-\uC1FB\uC1FD-\uC217\uC219-\uC233\uC235-\uC24F\uC251-\uC26B\uC26D-\uC287\uC289-\uC2A3\uC2A5-\uC2BF\uC2C1-\uC2DB\uC2DD-\uC2F7\uC2F9-\uC313\uC315-\uC32F\uC331-\uC34B\uC34D-\uC367\uC369-\uC383\uC385-\uC39F\uC3A1-\uC3BB\uC3BD-\uC3D7\uC3D9-\uC3F3\uC3F5-\uC40F\uC411-\uC42B\uC42D-\uC447\uC449-\uC463\uC465-\uC47F\uC481-\uC49B\uC49D-\uC4B7\uC4B9-\uC4D3\uC4D5-\uC4EF\uC4F1-\uC50B\uC50D-\uC527\uC529-\uC543\uC545-\uC55F\uC561-\uC57B\uC57D-\uC597\uC599-\uC5B3\uC5B5-\uC5CF\uC5D1-\uC5EB\uC5ED-\uC607\uC609-\uC623\uC625-\uC63F\uC641-\uC65B\uC65D-\uC677\uC679-\uC693\uC695-\uC6AF\uC6B1-\uC6CB\uC6CD-\uC6E7\uC6E9-\uC703\uC705-\uC71F\uC721-\uC73B\uC73D-\uC757\uC759-\uC773\uC775-\uC78F\uC791-\uC7AB\uC7AD-\uC7C7\uC7C9-\uC7E3\uC7E5-\uC7FF\uC801-\uC81B\uC81D-\uC837\uC839-\uC853\uC855-\uC86F\uC871-\uC88B\uC88D-\uC8A7\uC8A9-\uC8C3\uC8C5-\uC8DF\uC8E1-\uC8FB\uC8FD-\uC917\uC919-\uC933\uC935-\uC94F\uC951-\uC96B\uC96D-\uC987\uC989-\uC9A3\uC9A5-\uC9BF\uC9C1-\uC9DB\uC9DD-\uC9F7\uC9F9-\uCA13\uCA15-\uCA2F\uCA31-\uCA4B\uCA4D-\uCA67\uCA69-\uCA83\uCA85-\uCA9F\uCAA1-\uCABB\uCABD-\uCAD7\uCAD9-\uCAF3\uCAF5-\uCB0F\uCB11-\uCB2B\uCB2D-\uCB47\uCB49-\uCB63\uCB65-\uCB7F\uCB81-\uCB9B\uCB9D-\uCBB7\uCBB9-\uCBD3\uCBD5-\uCBEF\uCBF1-\uCC0B\uCC0D-\uCC27\uCC29-\uCC43\uCC45-\uCC5F\uCC61-\uCC7B\uCC7D-\uCC97\uCC99-\uCCB3\uCCB5-\uCCCF\uCCD1-\uCCEB\uCCED-\uCD07\uCD09-\uCD23\uCD25-\uCD3F\uCD41-\uCD5B\uCD5D-\uCD77\uCD79-\uCD93\uCD95-\uCDAF\uCDB1-\uCDCB\uCDCD-\uCDE7\uCDE9-\uCE03\uCE05-\uCE1F\uCE21-\uCE3B\uCE3D-\uCE57\uCE59-\uCE73\uCE75-\uCE8F\uCE91-\uCEAB\uCEAD-\uCEC7\uCEC9-\uCEE3\uCEE5-\uCEFF\uCF01-\uCF1B\uCF1D-\uCF37\uCF39-\uCF53\uCF55-\uCF6F\uCF71-\uCF8B\uCF8D-\uCFA7\uCFA9-\uCFC3\uCFC5-\uCFDF\uCFE1-\uCFFB\uCFFD-\uD017\uD019-\uD033\uD035-\uD04F\uD051-\uD06B\uD06D-\uD087\uD089-\uD0A3\uD0A5-\uD0BF\uD0C1-\uD0DB\uD0DD-\uD0F7\uD0F9-\uD113\uD115-\uD12F\uD131-\uD14B\uD14D-\uD167\uD169-\uD183\uD185-\uD19F\uD1A1-\uD1BB\uD1BD-\uD1D7\uD1D9-\uD1F3\uD1F5-\uD20F\uD211-\uD22B\uD22D-\uD247\uD249-\uD263\uD265-\uD27F\uD281-\uD29B\uD29D-\uD2B7\uD2B9-\uD2D3\uD2D5-\uD2EF\uD2F1-\uD30B\uD30D-\uD327\uD329-\uD343\uD345-\uD35F\uD361-\uD37B\uD37D-\uD397\uD399-\uD3B3\uD3B5-\uD3CF\uD3D1-\uD3EB\uD3ED-\uD407\uD409-\uD423\uD425-\uD43F\uD441-\uD45B\uD45D-\uD477\uD479-\uD493\uD495-\uD4AF\uD4B1-\uD4CB\uD4CD-\uD4E7\uD4E9-\uD503\uD505-\uD51F\uD521-\uD53B\uD53D-\uD557\uD559-\uD573\uD575-\uD58F\uD591-\uD5AB\uD5AD-\uD5C7\uD5C9-\uD5E3\uD5E5-\uD5FF\uD601-\uD61B\uD61D-\uD637\uD639-\uD653\uD655-\uD66F\uD671-\uD68B\uD68D-\uD6A7\uD6A9-\uD6C3\uD6C5-\uD6DF\uD6E1-\uD6FB\uD6FD-\uD717\uD719-\uD733\uD735-\uD74F\uD751-\uD76B\uD76D-\uD787\uD789-\uD7A3]$/,ud=/^(?:[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u2388\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2605\u2607-\u2612\u2614-\u2685\u2690-\u2705\u2708-\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763-\u2767\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC00-\uDCFF\uDD0D-\uDD0F\uDD2F\uDD6C-\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDAD-\uDDE5\uDE01-\uDE0F\uDE1A\uDE2F\uDE32-\uDE3A\uDE3C-\uDE3F\uDE49-\uDFFA]|\uD83D[\uDC00-\uDD3D\uDD46-\uDE4F\uDE80-\uDEFF\uDF74-\uDF7F\uDFD5-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE-\uDCFF\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDEFF]|\uD83F[\uDC00-\uDFFD])$/,uF=(u,e)=>{var r=t.Any;return -1!==u.search(ul)&&(r|=t.Extend),8205===e&&(r|=t.ZWJ),e>=127462&&e<=127487&&(r|=t.RI),-1!==u.search(uC)&&(r|=t.Prepend),-1!==u.search(uc)&&(r|=t.SpacingMark),-1!==u.search(uf)&&(r|=t.L),-1!==u.search(uB)&&(r|=t.V),-1!==u.search(uh)&&(r|=t.T),-1!==u.search(uA)&&(r|=t.LV),-1!==u.search(uv)&&(r|=t.LVT),-1!==u.search(ud)&&(r|=t.ExtPict),r},up=[[t.L,t.L|t.V|t.LV|t.LVT],[t.LV|t.V,t.V|t.T],[t.LVT|t.T,t.T],[t.Any,t.Extend|t.ZWJ],[t.Any,t.SpacingMark],[t.Prepend,t.Any],[t.ZWJ,t.ExtPict],[t.RI,t.RI]],uE=/(?:[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u2388\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2605\u2607-\u2612\u2614-\u2685\u2690-\u2705\u2708-\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763-\u2767\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC00-\uDCFF\uDD0D-\uDD0F\uDD2F\uDD6C-\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDAD-\uDDE5\uDE01-\uDE0F\uDE1A\uDE2F\uDE32-\uDE3A\uDE3C-\uDE3F\uDE49-\uDFFA]|\uD83D[\uDC00-\uDD3D\uDD46-\uDE4F\uDE80-\uDEFF\uDF74-\uDF7F\uDFD5-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE-\uDCFF\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDEFF]|\uD83F[\uDC00-\uDFFD])(?:[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09BE\u09C1-\u09C4\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3E\u0B3F\u0B41-\u0B44\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B82\u0BBE\u0BC0\u0BCD\u0BD7\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC2\u0CC6\u0CCC\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D3E\u0D41-\u0D44\u0D4D\u0D57\u0D62\u0D63\u0D81\u0DCA\u0DCF\u0DD2-\u0DD4\u0DD6\u0DDF\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u200C\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFF9E\uFF9F]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDEAB\uDEAC\uDEFD-\uDEFF\uDF46-\uDF50\uDF82-\uDF85]|\uD804[\uDC01\uDC38-\uDC46\uDC70\uDC73\uDC74\uDC7F-\uDC81\uDCB3-\uDCB6\uDCB9\uDCBA\uDCC2\uDD00-\uDD02\uDD27-\uDD2B\uDD2D-\uDD34\uDD73\uDD80\uDD81\uDDB6-\uDDBE\uDDC9-\uDDCC\uDDCF\uDE2F-\uDE31\uDE34\uDE36\uDE37\uDE3E\uDE41\uDEDF\uDEE3-\uDEEA\uDF00\uDF01\uDF3B\uDF3C\uDF3E\uDF40\uDF57\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC38-\uDC3F\uDC42-\uDC44\uDC46\uDC5E\uDCB0\uDCB3-\uDCB8\uDCBA\uDCBD\uDCBF\uDCC0\uDCC2\uDCC3\uDDAF\uDDB2-\uDDB5\uDDBC\uDDBD\uDDBF\uDDC0\uDDDC\uDDDD\uDE33-\uDE3A\uDE3D\uDE3F\uDE40\uDEAB\uDEAD\uDEB0-\uDEB5\uDEB7\uDF1D-\uDF1F\uDF22-\uDF25\uDF27-\uDF2B]|\uD806[\uDC2F-\uDC37\uDC39\uDC3A\uDD30\uDD3B\uDD3C\uDD3E\uDD43\uDDD4-\uDDD7\uDDDA\uDDDB\uDDE0\uDE01-\uDE0A\uDE33-\uDE38\uDE3B-\uDE3E\uDE47\uDE51-\uDE56\uDE59-\uDE5B\uDE8A-\uDE96\uDE98\uDE99]|\uD807[\uDC30-\uDC36\uDC38-\uDC3D\uDC3F\uDC92-\uDCA7\uDCAA-\uDCB0\uDCB2\uDCB3\uDCB5\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD90\uDD91\uDD95\uDD97\uDEF3\uDEF4\uDF00\uDF01\uDF36-\uDF3A\uDF40\uDF42]|\uD80D[\uDC40\uDC47-\uDC55]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF4F\uDF8F-\uDF92\uDFE4]|\uD82F[\uDC9D\uDC9E]|\uD833[\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65\uDD67-\uDD69\uDD6E-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC8F\uDD30-\uDD36\uDEAE\uDEEC-\uDEEF]|\uD839[\uDCEC-\uDCEF]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uD83C[\uDFFB-\uDFFF]|\uDB40[\uDC20-\uDC7F\uDD00-\uDDEF])*\u200D$/,ug=u=>-1!==u.search(uE),uy=/(?:\uD83C[\uDDE6-\uDDFF])+$/g,um=u=>{var e=u.match(uy);return null!==e&&e[0].length/2%2==1};function ub(u,e){var r=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);e&&(t=t.filter(function(e){return Object.getOwnPropertyDescriptor(u,e).enumerable})),r.push.apply(r,t)}return r}function uO(u){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ub(Object(r),!0).forEach(function(e){v(u,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(r)):ub(Object(r)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(r,e))})}return u}var uw=uO(uO(uO(uO({},{transform(u,e){var r=!1;switch(e.type){case"insert_node":var{path:t,node:n}=e;y(u,h.parent(t),u=>{var e=t[t.length-1];if(e>u.length)throw Error('Cannot apply an "insert_node" operation at path ['.concat(t,"] because the destination is past the end of the node."));return p(u,e,n)}),r=!0;break;case"insert_text":var{path:o,offset:a,text:i}=e;if(0===i.length)break;m(u,o,u=>{var e=u.text.slice(0,a),r=u.text.slice(a);return F(F({},u),{},{text:e+i+r})}),r=!0;break;case"merge_node":var{path:D}=e,s=D[D.length-1],l=h.previous(D),C=l[l.length-1];y(u,h.parent(D),u=>{var e,r=u[s],t=u[C];if(G.isText(r)&&G.isText(t))e=F(F({},t),{},{text:t.text+r.text});else if(G.isText(r)||G.isText(t))throw Error('Cannot apply a "merge_node" operation at path ['.concat(D,"] to nodes of different interfaces: ").concat(Z.stringify(r)," ").concat(Z.stringify(t)));else e=F(F({},t),{},{children:t.children.concat(r.children)});return E(u,C,2,e)}),r=!0;break;case"move_node":var{path:c,newPath:f}=e,B=c[c.length-1];if(h.isAncestor(c,f))throw Error("Cannot move a path [".concat(c,"] to new path [").concat(f,"] because the destination is inside itself."));var A=T.get(u,c);y(u,h.parent(c),u=>E(u,B,1));var v=h.transform(c,e),d=v[v.length-1];y(u,h.parent(v),u=>p(u,d,A)),r=!0;break;case"remove_node":var{path:b}=e,O=b[b.length-1];if(y(u,h.parent(b),u=>E(u,O,1)),u.selection){var w=F({},u.selection);for(var[P,x]of j.points(w)){var k=$.transform(P,e);if(null!=w&&null!=k)w[x]=k;else{var N=void 0,R=void 0;for(var[S,_]of T.texts(u))if(-1===h.compare(_,b))N=[S,_];else{R=[S,_];break}var q=!1;N&&R&&(q=!h.isSibling(N[1],b)&&(!!h.equals(R[1],b)||h.common(N[1],b).length<h.common(R[1],b).length)),N&&!q?w[x]={path:N[1],offset:N[0].text.length}:R?w[x]={path:R[1],offset:0}:w=null}}w&&j.equals(w,u.selection)||(u.selection=w)}break;case"remove_text":var{path:I,offset:z,text:V}=e;if(0===V.length)break;m(u,I,u=>{var e=u.text.slice(0,z),r=u.text.slice(z+V.length);return F(F({},u),{},{text:e+r})}),r=!0;break;case"set_node":var{path:M,properties:L,newProperties:W}=e;if(0===M.length)throw Error("Cannot set properties on the root node!");g(u,M,u=>{var e=F({},u);for(var r in W){if("children"===r||"text"===r)throw Error('Cannot set the "'.concat(r,'" property of nodes!'));var t=W[r];null==t?delete e[r]:e[r]=t}for(var n in L)W.hasOwnProperty(n)||delete e[n];return e});break;case"set_selection":var{newProperties:J}=e;if(null==J){u.selection=null;break}if(null==u.selection){if(!j.isRange(J))throw Error('Cannot apply an incomplete "set_selection" operation properties '.concat(Z.stringify(J)," when there is no current selection."));u.selection=F({},J);break}var H=F({},u.selection);for(var K in J){var Q=J[K];if(null==Q){if("anchor"===K||"focus"===K)throw Error('Cannot remove the "'.concat(K,'" selection property'));delete H[K]}else H[K]=Q}u.selection=H;break;case"split_node":var{path:Y,position:U,properties:X}=e,uu=Y[Y.length-1];if(0===Y.length)thro