diff --git a/plugins/cache-on-save/classes/EntryScopeGuard.php b/plugins/cache-on-save/classes/EntryScopeGuard.php index 7ce5cb8..28cf17a 100644 --- a/plugins/cache-on-save/classes/EntryScopeGuard.php +++ b/plugins/cache-on-save/classes/EntryScopeGuard.php @@ -97,19 +97,17 @@ class EntryScopeGuard } /** - * Resolve a folder segment to the page that is a DIRECT child of the active - * trip's dailies container, or null when the segment is unsafe, no active trip - * is set, the page does not exist, or its parent is not the active dailies. + * Resolve a safe segment to the page that is a DIRECT child of $parentRoute, + * or null when the segment is unsafe, the page does not exist, or its parent + * is not exactly $parentRoute. Resolving via $pages->find() + a parent-route + * assertion (never raw path concatenation) is what closes the traversal hole; + * both public resolvers below share this one body so they cannot drift. */ - public static function resolveActiveDailyChild(Grav $grav, string $segment): ?PageInterface + private static function resolveChildOf(Grav $grav, string $parentRoute, string $segment): ?PageInterface { if (!self::isSafeSegment($segment)) { return null; } - $dailies = self::dailiesRoute($grav); - if ($dailies === null) { - return null; - } $pages = $grav['pages']; // In the API request context the page tree is lazily disabled; enable it // so find() can resolve (mirrors the api plugin's own resolvePageByRoute). @@ -117,12 +115,47 @@ class EntryScopeGuard if (method_exists($pages, 'enablePages')) { $pages->enablePages(); } - $page = $pages->find($dailies . '/' . $segment); + $page = $pages->find($parentRoute . '/' . $segment); if ($page === null) { return null; } $parent = $page->parent(); - if ($parent === null || $parent->route() !== $dailies) { + if ($parent === null || $parent->route() !== $parentRoute) { + return null; + } + return $page; + } + + /** + * Resolve a folder segment to the page that is a DIRECT child of the active + * trip's dailies container, or null when the segment is unsafe, no active trip + * is set, the page does not exist, or its parent is not the active dailies. + */ + public static function resolveActiveDailyChild(Grav $grav, string $segment): ?PageInterface + { + $dailies = self::dailiesRoute($grav); + if ($dailies === null) { + return null; + } + return self::resolveChildOf($grav, $dailies, $segment); + } + + /** + * Resolve a slug to the trip page that is a DIRECT child of /trips, or null + * when the segment is unsafe, the page does not exist, or its parent is not + * /trips. The trip-scoped analogue of resolveActiveDailyChild, used by the + * publish/unpublish route (KTD4). + * + * Unlike the front-end listing collections, this does NOT filter on published + * state: find() must return drafts so the owner can republish an unpublished + * trip from the listing (R7). + */ + public static function resolveTripChild(Grav $grav, string $slug): ?PageInterface + { + $page = self::resolveChildOf($grav, '/trips', $slug); + // Only actual trip pages are publishable — a non-trip page ever added as a + // direct child of /trips must not be toggled through this endpoint. + if ($page === null || $page->template() !== 'trip') { return null; } return $page; diff --git a/plugins/entry-actions/classes/EntryActionsApiController.php b/plugins/entry-actions/classes/EntryActionsApiController.php index e97884a..f9d536b 100644 --- a/plugins/entry-actions/classes/EntryActionsApiController.php +++ b/plugins/entry-actions/classes/EntryActionsApiController.php @@ -141,4 +141,98 @@ class EntryActionsApiController extends AbstractApiController return ApiResponse::noContent(); } + + /** + * POST /api/v1/trip/{slug}/publish + * + * Body: { "published": true|false } — sets the trip's published state and + * persists it to trip.md frontmatter, then invalidates the page-tree cache so + * the /trips listing, nav and home render reflect the change on the next load. + * Owner-only, but (unlike deleteEntry) NOT active-trip scoped: the owner + * publishes/unpublishes ANY trip from the listing. 401 (anon), 403 (non-owner), + * 400 (bad slug / non-boolean body), 404 (slug is not a direct child of /trips). + * + * CSRF boundary: this is a session-cookie write with credentials. Its cross- + * origin protection is the required `Content-Type: application/json`, which + * (with the api plugin's CORS `origins: []`, i.e. same-origin only) forces a + * CORS preflight that a cross-site page cannot satisfy — so a forged request + * from another origin is rejected before it reaches this handler. The strict + * is_bool guard below backs that up (a form-encoded forgery decodes to no key). + */ + public function setTripPublished(ServerRequestInterface $request): ResponseInterface + { + // Authenticated OWNER only (KTD8). getUser() throws 401 for anonymous. + $user = $this->getUser($request); + // Enforce the API-key scope cap (GHSA-x7hm) — see deleteEntry above. + $this->requirePermission($request, 'api.pages.write'); + if (!EntryScopeGuard::isOwnerUser($this->grav, $user)) { + throw new ForbiddenException('Only the site owner can publish trips.'); + } + + $slug = $this->getRouteParam($request, 'slug'); + if (!is_string($slug) || !EntryScopeGuard::isSafeSegment($slug)) { + throw new ApiException(400, 'Bad Request', 'Invalid trip slug.'); + } + + // Resolve via find() + parent-route assertion; drafts resolve too so the + // owner can republish an unpublished trip (R7, KTD4). + $page = EntryScopeGuard::resolveTripChild($this->grav, $slug); + if ($page === null) { + throw new NotFoundException('Trip not found.'); + } + + // Strict boolean only — never (bool)-cast (KTD2). A cast would coerce + // "false"/0/""/a missing key into a valid boolean and silently mis-set + // the flag, contradicting R5. + $body = $this->getRequestBody($request); + if (!is_array($body) || !array_key_exists('published', $body) || !is_bool($body['published'])) { + throw new ApiException(400, 'Bad Request', 'Body must include a boolean "published".'); + } + $published = $body['published']; + + // Persist by mutating the page HEADER before save() (KTD1): in Grav 2.0 + // $page->published($v) sets only the in-memory property, while save() + // serializes from the header object and the flag is read one-way from the + // header at init. Mirror cache-on-save's header-mutation pattern. + $header = $page->header(); + $header->published = $published; + $page->save(); + + // A published-flag change rewrites trip.md IN PLACE — the trip folder's + // structure is unchanged, so the pages-index cache id (md5 of the folder + // checksum under cache.check.method: folder) does NOT change (KTD3). This + // differs from deleteEntry, where the removed folder IS a structure change + // that bumps the id, so a fresh id misses cache and rebuilds. With the id + // unchanged, the stale index survives — and because the cache driver is + // APCu (driver: auto), it lives in the web server's shared memory, which a + // CLI `bin/grav clearcache` cannot reach at all. So: flush the runtime + // store (deleteAll → APCu flushAll) AND apcu_clear_cache() directly to be + // certain, clear the compiled files, and reset the in-memory tree so the + // next request rebuilds from disk and re-reads the published flag. + // save() above is already persisted to disk. If any invalidation call + // throws, do NOT let it bubble to a plain 500 (which reads to the owner as + // "nothing happened") and skip the audit line: the on-disk flag DID change. + // Log a loud reconciliation warning instead so an operator knows to clear + // cache manually, then still report success. + try { + $this->grav['cache']->deleteAll(); + if (function_exists('apcu_clear_cache')) { + apcu_clear_cache(); + } + $this->grav['pages']->reset(); + $this->grav['cache']->clearCache('standard'); + } catch (\Throwable $e) { + $this->grav['log']->error(sprintf( + 'entry-actions: trip "%s" published=%s SAVED to disk but cache invalidation failed (%s) — clear cache manually', + $slug, + $published ? 'true' : 'false', + $e->getMessage() + )); + } + // Audit trail: publish state is owner-only and changes site-wide + // visibility — record who flipped which trip to what. + $this->grav['log']->info(sprintf('entry-actions: owner "%s" set trip "%s" published=%s', $user->username, $slug, $published ? 'true' : 'false')); + + return ApiResponse::noContent(); + } } diff --git a/plugins/entry-actions/entry-actions.php b/plugins/entry-actions/entry-actions.php index 0f3c9eb..20f20eb 100644 --- a/plugins/entry-actions/entry-actions.php +++ b/plugins/entry-actions/entry-actions.php @@ -11,6 +11,7 @@ use RocketTheme\Toolbox\Event\Event; * Routes: * - DELETE /api/v1/entry/{slug} — delete a journal entry folder * - POST /api/v1/entry/{slug}/photos/order — reorder an entry's photos + * - POST /api/v1/trip/{slug}/publish — publish/unpublish a trip * * The stock DELETE /api/v1/pages only checks write-permission (no trip * scope, and any admin passes), which violates R6; and no stock endpoint can @@ -65,5 +66,10 @@ class EntryActionsPlugin extends Plugin // Nested-static-after-param, same shape as the DELETE above — it only // registers once the API route-map cache is rebuilt (deploy must clear cache). $routes->post('/entry/{slug}/photos/order', [EntryActions\EntryActionsApiController::class, 'reorderPhotos']); + // Publish/unpublish a trip from the /trips listing → mutate trip.md + // `published` and invalidate the page-tree index. Owner-only, any trip + // (not active-scoped). Same registration caveat as above: it only takes + // effect once the API route-map cache is rebuilt (deploy must clear cache). + $routes->post('/trip/{slug}/publish', [EntryActions\EntryActionsApiController::class, 'setTripPublished']); } } diff --git a/themes/intotheeast/css/style.css b/themes/intotheeast/css/style.css index a329d8d..f8b6d55 100644 --- a/themes/intotheeast/css/style.css +++ b/themes/intotheeast/css/style.css @@ -289,8 +289,8 @@ body::after { font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; - color: #E0A458; /* warm amber — draft/unpublished */ - border: 1px solid #E0A458; + color: var(--color-draft-accent); /* warm amber — draft/unpublished */ + border: 1px solid var(--color-draft-accent); border-radius: var(--radius-sm); padding: 0.1em 0.5em; line-height: 1.5; @@ -1289,6 +1289,143 @@ body::after { .trip-card-dates { font-size: var(--text-sm); color: var(--color-ink-2); } .trip-card-counts { font-size: var(--text-sm); color: var(--color-ink-muted); } +/* ── Owner publish/unpublish toggle (U3) ─────────────────────────────────────── */ +/* The card is wrapped in a position:relative container so this overlay can sit + top-right over the cover as a sibling of the navigating (KTD6). The wrapper + also guarantees an anchor even for a coverless draft (a min-height header strip + on the card itself), so the toggle never collapses to nothing. */ +.trip-card-wrap { + position: relative; +} + +.trip-publish-overlay { + position: absolute; + top: var(--space-3); + right: var(--space-3); + z-index: 2; /* above the card */ + display: flex; + align-items: center; + gap: var(--space-2); +} + +/* Solid pill so both indicators stay legible over an arbitrary cover photo. */ +.trip-draft-badge { + font-family: var(--font-ui); + font-size: 0.6875rem; + font-weight: 700; + letter-spacing: 0.09em; + text-transform: uppercase; + color: var(--color-draft-accent); /* warm amber — matches .journal-draft-badge */ + background: var(--color-canvas); + border: 1px solid var(--color-draft-accent); + border-radius: var(--radius-sm); + padding: 0.15em 0.5em; + line-height: 1.5; + white-space: nowrap; + box-shadow: var(--shadow-sm); +} +.trip-draft-badge[hidden] { display: none; } + +/* The switch: a solid chip backing keeps the track/knob readable on any cover. + ≥44px touch target via padding; the visible track is smaller and centred. */ +.trip-publish-toggle { + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 44px; + min-height: 44px; + padding: 0 var(--space-2); + margin: 0; + border: 1px solid var(--color-border); + border-radius: var(--radius-full); + background: var(--color-canvas); + box-shadow: var(--shadow-sm); + cursor: pointer; + -webkit-appearance: none; + appearance: none; +} + +.trip-publish-track { + position: relative; + display: block; + width: 40px; + height: 22px; + border-radius: var(--radius-full); + background: var(--color-ink-muted); /* off = muted */ + transition: background 0.15s ease; +} +.trip-publish-knob { + position: absolute; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 50%; + background: var(--color-ink); + transition: transform 0.15s ease; +} + +/* on = teal track, knob slid right */ +.trip-publish-toggle[aria-checked="true"] .trip-publish-track { + background: var(--color-accent); +} +.trip-publish-toggle[aria-checked="true"] .trip-publish-knob { + transform: translateX(18px); + background: var(--color-accent-on); +} + +/* Pending (R13): dimmed + wait cursor while a toggle is in flight. */ +.trip-publish-toggle[aria-busy="true"] { + opacity: 0.55; + cursor: wait; +} + +/* Keyboard focus ring that reads over a busy cover photo (white ring + dark halo). */ +.trip-publish-toggle:focus-visible { + outline: 2px solid var(--color-accent-on); + outline-offset: 2px; + box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.45); +} + +/* Visible page-level failure toast (R15). Distinct from feed-actions.js's + sr-only #feed-actions-live region: the trip card has no inline message slot, + so a sighted owner needs a real, visible notice. trip-publish.js creates and + populates the element; this only styles it. */ +.trip-publish-toast { + position: fixed; + top: var(--space-4); + left: 50%; + transform: translateX(-50%); + z-index: 1000; + display: flex; + align-items: center; + gap: var(--space-3); + max-width: calc(100vw - var(--space-8)); + padding: var(--space-3) var(--space-4); + font-family: var(--font-ui); + font-size: var(--text-sm); + color: var(--color-ink); + background: var(--color-canvas); + border: 1px solid var(--color-error); + border-radius: var(--radius-md); + box-shadow: var(--shadow-lg); +} +.trip-publish-toast[hidden] { display: none; } +.trip-publish-toast__close { + flex-shrink: 0; + min-width: 32px; + min-height: 32px; + padding: 0; + font-size: var(--text-md); + line-height: 1; + color: var(--color-ink-muted); + background: transparent; + border: none; + border-radius: var(--radius-sm); + cursor: pointer; +} +.trip-publish-toast__close:hover { color: var(--color-ink); } + /* ── Trip page sidebar ───────────────────────────────────────────────────────── */ .trip-counts { diff --git a/themes/intotheeast/css/tokens.css b/themes/intotheeast/css/tokens.css index 8100b46..9899d8a 100644 --- a/themes/intotheeast/css/tokens.css +++ b/themes/intotheeast/css/tokens.css @@ -14,6 +14,7 @@ --color-surface-raised: #2A2720; /* elevated surfaces: tooltips, hover */ --color-ink-inverse: #17171A; /* text on accent-coloured buttons */ --color-error: #c0392b; /* validation errors, form error status */ + --color-draft-accent: #E0A458; /* warm amber — draft/unpublished badges */ /* ── Glass overlays (paper colour at opacity, for story components) ── */ --color-paper-glass-low: color-mix(in srgb, var(--color-paper) 8%, transparent); diff --git a/themes/intotheeast/js/post/post-form.js b/themes/intotheeast/js/post/post-form.js index 80b226a..f83a178 100644 --- a/themes/intotheeast/js/post/post-form.js +++ b/themes/intotheeast/js/post/post-form.js @@ -1,68 +1,68 @@ -import{a as Ku,b as lt,c as Gh}from"./chunk-ZWRDP37E.js";var Et=lt((rl,nl)=>{(function(o,l){typeof rl=="object"&&typeof nl<"u"?nl.exports=l():typeof define=="function"&&define.amd?define(l):(o=o||self,o.CodeMirror=l())})(rl,function(){"use strict";var o=navigator.userAgent,l=navigator.platform,s=/gecko\/\d/i.test(o),a=/MSIE \d/.test(o),f=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(o),p=/Edge\/(\d+)/.exec(o),c=a||f||p,h=c&&(a?document.documentMode||6:+(p||f)[1]),b=!p&&/WebKit\//.test(o),y=b&&/Qt\/\d+\.\d+/.test(o),x=!p&&/Chrome\/(\d+)/.exec(o),C=x&&+x[1],E=/Opera\//.test(o),F=/Apple Computer/.test(navigator.vendor),_=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(o),L=/PhantomJS/.test(o),T=F&&(/Mobile\/\w+/.test(o)||navigator.maxTouchPoints>2),O=/Android/.test(o),N=T||O||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(o),P=T||/Mac/.test(l),I=/\bCrOS\b/.test(o),W=/win/i.test(l),j=E&&o.match(/Version\/(\d*\.\d*)/);j&&(j=Number(j[1])),j&&j>=15&&(E=!1,b=!0);var X=P&&(y||E&&(j==null||j<12.11)),be=s||c&&h>=9;function U(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var ae=function(e,t){var n=e.className,r=U(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function ne(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function se(e,t){return ne(e).appendChild(t)}function S(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var u=0;u=t)return d+(t-u);d+=g-u,d+=n-d%n,u=g+1}}var ct=function(){this.id=null,this.f=null,this.time=0,this.handler=$e(this.onTimeout,this)};ct.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},ct.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n=t)return r+Math.min(d,t-i);if(i+=u-r,i+=n-i%n,r=u+1,i>=t)return r}}var zt=[""];function pr(e){for(;zt.length<=e;)zt.push(Ce(zt)+" ");return zt[e]}function Ce(e){return e[e.length-1]}function Ht(e,t){for(var n=[],r=0;r"\x80"&&(e.toUpperCase()!=e.toLowerCase()||Bc.test(e))}function wi(e,t){return t?t.source.indexOf("\\w")>-1&&Ko(e)?!0:t.test(e):Ko(e)}function Wl(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Nc=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Yo(e){return e.charCodeAt(0)>=768&&Nc.test(e)}function ql(e,t,n){for(;(n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,u=r<0?Math.ceil(i):Math.floor(i);if(u==t)return e(u)?t:n;e(u)?n=u:t=u+r}}function Oc(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,u=0;ut||t==n&&d.to==t)&&(r(Math.max(d.from,t),Math.min(d.to,n),d.level==1?"rtl":"ltr",u),i=!0)}i||r(t,n,"ltr")}var Mn=null;function _n(e,t,n){var r;Mn=null;for(var i=0;it)return i;u.to==t&&(u.from!=u.to&&n=="before"?r=i:Mn=i),u.from==t&&(u.from!=u.to&&n!="before"?r=i:Mn=i)}return r??Mn}var Ic=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(m){return m<=247?e.charAt(m):1424<=m&&m<=1524?"R":1536<=m&&m<=1785?t.charAt(m-1536):1774<=m&&m<=2220?"r":8192<=m&&m<=8203?"w":m==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,u=/[LRr]/,d=/[Lb1n]/,g=/[1n]/;function v(m,w,k){this.level=m,this.from=w,this.to=k}return function(m,w){var k=w=="ltr"?"L":"R";if(m.length==0||w=="ltr"&&!r.test(m))return!1;for(var B=m.length,M=[],H=0;H-1&&(r[t]=i.slice(0,u).concat(i.slice(u+1)))}}}function Ue(e,t){var n=Zo(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function Qr(e){e.prototype.on=function(t,n){fe(this,t,n)},e.prototype.off=function(t,n){Lt(this,t,n)}}function mt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Gl(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Qo(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function Bn(e){mt(e),Gl(e)}function Jo(e){return e.target||e.srcElement}function Xl(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),P&&e.ctrlKey&&t==1&&(t=3),t}var Pc=function(){if(c&&h<9)return!1;var e=S("div");return"draggable"in e||"dragDrop"in e}(),$o;function zc(e){if($o==null){var t=S("span","\u200B");se(e,S("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&($o=t.offsetWidth<=1&&t.offsetHeight>2&&!(c&&h<8))}var n=$o?S("span","\u200B"):S("span","\xA0",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var Vo;function Hc(e){if(Vo!=null)return Vo;var t=se(e,document.createTextNode("A\u062EA")),n=z(t,0,1).getBoundingClientRect(),r=z(t,1,2).getBoundingClientRect();return ne(e),!n||n.left==n.right?!1:Vo=r.right-n.right<3}var ea=` +import{a as Zu,b as at,c as Kh}from"./chunk-ZWRDP37E.js";var Et=at((nl,il)=>{(function(o,l){typeof nl=="object"&&typeof il<"u"?il.exports=l():typeof define=="function"&&define.amd?define(l):(o=o||self,o.CodeMirror=l())})(nl,function(){"use strict";var o=navigator.userAgent,l=navigator.platform,s=/gecko\/\d/i.test(o),a=/MSIE \d/.test(o),f=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(o),p=/Edge\/(\d+)/.exec(o),c=a||f||p,d=c&&(a?document.documentMode||6:+(p||f)[1]),m=!p&&/WebKit\//.test(o),y=m&&/Qt\/\d+\.\d+/.test(o),x=!p&&/Chrome\/(\d+)/.exec(o),C=x&&+x[1],S=/Opera\//.test(o),F=/Apple Computer/.test(navigator.vendor),_=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(o),L=/PhantomJS/.test(o),T=F&&(/Mobile\/\w+/.test(o)||navigator.maxTouchPoints>2),O=/Android/.test(o),N=T||O||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(o),I=T||/Mac/.test(l),P=/\bCrOS\b/.test(o),q=/win/i.test(l),G=S&&o.match(/Version\/(\d*\.\d*)/);G&&(G=Number(G[1])),G&&G>=15&&(S=!1,m=!0);var K=I&&(y||S&&(G==null||G<12.11)),me=s||c&&d>=9;function U(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var le=function(e,t){var n=e.className,r=U(t).exec(n);if(r){var i=n.slice(r.index+r[0].length);e.className=n.slice(0,r.index)+(i?r[1]+i:"")}};function j(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function ee(e,t){return j(e).appendChild(t)}function E(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),typeof t=="string")i.appendChild(document.createTextNode(t));else if(t)for(var u=0;u=t)return h+(t-u);h+=g-u,h+=n-h%n,u=g+1}}var ft=function(){this.id=null,this.f=null,this.time=0,this.handler=gt(this.onTimeout,this)};ft.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},ft.prototype.set=function(e,t){this.f=t;var n=+new Date+e;(!this.id||n=t)return r+Math.min(h,t-i);if(i+=u-r,i+=n-i%n,r=u+1,i>=t)return r}}var zt=[""];function pr(e){for(;zt.length<=e;)zt.push(Ce(zt)+" ");return zt[e]}function Ce(e){return e[e.length-1]}function Ht(e,t){for(var n=[],r=0;r"\x80"&&(e.toUpperCase()!=e.toLowerCase()||Oc.test(e))}function Ci(e,t){return t?t.source.indexOf("\\w")>-1&&Yo(e)?!0:t.test(e):Yo(e)}function Ul(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var Ic=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function Zo(e){return e.charCodeAt(0)>=768&&Ic.test(e)}function jl(e,t,n){for(;(n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,u=r<0?Math.ceil(i):Math.floor(i);if(u==t)return e(u)?t:n;e(u)?n=u:t=u+r}}function Pc(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,u=0;ut||t==n&&h.to==t)&&(r(Math.max(h.from,t),Math.min(h.to,n),h.level==1?"rtl":"ltr",u),i=!0)}i||r(t,n,"ltr")}var Mn=null;function _n(e,t,n){var r;Mn=null;for(var i=0;it)return i;u.to==t&&(u.from!=u.to&&n=="before"?r=i:Mn=i),u.from==t&&(u.from!=u.to&&n!="before"?r=i:Mn=i)}return r??Mn}var zc=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(b){return b<=247?e.charAt(b):1424<=b&&b<=1524?"R":1536<=b&&b<=1785?t.charAt(b-1536):1774<=b&&b<=2220?"r":8192<=b&&b<=8203?"w":b==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,u=/[LRr]/,h=/[Lb1n]/,g=/[1n]/;function v(b,w,k){this.level=b,this.from=w,this.to=k}return function(b,w){var k=w=="ltr"?"L":"R";if(b.length==0||w=="ltr"&&!r.test(b))return!1;for(var B=b.length,M=[],z=0;z-1&&(r[t]=i.slice(0,u).concat(i.slice(u+1)))}}}function je(e,t){var n=Qo(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function Qr(e){e.prototype.on=function(t,n){ue(this,t,n)},e.prototype.off=function(t,n){Lt(this,t,n)}}function mt(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Kl(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Jo(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function Bn(e){mt(e),Kl(e)}function $o(e){return e.target||e.srcElement}function Yl(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),I&&e.ctrlKey&&t==1&&(t=3),t}var Hc=function(){if(c&&d<9)return!1;var e=E("div");return"draggable"in e||"dragDrop"in e}(),Vo;function Rc(e){if(Vo==null){var t=E("span","\u200B");ee(e,E("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(Vo=t.offsetWidth<=1&&t.offsetHeight>2&&!(c&&d<8))}var n=Vo?E("span","\u200B"):E("span","\xA0",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}var ea;function Wc(e){if(ea!=null)return ea;var t=ee(e,document.createTextNode("A\u062EA")),n=W(t,0,1).getBoundingClientRect(),r=W(t,1,2).getBoundingClientRect();return j(e),!n||n.left==n.right?!1:ea=r.right-n.right<3}var ta=` b`.split(/\n/).length!=3?function(e){for(var t=0,n=[],r=e.length;t<=r;){var i=e.indexOf(` -`,t);i==-1&&(i=e.length);var u=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),d=u.indexOf("\r");d!=-1?(n.push(u.slice(0,d)),t+=d+1):(n.push(u),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},Rc=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Wc=function(){var e=S("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")}(),ta=null;function qc(e){if(ta!=null)return ta;var t=se(e,S("span","x")),n=t.getBoundingClientRect(),r=z(t,0,1).getBoundingClientRect();return ta=Math.abs(n.left-r.left)>1}var ra={},Jr={};function Uc(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),ra[e]=t}function jc(e,t){Jr[e]=t}function Ci(e){if(typeof e=="string"&&Jr.hasOwnProperty(e))e=Jr[e];else if(e&&typeof e.name=="string"&&Jr.hasOwnProperty(e.name)){var t=Jr[e.name];typeof t=="string"&&(t={name:t}),e=Rl(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ci("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ci("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function na(e,t){t=Ci(t);var n=ra[t.name];if(!n)return na(e,"text/plain");var r=n(e,t);if($r.hasOwnProperty(t.name)){var i=$r[t.name];for(var u in i)i.hasOwnProperty(u)&&(r.hasOwnProperty(u)&&(r["_"+u]=r[u]),r[u]=i[u])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var d in t.modeProps)r[d]=t.modeProps[d];return r}var $r={};function Gc(e,t){var n=$r.hasOwnProperty(e)?$r[e]:$r[e]={};Tt(t,n)}function Lr(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function ia(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Kl(e,t,n){return e.startState?e.startState(t,n):!0}var je=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};je.prototype.eol=function(){return this.pos>=this.string.length},je.prototype.sol=function(){return this.pos==this.lineStart},je.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},je.prototype.next=function(){if(this.post},je.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},je.prototype.skipToEnd=function(){this.pos=this.string.length},je.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},je.prototype.backUp=function(e){this.pos-=e},je.prototype.column=function(){return this.lastColumnPos0?null:(u&&t!==!1&&(this.pos+=u[0].length),u)}},je.prototype.current=function(){return this.string.slice(this.start,this.pos)},je.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},je.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},je.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function ie(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],u=i.chunkSize();if(t=e.first&&tn?G(n,ie(e,n).text.length):Xc(t,ie(e,t.line).text.length)}function Xc(e,t){var n=e.ch;return n==null||n>t?G(e.line,t):n<0?G(e.line,0):e}function Zl(e,t){for(var n=[],r=0;rthis.maxLookAhead&&(this.maxLookAhead=e),t},Zt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Zt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Zt.fromSaved=function(e,t,n){return t instanceof Ei?new Zt(e,Lr(e.mode,t.state),n,t.lookAhead):new Zt(e,Lr(e.mode,t),n)},Zt.prototype.save=function(e){var t=e!==!1?Lr(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Ei(t,this.maxLookAhead):t};function Ql(e,t,n,r){var i=[e.state.modeGen],u={};rs(e,t.text,e.doc.mode,n,function(m,w){return i.push(m,w)},u,r);for(var d=n.state,g=function(m){n.baseTokens=i;var w=e.state.overlays[m],k=1,B=0;n.state=!0,rs(e,t.text,w.mode,n,function(M,H){for(var q=k;BM&&i.splice(k,1,M,i[k+1],Y),k+=2,B=Math.min(M,Y)}if(H)if(w.opaque)i.splice(q,k-q,M,"overlay "+H),k=q+2;else for(;qe.options.maxHighlightLength&&Lr(e.doc.mode,r.state),u=Ql(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=u.styles,u.classes?t.styleClasses=u.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function On(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Zt(r,!0,t);var u=Kc(e,t,n),d=u>r.first&&ie(r,u-1).stateAfter,g=d?Zt.fromSaved(r,d,u):new Zt(r,Kl(r.mode),u);return r.iter(u,t,function(v){ua(e,v.text,g);var m=g.line;v.stateAfter=m==t-1||m%5==0||m>=i.viewFrom&&mt.start)return u}throw new Error("Mode "+e.name+" failed to advance stream.")}var Vl=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function es(e,t,n,r){var i=e.doc,u=i.mode,d;t=me(i,t);var g=ie(i,t.line),v=On(e,t.line,n),m=new je(g.text,e.options.tabSize,v),w;for(r&&(w=[]);(r||m.pose.options.maxHighlightLength?(g=!1,d&&ua(e,t,r,w.pos),w.pos=t.length,k=null):k=ts(fa(n,w,r.state,B),u),B){var M=B[0].name;M&&(k="m-"+(k?M+" "+k:M))}if(!g||m!=k){for(;vd;--g){if(g<=u.first)return u.first;var v=ie(u,g-1),m=v.stateAfter;if(m&&(!n||g+(m instanceof Ei?m.lookAhead:0)<=u.modeFrontier))return g;var w=Ke(v.text,null,e.options.tabSize);(i==null||r>w)&&(i=g-1,r=w)}return i}function Yc(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=ie(e,r).stateAfter;if(i&&(!(i instanceof Ei)||r+i.lookAhead=t:u.to>t);(r||(r=[])).push(new Ai(d,u.from,v?null:u.to))}}return r}function ed(e,t,n){var r;if(e)for(var i=0;i=t:u.to>t);if(g||u.from==t&&d.type=="bookmark"&&(!n||u.marker.insertLeft)){var v=u.from==null||(d.inclusiveLeft?u.from<=t:u.from0&&g)for(var te=0;te0)){var w=[v,1],k=ve(m.from,g.from),B=ve(m.to,g.to);(k<0||!d.inclusiveLeft&&!k)&&w.push({from:m.from,to:g.from}),(B>0||!d.inclusiveRight&&!B)&&w.push({from:g.to,to:m.to}),i.splice.apply(i,w),v+=w.length-3}}return i}function os(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!r||da(r,u.marker)<0)&&(r=u.marker)}return r}function us(e,t,n,r,i){var u=ie(e,t),d=rr&&u.markedSpans;if(d)for(var g=0;g=0&&k<=0||w<=0&&k>=0)&&(w<=0&&(v.marker.inclusiveRight&&i.inclusiveLeft?ve(m.to,n)>=0:ve(m.to,n)>0)||w>=0&&(v.marker.inclusiveRight&&i.inclusiveLeft?ve(m.from,r)<=0:ve(m.from,r)<0)))return!0}}}function Rt(e){for(var t;t=ss(e);)e=t.find(-1,!0).line;return e}function nd(e){for(var t;t=Li(e);)e=t.find(1,!0).line;return e}function id(e){for(var t,n;t=Li(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function ha(e,t){var n=ie(e,t),r=Rt(n);return n==r?t:Ae(r)}function fs(e,t){if(t>e.lastLine())return t;var n=ie(e,t),r;if(!vr(e,n))return t;for(;r=Li(n);)n=r.find(1,!0).line;return Ae(n)+1}function vr(e,t){var n=rr&&t.markedSpans;if(n){for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Vr=function(e,t,n){this.text=e,as(this,t),this.height=n?n(this):1};Vr.prototype.lineNo=function(){return Ae(this)},Qr(Vr);function od(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),os(e),as(e,n);var i=r?r(e):1;i!=e.height&&Yt(e,i)}function ad(e){e.parent=null,os(e)}var ld={},sd={};function cs(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?sd:ld;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function ds(e,t){var n=R("span",null,null,b?"padding-right: .1px":null),r={pre:R("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var u=i?t.rest[i-1]:t.line,d=void 0;r.pos=0,r.addToken=fd,Hc(e.display.measure)&&(d=tr(u,e.doc.direction))&&(r.addToken=dd(r.addToken,d)),r.map=[];var g=t!=e.display.externalMeasured&&Ae(u);hd(u,r,Jl(e,u,g)),u.styleClasses&&(u.styleClasses.bgClass&&(r.bgClass=ot(u.styleClasses.bgClass,r.bgClass||"")),u.styleClasses.textClass&&(r.textClass=ot(u.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(zc(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(b){var v=r.content.lastChild;(/\bcm-tab\b/.test(v.className)||v.querySelector&&v.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return Ue(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=ot(r.pre.className,r.textClass||"")),r}function ud(e){var t=S("span","\u2022","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function fd(e,t,n,r,i,u,d){if(t){var g=e.splitSpaces?cd(t,e.trailingSpace):t,v=e.cm.state.specialChars,m=!1,w;if(!v.test(t))e.col+=t.length,w=document.createTextNode(g),e.map.push(e.pos,e.pos+t.length,w),c&&h<9&&(m=!0),e.pos+=t.length;else{w=document.createDocumentFragment();for(var k=0;;){v.lastIndex=k;var B=v.exec(t),M=B?B.index-k:t.length-k;if(M){var H=document.createTextNode(g.slice(k,k+M));c&&h<9?w.appendChild(S("span",[H])):w.appendChild(H),e.map.push(e.pos,e.pos+M,H),e.col+=M,e.pos+=M}if(!B)break;k+=M+1;var q=void 0;if(B[0]==" "){var Y=e.cm.options.tabSize,Z=Y-e.col%Y;q=w.appendChild(S("span",pr(Z),"cm-tab")),q.setAttribute("role","presentation"),q.setAttribute("cm-text"," "),e.col+=Z}else B[0]=="\r"||B[0]==` -`?(q=w.appendChild(S("span",B[0]=="\r"?"\u240D":"\u2424","cm-invalidchar")),q.setAttribute("cm-text",B[0]),e.col+=1):(q=e.cm.options.specialCharPlaceholder(B[0]),q.setAttribute("cm-text",B[0]),c&&h<9?w.appendChild(S("span",[q])):w.appendChild(q),e.col+=1);e.map.push(e.pos,e.pos+1,q),e.pos++}}if(e.trailingSpace=g.charCodeAt(t.length-1)==32,n||r||i||m||u||d){var $=n||"";r&&($+=r),i&&($+=i);var Q=S("span",[w],$,u);if(d)for(var te in d)d.hasOwnProperty(te)&&te!="style"&&te!="class"&&Q.setAttribute(te,d[te]);return e.content.appendChild(Q)}e.content.appendChild(w)}}function cd(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;im&&k.from<=m));B++);if(k.to>=w)return e(n,r,i,u,d,g,v);e(n,r.slice(0,k.to-m),i,u,null,g,v),u=null,r=r.slice(k.to-m),m=k.to}}}function hs(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function hd(e,t,n){var r=e.markedSpans,i=e.text,u=0;if(!r){for(var d=1;dv||xe.collapsed&&oe.to==v&&oe.from==v)){if(oe.to!=null&&oe.to!=v&&M>oe.to&&(M=oe.to,q=""),xe.className&&(H+=" "+xe.className),xe.css&&(B=(B?B+";":"")+xe.css),xe.startStyle&&oe.from==v&&(Y+=" "+xe.startStyle),xe.endStyle&&oe.to==M&&(te||(te=[])).push(xe.endStyle,oe.to),xe.title&&(($||($={})).title=xe.title),xe.attributes)for(var Te in xe.attributes)($||($={}))[Te]=xe.attributes[Te];xe.collapsed&&(!Z||da(Z.marker,xe)<0)&&(Z=oe)}else oe.from>v&&M>oe.from&&(M=oe.from)}if(te)for(var nt=0;nt=g)break;for(var St=Math.min(g,M);;){if(w){var xt=v+w.length;if(!Z){var Ge=xt>St?w.slice(0,St-v):w;t.addToken(t,Ge,k?k+H:H,Y,v+Ge.length==M?q:"",B,$)}if(xt>=St){w=w.slice(St-v),v=St;break}v=xt,Y=""}w=i.slice(u,u=n[m++]),k=cs(n[m++],t.cm.options)}}}function ps(e,t,n){this.line=t,this.rest=id(t),this.size=this.rest?Ae(Ce(this.rest))-n+1:1,this.node=this.text=null,this.hidden=vr(e,t)}function _i(e,t,n){for(var r=[],i,u=t;u2&&u.push((v.bottom+m.top)/2-n.top)}}u.push(n.bottom-n.top)}}function Ds(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;rn)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function kd(e,t){t=Rt(t);var n=Ae(t),r=e.display.externalMeasured=new ps(e.doc,t,n);r.lineN=n;var i=r.built=ds(e,r);return r.text=i.pre,se(e.display.lineMeasure,i.pre),r}function ws(e,t,n,r){return Jt(e,tn(e,t),n,r)}function ya(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(u=v-g,i=u-1,t>=v&&(d="right")),i!=null){if(r=e[m+2],g==v&&n==(r.insertLeft?"left":"right")&&(d=n),n=="left"&&i==0)for(;m&&e[m-2]==e[m-3]&&e[m-1].insertLeft;)r=e[(m-=3)+2],d="left";if(n=="right"&&i==v-g)for(;m=0&&(n=e[i]).left==n.right;i--);return n}function Ed(e,t,n,r){var i=ks(t.map,n,r),u=i.node,d=i.start,g=i.end,v=i.collapse,m;if(u.nodeType==3){for(var w=0;w<4;w++){for(;d&&Yo(t.line.text.charAt(i.coverStart+d));)--d;for(;i.coverStart+g0&&(v=r="right");var k;e.options.lineWrapping&&(k=u.getClientRects()).length>1?m=k[r=="right"?k.length-1:0]:m=u.getBoundingClientRect()}if(c&&h<9&&!d&&(!m||!m.left&&!m.right)){var B=u.parentNode.getClientRects()[0];B?m={left:B.left,right:B.left+nn(e.display),top:B.top,bottom:B.bottom}:m=Cs}for(var M=m.top-t.rect.top,H=m.bottom-t.rect.top,q=(M+H)/2,Y=t.view.measure.heights,Z=0;Z=r.text.length?(v=r.text.length,m="before"):v<=0&&(v=0,m="after"),!g)return d(m=="before"?v-1:v,m=="before");function w(H,q,Y){var Z=g[q],$=Z.level==1;return d(Y?H-1:H,$!=Y)}var k=_n(g,v,m),B=Mn,M=w(v,k,m=="before");return B!=null&&(M.other=w(v,B,m!="before")),M}function Ls(e,t){var n=0;t=me(e.doc,t),e.options.lineWrapping||(n=nn(e.display)*t.ch);var r=ie(e.doc,t.line),i=nr(r)+Bi(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Da(e,t,n,r,i){var u=G(e,t,n);return u.xRel=i,r&&(u.outside=r),u}function wa(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Da(r.first,0,null,-1,-1);var i=_r(r,n),u=r.first+r.size-1;if(i>u)return Da(r.first+r.size-1,ie(r,u).text.length,null,1,1);t<0&&(t=0);for(var d=ie(r,i);;){var g=Fd(e,d,i,t,n),v=rd(d,g.ch+(g.xRel>0||g.outside>0?1:0));if(!v)return g;var m=v.find(1);if(m.line==i)return m;d=ie(r,i=m.line)}}function Ms(e,t,n,r){r-=xa(t);var i=t.text.length,u=Ln(function(d){return Jt(e,n,d-1).bottom<=r},i,0);return i=Ln(function(d){return Jt(e,n,d).top>r},u,i),{begin:u,end:i}}function _s(e,t,n,r){n||(n=tn(e,t));var i=Ni(e,t,Jt(e,n,r),"line").top;return Ms(e,t,n,i)}function Ca(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Fd(e,t,n,r,i){i-=nr(t);var u=tn(e,t),d=xa(t),g=0,v=t.text.length,m=!0,w=tr(t,e.doc.direction);if(w){var k=(e.options.lineWrapping?Ld:Td)(e,t,n,u,w,r,i);m=k.level!=1,g=m?k.from:k.to-1,v=m?k.to:k.from-1}var B=null,M=null,H=Ln(function(le){var oe=Jt(e,u,le);return oe.top+=d,oe.bottom+=d,Ca(oe,r,i,!1)?(oe.top<=i&&oe.left<=r&&(B=le,M=oe),!0):!1},g,v),q,Y,Z=!1;if(M){var $=r-M.left=te.bottom?1:0}return H=ql(t.text,H,1),Da(n,H,Y,Z,r-q)}function Td(e,t,n,r,i,u,d){var g=Ln(function(k){var B=i[k],M=B.level!=1;return Ca(Wt(e,G(n,M?B.to:B.from,M?"before":"after"),"line",t,r),u,d,!0)},0,i.length-1),v=i[g];if(g>0){var m=v.level!=1,w=Wt(e,G(n,m?v.from:v.to,m?"after":"before"),"line",t,r);Ca(w,u,d,!0)&&w.top>d&&(v=i[g-1])}return v}function Ld(e,t,n,r,i,u,d){var g=Ms(e,t,r,d),v=g.begin,m=g.end;/\s/.test(t.text.charAt(m-1))&&m--;for(var w=null,k=null,B=0;B=m||M.to<=v)){var H=M.level!=1,q=Jt(e,r,H?Math.min(m,M.to)-1:Math.max(v,M.from)).right,Y=qY)&&(w=M,k=Y)}}return w||(w=i[i.length-1]),w.fromm&&(w={from:w.from,to:m,level:w.level}),w}var Nr;function rn(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Nr==null){Nr=S("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Nr.appendChild(document.createTextNode("x")),Nr.appendChild(S("br"));Nr.appendChild(document.createTextNode("x"))}se(e.measure,Nr);var n=Nr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),ne(e.measure),n||1}function nn(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=S("span","xxxxxxxxxx"),n=S("pre",[t],"CodeMirror-line-like");se(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function ka(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,u=t.gutters.firstChild,d=0;u;u=u.nextSibling,++d){var g=e.display.gutterSpecs[d].className;n[g]=u.offsetLeft+u.clientLeft+i,r[g]=u.clientWidth}return{fixedPos:Sa(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function Sa(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function Bs(e){var t=rn(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/nn(e.display)-3);return function(i){if(vr(e.doc,i))return 0;var u=0;if(i.widgets)for(var d=0;d0&&(m=ie(e.doc,v.line).text).length==v.ch){var w=Ke(m,m.length,e.options.tabSize)-m.length;v=G(v.line,Math.max(0,Math.round((u-xs(e.display).left)/nn(e.display))-w))}return v}function Ir(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;rt)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)rr&&ha(e.doc,t)i.viewFrom?br(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)br(e);else if(t<=i.viewFrom){var u=Ii(e,n,n+r,1);u?(i.view=i.view.slice(u.index),i.viewFrom=u.lineN,i.viewTo+=r):br(e)}else if(n>=i.viewTo){var d=Ii(e,t,t,-1);d?(i.view=i.view.slice(0,d.index),i.viewTo=d.lineN):br(e)}else{var g=Ii(e,t,t,-1),v=Ii(e,n,n+r,1);g&&v?(i.view=i.view.slice(0,g.index).concat(_i(e,g.lineN,v.lineN)).concat(i.view.slice(v.index)),i.viewTo+=r):br(e)}var m=i.externalMeasured;m&&(n=i.lineN&&t=r.viewTo)){var u=r.view[Ir(e,t)];if(u.node!=null){var d=u.changes||(u.changes=[]);Be(d,n)==-1&&d.push(n)}}}function br(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Ii(e,t,n,r){var i=Ir(e,t),u,d=e.display.view;if(!rr||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var g=e.display.viewFrom,v=0;v0){if(i==d.length-1)return null;u=g+d[i].size-t,i++}else u=g-t;t+=u,n+=u}for(;ha(e.doc,n)!=n;){if(i==(r<0?0:d.length-1))return null;n+=r*d[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function Md(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=_i(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=_i(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Ir(e,n)))),r.viewTo=n}function Ns(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||v.to().line0?d:e.defaultCharWidth())+"px"}if(r.other){var g=n.appendChild(S("div","\xA0","CodeMirror-cursor CodeMirror-secondarycursor"));g.style.display="",g.style.left=r.other.left+"px",g.style.top=r.other.top+"px",g.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function Pi(e,t){return e.top-t.top||e.left-t.left}function _d(e,t,n){var r=e.display,i=e.doc,u=document.createDocumentFragment(),d=xs(e.display),g=d.left,v=Math.max(r.sizerWidth,Br(e)-r.sizer.offsetLeft)-d.right,m=i.direction=="ltr";function w(Q,te,le,oe){te<0&&(te=0),te=Math.round(te),oe=Math.round(oe),u.appendChild(S("div",null,"CodeMirror-selected","position: absolute; left: "+Q+`px; - top: `+te+"px; width: "+(le??v-Q)+`px; - height: `+(oe-te)+"px"))}function k(Q,te,le){var oe=ie(i,Q),xe=oe.text.length,Te,nt;function Ie(Ge,Dt){return Oi(e,G(Q,Ge),"div",oe,Dt)}function St(Ge,Dt,at){var Ze=_s(e,oe,null,Ge),Xe=Dt=="ltr"==(at=="after")?"left":"right",He=at=="after"?Ze.begin:Ze.end-(/\s/.test(oe.text.charAt(Ze.end-1))?2:1);return Ie(He,Xe)[Xe]}var xt=tr(oe,i.direction);return Oc(xt,te||0,le??xe,function(Ge,Dt,at,Ze){var Xe=at=="ltr",He=Ie(Ge,Xe?"left":"right"),wt=Ie(Dt-1,Xe?"right":"left"),mn=te==null&&Ge==0,kr=le==null&&Dt==xe,ut=Ze==0,$t=!xt||Ze==xt.length-1;if(wt.top-He.top<=3){var it=(m?mn:kr)&&ut,el=(m?kr:mn)&&$t,lr=it?g:(Xe?He:wt).left,Wr=el?v:(Xe?wt:He).right;w(lr,He.top,Wr-lr,He.bottom)}else{var qr,ht,bn,tl;Xe?(qr=m&&mn&&ut?g:He.left,ht=m?v:St(Ge,at,"before"),bn=m?g:St(Dt,at,"after"),tl=m&&kr&&$t?v:wt.right):(qr=m?St(Ge,at,"before"):g,ht=!m&&mn&&ut?v:He.right,bn=!m&&kr&&$t?g:wt.left,tl=m?St(Dt,at,"after"):v),w(qr,He.top,ht-qr,He.bottom),He.bottom0?t.blinker=setInterval(function(){e.hasFocus()||on(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function Is(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||La(e))}function Ta(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&on(e))},100)}function La(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(Ue(e,"focus",e,t),e.state.focused=!0,De(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),b&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Fa(e))}function on(e,t){e.state.delayingBlurEvent||(e.state.focused&&(Ue(e,"blur",e,t),e.state.focused=!1,ae(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function zi(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,u=0,d=0;d.005||M<-.005)&&(ie.display.sizerWidth){var q=Math.ceil(w/nn(e.display));q>e.display.maxLineLength&&(e.display.maxLineLength=q,e.display.maxLine=g.line,e.display.maxLineChanged=!0)}}}Math.abs(u)>2&&(t.scroller.scrollTop+=u)}function Ps(e){if(e.widgets)for(var t=0;t=d&&(u=_r(t,nr(ie(t,v))-e.wrapper.clientHeight),d=v)}return{from:u,to:Math.max(d,u+1)}}function Bd(e,t){if(!Ve(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,u=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(u.defaultView.innerHeight||u.documentElement.clientHeight)&&(i=!1),i!=null&&!L){var d=S("div","\u200B",null,`position: absolute; - top: `+(t.top-n.viewOffset-Bi(e.display))+`px; +`,t);i==-1&&(i=e.length);var u=e.slice(t,e.charAt(i-1)=="\r"?i-1:i),h=u.indexOf("\r");h!=-1?(n.push(u.slice(0,h)),t+=h+1):(n.push(u),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},qc=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},Uc=function(){var e=E("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")}(),ra=null;function jc(e){if(ra!=null)return ra;var t=ee(e,E("span","x")),n=t.getBoundingClientRect(),r=W(t,0,1).getBoundingClientRect();return ra=Math.abs(n.left-r.left)>1}var na={},Jr={};function Gc(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),na[e]=t}function Xc(e,t){Jr[e]=t}function ki(e){if(typeof e=="string"&&Jr.hasOwnProperty(e))e=Jr[e];else if(e&&typeof e.name=="string"&&Jr.hasOwnProperty(e.name)){var t=Jr[e.name];typeof t=="string"&&(t={name:t}),e=ql(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return ki("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return ki("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function ia(e,t){t=ki(t);var n=na[t.name];if(!n)return ia(e,"text/plain");var r=n(e,t);if($r.hasOwnProperty(t.name)){var i=$r[t.name];for(var u in i)i.hasOwnProperty(u)&&(r.hasOwnProperty(u)&&(r["_"+u]=r[u]),r[u]=i[u])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var h in t.modeProps)r[h]=t.modeProps[h];return r}var $r={};function Kc(e,t){var n=$r.hasOwnProperty(e)?$r[e]:$r[e]={};Tt(t,n)}function Lr(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var n={};for(var r in t){var i=t[r];i instanceof Array&&(i=i.concat([])),n[r]=i}return n}function oa(e,t){for(var n;e.innerMode&&(n=e.innerMode(t),!(!n||n.mode==e));)t=n.state,e=n.mode;return n||{mode:e,state:t}}function Zl(e,t,n){return e.startState?e.startState(t,n):!0}var Ge=function(e,t,n){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=n};Ge.prototype.eol=function(){return this.pos>=this.string.length},Ge.prototype.sol=function(){return this.pos==this.lineStart},Ge.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Ge.prototype.next=function(){if(this.post},Ge.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},Ge.prototype.skipToEnd=function(){this.pos=this.string.length},Ge.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Ge.prototype.backUp=function(e){this.pos-=e},Ge.prototype.column=function(){return this.lastColumnPos0?null:(u&&t!==!1&&(this.pos+=u[0].length),u)}},Ge.prototype.current=function(){return this.string.slice(this.start,this.pos)},Ge.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Ge.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Ge.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function oe(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var n=e;!n.lines;)for(var r=0;;++r){var i=n.children[r],u=i.chunkSize();if(t=e.first&&tn?X(n,oe(e,n).text.length):Yc(t,oe(e,t.line).text.length)}function Yc(e,t){var n=e.ch;return n==null||n>t?X(e.line,t):n<0?X(e.line,0):e}function Jl(e,t){for(var n=[],r=0;rthis.maxLookAhead&&(this.maxLookAhead=e),t},Zt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Zt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Zt.fromSaved=function(e,t,n){return t instanceof Ai?new Zt(e,Lr(e.mode,t.state),n,t.lookAhead):new Zt(e,Lr(e.mode,t),n)},Zt.prototype.save=function(e){var t=e!==!1?Lr(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Ai(t,this.maxLookAhead):t};function $l(e,t,n,r){var i=[e.state.modeGen],u={};is(e,t.text,e.doc.mode,n,function(b,w){return i.push(b,w)},u,r);for(var h=n.state,g=function(b){n.baseTokens=i;var w=e.state.overlays[b],k=1,B=0;n.state=!0,is(e,t.text,w.mode,n,function(M,z){for(var R=k;BM&&i.splice(k,1,M,i[k+1],Y),k+=2,B=Math.min(M,Y)}if(z)if(w.opaque)i.splice(R,k-R,M,"overlay "+z),k=R+2;else for(;Re.options.maxHighlightLength&&Lr(e.doc.mode,r.state),u=$l(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=u.styles,u.classes?t.styleClasses=u.classes:t.styleClasses&&(t.styleClasses=null),n===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function On(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new Zt(r,!0,t);var u=Zc(e,t,n),h=u>r.first&&oe(r,u-1).stateAfter,g=h?Zt.fromSaved(r,h,u):new Zt(r,Zl(r.mode),u);return r.iter(u,t,function(v){fa(e,v.text,g);var b=g.line;v.stateAfter=b==t-1||b%5==0||b>=i.viewFrom&&bt.start)return u}throw new Error("Mode "+e.name+" failed to advance stream.")}var ts=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function rs(e,t,n,r){var i=e.doc,u=i.mode,h;t=ge(i,t);var g=oe(i,t.line),v=On(e,t.line,n),b=new Ge(g.text,e.options.tabSize,v),w;for(r&&(w=[]);(r||b.pose.options.maxHighlightLength?(g=!1,h&&fa(e,t,r,w.pos),w.pos=t.length,k=null):k=ns(ca(n,w,r.state,B),u),B){var M=B[0].name;M&&(k="m-"+(k?M+" "+k:M))}if(!g||b!=k){for(;vh;--g){if(g<=u.first)return u.first;var v=oe(u,g-1),b=v.stateAfter;if(b&&(!n||g+(b instanceof Ai?b.lookAhead:0)<=u.modeFrontier))return g;var w=Ye(v.text,null,e.options.tabSize);(i==null||r>w)&&(i=g-1,r=w)}return i}function Qc(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=oe(e,r).stateAfter;if(i&&(!(i instanceof Ai)||r+i.lookAhead=t:u.to>t);(r||(r=[])).push(new Fi(h,u.from,v?null:u.to))}}return r}function rd(e,t,n){var r;if(e)for(var i=0;i=t:u.to>t);if(g||u.from==t&&h.type=="bookmark"&&(!n||u.marker.insertLeft)){var v=u.from==null||(h.inclusiveLeft?u.from<=t:u.from0&&g)for(var ne=0;ne0)){var w=[v,1],k=pe(b.from,g.from),B=pe(b.to,g.to);(k<0||!h.inclusiveLeft&&!k)&&w.push({from:b.from,to:g.from}),(B>0||!h.inclusiveRight&&!B)&&w.push({from:g.to,to:b.to}),i.splice.apply(i,w),v+=w.length-3}}return i}function ls(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!r||ha(r,u.marker)<0)&&(r=u.marker)}return r}function cs(e,t,n,r,i){var u=oe(e,t),h=rr&&u.markedSpans;if(h)for(var g=0;g=0&&k<=0||w<=0&&k>=0)&&(w<=0&&(v.marker.inclusiveRight&&i.inclusiveLeft?pe(b.to,n)>=0:pe(b.to,n)>0)||w>=0&&(v.marker.inclusiveRight&&i.inclusiveLeft?pe(b.from,r)<=0:pe(b.from,r)<0)))return!0}}}function Rt(e){for(var t;t=fs(e);)e=t.find(-1,!0).line;return e}function od(e){for(var t;t=Mi(e);)e=t.find(1,!0).line;return e}function ad(e){for(var t,n;t=Mi(e);)e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function pa(e,t){var n=oe(e,t),r=Rt(n);return n==r?t:Ae(r)}function ds(e,t){if(t>e.lastLine())return t;var n=oe(e,t),r;if(!vr(e,n))return t;for(;r=Mi(n);)n=r.find(1,!0).line;return Ae(n)+1}function vr(e,t){var n=rr&&t.markedSpans;if(n){for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=i,t.maxLine=r)})}var Vr=function(e,t,n){this.text=e,ss(this,t),this.height=n?n(this):1};Vr.prototype.lineNo=function(){return Ae(this)},Qr(Vr);function ld(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),ls(e),ss(e,n);var i=r?r(e):1;i!=e.height&&Yt(e,i)}function sd(e){e.parent=null,ls(e)}var ud={},fd={};function hs(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?fd:ud;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function ps(e,t){var n=H("span",null,null,m?"padding-right: .1px":null),r={pre:H("pre",[n],"CodeMirror-line"),content:n,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var i=0;i<=(t.rest?t.rest.length:0);i++){var u=i?t.rest[i-1]:t.line,h=void 0;r.pos=0,r.addToken=dd,Wc(e.display.measure)&&(h=tr(u,e.doc.direction))&&(r.addToken=pd(r.addToken,h)),r.map=[];var g=t!=e.display.externalMeasured&&Ae(u);gd(u,r,Vl(e,u,g)),u.styleClasses&&(u.styleClasses.bgClass&&(r.bgClass=Le(u.styleClasses.bgClass,r.bgClass||"")),u.styleClasses.textClass&&(r.textClass=Le(u.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(Rc(e.display.measure))),i==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(m){var v=r.content.lastChild;(/\bcm-tab\b/.test(v.className)||v.querySelector&&v.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return je(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=Le(r.pre.className,r.textClass||"")),r}function cd(e){var t=E("span","\u2022","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function dd(e,t,n,r,i,u,h){if(t){var g=e.splitSpaces?hd(t,e.trailingSpace):t,v=e.cm.state.specialChars,b=!1,w;if(!v.test(t))e.col+=t.length,w=document.createTextNode(g),e.map.push(e.pos,e.pos+t.length,w),c&&d<9&&(b=!0),e.pos+=t.length;else{w=document.createDocumentFragment();for(var k=0;;){v.lastIndex=k;var B=v.exec(t),M=B?B.index-k:t.length-k;if(M){var z=document.createTextNode(g.slice(k,k+M));c&&d<9?w.appendChild(E("span",[z])):w.appendChild(z),e.map.push(e.pos,e.pos+M,z),e.col+=M,e.pos+=M}if(!B)break;k+=M+1;var R=void 0;if(B[0]==" "){var Y=e.cm.options.tabSize,Q=Y-e.col%Y;R=w.appendChild(E("span",pr(Q),"cm-tab")),R.setAttribute("role","presentation"),R.setAttribute("cm-text"," "),e.col+=Q}else B[0]=="\r"||B[0]==` +`?(R=w.appendChild(E("span",B[0]=="\r"?"\u240D":"\u2424","cm-invalidchar")),R.setAttribute("cm-text",B[0]),e.col+=1):(R=e.cm.options.specialCharPlaceholder(B[0]),R.setAttribute("cm-text",B[0]),c&&d<9?w.appendChild(E("span",[R])):w.appendChild(R),e.col+=1);e.map.push(e.pos,e.pos+1,R),e.pos++}}if(e.trailingSpace=g.charCodeAt(t.length-1)==32,n||r||i||b||u||h){var V=n||"";r&&(V+=r),i&&(V+=i);var J=E("span",[w],V,u);if(h)for(var ne in h)h.hasOwnProperty(ne)&&ne!="style"&&ne!="class"&&J.setAttribute(ne,h[ne]);return e.content.appendChild(J)}e.content.appendChild(w)}}function hd(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;ib&&k.from<=b));B++);if(k.to>=w)return e(n,r,i,u,h,g,v);e(n,r.slice(0,k.to-b),i,u,null,g,v),u=null,r=r.slice(k.to-b),b=k.to}}}function gs(e,t,n,r){var i=!r&&n.widgetNode;i&&e.map.push(e.pos,e.pos+t,i),!r&&e.cm.display.input.needsContentAttribute&&(i||(i=e.content.appendChild(document.createElement("span"))),i.setAttribute("cm-marker",n.id)),i&&(e.cm.display.input.setUneditable(i),e.content.appendChild(i)),e.pos+=t,e.trailingSpace=!1}function gd(e,t,n){var r=e.markedSpans,i=e.text,u=0;if(!r){for(var h=1;hv||xe.collapsed&&ae.to==v&&ae.from==v)){if(ae.to!=null&&ae.to!=v&&M>ae.to&&(M=ae.to,R=""),xe.className&&(z+=" "+xe.className),xe.css&&(B=(B?B+";":"")+xe.css),xe.startStyle&&ae.from==v&&(Y+=" "+xe.startStyle),xe.endStyle&&ae.to==M&&(ne||(ne=[])).push(xe.endStyle,ae.to),xe.title&&((V||(V={})).title=xe.title),xe.attributes)for(var Te in xe.attributes)(V||(V={}))[Te]=xe.attributes[Te];xe.collapsed&&(!Q||ha(Q.marker,xe)<0)&&(Q=ae)}else ae.from>v&&M>ae.from&&(M=ae.from)}if(ne)for(var nt=0;nt=g)break;for(var St=Math.min(g,M);;){if(w){var xt=v+w.length;if(!Q){var Xe=xt>St?w.slice(0,St-v):w;t.addToken(t,Xe,k?k+z:z,Y,v+Xe.length==M?R:"",B,V)}if(xt>=St){w=w.slice(St-v),v=St;break}v=xt,Y=""}w=i.slice(u,u=n[b++]),k=hs(n[b++],t.cm.options)}}}function vs(e,t,n){this.line=t,this.rest=ad(t),this.size=this.rest?Ae(Ce(this.rest))-n+1:1,this.node=this.text=null,this.hidden=vr(e,t)}function Bi(e,t,n){for(var r=[],i,u=t;u2&&u.push((v.bottom+b.top)/2-n.top)}}u.push(n.bottom-n.top)}}function Cs(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;rn)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}}function Ed(e,t){t=Rt(t);var n=Ae(t),r=e.display.externalMeasured=new vs(e.doc,t,n);r.lineN=n;var i=r.built=ps(e,r);return r.text=i.pre,ee(e.display.lineMeasure,i.pre),r}function ks(e,t,n,r){return Jt(e,tn(e,t),n,r)}function xa(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(u=v-g,i=u-1,t>=v&&(h="right")),i!=null){if(r=e[b+2],g==v&&n==(r.insertLeft?"left":"right")&&(h=n),n=="left"&&i==0)for(;b&&e[b-2]==e[b-3]&&e[b-1].insertLeft;)r=e[(b-=3)+2],h="left";if(n=="right"&&i==v-g)for(;b=0&&(n=e[i]).left==n.right;i--);return n}function Fd(e,t,n,r){var i=Es(t.map,n,r),u=i.node,h=i.start,g=i.end,v=i.collapse,b;if(u.nodeType==3){for(var w=0;w<4;w++){for(;h&&Zo(t.line.text.charAt(i.coverStart+h));)--h;for(;i.coverStart+g0&&(v=r="right");var k;e.options.lineWrapping&&(k=u.getClientRects()).length>1?b=k[r=="right"?k.length-1:0]:b=u.getBoundingClientRect()}if(c&&d<9&&!h&&(!b||!b.left&&!b.right)){var B=u.parentNode.getClientRects()[0];B?b={left:B.left,right:B.left+nn(e.display),top:B.top,bottom:B.bottom}:b=Ss}for(var M=b.top-t.rect.top,z=b.bottom-t.rect.top,R=(M+z)/2,Y=t.view.measure.heights,Q=0;Q=r.text.length?(v=r.text.length,b="before"):v<=0&&(v=0,b="after"),!g)return h(b=="before"?v-1:v,b=="before");function w(z,R,Y){var Q=g[R],V=Q.level==1;return h(Y?z-1:z,V!=Y)}var k=_n(g,v,b),B=Mn,M=w(v,k,b=="before");return B!=null&&(M.other=w(v,B,b!="before")),M}function _s(e,t){var n=0;t=ge(e.doc,t),e.options.lineWrapping||(n=nn(e.display)*t.ch);var r=oe(e.doc,t.line),i=nr(r)+Ni(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function wa(e,t,n,r,i){var u=X(e,t,n);return u.xRel=i,r&&(u.outside=r),u}function Ca(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return wa(r.first,0,null,-1,-1);var i=_r(r,n),u=r.first+r.size-1;if(i>u)return wa(r.first+r.size-1,oe(r,u).text.length,null,1,1);t<0&&(t=0);for(var h=oe(r,i);;){var g=Ld(e,h,i,t,n),v=id(h,g.ch+(g.xRel>0||g.outside>0?1:0));if(!v)return g;var b=v.find(1);if(b.line==i)return b;h=oe(r,i=b.line)}}function Bs(e,t,n,r){r-=Da(t);var i=t.text.length,u=Ln(function(h){return Jt(e,n,h-1).bottom<=r},i,0);return i=Ln(function(h){return Jt(e,n,h).top>r},u,i),{begin:u,end:i}}function Ns(e,t,n,r){n||(n=tn(e,t));var i=Oi(e,t,Jt(e,n,r),"line").top;return Bs(e,t,n,i)}function ka(e,t,n,r){return e.bottom<=n?!1:e.top>n?!0:(r?e.left:e.right)>t}function Ld(e,t,n,r,i){i-=nr(t);var u=tn(e,t),h=Da(t),g=0,v=t.text.length,b=!0,w=tr(t,e.doc.direction);if(w){var k=(e.options.lineWrapping?_d:Md)(e,t,n,u,w,r,i);b=k.level!=1,g=b?k.from:k.to-1,v=b?k.to:k.from-1}var B=null,M=null,z=Ln(function(se){var ae=Jt(e,u,se);return ae.top+=h,ae.bottom+=h,ka(ae,r,i,!1)?(ae.top<=i&&ae.left<=r&&(B=se,M=ae),!0):!1},g,v),R,Y,Q=!1;if(M){var V=r-M.left=ne.bottom?1:0}return z=jl(t.text,z,1),wa(n,z,Y,Q,r-R)}function Md(e,t,n,r,i,u,h){var g=Ln(function(k){var B=i[k],M=B.level!=1;return ka(Wt(e,X(n,M?B.to:B.from,M?"before":"after"),"line",t,r),u,h,!0)},0,i.length-1),v=i[g];if(g>0){var b=v.level!=1,w=Wt(e,X(n,b?v.from:v.to,b?"after":"before"),"line",t,r);ka(w,u,h,!0)&&w.top>h&&(v=i[g-1])}return v}function _d(e,t,n,r,i,u,h){var g=Bs(e,t,r,h),v=g.begin,b=g.end;/\s/.test(t.text.charAt(b-1))&&b--;for(var w=null,k=null,B=0;B=b||M.to<=v)){var z=M.level!=1,R=Jt(e,r,z?Math.min(b,M.to)-1:Math.max(v,M.from)).right,Y=RY)&&(w=M,k=Y)}}return w||(w=i[i.length-1]),w.fromb&&(w={from:w.from,to:b,level:w.level}),w}var Nr;function rn(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(Nr==null){Nr=E("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)Nr.appendChild(document.createTextNode("x")),Nr.appendChild(E("br"));Nr.appendChild(document.createTextNode("x"))}ee(e.measure,Nr);var n=Nr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),j(e.measure),n||1}function nn(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=E("span","xxxxxxxxxx"),n=E("pre",[t],"CodeMirror-line-like");ee(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Sa(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,u=t.gutters.firstChild,h=0;u;u=u.nextSibling,++h){var g=e.display.gutterSpecs[h].className;n[g]=u.offsetLeft+u.clientLeft+i,r[g]=u.clientWidth}return{fixedPos:Ea(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function Ea(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function Os(e){var t=rn(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/nn(e.display)-3);return function(i){if(vr(e.doc,i))return 0;var u=0;if(i.widgets)for(var h=0;h0&&(b=oe(e.doc,v.line).text).length==v.ch){var w=Ye(b,b.length,e.options.tabSize)-b.length;v=X(v.line,Math.max(0,Math.round((u-ws(e.display).left)/nn(e.display))-w))}return v}function Ir(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var n=e.display.view,r=0;rt)&&(i.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=i.viewTo)rr&&pa(e.doc,t)i.viewFrom?br(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)br(e);else if(t<=i.viewFrom){var u=Pi(e,n,n+r,1);u?(i.view=i.view.slice(u.index),i.viewFrom=u.lineN,i.viewTo+=r):br(e)}else if(n>=i.viewTo){var h=Pi(e,t,t,-1);h?(i.view=i.view.slice(0,h.index),i.viewTo=h.lineN):br(e)}else{var g=Pi(e,t,t,-1),v=Pi(e,n,n+r,1);g&&v?(i.view=i.view.slice(0,g.index).concat(Bi(e,g.lineN,v.lineN)).concat(i.view.slice(v.index)),i.viewTo+=r):br(e)}var b=i.externalMeasured;b&&(n=i.lineN&&t=r.viewTo)){var u=r.view[Ir(e,t)];if(u.node!=null){var h=u.changes||(u.changes=[]);Ne(h,n)==-1&&h.push(n)}}}function br(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Pi(e,t,n,r){var i=Ir(e,t),u,h=e.display.view;if(!rr||n==e.doc.first+e.doc.size)return{index:i,lineN:n};for(var g=e.display.viewFrom,v=0;v0){if(i==h.length-1)return null;u=g+h[i].size-t,i++}else u=g-t;t+=u,n+=u}for(;pa(e.doc,n)!=n;){if(i==(r<0?0:h.length-1))return null;n+=r*h[i-(r<0?1:0)].size,i+=r}return{index:i,lineN:n}}function Bd(e,t,n){var r=e.display,i=r.view;i.length==0||t>=r.viewTo||n<=r.viewFrom?(r.view=Bi(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=Bi(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Ir(e,n)))),r.viewTo=n}function Is(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||v.to().line0?h:e.defaultCharWidth())+"px"}if(r.other){var g=n.appendChild(E("div","\xA0","CodeMirror-cursor CodeMirror-secondarycursor"));g.style.display="",g.style.left=r.other.left+"px",g.style.top=r.other.top+"px",g.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function zi(e,t){return e.top-t.top||e.left-t.left}function Nd(e,t,n){var r=e.display,i=e.doc,u=document.createDocumentFragment(),h=ws(e.display),g=h.left,v=Math.max(r.sizerWidth,Br(e)-r.sizer.offsetLeft)-h.right,b=i.direction=="ltr";function w(J,ne,se,ae){ne<0&&(ne=0),ne=Math.round(ne),ae=Math.round(ae),u.appendChild(E("div",null,"CodeMirror-selected","position: absolute; left: "+J+`px; + top: `+ne+"px; width: "+(se??v-J)+`px; + height: `+(ae-ne)+"px"))}function k(J,ne,se){var ae=oe(i,J),xe=ae.text.length,Te,nt;function Pe(Xe,Dt){return Ii(e,X(J,Xe),"div",ae,Dt)}function St(Xe,Dt,ot){var Qe=Ns(e,ae,null,Xe),Ke=Dt=="ltr"==(ot=="after")?"left":"right",Re=ot=="after"?Qe.begin:Qe.end-(/\s/.test(ae.text.charAt(Qe.end-1))?2:1);return Pe(Re,Ke)[Ke]}var xt=tr(ae,i.direction);return Pc(xt,ne||0,se??xe,function(Xe,Dt,ot,Qe){var Ke=ot=="ltr",Re=Pe(Xe,Ke?"left":"right"),wt=Pe(Dt-1,Ke?"right":"left"),mn=ne==null&&Xe==0,kr=se==null&&Dt==xe,st=Qe==0,$t=!xt||Qe==xt.length-1;if(wt.top-Re.top<=3){var it=(b?mn:kr)&&st,tl=(b?kr:mn)&&$t,lr=it?g:(Ke?Re:wt).left,Wr=tl?v:(Ke?wt:Re).right;w(lr,Re.top,Wr-lr,Re.bottom)}else{var qr,dt,bn,rl;Ke?(qr=b&&mn&&st?g:Re.left,dt=b?v:St(Xe,ot,"before"),bn=b?g:St(Dt,ot,"after"),rl=b&&kr&&$t?v:wt.right):(qr=b?St(Xe,ot,"before"):g,dt=!b&&mn&&st?v:Re.right,bn=!b&&kr&&$t?g:wt.left,rl=b?St(Dt,ot,"after"):v),w(qr,Re.top,dt-qr,Re.bottom),Re.bottom0?t.blinker=setInterval(function(){e.hasFocus()||on(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function zs(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||Ma(e))}function La(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&on(e))},100)}function Ma(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(je(e,"focus",e,t),e.state.focused=!0,De(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),m&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),Ta(e))}function on(e,t){e.state.delayingBlurEvent||(e.state.focused&&(je(e,"blur",e,t),e.state.focused=!1,le(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function Hi(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,u=0,h=0;h.005||M<-.005)&&(ie.display.sizerWidth){var R=Math.ceil(w/nn(e.display));R>e.display.maxLineLength&&(e.display.maxLineLength=R,e.display.maxLine=g.line,e.display.maxLineChanged=!0)}}}Math.abs(u)>2&&(t.scroller.scrollTop+=u)}function Hs(e){if(e.widgets)for(var t=0;t=h&&(u=_r(t,nr(oe(t,v))-e.wrapper.clientHeight),h=v)}return{from:u,to:Math.max(h,u+1)}}function Od(e,t){if(!Ve(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,u=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(u.defaultView.innerHeight||u.documentElement.clientHeight)&&(i=!1),i!=null&&!L){var h=E("div","\u200B",null,`position: absolute; + top: `+(t.top-n.viewOffset-Ni(e.display))+`px; height: `+(t.bottom-t.top+Qt(e)+n.barHeight)+`px; - left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(d),d.scrollIntoView(i),e.display.lineSpace.removeChild(d)}}}function Nd(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?G(t.line,t.ch+1,"before"):t,t=t.ch?G(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var u=0;u<5;u++){var d=!1,g=Wt(e,t),v=!n||n==t?g:Wt(e,n);i={left:Math.min(g.left,v.left),top:Math.min(g.top,v.top)-r,right:Math.max(g.left,v.left),bottom:Math.max(g.bottom,v.bottom)+r};var m=Ma(e,i),w=e.doc.scrollTop,k=e.doc.scrollLeft;if(m.scrollTop!=null&&(Un(e,m.scrollTop),Math.abs(e.doc.scrollTop-w)>1&&(d=!0)),m.scrollLeft!=null&&(Pr(e,m.scrollLeft),Math.abs(e.doc.scrollLeft-k)>1&&(d=!0)),!d)break}return i}function Od(e,t){var n=Ma(e,t);n.scrollTop!=null&&Un(e,n.scrollTop),n.scrollLeft!=null&&Pr(e,n.scrollLeft)}function Ma(e,t){var n=e.display,r=rn(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,u=ba(e),d={};t.bottom-t.top>u&&(t.bottom=t.top+u);var g=e.doc.height+ma(n),v=t.topg-r;if(t.topi+u){var w=Math.min(t.top,(m?g:t.bottom)-u);w!=i&&(d.scrollTop=w)}var k=e.options.fixedGutter?0:n.gutters.offsetWidth,B=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-k,M=Br(e)-n.gutters.offsetWidth,H=t.right-t.left>M;return H&&(t.right=t.left+M),t.left<10?d.scrollLeft=0:t.leftM+B-3&&(d.scrollLeft=t.right+(H?0:10)-M),d}function _a(e,t){t!=null&&(Ri(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function an(e){Ri(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function qn(e,t,n){(t!=null||n!=null)&&Ri(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function Id(e,t){Ri(e),e.curOp.scrollToPos=t}function Ri(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Ls(e,t.from),r=Ls(e,t.to);zs(e,n,r,t.margin)}}function zs(e,t,n,r){var i=Ma(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});qn(e,i.scrollLeft,i.scrollTop)}function Un(e,t){Math.abs(e.doc.scrollTop-t)<2||(s||Na(e,{top:t}),Hs(e,t,!0),s&&Na(e),Xn(e,100))}function Hs(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Pr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,js(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function jn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+ma(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Qt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var zr=function(e,t,n){this.cm=n;var r=this.vert=S("div",[S("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=S("div",[S("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),fe(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),fe(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,c&&h<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};zr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var u=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+u)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},zr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},zr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},zr.prototype.zeroWidthHack=function(){var e=P&&!_?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new ct,this.disableVert=new ct},zr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),u=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);u!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},zr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var Gn=function(){};Gn.prototype.update=function(){return{bottom:0,right:0}},Gn.prototype.setScrollLeft=function(){},Gn.prototype.setScrollTop=function(){},Gn.prototype.clear=function(){};function ln(e,t){t||(t=jn(e));var n=e.display.barWidth,r=e.display.barHeight;Rs(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&zi(e),Rs(e,jn(e)),n=e.display.barWidth,r=e.display.barHeight}function Rs(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var Ws={native:zr,null:Gn};function qs(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&ae(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new Ws[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),fe(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Pr(e,t):Un(e,t)},e),e.display.scrollbars.addClass&&De(e.display.wrapper,e.display.scrollbars.addClass)}var Pd=0;function Hr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Pd,markArrays:null},pd(e.curOp)}function Rr(e){var t=e.curOp;t&&vd(t,function(n){for(var r=0;r=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new Wi(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Rd(e){e.updatedDisplay=e.mustUpdate&&Ba(e.cm,e.update)}function Wd(e){var t=e.cm,n=t.display;e.updatedDisplay&&zi(t),e.barMeasure=jn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=ws(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Qt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-Br(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function qd(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=On(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(u){if(r.line>=e.display.viewFrom){var d=u.styles,g=u.text.length>e.options.maxHighlightLength?Lr(t.mode,r.state):null,v=Ql(e,u,r,!0);g&&(r.state=g),u.styles=v.styles;var m=u.styleClasses,w=v.classes;w?u.styleClasses=w:m&&(u.styleClasses=null);for(var k=!d||d.length!=u.styles.length||m!=w&&(!m||!w||m.bgClass!=w.bgClass||m.textClass!=w.textClass),B=0;!k&&Bn)return Xn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&kt(e,function(){for(var u=0;u=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&Ns(e)==0)return!1;Gs(e)&&(br(e),t.dims=ka(e));var i=r.first+r.size,u=Math.max(t.visible.from-e.options.viewportMargin,r.first),d=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFromd&&n.viewTo-d<20&&(d=Math.min(i,n.viewTo)),rr&&(u=ha(e.doc,u),d=fs(e.doc,d));var g=u!=n.viewFrom||d!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;Md(e,u,d),n.viewOffset=nr(ie(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var v=Ns(e);if(!g&&v==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var m=Xd(e);return v>4&&(n.lineDiv.style.display="none"),Yd(e,n.updateLineNumbers,t.dims),v>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,Kd(m),ne(n.cursorDiv),ne(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,g&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,Xn(e,400)),n.updateLineNumbers=null,!0}function Us(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==Br(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+ma(e.display)-ba(e),n.top)}),t.visible=Hi(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Hi(e.display,e.doc,n));if(!Ba(e,t))break;zi(e);var i=jn(e);Wn(e),ln(e,i),Ia(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Na(e,t){var n=new Wi(e,t);if(Ba(e,n)){zi(e),Us(e,n);var r=jn(e);Wn(e),ln(e,r),Ia(e,r),n.finish()}}function Yd(e,t,n){var r=e.display,i=e.options.lineNumbers,u=r.lineDiv,d=u.firstChild;function g(H){var q=H.nextSibling;return b&&P&&e.display.currentWheelTarget==H?H.style.display="none":H.parentNode.removeChild(H),q}for(var v=r.view,m=r.viewFrom,w=0;w-1&&(M=!1),gs(e,k,m,n)),M&&(ne(k.lineNumber),k.lineNumber.appendChild(document.createTextNode(aa(e.options,m)))),d=k.node.nextSibling}m+=k.size}for(;d;)d=g(d)}function Oa(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",et(e,"gutterChanged",e)}function Ia(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Qt(e)+"px"}function js(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=Sa(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,u=r+"px",d=0;dg.clientWidth,m=g.scrollHeight>g.clientHeight;if(r&&v||i&&m){if(i&&P&&b){e:for(var w=t.target,k=d.view;w!=g;w=w.parentNode)for(var B=0;B=0&&ve(e,r.to())<=0)return n}return-1};var Ee=function(e,t){this.anchor=e,this.head=t};Ee.prototype.from=function(){return Si(this.anchor,this.head)},Ee.prototype.to=function(){return ki(this.anchor,this.head)},Ee.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function qt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(B,M){return ve(B.from(),M.from())}),n=Be(t,i);for(var u=1;u0:v>=0){var m=Si(g.from(),d.from()),w=ki(g.to(),d.to()),k=g.empty()?d.from()==d.head:g.from()==g.head;u<=n&&--n,t.splice(--u,2,new Ee(k?w:m,k?m:w))}}return new Mt(t,n)}function yr(e,t){return new Mt([new Ee(e,t||e)],0)}function xr(e){return e.text?G(e.from.line+e.text.length-1,Ce(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function Zs(e,t){if(ve(e,t.from)<0)return e;if(ve(e,t.to)<=0)return xr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=xr(t).ch-t.to.ch),G(n,r)}function za(e,t){for(var n=[],r=0;r1&&e.remove(g.line+1,H-1),e.insert(g.line+1,Z)}et(e,"change",e,t)}function Dr(e,t,n){function r(i,u,d){if(i.linked)for(var g=0;g1&&!e.done[e.done.length-2].ranges)return e.done.pop(),Ce(e.done)}function tu(e,t,n,r){var i=e.history;i.undone.length=0;var u=+new Date,d,g;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>u-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(d=Vd(i,i.lastOp==r)))g=Ce(d.changes),ve(t.from,t.to)==0&&ve(t.from,g.to)==0?g.to=xr(t):d.changes.push(Wa(e,t));else{var v=Ce(i.done);for((!v||!v.ranges)&&ji(e.sel,i.done),d={changes:[Wa(e,t)],generation:i.generation},i.done.push(d);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=u,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,g||Ue(e,"historyAdded")}function eh(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function th(e,t,n,r){var i=e.history,u=r&&r.origin;n==i.lastSelOp||u&&i.lastSelOrigin==u&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==u||eh(e,u,Ce(i.done),t))?i.done[i.done.length-1]=t:ji(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=u,i.lastSelOp=n,r&&r.clearRedo!==!1&&eu(i.undone)}function ji(e,t){var n=Ce(t);n&&n.ranges&&n.equals(e)||t.push(e)}function ru(e,t,n,r){var i=t["spans_"+e.id],u=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(d){d.markedSpans&&((i||(i=t["spans_"+e.id]={}))[u]=d.markedSpans),++u})}function rh(e){if(!e)return null;for(var t,n=0;n-1&&(Ce(g)[k]=m[k],delete m[k])}}return r}function qa(e,t,n,r){if(r){var i=e.anchor;if(n){var u=ve(t,i)<0;u!=ve(n,i)<0?(i=t,t=n):u!=ve(t,n)<0&&(t=n)}return new Ee(i,t)}else return new Ee(n||t,t)}function Gi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),st(e,new Mt([qa(e.sel.primary(),t,n,i)],0),r)}function iu(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),u=0;u=t.ch:g.to>t.ch))){if(i&&(Ue(v,"beforeCursorEnter"),v.explicitlyCleared))if(u.markedSpans){--d;continue}else break;if(!v.atomic)continue;if(n){var k=v.find(r<0?1:-1),B=void 0;if((r<0?w:m)&&(k=fu(e,k,-r,k&&k.line==t.line?u:null)),k&&k.line==t.line&&(B=ve(k,n))&&(r<0?B<0:B>0))return un(e,k,t,r,i)}var M=v.find(r<0?-1:1);return(r<0?m:w)&&(M=fu(e,M,r,M.line==t.line?u:null)),M?un(e,M,t,r,i):null}}return t}function Ki(e,t,n,r,i){var u=r||1,d=un(e,t,n,u,i)||!i&&un(e,t,n,u,!0)||un(e,t,n,-u,i)||!i&&un(e,t,n,-u,!0);return d||(e.cantEdit=!0,G(e.first,0))}function fu(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?me(e,G(t.line-1)):null:n>0&&t.ch==(r||ie(e,t.line)).text.length?t.line=0;--i)hu(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else hu(e,t)}}function hu(e,t){if(!(t.text.length==1&&t.text[0]==""&&ve(t.from,t.to)==0)){var n=za(e,t);tu(e,t,n,e.cm?e.cm.curOp.id:NaN),Zn(e,t,n,ca(e,t));var r=[];Dr(e,function(i,u){!u&&Be(r,i.history)==-1&&(mu(i.history,t),r.push(i.history)),Zn(i,t,null,ca(i,t))})}}function Yi(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,u,d=e.sel,g=t=="undo"?i.done:i.undone,v=t=="undo"?i.undone:i.done,m=0;m=0;--M){var H=B(M);if(H)return H.v}}}}function pu(e,t){if(t!=0&&(e.first+=t,e.sel=new Mt(Ht(e.sel.ranges,function(i){return new Ee(G(i.anchor.line+t,i.anchor.ch),G(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){bt(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineu&&(t={from:t.from,to:G(u,ie(e,u).text.length),text:[t.text[0]],origin:t.origin}),t.removed=Mr(e,t.from,t.to),n||(n=za(e,t)),e.cm?oh(e.cm,t,r):Ra(e,t,r),Xi(e,n,vt),e.cantEdit&&Ki(e,G(e.firstLine(),0))&&(e.cantEdit=!1)}}function oh(e,t,n){var r=e.doc,i=e.display,u=t.from,d=t.to,g=!1,v=u.line;e.options.lineWrapping||(v=Ae(Rt(ie(r,u.line))),r.iter(v,d.line+1,function(M){if(M==i.maxLine)return g=!0,!0})),r.sel.contains(t.from,t.to)>-1&&jl(e),Ra(r,t,n,Bs(e)),e.options.lineWrapping||(r.iter(v,u.line+t.text.length,function(M){var H=Mi(M);H>i.maxLineLength&&(i.maxLine=M,i.maxLineLength=H,i.maxLineChanged=!0,g=!1)}),g&&(e.curOp.updateMaxLine=!0)),Yc(r,u.line),Xn(e,400);var m=t.text.length-(d.line-u.line)-1;t.full?bt(e):u.line==d.line&&t.text.length==1&&!Js(e.doc,t)?mr(e,u.line,"text"):bt(e,u.line,d.line+1,m);var w=It(e,"changes"),k=It(e,"change");if(k||w){var B={from:u,to:d,text:t.text,removed:t.removed,origin:t.origin};k&&et(e,"change",e,B),w&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(B)}e.display.selForContextMenu=null}function cn(e,t,n,r,i){var u;r||(r=n),ve(r,n)<0&&(u=[r,n],n=u[0],r=u[1]),typeof t=="string"&&(t=e.splitLines(t)),fn(e,{from:n,to:r,text:t,origin:i})}function gu(e,t,n,r){n1||!(this.children[0]instanceof Jn))){var g=[];this.collapse(g),this.children=[new Jn(g)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var d=i.lines.length%25+25,g=d;g10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;re.display.maxLineLength&&(e.display.maxLine=m,e.display.maxLineLength=w,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&bt(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&su(e.doc)),e&&et(e,"markerCleared",e,this,r,i),t&&Rr(e),this.parent&&this.parent.clear()}},wr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i0||d==0&&u.clearWhenEmpty!==!1)return u;if(u.replacedWith&&(u.collapsed=!0,u.widgetNode=R("span",[u.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||u.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(u.widgetNode.insertLeft=!0)),u.collapsed){if(us(e,t.line,t,n,u)||t.line!=n.line&&us(e,n.line,t,n,u))throw new Error("Inserting collapsed marker partially overlapping an existing one");Qc()}u.addToHistory&&tu(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var g=t.line,v=e.cm,m;if(e.iter(g,n.line+1,function(k){v&&u.collapsed&&!v.options.lineWrapping&&Rt(k)==v.display.maxLine&&(m=!0),u.collapsed&&g!=t.line&&Yt(k,0),$c(k,new Ai(u,g==t.line?t.ch:null,g==n.line?n.ch:null),e.cm&&e.cm.curOp),++g}),u.collapsed&&e.iter(t.line,n.line+1,function(k){vr(e,k)&&Yt(k,0)}),u.clearOnEnter&&fe(u,"beforeCursorEnter",function(){return u.clear()}),u.readOnly&&(Zc(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),u.collapsed&&(u.id=++yu,u.atomic=!0),v){if(m&&(v.curOp.updateMaxLine=!0),u.collapsed)bt(v,t.line,n.line+1);else if(u.className||u.startStyle||u.endStyle||u.css||u.attributes||u.title)for(var w=t.line;w<=n.line;w++)mr(v,w,"text");u.atomic&&su(v.doc),et(v,"markerAdded",v,u)}return u}var ei=function(e,t){this.markers=e,this.primary=t;for(var n=0;n=0;v--)fn(this,r[v]);g?au(this,g):this.cm&&an(this.cm)}),undo:rt(function(){Yi(this,"undo")}),redo:rt(function(){Yi(this,"redo")}),undoSelection:rt(function(){Yi(this,"undo",!0)}),redoSelection:rt(function(){Yi(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=me(this,e),t=me(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(u){var d=u.markedSpans;if(d)for(var g=0;g=v.to||v.from==null&&i!=e.line||v.from!=null&&i==t.line&&v.from>=t.ch)&&(!n||n(v.marker))&&r.push(v.marker.parent||v.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;re)return t=e,!0;e-=u,++n}),me(this,G(n,t))},indexFromPos:function(e){e=me(this,e);var t=e.ch;if(e.linet&&(t=e.from),e.to!=null&&e.to-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var w=e.dataTransfer.getData("Text");if(w){var k;if(t.state.draggingText&&!t.state.draggingText.copy&&(k=t.listSelections()),Xi(t.doc,yr(n,n)),k)for(var B=0;B=0;g--)cn(e.doc,"",r[g].from,r[g].to,"+delete");an(e)})}function ja(e,t,n){var r=ql(e.text,t+n,n);return r<0||r>e.text.length?null:r}function Ga(e,t,n){var r=ja(e,t.ch,n);return r==null?null:new G(t.line,r,n<0?"after":"before")}function Xa(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var u=tr(n,t.doc.direction);if(u){var d=i<0?Ce(u):u[0],g=i<0==(d.level==1),v=g?"after":"before",m;if(d.level>0||t.doc.direction=="rtl"){var w=tn(t,n);m=i<0?n.text.length-1:0;var k=Jt(t,w,m).top;m=Ln(function(B){return Jt(t,w,B).top==k},i<0==(d.level==1)?d.from:d.to-1,m),v=="before"&&(m=ja(n,m,1))}else m=i<0?d.to:d.from;return new G(r,m,v)}}return new G(r,i<0?n.text.length:0,i<0?"before":"after")}function yh(e,t,n,r){var i=tr(t,e.doc.direction);if(!i)return Ga(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var u=_n(i,n.ch,n.sticky),d=i[u];if(e.doc.direction=="ltr"&&d.level%2==0&&(r>0?d.to>n.ch:d.from=d.from&&B>=w.begin)){var M=k?"before":"after";return new G(n.line,B,M)}}var H=function(Z,$,Q){for(var te=function(Te,nt){return nt?new G(n.line,g(Te,1),"before"):new G(n.line,Te,"after")};Z>=0&&Z0==(le.level!=1),xe=oe?Q.begin:g(Q.end,-1);if(le.from<=xe&&xe0?w.end:g(w.begin,-1);return Y!=null&&!(r>0&&Y==t.text.length)&&(q=H(r>0?0:i.length-1,r,m(Y)),q)?q:null}var ni={selectAll:cu,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),vt)},killLine:function(e){return pn(e,function(t){if(t.empty()){var n=ie(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new G(i.line,i.ch+1),e.replaceRange(u.charAt(i.ch-1)+u.charAt(i.ch-2),G(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var d=ie(e.doc,i.line-1).text;d&&(i=new G(i.line,1),e.replaceRange(u.charAt(0)+e.doc.lineSeparator()+d.charAt(d.length-1),G(i.line-1,d.length-1),i,"+transpose"))}}n.push(new Ee(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return kt(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;re&&ve(t,this.pos)==0&&n==this.button};var oi,ai;function Eh(e,t){var n=+new Date;return ai&&ai.compare(n,e,t)?(oi=ai=null,"triple"):oi&&oi.compare(n,e,t)?(ai=new Ya(n,e,t),oi=null,"double"):(oi=new Ya(n,e,t),ai=null,"single")}function Ou(e){var t=this,n=t.display;if(!(Ve(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,ir(n,e)){b||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!Za(t,e)){var r=Or(t,e),i=Xl(e),u=r?Eh(r,i):"single";he(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Ah(t,i,r,u,e))&&(i==1?r?Th(t,r,u,e):Jo(e)==n.scroller&&mt(e):i==2?(r&&Gi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(be?t.display.input.onContextMenu(e):Ta(t)))}}}function Ah(e,t,n,r,i){var u="Click";return r=="double"?u="Double"+u:r=="triple"&&(u="Triple"+u),u=(t==1?"Left":t==2?"Middle":"Right")+u,ii(e,Eu(u,i),i,function(d){if(typeof d=="string"&&(d=ni[d]),!d)return!1;var g=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),g=d(e,n)!=Ye}finally{e.state.suppressEdits=!1}return g})}function Fh(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var u=I?n.shiftKey&&n.metaKey:n.altKey;i.unit=u?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=P?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(P?n.altKey:n.ctrlKey)),i}function Th(e,t,n,r){c?setTimeout($e(Is,e),0):e.curOp.focus=ue(ee(e));var i=Fh(e,n,r),u=e.doc.sel,d;e.options.dragDrop&&Pc&&!e.isReadOnly()&&n=="single"&&(d=u.contains(t))>-1&&(ve((d=u.ranges[d]).from(),t)<0||t.xRel>0)&&(ve(d.to(),t)>0||t.xRel<0)?Lh(e,r,t,i):Mh(e,r,t,i)}function Lh(e,t,n,r){var i=e.display,u=!1,d=tt(e,function(m){b&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Ta(e)),Lt(i.wrapper.ownerDocument,"mouseup",d),Lt(i.wrapper.ownerDocument,"mousemove",g),Lt(i.scroller,"dragstart",v),Lt(i.scroller,"drop",d),u||(mt(m),r.addNew||Gi(e.doc,n,null,null,r.extend),b&&!F||c&&h==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),g=function(m){u=u||Math.abs(t.clientX-m.clientX)+Math.abs(t.clientY-m.clientY)>=10},v=function(){return u=!0};b&&(i.scroller.draggable=!0),e.state.draggingText=d,d.copy=!r.moveOnDrag,fe(i.wrapper.ownerDocument,"mouseup",d),fe(i.wrapper.ownerDocument,"mousemove",g),fe(i.scroller,"dragstart",v),fe(i.scroller,"drop",d),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function Iu(e,t,n){if(n=="char")return new Ee(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new Ee(G(t.line,0),me(e.doc,G(t.line+1,0)));var r=n(e,t);return new Ee(r.from,r.to)}function Mh(e,t,n,r){c&&Ta(e);var i=e.display,u=e.doc;mt(t);var d,g,v=u.sel,m=v.ranges;if(r.addNew&&!r.extend?(g=u.sel.contains(n),g>-1?d=m[g]:d=new Ee(n,n)):(d=u.sel.primary(),g=u.sel.primIndex),r.unit=="rectangle")r.addNew||(d=new Ee(n,n)),n=Or(e,t,!0,!0),g=-1;else{var w=Iu(e,n,r.unit);r.extend?d=qa(d,w.anchor,w.head,r.extend):d=w}r.addNew?g==-1?(g=m.length,st(u,qt(e,m.concat([d]),g),{scroll:!1,origin:"*mouse"})):m.length>1&&m[g].empty()&&r.unit=="char"&&!r.extend?(st(u,qt(e,m.slice(0,g).concat(m.slice(g+1)),0),{scroll:!1,origin:"*mouse"}),v=u.sel):Ua(u,g,d,Tn):(g=0,st(u,new Mt([d],0),Tn),v=u.sel);var k=n;function B(Q){if(ve(k,Q)!=0)if(k=Q,r.unit=="rectangle"){for(var te=[],le=e.options.tabSize,oe=Ke(ie(u,n.line).text,n.ch,le),xe=Ke(ie(u,Q.line).text,Q.ch,le),Te=Math.min(oe,xe),nt=Math.max(oe,xe),Ie=Math.min(n.line,Q.line),St=Math.min(e.lastLine(),Math.max(n.line,Q.line));Ie<=St;Ie++){var xt=ie(u,Ie).text,Ge=Kt(xt,Te,le);Te==nt?te.push(new Ee(G(Ie,Ge),G(Ie,Ge))):xt.length>Ge&&te.push(new Ee(G(Ie,Ge),G(Ie,Kt(xt,nt,le))))}te.length||te.push(new Ee(n,n)),st(u,qt(e,v.ranges.slice(0,g).concat(te),g),{origin:"*mouse",scroll:!1}),e.scrollIntoView(Q)}else{var Dt=d,at=Iu(e,Q,r.unit),Ze=Dt.anchor,Xe;ve(at.anchor,Ze)>0?(Xe=at.head,Ze=Si(Dt.from(),at.anchor)):(Xe=at.anchor,Ze=ki(Dt.to(),at.head));var He=v.ranges.slice(0);He[g]=_h(e,new Ee(me(u,Ze),Xe)),st(u,qt(e,He,g),Tn)}}var M=i.wrapper.getBoundingClientRect(),H=0;function q(Q){var te=++H,le=Or(e,Q,!0,r.unit=="rectangle");if(le)if(ve(le,k)!=0){e.curOp.focus=ue(ee(e)),B(le);var oe=Hi(i,u);(le.line>=oe.to||le.lineM.bottom?20:0;xe&&setTimeout(tt(e,function(){H==te&&(i.scroller.scrollTop+=xe,q(Q))}),50)}}function Y(Q){e.state.selectingText=!1,H=1/0,Q&&(mt(Q),i.input.focus()),Lt(i.wrapper.ownerDocument,"mousemove",Z),Lt(i.wrapper.ownerDocument,"mouseup",$),u.history.lastSelOrigin=null}var Z=tt(e,function(Q){Q.buttons===0||!Xl(Q)?Y(Q):q(Q)}),$=tt(e,Y);e.state.selectingText=$,fe(i.wrapper.ownerDocument,"mousemove",Z),fe(i.wrapper.ownerDocument,"mouseup",$)}function _h(e,t){var n=t.anchor,r=t.head,i=ie(e.doc,n.line);if(ve(n,r)==0&&n.sticky==r.sticky)return t;var u=tr(i);if(!u)return t;var d=_n(u,n.ch,n.sticky),g=u[d];if(g.from!=n.ch&&g.to!=n.ch)return t;var v=d+(g.from==n.ch==(g.level!=1)?0:1);if(v==0||v==u.length)return t;var m;if(r.line!=n.line)m=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var w=_n(u,r.ch,r.sticky),k=w-d||(r.ch-n.ch)*(g.level==1?-1:1);w==v-1||w==v?m=k<0:m=k>0}var B=u[v+(m?-1:0)],M=m==(B.level==1),H=M?B.from:B.to,q=M?"after":"before";return n.ch==H&&n.sticky==q?t:new Ee(new G(n.line,H,q),r)}function Pu(e,t,n,r){var i,u;if(t.touches)i=t.touches[0].clientX,u=t.touches[0].clientY;else try{i=t.clientX,u=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&mt(t);var d=e.display,g=d.lineDiv.getBoundingClientRect();if(u>g.bottom||!It(e,n))return Qo(t);u-=g.top-d.viewOffset;for(var v=0;v=i){var w=_r(e.doc,u),k=e.display.gutterSpecs[v];return Ue(e,n,e,w,k.className,t),Qo(t)}}}function Za(e,t){return Pu(e,t,"gutterClick",!0)}function zu(e,t){ir(e.display,t)||Bh(e,t)||Ve(e,t,"contextmenu")||be||e.display.input.onContextMenu(t)}function Bh(e,t){return It(e,"gutterContextMenu")?Pu(e,t,"gutterContextMenu",!1):!1}function Hu(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),Rn(e)}var gn={toString:function(){return"CodeMirror.Init"}},Ru={},$i={};function Nh(e){var t=e.optionHandlers;function n(r,i,u,d){e.defaults[r]=i,u&&(t[r]=d?function(g,v,m){m!=gn&&u(g,v,m)}:u)}e.defineOption=n,e.Init=gn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ha(r)},!0),n("indentUnit",2,Ha,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Yn(r),Rn(r),bt(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var u=[],d=r.doc.first;r.doc.iter(function(v){for(var m=0;;){var w=v.text.indexOf(i,m);if(w==-1)break;m=w+i.length,u.push(G(d,w))}d++});for(var g=u.length-1;g>=0;g--)cn(r.doc,i,u[g],G(u[g].line,u[g].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,u){r.state.specialChars=new RegExp(i.source+(i.test(" ")?"":"| "),"g"),u!=gn&&r.refresh()}),n("specialCharPlaceholder",ud,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!W),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){Hu(r),Kn(r)},!0),n("keyMap","default",function(r,i,u){var d=Qi(i),g=u!=gn&&Qi(u);g&&g.detach&&g.detach(r,d),d.attach&&d.attach(r,g||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,Ih,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=Pa(i,r.options.lineNumbers),Kn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?Sa(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return ln(r)},!0),n("scrollbarStyle","native",function(r){qs(r),ln(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=Pa(r.options.gutters,i),Kn(r)},!0),n("firstLineNumber",1,Kn,!0),n("lineNumberFormatter",function(r){return r},Kn,!0),n("showCursorWhenSelecting",!1,Wn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(on(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Oh),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,Wn,!0),n("singleCursorHeightPerLine",!0,Wn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Yn,!0),n("addModeClass",!1,Yn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Yn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Oh(e,t,n){var r=n&&n!=gn;if(!t!=!r){var i=e.display.dragFunctions,u=t?fe:Lt;u(e.display.scroller,"dragstart",i.start),u(e.display.scroller,"dragenter",i.enter),u(e.display.scroller,"dragover",i.over),u(e.display.scroller,"dragleave",i.leave),u(e.display.scroller,"drop",i.drop)}}function Ih(e){e.options.lineWrapping?(De(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(ae(e.display.wrapper,"CodeMirror-wrap"),ga(e)),Ea(e),bt(e),Rn(e),setTimeout(function(){return ln(e)},100)}function Ne(e,t){var n=this;if(!(this instanceof Ne))return new Ne(e,t);this.options=t=t?Tt(t):{},Tt(Ru,t,!1);var r=t.value;typeof r=="string"?r=new yt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ne.inputStyles[t.inputStyle](this),u=this.display=new Zd(e,r,i,t);u.wrapper.CodeMirror=this,Hu(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),qs(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new ct,keySeq:null,specialChars:null},t.autofocus&&!N&&u.input.focus(),c&&h<11&&setTimeout(function(){return n.display.input.reset(!0)},20),Ph(this),ph(),Hr(this),this.curOp.forceUpdate=!0,$s(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&La(n)},20):on(this);for(var d in $i)$i.hasOwnProperty(d)&&$i[d](this,t[d],gn);Gs(this),t.finishInit&&t.finishInit(this);for(var g=0;g20*20}fe(t.scroller,"touchstart",function(v){if(!Ve(e,v)&&!u(v)&&!Za(e,v)){t.input.ensurePolled(),clearTimeout(n);var m=+new Date;t.activeTouch={start:m,moved:!1,prev:m-r.end<=300?r:null},v.touches.length==1&&(t.activeTouch.left=v.touches[0].pageX,t.activeTouch.top=v.touches[0].pageY)}}),fe(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),fe(t.scroller,"touchend",function(v){var m=t.activeTouch;if(m&&!ir(t,v)&&m.left!=null&&!m.moved&&new Date-m.start<300){var w=e.coordsChar(t.activeTouch,"page"),k;!m.prev||d(m,m.prev)?k=new Ee(w,w):!m.prev.prev||d(m,m.prev.prev)?k=e.findWordAt(w):k=new Ee(G(w.line,0),me(e.doc,G(w.line+1,0))),e.setSelection(k.anchor,k.head),e.focus(),mt(v)}i()}),fe(t.scroller,"touchcancel",i),fe(t.scroller,"scroll",function(){t.scroller.clientHeight&&(Un(e,t.scroller.scrollTop),Pr(e,t.scroller.scrollLeft,!0),Ue(e,"scroll",e))}),fe(t.scroller,"mousewheel",function(v){return Ys(e,v)}),fe(t.scroller,"DOMMouseScroll",function(v){return Ys(e,v)}),fe(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(v){Ve(e,v)||Bn(v)},over:function(v){Ve(e,v)||(hh(e,v),Bn(v))},start:function(v){return dh(e,v)},drop:tt(e,ch),leave:function(v){Ve(e,v)||wu(e)}};var g=t.input.getField();fe(g,"keyup",function(v){return Bu.call(e,v)}),fe(g,"keydown",tt(e,_u)),fe(g,"keypress",tt(e,Nu)),fe(g,"focus",function(v){return La(e,v)}),fe(g,"blur",function(v){return on(e,v)})}var Qa=[];Ne.defineInitHook=function(e){return Qa.push(e)};function li(e,t,n,r){var i=e.doc,u;n==null&&(n="add"),n=="smart"&&(i.mode.indent?u=On(e,t).state:n="prev");var d=e.options.tabSize,g=ie(i,t),v=Ke(g.text,null,d);g.stateAfter&&(g.stateAfter=null);var m=g.text.match(/^\s*/)[0],w;if(!r&&!/\S/.test(g.text))w=0,n="not";else if(n=="smart"&&(w=i.mode.indent(u,g.text.slice(m.length),g.text),w==Ye||w>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?w=Ke(ie(i,t-1).text,null,d):w=0:n=="add"?w=v+e.options.indentUnit:n=="subtract"?w=v-e.options.indentUnit:typeof n=="number"&&(w=v+n),w=Math.max(0,w);var k="",B=0;if(e.options.indentWithTabs)for(var M=Math.floor(w/d);M;--M)B+=d,k+=" ";if(Bd,v=ea(t),m=null;if(g&&r.ranges.length>1)if(Ut&&Ut.text.join(` -`)==t){if(r.ranges.length%Ut.text.length==0){m=[];for(var w=0;w=0;B--){var M=r.ranges[B],H=M.from(),q=M.to();M.empty()&&(n&&n>0?H=G(H.line,H.ch-n):e.state.overwrite&&!g?q=G(q.line,Math.min(ie(u,q.line).text.length,q.ch+Ce(v).length)):g&&Ut&&Ut.lineWise&&Ut.text.join(` + left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(h),h.scrollIntoView(i),e.display.lineSpace.removeChild(h)}}}function Id(e,t,n,r){r==null&&(r=0);var i;!e.options.lineWrapping&&t==n&&(n=t.sticky=="before"?X(t.line,t.ch+1,"before"):t,t=t.ch?X(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var u=0;u<5;u++){var h=!1,g=Wt(e,t),v=!n||n==t?g:Wt(e,n);i={left:Math.min(g.left,v.left),top:Math.min(g.top,v.top)-r,right:Math.max(g.left,v.left),bottom:Math.max(g.bottom,v.bottom)+r};var b=_a(e,i),w=e.doc.scrollTop,k=e.doc.scrollLeft;if(b.scrollTop!=null&&(Un(e,b.scrollTop),Math.abs(e.doc.scrollTop-w)>1&&(h=!0)),b.scrollLeft!=null&&(Pr(e,b.scrollLeft),Math.abs(e.doc.scrollLeft-k)>1&&(h=!0)),!h)break}return i}function Pd(e,t){var n=_a(e,t);n.scrollTop!=null&&Un(e,n.scrollTop),n.scrollLeft!=null&&Pr(e,n.scrollLeft)}function _a(e,t){var n=e.display,r=rn(e.display);t.top<0&&(t.top=0);var i=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:n.scroller.scrollTop,u=ya(e),h={};t.bottom-t.top>u&&(t.bottom=t.top+u);var g=e.doc.height+ba(n),v=t.topg-r;if(t.topi+u){var w=Math.min(t.top,(b?g:t.bottom)-u);w!=i&&(h.scrollTop=w)}var k=e.options.fixedGutter?0:n.gutters.offsetWidth,B=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:n.scroller.scrollLeft-k,M=Br(e)-n.gutters.offsetWidth,z=t.right-t.left>M;return z&&(t.right=t.left+M),t.left<10?h.scrollLeft=0:t.leftM+B-3&&(h.scrollLeft=t.right+(z?0:10)-M),h}function Ba(e,t){t!=null&&(Wi(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function an(e){Wi(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function qn(e,t,n){(t!=null||n!=null)&&Wi(e),t!=null&&(e.curOp.scrollLeft=t),n!=null&&(e.curOp.scrollTop=n)}function zd(e,t){Wi(e),e.curOp.scrollToPos=t}function Wi(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=_s(e,t.from),r=_s(e,t.to);Rs(e,n,r,t.margin)}}function Rs(e,t,n,r){var i=_a(e,{left:Math.min(t.left,n.left),top:Math.min(t.top,n.top)-r,right:Math.max(t.right,n.right),bottom:Math.max(t.bottom,n.bottom)+r});qn(e,i.scrollLeft,i.scrollTop)}function Un(e,t){Math.abs(e.doc.scrollTop-t)<2||(s||Oa(e,{top:t}),Ws(e,t,!0),s&&Oa(e),Xn(e,100))}function Ws(e,t,n){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!n)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Pr(e,t,n,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((n?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,Xs(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function jn(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+ba(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?n:0,docHeight:r,scrollHeight:r+Qt(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var zr=function(e,t,n){this.cm=n;var r=this.vert=E("div",[E("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=E("div",[E("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),ue(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),ue(i,"scroll",function(){i.clientWidth&&t(i.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,c&&d<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};zr.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,n=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(n){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var i=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+i)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=n?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var u=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+u)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},zr.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},zr.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},zr.prototype.zeroWidthHack=function(){var e=I&&!_?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new ft,this.disableVert=new ft},zr.prototype.enableZeroWidthBar=function(e,t,n){e.style.visibility="";function r(){var i=e.getBoundingClientRect(),u=n=="vert"?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);u!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},zr.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var Gn=function(){};Gn.prototype.update=function(){return{bottom:0,right:0}},Gn.prototype.setScrollLeft=function(){},Gn.prototype.setScrollTop=function(){},Gn.prototype.clear=function(){};function ln(e,t){t||(t=jn(e));var n=e.display.barWidth,r=e.display.barHeight;qs(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&Hi(e),qs(e,jn(e)),n=e.display.barWidth,r=e.display.barHeight}function qs(e,t){var n=e.display,r=n.scrollbars.update(t);n.sizer.style.paddingRight=(n.barWidth=r.right)+"px",n.sizer.style.paddingBottom=(n.barHeight=r.bottom)+"px",n.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(n.scrollbarFiller.style.display="block",n.scrollbarFiller.style.height=r.bottom+"px",n.scrollbarFiller.style.width=r.right+"px"):n.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(n.gutterFiller.style.display="block",n.gutterFiller.style.height=r.bottom+"px",n.gutterFiller.style.width=t.gutterWidth+"px"):n.gutterFiller.style.display=""}var Us={native:zr,null:Gn};function js(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&le(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new Us[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),ue(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,n){n=="horizontal"?Pr(e,t):Un(e,t)},e),e.display.scrollbars.addClass&&De(e.display.wrapper,e.display.scrollbars.addClass)}var Hd=0;function Hr(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Hd,markArrays:null},vd(e.curOp)}function Rr(e){var t=e.curOp;t&&bd(t,function(n){for(var r=0;r=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new qi(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function qd(e){e.updatedDisplay=e.mustUpdate&&Na(e.cm,e.update)}function Ud(e){var t=e.cm,n=t.display;e.updatedDisplay&&Hi(t),e.barMeasure=jn(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=ks(t,n.maxLine,n.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(n.scroller.clientWidth,n.sizer.offsetLeft+e.adjustWidthTo+Qt(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-Br(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function jd(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=On(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(u){if(r.line>=e.display.viewFrom){var h=u.styles,g=u.text.length>e.options.maxHighlightLength?Lr(t.mode,r.state):null,v=$l(e,u,r,!0);g&&(r.state=g),u.styles=v.styles;var b=u.styleClasses,w=v.classes;w?u.styleClasses=w:b&&(u.styleClasses=null);for(var k=!h||h.length!=u.styles.length||b!=w&&(!b||!w||b.bgClass!=w.bgClass||b.textClass!=w.textClass),B=0;!k&&Bn)return Xn(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&kt(e,function(){for(var u=0;u=n.viewFrom&&t.visible.to<=n.viewTo&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&Is(e)==0)return!1;Ks(e)&&(br(e),t.dims=Sa(e));var i=r.first+r.size,u=Math.max(t.visible.from-e.options.viewportMargin,r.first),h=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFromh&&n.viewTo-h<20&&(h=Math.min(i,n.viewTo)),rr&&(u=pa(e.doc,u),h=ds(e.doc,h));var g=u!=n.viewFrom||h!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;Bd(e,u,h),n.viewOffset=nr(oe(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var v=Is(e);if(!g&&v==0&&!t.force&&n.renderedView==n.view&&(n.updateLineNumbers==null||n.updateLineNumbers>=n.viewTo))return!1;var b=Yd(e);return v>4&&(n.lineDiv.style.display="none"),Qd(e,n.updateLineNumbers,t.dims),v>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,Zd(b),j(n.cursorDiv),j(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,g&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,Xn(e,400)),n.updateLineNumbers=null,!0}function Gs(e,t){for(var n=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==Br(e)){if(n&&n.top!=null&&(n={top:Math.min(e.doc.height+ba(e.display)-ya(e),n.top)}),t.visible=Ri(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Ri(e.display,e.doc,n));if(!Na(e,t))break;Hi(e);var i=jn(e);Wn(e),ln(e,i),Pa(e,i),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Oa(e,t){var n=new qi(e,t);if(Na(e,n)){Hi(e),Gs(e,n);var r=jn(e);Wn(e),ln(e,r),Pa(e,r),n.finish()}}function Qd(e,t,n){var r=e.display,i=e.options.lineNumbers,u=r.lineDiv,h=u.firstChild;function g(z){var R=z.nextSibling;return m&&I&&e.display.currentWheelTarget==z?z.style.display="none":z.parentNode.removeChild(z),R}for(var v=r.view,b=r.viewFrom,w=0;w-1&&(M=!1),ms(e,k,b,n)),M&&(j(k.lineNumber),k.lineNumber.appendChild(document.createTextNode(la(e.options,b)))),h=k.node.nextSibling}b+=k.size}for(;h;)h=g(h)}function Ia(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",et(e,"gutterChanged",e)}function Pa(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+Qt(e)+"px"}function Xs(e){var t=e.display,n=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=Ea(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,u=r+"px",h=0;hg.clientWidth,b=g.scrollHeight>g.clientHeight;if(r&&v||i&&b){if(i&&I&&m){e:for(var w=t.target,k=h.view;w!=g;w=w.parentNode)for(var B=0;B=0&&pe(e,r.to())<=0)return n}return-1};var Ee=function(e,t){this.anchor=e,this.head=t};Ee.prototype.from=function(){return Ei(this.anchor,this.head)},Ee.prototype.to=function(){return Si(this.anchor,this.head)},Ee.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function qt(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort(function(B,M){return pe(B.from(),M.from())}),n=Ne(t,i);for(var u=1;u0:v>=0){var b=Ei(g.from(),h.from()),w=Si(g.to(),h.to()),k=g.empty()?h.from()==h.head:g.from()==g.head;u<=n&&--n,t.splice(--u,2,new Ee(k?w:b,k?b:w))}}return new Mt(t,n)}function yr(e,t){return new Mt([new Ee(e,t||e)],0)}function xr(e){return e.text?X(e.from.line+e.text.length-1,Ce(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function Js(e,t){if(pe(e,t.from)<0)return e;if(pe(e,t.to)<=0)return xr(t);var n=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=xr(t).ch-t.to.ch),X(n,r)}function Ha(e,t){for(var n=[],r=0;r1&&e.remove(g.line+1,z-1),e.insert(g.line+1,Q)}et(e,"change",e,t)}function Dr(e,t,n){function r(i,u,h){if(i.linked)for(var g=0;g1&&!e.done[e.done.length-2].ranges)return e.done.pop(),Ce(e.done)}function nu(e,t,n,r){var i=e.history;i.undone.length=0;var u=+new Date,h,g;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&i.lastModTime>u-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(h=th(i,i.lastOp==r)))g=Ce(h.changes),pe(t.from,t.to)==0&&pe(t.from,g.to)==0?g.to=xr(t):h.changes.push(qa(e,t));else{var v=Ce(i.done);for((!v||!v.ranges)&&Gi(e.sel,i.done),h={changes:[qa(e,t)],generation:i.generation},i.done.push(h);i.done.length>i.undoDepth;)i.done.shift(),i.done[0].ranges||i.done.shift()}i.done.push(n),i.generation=++i.maxGeneration,i.lastModTime=i.lastSelTime=u,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,g||je(e,"historyAdded")}function rh(e,t,n,r){var i=t.charAt(0);return i=="*"||i=="+"&&n.ranges.length==r.ranges.length&&n.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function nh(e,t,n,r){var i=e.history,u=r&&r.origin;n==i.lastSelOp||u&&i.lastSelOrigin==u&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==u||rh(e,u,Ce(i.done),t))?i.done[i.done.length-1]=t:Gi(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=u,i.lastSelOp=n,r&&r.clearRedo!==!1&&ru(i.undone)}function Gi(e,t){var n=Ce(t);n&&n.ranges&&n.equals(e)||t.push(e)}function iu(e,t,n,r){var i=t["spans_"+e.id],u=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),function(h){h.markedSpans&&((i||(i=t["spans_"+e.id]={}))[u]=h.markedSpans),++u})}function ih(e){if(!e)return null;for(var t,n=0;n-1&&(Ce(g)[k]=b[k],delete b[k])}}return r}function Ua(e,t,n,r){if(r){var i=e.anchor;if(n){var u=pe(t,i)<0;u!=pe(n,i)<0?(i=t,t=n):u!=pe(t,n)<0&&(t=n)}return new Ee(i,t)}else return new Ee(n||t,t)}function Xi(e,t,n,r,i){i==null&&(i=e.cm&&(e.cm.display.shift||e.extend)),lt(e,new Mt([Ua(e.sel.primary(),t,n,i)],0),r)}function au(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),u=0;u=t.ch:g.to>t.ch))){if(i&&(je(v,"beforeCursorEnter"),v.explicitlyCleared))if(u.markedSpans){--h;continue}else break;if(!v.atomic)continue;if(n){var k=v.find(r<0?1:-1),B=void 0;if((r<0?w:b)&&(k=du(e,k,-r,k&&k.line==t.line?u:null)),k&&k.line==t.line&&(B=pe(k,n))&&(r<0?B<0:B>0))return un(e,k,t,r,i)}var M=v.find(r<0?-1:1);return(r<0?b:w)&&(M=du(e,M,r,M.line==t.line?u:null)),M?un(e,M,t,r,i):null}}return t}function Yi(e,t,n,r,i){var u=r||1,h=un(e,t,n,u,i)||!i&&un(e,t,n,u,!0)||un(e,t,n,-u,i)||!i&&un(e,t,n,-u,!0);return h||(e.cantEdit=!0,X(e.first,0))}function du(e,t,n,r){return n<0&&t.ch==0?t.line>e.first?ge(e,X(t.line-1)):null:n>0&&t.ch==(r||oe(e,t.line)).text.length?t.line=0;--i)gu(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else gu(e,t)}}function gu(e,t){if(!(t.text.length==1&&t.text[0]==""&&pe(t.from,t.to)==0)){var n=Ha(e,t);nu(e,t,n,e.cm?e.cm.curOp.id:NaN),Zn(e,t,n,da(e,t));var r=[];Dr(e,function(i,u){!u&&Ne(r,i.history)==-1&&(yu(i.history,t),r.push(i.history)),Zn(i,t,null,da(i,t))})}}function Zi(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!n)){for(var i=e.history,u,h=e.sel,g=t=="undo"?i.done:i.undone,v=t=="undo"?i.undone:i.done,b=0;b=0;--M){var z=B(M);if(z)return z.v}}}}function vu(e,t){if(t!=0&&(e.first+=t,e.sel=new Mt(Ht(e.sel.ranges,function(i){return new Ee(X(i.anchor.line+t,i.anchor.ch),X(i.head.line+t,i.head.ch))}),e.sel.primIndex),e.cm)){bt(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineu&&(t={from:t.from,to:X(u,oe(e,u).text.length),text:[t.text[0]],origin:t.origin}),t.removed=Mr(e,t.from,t.to),n||(n=Ha(e,t)),e.cm?lh(e.cm,t,r):Wa(e,t,r),Ki(e,n,vt),e.cantEdit&&Yi(e,X(e.firstLine(),0))&&(e.cantEdit=!1)}}function lh(e,t,n){var r=e.doc,i=e.display,u=t.from,h=t.to,g=!1,v=u.line;e.options.lineWrapping||(v=Ae(Rt(oe(r,u.line))),r.iter(v,h.line+1,function(M){if(M==i.maxLine)return g=!0,!0})),r.sel.contains(t.from,t.to)>-1&&Xl(e),Wa(r,t,n,Os(e)),e.options.lineWrapping||(r.iter(v,u.line+t.text.length,function(M){var z=_i(M);z>i.maxLineLength&&(i.maxLine=M,i.maxLineLength=z,i.maxLineChanged=!0,g=!1)}),g&&(e.curOp.updateMaxLine=!0)),Qc(r,u.line),Xn(e,400);var b=t.text.length-(h.line-u.line)-1;t.full?bt(e):u.line==h.line&&t.text.length==1&&!Vs(e.doc,t)?mr(e,u.line,"text"):bt(e,u.line,h.line+1,b);var w=It(e,"changes"),k=It(e,"change");if(k||w){var B={from:u,to:h,text:t.text,removed:t.removed,origin:t.origin};k&&et(e,"change",e,B),w&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(B)}e.display.selForContextMenu=null}function cn(e,t,n,r,i){var u;r||(r=n),pe(r,n)<0&&(u=[r,n],n=u[0],r=u[1]),typeof t=="string"&&(t=e.splitLines(t)),fn(e,{from:n,to:r,text:t,origin:i})}function mu(e,t,n,r){n1||!(this.children[0]instanceof Jn))){var g=[];this.collapse(g),this.children=[new Jn(g)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var h=i.lines.length%25+25,g=h;g10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;re.display.maxLineLength&&(e.display.maxLine=b,e.display.maxLineLength=w,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&bt(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&fu(e.doc)),e&&et(e,"markerCleared",e,this,r,i),t&&Rr(e),this.parent&&this.parent.clear()}},wr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var n,r,i=0;i0||h==0&&u.clearWhenEmpty!==!1)return u;if(u.replacedWith&&(u.collapsed=!0,u.widgetNode=H("span",[u.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||u.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(u.widgetNode.insertLeft=!0)),u.collapsed){if(cs(e,t.line,t,n,u)||t.line!=n.line&&cs(e,n.line,t,n,u))throw new Error("Inserting collapsed marker partially overlapping an existing one");$c()}u.addToHistory&&nu(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var g=t.line,v=e.cm,b;if(e.iter(g,n.line+1,function(k){v&&u.collapsed&&!v.options.lineWrapping&&Rt(k)==v.display.maxLine&&(b=!0),u.collapsed&&g!=t.line&&Yt(k,0),ed(k,new Fi(u,g==t.line?t.ch:null,g==n.line?n.ch:null),e.cm&&e.cm.curOp),++g}),u.collapsed&&e.iter(t.line,n.line+1,function(k){vr(e,k)&&Yt(k,0)}),u.clearOnEnter&&ue(u,"beforeCursorEnter",function(){return u.clear()}),u.readOnly&&(Jc(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),u.collapsed&&(u.id=++Du,u.atomic=!0),v){if(b&&(v.curOp.updateMaxLine=!0),u.collapsed)bt(v,t.line,n.line+1);else if(u.className||u.startStyle||u.endStyle||u.css||u.attributes||u.title)for(var w=t.line;w<=n.line;w++)mr(v,w,"text");u.atomic&&fu(v.doc),et(v,"markerAdded",v,u)}return u}var ei=function(e,t){this.markers=e,this.primary=t;for(var n=0;n=0;v--)fn(this,r[v]);g?su(this,g):this.cm&&an(this.cm)}),undo:rt(function(){Zi(this,"undo")}),redo:rt(function(){Zi(this,"redo")}),undoSelection:rt(function(){Zi(this,"undo",!0)}),redoSelection:rt(function(){Zi(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,n=0,r=0;r=e.ch)&&t.push(i.marker.parent||i.marker)}return t},findMarks:function(e,t,n){e=ge(this,e),t=ge(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,function(u){var h=u.markedSpans;if(h)for(var g=0;g=v.to||v.from==null&&i!=e.line||v.from!=null&&i==t.line&&v.from>=t.ch)&&(!n||n(v.marker))&&r.push(v.marker.parent||v.marker)}++i}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var n=t.markedSpans;if(n)for(var r=0;re)return t=e,!0;e-=u,++n}),ge(this,X(n,t))},indexFromPos:function(e){e=ge(this,e);var t=e.ch;if(e.linet&&(t=e.from),e.to!=null&&e.to-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var w=e.dataTransfer.getData("Text");if(w){var k;if(t.state.draggingText&&!t.state.draggingText.copy&&(k=t.listSelections()),Ki(t.doc,yr(n,n)),k)for(var B=0;B=0;g--)cn(e.doc,"",r[g].from,r[g].to,"+delete");an(e)})}function Ga(e,t,n){var r=jl(e.text,t+n,n);return r<0||r>e.text.length?null:r}function Xa(e,t,n){var r=Ga(e,t.ch,n);return r==null?null:new X(t.line,r,n<0?"after":"before")}function Ka(e,t,n,r,i){if(e){t.doc.direction=="rtl"&&(i=-i);var u=tr(n,t.doc.direction);if(u){var h=i<0?Ce(u):u[0],g=i<0==(h.level==1),v=g?"after":"before",b;if(h.level>0||t.doc.direction=="rtl"){var w=tn(t,n);b=i<0?n.text.length-1:0;var k=Jt(t,w,b).top;b=Ln(function(B){return Jt(t,w,B).top==k},i<0==(h.level==1)?h.from:h.to-1,b),v=="before"&&(b=Ga(n,b,1))}else b=i<0?h.to:h.from;return new X(r,b,v)}}return new X(r,i<0?n.text.length:0,i<0?"before":"after")}function Dh(e,t,n,r){var i=tr(t,e.doc.direction);if(!i)return Xa(t,n,r);n.ch>=t.text.length?(n.ch=t.text.length,n.sticky="before"):n.ch<=0&&(n.ch=0,n.sticky="after");var u=_n(i,n.ch,n.sticky),h=i[u];if(e.doc.direction=="ltr"&&h.level%2==0&&(r>0?h.to>n.ch:h.from=h.from&&B>=w.begin)){var M=k?"before":"after";return new X(n.line,B,M)}}var z=function(Q,V,J){for(var ne=function(Te,nt){return nt?new X(n.line,g(Te,1),"before"):new X(n.line,Te,"after")};Q>=0&&Q0==(se.level!=1),xe=ae?J.begin:g(J.end,-1);if(se.from<=xe&&xe0?w.end:g(w.begin,-1);return Y!=null&&!(r>0&&Y==t.text.length)&&(R=z(r>0?0:i.length-1,r,b(Y)),R)?R:null}var ni={selectAll:hu,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),vt)},killLine:function(e){return pn(e,function(t){if(t.empty()){var n=oe(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new X(i.line,i.ch+1),e.replaceRange(u.charAt(i.ch-1)+u.charAt(i.ch-2),X(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var h=oe(e.doc,i.line-1).text;h&&(i=new X(i.line,1),e.replaceRange(u.charAt(0)+e.doc.lineSeparator()+h.charAt(h.length-1),X(i.line-1,h.length-1),i,"+transpose"))}}n.push(new Ee(i,i))}e.setSelections(n)})},newlineAndIndent:function(e){return kt(e,function(){for(var t=e.listSelections(),n=t.length-1;n>=0;n--)e.replaceRange(e.doc.lineSeparator(),t[n].anchor,t[n].head,"+input");t=e.listSelections();for(var r=0;re&&pe(t,this.pos)==0&&n==this.button};var oi,ai;function Fh(e,t){var n=+new Date;return ai&&ai.compare(n,e,t)?(oi=ai=null,"triple"):oi&&oi.compare(n,e,t)?(ai=new Za(n,e,t),oi=null,"double"):(oi=new Za(n,e,t),ai=null,"single")}function Pu(e){var t=this,n=t.display;if(!(Ve(t,e)||n.activeTouch&&n.input.supportsTouch())){if(n.input.ensurePolled(),n.shift=e.shiftKey,ir(n,e)){m||(n.scroller.draggable=!1,setTimeout(function(){return n.scroller.draggable=!0},100));return}if(!Qa(t,e)){var r=Or(t,e),i=Yl(e),u=r?Fh(r,i):"single";ye(t).focus(),i==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Th(t,i,r,u,e))&&(i==1?r?Mh(t,r,u,e):$o(e)==n.scroller&&mt(e):i==2?(r&&Xi(t.doc,r),setTimeout(function(){return n.input.focus()},20)):i==3&&(me?t.display.input.onContextMenu(e):La(t)))}}}function Th(e,t,n,r,i){var u="Click";return r=="double"?u="Double"+u:r=="triple"&&(u="Triple"+u),u=(t==1?"Left":t==2?"Middle":"Right")+u,ii(e,Fu(u,i),i,function(h){if(typeof h=="string"&&(h=ni[h]),!h)return!1;var g=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),g=h(e,n)!=Ze}finally{e.state.suppressEdits=!1}return g})}function Lh(e,t,n){var r=e.getOption("configureMouse"),i=r?r(e,t,n):{};if(i.unit==null){var u=P?n.shiftKey&&n.metaKey:n.altKey;i.unit=u?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(i.extend==null||e.doc.extend)&&(i.extend=e.doc.extend||n.shiftKey),i.addNew==null&&(i.addNew=I?n.metaKey:n.ctrlKey),i.moveOnDrag==null&&(i.moveOnDrag=!(I?n.altKey:n.ctrlKey)),i}function Mh(e,t,n,r){c?setTimeout(gt(zs,e),0):e.curOp.focus=ve(te(e));var i=Lh(e,n,r),u=e.doc.sel,h;e.options.dragDrop&&Hc&&!e.isReadOnly()&&n=="single"&&(h=u.contains(t))>-1&&(pe((h=u.ranges[h]).from(),t)<0||t.xRel>0)&&(pe(h.to(),t)>0||t.xRel<0)?_h(e,r,t,i):Bh(e,r,t,i)}function _h(e,t,n,r){var i=e.display,u=!1,h=tt(e,function(b){m&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:La(e)),Lt(i.wrapper.ownerDocument,"mouseup",h),Lt(i.wrapper.ownerDocument,"mousemove",g),Lt(i.scroller,"dragstart",v),Lt(i.scroller,"drop",h),u||(mt(b),r.addNew||Xi(e.doc,n,null,null,r.extend),m&&!F||c&&d==9?setTimeout(function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()},20):i.input.focus())}),g=function(b){u=u||Math.abs(t.clientX-b.clientX)+Math.abs(t.clientY-b.clientY)>=10},v=function(){return u=!0};m&&(i.scroller.draggable=!0),e.state.draggingText=h,h.copy=!r.moveOnDrag,ue(i.wrapper.ownerDocument,"mouseup",h),ue(i.wrapper.ownerDocument,"mousemove",g),ue(i.scroller,"dragstart",v),ue(i.scroller,"drop",h),e.state.delayingBlurEvent=!0,setTimeout(function(){return i.input.focus()},20),i.scroller.dragDrop&&i.scroller.dragDrop()}function zu(e,t,n){if(n=="char")return new Ee(t,t);if(n=="word")return e.findWordAt(t);if(n=="line")return new Ee(X(t.line,0),ge(e.doc,X(t.line+1,0)));var r=n(e,t);return new Ee(r.from,r.to)}function Bh(e,t,n,r){c&&La(e);var i=e.display,u=e.doc;mt(t);var h,g,v=u.sel,b=v.ranges;if(r.addNew&&!r.extend?(g=u.sel.contains(n),g>-1?h=b[g]:h=new Ee(n,n)):(h=u.sel.primary(),g=u.sel.primIndex),r.unit=="rectangle")r.addNew||(h=new Ee(n,n)),n=Or(e,t,!0,!0),g=-1;else{var w=zu(e,n,r.unit);r.extend?h=Ua(h,w.anchor,w.head,r.extend):h=w}r.addNew?g==-1?(g=b.length,lt(u,qt(e,b.concat([h]),g),{scroll:!1,origin:"*mouse"})):b.length>1&&b[g].empty()&&r.unit=="char"&&!r.extend?(lt(u,qt(e,b.slice(0,g).concat(b.slice(g+1)),0),{scroll:!1,origin:"*mouse"}),v=u.sel):ja(u,g,h,Tn):(g=0,lt(u,new Mt([h],0),Tn),v=u.sel);var k=n;function B(J){if(pe(k,J)!=0)if(k=J,r.unit=="rectangle"){for(var ne=[],se=e.options.tabSize,ae=Ye(oe(u,n.line).text,n.ch,se),xe=Ye(oe(u,J.line).text,J.ch,se),Te=Math.min(ae,xe),nt=Math.max(ae,xe),Pe=Math.min(n.line,J.line),St=Math.min(e.lastLine(),Math.max(n.line,J.line));Pe<=St;Pe++){var xt=oe(u,Pe).text,Xe=Kt(xt,Te,se);Te==nt?ne.push(new Ee(X(Pe,Xe),X(Pe,Xe))):xt.length>Xe&&ne.push(new Ee(X(Pe,Xe),X(Pe,Kt(xt,nt,se))))}ne.length||ne.push(new Ee(n,n)),lt(u,qt(e,v.ranges.slice(0,g).concat(ne),g),{origin:"*mouse",scroll:!1}),e.scrollIntoView(J)}else{var Dt=h,ot=zu(e,J,r.unit),Qe=Dt.anchor,Ke;pe(ot.anchor,Qe)>0?(Ke=ot.head,Qe=Ei(Dt.from(),ot.anchor)):(Ke=ot.anchor,Qe=Si(Dt.to(),ot.head));var Re=v.ranges.slice(0);Re[g]=Nh(e,new Ee(ge(u,Qe),Ke)),lt(u,qt(e,Re,g),Tn)}}var M=i.wrapper.getBoundingClientRect(),z=0;function R(J){var ne=++z,se=Or(e,J,!0,r.unit=="rectangle");if(se)if(pe(se,k)!=0){e.curOp.focus=ve(te(e)),B(se);var ae=Ri(i,u);(se.line>=ae.to||se.lineM.bottom?20:0;xe&&setTimeout(tt(e,function(){z==ne&&(i.scroller.scrollTop+=xe,R(J))}),50)}}function Y(J){e.state.selectingText=!1,z=1/0,J&&(mt(J),i.input.focus()),Lt(i.wrapper.ownerDocument,"mousemove",Q),Lt(i.wrapper.ownerDocument,"mouseup",V),u.history.lastSelOrigin=null}var Q=tt(e,function(J){J.buttons===0||!Yl(J)?Y(J):R(J)}),V=tt(e,Y);e.state.selectingText=V,ue(i.wrapper.ownerDocument,"mousemove",Q),ue(i.wrapper.ownerDocument,"mouseup",V)}function Nh(e,t){var n=t.anchor,r=t.head,i=oe(e.doc,n.line);if(pe(n,r)==0&&n.sticky==r.sticky)return t;var u=tr(i);if(!u)return t;var h=_n(u,n.ch,n.sticky),g=u[h];if(g.from!=n.ch&&g.to!=n.ch)return t;var v=h+(g.from==n.ch==(g.level!=1)?0:1);if(v==0||v==u.length)return t;var b;if(r.line!=n.line)b=(r.line-n.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var w=_n(u,r.ch,r.sticky),k=w-h||(r.ch-n.ch)*(g.level==1?-1:1);w==v-1||w==v?b=k<0:b=k>0}var B=u[v+(b?-1:0)],M=b==(B.level==1),z=M?B.from:B.to,R=M?"after":"before";return n.ch==z&&n.sticky==R?t:new Ee(new X(n.line,z,R),r)}function Hu(e,t,n,r){var i,u;if(t.touches)i=t.touches[0].clientX,u=t.touches[0].clientY;else try{i=t.clientX,u=t.clientY}catch{return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&mt(t);var h=e.display,g=h.lineDiv.getBoundingClientRect();if(u>g.bottom||!It(e,n))return Jo(t);u-=g.top-h.viewOffset;for(var v=0;v=i){var w=_r(e.doc,u),k=e.display.gutterSpecs[v];return je(e,n,e,w,k.className,t),Jo(t)}}}function Qa(e,t){return Hu(e,t,"gutterClick",!0)}function Ru(e,t){ir(e.display,t)||Oh(e,t)||Ve(e,t,"contextmenu")||me||e.display.input.onContextMenu(t)}function Oh(e,t){return It(e,"gutterContextMenu")?Hu(e,t,"gutterContextMenu",!1):!1}function Wu(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),Rn(e)}var gn={toString:function(){return"CodeMirror.Init"}},qu={},Vi={};function Ih(e){var t=e.optionHandlers;function n(r,i,u,h){e.defaults[r]=i,u&&(t[r]=h?function(g,v,b){b!=gn&&u(g,v,b)}:u)}e.defineOption=n,e.Init=gn,n("value","",function(r,i){return r.setValue(i)},!0),n("mode",null,function(r,i){r.doc.modeOption=i,Ra(r)},!0),n("indentUnit",2,Ra,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,function(r){Yn(r),Rn(r),bt(r)},!0),n("lineSeparator",null,function(r,i){if(r.doc.lineSep=i,!!i){var u=[],h=r.doc.first;r.doc.iter(function(v){for(var b=0;;){var w=v.text.indexOf(i,b);if(w==-1)break;b=w+i.length,u.push(X(h,w))}h++});for(var g=u.length-1;g>=0;g--)cn(r.doc,i,u[g],X(u[g].line,u[g].ch+i.length))}}),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,i,u){r.state.specialChars=new RegExp(i.source+(i.test(" ")?"":"| "),"g"),u!=gn&&r.refresh()}),n("specialCharPlaceholder",cd,function(r){return r.refresh()},!0),n("electricChars",!0),n("inputStyle",N?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),n("spellcheck",!1,function(r,i){return r.getInputField().spellcheck=i},!0),n("autocorrect",!1,function(r,i){return r.getInputField().autocorrect=i},!0),n("autocapitalize",!1,function(r,i){return r.getInputField().autocapitalize=i},!0),n("rtlMoveVisually",!q),n("wholeLineUpdateBefore",!0),n("theme","default",function(r){Wu(r),Kn(r)},!0),n("keyMap","default",function(r,i,u){var h=Ji(i),g=u!=gn&&Ji(u);g&&g.detach&&g.detach(r,h),h.attach&&h.attach(r,g||null)}),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,zh,!0),n("gutters",[],function(r,i){r.display.gutterSpecs=za(i,r.options.lineNumbers),Kn(r)},!0),n("fixedGutter",!0,function(r,i){r.display.gutters.style.left=i?Ea(r.display)+"px":"0",r.refresh()},!0),n("coverGutterNextToScrollbar",!1,function(r){return ln(r)},!0),n("scrollbarStyle","native",function(r){js(r),ln(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),n("lineNumbers",!1,function(r,i){r.display.gutterSpecs=za(r.options.gutters,i),Kn(r)},!0),n("firstLineNumber",1,Kn,!0),n("lineNumberFormatter",function(r){return r},Kn,!0),n("showCursorWhenSelecting",!1,Wn,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,function(r,i){i=="nocursor"&&(on(r),r.display.input.blur()),r.display.input.readOnlyChanged(i)}),n("screenReaderLabel",null,function(r,i){i=i===""?null:i,r.display.input.screenReaderLabelChanged(i)}),n("disableInput",!1,function(r,i){i||r.display.input.reset()},!0),n("dragDrop",!0,Ph),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,Wn,!0),n("singleCursorHeightPerLine",!0,Wn,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,Yn,!0),n("addModeClass",!1,Yn,!0),n("pollInterval",100),n("undoDepth",200,function(r,i){return r.doc.history.undoDepth=i}),n("historyEventDelay",1250),n("viewportMargin",10,function(r){return r.refresh()},!0),n("maxHighlightLength",1e4,Yn,!0),n("moveInputWithCursor",!0,function(r,i){i||r.display.input.resetPosition()}),n("tabindex",null,function(r,i){return r.display.input.getField().tabIndex=i||""}),n("autofocus",null),n("direction","ltr",function(r,i){return r.doc.setDirection(i)},!0),n("phrases",null)}function Ph(e,t,n){var r=n&&n!=gn;if(!t!=!r){var i=e.display.dragFunctions,u=t?ue:Lt;u(e.display.scroller,"dragstart",i.start),u(e.display.scroller,"dragenter",i.enter),u(e.display.scroller,"dragover",i.over),u(e.display.scroller,"dragleave",i.leave),u(e.display.scroller,"drop",i.drop)}}function zh(e){e.options.lineWrapping?(De(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(le(e.display.wrapper,"CodeMirror-wrap"),va(e)),Aa(e),bt(e),Rn(e),setTimeout(function(){return ln(e)},100)}function Oe(e,t){var n=this;if(!(this instanceof Oe))return new Oe(e,t);this.options=t=t?Tt(t):{},Tt(qu,t,!1);var r=t.value;typeof r=="string"?r=new yt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Oe.inputStyles[t.inputStyle](this),u=this.display=new Jd(e,r,i,t);u.wrapper.CodeMirror=this,Wu(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),js(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new ft,keySeq:null,specialChars:null},t.autofocus&&!N&&u.input.focus(),c&&d<11&&setTimeout(function(){return n.display.input.reset(!0)},20),Hh(this),vh(),Hr(this),this.curOp.forceUpdate=!0,eu(this,r),t.autofocus&&!N||this.hasFocus()?setTimeout(function(){n.hasFocus()&&!n.state.focused&&Ma(n)},20):on(this);for(var h in Vi)Vi.hasOwnProperty(h)&&Vi[h](this,t[h],gn);Ks(this),t.finishInit&&t.finishInit(this);for(var g=0;g20*20}ue(t.scroller,"touchstart",function(v){if(!Ve(e,v)&&!u(v)&&!Qa(e,v)){t.input.ensurePolled(),clearTimeout(n);var b=+new Date;t.activeTouch={start:b,moved:!1,prev:b-r.end<=300?r:null},v.touches.length==1&&(t.activeTouch.left=v.touches[0].pageX,t.activeTouch.top=v.touches[0].pageY)}}),ue(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),ue(t.scroller,"touchend",function(v){var b=t.activeTouch;if(b&&!ir(t,v)&&b.left!=null&&!b.moved&&new Date-b.start<300){var w=e.coordsChar(t.activeTouch,"page"),k;!b.prev||h(b,b.prev)?k=new Ee(w,w):!b.prev.prev||h(b,b.prev.prev)?k=e.findWordAt(w):k=new Ee(X(w.line,0),ge(e.doc,X(w.line+1,0))),e.setSelection(k.anchor,k.head),e.focus(),mt(v)}i()}),ue(t.scroller,"touchcancel",i),ue(t.scroller,"scroll",function(){t.scroller.clientHeight&&(Un(e,t.scroller.scrollTop),Pr(e,t.scroller.scrollLeft,!0),je(e,"scroll",e))}),ue(t.scroller,"mousewheel",function(v){return Qs(e,v)}),ue(t.scroller,"DOMMouseScroll",function(v){return Qs(e,v)}),ue(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(v){Ve(e,v)||Bn(v)},over:function(v){Ve(e,v)||(gh(e,v),Bn(v))},start:function(v){return ph(e,v)},drop:tt(e,hh),leave:function(v){Ve(e,v)||ku(e)}};var g=t.input.getField();ue(g,"keyup",function(v){return Ou.call(e,v)}),ue(g,"keydown",tt(e,Nu)),ue(g,"keypress",tt(e,Iu)),ue(g,"focus",function(v){return Ma(e,v)}),ue(g,"blur",function(v){return on(e,v)})}var Ja=[];Oe.defineInitHook=function(e){return Ja.push(e)};function li(e,t,n,r){var i=e.doc,u;n==null&&(n="add"),n=="smart"&&(i.mode.indent?u=On(e,t).state:n="prev");var h=e.options.tabSize,g=oe(i,t),v=Ye(g.text,null,h);g.stateAfter&&(g.stateAfter=null);var b=g.text.match(/^\s*/)[0],w;if(!r&&!/\S/.test(g.text))w=0,n="not";else if(n=="smart"&&(w=i.mode.indent(u,g.text.slice(b.length),g.text),w==Ze||w>150)){if(!r)return;n="prev"}n=="prev"?t>i.first?w=Ye(oe(i,t-1).text,null,h):w=0:n=="add"?w=v+e.options.indentUnit:n=="subtract"?w=v-e.options.indentUnit:typeof n=="number"&&(w=v+n),w=Math.max(0,w);var k="",B=0;if(e.options.indentWithTabs)for(var M=Math.floor(w/h);M;--M)B+=h,k+=" ";if(Bh,v=ta(t),b=null;if(g&&r.ranges.length>1)if(Ut&&Ut.text.join(` +`)==t){if(r.ranges.length%Ut.text.length==0){b=[];for(var w=0;w=0;B--){var M=r.ranges[B],z=M.from(),R=M.to();M.empty()&&(n&&n>0?z=X(z.line,z.ch-n):e.state.overwrite&&!g?R=X(R.line,Math.min(oe(u,R.line).text.length,R.ch+Ce(v).length)):g&&Ut&&Ut.lineWise&&Ut.text.join(` `)==v.join(` -`)&&(H=q=G(H.line,0)));var Y={from:H,to:q,text:m?m[B%m.length]:v,origin:i||(g?"paste":e.state.cutIncoming>d?"cut":"+input")};fn(e.doc,Y),et(e,"inputRead",e,Y)}t&&!g&&qu(e,t),an(e),e.curOp.updateInput<2&&(e.curOp.updateInput=k),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function Wu(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&kt(t,function(){return Ja(t,n,0,null,"paste")}),!0}function qu(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var u=e.getModeAt(i.head),d=!1;if(u.electricChars){for(var g=0;g-1){d=li(e,i.head.line,"smart");break}}else u.electricInput&&u.electricInput.test(ie(e.doc,i.head.line).text.slice(0,i.head.ch))&&(d=li(e,i.head.line,"smart"));d&&et(e,"electricInput",e,i.head.line)}}}function Uu(e){for(var t=[],n=[],r=0;ru&&(li(this,g.head.line,r,!0),u=g.head.line,d==this.doc.sel.primIndex&&an(this));else{var v=g.from(),m=g.to(),w=Math.max(u,v.line);u=Math.min(this.lastLine(),m.line-(m.ch?0:1))+1;for(var k=w;k0&&Ua(this.doc,d,new Ee(v,B[d].to()),vt)}}}),getTokenAt:function(r,i){return es(this,r,i)},getLineTokens:function(r,i){return es(this,G(r),i,!0)},getTokenTypeAt:function(r){r=me(this.doc,r);var i=Jl(this,ie(this.doc,r.line)),u=0,d=(i.length-1)/2,g=r.ch,v;if(g==0)v=i[2];else for(;;){var m=u+d>>1;if((m?i[m*2-1]:0)>=g)d=m;else if(i[m*2+1]v&&(r=v,d=!0),g=ie(this.doc,r)}else g=r;return Ni(this,g,{top:0,left:0},i||"page",u||d).top+(d?this.doc.height-nr(g):0)},defaultTextHeight:function(){return rn(this.display)},defaultCharWidth:function(){return nn(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,u,d,g){var v=this.display;r=Wt(this,me(this.doc,r));var m=r.bottom,w=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),v.sizer.appendChild(i),d=="over")m=r.top;else if(d=="above"||d=="near"){var k=Math.max(v.wrapper.clientHeight,this.doc.height),B=Math.max(v.sizer.clientWidth,v.lineSpace.clientWidth);(d=="above"||r.bottom+i.offsetHeight>k)&&r.top>i.offsetHeight?m=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=k&&(m=r.bottom),w+i.offsetWidth>B&&(w=B-i.offsetWidth)}i.style.top=m+"px",i.style.left=i.style.right="",g=="right"?(w=v.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(g=="left"?w=0:g=="middle"&&(w=(v.sizer.clientWidth-i.offsetWidth)/2),i.style.left=w+"px"),u&&Od(this,{left:w,top:m,right:w+i.offsetWidth,bottom:m+i.offsetHeight})},triggerOnKeyDown:dt(_u),triggerOnKeyPress:dt(Nu),triggerOnKeyUp:Bu,triggerOnMouseDown:dt(Ou),execCommand:function(r){if(ni.hasOwnProperty(r))return ni[r].call(null,this)},triggerElectric:dt(function(r){qu(this,r)}),findPosH:function(r,i,u,d){var g=1;i<0&&(g=-1,i=-i);for(var v=me(this.doc,r),m=0;m0&&w(u.charAt(d-1));)--d;for(;g.5||this.options.lineWrapping)&&Ea(this),Ue(this,"refresh",this)}),swapDoc:dt(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),$s(this,r),Rn(this),this.display.input.reset(),qn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,et(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Qr(e),e.registerHelper=function(r,i,u){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=u},e.registerGlobalHelper=function(r,i,u,d){e.registerHelper(r,i,d),n[r]._global.push({pred:u,val:d})}}function Va(e,t,n,r,i){var u=t,d=n,g=ie(e,t.line),v=i&&e.direction=="rtl"?-n:n;function m(){var $=t.line+v;return $=e.first+e.size?!1:(t=new G($,t.ch,t.sticky),g=ie(e,$))}function w($){var Q;if(r=="codepoint"){var te=g.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(te))Q=null;else{var le=n>0?te>=55296&&te<56320:te>=56320&&te<57343;Q=new G(t.line,Math.max(0,Math.min(g.text.length,t.ch+n*(le?2:1))),-n)}}else i?Q=yh(e.cm,g,t,n):Q=Ga(g,t,n);if(Q==null)if(!$&&m())t=Xa(i,e.cm,g,t.line,v);else return!1;else t=Q;return!0}if(r=="char"||r=="codepoint")w();else if(r=="column")w(!0);else if(r=="word"||r=="group")for(var k=null,B=r=="group",M=e.cm&&e.cm.getHelper(t,"wordChars"),H=!0;!(n<0&&!w(!H));H=!1){var q=g.text.charAt(t.ch)||` -`,Y=wi(q,M)?"w":B&&q==` -`?"n":!B||/\s/.test(q)?null:"p";if(B&&!H&&!Y&&(Y="s"),k&&k!=Y){n<0&&(n=1,w(),t.sticky="after");break}if(Y&&(k=Y),n>0&&!w(!H))break}var Z=Ki(e,t,u,d,!0);return la(u,Z)&&(Z.hitSide=!0),Z}function Gu(e,t,n,r){var i=e.doc,u=t.left,d;if(r=="page"){var g=Math.min(e.display.wrapper.clientHeight,he(e).innerHeight||i(e).documentElement.clientHeight),v=Math.max(g-.5*rn(e.display),3);d=(n>0?t.bottom:t.top)+n*v}else r=="line"&&(d=n>0?t.bottom+3:t.top-3);for(var m;m=wa(e,u,d),!!m.outside;){if(n<0?d<=0:d>=i.height){m.hitSide=!0;break}d+=n*5}return m}var Fe=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new ct,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};Fe.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,$a(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function u(g){for(var v=g.target;v;v=v.parentNode){if(v==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(v.className))break}return!1}fe(i,"paste",function(g){!u(g)||Ve(r,g)||Wu(g,r)||h<=11&&setTimeout(tt(r,function(){return t.updateFromDOM()}),20)}),fe(i,"compositionstart",function(g){t.composing={data:g.data,done:!1}}),fe(i,"compositionupdate",function(g){t.composing||(t.composing={data:g.data,done:!1})}),fe(i,"compositionend",function(g){t.composing&&(g.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),fe(i,"touchstart",function(){return n.forceCompositionEnd()}),fe(i,"input",function(){t.composing||t.readFromDOMSoon()});function d(g){if(!(!u(g)||Ve(r,g))){if(r.somethingSelected())Vi({lineWise:!1,text:r.getSelections()}),g.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var v=Uu(r);Vi({lineWise:!0,text:v.text}),g.type=="cut"&&r.operation(function(){r.setSelections(v.ranges,0,vt),r.replaceSelection("",null,"cut")})}else return;if(g.clipboardData){g.clipboardData.clearData();var m=Ut.text.join(` -`);if(g.clipboardData.setData("Text",m),g.clipboardData.getData("Text")==m){g.preventDefault();return}}var w=ju(),k=w.firstChild;$a(k),r.display.lineSpace.insertBefore(w,r.display.lineSpace.firstChild),k.value=Ut.text.join(` -`);var B=ue(we(i));A(k),setTimeout(function(){r.display.lineSpace.removeChild(w),B.focus(),B==i&&n.showPrimarySelection()},50)}}fe(i,"copy",d),fe(i,"cut",d)},Fe.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},Fe.prototype.prepareSelection=function(){var e=Os(this.cm,!1);return e.focus=ue(we(this.div))==this.div,e},Fe.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},Fe.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},Fe.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line=t.display.viewFrom&&Xu(t,r)||{node:g[0].measure.map[2],offset:0},m=i.linee.firstLine()&&(r=G(r.line-1,ie(e.doc,r.line-1).length)),i.ch==ie(e.doc,i.line).text.length&&i.linet.viewTo-1)return!1;var u,d,g;r.line==t.viewFrom||(u=Ir(e,r.line))==0?(d=Ae(t.view[0].line),g=t.view[0].node):(d=Ae(t.view[u].line),g=t.view[u-1].node.nextSibling);var v=Ir(e,i.line),m,w;if(v==t.view.length-1?(m=t.viewTo-1,w=t.lineDiv.lastChild):(m=Ae(t.view[v+1].line)-1,w=t.view[v+1].node.previousSibling),!g)return!1;for(var k=e.doc.splitLines(Rh(e,g,w,d,m)),B=Mr(e.doc,G(d,0),G(m,ie(e.doc,m).text.length));k.length>1&&B.length>1;)if(Ce(k)==Ce(B))k.pop(),B.pop(),m--;else if(k[0]==B[0])k.shift(),B.shift(),d++;else break;for(var M=0,H=0,q=k[0],Y=B[0],Z=Math.min(q.length,Y.length);Mr.ch&&$.charCodeAt($.length-H-1)==Q.charCodeAt(Q.length-H-1);)M--,H++;k[k.length-1]=$.slice(0,$.length-H).replace(/^\u200b+/,""),k[0]=k[0].slice(M).replace(/\u200b+$/,"");var le=G(d,M),oe=G(m,B.length?Ce(B).length-H:0);if(k.length>1||k[0]||ve(le,oe))return cn(e.doc,k,le,oe,"+input"),!0},Fe.prototype.ensurePolled=function(){this.forceCompositionEnd()},Fe.prototype.reset=function(){this.forceCompositionEnd()},Fe.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Fe.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},Fe.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&kt(this.cm,function(){return bt(e.cm)})},Fe.prototype.setUneditable=function(e){e.contentEditable="false"},Fe.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||tt(this.cm,Ja)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},Fe.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},Fe.prototype.onContextMenu=function(){},Fe.prototype.resetPosition=function(){},Fe.prototype.needsContentAttribute=!0;function Xu(e,t){var n=ya(e,t.line);if(!n||n.hidden)return null;var r=ie(e.doc,t.line),i=Ds(n,r,t.line),u=tr(r,e.doc.direction),d="left";if(u){var g=_n(u,t.ch);d=g%2?"right":"left"}var v=ks(i.map,t.ch,d);return v.offset=v.collapse=="right"?v.end:v.start,v}function Hh(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function vn(e,t){return t&&(e.bad=!0),e}function Rh(e,t,n,r,i){var u="",d=!1,g=e.doc.lineSeparator(),v=!1;function m(M){return function(H){return H.id==M}}function w(){d&&(u+=g,v&&(u+=g),d=v=!1)}function k(M){M&&(w(),u+=M)}function B(M){if(M.nodeType==1){var H=M.getAttribute("cm-text");if(H){k(H);return}var q=M.getAttribute("cm-marker"),Y;if(q){var Z=e.findMarks(G(r,0),G(i+1,0),m(+q));Z.length&&(Y=Z[0].find(0))&&k(Mr(e.doc,Y.from,Y.to).join(g));return}if(M.getAttribute("contenteditable")=="false")return;var $=/^(pre|div|p|li|table|br)$/i.test(M.nodeName);if(!/^br$/i.test(M.nodeName)&&M.textContent.length==0)return;$&&w();for(var Q=0;Q=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),fe(i,"paste",function(d){Ve(r,d)||Wu(d,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function u(d){if(!Ve(r,d)){if(r.somethingSelected())Vi({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var g=Uu(r);Vi({lineWise:!0,text:g.text}),d.type=="cut"?r.setSelections(g.ranges,null,vt):(n.prevInput="",i.value=g.text.join(` -`),A(i))}else return;d.type=="cut"&&(r.state.cutIncoming=+new Date)}}fe(i,"cut",u),fe(i,"copy",u),fe(e.scroller,"paste",function(d){if(!(ir(e,d)||Ve(r,d))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var g=new Event("paste");g.clipboardData=d.clipboardData,i.dispatchEvent(g)}}),fe(e.lineSpace,"selectstart",function(d){ir(e,d)||mt(d)}),fe(i,"compositionstart",function(){var d=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:d,range:r.markText(d,r.getCursor("to"),{className:"CodeMirror-composing"})}}),fe(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},We.prototype.createField=function(e){this.wrapper=ju(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;$a(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},We.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},We.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=Os(e);if(e.options.moveInputWithCursor){var i=Wt(e,n.sel.primary().head,"div"),u=t.wrapper.getBoundingClientRect(),d=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+d.top-u.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+d.left-u.left))}return r},We.prototype.showSelection=function(e){var t=this.cm,n=t.display;se(n.cursorDiv,e.cursors),se(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},We.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&A(this.textarea),c&&h>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",c&&h>=9&&(this.hasSelection=null));this.resetting=!1}},We.prototype.getField=function(){return this.textarea},We.prototype.supportsTouch=function(){return!1},We.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||ue(we(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},We.prototype.blur=function(){this.textarea.blur()},We.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},We.prototype.receivedFocus=function(){this.slowPoll()},We.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},We.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},We.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||Rc(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(c&&h>=9&&this.hasSelection===i||P&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var u=i.charCodeAt(0);if(u==8203&&!r&&(r="\u200B"),u==8666)return this.reset(),this.cm.execCommand("undo")}for(var d=0,g=Math.min(r.length,i.length);d1e3||i.indexOf(` -`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},We.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},We.prototype.onKeyPress=function(){c&&h>=9&&(this.hasSelection=null),this.fastPoll()},We.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var u=Or(n,e),d=r.scroller.scrollTop;if(!u||E)return;var g=n.options.resetSelectionOnContextMenu;g&&n.doc.sel.contains(u)==-1&&tt(n,st)(n.doc,yr(u),vt);var v=i.style.cssText,m=t.wrapper.style.cssText,w=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px; +`)&&(z=R=X(z.line,0)));var Y={from:z,to:R,text:b?b[B%b.length]:v,origin:i||(g?"paste":e.state.cutIncoming>h?"cut":"+input")};fn(e.doc,Y),et(e,"inputRead",e,Y)}t&&!g&&ju(e,t),an(e),e.curOp.updateInput<2&&(e.curOp.updateInput=k),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function Uu(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&kt(t,function(){return $a(t,n,0,null,"paste")}),!0}function ju(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var n=e.doc.sel,r=n.ranges.length-1;r>=0;r--){var i=n.ranges[r];if(!(i.head.ch>100||r&&n.ranges[r-1].head.line==i.head.line)){var u=e.getModeAt(i.head),h=!1;if(u.electricChars){for(var g=0;g-1){h=li(e,i.head.line,"smart");break}}else u.electricInput&&u.electricInput.test(oe(e.doc,i.head.line).text.slice(0,i.head.ch))&&(h=li(e,i.head.line,"smart"));h&&et(e,"electricInput",e,i.head.line)}}}function Gu(e){for(var t=[],n=[],r=0;ru&&(li(this,g.head.line,r,!0),u=g.head.line,h==this.doc.sel.primIndex&&an(this));else{var v=g.from(),b=g.to(),w=Math.max(u,v.line);u=Math.min(this.lastLine(),b.line-(b.ch?0:1))+1;for(var k=w;k0&&ja(this.doc,h,new Ee(v,B[h].to()),vt)}}}),getTokenAt:function(r,i){return rs(this,r,i)},getLineTokens:function(r,i){return rs(this,X(r),i,!0)},getTokenTypeAt:function(r){r=ge(this.doc,r);var i=Vl(this,oe(this.doc,r.line)),u=0,h=(i.length-1)/2,g=r.ch,v;if(g==0)v=i[2];else for(;;){var b=u+h>>1;if((b?i[b*2-1]:0)>=g)h=b;else if(i[b*2+1]v&&(r=v,h=!0),g=oe(this.doc,r)}else g=r;return Oi(this,g,{top:0,left:0},i||"page",u||h).top+(h?this.doc.height-nr(g):0)},defaultTextHeight:function(){return rn(this.display)},defaultCharWidth:function(){return nn(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,i,u,h,g){var v=this.display;r=Wt(this,ge(this.doc,r));var b=r.bottom,w=r.left;if(i.style.position="absolute",i.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(i),v.sizer.appendChild(i),h=="over")b=r.top;else if(h=="above"||h=="near"){var k=Math.max(v.wrapper.clientHeight,this.doc.height),B=Math.max(v.sizer.clientWidth,v.lineSpace.clientWidth);(h=="above"||r.bottom+i.offsetHeight>k)&&r.top>i.offsetHeight?b=r.top-i.offsetHeight:r.bottom+i.offsetHeight<=k&&(b=r.bottom),w+i.offsetWidth>B&&(w=B-i.offsetWidth)}i.style.top=b+"px",i.style.left=i.style.right="",g=="right"?(w=v.sizer.clientWidth-i.offsetWidth,i.style.right="0px"):(g=="left"?w=0:g=="middle"&&(w=(v.sizer.clientWidth-i.offsetWidth)/2),i.style.left=w+"px"),u&&Pd(this,{left:w,top:b,right:w+i.offsetWidth,bottom:b+i.offsetHeight})},triggerOnKeyDown:ct(Nu),triggerOnKeyPress:ct(Iu),triggerOnKeyUp:Ou,triggerOnMouseDown:ct(Pu),execCommand:function(r){if(ni.hasOwnProperty(r))return ni[r].call(null,this)},triggerElectric:ct(function(r){ju(this,r)}),findPosH:function(r,i,u,h){var g=1;i<0&&(g=-1,i=-i);for(var v=ge(this.doc,r),b=0;b0&&w(u.charAt(h-1));)--h;for(;g.5||this.options.lineWrapping)&&Aa(this),je(this,"refresh",this)}),swapDoc:ct(function(r){var i=this.doc;return i.cm=null,this.state.selectingText&&this.state.selectingText(),eu(this,r),Rn(this),this.display.input.reset(),qn(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,et(this,"swapDoc",this,i),i}),phrase:function(r){var i=this.options.phrases;return i&&Object.prototype.hasOwnProperty.call(i,r)?i[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},Qr(e),e.registerHelper=function(r,i,u){n.hasOwnProperty(r)||(n[r]=e[r]={_global:[]}),n[r][i]=u},e.registerGlobalHelper=function(r,i,u,h){e.registerHelper(r,i,h),n[r]._global.push({pred:u,val:h})}}function el(e,t,n,r,i){var u=t,h=n,g=oe(e,t.line),v=i&&e.direction=="rtl"?-n:n;function b(){var V=t.line+v;return V=e.first+e.size?!1:(t=new X(V,t.ch,t.sticky),g=oe(e,V))}function w(V){var J;if(r=="codepoint"){var ne=g.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(ne))J=null;else{var se=n>0?ne>=55296&&ne<56320:ne>=56320&&ne<57343;J=new X(t.line,Math.max(0,Math.min(g.text.length,t.ch+n*(se?2:1))),-n)}}else i?J=Dh(e.cm,g,t,n):J=Xa(g,t,n);if(J==null)if(!V&&b())t=Ka(i,e.cm,g,t.line,v);else return!1;else t=J;return!0}if(r=="char"||r=="codepoint")w();else if(r=="column")w(!0);else if(r=="word"||r=="group")for(var k=null,B=r=="group",M=e.cm&&e.cm.getHelper(t,"wordChars"),z=!0;!(n<0&&!w(!z));z=!1){var R=g.text.charAt(t.ch)||` +`,Y=Ci(R,M)?"w":B&&R==` +`?"n":!B||/\s/.test(R)?null:"p";if(B&&!z&&!Y&&(Y="s"),k&&k!=Y){n<0&&(n=1,w(),t.sticky="after");break}if(Y&&(k=Y),n>0&&!w(!z))break}var Q=Yi(e,t,u,h,!0);return sa(u,Q)&&(Q.hitSide=!0),Q}function Ku(e,t,n,r){var i=e.doc,u=t.left,h;if(r=="page"){var g=Math.min(e.display.wrapper.clientHeight,ye(e).innerHeight||i(e).documentElement.clientHeight),v=Math.max(g-.5*rn(e.display),3);h=(n>0?t.bottom:t.top)+n*v}else r=="line"&&(h=n>0?t.bottom+3:t.top-3);for(var b;b=Ca(e,u,h),!!b.outside;){if(n<0?h<=0:h>=i.height){b.hitSide=!0;break}h+=n*5}return b}var Fe=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new ft,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};Fe.prototype.init=function(e){var t=this,n=this,r=n.cm,i=n.div=e.lineDiv;i.contentEditable=!0,Va(i,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function u(g){for(var v=g.target;v;v=v.parentNode){if(v==i)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(v.className))break}return!1}ue(i,"paste",function(g){!u(g)||Ve(r,g)||Uu(g,r)||d<=11&&setTimeout(tt(r,function(){return t.updateFromDOM()}),20)}),ue(i,"compositionstart",function(g){t.composing={data:g.data,done:!1}}),ue(i,"compositionupdate",function(g){t.composing||(t.composing={data:g.data,done:!1})}),ue(i,"compositionend",function(g){t.composing&&(g.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),ue(i,"touchstart",function(){return n.forceCompositionEnd()}),ue(i,"input",function(){t.composing||t.readFromDOMSoon()});function h(g){if(!(!u(g)||Ve(r,g))){if(r.somethingSelected())eo({lineWise:!1,text:r.getSelections()}),g.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var v=Gu(r);eo({lineWise:!0,text:v.text}),g.type=="cut"&&r.operation(function(){r.setSelections(v.ranges,0,vt),r.replaceSelection("",null,"cut")})}else return;if(g.clipboardData){g.clipboardData.clearData();var b=Ut.text.join(` +`);if(g.clipboardData.setData("Text",b),g.clipboardData.getData("Text")==b){g.preventDefault();return}}var w=Xu(),k=w.firstChild;Va(k),r.display.lineSpace.insertBefore(w,r.display.lineSpace.firstChild),k.value=Ut.text.join(` +`);var B=ve(we(i));A(k),setTimeout(function(){r.display.lineSpace.removeChild(w),B.focus(),B==i&&n.showPrimarySelection()},50)}}ue(i,"copy",h),ue(i,"cut",h)},Fe.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},Fe.prototype.prepareSelection=function(){var e=Ps(this.cm,!1);return e.focus=ve(we(this.div))==this.div,e},Fe.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},Fe.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},Fe.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,n=t.doc.sel.primary(),r=n.from(),i=n.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||i.line=t.display.viewFrom&&Yu(t,r)||{node:g[0].measure.map[2],offset:0},b=i.linee.firstLine()&&(r=X(r.line-1,oe(e.doc,r.line-1).length)),i.ch==oe(e.doc,i.line).text.length&&i.linet.viewTo-1)return!1;var u,h,g;r.line==t.viewFrom||(u=Ir(e,r.line))==0?(h=Ae(t.view[0].line),g=t.view[0].node):(h=Ae(t.view[u].line),g=t.view[u-1].node.nextSibling);var v=Ir(e,i.line),b,w;if(v==t.view.length-1?(b=t.viewTo-1,w=t.lineDiv.lastChild):(b=Ae(t.view[v+1].line)-1,w=t.view[v+1].node.previousSibling),!g)return!1;for(var k=e.doc.splitLines(qh(e,g,w,h,b)),B=Mr(e.doc,X(h,0),X(b,oe(e.doc,b).text.length));k.length>1&&B.length>1;)if(Ce(k)==Ce(B))k.pop(),B.pop(),b--;else if(k[0]==B[0])k.shift(),B.shift(),h++;else break;for(var M=0,z=0,R=k[0],Y=B[0],Q=Math.min(R.length,Y.length);Mr.ch&&V.charCodeAt(V.length-z-1)==J.charCodeAt(J.length-z-1);)M--,z++;k[k.length-1]=V.slice(0,V.length-z).replace(/^\u200b+/,""),k[0]=k[0].slice(M).replace(/\u200b+$/,"");var se=X(h,M),ae=X(b,B.length?Ce(B).length-z:0);if(k.length>1||k[0]||pe(se,ae))return cn(e.doc,k,se,ae,"+input"),!0},Fe.prototype.ensurePolled=function(){this.forceCompositionEnd()},Fe.prototype.reset=function(){this.forceCompositionEnd()},Fe.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Fe.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},Fe.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&kt(this.cm,function(){return bt(e.cm)})},Fe.prototype.setUneditable=function(e){e.contentEditable="false"},Fe.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||tt(this.cm,$a)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},Fe.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},Fe.prototype.onContextMenu=function(){},Fe.prototype.resetPosition=function(){},Fe.prototype.needsContentAttribute=!0;function Yu(e,t){var n=xa(e,t.line);if(!n||n.hidden)return null;var r=oe(e.doc,t.line),i=Cs(n,r,t.line),u=tr(r,e.doc.direction),h="left";if(u){var g=_n(u,t.ch);h=g%2?"right":"left"}var v=Es(i.map,t.ch,h);return v.offset=v.collapse=="right"?v.end:v.start,v}function Wh(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function vn(e,t){return t&&(e.bad=!0),e}function qh(e,t,n,r,i){var u="",h=!1,g=e.doc.lineSeparator(),v=!1;function b(M){return function(z){return z.id==M}}function w(){h&&(u+=g,v&&(u+=g),h=v=!1)}function k(M){M&&(w(),u+=M)}function B(M){if(M.nodeType==1){var z=M.getAttribute("cm-text");if(z){k(z);return}var R=M.getAttribute("cm-marker"),Y;if(R){var Q=e.findMarks(X(r,0),X(i+1,0),b(+R));Q.length&&(Y=Q[0].find(0))&&k(Mr(e.doc,Y.from,Y.to).join(g));return}if(M.getAttribute("contenteditable")=="false")return;var V=/^(pre|div|p|li|table|br)$/i.test(M.nodeName);if(!/^br$/i.test(M.nodeName)&&M.textContent.length==0)return;V&&w();for(var J=0;J=9&&t.hasSelection&&(t.hasSelection=null),n.poll()}),ue(i,"paste",function(h){Ve(r,h)||Uu(h,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())});function u(h){if(!Ve(r,h)){if(r.somethingSelected())eo({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var g=Gu(r);eo({lineWise:!0,text:g.text}),h.type=="cut"?r.setSelections(g.ranges,null,vt):(n.prevInput="",i.value=g.text.join(` +`),A(i))}else return;h.type=="cut"&&(r.state.cutIncoming=+new Date)}}ue(i,"cut",u),ue(i,"copy",u),ue(e.scroller,"paste",function(h){if(!(ir(e,h)||Ve(r,h))){if(!i.dispatchEvent){r.state.pasteIncoming=+new Date,n.focus();return}var g=new Event("paste");g.clipboardData=h.clipboardData,i.dispatchEvent(g)}}),ue(e.lineSpace,"selectstart",function(h){ir(e,h)||mt(h)}),ue(i,"compositionstart",function(){var h=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:h,range:r.markText(h,r.getCursor("to"),{className:"CodeMirror-composing"})}}),ue(i,"compositionend",function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)})},qe.prototype.createField=function(e){this.wrapper=Xu(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;Va(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},qe.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},qe.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=Ps(e);if(e.options.moveInputWithCursor){var i=Wt(e,n.sel.primary().head,"div"),u=t.wrapper.getBoundingClientRect(),h=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+h.top-u.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+h.left-u.left))}return r},qe.prototype.showSelection=function(e){var t=this.cm,n=t.display;ee(n.cursorDiv,e.cursors),ee(n.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},qe.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&A(this.textarea),c&&d>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",c&&d>=9&&(this.hasSelection=null));this.resetting=!1}},qe.prototype.getField=function(){return this.textarea},qe.prototype.supportsTouch=function(){return!1},qe.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!N||ve(we(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},qe.prototype.blur=function(){this.textarea.blur()},qe.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},qe.prototype.receivedFocus=function(){this.slowPoll()},qe.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},qe.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function n(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,n)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,n)},qe.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||qc(n)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var i=n.value;if(i==r&&!t.somethingSelected())return!1;if(c&&d>=9&&this.hasSelection===i||I&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var u=i.charCodeAt(0);if(u==8203&&!r&&(r="\u200B"),u==8666)return this.reset(),this.cm.execCommand("undo")}for(var h=0,g=Math.min(r.length,i.length);h1e3||i.indexOf(` +`)>-1?n.value=e.prevInput="":e.prevInput=i,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},qe.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},qe.prototype.onKeyPress=function(){c&&d>=9&&(this.hasSelection=null),this.fastPoll()},qe.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var u=Or(n,e),h=r.scroller.scrollTop;if(!u||S)return;var g=n.options.resetSelectionOnContextMenu;g&&n.doc.sel.contains(u)==-1&&tt(n,lt)(n.doc,yr(u),vt);var v=i.style.cssText,b=t.wrapper.style.cssText,w=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",i.style.cssText=`position: absolute; width: 30px; height: 30px; top: `+(e.clientY-w.top-5)+"px; left: "+(e.clientX-w.left-5)+`px; z-index: 1000; background: `+(c?"rgba(255, 255, 255, .05)":"transparent")+`; - outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var k;b&&(k=i.ownerDocument.defaultView.scrollY),r.input.focus(),b&&i.ownerDocument.defaultView.scrollTo(null,k),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=M,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function B(){if(i.selectionStart!=null){var q=n.somethingSelected(),Y="\u200B"+(q?i.value:"");i.value="\u21DA",i.value=Y,t.prevInput=q?"":"\u200B",i.selectionStart=1,i.selectionEnd=Y.length,r.selForContextMenu=n.doc.sel}}function M(){if(t.contextMenuPending==M&&(t.contextMenuPending=!1,t.wrapper.style.cssText=m,i.style.cssText=v,c&&h<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=d),i.selectionStart!=null)){(!c||c&&h<9)&&B();var q=0,Y=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="\u200B"?tt(n,cu)(n):q++<10?r.detectingSelectAll=setTimeout(Y,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(Y,200)}}if(c&&h>=9&&B(),be){Bn(e);var H=function(){Lt(window,"mouseup",H),setTimeout(M,20)};fe(window,"mouseup",H)}else setTimeout(M,50)},We.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},We.prototype.setUneditable=function(){},We.prototype.needsContentAttribute=!1;function qh(e,t){if(t=t?Tt(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=ue(we(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=g.getValue()}var i;if(e.form&&(fe(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var u=e.form;i=u.submit;try{var d=u.submit=function(){r(),u.submit=i,u.submit(),u.submit=d}}catch{}}t.finishInit=function(v){v.save=r,v.getTextArea=function(){return e},v.toTextArea=function(){v.toTextArea=isNaN,r(),e.parentNode.removeChild(v.getWrapperElement()),e.style.display="",e.form&&(Lt(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var g=Ne(function(v){return e.parentNode.insertBefore(v,e.nextSibling)},t);return g}function Uh(e){e.off=Lt,e.on=fe,e.wheelEventPixels=Qd,e.Doc=yt,e.splitLines=ea,e.countColumn=Ke,e.findColumn=Kt,e.isWordChar=Ko,e.Pass=Ye,e.signal=Ue,e.Line=Vr,e.changeEnd=xr,e.scrollbarModel=Ws,e.Pos=G,e.cmpPos=ve,e.modes=ra,e.mimeModes=Jr,e.resolveMode=Ci,e.getMode=na,e.modeExtensions=$r,e.extendMode=Gc,e.copyState=Lr,e.startState=Kl,e.innerMode=ia,e.commands=ni,e.keyMap=ar,e.keyName=Au,e.isModifierKey=Su,e.lookupKey=hn,e.normalizeKeyMap=bh,e.StringStream=je,e.SharedTextMarker=ei,e.TextMarker=wr,e.LineWidget=Vn,e.e_preventDefault=mt,e.e_stopPropagation=Gl,e.e_stop=Bn,e.addClass=De,e.contains=K,e.rmClass=ae,e.keyNames=Cr}Nh(Ne),zh(Ne);var jh="iter insert remove copy getEditor constructor".split(" ");for(var to in yt.prototype)yt.prototype.hasOwnProperty(to)&&Be(jh,to)<0&&(Ne.prototype[to]=function(e){return function(){return e.apply(this.doc,arguments)}}(yt.prototype[to]));return Qr(yt),Ne.inputStyles={textarea:We,contenteditable:Fe},Ne.defineMode=function(e){!Ne.defaults.mode&&e!="null"&&(Ne.defaults.mode=e),Uc.apply(this,arguments)},Ne.defineMIME=jc,Ne.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Ne.defineMIME("text/plain","null"),Ne.defineExtension=function(e,t){Ne.prototype[e]=t},Ne.defineDocExtension=function(e,t){yt.prototype[e]=t},Ne.fromTextArea=qh,Uh(Ne),Ne.version="5.65.21",Ne})});var Qu=lt((Yu,Zu)=>{(function(o){typeof Yu=="object"&&typeof Zu=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l=/^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,s=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,a=/[*+-]\s/;o.commands.newlineAndIndentContinueMarkdownList=function(p){if(p.getOption("disableInput"))return o.Pass;for(var c=p.listSelections(),h=[],b=0;b\s*$/.test(_),N=!/>\s*$/.test(_);(O||N)&&p.replaceRange("",{line:y.line,ch:0},{line:y.line,ch:y.ch+1}),h[b]=` -`}else{var P=L[1],I=L[5],W=!(a.test(L[2])||L[2].indexOf(">")>=0),j=W?parseInt(L[3],10)+1+L[4]:L[2].replace("x"," ");h[b]=` -`+P+j+I,W&&f(p,y)}}p.replaceSelections(h)};function f(p,c){var h=c.line,b=0,y=0,x=l.exec(p.getLine(h)),C=x[1];do{b+=1;var E=h+b,F=p.getLine(E),_=l.exec(F);if(_){var L=_[1],T=parseInt(x[3],10)+b-y,O=parseInt(_[3],10),N=O;if(C===L&&!isNaN(O))T===O&&(N=O+1),T>O&&(N=T+1),p.replaceRange(F.replace(l,L+N+_[4]+_[5]),{line:E,ch:0},{line:E,ch:F.length});else{if(C.length>L.length||C.length{var Ju=Et();Ju.commands.tabAndIndentMarkdownList=function(o){var l=o.listSelections(),s=l[0].head,a=o.getStateAfter(s.line),f=a.list!==!1;if(f){o.execCommand("indentMore");return}if(o.options.indentWithTabs)o.execCommand("insertTab");else{var p=Array(o.options.tabSize+1).join(" ");o.replaceSelection(p)}};Ju.commands.shiftTabAndUnindentMarkdownList=function(o){var l=o.listSelections(),s=l[0].head,a=o.getStateAfter(s.line),f=a.list!==!1;if(f){o.execCommand("indentLess");return}if(o.options.indentWithTabs)o.execCommand("insertTab");else{var p=Array(o.options.tabSize+1).join(" ");o.replaceSelection(p)}}});var tf=lt((Vu,ef)=>{(function(o){typeof Vu=="object"&&typeof ef=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("fullScreen",!1,function(a,f,p){p==o.Init&&(p=!1),!p!=!f&&(f?l(a):s(a))});function l(a){var f=a.getWrapperElement();a.state.fullScreenRestore={scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,width:f.style.width,height:f.style.height},f.style.width="",f.style.height="auto",f.className+=" CodeMirror-fullscreen",document.documentElement.style.overflow="hidden",a.refresh()}function s(a){var f=a.getWrapperElement();f.className=f.className.replace(/\s*CodeMirror-fullscreen\b/,""),document.documentElement.style.overflow="";var p=a.state.fullScreenRestore;f.style.width=p.width,f.style.height=p.height,window.scrollTo(p.scrollLeft,p.scrollTop),a.refresh()}})});var il=lt((rf,nf)=>{(function(o){typeof rf=="object"&&typeof nf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l={autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0},s={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};o.defineMode("xml",function(a,f){var p=a.indentUnit,c={},h=f.htmlMode?l:s;for(var b in h)c[b]=h[b];for(var b in f)c[b]=f[b];var y,x;function C(S,R){function z(De){return R.tokenize=De,De(S,R)}var K=S.next();if(K=="<")return S.eat("!")?S.eat("[")?S.match("CDATA[")?z(_("atom","]]>")):null:S.match("--")?z(_("comment","-->")):S.match("DOCTYPE",!0,!0)?(S.eatWhile(/[\w\._\-]/),z(L(1))):null:S.eat("?")?(S.eatWhile(/[\w\._\-]/),R.tokenize=_("meta","?>"),"meta"):(y=S.eat("/")?"closeTag":"openTag",R.tokenize=E,"tag bracket");if(K=="&"){var ue;return S.eat("#")?S.eat("x")?ue=S.eatWhile(/[a-fA-F\d]/)&&S.eat(";"):ue=S.eatWhile(/[\d]/)&&S.eat(";"):ue=S.eatWhile(/[\w\.\-:]/)&&S.eat(";"),ue?"atom":"error"}else return S.eatWhile(/[^&<]/),null}C.isInText=!0;function E(S,R){var z=S.next();if(z==">"||z=="/"&&S.eat(">"))return R.tokenize=C,y=z==">"?"endTag":"selfcloseTag","tag bracket";if(z=="=")return y="equals",null;if(z=="<"){R.tokenize=C,R.state=I,R.tagName=R.tagStart=null;var K=R.tokenize(S,R);return K?K+" tag error":"tag error"}else return/[\'\"]/.test(z)?(R.tokenize=F(z),R.stringStartCol=S.column(),R.tokenize(S,R)):(S.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function F(S){var R=function(z,K){for(;!z.eol();)if(z.next()==S){K.tokenize=E;break}return"string"};return R.isInAttribute=!0,R}function _(S,R){return function(z,K){for(;!z.eol();){if(z.match(R)){K.tokenize=C;break}z.next()}return S}}function L(S){return function(R,z){for(var K;(K=R.next())!=null;){if(K=="<")return z.tokenize=L(S+1),z.tokenize(R,z);if(K==">")if(S==1){z.tokenize=C;break}else return z.tokenize=L(S-1),z.tokenize(R,z)}return"meta"}}function T(S){return S&&S.toLowerCase()}function O(S,R,z){this.prev=S.context,this.tagName=R||"",this.indent=S.indented,this.startOfLine=z,(c.doNotIndent.hasOwnProperty(R)||S.context&&S.context.noIndent)&&(this.noIndent=!0)}function N(S){S.context&&(S.context=S.context.prev)}function P(S,R){for(var z;;){if(!S.context||(z=S.context.tagName,!c.contextGrabbers.hasOwnProperty(T(z))||!c.contextGrabbers[T(z)].hasOwnProperty(T(R))))return;N(S)}}function I(S,R,z){return S=="openTag"?(z.tagStart=R.column(),W):S=="closeTag"?j:I}function W(S,R,z){return S=="word"?(z.tagName=R.current(),x="tag",U):c.allowMissingTagName&&S=="endTag"?(x="tag bracket",U(S,R,z)):(x="error",W)}function j(S,R,z){if(S=="word"){var K=R.current();return z.context&&z.context.tagName!=K&&c.implicitlyClosed.hasOwnProperty(T(z.context.tagName))&&N(z),z.context&&z.context.tagName==K||c.matchClosing===!1?(x="tag",X):(x="tag error",be)}else return c.allowMissingTagName&&S=="endTag"?(x="tag bracket",X(S,R,z)):(x="error",be)}function X(S,R,z){return S!="endTag"?(x="error",X):(N(z),I)}function be(S,R,z){return x="error",X(S,R,z)}function U(S,R,z){if(S=="word")return x="attribute",ae;if(S=="endTag"||S=="selfcloseTag"){var K=z.tagName,ue=z.tagStart;return z.tagName=z.tagStart=null,S=="selfcloseTag"||c.autoSelfClosers.hasOwnProperty(T(K))?P(z,K):(P(z,K),z.context=new O(z,K,ue==z.indented)),I}return x="error",U}function ae(S,R,z){return S=="equals"?ne:(c.allowMissing||(x="error"),U(S,R,z))}function ne(S,R,z){return S=="string"?se:S=="word"&&c.allowUnquoted?(x="string",U):(x="error",U(S,R,z))}function se(S,R,z){return S=="string"?se:U(S,R,z)}return{startState:function(S){var R={tokenize:C,state:I,indented:S||0,tagName:null,tagStart:null,context:null};return S!=null&&(R.baseIndent=S),R},token:function(S,R){if(!R.tagName&&S.sol()&&(R.indented=S.indentation()),S.eatSpace())return null;y=null;var z=R.tokenize(S,R);return(z||y)&&z!="comment"&&(x=null,R.state=R.state(y||z,S,R),x&&(z=x=="error"?z+" error":x)),z},indent:function(S,R,z){var K=S.context;if(S.tokenize.isInAttribute)return S.tagStart==S.indented?S.stringStartCol+1:S.indented+p;if(K&&K.noIndent)return o.Pass;if(S.tokenize!=E&&S.tokenize!=C)return z?z.match(/^(\s*)/)[0].length:0;if(S.tagName)return c.multilineTagIndentPastTag!==!1?S.tagStart+S.tagName.length+2:S.tagStart+p*(c.multilineTagIndentFactor||1);if(c.alignCDATA&&/$/,blockCommentStart:"",configuration:c.htmlMode?"html":"xml",helperType:c.htmlMode?"html":"xml",skipAttribute:function(S){S.state==ne&&(S.state=U)},xmlCurrentTag:function(S){return S.tagName?{name:S.tagName,close:S.type=="closeTag"}:null},xmlCurrentContext:function(S){for(var R=[],z=S.context;z;z=z.prev)R.push(z.tagName);return R.reverse()}}}),o.defineMIME("text/xml","xml"),o.defineMIME("application/xml","xml"),o.mimeModes.hasOwnProperty("text/html")||o.defineMIME("text/html",{name:"xml",htmlMode:!0})})});var lf=lt((of,af)=>{(function(o){typeof of=="object"&&typeof af=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var l=0;l-1&&a.substring(c+1,a.length);if(h)return o.findModeByExtension(h)},o.findModeByName=function(a){a=a.toLowerCase();for(var f=0;f{(function(o){typeof sf=="object"&&typeof uf=="object"?o(Et(),il(),lf()):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../xml/xml","../meta"],o):o(CodeMirror)})(function(o){"use strict";o.defineMode("markdown",function(l,s){var a=o.getMode(l,"text/html"),f=a.name=="null";function p(A){if(o.findModeByName){var D=o.findModeByName(A);D&&(A=D.mime||D.mimes[0])}var ee=o.getMode(l,A);return ee.name=="null"?null:ee}s.highlightFormatting===void 0&&(s.highlightFormatting=!1),s.maxBlockquoteDepth===void 0&&(s.maxBlockquoteDepth=0),s.taskLists===void 0&&(s.taskLists=!1),s.strikethrough===void 0&&(s.strikethrough=!1),s.emoji===void 0&&(s.emoji=!1),s.fencedCodeBlockHighlighting===void 0&&(s.fencedCodeBlockHighlighting=!0),s.fencedCodeBlockDefaultMode===void 0&&(s.fencedCodeBlockDefaultMode="text/plain"),s.xml===void 0&&(s.xml=!0),s.tokenTypeOverrides===void 0&&(s.tokenTypeOverrides={});var c={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var h in c)c.hasOwnProperty(h)&&s.tokenTypeOverrides[h]&&(c[h]=s.tokenTypeOverrides[h]);var b=/^([*\-_])(?:\s*\1){2,}\s*$/,y=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,x=/^\[(x| )\](?=\s)/i,C=s.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,E=/^ {0,3}(?:\={1,}|-{2,})\s*$/,F=/^[^#!\[\]*_\\<>` "'(~:]+/,_=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,L=/^\s*\[[^\]]+?\]:.*$/,T=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\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\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\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]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,O=" ";function N(A,D,ee){return D.f=D.inline=ee,ee(A,D)}function P(A,D,ee){return D.f=D.block=ee,ee(A,D)}function I(A){return!A||!/\S/.test(A.string)}function W(A){if(A.linkTitle=!1,A.linkHref=!1,A.linkText=!1,A.em=!1,A.strong=!1,A.strikethrough=!1,A.quote=0,A.indentedCode=!1,A.f==X){var D=f;if(!D){var ee=o.innerMode(a,A.htmlState);D=ee.mode.name=="xml"&&ee.state.tagStart===null&&!ee.state.context&&ee.state.tokenize.isInText}D&&(A.f=ne,A.block=j,A.htmlState=null)}return A.trailingSpace=0,A.trailingSpaceNewLine=!1,A.prevLine=A.thisLine,A.thisLine={stream:null},null}function j(A,D){var ee=A.column()===D.indentation,we=I(D.prevLine.stream),he=D.indentedCode,$e=D.prevLine.hr,Tt=D.list!==!1,Ke=(D.listStack[D.listStack.length-1]||0)+3;D.indentedCode=!1;var ct=D.indentation;if(D.indentationDiff===null&&(D.indentationDiff=D.indentation,Tt)){for(D.list=null;ct=4&&(he||D.prevLine.fencedCodeEnd||D.prevLine.header||we))return A.skipToEnd(),D.indentedCode=!0,c.code;if(A.eatSpace())return null;if(ee&&D.indentation<=Ke&&(Ye=A.match(C))&&Ye[1].length<=6)return D.quote=0,D.header=Ye[1].length,D.thisLine.header=!0,s.highlightFormatting&&(D.formatting="header"),D.f=D.inline,U(D);if(D.indentation<=Ke&&A.eat(">"))return D.quote=ee?1:D.quote+1,s.highlightFormatting&&(D.formatting="quote"),A.eatSpace(),U(D);if(!ze&&!D.setext&&ee&&D.indentation<=Ke&&(Ye=A.match(y))){var vt=Ye[1]?"ol":"ul";return D.indentation=ct+A.current().length,D.list=!0,D.quote=0,D.listStack.push(D.indentation),D.em=!1,D.strong=!1,D.code=!1,D.strikethrough=!1,s.taskLists&&A.match(x,!1)&&(D.taskList=!0),D.f=D.inline,s.highlightFormatting&&(D.formatting=["list","list-"+vt]),U(D)}else{if(ee&&D.indentation<=Ke&&(Ye=A.match(_,!0)))return D.quote=0,D.fencedEndRE=new RegExp(Ye[1]+"+ *$"),D.localMode=s.fencedCodeBlockHighlighting&&p(Ye[2]||s.fencedCodeBlockDefaultMode),D.localMode&&(D.localState=o.startState(D.localMode)),D.f=D.block=be,s.highlightFormatting&&(D.formatting="code-block"),D.code=-1,U(D);if(D.setext||(!Be||!Tt)&&!D.quote&&D.list===!1&&!D.code&&!ze&&!L.test(A.string)&&(Ye=A.lookAhead(1))&&(Ye=Ye.match(E)))return D.setext?(D.header=D.setext,D.setext=0,A.skipToEnd(),s.highlightFormatting&&(D.formatting="header")):(D.header=Ye[0].charAt(0)=="="?1:2,D.setext=D.header),D.thisLine.header=!0,D.f=D.inline,U(D);if(ze)return A.skipToEnd(),D.hr=!0,D.thisLine.hr=!0,c.hr;if(A.peek()==="[")return N(A,D,K)}return N(A,D,D.inline)}function X(A,D){var ee=a.token(A,D.htmlState);if(!f){var we=o.innerMode(a,D.htmlState);(we.mode.name=="xml"&&we.state.tagStart===null&&!we.state.context&&we.state.tokenize.isInText||D.md_inside&&A.current().indexOf(">")>-1)&&(D.f=ne,D.block=j,D.htmlState=null)}return ee}function be(A,D){var ee=D.listStack[D.listStack.length-1]||0,we=D.indentation=A.quote?D.push(c.formatting+"-"+A.formatting[ee]+"-"+A.quote):D.push("error"))}if(A.taskOpen)return D.push("meta"),D.length?D.join(" "):null;if(A.taskClosed)return D.push("property"),D.length?D.join(" "):null;if(A.linkHref?D.push(c.linkHref,"url"):(A.strong&&D.push(c.strong),A.em&&D.push(c.em),A.strikethrough&&D.push(c.strikethrough),A.emoji&&D.push(c.emoji),A.linkText&&D.push(c.linkText),A.code&&D.push(c.code),A.image&&D.push(c.image),A.imageAltText&&D.push(c.imageAltText,"link"),A.imageMarker&&D.push(c.imageMarker)),A.header&&D.push(c.header,c.header+"-"+A.header),A.quote&&(D.push(c.quote),!s.maxBlockquoteDepth||s.maxBlockquoteDepth>=A.quote?D.push(c.quote+"-"+A.quote):D.push(c.quote+"-"+s.maxBlockquoteDepth)),A.list!==!1){var we=(A.listStack.length-1)%3;we?we===1?D.push(c.list2):D.push(c.list3):D.push(c.list1)}return A.trailingSpaceNewLine?D.push("trailing-space-new-line"):A.trailingSpace&&D.push("trailing-space-"+(A.trailingSpace%2?"a":"b")),D.length?D.join(" "):null}function ae(A,D){if(A.match(F,!0))return U(D)}function ne(A,D){var ee=D.text(A,D);if(typeof ee<"u")return ee;if(D.list)return D.list=null,U(D);if(D.taskList){var we=A.match(x,!0)[1]===" ";return we?D.taskOpen=!0:D.taskClosed=!0,s.highlightFormatting&&(D.formatting="task"),D.taskList=!1,U(D)}if(D.taskOpen=!1,D.taskClosed=!1,D.header&&A.match(/^#+$/,!0))return s.highlightFormatting&&(D.formatting="header"),U(D);var he=A.next();if(D.linkTitle){D.linkTitle=!1;var $e=he;he==="("&&($e=")"),$e=($e+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Tt="^\\s*(?:[^"+$e+"\\\\]+|\\\\\\\\|\\\\.)"+$e;if(A.match(new RegExp(Tt),!0))return c.linkHref}if(he==="`"){var Ke=D.formatting;s.highlightFormatting&&(D.formatting="code"),A.eatWhile("`");var ct=A.current().length;if(D.code==0&&(!D.quote||ct==1))return D.code=ct,U(D);if(ct==D.code){var Be=U(D);return D.code=0,Be}else return D.formatting=Ke,U(D)}else if(D.code)return U(D);if(he==="\\"&&(A.next(),s.highlightFormatting)){var ze=U(D),Ye=c.formatting+"-escape";return ze?ze+" "+Ye:Ye}if(he==="!"&&A.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return D.imageMarker=!0,D.image=!0,s.highlightFormatting&&(D.formatting="image"),U(D);if(he==="["&&D.imageMarker&&A.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return D.imageMarker=!1,D.imageAltText=!0,s.highlightFormatting&&(D.formatting="image"),U(D);if(he==="]"&&D.imageAltText){s.highlightFormatting&&(D.formatting="image");var ze=U(D);return D.imageAltText=!1,D.image=!1,D.inline=D.f=S,ze}if(he==="["&&!D.image)return D.linkText&&A.match(/^.*?\]/)||(D.linkText=!0,s.highlightFormatting&&(D.formatting="link")),U(D);if(he==="]"&&D.linkText){s.highlightFormatting&&(D.formatting="link");var ze=U(D);return D.linkText=!1,D.inline=D.f=A.match(/\(.*?\)| ?\[.*?\]/,!1)?S:ne,ze}if(he==="<"&&A.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){D.f=D.inline=se,s.highlightFormatting&&(D.formatting="link");var ze=U(D);return ze?ze+=" ":ze="",ze+c.linkInline}if(he==="<"&&A.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){D.f=D.inline=se,s.highlightFormatting&&(D.formatting="link");var ze=U(D);return ze?ze+=" ":ze="",ze+c.linkEmail}if(s.xml&&he==="<"&&A.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var vt=A.string.indexOf(">",A.pos);if(vt!=-1){var Tn=A.string.substring(A.start,vt);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(Tn)&&(D.md_inside=!0)}return A.backUp(1),D.htmlState=o.startState(a),P(A,D,X)}if(s.xml&&he==="<"&&A.match(/^\/\w*?>/))return D.md_inside=!1,"tag";if(he==="*"||he==="_"){for(var Xt=1,Kt=A.pos==1?" ":A.string.charAt(A.pos-2);Xt<3&&A.eat(he);)Xt++;var zt=A.peek()||" ",pr=!/\s/.test(zt)&&(!T.test(zt)||/\s/.test(Kt)||T.test(Kt)),Ce=!/\s/.test(Kt)&&(!T.test(Kt)||/\s/.test(zt)||T.test(zt)),Ht=null,gr=null;if(Xt%2&&(!D.em&&pr&&(he==="*"||!Ce||T.test(Kt))?Ht=!0:D.em==he&&Ce&&(he==="*"||!pr||T.test(zt))&&(Ht=!1)),Xt>1&&(!D.strong&&pr&&(he==="*"||!Ce||T.test(Kt))?gr=!0:D.strong==he&&Ce&&(he==="*"||!pr||T.test(zt))&&(gr=!1)),gr!=null||Ht!=null){s.highlightFormatting&&(D.formatting=Ht==null?"strong":gr==null?"em":"strong em"),Ht===!0&&(D.em=he),gr===!0&&(D.strong=he);var Be=U(D);return Ht===!1&&(D.em=!1),gr===!1&&(D.strong=!1),Be}}else if(he===" "&&(A.eat("*")||A.eat("_"))){if(A.peek()===" ")return U(D);A.backUp(1)}if(s.strikethrough){if(he==="~"&&A.eatWhile(he)){if(D.strikethrough){s.highlightFormatting&&(D.formatting="strikethrough");var Be=U(D);return D.strikethrough=!1,Be}else if(A.match(/^[^\s]/,!1))return D.strikethrough=!0,s.highlightFormatting&&(D.formatting="strikethrough"),U(D)}else if(he===" "&&A.match("~~",!0)){if(A.peek()===" ")return U(D);A.backUp(2)}}if(s.emoji&&he===":"&&A.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){D.emoji=!0,s.highlightFormatting&&(D.formatting="emoji");var Di=U(D);return D.emoji=!1,Di}return he===" "&&(A.match(/^ +$/,!1)?D.trailingSpace++:D.trailingSpace&&(D.trailingSpaceNewLine=!0)),U(D)}function se(A,D){var ee=A.next();if(ee===">"){D.f=D.inline=ne,s.highlightFormatting&&(D.formatting="link");var we=U(D);return we?we+=" ":we="",we+c.linkInline}return A.match(/^[^>]+/,!0),c.linkInline}function S(A,D){if(A.eatSpace())return null;var ee=A.next();return ee==="("||ee==="["?(D.f=D.inline=z(ee==="("?")":"]"),s.highlightFormatting&&(D.formatting="link-string"),D.linkHref=!0,U(D)):"error"}var R={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function z(A){return function(D,ee){var we=D.next();if(we===A){ee.f=ee.inline=ne,s.highlightFormatting&&(ee.formatting="link-string");var he=U(ee);return ee.linkHref=!1,he}return D.match(R[A]),ee.linkHref=!0,U(ee)}}function K(A,D){return A.match(/^([^\]\\]|\\.)*\]:/,!1)?(D.f=ue,A.next(),s.highlightFormatting&&(D.formatting="link"),D.linkText=!0,U(D)):N(A,D,ne)}function ue(A,D){if(A.match("]:",!0)){D.f=D.inline=De,s.highlightFormatting&&(D.formatting="link");var ee=U(D);return D.linkText=!1,ee}return A.match(/^([^\]\\]|\\.)+/,!0),c.linkText}function De(A,D){return A.eatSpace()?null:(A.match(/^[^\s]+/,!0),A.peek()===void 0?D.linkTitle=!0:A.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),D.f=D.inline=ne,c.linkHref+" url")}var ot={startState:function(){return{f:j,prevLine:{stream:null},thisLine:{stream:null},block:j,htmlState:null,indentation:0,inline:ne,text:ae,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(A){return{f:A.f,prevLine:A.prevLine,thisLine:A.thisLine,block:A.block,htmlState:A.htmlState&&o.copyState(a,A.htmlState),indentation:A.indentation,localMode:A.localMode,localState:A.localMode?o.copyState(A.localMode,A.localState):null,inline:A.inline,text:A.text,formatting:!1,linkText:A.linkText,linkTitle:A.linkTitle,linkHref:A.linkHref,code:A.code,em:A.em,strong:A.strong,strikethrough:A.strikethrough,emoji:A.emoji,header:A.header,setext:A.setext,hr:A.hr,taskList:A.taskList,list:A.list,listStack:A.listStack.slice(0),quote:A.quote,indentedCode:A.indentedCode,trailingSpace:A.trailingSpace,trailingSpaceNewLine:A.trailingSpaceNewLine,md_inside:A.md_inside,fencedEndRE:A.fencedEndRE}},token:function(A,D){if(D.formatting=!1,A!=D.thisLine.stream){if(D.header=0,D.hr=!1,A.match(/^\s*$/,!0))return W(D),null;if(D.prevLine=D.thisLine,D.thisLine={stream:A},D.taskList=!1,D.trailingSpace=0,D.trailingSpaceNewLine=!1,!D.localState&&(D.f=D.block,D.f!=X)){var ee=A.match(/^\s*/,!0)[0].replace(/\t/g,O).length;if(D.indentation=ee,D.indentationDiff=null,ee>0)return null}}return D.f(A,D)},innerMode:function(A){return A.block==X?{state:A.htmlState,mode:a}:A.localState?{state:A.localState,mode:A.localMode}:{state:A,mode:ot}},indent:function(A,D,ee){return A.block==X&&a.indent?a.indent(A.htmlState,D,ee):A.localState&&A.localMode.indent?A.localMode.indent(A.localState,D,ee):o.Pass},blankLine:W,getType:U,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return ot},"xml"),o.defineMIME("text/markdown","markdown"),o.defineMIME("text/x-markdown","markdown")})});var al=lt((ff,cf)=>{(function(o){typeof ff=="object"&&typeof cf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.overlayMode=function(l,s,a){return{startState:function(){return{base:o.startState(l),overlay:o.startState(s),basePos:0,baseCur:null,overlayPos:0,overlayCur:null,streamSeen:null}},copyState:function(f){return{base:o.copyState(l,f.base),overlay:o.copyState(s,f.overlay),basePos:f.basePos,baseCur:null,overlayPos:f.overlayPos,overlayCur:null}},token:function(f,p){return(f!=p.streamSeen||Math.min(p.basePos,p.overlayPos){(function(o){typeof df=="object"&&typeof hf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){o.defineOption("placeholder","",function(h,b,y){var x=y&&y!=o.Init;if(b&&!x)h.on("blur",f),h.on("change",p),h.on("swapDoc",p),o.on(h.getInputField(),"compositionupdate",h.state.placeholderCompose=function(){a(h)}),p(h);else if(!b&&x){h.off("blur",f),h.off("change",p),h.off("swapDoc",p),o.off(h.getInputField(),"compositionupdate",h.state.placeholderCompose),l(h);var C=h.getWrapperElement();C.className=C.className.replace(" CodeMirror-empty","")}b&&!h.hasFocus()&&f(h)});function l(h){h.state.placeholder&&(h.state.placeholder.parentNode.removeChild(h.state.placeholder),h.state.placeholder=null)}function s(h){l(h);var b=h.state.placeholder=document.createElement("pre");b.style.cssText="height: 0; overflow: visible",b.style.direction=h.getOption("direction"),b.className="CodeMirror-placeholder CodeMirror-line-like";var y=h.getOption("placeholder");typeof y=="string"&&(y=document.createTextNode(y)),b.appendChild(y),h.display.lineSpace.insertBefore(b,h.display.lineSpace.firstChild)}function a(h){setTimeout(function(){var b=!1;if(h.lineCount()==1){var y=h.getInputField();b=y.nodeName=="TEXTAREA"?!h.getLine(0).length:!/[^\u200b]/.test(y.querySelector(".CodeMirror-line").textContent)}b?s(h):l(h)},20)}function f(h){c(h)&&s(h)}function p(h){var b=h.getWrapperElement(),y=c(h);b.className=b.className.replace(" CodeMirror-empty","")+(y?" CodeMirror-empty":""),y?s(h):l(h)}function c(h){return h.lineCount()===1&&h.getLine(0)===""}})});var mf=lt((gf,vf)=>{(function(o){typeof gf=="object"&&typeof vf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("autoRefresh",!1,function(a,f){a.state.autoRefresh&&(s(a,a.state.autoRefresh),a.state.autoRefresh=null),f&&a.display.wrapper.offsetHeight==0&&l(a,a.state.autoRefresh={delay:f.delay||250})});function l(a,f){function p(){a.display.wrapper.offsetHeight?(s(a,f),a.display.lastWrapHeight!=a.display.wrapper.clientHeight&&a.refresh()):f.timeout=setTimeout(p,f.delay)}f.timeout=setTimeout(p,f.delay),f.hurry=function(){clearTimeout(f.timeout),f.timeout=setTimeout(p,50)},o.on(window,"mouseup",f.hurry),o.on(window,"keyup",f.hurry)}function s(a,f){clearTimeout(f.timeout),o.off(window,"mouseup",f.hurry),o.off(window,"keyup",f.hurry)}})});var xf=lt((bf,yf)=>{(function(o){typeof bf=="object"&&typeof yf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("styleSelectedText",!1,function(x,C,E){var F=E&&E!=o.Init;C&&!F?(x.state.markedSelection=[],x.state.markedSelectionStyle=typeof C=="string"?C:"CodeMirror-selectedtext",b(x),x.on("cursorActivity",l),x.on("change",s)):!C&&F&&(x.off("cursorActivity",l),x.off("change",s),h(x),x.state.markedSelection=x.state.markedSelectionStyle=null)});function l(x){x.state.markedSelection&&x.operation(function(){y(x)})}function s(x){x.state.markedSelection&&x.state.markedSelection.length&&x.operation(function(){h(x)})}var a=8,f=o.Pos,p=o.cmpPos;function c(x,C,E,F){if(p(C,E)!=0)for(var _=x.state.markedSelection,L=x.state.markedSelectionStyle,T=C.line;;){var O=T==C.line?C:f(T,0),N=T+a,P=N>=E.line,I=P?E:f(N,0),W=x.markText(O,I,{className:L});if(F==null?_.push(W):_.splice(F++,0,W),P)break;T=N}}function h(x){for(var C=x.state.markedSelection,E=0;E1)return b(x);var C=x.getCursor("start"),E=x.getCursor("end"),F=x.state.markedSelection;if(!F.length)return c(x,C,E);var _=F[0].find(),L=F[F.length-1].find();if(!_||!L||E.line-C.line<=a||p(C,L.to)>=0||p(E,_.from)<=0)return b(x);for(;p(C,_.from)>0;)F.shift().clear(),_=F[0].find();for(p(C,_.from)<0&&(_.to.line-C.line0&&(E.line-L.from.line{(function(o){typeof Df=="object"&&typeof wf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l=o.Pos;function s(T){var O=T.flags;return O??(T.ignoreCase?"i":"")+(T.global?"g":"")+(T.multiline?"m":"")}function a(T,O){for(var N=s(T),P=N,I=0;Ij);X++){var be=T.getLine(W++);P=P==null?be:P+` -`+be}I=I*2,O.lastIndex=N.ch;var U=O.exec(P);if(U){var ae=P.slice(0,U.index).split(` -`),ne=U[0].split(` -`),se=N.line+ae.length-1,S=ae[ae.length-1].length;return{from:l(se,S),to:l(se+ne.length-1,ne.length==1?S+ne[0].length:ne[ne.length-1].length),match:U}}}}function h(T,O,N){for(var P,I=0;I<=T.length;){O.lastIndex=I;var W=O.exec(T);if(!W)break;var j=W.index+W[0].length;if(j>T.length-N)break;(!P||j>P.index+P[0].length)&&(P=W),I=W.index+1}return P}function b(T,O,N){O=a(O,"g");for(var P=N.line,I=N.ch,W=T.firstLine();P>=W;P--,I=-1){var j=T.getLine(P),X=h(j,O,I<0?0:j.length-I);if(X)return{from:l(P,X.index),to:l(P,X.index+X[0].length),match:X}}}function y(T,O,N){if(!f(O))return b(T,O,N);O=a(O,"gm");for(var P,I=1,W=T.getLine(N.line).length-N.ch,j=N.line,X=T.firstLine();j>=X;){for(var be=0;be=X;be++){var U=T.getLine(j--);P=P==null?U:U+` -`+P}I*=2;var ae=h(P,O,W);if(ae){var ne=P.slice(0,ae.index).split(` -`),se=ae[0].split(` -`),S=j+ne.length,R=ne[ne.length-1].length;return{from:l(S,R),to:l(S+se.length-1,se.length==1?R+se[0].length:se[se.length-1].length),match:ae}}}}var x,C;String.prototype.normalize?(x=function(T){return T.normalize("NFD").toLowerCase()},C=function(T){return T.normalize("NFD")}):(x=function(T){return T.toLowerCase()},C=function(T){return T});function E(T,O,N,P){if(T.length==O.length)return N;for(var I=0,W=N+Math.max(0,T.length-O.length);;){if(I==W)return I;var j=I+W>>1,X=P(T.slice(0,j)).length;if(X==N)return j;X>N?W=j:I=j+1}}function F(T,O,N,P){if(!O.length)return null;var I=P?x:C,W=I(O).split(/\r|\n\r?/);e:for(var j=N.line,X=N.ch,be=T.lastLine()+1-W.length;j<=be;j++,X=0){var U=T.getLine(j).slice(X),ae=I(U);if(W.length==1){var ne=ae.indexOf(W[0]);if(ne==-1)continue e;var N=E(U,ae,ne,I)+X;return{from:l(j,E(U,ae,ne,I)+X),to:l(j,E(U,ae,ne+W[0].length,I)+X)}}else{var se=ae.length-W[0].length;if(ae.slice(se)!=W[0])continue e;for(var S=1;S=be;j--,X=-1){var U=T.getLine(j);X>-1&&(U=U.slice(0,X));var ae=I(U);if(W.length==1){var ne=ae.lastIndexOf(W[0]);if(ne==-1)continue e;return{from:l(j,E(U,ae,ne,I)),to:l(j,E(U,ae,ne+W[0].length,I))}}else{var se=W[W.length-1];if(ae.slice(0,se.length)!=se)continue e;for(var S=1,N=j-W.length+1;S(this.doc.getLine(O.line)||"").length&&(O.ch=0,O.line++)),o.cmpPos(O,this.doc.clipPos(O))!=0))return this.atOccurrence=!1;var N=this.matches(T,O);if(this.afterEmptyMatch=N&&o.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var P=l(T?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:P,to:P},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(T,O){if(this.atOccurrence){var N=o.splitLines(T);this.doc.replaceRange(N,this.pos.from,this.pos.to,O),this.pos.to=l(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},o.defineExtension("getSearchCursor",function(T,O,N){return new L(this.doc,T,O,N)}),o.defineDocExtension("getSearchCursor",function(T,O,N){return new L(this,T,O,N)}),o.defineExtension("selectMatches",function(T,O){for(var N=[],P=this.getSearchCursor(T,this.getCursor("from"),O);P.findNext()&&!(o.cmpPos(P.to(),this.getCursor("to"))>0);)N.push({anchor:P.from(),head:P.to()});N.length&&this.setSelections(N,0)})})});var Ef=lt((kf,Sf)=>{(function(o){typeof kf=="object"&&typeof Sf=="object"?o(Et(),ol(),al()):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../markdown/markdown","../../addon/mode/overlay"],o):o(CodeMirror)})(function(o){"use strict";var l=/^((?:(?:aaas?|about|acap|adiumxtra|af[ps]|aim|apt|attachment|aw|beshare|bitcoin|bolo|callto|cap|chrome(?:-extension)?|cid|coap|com-eventbrite-attendee|content|crid|cvs|data|dav|dict|dlna-(?:playcontainer|playsingle)|dns|doi|dtn|dvb|ed2k|facetime|feed|file|finger|fish|ftp|geo|gg|git|gizmoproject|go|gopher|gtalk|h323|hcp|https?|iax|icap|icon|im|imap|info|ipn|ipp|irc[6s]?|iris(?:\.beep|\.lwz|\.xpc|\.xpcs)?|itms|jar|javascript|jms|keyparc|lastfm|ldaps?|magnet|mailto|maps|market|message|mid|mms|ms-help|msnim|msrps?|mtqp|mumble|mupdate|mvn|news|nfs|nih?|nntp|notes|oid|opaquelocktoken|palm|paparazzi|platform|pop|pres|proxy|psyc|query|res(?:ource)?|rmi|rsync|rtmp|rtsp|secondlife|service|session|sftp|sgn|shttp|sieve|sips?|skype|sm[bs]|snmp|soap\.beeps?|soldat|spotify|ssh|steam|svn|tag|teamspeak|tel(?:net)?|tftp|things|thismessage|tip|tn3270|tv|udp|unreal|urn|ut2004|vemmi|ventrilo|view-source|webcal|wss?|wtai|wyciwyg|xcon(?:-userid)?|xfire|xmlrpc\.beeps?|xmpp|xri|ymsgr|z39\.50[rs]?):(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]|\([^\s()<>]*\))+(?:\([^\s()<>]*\)|[^\s`*!()\[\]{};:'".,<>?«»“”‘’]))/i;o.defineMode("gfm",function(s,a){var f=0;function p(y){return y.code=!1,null}var c={startState:function(){return{code:!1,codeBlock:!1,ateSpace:!1}},copyState:function(y){return{code:y.code,codeBlock:y.codeBlock,ateSpace:y.ateSpace}},token:function(y,x){if(x.combineTokens=null,x.codeBlock)return y.match(/^```+/)?(x.codeBlock=!1,null):(y.skipToEnd(),null);if(y.sol()&&(x.code=!1),y.sol()&&y.match(/^```+/))return y.skipToEnd(),x.codeBlock=!0,null;if(y.peek()==="`"){y.next();var C=y.pos;y.eatWhile("`");var E=1+y.pos-C;return x.code?E===f&&(x.code=!1):(f=E,x.code=!0),null}else if(x.code)return y.next(),null;if(y.eatSpace())return x.ateSpace=!0,null;if((y.sol()||x.ateSpace)&&(x.ateSpace=!1,a.gitHubSpice!==!1)){if(y.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+@)?(?=.{0,6}\d)(?:[a-f0-9]{7,40}\b)/))return x.combineTokens=!0,"link";if(y.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+)?#[0-9]+\b/))return x.combineTokens=!0,"link"}return y.match(l)&&y.string.slice(y.start-2,y.start)!="]("&&(y.start==0||/\W/.test(y.string.charAt(y.start-1)))?(x.combineTokens=!0,"link"):(y.next(),null)},blankLine:p},h={taskLists:!0,strikethrough:!0,emoji:!0};for(var b in a)h[b]=a[b];return h.name="markdown",o.overlayMode(o.getMode(s,h),c)},"markdown"),o.defineMIME("text/x-gfm","gfm")})});var Af=lt(()=>{});var Ff=lt((Ng,sl)=>{var ll;(function(){"use strict";ll=function(o,l,s,a){a=a||{},this.dictionary=null,this.rules={},this.dictionaryTable=new Map,this.compoundRules=[],this.compoundRuleCodes={},this.replacementTable=[],this.flags=a.flags||{},this.memoized={},this.loaded=!1;var f=this,p,c,h,b,y;o&&(f.dictionary=o,l&&s?F():(typeof window<"u"?(a.dictionaryPath?p=a.dictionaryPath:p="typo/dictionaries",window.chrome&&window.chrome.runtime&&window.chrome.runtime.getURL?p=window.chrome.runtime.getURL(p):window.browser&&window.browser.runtime&&window.browser.runtime.getURL&&(p=window.browser.runtime.getURL(p))):typeof __dirname<"u"?p=__dirname+"/dictionaries":p="./dictionaries",l||x(p+"/"+o+"/"+o+".aff",C),s||x(p+"/"+o+"/"+o+".dic",E)));function x(_,L){var T=f._readFile(_,null,a?.asyncLoad);a?.asyncLoad?T.then(function(O){L(O)}):L(T)}function C(_){l=_,s&&F()}function E(_){s=_,l&&F()}function F(){for(f.rules=f._parseAFF(l),f.compoundRuleCodes={},c=0,b=f.compoundRules.length;c0&&(W.continuationClasses=P),I!=="."&&(E==="SFX"?W.match=new RegExp(I+"$"):W.match=new RegExp("^"+I)),T!="0"&&(E==="SFX"?W.remove=new RegExp(T+"$"):W.remove=T),L.push(W)}l[F]={type:E,combineable:_==="Y",entries:L},c+=f}else if(E==="COMPOUNDRULE"){for(f=parseInt(C[1],10),h=c+1,y=c+1+f;h0&&(s.get(ae)===null&&s.set(ae,[]),s.get(ae).push(ne))}for(var f=1,p=l.length;f1){var x=this.parseRuleCodes(b[1]);(!("NEEDAFFIX"in this.flags)||x.indexOf(this.flags.NEEDAFFIX)===-1)&&a(y,x);for(var C=0,E=x.length;C"u"){if("COMPOUNDMIN"in this.flags&&o.length>=this.flags.COMPOUNDMIN){for(s=0,a=this.compoundRules.length;s"u"&&(s=Array.prototype.concat.apply([],this.dictionaryTable.get(o))),s&&s.indexOf(this.flags[l])!==-1))},alphabet:"",suggest:function(o,l){if(!this.loaded)throw"Dictionary not loaded.";if(l=l||5,this.memoized.hasOwnProperty(o)){var s=this.memoized[o].limit;if(l<=s||this.memoized[o].suggestions.length1&&X[1][1]!==X[1][0]&&(I=X[0]+X[1][1]+X[1][0]+X[1].substring(2),(!F||y.check(I))&&(I in _?_[I]+=1:_[I]=1)),X[1]){var be=X[1].substring(0,1).toUpperCase()===X[1].substring(0,1)?"uppercase":"lowercase";for(T=0;Tse?1:ae[0].localeCompare(U[0])}I.sort(W).reverse();var j=[],X="lowercase";E.toUpperCase()===E?X="uppercase":E.substr(0,1).toUpperCase()+E.substr(1).toLowerCase()===E&&(X="capitalized");var be=l;for(N=0;N{"use strict";var Tf=Ff();function Oe(o){if(o=o||{},typeof o.codeMirrorInstance!="function"||typeof o.codeMirrorInstance.defineMode!="function"){console.log("CodeMirror Spell Checker: You must provide an instance of CodeMirror via the option `codeMirrorInstance`");return}String.prototype.includes||(String.prototype.includes=function(){"use strict";return String.prototype.indexOf.apply(this,arguments)!==-1}),o.codeMirrorInstance.defineMode("spell-checker",function(l){if(!Oe.aff_loading){Oe.aff_loading=!0;var s=new XMLHttpRequest;s.open("GET","https://cdn.jsdelivr.net/codemirror.spell-checker/latest/en_US.aff",!0),s.onload=function(){s.readyState===4&&s.status===200&&(Oe.aff_data=s.responseText,Oe.num_loaded++,Oe.num_loaded==2&&(Oe.typo=new Tf("en_US",Oe.aff_data,Oe.dic_data,{platform:"any"})))},s.send(null)}if(!Oe.dic_loading){Oe.dic_loading=!0;var a=new XMLHttpRequest;a.open("GET","https://cdn.jsdelivr.net/codemirror.spell-checker/latest/en_US.dic",!0),a.onload=function(){a.readyState===4&&a.status===200&&(Oe.dic_data=a.responseText,Oe.num_loaded++,Oe.num_loaded==2&&(Oe.typo=new Tf("en_US",Oe.aff_data,Oe.dic_data,{platform:"any"})))},a.send(null)}var f='!"#$%&()*+,-./:;<=>?@[\\]^_`{|}~ ',p={token:function(h){var b=h.peek(),y="";if(f.includes(b))return h.next(),null;for(;(b=h.peek())!=null&&!f.includes(b);)y+=b,h.next();return Oe.typo&&!Oe.typo.check(y)?"spell-error":null}},c=o.codeMirrorInstance.getMode(l,l.backdrop||"text/plain");return o.codeMirrorInstance.overlayMode(c,p,!0)})}Oe.num_loaded=0;Oe.aff_loading=!1;Oe.dic_loading=!1;Oe.aff_data="";Oe.dic_data="";Oe.typo;Lf.exports=Oe});var jf=lt(_e=>{"use strict";function _f(o,l){for(var s=0;so.length)&&(l=o.length);for(var s=0,a=new Array(l);s=o.length?{done:!0}:{done:!1,value:o[a++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Yh(o,l){if(typeof o!="object"||o===null)return o;var s=o[Symbol.toPrimitive];if(s!==void 0){var a=s.call(o,l||"default");if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(l==="string"?String:Number)(o)}function Zh(o){var l=Yh(o,"string");return typeof l=="symbol"?l:String(l)}function ul(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}_e.defaults=ul();function Qh(o){_e.defaults=o}var Rf=/[&<>"']/,Jh=new RegExp(Rf.source,"g"),Wf=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,$h=new RegExp(Wf.source,"g"),Vh={"&":"&","<":"<",">":">",'"':""","'":"'"},Nf=function(l){return Vh[l]};function pt(o,l){if(l){if(Rf.test(o))return o.replace(Jh,Nf)}else if(Wf.test(o))return o.replace($h,Nf);return o}var ep=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function qf(o){return o.replace(ep,function(l,s){return s=s.toLowerCase(),s==="colon"?":":s.charAt(0)==="#"?s.charAt(1)==="x"?String.fromCharCode(parseInt(s.substring(2),16)):String.fromCharCode(+s.substring(1)):""})}var tp=/(^|[^\[])\^/g;function Le(o,l){o=typeof o=="string"?o:o.source,l=l||"";var s={replace:function(f,p){return p=p.source||p,p=p.replace(tp,"$1"),o=o.replace(f,p),s},getRegex:function(){return new RegExp(o,l)}};return s}var rp=/[^\w:]/g,np=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function Of(o,l,s){if(o){var a;try{a=decodeURIComponent(qf(s)).replace(rp,"").toLowerCase()}catch{return null}if(a.indexOf("javascript:")===0||a.indexOf("vbscript:")===0||a.indexOf("data:")===0)return null}l&&!np.test(s)&&(s=lp(l,s));try{s=encodeURI(s).replace(/%25/g,"%")}catch{return null}return s}var no={},ip=/^[^:]+:\/*[^/]*$/,op=/^([^:]+:)[\s\S]*$/,ap=/^([^:]+:\/*[^/]*)[\s\S]*$/;function lp(o,l){no[" "+o]||(ip.test(o)?no[" "+o]=o+"/":no[" "+o]=io(o,"/",!0)),o=no[" "+o];var s=o.indexOf(":")===-1;return l.substring(0,2)==="//"?s?l:o.replace(op,"$1")+l:l.charAt(0)==="/"?s?l:o.replace(ap,"$1")+l:o+l}var oo={exec:function(){}};function If(o,l){var s=o.replace(/\|/g,function(p,c,h){for(var b=!1,y=c;--y>=0&&h[y]==="\\";)b=!b;return b?"|":" |"}),a=s.split(/ \|/),f=0;if(a[0].trim()||a.shift(),a.length>0&&!a[a.length-1].trim()&&a.pop(),a.length>l)a.splice(l);else for(;a.length1;)l&1&&(s+=o),l>>=1,o+=o;return s+o}function zf(o,l,s,a){var f=l.href,p=l.title?pt(l.title):null,c=o[1].replace(/\\([\[\]])/g,"$1");if(o[0].charAt(0)!=="!"){a.state.inLink=!0;var h={type:"link",raw:s,href:f,title:p,text:c,tokens:a.inlineTokens(c)};return a.state.inLink=!1,h}return{type:"image",raw:s,href:f,title:p,text:pt(c)}}function fp(o,l){var s=o.match(/^(\s+)(?:```)/);if(s===null)return l;var a=s[1];return l.split(` + outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var k;m&&(k=i.ownerDocument.defaultView.scrollY),r.input.focus(),m&&i.ownerDocument.defaultView.scrollTo(null,k),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=M,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll);function B(){if(i.selectionStart!=null){var R=n.somethingSelected(),Y="\u200B"+(R?i.value:"");i.value="\u21DA",i.value=Y,t.prevInput=R?"":"\u200B",i.selectionStart=1,i.selectionEnd=Y.length,r.selForContextMenu=n.doc.sel}}function M(){if(t.contextMenuPending==M&&(t.contextMenuPending=!1,t.wrapper.style.cssText=b,i.style.cssText=v,c&&d<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=h),i.selectionStart!=null)){(!c||c&&d<9)&&B();var R=0,Y=function(){r.selForContextMenu==n.doc.sel&&i.selectionStart==0&&i.selectionEnd>0&&t.prevInput=="\u200B"?tt(n,hu)(n):R++<10?r.detectingSelectAll=setTimeout(Y,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(Y,200)}}if(c&&d>=9&&B(),me){Bn(e);var z=function(){Lt(window,"mouseup",z),setTimeout(M,20)};ue(window,"mouseup",z)}else setTimeout(M,50)},qe.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},qe.prototype.setUneditable=function(){},qe.prototype.needsContentAttribute=!1;function jh(e,t){if(t=t?Tt(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var n=ve(we(e));t.autofocus=n==e||e.getAttribute("autofocus")!=null&&n==document.body}function r(){e.value=g.getValue()}var i;if(e.form&&(ue(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var u=e.form;i=u.submit;try{var h=u.submit=function(){r(),u.submit=i,u.submit(),u.submit=h}}catch{}}t.finishInit=function(v){v.save=r,v.getTextArea=function(){return e},v.toTextArea=function(){v.toTextArea=isNaN,r(),e.parentNode.removeChild(v.getWrapperElement()),e.style.display="",e.form&&(Lt(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=i))}},e.style.display="none";var g=Oe(function(v){return e.parentNode.insertBefore(v,e.nextSibling)},t);return g}function Gh(e){e.off=Lt,e.on=ue,e.wheelEventPixels=$d,e.Doc=yt,e.splitLines=ta,e.countColumn=Ye,e.findColumn=Kt,e.isWordChar=Yo,e.Pass=Ze,e.signal=je,e.Line=Vr,e.changeEnd=xr,e.scrollbarModel=Us,e.Pos=X,e.cmpPos=pe,e.modes=na,e.mimeModes=Jr,e.resolveMode=ki,e.getMode=ia,e.modeExtensions=$r,e.extendMode=Kc,e.copyState=Lr,e.startState=Zl,e.innerMode=oa,e.commands=ni,e.keyMap=ar,e.keyName=Tu,e.isModifierKey=Au,e.lookupKey=hn,e.normalizeKeyMap=xh,e.StringStream=Ge,e.SharedTextMarker=ei,e.TextMarker=wr,e.LineWidget=Vn,e.e_preventDefault=mt,e.e_stopPropagation=Kl,e.e_stop=Bn,e.addClass=De,e.contains=Z,e.rmClass=le,e.keyNames=Cr}Ih(Oe),Rh(Oe);var Xh="iter insert remove copy getEditor constructor".split(" ");for(var ro in yt.prototype)yt.prototype.hasOwnProperty(ro)&&Ne(Xh,ro)<0&&(Oe.prototype[ro]=function(e){return function(){return e.apply(this.doc,arguments)}}(yt.prototype[ro]));return Qr(yt),Oe.inputStyles={textarea:qe,contenteditable:Fe},Oe.defineMode=function(e){!Oe.defaults.mode&&e!="null"&&(Oe.defaults.mode=e),Gc.apply(this,arguments)},Oe.defineMIME=Xc,Oe.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),Oe.defineMIME("text/plain","null"),Oe.defineExtension=function(e,t){Oe.prototype[e]=t},Oe.defineDocExtension=function(e,t){yt.prototype[e]=t},Oe.fromTextArea=jh,Gh(Oe),Oe.version="5.65.21",Oe})});var $u=at((Qu,Ju)=>{(function(o){typeof Qu=="object"&&typeof Ju=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l=/^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,s=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,a=/[*+-]\s/;o.commands.newlineAndIndentContinueMarkdownList=function(p){if(p.getOption("disableInput"))return o.Pass;for(var c=p.listSelections(),d=[],m=0;m\s*$/.test(_),N=!/>\s*$/.test(_);(O||N)&&p.replaceRange("",{line:y.line,ch:0},{line:y.line,ch:y.ch+1}),d[m]=` +`}else{var I=L[1],P=L[5],q=!(a.test(L[2])||L[2].indexOf(">")>=0),G=q?parseInt(L[3],10)+1+L[4]:L[2].replace("x"," ");d[m]=` +`+I+G+P,q&&f(p,y)}}p.replaceSelections(d)};function f(p,c){var d=c.line,m=0,y=0,x=l.exec(p.getLine(d)),C=x[1];do{m+=1;var S=d+m,F=p.getLine(S),_=l.exec(F);if(_){var L=_[1],T=parseInt(x[3],10)+m-y,O=parseInt(_[3],10),N=O;if(C===L&&!isNaN(O))T===O&&(N=O+1),T>O&&(N=T+1),p.replaceRange(F.replace(l,L+N+_[4]+_[5]),{line:S,ch:0},{line:S,ch:F.length});else{if(C.length>L.length||C.length{var Vu=Et();Vu.commands.tabAndIndentMarkdownList=function(o){var l=o.listSelections(),s=l[0].head,a=o.getStateAfter(s.line),f=a.list!==!1;if(f){o.execCommand("indentMore");return}if(o.options.indentWithTabs)o.execCommand("insertTab");else{var p=Array(o.options.tabSize+1).join(" ");o.replaceSelection(p)}};Vu.commands.shiftTabAndUnindentMarkdownList=function(o){var l=o.listSelections(),s=l[0].head,a=o.getStateAfter(s.line),f=a.list!==!1;if(f){o.execCommand("indentLess");return}if(o.options.indentWithTabs)o.execCommand("insertTab");else{var p=Array(o.options.tabSize+1).join(" ");o.replaceSelection(p)}}});var nf=at((tf,rf)=>{(function(o){typeof tf=="object"&&typeof rf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("fullScreen",!1,function(a,f,p){p==o.Init&&(p=!1),!p!=!f&&(f?l(a):s(a))});function l(a){var f=a.getWrapperElement();a.state.fullScreenRestore={scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,width:f.style.width,height:f.style.height},f.style.width="",f.style.height="auto",f.className+=" CodeMirror-fullscreen",document.documentElement.style.overflow="hidden",a.refresh()}function s(a){var f=a.getWrapperElement();f.className=f.className.replace(/\s*CodeMirror-fullscreen\b/,""),document.documentElement.style.overflow="";var p=a.state.fullScreenRestore;f.style.width=p.width,f.style.height=p.height,window.scrollTo(p.scrollLeft,p.scrollTop),a.refresh()}})});var ol=at((of,af)=>{(function(o){typeof of=="object"&&typeof af=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l={autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0},s={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};o.defineMode("xml",function(a,f){var p=a.indentUnit,c={},d=f.htmlMode?l:s;for(var m in d)c[m]=d[m];for(var m in f)c[m]=f[m];var y,x;function C(E,H){function W(De){return H.tokenize=De,De(E,H)}var Z=E.next();if(Z=="<")return E.eat("!")?E.eat("[")?E.match("CDATA[")?W(_("atom","]]>")):null:E.match("--")?W(_("comment","-->")):E.match("DOCTYPE",!0,!0)?(E.eatWhile(/[\w\._\-]/),W(L(1))):null:E.eat("?")?(E.eatWhile(/[\w\._\-]/),H.tokenize=_("meta","?>"),"meta"):(y=E.eat("/")?"closeTag":"openTag",H.tokenize=S,"tag bracket");if(Z=="&"){var ve;return E.eat("#")?E.eat("x")?ve=E.eatWhile(/[a-fA-F\d]/)&&E.eat(";"):ve=E.eatWhile(/[\d]/)&&E.eat(";"):ve=E.eatWhile(/[\w\.\-:]/)&&E.eat(";"),ve?"atom":"error"}else return E.eatWhile(/[^&<]/),null}C.isInText=!0;function S(E,H){var W=E.next();if(W==">"||W=="/"&&E.eat(">"))return H.tokenize=C,y=W==">"?"endTag":"selfcloseTag","tag bracket";if(W=="=")return y="equals",null;if(W=="<"){H.tokenize=C,H.state=P,H.tagName=H.tagStart=null;var Z=H.tokenize(E,H);return Z?Z+" tag error":"tag error"}else return/[\'\"]/.test(W)?(H.tokenize=F(W),H.stringStartCol=E.column(),H.tokenize(E,H)):(E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function F(E){var H=function(W,Z){for(;!W.eol();)if(W.next()==E){Z.tokenize=S;break}return"string"};return H.isInAttribute=!0,H}function _(E,H){return function(W,Z){for(;!W.eol();){if(W.match(H)){Z.tokenize=C;break}W.next()}return E}}function L(E){return function(H,W){for(var Z;(Z=H.next())!=null;){if(Z=="<")return W.tokenize=L(E+1),W.tokenize(H,W);if(Z==">")if(E==1){W.tokenize=C;break}else return W.tokenize=L(E-1),W.tokenize(H,W)}return"meta"}}function T(E){return E&&E.toLowerCase()}function O(E,H,W){this.prev=E.context,this.tagName=H||"",this.indent=E.indented,this.startOfLine=W,(c.doNotIndent.hasOwnProperty(H)||E.context&&E.context.noIndent)&&(this.noIndent=!0)}function N(E){E.context&&(E.context=E.context.prev)}function I(E,H){for(var W;;){if(!E.context||(W=E.context.tagName,!c.contextGrabbers.hasOwnProperty(T(W))||!c.contextGrabbers[T(W)].hasOwnProperty(T(H))))return;N(E)}}function P(E,H,W){return E=="openTag"?(W.tagStart=H.column(),q):E=="closeTag"?G:P}function q(E,H,W){return E=="word"?(W.tagName=H.current(),x="tag",U):c.allowMissingTagName&&E=="endTag"?(x="tag bracket",U(E,H,W)):(x="error",q)}function G(E,H,W){if(E=="word"){var Z=H.current();return W.context&&W.context.tagName!=Z&&c.implicitlyClosed.hasOwnProperty(T(W.context.tagName))&&N(W),W.context&&W.context.tagName==Z||c.matchClosing===!1?(x="tag",K):(x="tag error",me)}else return c.allowMissingTagName&&E=="endTag"?(x="tag bracket",K(E,H,W)):(x="error",me)}function K(E,H,W){return E!="endTag"?(x="error",K):(N(W),P)}function me(E,H,W){return x="error",K(E,H,W)}function U(E,H,W){if(E=="word")return x="attribute",le;if(E=="endTag"||E=="selfcloseTag"){var Z=W.tagName,ve=W.tagStart;return W.tagName=W.tagStart=null,E=="selfcloseTag"||c.autoSelfClosers.hasOwnProperty(T(Z))?I(W,Z):(I(W,Z),W.context=new O(W,Z,ve==W.indented)),P}return x="error",U}function le(E,H,W){return E=="equals"?j:(c.allowMissing||(x="error"),U(E,H,W))}function j(E,H,W){return E=="string"?ee:E=="word"&&c.allowUnquoted?(x="string",U):(x="error",U(E,H,W))}function ee(E,H,W){return E=="string"?ee:U(E,H,W)}return{startState:function(E){var H={tokenize:C,state:P,indented:E||0,tagName:null,tagStart:null,context:null};return E!=null&&(H.baseIndent=E),H},token:function(E,H){if(!H.tagName&&E.sol()&&(H.indented=E.indentation()),E.eatSpace())return null;y=null;var W=H.tokenize(E,H);return(W||y)&&W!="comment"&&(x=null,H.state=H.state(y||W,E,H),x&&(W=x=="error"?W+" error":x)),W},indent:function(E,H,W){var Z=E.context;if(E.tokenize.isInAttribute)return E.tagStart==E.indented?E.stringStartCol+1:E.indented+p;if(Z&&Z.noIndent)return o.Pass;if(E.tokenize!=S&&E.tokenize!=C)return W?W.match(/^(\s*)/)[0].length:0;if(E.tagName)return c.multilineTagIndentPastTag!==!1?E.tagStart+E.tagName.length+2:E.tagStart+p*(c.multilineTagIndentFactor||1);if(c.alignCDATA&&/$/,blockCommentStart:"",configuration:c.htmlMode?"html":"xml",helperType:c.htmlMode?"html":"xml",skipAttribute:function(E){E.state==j&&(E.state=U)},xmlCurrentTag:function(E){return E.tagName?{name:E.tagName,close:E.type=="closeTag"}:null},xmlCurrentContext:function(E){for(var H=[],W=E.context;W;W=W.prev)H.push(W.tagName);return H.reverse()}}}),o.defineMIME("text/xml","xml"),o.defineMIME("application/xml","xml"),o.mimeModes.hasOwnProperty("text/html")||o.defineMIME("text/html",{name:"xml",htmlMode:!0})})});var uf=at((lf,sf)=>{(function(o){typeof lf=="object"&&typeof sf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var l=0;l-1&&a.substring(c+1,a.length);if(d)return o.findModeByExtension(d)},o.findModeByName=function(a){a=a.toLowerCase();for(var f=0;f{(function(o){typeof ff=="object"&&typeof cf=="object"?o(Et(),ol(),uf()):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../xml/xml","../meta"],o):o(CodeMirror)})(function(o){"use strict";o.defineMode("markdown",function(l,s){var a=o.getMode(l,"text/html"),f=a.name=="null";function p(A){if(o.findModeByName){var D=o.findModeByName(A);D&&(A=D.mime||D.mimes[0])}var te=o.getMode(l,A);return te.name=="null"?null:te}s.highlightFormatting===void 0&&(s.highlightFormatting=!1),s.maxBlockquoteDepth===void 0&&(s.maxBlockquoteDepth=0),s.taskLists===void 0&&(s.taskLists=!1),s.strikethrough===void 0&&(s.strikethrough=!1),s.emoji===void 0&&(s.emoji=!1),s.fencedCodeBlockHighlighting===void 0&&(s.fencedCodeBlockHighlighting=!0),s.fencedCodeBlockDefaultMode===void 0&&(s.fencedCodeBlockDefaultMode="text/plain"),s.xml===void 0&&(s.xml=!0),s.tokenTypeOverrides===void 0&&(s.tokenTypeOverrides={});var c={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var d in c)c.hasOwnProperty(d)&&s.tokenTypeOverrides[d]&&(c[d]=s.tokenTypeOverrides[d]);var m=/^([*\-_])(?:\s*\1){2,}\s*$/,y=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,x=/^\[(x| )\](?=\s)/i,C=s.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,S=/^ {0,3}(?:\={1,}|-{2,})\s*$/,F=/^[^#!\[\]*_\\<>` "'(~:]+/,_=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,L=/^\s*\[[^\]]+?\]:.*$/,T=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\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\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\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]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,O=" ";function N(A,D,te){return D.f=D.inline=te,te(A,D)}function I(A,D,te){return D.f=D.block=te,te(A,D)}function P(A){return!A||!/\S/.test(A.string)}function q(A){if(A.linkTitle=!1,A.linkHref=!1,A.linkText=!1,A.em=!1,A.strong=!1,A.strikethrough=!1,A.quote=0,A.indentedCode=!1,A.f==K){var D=f;if(!D){var te=o.innerMode(a,A.htmlState);D=te.mode.name=="xml"&&te.state.tagStart===null&&!te.state.context&&te.state.tokenize.isInText}D&&(A.f=j,A.block=G,A.htmlState=null)}return A.trailingSpace=0,A.trailingSpaceNewLine=!1,A.prevLine=A.thisLine,A.thisLine={stream:null},null}function G(A,D){var te=A.column()===D.indentation,we=P(D.prevLine.stream),ye=D.indentedCode,gt=D.prevLine.hr,Tt=D.list!==!1,Ye=(D.listStack[D.listStack.length-1]||0)+3;D.indentedCode=!1;var ft=D.indentation;if(D.indentationDiff===null&&(D.indentationDiff=D.indentation,Tt)){for(D.list=null;ft=4&&(ye||D.prevLine.fencedCodeEnd||D.prevLine.header||we))return A.skipToEnd(),D.indentedCode=!0,c.code;if(A.eatSpace())return null;if(te&&D.indentation<=Ye&&(Ze=A.match(C))&&Ze[1].length<=6)return D.quote=0,D.header=Ze[1].length,D.thisLine.header=!0,s.highlightFormatting&&(D.formatting="header"),D.f=D.inline,U(D);if(D.indentation<=Ye&&A.eat(">"))return D.quote=te?1:D.quote+1,s.highlightFormatting&&(D.formatting="quote"),A.eatSpace(),U(D);if(!He&&!D.setext&&te&&D.indentation<=Ye&&(Ze=A.match(y))){var vt=Ze[1]?"ol":"ul";return D.indentation=ft+A.current().length,D.list=!0,D.quote=0,D.listStack.push(D.indentation),D.em=!1,D.strong=!1,D.code=!1,D.strikethrough=!1,s.taskLists&&A.match(x,!1)&&(D.taskList=!0),D.f=D.inline,s.highlightFormatting&&(D.formatting=["list","list-"+vt]),U(D)}else{if(te&&D.indentation<=Ye&&(Ze=A.match(_,!0)))return D.quote=0,D.fencedEndRE=new RegExp(Ze[1]+"+ *$"),D.localMode=s.fencedCodeBlockHighlighting&&p(Ze[2]||s.fencedCodeBlockDefaultMode),D.localMode&&(D.localState=o.startState(D.localMode)),D.f=D.block=me,s.highlightFormatting&&(D.formatting="code-block"),D.code=-1,U(D);if(D.setext||(!Ne||!Tt)&&!D.quote&&D.list===!1&&!D.code&&!He&&!L.test(A.string)&&(Ze=A.lookAhead(1))&&(Ze=Ze.match(S)))return D.setext?(D.header=D.setext,D.setext=0,A.skipToEnd(),s.highlightFormatting&&(D.formatting="header")):(D.header=Ze[0].charAt(0)=="="?1:2,D.setext=D.header),D.thisLine.header=!0,D.f=D.inline,U(D);if(He)return A.skipToEnd(),D.hr=!0,D.thisLine.hr=!0,c.hr;if(A.peek()==="[")return N(A,D,Z)}return N(A,D,D.inline)}function K(A,D){var te=a.token(A,D.htmlState);if(!f){var we=o.innerMode(a,D.htmlState);(we.mode.name=="xml"&&we.state.tagStart===null&&!we.state.context&&we.state.tokenize.isInText||D.md_inside&&A.current().indexOf(">")>-1)&&(D.f=j,D.block=G,D.htmlState=null)}return te}function me(A,D){var te=D.listStack[D.listStack.length-1]||0,we=D.indentation=A.quote?D.push(c.formatting+"-"+A.formatting[te]+"-"+A.quote):D.push("error"))}if(A.taskOpen)return D.push("meta"),D.length?D.join(" "):null;if(A.taskClosed)return D.push("property"),D.length?D.join(" "):null;if(A.linkHref?D.push(c.linkHref,"url"):(A.strong&&D.push(c.strong),A.em&&D.push(c.em),A.strikethrough&&D.push(c.strikethrough),A.emoji&&D.push(c.emoji),A.linkText&&D.push(c.linkText),A.code&&D.push(c.code),A.image&&D.push(c.image),A.imageAltText&&D.push(c.imageAltText,"link"),A.imageMarker&&D.push(c.imageMarker)),A.header&&D.push(c.header,c.header+"-"+A.header),A.quote&&(D.push(c.quote),!s.maxBlockquoteDepth||s.maxBlockquoteDepth>=A.quote?D.push(c.quote+"-"+A.quote):D.push(c.quote+"-"+s.maxBlockquoteDepth)),A.list!==!1){var we=(A.listStack.length-1)%3;we?we===1?D.push(c.list2):D.push(c.list3):D.push(c.list1)}return A.trailingSpaceNewLine?D.push("trailing-space-new-line"):A.trailingSpace&&D.push("trailing-space-"+(A.trailingSpace%2?"a":"b")),D.length?D.join(" "):null}function le(A,D){if(A.match(F,!0))return U(D)}function j(A,D){var te=D.text(A,D);if(typeof te<"u")return te;if(D.list)return D.list=null,U(D);if(D.taskList){var we=A.match(x,!0)[1]===" ";return we?D.taskOpen=!0:D.taskClosed=!0,s.highlightFormatting&&(D.formatting="task"),D.taskList=!1,U(D)}if(D.taskOpen=!1,D.taskClosed=!1,D.header&&A.match(/^#+$/,!0))return s.highlightFormatting&&(D.formatting="header"),U(D);var ye=A.next();if(D.linkTitle){D.linkTitle=!1;var gt=ye;ye==="("&&(gt=")"),gt=(gt+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Tt="^\\s*(?:[^"+gt+"\\\\]+|\\\\\\\\|\\\\.)"+gt;if(A.match(new RegExp(Tt),!0))return c.linkHref}if(ye==="`"){var Ye=D.formatting;s.highlightFormatting&&(D.formatting="code"),A.eatWhile("`");var ft=A.current().length;if(D.code==0&&(!D.quote||ft==1))return D.code=ft,U(D);if(ft==D.code){var Ne=U(D);return D.code=0,Ne}else return D.formatting=Ye,U(D)}else if(D.code)return U(D);if(ye==="\\"&&(A.next(),s.highlightFormatting)){var He=U(D),Ze=c.formatting+"-escape";return He?He+" "+Ze:Ze}if(ye==="!"&&A.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return D.imageMarker=!0,D.image=!0,s.highlightFormatting&&(D.formatting="image"),U(D);if(ye==="["&&D.imageMarker&&A.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return D.imageMarker=!1,D.imageAltText=!0,s.highlightFormatting&&(D.formatting="image"),U(D);if(ye==="]"&&D.imageAltText){s.highlightFormatting&&(D.formatting="image");var He=U(D);return D.imageAltText=!1,D.image=!1,D.inline=D.f=E,He}if(ye==="["&&!D.image)return D.linkText&&A.match(/^.*?\]/)||(D.linkText=!0,s.highlightFormatting&&(D.formatting="link")),U(D);if(ye==="]"&&D.linkText){s.highlightFormatting&&(D.formatting="link");var He=U(D);return D.linkText=!1,D.inline=D.f=A.match(/\(.*?\)| ?\[.*?\]/,!1)?E:j,He}if(ye==="<"&&A.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){D.f=D.inline=ee,s.highlightFormatting&&(D.formatting="link");var He=U(D);return He?He+=" ":He="",He+c.linkInline}if(ye==="<"&&A.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){D.f=D.inline=ee,s.highlightFormatting&&(D.formatting="link");var He=U(D);return He?He+=" ":He="",He+c.linkEmail}if(s.xml&&ye==="<"&&A.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var vt=A.string.indexOf(">",A.pos);if(vt!=-1){var Tn=A.string.substring(A.start,vt);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(Tn)&&(D.md_inside=!0)}return A.backUp(1),D.htmlState=o.startState(a),I(A,D,K)}if(s.xml&&ye==="<"&&A.match(/^\/\w*?>/))return D.md_inside=!1,"tag";if(ye==="*"||ye==="_"){for(var Xt=1,Kt=A.pos==1?" ":A.string.charAt(A.pos-2);Xt<3&&A.eat(ye);)Xt++;var zt=A.peek()||" ",pr=!/\s/.test(zt)&&(!T.test(zt)||/\s/.test(Kt)||T.test(Kt)),Ce=!/\s/.test(Kt)&&(!T.test(Kt)||/\s/.test(zt)||T.test(zt)),Ht=null,gr=null;if(Xt%2&&(!D.em&&pr&&(ye==="*"||!Ce||T.test(Kt))?Ht=!0:D.em==ye&&Ce&&(ye==="*"||!pr||T.test(zt))&&(Ht=!1)),Xt>1&&(!D.strong&&pr&&(ye==="*"||!Ce||T.test(Kt))?gr=!0:D.strong==ye&&Ce&&(ye==="*"||!pr||T.test(zt))&&(gr=!1)),gr!=null||Ht!=null){s.highlightFormatting&&(D.formatting=Ht==null?"strong":gr==null?"em":"strong em"),Ht===!0&&(D.em=ye),gr===!0&&(D.strong=ye);var Ne=U(D);return Ht===!1&&(D.em=!1),gr===!1&&(D.strong=!1),Ne}}else if(ye===" "&&(A.eat("*")||A.eat("_"))){if(A.peek()===" ")return U(D);A.backUp(1)}if(s.strikethrough){if(ye==="~"&&A.eatWhile(ye)){if(D.strikethrough){s.highlightFormatting&&(D.formatting="strikethrough");var Ne=U(D);return D.strikethrough=!1,Ne}else if(A.match(/^[^\s]/,!1))return D.strikethrough=!0,s.highlightFormatting&&(D.formatting="strikethrough"),U(D)}else if(ye===" "&&A.match("~~",!0)){if(A.peek()===" ")return U(D);A.backUp(2)}}if(s.emoji&&ye===":"&&A.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){D.emoji=!0,s.highlightFormatting&&(D.formatting="emoji");var wi=U(D);return D.emoji=!1,wi}return ye===" "&&(A.match(/^ +$/,!1)?D.trailingSpace++:D.trailingSpace&&(D.trailingSpaceNewLine=!0)),U(D)}function ee(A,D){var te=A.next();if(te===">"){D.f=D.inline=j,s.highlightFormatting&&(D.formatting="link");var we=U(D);return we?we+=" ":we="",we+c.linkInline}return A.match(/^[^>]+/,!0),c.linkInline}function E(A,D){if(A.eatSpace())return null;var te=A.next();return te==="("||te==="["?(D.f=D.inline=W(te==="("?")":"]"),s.highlightFormatting&&(D.formatting="link-string"),D.linkHref=!0,U(D)):"error"}var H={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function W(A){return function(D,te){var we=D.next();if(we===A){te.f=te.inline=j,s.highlightFormatting&&(te.formatting="link-string");var ye=U(te);return te.linkHref=!1,ye}return D.match(H[A]),te.linkHref=!0,U(te)}}function Z(A,D){return A.match(/^([^\]\\]|\\.)*\]:/,!1)?(D.f=ve,A.next(),s.highlightFormatting&&(D.formatting="link"),D.linkText=!0,U(D)):N(A,D,j)}function ve(A,D){if(A.match("]:",!0)){D.f=D.inline=De,s.highlightFormatting&&(D.formatting="link");var te=U(D);return D.linkText=!1,te}return A.match(/^([^\]\\]|\\.)+/,!0),c.linkText}function De(A,D){return A.eatSpace()?null:(A.match(/^[^\s]+/,!0),A.peek()===void 0?D.linkTitle=!0:A.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),D.f=D.inline=j,c.linkHref+" url")}var Le={startState:function(){return{f:G,prevLine:{stream:null},thisLine:{stream:null},block:G,htmlState:null,indentation:0,inline:j,text:le,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(A){return{f:A.f,prevLine:A.prevLine,thisLine:A.thisLine,block:A.block,htmlState:A.htmlState&&o.copyState(a,A.htmlState),indentation:A.indentation,localMode:A.localMode,localState:A.localMode?o.copyState(A.localMode,A.localState):null,inline:A.inline,text:A.text,formatting:!1,linkText:A.linkText,linkTitle:A.linkTitle,linkHref:A.linkHref,code:A.code,em:A.em,strong:A.strong,strikethrough:A.strikethrough,emoji:A.emoji,header:A.header,setext:A.setext,hr:A.hr,taskList:A.taskList,list:A.list,listStack:A.listStack.slice(0),quote:A.quote,indentedCode:A.indentedCode,trailingSpace:A.trailingSpace,trailingSpaceNewLine:A.trailingSpaceNewLine,md_inside:A.md_inside,fencedEndRE:A.fencedEndRE}},token:function(A,D){if(D.formatting=!1,A!=D.thisLine.stream){if(D.header=0,D.hr=!1,A.match(/^\s*$/,!0))return q(D),null;if(D.prevLine=D.thisLine,D.thisLine={stream:A},D.taskList=!1,D.trailingSpace=0,D.trailingSpaceNewLine=!1,!D.localState&&(D.f=D.block,D.f!=K)){var te=A.match(/^\s*/,!0)[0].replace(/\t/g,O).length;if(D.indentation=te,D.indentationDiff=null,te>0)return null}}return D.f(A,D)},innerMode:function(A){return A.block==K?{state:A.htmlState,mode:a}:A.localState?{state:A.localState,mode:A.localMode}:{state:A,mode:Le}},indent:function(A,D,te){return A.block==K&&a.indent?a.indent(A.htmlState,D,te):A.localState&&A.localMode.indent?A.localMode.indent(A.localState,D,te):o.Pass},blankLine:q,getType:U,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return Le},"xml"),o.defineMIME("text/markdown","markdown"),o.defineMIME("text/x-markdown","markdown")})});var ll=at((df,hf)=>{(function(o){typeof df=="object"&&typeof hf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.overlayMode=function(l,s,a){return{startState:function(){return{base:o.startState(l),overlay:o.startState(s),basePos:0,baseCur:null,overlayPos:0,overlayCur:null,streamSeen:null}},copyState:function(f){return{base:o.copyState(l,f.base),overlay:o.copyState(s,f.overlay),basePos:f.basePos,baseCur:null,overlayPos:f.overlayPos,overlayCur:null}},token:function(f,p){return(f!=p.streamSeen||Math.min(p.basePos,p.overlayPos){(function(o){typeof pf=="object"&&typeof gf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){o.defineOption("placeholder","",function(d,m,y){var x=y&&y!=o.Init;if(m&&!x)d.on("blur",f),d.on("change",p),d.on("swapDoc",p),o.on(d.getInputField(),"compositionupdate",d.state.placeholderCompose=function(){a(d)}),p(d);else if(!m&&x){d.off("blur",f),d.off("change",p),d.off("swapDoc",p),o.off(d.getInputField(),"compositionupdate",d.state.placeholderCompose),l(d);var C=d.getWrapperElement();C.className=C.className.replace(" CodeMirror-empty","")}m&&!d.hasFocus()&&f(d)});function l(d){d.state.placeholder&&(d.state.placeholder.parentNode.removeChild(d.state.placeholder),d.state.placeholder=null)}function s(d){l(d);var m=d.state.placeholder=document.createElement("pre");m.style.cssText="height: 0; overflow: visible",m.style.direction=d.getOption("direction"),m.className="CodeMirror-placeholder CodeMirror-line-like";var y=d.getOption("placeholder");typeof y=="string"&&(y=document.createTextNode(y)),m.appendChild(y),d.display.lineSpace.insertBefore(m,d.display.lineSpace.firstChild)}function a(d){setTimeout(function(){var m=!1;if(d.lineCount()==1){var y=d.getInputField();m=y.nodeName=="TEXTAREA"?!d.getLine(0).length:!/[^\u200b]/.test(y.querySelector(".CodeMirror-line").textContent)}m?s(d):l(d)},20)}function f(d){c(d)&&s(d)}function p(d){var m=d.getWrapperElement(),y=c(d);m.className=m.className.replace(" CodeMirror-empty","")+(y?" CodeMirror-empty":""),y?s(d):l(d)}function c(d){return d.lineCount()===1&&d.getLine(0)===""}})});var yf=at((mf,bf)=>{(function(o){typeof mf=="object"&&typeof bf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("autoRefresh",!1,function(a,f){a.state.autoRefresh&&(s(a,a.state.autoRefresh),a.state.autoRefresh=null),f&&a.display.wrapper.offsetHeight==0&&l(a,a.state.autoRefresh={delay:f.delay||250})});function l(a,f){function p(){a.display.wrapper.offsetHeight?(s(a,f),a.display.lastWrapHeight!=a.display.wrapper.clientHeight&&a.refresh()):f.timeout=setTimeout(p,f.delay)}f.timeout=setTimeout(p,f.delay),f.hurry=function(){clearTimeout(f.timeout),f.timeout=setTimeout(p,50)},o.on(window,"mouseup",f.hurry),o.on(window,"keyup",f.hurry)}function s(a,f){clearTimeout(f.timeout),o.off(window,"mouseup",f.hurry),o.off(window,"keyup",f.hurry)}})});var wf=at((xf,Df)=>{(function(o){typeof xf=="object"&&typeof Df=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";o.defineOption("styleSelectedText",!1,function(x,C,S){var F=S&&S!=o.Init;C&&!F?(x.state.markedSelection=[],x.state.markedSelectionStyle=typeof C=="string"?C:"CodeMirror-selectedtext",m(x),x.on("cursorActivity",l),x.on("change",s)):!C&&F&&(x.off("cursorActivity",l),x.off("change",s),d(x),x.state.markedSelection=x.state.markedSelectionStyle=null)});function l(x){x.state.markedSelection&&x.operation(function(){y(x)})}function s(x){x.state.markedSelection&&x.state.markedSelection.length&&x.operation(function(){d(x)})}var a=8,f=o.Pos,p=o.cmpPos;function c(x,C,S,F){if(p(C,S)!=0)for(var _=x.state.markedSelection,L=x.state.markedSelectionStyle,T=C.line;;){var O=T==C.line?C:f(T,0),N=T+a,I=N>=S.line,P=I?S:f(N,0),q=x.markText(O,P,{className:L});if(F==null?_.push(q):_.splice(F++,0,q),I)break;T=N}}function d(x){for(var C=x.state.markedSelection,S=0;S1)return m(x);var C=x.getCursor("start"),S=x.getCursor("end"),F=x.state.markedSelection;if(!F.length)return c(x,C,S);var _=F[0].find(),L=F[F.length-1].find();if(!_||!L||S.line-C.line<=a||p(C,L.to)>=0||p(S,_.from)<=0)return m(x);for(;p(C,_.from)>0;)F.shift().clear(),_=F[0].find();for(p(C,_.from)<0&&(_.to.line-C.line0&&(S.line-L.from.line{(function(o){typeof Cf=="object"&&typeof kf=="object"?o(Et()):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],o):o(CodeMirror)})(function(o){"use strict";var l=o.Pos;function s(T){var O=T.flags;return O??(T.ignoreCase?"i":"")+(T.global?"g":"")+(T.multiline?"m":"")}function a(T,O){for(var N=s(T),I=N,P=0;PG);K++){var me=T.getLine(q++);I=I==null?me:I+` +`+me}P=P*2,O.lastIndex=N.ch;var U=O.exec(I);if(U){var le=I.slice(0,U.index).split(` +`),j=U[0].split(` +`),ee=N.line+le.length-1,E=le[le.length-1].length;return{from:l(ee,E),to:l(ee+j.length-1,j.length==1?E+j[0].length:j[j.length-1].length),match:U}}}}function d(T,O,N){for(var I,P=0;P<=T.length;){O.lastIndex=P;var q=O.exec(T);if(!q)break;var G=q.index+q[0].length;if(G>T.length-N)break;(!I||G>I.index+I[0].length)&&(I=q),P=q.index+1}return I}function m(T,O,N){O=a(O,"g");for(var I=N.line,P=N.ch,q=T.firstLine();I>=q;I--,P=-1){var G=T.getLine(I),K=d(G,O,P<0?0:G.length-P);if(K)return{from:l(I,K.index),to:l(I,K.index+K[0].length),match:K}}}function y(T,O,N){if(!f(O))return m(T,O,N);O=a(O,"gm");for(var I,P=1,q=T.getLine(N.line).length-N.ch,G=N.line,K=T.firstLine();G>=K;){for(var me=0;me=K;me++){var U=T.getLine(G--);I=I==null?U:U+` +`+I}P*=2;var le=d(I,O,q);if(le){var j=I.slice(0,le.index).split(` +`),ee=le[0].split(` +`),E=G+j.length,H=j[j.length-1].length;return{from:l(E,H),to:l(E+ee.length-1,ee.length==1?H+ee[0].length:ee[ee.length-1].length),match:le}}}}var x,C;String.prototype.normalize?(x=function(T){return T.normalize("NFD").toLowerCase()},C=function(T){return T.normalize("NFD")}):(x=function(T){return T.toLowerCase()},C=function(T){return T});function S(T,O,N,I){if(T.length==O.length)return N;for(var P=0,q=N+Math.max(0,T.length-O.length);;){if(P==q)return P;var G=P+q>>1,K=I(T.slice(0,G)).length;if(K==N)return G;K>N?q=G:P=G+1}}function F(T,O,N,I){if(!O.length)return null;var P=I?x:C,q=P(O).split(/\r|\n\r?/);e:for(var G=N.line,K=N.ch,me=T.lastLine()+1-q.length;G<=me;G++,K=0){var U=T.getLine(G).slice(K),le=P(U);if(q.length==1){var j=le.indexOf(q[0]);if(j==-1)continue e;var N=S(U,le,j,P)+K;return{from:l(G,S(U,le,j,P)+K),to:l(G,S(U,le,j+q[0].length,P)+K)}}else{var ee=le.length-q[0].length;if(le.slice(ee)!=q[0])continue e;for(var E=1;E=me;G--,K=-1){var U=T.getLine(G);K>-1&&(U=U.slice(0,K));var le=P(U);if(q.length==1){var j=le.lastIndexOf(q[0]);if(j==-1)continue e;return{from:l(G,S(U,le,j,P)),to:l(G,S(U,le,j+q[0].length,P))}}else{var ee=q[q.length-1];if(le.slice(0,ee.length)!=ee)continue e;for(var E=1,N=G-q.length+1;E(this.doc.getLine(O.line)||"").length&&(O.ch=0,O.line++)),o.cmpPos(O,this.doc.clipPos(O))!=0))return this.atOccurrence=!1;var N=this.matches(T,O);if(this.afterEmptyMatch=N&&o.cmpPos(N.from,N.to)==0,N)return this.pos=N,this.atOccurrence=!0,this.pos.match||!0;var I=l(T?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:I,to:I},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(T,O){if(this.atOccurrence){var N=o.splitLines(T);this.doc.replaceRange(N,this.pos.from,this.pos.to,O),this.pos.to=l(this.pos.from.line+N.length-1,N[N.length-1].length+(N.length==1?this.pos.from.ch:0))}}},o.defineExtension("getSearchCursor",function(T,O,N){return new L(this.doc,T,O,N)}),o.defineDocExtension("getSearchCursor",function(T,O,N){return new L(this,T,O,N)}),o.defineExtension("selectMatches",function(T,O){for(var N=[],I=this.getSearchCursor(T,this.getCursor("from"),O);I.findNext()&&!(o.cmpPos(I.to(),this.getCursor("to"))>0);)N.push({anchor:I.from(),head:I.to()});N.length&&this.setSelections(N,0)})})});var Ff=at((Ef,Af)=>{(function(o){typeof Ef=="object"&&typeof Af=="object"?o(Et(),al(),ll()):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../markdown/markdown","../../addon/mode/overlay"],o):o(CodeMirror)})(function(o){"use strict";var l=/^((?:(?:aaas?|about|acap|adiumxtra|af[ps]|aim|apt|attachment|aw|beshare|bitcoin|bolo|callto|cap|chrome(?:-extension)?|cid|coap|com-eventbrite-attendee|content|crid|cvs|data|dav|dict|dlna-(?:playcontainer|playsingle)|dns|doi|dtn|dvb|ed2k|facetime|feed|file|finger|fish|ftp|geo|gg|git|gizmoproject|go|gopher|gtalk|h323|hcp|https?|iax|icap|icon|im|imap|info|ipn|ipp|irc[6s]?|iris(?:\.beep|\.lwz|\.xpc|\.xpcs)?|itms|jar|javascript|jms|keyparc|lastfm|ldaps?|magnet|mailto|maps|market|message|mid|mms|ms-help|msnim|msrps?|mtqp|mumble|mupdate|mvn|news|nfs|nih?|nntp|notes|oid|opaquelocktoken|palm|paparazzi|platform|pop|pres|proxy|psyc|query|res(?:ource)?|rmi|rsync|rtmp|rtsp|secondlife|service|session|sftp|sgn|shttp|sieve|sips?|skype|sm[bs]|snmp|soap\.beeps?|soldat|spotify|ssh|steam|svn|tag|teamspeak|tel(?:net)?|tftp|things|thismessage|tip|tn3270|tv|udp|unreal|urn|ut2004|vemmi|ventrilo|view-source|webcal|wss?|wtai|wyciwyg|xcon(?:-userid)?|xfire|xmlrpc\.beeps?|xmpp|xri|ymsgr|z39\.50[rs]?):(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]|\([^\s()<>]*\))+(?:\([^\s()<>]*\)|[^\s`*!()\[\]{};:'".,<>?«»“”‘’]))/i;o.defineMode("gfm",function(s,a){var f=0;function p(y){return y.code=!1,null}var c={startState:function(){return{code:!1,codeBlock:!1,ateSpace:!1}},copyState:function(y){return{code:y.code,codeBlock:y.codeBlock,ateSpace:y.ateSpace}},token:function(y,x){if(x.combineTokens=null,x.codeBlock)return y.match(/^```+/)?(x.codeBlock=!1,null):(y.skipToEnd(),null);if(y.sol()&&(x.code=!1),y.sol()&&y.match(/^```+/))return y.skipToEnd(),x.codeBlock=!0,null;if(y.peek()==="`"){y.next();var C=y.pos;y.eatWhile("`");var S=1+y.pos-C;return x.code?S===f&&(x.code=!1):(f=S,x.code=!0),null}else if(x.code)return y.next(),null;if(y.eatSpace())return x.ateSpace=!0,null;if((y.sol()||x.ateSpace)&&(x.ateSpace=!1,a.gitHubSpice!==!1)){if(y.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+@)?(?=.{0,6}\d)(?:[a-f0-9]{7,40}\b)/))return x.combineTokens=!0,"link";if(y.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+)?#[0-9]+\b/))return x.combineTokens=!0,"link"}return y.match(l)&&y.string.slice(y.start-2,y.start)!="]("&&(y.start==0||/\W/.test(y.string.charAt(y.start-1)))?(x.combineTokens=!0,"link"):(y.next(),null)},blankLine:p},d={taskLists:!0,strikethrough:!0,emoji:!0};for(var m in a)d[m]=a[m];return d.name="markdown",o.overlayMode(o.getMode(s,d),c)},"markdown"),o.defineMIME("text/x-gfm","gfm")})});var Tf=at(()=>{});var Lf=at((Ig,ul)=>{var sl;(function(){"use strict";sl=function(o,l,s,a){a=a||{},this.dictionary=null,this.rules={},this.dictionaryTable=new Map,this.compoundRules=[],this.compoundRuleCodes={},this.replacementTable=[],this.flags=a.flags||{},this.memoized={},this.loaded=!1;var f=this,p,c,d,m,y;o&&(f.dictionary=o,l&&s?F():(typeof window<"u"?(a.dictionaryPath?p=a.dictionaryPath:p="typo/dictionaries",window.chrome&&window.chrome.runtime&&window.chrome.runtime.getURL?p=window.chrome.runtime.getURL(p):window.browser&&window.browser.runtime&&window.browser.runtime.getURL&&(p=window.browser.runtime.getURL(p))):typeof __dirname<"u"?p=__dirname+"/dictionaries":p="./dictionaries",l||x(p+"/"+o+"/"+o+".aff",C),s||x(p+"/"+o+"/"+o+".dic",S)));function x(_,L){var T=f._readFile(_,null,a?.asyncLoad);a?.asyncLoad?T.then(function(O){L(O)}):L(T)}function C(_){l=_,s&&F()}function S(_){s=_,l&&F()}function F(){for(f.rules=f._parseAFF(l),f.compoundRuleCodes={},c=0,m=f.compoundRules.length;c0&&(q.continuationClasses=I),P!=="."&&(S==="SFX"?q.match=new RegExp(P+"$"):q.match=new RegExp("^"+P)),T!="0"&&(S==="SFX"?q.remove=new RegExp(T+"$"):q.remove=T),L.push(q)}l[F]={type:S,combineable:_==="Y",entries:L},c+=f}else if(S==="COMPOUNDRULE"){for(f=parseInt(C[1],10),d=c+1,y=c+1+f;d0&&(s.get(le)===null&&s.set(le,[]),s.get(le).push(j))}for(var f=1,p=l.length;f1){var x=this.parseRuleCodes(m[1]);(!("NEEDAFFIX"in this.flags)||x.indexOf(this.flags.NEEDAFFIX)===-1)&&a(y,x);for(var C=0,S=x.length;C"u"){if("COMPOUNDMIN"in this.flags&&o.length>=this.flags.COMPOUNDMIN){for(s=0,a=this.compoundRules.length;s"u"&&(s=Array.prototype.concat.apply([],this.dictionaryTable.get(o))),s&&s.indexOf(this.flags[l])!==-1))},alphabet:"",suggest:function(o,l){if(!this.loaded)throw"Dictionary not loaded.";if(l=l||5,this.memoized.hasOwnProperty(o)){var s=this.memoized[o].limit;if(l<=s||this.memoized[o].suggestions.length1&&K[1][1]!==K[1][0]&&(P=K[0]+K[1][1]+K[1][0]+K[1].substring(2),(!F||y.check(P))&&(P in _?_[P]+=1:_[P]=1)),K[1]){var me=K[1].substring(0,1).toUpperCase()===K[1].substring(0,1)?"uppercase":"lowercase";for(T=0;Tee?1:le[0].localeCompare(U[0])}P.sort(q).reverse();var G=[],K="lowercase";S.toUpperCase()===S?K="uppercase":S.substr(0,1).toUpperCase()+S.substr(1).toLowerCase()===S&&(K="capitalized");var me=l;for(N=0;N{"use strict";var Mf=Lf();function Ie(o){if(o=o||{},typeof o.codeMirrorInstance!="function"||typeof o.codeMirrorInstance.defineMode!="function"){console.log("CodeMirror Spell Checker: You must provide an instance of CodeMirror via the option `codeMirrorInstance`");return}String.prototype.includes||(String.prototype.includes=function(){"use strict";return String.prototype.indexOf.apply(this,arguments)!==-1}),o.codeMirrorInstance.defineMode("spell-checker",function(l){if(!Ie.aff_loading){Ie.aff_loading=!0;var s=new XMLHttpRequest;s.open("GET","https://cdn.jsdelivr.net/codemirror.spell-checker/latest/en_US.aff",!0),s.onload=function(){s.readyState===4&&s.status===200&&(Ie.aff_data=s.responseText,Ie.num_loaded++,Ie.num_loaded==2&&(Ie.typo=new Mf("en_US",Ie.aff_data,Ie.dic_data,{platform:"any"})))},s.send(null)}if(!Ie.dic_loading){Ie.dic_loading=!0;var a=new XMLHttpRequest;a.open("GET","https://cdn.jsdelivr.net/codemirror.spell-checker/latest/en_US.dic",!0),a.onload=function(){a.readyState===4&&a.status===200&&(Ie.dic_data=a.responseText,Ie.num_loaded++,Ie.num_loaded==2&&(Ie.typo=new Mf("en_US",Ie.aff_data,Ie.dic_data,{platform:"any"})))},a.send(null)}var f='!"#$%&()*+,-./:;<=>?@[\\]^_`{|}~ ',p={token:function(d){var m=d.peek(),y="";if(f.includes(m))return d.next(),null;for(;(m=d.peek())!=null&&!f.includes(m);)y+=m,d.next();return Ie.typo&&!Ie.typo.check(y)?"spell-error":null}},c=o.codeMirrorInstance.getMode(l,l.backdrop||"text/plain");return o.codeMirrorInstance.overlayMode(c,p,!0)})}Ie.num_loaded=0;Ie.aff_loading=!1;Ie.dic_loading=!1;Ie.aff_data="";Ie.dic_data="";Ie.typo;_f.exports=Ie});var Xf=at(Be=>{"use strict";function Nf(o,l){for(var s=0;so.length)&&(l=o.length);for(var s=0,a=new Array(l);s=o.length?{done:!0}:{done:!1,value:o[a++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Qh(o,l){if(typeof o!="object"||o===null)return o;var s=o[Symbol.toPrimitive];if(s!==void 0){var a=s.call(o,l||"default");if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(l==="string"?String:Number)(o)}function Jh(o){var l=Qh(o,"string");return typeof l=="symbol"?l:String(l)}function fl(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}Be.defaults=fl();function $h(o){Be.defaults=o}var qf=/[&<>"']/,Vh=new RegExp(qf.source,"g"),Uf=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,ep=new RegExp(Uf.source,"g"),tp={"&":"&","<":"<",">":">",'"':""","'":"'"},If=function(l){return tp[l]};function ht(o,l){if(l){if(qf.test(o))return o.replace(Vh,If)}else if(Uf.test(o))return o.replace(ep,If);return o}var rp=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function jf(o){return o.replace(rp,function(l,s){return s=s.toLowerCase(),s==="colon"?":":s.charAt(0)==="#"?s.charAt(1)==="x"?String.fromCharCode(parseInt(s.substring(2),16)):String.fromCharCode(+s.substring(1)):""})}var np=/(^|[^\[])\^/g;function Me(o,l){o=typeof o=="string"?o:o.source,l=l||"";var s={replace:function(f,p){return p=p.source||p,p=p.replace(np,"$1"),o=o.replace(f,p),s},getRegex:function(){return new RegExp(o,l)}};return s}var ip=/[^\w:]/g,op=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function Pf(o,l,s){if(o){var a;try{a=decodeURIComponent(jf(s)).replace(ip,"").toLowerCase()}catch{return null}if(a.indexOf("javascript:")===0||a.indexOf("vbscript:")===0||a.indexOf("data:")===0)return null}l&&!op.test(s)&&(s=up(l,s));try{s=encodeURI(s).replace(/%25/g,"%")}catch{return null}return s}var io={},ap=/^[^:]+:\/*[^/]*$/,lp=/^([^:]+:)[\s\S]*$/,sp=/^([^:]+:\/*[^/]*)[\s\S]*$/;function up(o,l){io[" "+o]||(ap.test(o)?io[" "+o]=o+"/":io[" "+o]=oo(o,"/",!0)),o=io[" "+o];var s=o.indexOf(":")===-1;return l.substring(0,2)==="//"?s?l:o.replace(lp,"$1")+l:l.charAt(0)==="/"?s?l:o.replace(sp,"$1")+l:o+l}var ao={exec:function(){}};function zf(o,l){var s=o.replace(/\|/g,function(p,c,d){for(var m=!1,y=c;--y>=0&&d[y]==="\\";)m=!m;return m?"|":" |"}),a=s.split(/ \|/),f=0;if(a[0].trim()||a.shift(),a.length>0&&!a[a.length-1].trim()&&a.pop(),a.length>l)a.splice(l);else for(;a.length1;)l&1&&(s+=o),l>>=1,o+=o;return s+o}function Rf(o,l,s,a){var f=l.href,p=l.title?ht(l.title):null,c=o[1].replace(/\\([\[\]])/g,"$1");if(o[0].charAt(0)!=="!"){a.state.inLink=!0;var d={type:"link",raw:s,href:f,title:p,text:c,tokens:a.inlineTokens(c)};return a.state.inLink=!1,d}return{type:"image",raw:s,href:f,title:p,text:ht(c)}}function dp(o,l){var s=o.match(/^(\s+)(?:```)/);if(s===null)return l;var a=s[1];return l.split(` `).map(function(f){var p=f.match(/^\s+/);if(p===null)return f;var c=p[0];return c.length>=a.length?f.slice(a.length):f}).join(` -`)}var ao=function(){function o(s){this.options=s||_e.defaults}var l=o.prototype;return l.space=function(a){var f=this.rules.block.newline.exec(a);if(f&&f[0].length>0)return{type:"space",raw:f[0]}},l.code=function(a){var f=this.rules.block.code.exec(a);if(f){var p=f[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:f[0],codeBlockStyle:"indented",text:this.options.pedantic?p:io(p,` -`)}}},l.fences=function(a){var f=this.rules.block.fences.exec(a);if(f){var p=f[0],c=fp(p,f[3]||"");return{type:"code",raw:p,lang:f[2]?f[2].trim().replace(this.rules.inline._escapes,"$1"):f[2],text:c}}},l.heading=function(a){var f=this.rules.block.heading.exec(a);if(f){var p=f[2].trim();if(/#$/.test(p)){var c=io(p,"#");(this.options.pedantic||!c||/ $/.test(c))&&(p=c.trim())}return{type:"heading",raw:f[0],depth:f[1].length,text:p,tokens:this.lexer.inline(p)}}},l.hr=function(a){var f=this.rules.block.hr.exec(a);if(f)return{type:"hr",raw:f[0]}},l.blockquote=function(a){var f=this.rules.block.blockquote.exec(a);if(f){var p=f[0].replace(/^ *>[ \t]?/gm,""),c=this.lexer.state.top;this.lexer.state.top=!0;var h=this.lexer.blockTokens(p);return this.lexer.state.top=c,{type:"blockquote",raw:f[0],tokens:h,text:p}}},l.list=function(a){var f=this.rules.block.list.exec(a);if(f){var p,c,h,b,y,x,C,E,F,_,L,T,O=f[1].trim(),N=O.length>1,P={type:"list",raw:"",ordered:N,start:N?+O.slice(0,-1):"",loose:!1,items:[]};O=N?"\\d{1,9}\\"+O.slice(-1):"\\"+O,this.options.pedantic&&(O=N?O:"[*+-]");for(var I=new RegExp("^( {0,3}"+O+")((?:[ ][^\\n]*)?(?:\\n|$))");a&&(T=!1,!(!(f=I.exec(a))||this.rules.block.hr.test(a)));){if(p=f[0],a=a.substring(p.length),E=f[2].split(` -`,1)[0].replace(/^\t+/,function(se){return" ".repeat(3*se.length)}),F=a.split(` -`,1)[0],this.options.pedantic?(b=2,L=E.trimLeft()):(b=f[2].search(/[^ ]/),b=b>4?1:b,L=E.slice(b),b+=f[1].length),x=!1,!E&&/^ *$/.test(F)&&(p+=F+` -`,a=a.substring(F.length+1),T=!0),!T)for(var W=new RegExp("^ {0,"+Math.min(3,b-1)+"}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))"),j=new RegExp("^ {0,"+Math.min(3,b-1)+"}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)"),X=new RegExp("^ {0,"+Math.min(3,b-1)+"}(?:```|~~~)"),be=new RegExp("^ {0,"+Math.min(3,b-1)+"}#");a&&(_=a.split(` -`,1)[0],F=_,this.options.pedantic&&(F=F.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(X.test(F)||be.test(F)||W.test(F)||j.test(a)));){if(F.search(/[^ ]/)>=b||!F.trim())L+=` -`+F.slice(b);else{if(x||E.search(/[^ ]/)>=4||X.test(E)||be.test(E)||j.test(E))break;L+=` +`)}var lo=function(){function o(s){this.options=s||Be.defaults}var l=o.prototype;return l.space=function(a){var f=this.rules.block.newline.exec(a);if(f&&f[0].length>0)return{type:"space",raw:f[0]}},l.code=function(a){var f=this.rules.block.code.exec(a);if(f){var p=f[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:f[0],codeBlockStyle:"indented",text:this.options.pedantic?p:oo(p,` +`)}}},l.fences=function(a){var f=this.rules.block.fences.exec(a);if(f){var p=f[0],c=dp(p,f[3]||"");return{type:"code",raw:p,lang:f[2]?f[2].trim().replace(this.rules.inline._escapes,"$1"):f[2],text:c}}},l.heading=function(a){var f=this.rules.block.heading.exec(a);if(f){var p=f[2].trim();if(/#$/.test(p)){var c=oo(p,"#");(this.options.pedantic||!c||/ $/.test(c))&&(p=c.trim())}return{type:"heading",raw:f[0],depth:f[1].length,text:p,tokens:this.lexer.inline(p)}}},l.hr=function(a){var f=this.rules.block.hr.exec(a);if(f)return{type:"hr",raw:f[0]}},l.blockquote=function(a){var f=this.rules.block.blockquote.exec(a);if(f){var p=f[0].replace(/^ *>[ \t]?/gm,""),c=this.lexer.state.top;this.lexer.state.top=!0;var d=this.lexer.blockTokens(p);return this.lexer.state.top=c,{type:"blockquote",raw:f[0],tokens:d,text:p}}},l.list=function(a){var f=this.rules.block.list.exec(a);if(f){var p,c,d,m,y,x,C,S,F,_,L,T,O=f[1].trim(),N=O.length>1,I={type:"list",raw:"",ordered:N,start:N?+O.slice(0,-1):"",loose:!1,items:[]};O=N?"\\d{1,9}\\"+O.slice(-1):"\\"+O,this.options.pedantic&&(O=N?O:"[*+-]");for(var P=new RegExp("^( {0,3}"+O+")((?:[ ][^\\n]*)?(?:\\n|$))");a&&(T=!1,!(!(f=P.exec(a))||this.rules.block.hr.test(a)));){if(p=f[0],a=a.substring(p.length),S=f[2].split(` +`,1)[0].replace(/^\t+/,function(ee){return" ".repeat(3*ee.length)}),F=a.split(` +`,1)[0],this.options.pedantic?(m=2,L=S.trimLeft()):(m=f[2].search(/[^ ]/),m=m>4?1:m,L=S.slice(m),m+=f[1].length),x=!1,!S&&/^ *$/.test(F)&&(p+=F+` +`,a=a.substring(F.length+1),T=!0),!T)for(var q=new RegExp("^ {0,"+Math.min(3,m-1)+"}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))"),G=new RegExp("^ {0,"+Math.min(3,m-1)+"}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)"),K=new RegExp("^ {0,"+Math.min(3,m-1)+"}(?:```|~~~)"),me=new RegExp("^ {0,"+Math.min(3,m-1)+"}#");a&&(_=a.split(` +`,1)[0],F=_,this.options.pedantic&&(F=F.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(K.test(F)||me.test(F)||q.test(F)||G.test(a)));){if(F.search(/[^ ]/)>=m||!F.trim())L+=` +`+F.slice(m);else{if(x||S.search(/[^ ]/)>=4||K.test(S)||me.test(S)||G.test(S))break;L+=` `+F}!x&&!F.trim()&&(x=!0),p+=_+` -`,a=a.substring(_.length+1),E=F.slice(b)}P.loose||(C?P.loose=!0:/\n *\n *$/.test(p)&&(C=!0)),this.options.gfm&&(c=/^\[[ xX]\] /.exec(L),c&&(h=c[0]!=="[ ] ",L=L.replace(/^\[[ xX]\] +/,""))),P.items.push({type:"list_item",raw:p,task:!!c,checked:h,loose:!1,text:L}),P.raw+=p}P.items[P.items.length-1].raw=p.trimRight(),P.items[P.items.length-1].text=L.trimRight(),P.raw=P.raw.trimRight();var U=P.items.length;for(y=0;y0&&ae.some(function(se){return/\n.*\n/.test(se.raw)});P.loose=ne}if(P.loose)for(y=0;y$/,"$1").replace(this.rules.inline._escapes,"$1"):"",h=f[3]?f[3].substring(1,f[3].length-1).replace(this.rules.inline._escapes,"$1"):f[3];return{type:"def",tag:p,raw:f[0],href:c,title:h}}},l.table=function(a){var f=this.rules.block.table.exec(a);if(f){var p={type:"table",header:If(f[1]).map(function(C){return{text:C}}),align:f[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:f[3]&&f[3].trim()?f[3].replace(/\n[ \t]*$/,"").split(` -`):[]};if(p.header.length===p.align.length){p.raw=f[0];var c=p.align.length,h,b,y,x;for(h=0;h/i.test(f[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(f[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(f[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:f[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(f[0]):pt(f[0]):f[0]}},l.link=function(a){var f=this.rules.inline.link.exec(a);if(f){var p=f[2].trim();if(!this.options.pedantic&&/^$/.test(p))return;var c=io(p.slice(0,-1),"\\");if((p.length-c.length)%2===0)return}else{var h=sp(f[2],"()");if(h>-1){var b=f[0].indexOf("!")===0?5:4,y=b+f[1].length+h;f[2]=f[2].substring(0,h),f[0]=f[0].substring(0,y).trim(),f[3]=""}}var x=f[2],C="";if(this.options.pedantic){var E=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(x);E&&(x=E[1],C=E[3])}else C=f[3]?f[3].slice(1,-1):"";return x=x.trim(),/^$/.test(p)?x=x.slice(1):x=x.slice(1,-1)),zf(f,{href:x&&x.replace(this.rules.inline._escapes,"$1"),title:C&&C.replace(this.rules.inline._escapes,"$1")},f[0],this.lexer)}},l.reflink=function(a,f){var p;if((p=this.rules.inline.reflink.exec(a))||(p=this.rules.inline.nolink.exec(a))){var c=(p[2]||p[1]).replace(/\s+/g," ");if(c=f[c.toLowerCase()],!c){var h=p[0].charAt(0);return{type:"text",raw:h,text:h}}return zf(p,c,p[0],this.lexer)}},l.emStrong=function(a,f,p){p===void 0&&(p="");var c=this.rules.inline.emStrong.lDelim.exec(a);if(c&&!(c[3]&&p.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var h=c[1]||c[2]||"";if(!h||h&&(p===""||this.rules.inline.punctuation.exec(p))){var b=c[0].length-1,y,x,C=b,E=0,F=c[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(F.lastIndex=0,f=f.slice(-1*a.length+b);(c=F.exec(f))!=null;)if(y=c[1]||c[2]||c[3]||c[4]||c[5]||c[6],!!y){if(x=y.length,c[3]||c[4]){C+=x;continue}else if((c[5]||c[6])&&b%3&&!((b+x)%3)){E+=x;continue}if(C-=x,!(C>0)){x=Math.min(x,x+C+E);var _=a.slice(0,b+c.index+(c[0].length-y.length)+x);if(Math.min(b,x)%2){var L=_.slice(1,-1);return{type:"em",raw:_,text:L,tokens:this.lexer.inlineTokens(L)}}var T=_.slice(2,-2);return{type:"strong",raw:_,text:T,tokens:this.lexer.inlineTokens(T)}}}}}},l.codespan=function(a){var f=this.rules.inline.code.exec(a);if(f){var p=f[2].replace(/\n/g," "),c=/[^ ]/.test(p),h=/^ /.test(p)&&/ $/.test(p);return c&&h&&(p=p.substring(1,p.length-1)),p=pt(p,!0),{type:"codespan",raw:f[0],text:p}}},l.br=function(a){var f=this.rules.inline.br.exec(a);if(f)return{type:"br",raw:f[0]}},l.del=function(a){var f=this.rules.inline.del.exec(a);if(f)return{type:"del",raw:f[0],text:f[2],tokens:this.lexer.inlineTokens(f[2])}},l.autolink=function(a,f){var p=this.rules.inline.autolink.exec(a);if(p){var c,h;return p[2]==="@"?(c=pt(this.options.mangle?f(p[1]):p[1]),h="mailto:"+c):(c=pt(p[1]),h=c),{type:"link",raw:p[0],text:c,href:h,tokens:[{type:"text",raw:c,text:c}]}}},l.url=function(a,f){var p;if(p=this.rules.inline.url.exec(a)){var c,h;if(p[2]==="@")c=pt(this.options.mangle?f(p[0]):p[0]),h="mailto:"+c;else{var b;do b=p[0],p[0]=this.rules.inline._backpedal.exec(p[0])[0];while(b!==p[0]);c=pt(p[0]),p[1]==="www."?h="http://"+p[0]:h=p[0]}return{type:"link",raw:p[0],text:c,href:h,tokens:[{type:"text",raw:c,text:c}]}}},l.inlineText=function(a,f){var p=this.rules.inline.text.exec(a);if(p){var c;return this.lexer.state.inRawBlock?c=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(p[0]):pt(p[0]):p[0]:c=pt(this.options.smartypants?f(p[0]):p[0]),{type:"text",raw:p[0],text:c}}},o}(),de={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:oo,lheading:/^((?:.|\n(?!\n))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};de._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/;de._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;de.def=Le(de.def).replace("label",de._label).replace("title",de._title).getRegex();de.bullet=/(?:[*+-]|\d{1,9}[.)])/;de.listItemStart=Le(/^( *)(bull) */).replace("bull",de.bullet).getRegex();de.list=Le(de.list).replace(/bull/g,de.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+de.def.source+")").getRegex();de._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";de._comment=/|$)/;de.html=Le(de.html,"i").replace("comment",de._comment).replace("tag",de._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();de.paragraph=Le(de._paragraph).replace("hr",de.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",de._tag).getRegex();de.blockquote=Le(de.blockquote).replace("paragraph",de.paragraph).getRegex();de.normal=_t({},de);de.gfm=_t({},de.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"});de.gfm.table=Le(de.gfm.table).replace("hr",de.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",de._tag).getRegex();de.gfm.paragraph=Le(de._paragraph).replace("hr",de.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",de.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",de._tag).getRegex();de.pedantic=_t({},de.normal,{html:Le(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:oo,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Le(de.normal._paragraph).replace("hr",de.hr).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",de.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var re={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:oo,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,rDelimUnd:/^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:oo,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~";re.punctuation=Le(re.punctuation).replace(/punctuation/g,re._punctuation).getRegex();re.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;re.escapedEmSt=/(?:^|[^\\])(?:\\\\)*\\[*_]/g;re._comment=Le(de._comment).replace("(?:-->|$)","-->").getRegex();re.emStrong.lDelim=Le(re.emStrong.lDelim).replace(/punct/g,re._punctuation).getRegex();re.emStrong.rDelimAst=Le(re.emStrong.rDelimAst,"g").replace(/punct/g,re._punctuation).getRegex();re.emStrong.rDelimUnd=Le(re.emStrong.rDelimUnd,"g").replace(/punct/g,re._punctuation).getRegex();re._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;re._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;re._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;re.autolink=Le(re.autolink).replace("scheme",re._scheme).replace("email",re._email).getRegex();re._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;re.tag=Le(re.tag).replace("comment",re._comment).replace("attribute",re._attribute).getRegex();re._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;re._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;re._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;re.link=Le(re.link).replace("label",re._label).replace("href",re._href).replace("title",re._title).getRegex();re.reflink=Le(re.reflink).replace("label",re._label).replace("ref",de._label).getRegex();re.nolink=Le(re.nolink).replace("ref",de._label).getRegex();re.reflinkSearch=Le(re.reflinkSearch,"g").replace("reflink",re.reflink).replace("nolink",re.nolink).getRegex();re.normal=_t({},re);re.pedantic=_t({},re.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Le(/^!?\[(label)\]\((.*?)\)/).replace("label",re._label).getRegex(),reflink:Le(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",re._label).getRegex()});re.gfm=_t({},re.normal,{escape:Le(re.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(a="x"+a.toString(16)),l+="&#"+a+";";return l}var yn=function(){function o(s){this.tokens=[],this.tokens.links=Object.create(null),this.options=s||_e.defaults,this.options.tokenizer=this.options.tokenizer||new ao,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var a={block:de.normal,inline:re.normal};this.options.pedantic?(a.block=de.pedantic,a.inline=re.pedantic):this.options.gfm&&(a.block=de.gfm,this.options.breaks?a.inline=re.breaks:a.inline=re.gfm),this.tokenizer.rules=a}o.lex=function(a,f){var p=new o(f);return p.lex(a)},o.lexInline=function(a,f){var p=new o(f);return p.inlineTokens(a)};var l=o.prototype;return l.lex=function(a){a=a.replace(/\r\n|\r/g,` -`),this.blockTokens(a,this.tokens);for(var f;f=this.inlineQueue.shift();)this.inlineTokens(f.src,f.tokens);return this.tokens},l.blockTokens=function(a,f){var p=this;f===void 0&&(f=[]),this.options.pedantic?a=a.replace(/\t/g," ").replace(/^ +$/gm,""):a=a.replace(/^( *)(\t+)/gm,function(C,E,F){return E+" ".repeat(F.length)});for(var c,h,b,y;a;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(C){return(c=C.call({lexer:p},a,f))?(a=a.substring(c.raw.length),f.push(c),!0):!1}))){if(c=this.tokenizer.space(a)){a=a.substring(c.raw.length),c.raw.length===1&&f.length>0?f[f.length-1].raw+=` -`:f.push(c);continue}if(c=this.tokenizer.code(a)){a=a.substring(c.raw.length),h=f[f.length-1],h&&(h.type==="paragraph"||h.type==="text")?(h.raw+=` -`+c.raw,h.text+=` -`+c.text,this.inlineQueue[this.inlineQueue.length-1].src=h.text):f.push(c);continue}if(c=this.tokenizer.fences(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.heading(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.hr(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.blockquote(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.list(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.html(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.def(a)){a=a.substring(c.raw.length),h=f[f.length-1],h&&(h.type==="paragraph"||h.type==="text")?(h.raw+=` -`+c.raw,h.text+=` -`+c.raw,this.inlineQueue[this.inlineQueue.length-1].src=h.text):this.tokens.links[c.tag]||(this.tokens.links[c.tag]={href:c.href,title:c.title});continue}if(c=this.tokenizer.table(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.lheading(a)){a=a.substring(c.raw.length),f.push(c);continue}if(b=a,this.options.extensions&&this.options.extensions.startBlock&&function(){var C=1/0,E=a.slice(1),F=void 0;p.options.extensions.startBlock.forEach(function(_){F=_.call({lexer:this},E),typeof F=="number"&&F>=0&&(C=Math.min(C,F))}),C<1/0&&C>=0&&(b=a.substring(0,C+1))}(),this.state.top&&(c=this.tokenizer.paragraph(b))){h=f[f.length-1],y&&h.type==="paragraph"?(h.raw+=` -`+c.raw,h.text+=` -`+c.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=h.text):f.push(c),y=b.length!==a.length,a=a.substring(c.raw.length);continue}if(c=this.tokenizer.text(a)){a=a.substring(c.raw.length),h=f[f.length-1],h&&h.type==="text"?(h.raw+=` -`+c.raw,h.text+=` -`+c.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=h.text):f.push(c);continue}if(a){var x="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(x);break}else throw new Error(x)}}return this.state.top=!0,f},l.inline=function(a,f){return f===void 0&&(f=[]),this.inlineQueue.push({src:a,tokens:f}),f},l.inlineTokens=function(a,f){var p=this;f===void 0&&(f=[]);var c,h,b,y=a,x,C,E;if(this.tokens.links){var F=Object.keys(this.tokens.links);if(F.length>0)for(;(x=this.tokenizer.rules.inline.reflinkSearch.exec(y))!=null;)F.includes(x[0].slice(x[0].lastIndexOf("[")+1,-1))&&(y=y.slice(0,x.index)+"["+Pf("a",x[0].length-2)+"]"+y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(x=this.tokenizer.rules.inline.blockSkip.exec(y))!=null;)y=y.slice(0,x.index)+"["+Pf("a",x[0].length-2)+"]"+y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(x=this.tokenizer.rules.inline.escapedEmSt.exec(y))!=null;)y=y.slice(0,x.index+x[0].length-2)+"++"+y.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex),this.tokenizer.rules.inline.escapedEmSt.lastIndex--;for(;a;)if(C||(E=""),C=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(L){return(c=L.call({lexer:p},a,f))?(a=a.substring(c.raw.length),f.push(c),!0):!1}))){if(c=this.tokenizer.escape(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.tag(a)){a=a.substring(c.raw.length),h=f[f.length-1],h&&c.type==="text"&&h.type==="text"?(h.raw+=c.raw,h.text+=c.text):f.push(c);continue}if(c=this.tokenizer.link(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.reflink(a,this.tokens.links)){a=a.substring(c.raw.length),h=f[f.length-1],h&&c.type==="text"&&h.type==="text"?(h.raw+=c.raw,h.text+=c.text):f.push(c);continue}if(c=this.tokenizer.emStrong(a,y,E)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.codespan(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.br(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.del(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.autolink(a,Hf)){a=a.substring(c.raw.length),f.push(c);continue}if(!this.state.inLink&&(c=this.tokenizer.url(a,Hf))){a=a.substring(c.raw.length),f.push(c);continue}if(b=a,this.options.extensions&&this.options.extensions.startInline&&function(){var L=1/0,T=a.slice(1),O=void 0;p.options.extensions.startInline.forEach(function(N){O=N.call({lexer:this},T),typeof O=="number"&&O>=0&&(L=Math.min(L,O))}),L<1/0&&L>=0&&(b=a.substring(0,L+1))}(),c=this.tokenizer.inlineText(b,cp)){a=a.substring(c.raw.length),c.raw.slice(-1)!=="_"&&(E=c.raw.slice(-1)),C=!0,h=f[f.length-1],h&&h.type==="text"?(h.raw+=c.raw,h.text+=c.text):f.push(c);continue}if(a){var _="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(_);break}else throw new Error(_)}}return f},Xh(o,null,[{key:"rules",get:function(){return{block:de,inline:re}}}]),o}(),lo=function(){function o(s){this.options=s||_e.defaults}var l=o.prototype;return l.code=function(a,f,p){var c=(f||"").match(/\S*/)[0];if(this.options.highlight){var h=this.options.highlight(a,c);h!=null&&h!==a&&(p=!0,a=h)}return a=a.replace(/\n$/,"")+` -`,c?'
'+(p?a:pt(a,!0))+`
-`:"
"+(p?a:pt(a,!0))+`
+`,a=a.substring(_.length+1),S=F.slice(m)}I.loose||(C?I.loose=!0:/\n *\n *$/.test(p)&&(C=!0)),this.options.gfm&&(c=/^\[[ xX]\] /.exec(L),c&&(d=c[0]!=="[ ] ",L=L.replace(/^\[[ xX]\] +/,""))),I.items.push({type:"list_item",raw:p,task:!!c,checked:d,loose:!1,text:L}),I.raw+=p}I.items[I.items.length-1].raw=p.trimRight(),I.items[I.items.length-1].text=L.trimRight(),I.raw=I.raw.trimRight();var U=I.items.length;for(y=0;y0&&le.some(function(ee){return/\n.*\n/.test(ee.raw)});I.loose=j}if(I.loose)for(y=0;y$/,"$1").replace(this.rules.inline._escapes,"$1"):"",d=f[3]?f[3].substring(1,f[3].length-1).replace(this.rules.inline._escapes,"$1"):f[3];return{type:"def",tag:p,raw:f[0],href:c,title:d}}},l.table=function(a){var f=this.rules.block.table.exec(a);if(f){var p={type:"table",header:zf(f[1]).map(function(C){return{text:C}}),align:f[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:f[3]&&f[3].trim()?f[3].replace(/\n[ \t]*$/,"").split(` +`):[]};if(p.header.length===p.align.length){p.raw=f[0];var c=p.align.length,d,m,y,x;for(d=0;d/i.test(f[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(f[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(f[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:f[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(f[0]):ht(f[0]):f[0]}},l.link=function(a){var f=this.rules.inline.link.exec(a);if(f){var p=f[2].trim();if(!this.options.pedantic&&/^$/.test(p))return;var c=oo(p.slice(0,-1),"\\");if((p.length-c.length)%2===0)return}else{var d=fp(f[2],"()");if(d>-1){var m=f[0].indexOf("!")===0?5:4,y=m+f[1].length+d;f[2]=f[2].substring(0,d),f[0]=f[0].substring(0,y).trim(),f[3]=""}}var x=f[2],C="";if(this.options.pedantic){var S=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(x);S&&(x=S[1],C=S[3])}else C=f[3]?f[3].slice(1,-1):"";return x=x.trim(),/^$/.test(p)?x=x.slice(1):x=x.slice(1,-1)),Rf(f,{href:x&&x.replace(this.rules.inline._escapes,"$1"),title:C&&C.replace(this.rules.inline._escapes,"$1")},f[0],this.lexer)}},l.reflink=function(a,f){var p;if((p=this.rules.inline.reflink.exec(a))||(p=this.rules.inline.nolink.exec(a))){var c=(p[2]||p[1]).replace(/\s+/g," ");if(c=f[c.toLowerCase()],!c){var d=p[0].charAt(0);return{type:"text",raw:d,text:d}}return Rf(p,c,p[0],this.lexer)}},l.emStrong=function(a,f,p){p===void 0&&(p="");var c=this.rules.inline.emStrong.lDelim.exec(a);if(c&&!(c[3]&&p.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var d=c[1]||c[2]||"";if(!d||d&&(p===""||this.rules.inline.punctuation.exec(p))){var m=c[0].length-1,y,x,C=m,S=0,F=c[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(F.lastIndex=0,f=f.slice(-1*a.length+m);(c=F.exec(f))!=null;)if(y=c[1]||c[2]||c[3]||c[4]||c[5]||c[6],!!y){if(x=y.length,c[3]||c[4]){C+=x;continue}else if((c[5]||c[6])&&m%3&&!((m+x)%3)){S+=x;continue}if(C-=x,!(C>0)){x=Math.min(x,x+C+S);var _=a.slice(0,m+c.index+(c[0].length-y.length)+x);if(Math.min(m,x)%2){var L=_.slice(1,-1);return{type:"em",raw:_,text:L,tokens:this.lexer.inlineTokens(L)}}var T=_.slice(2,-2);return{type:"strong",raw:_,text:T,tokens:this.lexer.inlineTokens(T)}}}}}},l.codespan=function(a){var f=this.rules.inline.code.exec(a);if(f){var p=f[2].replace(/\n/g," "),c=/[^ ]/.test(p),d=/^ /.test(p)&&/ $/.test(p);return c&&d&&(p=p.substring(1,p.length-1)),p=ht(p,!0),{type:"codespan",raw:f[0],text:p}}},l.br=function(a){var f=this.rules.inline.br.exec(a);if(f)return{type:"br",raw:f[0]}},l.del=function(a){var f=this.rules.inline.del.exec(a);if(f)return{type:"del",raw:f[0],text:f[2],tokens:this.lexer.inlineTokens(f[2])}},l.autolink=function(a,f){var p=this.rules.inline.autolink.exec(a);if(p){var c,d;return p[2]==="@"?(c=ht(this.options.mangle?f(p[1]):p[1]),d="mailto:"+c):(c=ht(p[1]),d=c),{type:"link",raw:p[0],text:c,href:d,tokens:[{type:"text",raw:c,text:c}]}}},l.url=function(a,f){var p;if(p=this.rules.inline.url.exec(a)){var c,d;if(p[2]==="@")c=ht(this.options.mangle?f(p[0]):p[0]),d="mailto:"+c;else{var m;do m=p[0],p[0]=this.rules.inline._backpedal.exec(p[0])[0];while(m!==p[0]);c=ht(p[0]),p[1]==="www."?d="http://"+p[0]:d=p[0]}return{type:"link",raw:p[0],text:c,href:d,tokens:[{type:"text",raw:c,text:c}]}}},l.inlineText=function(a,f){var p=this.rules.inline.text.exec(a);if(p){var c;return this.lexer.state.inRawBlock?c=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(p[0]):ht(p[0]):p[0]:c=ht(this.options.smartypants?f(p[0]):p[0]),{type:"text",raw:p[0],text:c}}},o}(),ce={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:ao,lheading:/^((?:.|\n(?!\n))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};ce._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/;ce._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;ce.def=Me(ce.def).replace("label",ce._label).replace("title",ce._title).getRegex();ce.bullet=/(?:[*+-]|\d{1,9}[.)])/;ce.listItemStart=Me(/^( *)(bull) */).replace("bull",ce.bullet).getRegex();ce.list=Me(ce.list).replace(/bull/g,ce.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+ce.def.source+")").getRegex();ce._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";ce._comment=/|$)/;ce.html=Me(ce.html,"i").replace("comment",ce._comment).replace("tag",ce._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();ce.paragraph=Me(ce._paragraph).replace("hr",ce.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ce._tag).getRegex();ce.blockquote=Me(ce.blockquote).replace("paragraph",ce.paragraph).getRegex();ce.normal=_t({},ce);ce.gfm=_t({},ce.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"});ce.gfm.table=Me(ce.gfm.table).replace("hr",ce.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ce._tag).getRegex();ce.gfm.paragraph=Me(ce._paragraph).replace("hr",ce.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",ce.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ce._tag).getRegex();ce.pedantic=_t({},ce.normal,{html:Me(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ce._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:ao,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Me(ce.normal._paragraph).replace("hr",ce.hr).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",ce.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var ie={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:ao,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,rDelimUnd:/^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:ao,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~";ie.punctuation=Me(ie.punctuation).replace(/punctuation/g,ie._punctuation).getRegex();ie.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;ie.escapedEmSt=/(?:^|[^\\])(?:\\\\)*\\[*_]/g;ie._comment=Me(ce._comment).replace("(?:-->|$)","-->").getRegex();ie.emStrong.lDelim=Me(ie.emStrong.lDelim).replace(/punct/g,ie._punctuation).getRegex();ie.emStrong.rDelimAst=Me(ie.emStrong.rDelimAst,"g").replace(/punct/g,ie._punctuation).getRegex();ie.emStrong.rDelimUnd=Me(ie.emStrong.rDelimUnd,"g").replace(/punct/g,ie._punctuation).getRegex();ie._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;ie._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;ie._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;ie.autolink=Me(ie.autolink).replace("scheme",ie._scheme).replace("email",ie._email).getRegex();ie._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;ie.tag=Me(ie.tag).replace("comment",ie._comment).replace("attribute",ie._attribute).getRegex();ie._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;ie._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;ie._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;ie.link=Me(ie.link).replace("label",ie._label).replace("href",ie._href).replace("title",ie._title).getRegex();ie.reflink=Me(ie.reflink).replace("label",ie._label).replace("ref",ce._label).getRegex();ie.nolink=Me(ie.nolink).replace("ref",ce._label).getRegex();ie.reflinkSearch=Me(ie.reflinkSearch,"g").replace("reflink",ie.reflink).replace("nolink",ie.nolink).getRegex();ie.normal=_t({},ie);ie.pedantic=_t({},ie.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Me(/^!?\[(label)\]\((.*?)\)/).replace("label",ie._label).getRegex(),reflink:Me(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",ie._label).getRegex()});ie.gfm=_t({},ie.normal,{escape:Me(ie.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(a="x"+a.toString(16)),l+="&#"+a+";";return l}var yn=function(){function o(s){this.tokens=[],this.tokens.links=Object.create(null),this.options=s||Be.defaults,this.options.tokenizer=this.options.tokenizer||new lo,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var a={block:ce.normal,inline:ie.normal};this.options.pedantic?(a.block=ce.pedantic,a.inline=ie.pedantic):this.options.gfm&&(a.block=ce.gfm,this.options.breaks?a.inline=ie.breaks:a.inline=ie.gfm),this.tokenizer.rules=a}o.lex=function(a,f){var p=new o(f);return p.lex(a)},o.lexInline=function(a,f){var p=new o(f);return p.inlineTokens(a)};var l=o.prototype;return l.lex=function(a){a=a.replace(/\r\n|\r/g,` +`),this.blockTokens(a,this.tokens);for(var f;f=this.inlineQueue.shift();)this.inlineTokens(f.src,f.tokens);return this.tokens},l.blockTokens=function(a,f){var p=this;f===void 0&&(f=[]),this.options.pedantic?a=a.replace(/\t/g," ").replace(/^ +$/gm,""):a=a.replace(/^( *)(\t+)/gm,function(C,S,F){return S+" ".repeat(F.length)});for(var c,d,m,y;a;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(C){return(c=C.call({lexer:p},a,f))?(a=a.substring(c.raw.length),f.push(c),!0):!1}))){if(c=this.tokenizer.space(a)){a=a.substring(c.raw.length),c.raw.length===1&&f.length>0?f[f.length-1].raw+=` +`:f.push(c);continue}if(c=this.tokenizer.code(a)){a=a.substring(c.raw.length),d=f[f.length-1],d&&(d.type==="paragraph"||d.type==="text")?(d.raw+=` +`+c.raw,d.text+=` +`+c.text,this.inlineQueue[this.inlineQueue.length-1].src=d.text):f.push(c);continue}if(c=this.tokenizer.fences(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.heading(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.hr(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.blockquote(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.list(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.html(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.def(a)){a=a.substring(c.raw.length),d=f[f.length-1],d&&(d.type==="paragraph"||d.type==="text")?(d.raw+=` +`+c.raw,d.text+=` +`+c.raw,this.inlineQueue[this.inlineQueue.length-1].src=d.text):this.tokens.links[c.tag]||(this.tokens.links[c.tag]={href:c.href,title:c.title});continue}if(c=this.tokenizer.table(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.lheading(a)){a=a.substring(c.raw.length),f.push(c);continue}if(m=a,this.options.extensions&&this.options.extensions.startBlock&&function(){var C=1/0,S=a.slice(1),F=void 0;p.options.extensions.startBlock.forEach(function(_){F=_.call({lexer:this},S),typeof F=="number"&&F>=0&&(C=Math.min(C,F))}),C<1/0&&C>=0&&(m=a.substring(0,C+1))}(),this.state.top&&(c=this.tokenizer.paragraph(m))){d=f[f.length-1],y&&d.type==="paragraph"?(d.raw+=` +`+c.raw,d.text+=` +`+c.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=d.text):f.push(c),y=m.length!==a.length,a=a.substring(c.raw.length);continue}if(c=this.tokenizer.text(a)){a=a.substring(c.raw.length),d=f[f.length-1],d&&d.type==="text"?(d.raw+=` +`+c.raw,d.text+=` +`+c.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=d.text):f.push(c);continue}if(a){var x="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(x);break}else throw new Error(x)}}return this.state.top=!0,f},l.inline=function(a,f){return f===void 0&&(f=[]),this.inlineQueue.push({src:a,tokens:f}),f},l.inlineTokens=function(a,f){var p=this;f===void 0&&(f=[]);var c,d,m,y=a,x,C,S;if(this.tokens.links){var F=Object.keys(this.tokens.links);if(F.length>0)for(;(x=this.tokenizer.rules.inline.reflinkSearch.exec(y))!=null;)F.includes(x[0].slice(x[0].lastIndexOf("[")+1,-1))&&(y=y.slice(0,x.index)+"["+Hf("a",x[0].length-2)+"]"+y.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(x=this.tokenizer.rules.inline.blockSkip.exec(y))!=null;)y=y.slice(0,x.index)+"["+Hf("a",x[0].length-2)+"]"+y.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(x=this.tokenizer.rules.inline.escapedEmSt.exec(y))!=null;)y=y.slice(0,x.index+x[0].length-2)+"++"+y.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex),this.tokenizer.rules.inline.escapedEmSt.lastIndex--;for(;a;)if(C||(S=""),C=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(L){return(c=L.call({lexer:p},a,f))?(a=a.substring(c.raw.length),f.push(c),!0):!1}))){if(c=this.tokenizer.escape(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.tag(a)){a=a.substring(c.raw.length),d=f[f.length-1],d&&c.type==="text"&&d.type==="text"?(d.raw+=c.raw,d.text+=c.text):f.push(c);continue}if(c=this.tokenizer.link(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.reflink(a,this.tokens.links)){a=a.substring(c.raw.length),d=f[f.length-1],d&&c.type==="text"&&d.type==="text"?(d.raw+=c.raw,d.text+=c.text):f.push(c);continue}if(c=this.tokenizer.emStrong(a,y,S)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.codespan(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.br(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.del(a)){a=a.substring(c.raw.length),f.push(c);continue}if(c=this.tokenizer.autolink(a,Wf)){a=a.substring(c.raw.length),f.push(c);continue}if(!this.state.inLink&&(c=this.tokenizer.url(a,Wf))){a=a.substring(c.raw.length),f.push(c);continue}if(m=a,this.options.extensions&&this.options.extensions.startInline&&function(){var L=1/0,T=a.slice(1),O=void 0;p.options.extensions.startInline.forEach(function(N){O=N.call({lexer:this},T),typeof O=="number"&&O>=0&&(L=Math.min(L,O))}),L<1/0&&L>=0&&(m=a.substring(0,L+1))}(),c=this.tokenizer.inlineText(m,hp)){a=a.substring(c.raw.length),c.raw.slice(-1)!=="_"&&(S=c.raw.slice(-1)),C=!0,d=f[f.length-1],d&&d.type==="text"?(d.raw+=c.raw,d.text+=c.text):f.push(c);continue}if(a){var _="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(_);break}else throw new Error(_)}}return f},Yh(o,null,[{key:"rules",get:function(){return{block:ce,inline:ie}}}]),o}(),so=function(){function o(s){this.options=s||Be.defaults}var l=o.prototype;return l.code=function(a,f,p){var c=(f||"").match(/\S*/)[0];if(this.options.highlight){var d=this.options.highlight(a,c);d!=null&&d!==a&&(p=!0,a=d)}return a=a.replace(/\n$/,"")+` +`,c?'
'+(p?a:ht(a,!0))+`
+`:"
"+(p?a:ht(a,!0))+`
`},l.blockquote=function(a){return`
`+a+`
-`},l.html=function(a){return a},l.heading=function(a,f,p,c){if(this.options.headerIds){var h=this.options.headerPrefix+c.slug(p);return"'+a+" +`},l.html=function(a){return a},l.heading=function(a,f,p,c){if(this.options.headerIds){var d=this.options.headerPrefix+c.slug(p);return"'+a+" `}return""+a+" `},l.hr=function(){return this.options.xhtml?`
`:`
-`},l.list=function(a,f,p){var c=f?"ol":"ul",h=f&&p!==1?' start="'+p+'"':"";return"<"+c+h+`> +`},l.list=function(a,f,p){var c=f?"ol":"ul",d=f&&p!==1?' start="'+p+'"':"";return"<"+c+d+`> `+a+" `},l.listitem=function(a){return"
  • "+a+`
  • `},l.checkbox=function(a){return" "},l.paragraph=function(a){return"

    "+a+`

    @@ -73,15 +73,15 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho `},l.tablerow=function(a){return` `+a+` `},l.tablecell=function(a,f){var p=f.header?"th":"td",c=f.align?"<"+p+' align="'+f.align+'">':"<"+p+">";return c+a+(" -`)},l.strong=function(a){return""+a+""},l.em=function(a){return""+a+""},l.codespan=function(a){return""+a+""},l.br=function(){return this.options.xhtml?"
    ":"
    "},l.del=function(a){return""+a+""},l.link=function(a,f,p){if(a=Of(this.options.sanitize,this.options.baseUrl,a),a===null)return p;var c='
    ",c},l.image=function(a,f,p){if(a=Of(this.options.sanitize,this.options.baseUrl,a),a===null)return p;var c=''+p+'":">",c},l.text=function(a){return a},o}(),fl=function(){function o(){}var l=o.prototype;return l.strong=function(a){return a},l.em=function(a){return a},l.codespan=function(a){return a},l.del=function(a){return a},l.html=function(a){return a},l.text=function(a){return a},l.link=function(a,f,p){return""+p},l.image=function(a,f,p){return""+p},l.br=function(){return""},o}(),cl=function(){function o(){this.seen={}}var l=o.prototype;return l.serialize=function(a){return a.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},l.getNextSafeSlug=function(a,f){var p=a,c=0;if(this.seen.hasOwnProperty(p)){c=this.seen[a];do c++,p=a+"-"+c;while(this.seen.hasOwnProperty(p))}return f||(this.seen[a]=c,this.seen[p]=0),p},l.slug=function(a,f){f===void 0&&(f={});var p=this.serialize(a);return this.getNextSafeSlug(p,f.dryrun)},o}(),xn=function(){function o(s){this.options=s||_e.defaults,this.options.renderer=this.options.renderer||new lo,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new fl,this.slugger=new cl}o.parse=function(a,f){var p=new o(f);return p.parse(a)},o.parseInline=function(a,f){var p=new o(f);return p.parseInline(a)};var l=o.prototype;return l.parse=function(a,f){f===void 0&&(f=!0);var p="",c,h,b,y,x,C,E,F,_,L,T,O,N,P,I,W,j,X,be,U=a.length;for(c=0;c0&&I.tokens[0].type==="paragraph"?(I.tokens[0].text=X+" "+I.tokens[0].text,I.tokens[0].tokens&&I.tokens[0].tokens.length>0&&I.tokens[0].tokens[0].type==="text"&&(I.tokens[0].tokens[0].text=X+" "+I.tokens[0].tokens[0].text)):I.tokens.unshift({type:"text",text:X}):P+=X),P+=this.parse(I.tokens,N),_+=this.renderer.listitem(P,j,W);p+=this.renderer.list(_,T,O);continue}case"html":{p+=this.renderer.html(L.text);continue}case"paragraph":{p+=this.renderer.paragraph(this.parseInline(L.tokens));continue}case"text":{for(_=L.tokens?this.parseInline(L.tokens):L.text;c+1";if(l)return Promise.resolve(f);if(s){s(null,f);return}return f}if(l)return Promise.reject(a);if(s){s(a);return}throw a}}function Uf(o,l){return function(s,a,f){typeof a=="function"&&(f=a,a=null);var p=_t({},a);a=_t({},ce.defaults,p);var c=dp(a.silent,a.async,f);if(typeof s>"u"||s===null)return c(new Error("marked(): input parameter is undefined or null"));if(typeof s!="string")return c(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(s)+", string expected"));if(up(a),a.hooks&&(a.hooks.options=a),f){var h=a.highlight,b;try{a.hooks&&(s=a.hooks.preprocess(s)),b=o(s,a)}catch(F){return c(F)}var y=function(_){var L;if(!_)try{a.walkTokens&&ce.walkTokens(b,a.walkTokens),L=l(b,a),a.hooks&&(L=a.hooks.postprocess(L))}catch(T){_=T}return a.highlight=h,_?c(_):f(null,L)};if(!h||h.length<3||(delete a.highlight,!b.length))return y();var x=0;ce.walkTokens(b,function(F){F.type==="code"&&(x++,setTimeout(function(){h(F.text,F.lang,function(_,L){if(_)return y(_);L!=null&&L!==F.text&&(F.text=L,F.escaped=!0),x--,x===0&&y()})},0))}),x===0&&y();return}if(a.async)return Promise.resolve(a.hooks?a.hooks.preprocess(s):s).then(function(F){return o(F,a)}).then(function(F){return a.walkTokens?Promise.all(ce.walkTokens(F,a.walkTokens)).then(function(){return F}):F}).then(function(F){return l(F,a)}).then(function(F){return a.hooks?a.hooks.postprocess(F):F}).catch(c);try{a.hooks&&(s=a.hooks.preprocess(s));var C=o(s,a);a.walkTokens&&ce.walkTokens(C,a.walkTokens);var E=l(C,a);return a.hooks&&(E=a.hooks.postprocess(E)),E}catch(F){return c(F)}}}function ce(o,l,s){return Uf(yn.lex,xn.parse)(o,l,s)}ce.options=ce.setOptions=function(o){return ce.defaults=_t({},ce.defaults,o),Qh(ce.defaults),ce};ce.getDefaults=ul;ce.defaults=_e.defaults;ce.use=function(){for(var o=ce.defaults.extensions||{renderers:{},childTokens:{}},l=arguments.length,s=new Array(l),a=0;a{"use strict";var Dn=Et();Qu();$u();tf();ol();al();pf();mf();xf();Cf();Ef();il();var Dp=Mf(),dl=jf().marked,Kf=/Mac/.test(navigator.platform),wp=new RegExp(/()+?/g),ui={toggleBold:fo,toggleItalic:co,drawLink:ko,toggleHeadingSmaller:fi,toggleHeadingBigger:vo,drawImage:So,toggleBlockquote:go,toggleOrderedList:Do,toggleUnorderedList:xo,toggleCheckList:wo,toggleCodeBlock:po,togglePreview:Lo,toggleStrikethrough:ho,toggleHeading1:mo,toggleHeading2:bo,toggleHeading3:yo,toggleHeading4:pl,toggleHeading5:gl,toggleHeading6:vl,cleanBlock:Co,drawTable:Eo,drawHorizontalRule:Ao,undo:Fo,redo:To,toggleSideBySide:wn,toggleFullScreen:jr},Cp={toggleBold:"Cmd-B",toggleItalic:"Cmd-I",drawLink:"Cmd-K",toggleHeadingSmaller:"Cmd-H",toggleHeadingBigger:"Shift-Cmd-H",toggleHeading1:"Ctrl+Alt+1",toggleHeading2:"Ctrl+Alt+2",toggleHeading3:"Ctrl+Alt+3",toggleHeading4:"Ctrl+Alt+4",toggleHeading5:"Ctrl+Alt+5",toggleHeading6:"Ctrl+Alt+6",cleanBlock:"Cmd-E",drawImage:"Cmd-Alt-I",toggleBlockquote:"Cmd-'",toggleOrderedList:"Cmd-Alt-L",toggleUnorderedList:"Cmd-L",toggleCheckList:"Shift-Cmd-L",toggleCodeBlock:"Cmd-Alt-C",togglePreview:"Cmd-P",toggleSideBySide:"F9",toggleFullScreen:"F11"},kp=function(o){for(var l in ui)if(ui[l]===o)return l;return null},hl=function(){var o=!1;return function(l){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(l)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(l.substr(0,4)))&&(o=!0)}(navigator.userAgent||navigator.vendor||window.opera),o};function Sp(o){for(var l;(l=wp.exec(o))!==null;){var s=l[0];if(s.indexOf("target=")===-1){var a=s.replace(/>$/,' target="_blank">');o=o.replace(s,a)}}return o}function Ep(o){for(var l=new DOMParser,s=l.parseFromString(o,"text/html"),a=s.getElementsByTagName("li"),f=0;f0){for(var F=document.createElement("i"),_=0;_=0&&(x=c.getLineHandle(E),!s(x));E--);var O=c.getTokenAt({line:E,ch:1}),N=a(O).fencedChars,P,I,W,j;s(c.getLineHandle(h.line))?(P="",I=h.line):s(c.getLineHandle(h.line-1))?(P="",I=h.line-1):(P=N+` -`,I=h.line),s(c.getLineHandle(b.line))?(W="",j=b.line,b.ch===0&&(j+=1)):b.ch!==0&&s(c.getLineHandle(b.line+1))?(W="",j=b.line+1):(W=N+` -`,j=b.line+1),b.ch===0&&(j-=1),c.operation(function(){c.replaceRange(W,{line:j,ch:0},{line:j+(W?0:1),ch:0}),c.replaceRange(P,{line:I,ch:0},{line:I+(P?0:1),ch:0})}),c.setSelection({line:I+(P?1:0),ch:0},{line:j+(P?1:-1),ch:0}),c.focus()}else{var X=h.line;if(s(c.getLineHandle(h.line))&&(f(c,h.line+1)==="fenced"?(E=h.line,X=h.line+1):(F=h.line,X=h.line-1)),E===void 0)for(E=X;E>=0&&(x=c.getLineHandle(E),!s(x));E--);if(F===void 0)for(_=c.lineCount(),F=X;F<_&&(x=c.getLineHandle(F),!s(x));F++);c.operation(function(){c.replaceRange("",{line:E,ch:0},{line:E+1,ch:0}),c.replaceRange("",{line:F-1,ch:0},{line:F,ch:0})}),c.focus()}else if(C==="indented"){if(h.line!==b.line||h.ch!==b.ch)E=h.line,F=b.line,b.ch===0&&F--;else{for(E=h.line;E>=0;E--)if(x=c.getLineHandle(E),!x.text.match(/^\s*$/)&&f(c,E,x)!=="indented"){E+=1;break}for(_=c.lineCount(),F=h.line;F<_;F++)if(x=c.getLineHandle(F),!x.text.match(/^\s*$/)&&f(c,F,x)!=="indented"){F-=1;break}}var be=c.getLineHandle(F+1),U=be&&c.getTokenAt({line:F+1,ch:be.text.length-1}),ae=U&&a(U).indentedCode;ae&&c.replaceRange(` -`,{line:F+1,ch:0});for(var ne=E;ne<=F;ne++)c.indentLine(ne,"subtract");c.focus()}else{var se=h.line===b.line&&h.ch===b.ch&&h.ch===0,S=h.line!==b.line;se||S?p(c,h,b,l):Gr(c,!1,["`","`"])}}function go(o){Mo(o.codemirror,"quote")}function fi(o){Er(o.codemirror,"smaller")}function vo(o){Er(o.codemirror,"bigger")}function mo(o){Er(o.codemirror,void 0,1)}function bo(o){Er(o.codemirror,void 0,2)}function yo(o){Er(o.codemirror,void 0,3)}function pl(o){Er(o.codemirror,void 0,4)}function gl(o){Er(o.codemirror,void 0,5)}function vl(o){Er(o.codemirror,void 0,6)}function xo(o){var l=o.codemirror,s="*";["-","+","*"].includes(o.options.unorderedListStyle)&&(s=o.options.unorderedListStyle),Mo(l,"unordered-list",s)}function Do(o){Mo(o.codemirror,"ordered-list")}function wo(o){Mo(o.codemirror,"check-list")}function Co(o){Lp(o.codemirror)}function ko(o){var l=o.options,s="https://";if(l.promptURLs){var a=prompt(l.promptTexts.link,s);if(!a)return!1;s=Zf(a)}Jf(o,"link",l.insertTexts.link,s)}function So(o){var l=o.options,s="https://";if(l.promptURLs){var a=prompt(l.promptTexts.image,s);if(!a)return!1;s=Zf(a)}Jf(o,"image",l.insertTexts.image,s)}function Zf(o){return encodeURI(o).replace(/([\\()])/g,"\\$1")}function ml(o){o.openBrowseFileWindow()}function Qf(o,l){var s=o.codemirror,a=Sr(s),f=o.options,p=l.substr(l.lastIndexOf("/")+1),c=p.substring(p.lastIndexOf(".")+1).replace(/\?.*$/,"").toLowerCase();if(["png","jpg","jpeg","gif","svg","apng","avif","webp"].includes(c))Gr(s,a.image,f.insertTexts.uploadedImage,l);else{var h=f.insertTexts.link;h[0]="["+p,Gr(s,a.link,h,l)}o.updateStatusBar("upload-image",o.options.imageTexts.sbOnUploaded.replace("#image_name#",p)),setTimeout(function(){o.updateStatusBar("upload-image",o.options.imageTexts.sbInit)},1e3)}function Eo(o){var l=o.codemirror,s=Sr(l),a=o.options;Gr(l,s.table,a.insertTexts.table)}function Ao(o){var l=o.codemirror,s=Sr(l),a=o.options;Gr(l,s.image,a.insertTexts.horizontalRule)}function Fo(o){var l=o.codemirror;l.undo(),l.focus()}function To(o){var l=o.codemirror;l.redo(),l.focus()}function wn(o){var l=o.codemirror,s=l.getWrapperElement(),a=s.nextSibling,f=o.toolbarElements&&o.toolbarElements["side-by-side"],p=!1,c=s.parentNode;a.classList.contains("editor-preview-active-side")?(o.options.sideBySideFullscreen===!1&&c.classList.remove("sided--no-fullscreen"),a.classList.remove("editor-preview-active-side"),f&&f.classList.remove("active"),s.classList.remove("CodeMirror-sided")):(setTimeout(function(){l.getOption("fullScreen")||(o.options.sideBySideFullscreen===!1?c.classList.add("sided--no-fullscreen"):jr(o)),a.classList.add("editor-preview-active-side")},1),f&&f.classList.add("active"),s.classList.add("CodeMirror-sided"),p=!0);var h=s.lastChild;if(h.classList.contains("editor-preview-active")){h.classList.remove("editor-preview-active");var b=o.toolbarElements.preview,y=o.toolbar_div;b.classList.remove("active"),y.classList.remove("disabled-for-preview")}var x=function(){var E=o.options.previewRender(o.value(),a);E!=null&&(a.innerHTML=E)};if(l.sideBySideRenderingFunction||(l.sideBySideRenderingFunction=x),p){var C=o.options.previewRender(o.value(),a);C!=null&&(a.innerHTML=C),l.on("update",l.sideBySideRenderingFunction)}else l.off("update",l.sideBySideRenderingFunction);l.refresh()}function Lo(o){var l=o.codemirror,s=l.getWrapperElement(),a=o.toolbar_div,f=o.options.toolbar?o.toolbarElements.preview:!1,p=s.lastChild,c=l.getWrapperElement().nextSibling;if(c.classList.contains("editor-preview-active-side")&&wn(o),!p||!p.classList.contains("editor-preview-full")){if(p=document.createElement("div"),p.className="editor-preview-full",o.options.previewClass)if(Array.isArray(o.options.previewClass))for(var h=0;h\s+/,"unordered-list":a,"ordered-list":a,"check-list":/^(\s*)(- \[[ xX]])(\s+)/},y=function(O,N){var P={quote:">","unordered-list":s,"ordered-list":"%%i.","check-list":"- [ ]"};return P[O].replace("%%i",N)},x=function(O,N){var P={quote:">","unordered-list":"\\"+s,"ordered-list":"\\d+.","check-list":"- \\[[ xX]]"},I=new RegExp(P[O]);return N&&I.test(N)},C=function(O,N,P){var I=a.exec(N),W=y(O,E);return I!==null?(x(O,I[2])&&(W=""),N=I[1]+W+I[3]+N.replace(f,"").replace(b[O],"$1")):P==!1&&(N=W+" "+N),N},E=1,F=["unordered-list","ordered-list","check-list"],_=Object.keys(p)[0];if(!F.includes(_)){var L=o.getLine(c.line);/^\s*- \[[ xX]]\s/.test(L)?_="check-list":/^\s*\d+\.\s/.test(L)?_="ordered-list":/^\s*[*\-+]\s/.test(L)&&(_="unordered-list")}for(var T=c.line;T<=h.line;T++)(function(O){var N=o.getLine(O);p[l]?N=N.replace(b[l],"$1"):F.includes(_)&&F.includes(l)?(N=N.replace(b[_],"$1"),N=C(l,N,!1),E+=1):(N=C(l,N,!1),E+=1),o.replaceRange(N,{line:O,ch:0},{line:O,ch:99999999999999})})(T);o.focus()}}function Jf(o,l,s,a){if(!(!o.codemirror||o.isPreviewActive())){var f=o.codemirror,p=Sr(f),c=p[l];if(!c){Gr(f,c,s,a);return}var h=f.getCursor("start"),b=f.getCursor("end"),y=f.getLine(h.line),x=y.slice(0,h.ch),C=y.slice(h.ch);l=="link"?x=x.replace(/(.*)[^!]\[/,"$1"):l=="image"&&(x=x.replace(/(.*)!\[$/,"$1")),C=C.replace(/]\(.*?\)/,""),f.replaceRange(x+C,{line:h.line,ch:0},{line:h.line,ch:99999999999999}),h.ch-=s[0].length,h!==b&&(b.ch-=s[0].length),f.setSelection(h,b),f.focus()}}function bl(o,l,s,a){if(!(!o.codemirror||o.isPreviewActive())){a=typeof a>"u"?s:a;var f=o.codemirror,p=Sr(f),c,h=s,b=a,y=f.getCursor("start"),x=f.getCursor("end");p[l]?(c=f.getLine(y.line),h=c.slice(0,y.ch),b=c.slice(y.ch),l=="bold"?(h=h.replace(/(\*\*|__)(?![\s\S]*(\*\*|__))/,""),b=b.replace(/(\*\*|__)/,"")):l=="italic"?(h=h.replace(/(\*|_)(?![\s\S]*(\*|_))/,""),b=b.replace(/(\*|_)/,"")):l=="strikethrough"&&(h=h.replace(/(\*\*|~~)(?![\s\S]*(\*\*|~~))/,""),b=b.replace(/(\*\*|~~)/,"")),f.replaceRange(h+b,{line:y.line,ch:0},{line:y.line,ch:99999999999999}),l=="bold"||l=="strikethrough"?(y.ch-=2,y!==x&&(x.ch-=2)):l=="italic"&&(y.ch-=1,y!==x&&(x.ch-=1))):(c=f.getSelection(),l=="bold"?(c=c.split("**").join(""),c=c.split("__").join("")):l=="italic"?(c=c.split("*").join(""),c=c.split("_").join("")):l=="strikethrough"&&(c=c.split("~~").join("")),f.replaceSelection(h+c+b),y.ch+=s.length,x.ch=y.ch+c.length),f.setSelection(y,x),f.focus()}}function Lp(o){if(!o.getWrapperElement().lastChild.classList.contains("editor-preview-active"))for(var l=o.getCursor("start"),s=o.getCursor("end"),a,f=l.line;f<=s.line;f++)a=o.getLine(f),a=a.replace(/^[ ]*([# ]+|\*|-|[> ]+|[0-9]+(.|\)))[ ]*/,""),o.replaceRange(a,{line:f,ch:0},{line:f,ch:99999999999999})}function uo(o,l){if(Math.abs(o)<1024)return""+o+l[0];var s=0;do o/=1024,++s;while(Math.abs(o)>=1024&&s=19968?a+=s[f].length:a+=1;return a}var Me={bold:"fa fa-bold",italic:"fa fa-italic",strikethrough:"fa fa-strikethrough",heading:"fa fa-header fa-heading","heading-smaller":"fa fa-header fa-heading header-smaller","heading-bigger":"fa fa-header fa-heading header-bigger","heading-1":"fa fa-header fa-heading header-1","heading-2":"fa fa-header fa-heading header-2","heading-3":"fa fa-header fa-heading header-3",code:"fa fa-code",quote:"fa fa-quote-left","ordered-list":"fa fa-list-ol","unordered-list":"fa fa-list-ul","check-list":"fa fa-check-square-o","clean-block":"fa fa-eraser",link:"fa fa-link",image:"fa fa-image","upload-image":"fa fa-image",table:"fa fa-table","horizontal-rule":"fa fa-minus",preview:"fa fa-eye","side-by-side":"fa fa-columns",fullscreen:"fa fa-arrows-alt",guide:"fa fa-question-circle",undo:"fa fa-undo",redo:"fa fa-repeat fa-redo"},Ur={bold:{name:"bold",action:fo,className:Me.bold,title:"Bold",default:!0},italic:{name:"italic",action:co,className:Me.italic,title:"Italic",default:!0},strikethrough:{name:"strikethrough",action:ho,className:Me.strikethrough,title:"Strikethrough"},heading:{name:"heading",action:fi,className:Me.heading,title:"Heading",default:!0},"heading-smaller":{name:"heading-smaller",action:fi,className:Me["heading-smaller"],title:"Smaller Heading"},"heading-bigger":{name:"heading-bigger",action:vo,className:Me["heading-bigger"],title:"Bigger Heading"},"heading-1":{name:"heading-1",action:mo,className:Me["heading-1"],title:"Big Heading"},"heading-2":{name:"heading-2",action:bo,className:Me["heading-2"],title:"Medium Heading"},"heading-3":{name:"heading-3",action:yo,className:Me["heading-3"],title:"Small Heading"},"separator-1":{name:"separator-1"},code:{name:"code",action:po,className:Me.code,title:"Code"},quote:{name:"quote",action:go,className:Me.quote,title:"Quote",default:!0},"unordered-list":{name:"unordered-list",action:xo,className:Me["unordered-list"],title:"Generic List",default:!0},"ordered-list":{name:"ordered-list",action:Do,className:Me["ordered-list"],title:"Numbered List",default:!0},"check-list":{name:"check-list",action:wo,className:Me["check-list"],title:"Check List",default:!0},"clean-block":{name:"clean-block",action:Co,className:Me["clean-block"],title:"Clean block"},"separator-2":{name:"separator-2"},link:{name:"link",action:ko,className:Me.link,title:"Create Link",default:!0},image:{name:"image",action:So,className:Me.image,title:"Insert Image",default:!0},"upload-image":{name:"upload-image",action:ml,className:Me["upload-image"],title:"Import an image"},table:{name:"table",action:Eo,className:Me.table,title:"Insert Table"},"horizontal-rule":{name:"horizontal-rule",action:Ao,className:Me["horizontal-rule"],title:"Insert Horizontal Line"},"separator-3":{name:"separator-3"},preview:{name:"preview",action:Lo,className:Me.preview,noDisable:!0,title:"Toggle Preview",default:!0},"side-by-side":{name:"side-by-side",action:wn,className:Me["side-by-side"],noDisable:!0,noMobile:!0,title:"Toggle Side by Side",default:!0},fullscreen:{name:"fullscreen",action:jr,className:Me.fullscreen,noDisable:!0,noMobile:!0,title:"Toggle Fullscreen",default:!0},"separator-4":{name:"separator-4"},guide:{name:"guide",action:"https://www.markdownguide.org/basic-syntax/",className:Me.guide,noDisable:!0,title:"Markdown Guide",default:!0},"separator-5":{name:"separator-5"},undo:{name:"undo",action:Fo,className:Me.undo,noDisable:!0,title:"Undo"},redo:{name:"redo",action:To,className:Me.redo,noDisable:!0,title:"Redo"}},Mp={link:["[","](#url#)"],image:["![","](#url#)"],uploadedImage:["![](#url#)",""],table:["",` +`)},l.strong=function(a){return""+a+""},l.em=function(a){return""+a+""},l.codespan=function(a){return""+a+""},l.br=function(){return this.options.xhtml?"
    ":"
    "},l.del=function(a){return""+a+""},l.link=function(a,f,p){if(a=Pf(this.options.sanitize,this.options.baseUrl,a),a===null)return p;var c='
    ",c},l.image=function(a,f,p){if(a=Pf(this.options.sanitize,this.options.baseUrl,a),a===null)return p;var c=''+p+'":">",c},l.text=function(a){return a},o}(),cl=function(){function o(){}var l=o.prototype;return l.strong=function(a){return a},l.em=function(a){return a},l.codespan=function(a){return a},l.del=function(a){return a},l.html=function(a){return a},l.text=function(a){return a},l.link=function(a,f,p){return""+p},l.image=function(a,f,p){return""+p},l.br=function(){return""},o}(),dl=function(){function o(){this.seen={}}var l=o.prototype;return l.serialize=function(a){return a.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},l.getNextSafeSlug=function(a,f){var p=a,c=0;if(this.seen.hasOwnProperty(p)){c=this.seen[a];do c++,p=a+"-"+c;while(this.seen.hasOwnProperty(p))}return f||(this.seen[a]=c,this.seen[p]=0),p},l.slug=function(a,f){f===void 0&&(f={});var p=this.serialize(a);return this.getNextSafeSlug(p,f.dryrun)},o}(),xn=function(){function o(s){this.options=s||Be.defaults,this.options.renderer=this.options.renderer||new so,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new cl,this.slugger=new dl}o.parse=function(a,f){var p=new o(f);return p.parse(a)},o.parseInline=function(a,f){var p=new o(f);return p.parseInline(a)};var l=o.prototype;return l.parse=function(a,f){f===void 0&&(f=!0);var p="",c,d,m,y,x,C,S,F,_,L,T,O,N,I,P,q,G,K,me,U=a.length;for(c=0;c0&&P.tokens[0].type==="paragraph"?(P.tokens[0].text=K+" "+P.tokens[0].text,P.tokens[0].tokens&&P.tokens[0].tokens.length>0&&P.tokens[0].tokens[0].type==="text"&&(P.tokens[0].tokens[0].text=K+" "+P.tokens[0].tokens[0].text)):P.tokens.unshift({type:"text",text:K}):I+=K),I+=this.parse(P.tokens,N),_+=this.renderer.listitem(I,G,q);p+=this.renderer.list(_,T,O);continue}case"html":{p+=this.renderer.html(L.text);continue}case"paragraph":{p+=this.renderer.paragraph(this.parseInline(L.tokens));continue}case"text":{for(_=L.tokens?this.parseInline(L.tokens):L.text;c+1";if(l)return Promise.resolve(f);if(s){s(null,f);return}return f}if(l)return Promise.reject(a);if(s){s(a);return}throw a}}function Gf(o,l){return function(s,a,f){typeof a=="function"&&(f=a,a=null);var p=_t({},a);a=_t({},fe.defaults,p);var c=pp(a.silent,a.async,f);if(typeof s>"u"||s===null)return c(new Error("marked(): input parameter is undefined or null"));if(typeof s!="string")return c(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(s)+", string expected"));if(cp(a),a.hooks&&(a.hooks.options=a),f){var d=a.highlight,m;try{a.hooks&&(s=a.hooks.preprocess(s)),m=o(s,a)}catch(F){return c(F)}var y=function(_){var L;if(!_)try{a.walkTokens&&fe.walkTokens(m,a.walkTokens),L=l(m,a),a.hooks&&(L=a.hooks.postprocess(L))}catch(T){_=T}return a.highlight=d,_?c(_):f(null,L)};if(!d||d.length<3||(delete a.highlight,!m.length))return y();var x=0;fe.walkTokens(m,function(F){F.type==="code"&&(x++,setTimeout(function(){d(F.text,F.lang,function(_,L){if(_)return y(_);L!=null&&L!==F.text&&(F.text=L,F.escaped=!0),x--,x===0&&y()})},0))}),x===0&&y();return}if(a.async)return Promise.resolve(a.hooks?a.hooks.preprocess(s):s).then(function(F){return o(F,a)}).then(function(F){return a.walkTokens?Promise.all(fe.walkTokens(F,a.walkTokens)).then(function(){return F}):F}).then(function(F){return l(F,a)}).then(function(F){return a.hooks?a.hooks.postprocess(F):F}).catch(c);try{a.hooks&&(s=a.hooks.preprocess(s));var C=o(s,a);a.walkTokens&&fe.walkTokens(C,a.walkTokens);var S=l(C,a);return a.hooks&&(S=a.hooks.postprocess(S)),S}catch(F){return c(F)}}}function fe(o,l,s){return Gf(yn.lex,xn.parse)(o,l,s)}fe.options=fe.setOptions=function(o){return fe.defaults=_t({},fe.defaults,o),$h(fe.defaults),fe};fe.getDefaults=fl;fe.defaults=Be.defaults;fe.use=function(){for(var o=fe.defaults.extensions||{renderers:{},childTokens:{}},l=arguments.length,s=new Array(l),a=0;a{"use strict";var Dn=Et();$u();ef();nf();al();ll();vf();yf();wf();Sf();Ff();ol();var Cp=Bf(),hl=Xf().marked,Zf=/Mac/.test(navigator.platform),kp=new RegExp(/()+?/g),ui={toggleBold:co,toggleItalic:ho,drawLink:So,toggleHeadingSmaller:fi,toggleHeadingBigger:mo,drawImage:Eo,toggleBlockquote:vo,toggleOrderedList:wo,toggleUnorderedList:Do,toggleCheckList:Co,toggleCodeBlock:go,togglePreview:Mo,toggleStrikethrough:po,toggleHeading1:bo,toggleHeading2:yo,toggleHeading3:xo,toggleHeading4:gl,toggleHeading5:vl,toggleHeading6:ml,cleanBlock:ko,drawTable:Ao,drawHorizontalRule:Fo,undo:To,redo:Lo,toggleSideBySide:wn,toggleFullScreen:jr},Sp={toggleBold:"Cmd-B",toggleItalic:"Cmd-I",drawLink:"Cmd-K",toggleHeadingSmaller:"Cmd-H",toggleHeadingBigger:"Shift-Cmd-H",toggleHeading1:"Ctrl+Alt+1",toggleHeading2:"Ctrl+Alt+2",toggleHeading3:"Ctrl+Alt+3",toggleHeading4:"Ctrl+Alt+4",toggleHeading5:"Ctrl+Alt+5",toggleHeading6:"Ctrl+Alt+6",cleanBlock:"Cmd-E",drawImage:"Cmd-Alt-I",toggleBlockquote:"Cmd-'",toggleOrderedList:"Cmd-Alt-L",toggleUnorderedList:"Cmd-L",toggleCheckList:"Shift-Cmd-L",toggleCodeBlock:"Cmd-Alt-C",togglePreview:"Cmd-P",toggleSideBySide:"F9",toggleFullScreen:"F11"},Ep=function(o){for(var l in ui)if(ui[l]===o)return l;return null},pl=function(){var o=!1;return function(l){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(l)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(l.substr(0,4)))&&(o=!0)}(navigator.userAgent||navigator.vendor||window.opera),o};function Ap(o){for(var l;(l=kp.exec(o))!==null;){var s=l[0];if(s.indexOf("target=")===-1){var a=s.replace(/>$/,' target="_blank">');o=o.replace(s,a)}}return o}function Fp(o){for(var l=new DOMParser,s=l.parseFromString(o,"text/html"),a=s.getElementsByTagName("li"),f=0;f0){for(var F=document.createElement("i"),_=0;_=0&&(x=c.getLineHandle(S),!s(x));S--);var O=c.getTokenAt({line:S,ch:1}),N=a(O).fencedChars,I,P,q,G;s(c.getLineHandle(d.line))?(I="",P=d.line):s(c.getLineHandle(d.line-1))?(I="",P=d.line-1):(I=N+` +`,P=d.line),s(c.getLineHandle(m.line))?(q="",G=m.line,m.ch===0&&(G+=1)):m.ch!==0&&s(c.getLineHandle(m.line+1))?(q="",G=m.line+1):(q=N+` +`,G=m.line+1),m.ch===0&&(G-=1),c.operation(function(){c.replaceRange(q,{line:G,ch:0},{line:G+(q?0:1),ch:0}),c.replaceRange(I,{line:P,ch:0},{line:P+(I?0:1),ch:0})}),c.setSelection({line:P+(I?1:0),ch:0},{line:G+(I?1:-1),ch:0}),c.focus()}else{var K=d.line;if(s(c.getLineHandle(d.line))&&(f(c,d.line+1)==="fenced"?(S=d.line,K=d.line+1):(F=d.line,K=d.line-1)),S===void 0)for(S=K;S>=0&&(x=c.getLineHandle(S),!s(x));S--);if(F===void 0)for(_=c.lineCount(),F=K;F<_&&(x=c.getLineHandle(F),!s(x));F++);c.operation(function(){c.replaceRange("",{line:S,ch:0},{line:S+1,ch:0}),c.replaceRange("",{line:F-1,ch:0},{line:F,ch:0})}),c.focus()}else if(C==="indented"){if(d.line!==m.line||d.ch!==m.ch)S=d.line,F=m.line,m.ch===0&&F--;else{for(S=d.line;S>=0;S--)if(x=c.getLineHandle(S),!x.text.match(/^\s*$/)&&f(c,S,x)!=="indented"){S+=1;break}for(_=c.lineCount(),F=d.line;F<_;F++)if(x=c.getLineHandle(F),!x.text.match(/^\s*$/)&&f(c,F,x)!=="indented"){F-=1;break}}var me=c.getLineHandle(F+1),U=me&&c.getTokenAt({line:F+1,ch:me.text.length-1}),le=U&&a(U).indentedCode;le&&c.replaceRange(` +`,{line:F+1,ch:0});for(var j=S;j<=F;j++)c.indentLine(j,"subtract");c.focus()}else{var ee=d.line===m.line&&d.ch===m.ch&&d.ch===0,E=d.line!==m.line;ee||E?p(c,d,m,l):Gr(c,!1,["`","`"])}}function vo(o){_o(o.codemirror,"quote")}function fi(o){Er(o.codemirror,"smaller")}function mo(o){Er(o.codemirror,"bigger")}function bo(o){Er(o.codemirror,void 0,1)}function yo(o){Er(o.codemirror,void 0,2)}function xo(o){Er(o.codemirror,void 0,3)}function gl(o){Er(o.codemirror,void 0,4)}function vl(o){Er(o.codemirror,void 0,5)}function ml(o){Er(o.codemirror,void 0,6)}function Do(o){var l=o.codemirror,s="*";["-","+","*"].includes(o.options.unorderedListStyle)&&(s=o.options.unorderedListStyle),_o(l,"unordered-list",s)}function wo(o){_o(o.codemirror,"ordered-list")}function Co(o){_o(o.codemirror,"check-list")}function ko(o){_p(o.codemirror)}function So(o){var l=o.options,s="https://";if(l.promptURLs){var a=prompt(l.promptTexts.link,s);if(!a)return!1;s=Jf(a)}Vf(o,"link",l.insertTexts.link,s)}function Eo(o){var l=o.options,s="https://";if(l.promptURLs){var a=prompt(l.promptTexts.image,s);if(!a)return!1;s=Jf(a)}Vf(o,"image",l.insertTexts.image,s)}function Jf(o){return encodeURI(o).replace(/([\\()])/g,"\\$1")}function bl(o){o.openBrowseFileWindow()}function $f(o,l){var s=o.codemirror,a=Sr(s),f=o.options,p=l.substr(l.lastIndexOf("/")+1),c=p.substring(p.lastIndexOf(".")+1).replace(/\?.*$/,"").toLowerCase();if(["png","jpg","jpeg","gif","svg","apng","avif","webp"].includes(c))Gr(s,a.image,f.insertTexts.uploadedImage,l);else{var d=f.insertTexts.link;d[0]="["+p,Gr(s,a.link,d,l)}o.updateStatusBar("upload-image",o.options.imageTexts.sbOnUploaded.replace("#image_name#",p)),setTimeout(function(){o.updateStatusBar("upload-image",o.options.imageTexts.sbInit)},1e3)}function Ao(o){var l=o.codemirror,s=Sr(l),a=o.options;Gr(l,s.table,a.insertTexts.table)}function Fo(o){var l=o.codemirror,s=Sr(l),a=o.options;Gr(l,s.image,a.insertTexts.horizontalRule)}function To(o){var l=o.codemirror;l.undo(),l.focus()}function Lo(o){var l=o.codemirror;l.redo(),l.focus()}function wn(o){var l=o.codemirror,s=l.getWrapperElement(),a=s.nextSibling,f=o.toolbarElements&&o.toolbarElements["side-by-side"],p=!1,c=s.parentNode;a.classList.contains("editor-preview-active-side")?(o.options.sideBySideFullscreen===!1&&c.classList.remove("sided--no-fullscreen"),a.classList.remove("editor-preview-active-side"),f&&f.classList.remove("active"),s.classList.remove("CodeMirror-sided")):(setTimeout(function(){l.getOption("fullScreen")||(o.options.sideBySideFullscreen===!1?c.classList.add("sided--no-fullscreen"):jr(o)),a.classList.add("editor-preview-active-side")},1),f&&f.classList.add("active"),s.classList.add("CodeMirror-sided"),p=!0);var d=s.lastChild;if(d.classList.contains("editor-preview-active")){d.classList.remove("editor-preview-active");var m=o.toolbarElements.preview,y=o.toolbar_div;m.classList.remove("active"),y.classList.remove("disabled-for-preview")}var x=function(){var S=o.options.previewRender(o.value(),a);S!=null&&(a.innerHTML=S)};if(l.sideBySideRenderingFunction||(l.sideBySideRenderingFunction=x),p){var C=o.options.previewRender(o.value(),a);C!=null&&(a.innerHTML=C),l.on("update",l.sideBySideRenderingFunction)}else l.off("update",l.sideBySideRenderingFunction);l.refresh()}function Mo(o){var l=o.codemirror,s=l.getWrapperElement(),a=o.toolbar_div,f=o.options.toolbar?o.toolbarElements.preview:!1,p=s.lastChild,c=l.getWrapperElement().nextSibling;if(c.classList.contains("editor-preview-active-side")&&wn(o),!p||!p.classList.contains("editor-preview-full")){if(p=document.createElement("div"),p.className="editor-preview-full",o.options.previewClass)if(Array.isArray(o.options.previewClass))for(var d=0;d\s+/,"unordered-list":a,"ordered-list":a,"check-list":/^(\s*)(- \[[ xX]])(\s+)/},y=function(O,N){var I={quote:">","unordered-list":s,"ordered-list":"%%i.","check-list":"- [ ]"};return I[O].replace("%%i",N)},x=function(O,N){var I={quote:">","unordered-list":"\\"+s,"ordered-list":"\\d+.","check-list":"- \\[[ xX]]"},P=new RegExp(I[O]);return N&&P.test(N)},C=function(O,N,I){var P=a.exec(N),q=y(O,S);return P!==null?(x(O,P[2])&&(q=""),N=P[1]+q+P[3]+N.replace(f,"").replace(m[O],"$1")):I==!1&&(N=q+" "+N),N},S=1,F=["unordered-list","ordered-list","check-list"],_=Object.keys(p)[0];if(!F.includes(_)){var L=o.getLine(c.line);/^\s*- \[[ xX]]\s/.test(L)?_="check-list":/^\s*\d+\.\s/.test(L)?_="ordered-list":/^\s*[*\-+]\s/.test(L)&&(_="unordered-list")}for(var T=c.line;T<=d.line;T++)(function(O){var N=o.getLine(O);p[l]?N=N.replace(m[l],"$1"):F.includes(_)&&F.includes(l)?(N=N.replace(m[_],"$1"),N=C(l,N,!1),S+=1):(N=C(l,N,!1),S+=1),o.replaceRange(N,{line:O,ch:0},{line:O,ch:99999999999999})})(T);o.focus()}}function Vf(o,l,s,a){if(!(!o.codemirror||o.isPreviewActive())){var f=o.codemirror,p=Sr(f),c=p[l];if(!c){Gr(f,c,s,a);return}var d=f.getCursor("start"),m=f.getCursor("end"),y=f.getLine(d.line),x=y.slice(0,d.ch),C=y.slice(d.ch);l=="link"?x=x.replace(/(.*)[^!]\[/,"$1"):l=="image"&&(x=x.replace(/(.*)!\[$/,"$1")),C=C.replace(/]\(.*?\)/,""),f.replaceRange(x+C,{line:d.line,ch:0},{line:d.line,ch:99999999999999}),d.ch-=s[0].length,d!==m&&(m.ch-=s[0].length),f.setSelection(d,m),f.focus()}}function yl(o,l,s,a){if(!(!o.codemirror||o.isPreviewActive())){a=typeof a>"u"?s:a;var f=o.codemirror,p=Sr(f),c,d=s,m=a,y=f.getCursor("start"),x=f.getCursor("end");p[l]?(c=f.getLine(y.line),d=c.slice(0,y.ch),m=c.slice(y.ch),l=="bold"?(d=d.replace(/(\*\*|__)(?![\s\S]*(\*\*|__))/,""),m=m.replace(/(\*\*|__)/,"")):l=="italic"?(d=d.replace(/(\*|_)(?![\s\S]*(\*|_))/,""),m=m.replace(/(\*|_)/,"")):l=="strikethrough"&&(d=d.replace(/(\*\*|~~)(?![\s\S]*(\*\*|~~))/,""),m=m.replace(/(\*\*|~~)/,"")),f.replaceRange(d+m,{line:y.line,ch:0},{line:y.line,ch:99999999999999}),l=="bold"||l=="strikethrough"?(y.ch-=2,y!==x&&(x.ch-=2)):l=="italic"&&(y.ch-=1,y!==x&&(x.ch-=1))):(c=f.getSelection(),l=="bold"?(c=c.split("**").join(""),c=c.split("__").join("")):l=="italic"?(c=c.split("*").join(""),c=c.split("_").join("")):l=="strikethrough"&&(c=c.split("~~").join("")),f.replaceSelection(d+c+m),y.ch+=s.length,x.ch=y.ch+c.length),f.setSelection(y,x),f.focus()}}function _p(o){if(!o.getWrapperElement().lastChild.classList.contains("editor-preview-active"))for(var l=o.getCursor("start"),s=o.getCursor("end"),a,f=l.line;f<=s.line;f++)a=o.getLine(f),a=a.replace(/^[ ]*([# ]+|\*|-|[> ]+|[0-9]+(.|\)))[ ]*/,""),o.replaceRange(a,{line:f,ch:0},{line:f,ch:99999999999999})}function fo(o,l){if(Math.abs(o)<1024)return""+o+l[0];var s=0;do o/=1024,++s;while(Math.abs(o)>=1024&&s=19968?a+=s[f].length:a+=1;return a}var _e={bold:"fa fa-bold",italic:"fa fa-italic",strikethrough:"fa fa-strikethrough",heading:"fa fa-header fa-heading","heading-smaller":"fa fa-header fa-heading header-smaller","heading-bigger":"fa fa-header fa-heading header-bigger","heading-1":"fa fa-header fa-heading header-1","heading-2":"fa fa-header fa-heading header-2","heading-3":"fa fa-header fa-heading header-3",code:"fa fa-code",quote:"fa fa-quote-left","ordered-list":"fa fa-list-ol","unordered-list":"fa fa-list-ul","check-list":"fa fa-check-square-o","clean-block":"fa fa-eraser",link:"fa fa-link",image:"fa fa-image","upload-image":"fa fa-image",table:"fa fa-table","horizontal-rule":"fa fa-minus",preview:"fa fa-eye","side-by-side":"fa fa-columns",fullscreen:"fa fa-arrows-alt",guide:"fa fa-question-circle",undo:"fa fa-undo",redo:"fa fa-repeat fa-redo"},Ur={bold:{name:"bold",action:co,className:_e.bold,title:"Bold",default:!0},italic:{name:"italic",action:ho,className:_e.italic,title:"Italic",default:!0},strikethrough:{name:"strikethrough",action:po,className:_e.strikethrough,title:"Strikethrough"},heading:{name:"heading",action:fi,className:_e.heading,title:"Heading",default:!0},"heading-smaller":{name:"heading-smaller",action:fi,className:_e["heading-smaller"],title:"Smaller Heading"},"heading-bigger":{name:"heading-bigger",action:mo,className:_e["heading-bigger"],title:"Bigger Heading"},"heading-1":{name:"heading-1",action:bo,className:_e["heading-1"],title:"Big Heading"},"heading-2":{name:"heading-2",action:yo,className:_e["heading-2"],title:"Medium Heading"},"heading-3":{name:"heading-3",action:xo,className:_e["heading-3"],title:"Small Heading"},"separator-1":{name:"separator-1"},code:{name:"code",action:go,className:_e.code,title:"Code"},quote:{name:"quote",action:vo,className:_e.quote,title:"Quote",default:!0},"unordered-list":{name:"unordered-list",action:Do,className:_e["unordered-list"],title:"Generic List",default:!0},"ordered-list":{name:"ordered-list",action:wo,className:_e["ordered-list"],title:"Numbered List",default:!0},"check-list":{name:"check-list",action:Co,className:_e["check-list"],title:"Check List",default:!0},"clean-block":{name:"clean-block",action:ko,className:_e["clean-block"],title:"Clean block"},"separator-2":{name:"separator-2"},link:{name:"link",action:So,className:_e.link,title:"Create Link",default:!0},image:{name:"image",action:Eo,className:_e.image,title:"Insert Image",default:!0},"upload-image":{name:"upload-image",action:bl,className:_e["upload-image"],title:"Import an image"},table:{name:"table",action:Ao,className:_e.table,title:"Insert Table"},"horizontal-rule":{name:"horizontal-rule",action:Fo,className:_e["horizontal-rule"],title:"Insert Horizontal Line"},"separator-3":{name:"separator-3"},preview:{name:"preview",action:Mo,className:_e.preview,noDisable:!0,title:"Toggle Preview",default:!0},"side-by-side":{name:"side-by-side",action:wn,className:_e["side-by-side"],noDisable:!0,noMobile:!0,title:"Toggle Side by Side",default:!0},fullscreen:{name:"fullscreen",action:jr,className:_e.fullscreen,noDisable:!0,noMobile:!0,title:"Toggle Fullscreen",default:!0},"separator-4":{name:"separator-4"},guide:{name:"guide",action:"https://www.markdownguide.org/basic-syntax/",className:_e.guide,noDisable:!0,title:"Markdown Guide",default:!0},"separator-5":{name:"separator-5"},undo:{name:"undo",action:To,className:_e.undo,noDisable:!0,title:"Undo"},redo:{name:"redo",action:Lo,className:_e.redo,noDisable:!0,title:"Redo"}},Bp={link:["[","](#url#)"],image:["![","](#url#)"],uploadedImage:["![](#url#)",""],table:["",` | Column 1 | Column 2 | Column 3 | | -------- | -------- | -------- | @@ -91,8 +91,8 @@ Please report this to https://github.com/markedjs/marked.`,o){var f="

    An error ----- -`]},_p={link:"URL for the link:",image:"URL of the image:"},Bp={locale:"en-US",format:{hour:"2-digit",minute:"2-digit"}},Np={bold:"**",code:"```",italic:"*"},Op={sbInit:"Attach files by drag and dropping or pasting from clipboard.",sbOnDragEnter:"Drop image to upload it.",sbOnDrop:"Uploading image #images_names#...",sbProgress:"Uploading #file_name#: #progress#%",sbOnUploaded:"Uploaded #image_name#",sizeUnits:" B, KB, MB"},Ip={noFileGiven:"You must select a file.",typeNotAllowed:"This image type is not allowed.",fileTooLarge:`Image #image_name# is too big (#image_size#). -Maximum file size is #image_max_size#.`,importError:"Something went wrong when uploading the image #image_name#."};function V(o){o=o||{},o.parent=this;var l=!0;if(o.autoDownloadFontAwesome===!1&&(l=!1),o.autoDownloadFontAwesome!==!0)for(var s=document.styleSheets,a=0;a-1&&(l=!1);if(l){var f=document.createElement("link");f.rel="stylesheet",f.href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css",document.getElementsByTagName("head")[0].appendChild(f)}if(o.element)this.element=o.element;else if(o.element===null){console.log("EasyMDE: Error. No element was found.");return}if(o.toolbar===void 0){o.toolbar=[];for(var p in Ur)Object.prototype.hasOwnProperty.call(Ur,p)&&(p.indexOf("separator-")!=-1&&o.toolbar.push("|"),(Ur[p].default===!0||o.showIcons&&o.showIcons.constructor===Array&&o.showIcons.indexOf(p)!=-1)&&o.toolbar.push(p))}if(Object.prototype.hasOwnProperty.call(o,"previewClass")||(o.previewClass="editor-preview"),Object.prototype.hasOwnProperty.call(o,"status")||(o.status=["autosave","lines","words","cursor"],o.uploadImage&&o.status.unshift("upload-image")),o.previewRender||(o.previewRender=function(h){return this.parent.markdown(h)}),o.parsingConfig=sr({highlightFormatting:!0},o.parsingConfig||{}),o.insertTexts=sr({},Mp,o.insertTexts||{}),o.promptTexts=sr({},_p,o.promptTexts||{}),o.blockStyles=sr({},Np,o.blockStyles||{}),o.autosave!=null&&(o.autosave.timeFormat=sr({},Bp,o.autosave.timeFormat||{})),o.iconClassMap=sr({},Me,o.iconClassMap||{}),o.shortcuts=sr({},Cp,o.shortcuts||{}),o.maxHeight=o.maxHeight||void 0,o.direction=o.direction||"ltr",typeof o.maxHeight<"u"?o.minHeight=o.maxHeight:o.minHeight=o.minHeight||"300px",o.errorCallback=o.errorCallback||function(h){alert(h)},o.uploadImage=o.uploadImage||!1,o.imageMaxSize=o.imageMaxSize||2097152,o.imageAccept=o.imageAccept||"image/png, image/jpeg, image/gif, image/avif",o.imageTexts=sr({},Op,o.imageTexts||{}),o.errorMessages=sr({},Ip,o.errorMessages||{}),o.imagePathAbsolute=o.imagePathAbsolute||!1,o.imageCSRFName=o.imageCSRFName||"csrfmiddlewaretoken",o.imageCSRFHeader=o.imageCSRFHeader||!1,o.imageInputName=o.imageInputName||"image",o.autosave!=null&&o.autosave.unique_id!=null&&o.autosave.unique_id!=""&&(o.autosave.uniqueId=o.autosave.unique_id),o.overlayMode&&o.overlayMode.combine===void 0&&(o.overlayMode.combine=!0),this.options=o,this.render(),o.initialValue&&(!this.options.autosave||this.options.autosave.foundSavedValue!==!0)&&this.value(o.initialValue),o.uploadImage){var c=this;this.codemirror.on("dragenter",function(h,b){c.updateStatusBar("upload-image",c.options.imageTexts.sbOnDragEnter),b.stopPropagation(),b.preventDefault()}),this.codemirror.on("dragend",function(h,b){c.updateStatusBar("upload-image",c.options.imageTexts.sbInit),b.stopPropagation(),b.preventDefault()}),this.codemirror.on("dragleave",function(h,b){c.updateStatusBar("upload-image",c.options.imageTexts.sbInit),b.stopPropagation(),b.preventDefault()}),this.codemirror.on("dragover",function(h,b){c.updateStatusBar("upload-image",c.options.imageTexts.sbOnDragEnter),b.stopPropagation(),b.preventDefault()}),this.codemirror.on("drop",function(h,b){b.stopPropagation(),b.preventDefault(),o.imageUploadFunction?c.uploadImagesUsingCustomFunction(o.imageUploadFunction,b.dataTransfer.files):c.uploadImages(b.dataTransfer.files)}),this.codemirror.on("paste",function(h,b){o.imageUploadFunction?c.uploadImagesUsingCustomFunction(o.imageUploadFunction,b.clipboardData.files):c.uploadImages(b.clipboardData.files)})}}V.prototype.uploadImages=function(o,l,s){if(o.length!==0){for(var a=[],f=0;f=2){var P=N[1];if(l.imagesPreviewHandler){var I=l.imagesPreviewHandler(N[1]);typeof I=="string"&&(P=I)}if(window.EMDEimagesCache[P])F(O,window.EMDEimagesCache[P]);else{window.EMDEimagesCache[P]={};var W=document.createElement("img");W.onload=function(){window.EMDEimagesCache[P]={naturalWidth:W.naturalWidth,naturalHeight:W.naturalHeight,url:P},F(O,window.EMDEimagesCache[P])},W.src=P}}}})}this.codemirror.on("update",function(){_()}),this.gui.sideBySide=this.createSideBySide(),this._rendered=this.element,(l.autofocus===!0||o.autofocus)&&this.codemirror.focus();var L=this.codemirror;setTimeout(function(){L.refresh()}.bind(L),0)};V.prototype.cleanup=function(){document.removeEventListener("keydown",this.documentOnKeyDown)};function Vf(){if(typeof localStorage=="object")try{localStorage.setItem("smde_localStorage",1),localStorage.removeItem("smde_localStorage")}catch{return!1}else return!1;return!0}V.prototype.autosave=function(){if(Vf()){var o=this;if(this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to use the autosave feature");return}this.options.autosave.binded!==!0&&(o.element.form!=null&&o.element.form!=null&&o.element.form.addEventListener("submit",function(){clearTimeout(o.autosaveTimeoutId),o.autosaveTimeoutId=void 0,localStorage.removeItem("smde_"+o.options.autosave.uniqueId)}),this.options.autosave.binded=!0),this.options.autosave.loaded!==!0&&(typeof localStorage.getItem("smde_"+this.options.autosave.uniqueId)=="string"&&localStorage.getItem("smde_"+this.options.autosave.uniqueId)!=""&&(this.codemirror.setValue(localStorage.getItem("smde_"+this.options.autosave.uniqueId)),this.options.autosave.foundSavedValue=!0),this.options.autosave.loaded=!0);var l=o.value();l!==""?localStorage.setItem("smde_"+this.options.autosave.uniqueId,l):localStorage.removeItem("smde_"+this.options.autosave.uniqueId);var s=document.getElementById("autosaved");if(s!=null&&s!=null&&s!=""){var a=new Date,f=new Intl.DateTimeFormat([this.options.autosave.timeFormat.locale,"en-US"],this.options.autosave.timeFormat.format).format(a),p=this.options.autosave.text==null?"Autosaved: ":this.options.autosave.text;s.innerHTML=p+f}}else console.log("EasyMDE: localStorage not available, cannot autosave")};V.prototype.clearAutosavedValue=function(){if(Vf()){if(this.options.autosave==null||this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to clear the autosave value");return}localStorage.removeItem("smde_"+this.options.autosave.uniqueId)}else console.log("EasyMDE: localStorage not available, cannot autosave")};V.prototype.openBrowseFileWindow=function(o,l){var s=this,a=this.gui.toolbar.getElementsByClassName("imageInput")[0];a.click();function f(p){s.options.imageUploadFunction?s.uploadImagesUsingCustomFunction(s.options.imageUploadFunction,p.target.files):s.uploadImages(p.target.files,o,l),a.removeEventListener("change",f)}a.addEventListener("change",f)};V.prototype.uploadImage=function(o,l,s){var a=this;l=l||function(y){Qf(a,y)};function f(b){a.updateStatusBar("upload-image",b),setTimeout(function(){a.updateStatusBar("upload-image",a.options.imageTexts.sbInit)},1e4),s&&typeof s=="function"&&s(b),a.options.errorCallback(b)}function p(b){var y=a.options.imageTexts.sizeUnits.split(",");return b.replace("#image_name#",o.name).replace("#image_size#",uo(o.size,y)).replace("#image_max_size#",uo(a.options.imageMaxSize,y))}if(o.size>this.options.imageMaxSize){f(p(this.options.errorMessages.fileTooLarge));return}var c=new FormData;c.append("image",o),a.options.imageCSRFToken&&!a.options.imageCSRFHeader&&c.append(a.options.imageCSRFName,a.options.imageCSRFToken);var h=new XMLHttpRequest;h.upload.onprogress=function(b){if(b.lengthComputable){var y=""+Math.round(b.loaded*100/b.total);a.updateStatusBar("upload-image",a.options.imageTexts.sbProgress.replace("#file_name#",o.name).replace("#progress#",y))}},h.open("POST",this.options.imageUploadEndpoint),a.options.imageCSRFToken&&a.options.imageCSRFHeader&&h.setRequestHeader(a.options.imageCSRFName,a.options.imageCSRFToken),h.onload=function(){try{var b=JSON.parse(this.responseText)}catch{console.error("EasyMDE: The server did not return a valid json."),f(p(a.options.errorMessages.importError));return}this.status===200&&b&&!b.error&&b.data&&b.data.filePath?l((a.options.imagePathAbsolute?"":window.location.origin+"/")+b.data.filePath):b.error&&b.error in a.options.errorMessages?f(p(a.options.errorMessages[b.error])):b.error?f(p(b.error)):(console.error("EasyMDE: Received an unexpected response after uploading the image."+this.status+" ("+this.statusText+")"),f(p(a.options.errorMessages.importError)))},h.onerror=function(b){console.error("EasyMDE: An unexpected error occurred when trying to upload the image."+b.target.status+" ("+b.target.statusText+")"),f(a.options.errorMessages.importError)},h.send(c)};V.prototype.uploadImageUsingCustomFunction=function(o,l){var s=this;function a(c){Qf(s,c)}function f(c){var h=p(c);s.updateStatusBar("upload-image",h),setTimeout(function(){s.updateStatusBar("upload-image",s.options.imageTexts.sbInit)},1e4),s.options.errorCallback(h)}function p(c){var h=s.options.imageTexts.sizeUnits.split(",");return c.replace("#image_name#",l.name).replace("#image_size#",uo(l.size,h)).replace("#image_max_size#",uo(s.options.imageMaxSize,h))}o.apply(this,[l,a,f])};V.prototype.setPreviewMaxHeight=function(){var o=this.codemirror,l=o.getWrapperElement(),s=l.nextSibling,a=parseInt(window.getComputedStyle(l).paddingTop),f=parseInt(window.getComputedStyle(l).borderTopWidth),p=parseInt(this.options.maxHeight),c=p+a*2+f*2,h=c.toString()+"px";s.style.height=h};V.prototype.createSideBySide=function(){var o=this.codemirror,l=o.getWrapperElement(),s=l.nextSibling;if(!s||!s.classList.contains("editor-preview-side")){if(s=document.createElement("div"),s.className="editor-preview-side",this.options.previewClass)if(Array.isArray(this.options.previewClass))for(var a=0;a"&&(l=l.substring(1)),o)try{if(o.matches)return o.matches(l);if(o.msMatchesSelector)return o.msMatchesSelector(l);if(o.webkitMatchesSelector)return o.webkitMatchesSelector(l)}catch{return!1}return!1}}function hc(o){return o.host&&o!==document&&o.host.nodeType&&o.host!==o?o.host:o.parentNode}function Gt(o,l,s,a){if(o){s=s||document;do{if(l!=null&&(l[0]===">"?o.parentNode===s&&Ro(o,l):Ro(o,l))||a&&o===s)return o;if(o===s)break}while(o=hc(o))}return null}var ic=/\s+/g;function Bt(o,l,s){if(o&&l)if(o.classList)o.classList[s?"add":"remove"](l);else{var a=(" "+o.className+" ").replace(ic," ").replace(" "+l+" "," ");o.className=(a+(s?" "+l:"")).replace(ic," ")}}function pe(o,l,s){var a=o&&o.style;if(a){if(s===void 0)return document.defaultView&&document.defaultView.getComputedStyle?s=document.defaultView.getComputedStyle(o,""):o.currentStyle&&(s=o.currentStyle),l===void 0?s:s[l];!(l in a)&&l.indexOf("webkit")===-1&&(l="-webkit-"+l),a[l]=s+(typeof s=="string"?"":"px")}}function An(o,l){var s="";if(typeof o=="string")s=o;else do{var a=pe(o,"transform");a&&a!=="none"&&(s=a+" "+s)}while(!l&&(o=o.parentNode));var f=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return f&&new f(s)}function pc(o,l,s){if(o){var a=o.getElementsByTagName(l),f=0,p=a.length;if(s)for(;f=p:c=f<=p,!c)return a;if(a===Vt())break;a=Tr(a,!1)}return!1}function Fn(o,l,s,a){for(var f=0,p=0,c=o.children;p2&&arguments[2]!==void 0?arguments[2]:{},f=a.evt,p=zp(a,Qp);xi.pluginEvent.bind(ge)(l,s,er({dragEl:J,parentEl:qe,ghostEl:ye,rootEl:Pe,nextEl:Yr,lastDownEl:Io,cloneEl:Re,cloneHidden:Fr,dragStarted:ci,putSortable:ft,activeSortable:ge.active,originalEvent:f,oldIndex:En,oldDraggableIndex:vi,newIndex:Nt,newDraggableIndex:Ar,hideGhostForTarget:wc,unhideGhostForTarget:Cc,cloneNowHidden:function(){Fr=!0},cloneNowShown:function(){Fr=!1},dispatchSortableEvent:function(h){Ct({sortable:s,name:h,originalEvent:f})}},p))};function Ct(o){Zp(er({putSortable:ft,cloneEl:Re,targetEl:J,rootEl:Pe,oldIndex:En,oldDraggableIndex:vi,newIndex:Nt,newDraggableIndex:Ar},o))}var J,qe,ye,Pe,Yr,Io,Re,Fr,En,Nt,vi,Ar,_o,ft,Sn=!1,Wo=!1,qo=[],Xr,jt,Dl,wl,lc,sc,ci,kn,mi,bi=!1,Bo=!1,Po,gt,Cl=[],Tl=!1,Uo=[],Go=typeof document<"u",No=Bl,uc=yi||cr?"cssFloat":"float",Jp=Go&&!cc&&!Bl&&"draggable"in document.createElement("div"),yc=function(){if(Go){if(cr)return!1;var o=document.createElement("x");return o.style.cssText="pointer-events:auto",o.style.pointerEvents==="auto"}}(),xc=function(l,s){var a=pe(l),f=parseInt(a.width)-parseInt(a.paddingLeft)-parseInt(a.paddingRight)-parseInt(a.borderLeftWidth)-parseInt(a.borderRightWidth),p=Fn(l,0,s),c=Fn(l,1,s),h=p&&pe(p),b=c&&pe(c),y=h&&parseInt(h.marginLeft)+parseInt(h.marginRight)+Je(p).width,x=b&&parseInt(b.marginLeft)+parseInt(b.marginRight)+Je(c).width;if(a.display==="flex")return a.flexDirection==="column"||a.flexDirection==="column-reverse"?"vertical":"horizontal";if(a.display==="grid")return a.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(p&&h.float&&h.float!=="none"){var C=h.float==="left"?"left":"right";return c&&(b.clear==="both"||b.clear===C)?"vertical":"horizontal"}return p&&(h.display==="block"||h.display==="flex"||h.display==="table"||h.display==="grid"||y>=f&&a[uc]==="none"||c&&a[uc]==="none"&&y+x>f)?"vertical":"horizontal"},$p=function(l,s,a){var f=a?l.left:l.top,p=a?l.right:l.bottom,c=a?l.width:l.height,h=a?s.left:s.top,b=a?s.right:s.bottom,y=a?s.width:s.height;return f===h||p===b||f+c/2===h+y/2},Vp=function(l,s){var a;return qo.some(function(f){var p=f[Ft].options.emptyInsertThreshold;if(!(!p||Nl(f))){var c=Je(f),h=l>=c.left-p&&l<=c.right+p,b=s>=c.top-p&&s<=c.bottom+p;if(h&&b)return a=f}}),a},Dc=function(l){function s(p,c){return function(h,b,y,x){var C=h.options.group.name&&b.options.group.name&&h.options.group.name===b.options.group.name;if(p==null&&(c||C))return!0;if(p==null||p===!1)return!1;if(c&&p==="clone")return p;if(typeof p=="function")return s(p(h,b,y,x),c)(h,b,y,x);var E=(c?h:b).options.group.name;return p===!0||typeof p=="string"&&p===E||p.join&&p.indexOf(E)>-1}}var a={},f=l.group;(!f||Fl(f)!="object")&&(f={name:f}),a.name=f.name,a.checkPull=s(f.pull,!0),a.checkPut=s(f.put),a.revertClone=f.revertClone,l.group=a},wc=function(){!yc&&ye&&pe(ye,"display","none")},Cc=function(){!yc&&ye&&pe(ye,"display","")};Go&&!cc&&document.addEventListener("click",function(o){if(Wo)return o.preventDefault(),o.stopPropagation&&o.stopPropagation(),o.stopImmediatePropagation&&o.stopImmediatePropagation(),Wo=!1,!1},!0);var Kr=function(l){if(J){l=l.touches?l.touches[0]:l;var s=Vp(l.clientX,l.clientY);if(s){var a={};for(var f in l)l.hasOwnProperty(f)&&(a[f]=l[f]);a.target=a.rootEl=s,a.preventDefault=void 0,a.stopPropagation=void 0,s[Ft]._onDragOver(a)}}},eg=function(l){J&&J.parentNode[Ft]._isOutsideThisEl(l.target)};function ge(o,l){if(!(o&&o.nodeType&&o.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(o));this.el=o,this.options=l=fr({},l),o[Ft]=this;var s={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(o.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return xc(o,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(c,h){c.setData("Text",h.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:ge.supportPointer!==!1&&"PointerEvent"in window&&(!pi||Bl),emptyInsertThreshold:5};xi.initializePlugins(this,o,s);for(var a in s)!(a in l)&&(l[a]=s[a]);Dc(l);for(var f in this)f.charAt(0)==="_"&&typeof this[f]=="function"&&(this[f]=this[f].bind(this));this.nativeDraggable=l.forceFallback?!1:Jp,this.nativeDraggable&&(this.options.touchStartThreshold=1),l.supportPointer?Se(o,"pointerdown",this._onTapStart):(Se(o,"mousedown",this._onTapStart),Se(o,"touchstart",this._onTapStart)),this.nativeDraggable&&(Se(o,"dragover",this),Se(o,"dragenter",this)),qo.push(this.el),l.store&&l.store.get&&this.sort(l.store.get(this)||[]),fr(this,Xp())}ge.prototype={constructor:ge,_isOutsideThisEl:function(l){!this.el.contains(l)&&l!==this.el&&(kn=null)},_getDirection:function(l,s){return typeof this.options.direction=="function"?this.options.direction.call(this,l,s,J):this.options.direction},_onTapStart:function(l){if(l.cancelable){var s=this,a=this.el,f=this.options,p=f.preventOnFilter,c=l.type,h=l.touches&&l.touches[0]||l.pointerType&&l.pointerType==="touch"&&l,b=(h||l).target,y=l.target.shadowRoot&&(l.path&&l.path[0]||l.composedPath&&l.composedPath()[0])||b,x=f.filter;if(sg(a),!J&&!(/mousedown|pointerdown/.test(c)&&l.button!==0||f.disabled)&&!y.isContentEditable&&!(!this.nativeDraggable&&pi&&b&&b.tagName.toUpperCase()==="SELECT")&&(b=Gt(b,f.draggable,a,!1),!(b&&b.animated)&&Io!==b)){if(En=Pt(b),vi=Pt(b,f.draggable),typeof x=="function"){if(x.call(this,l,b,this)){Ct({sortable:s,rootEl:y,name:"filter",targetEl:b,toEl:a,fromEl:a}),At("filter",s,{evt:l}),p&&l.preventDefault();return}}else if(x&&(x=x.split(",").some(function(C){if(C=Gt(y,C.trim(),a,!1),C)return Ct({sortable:s,rootEl:C,name:"filter",targetEl:b,fromEl:a,toEl:a}),At("filter",s,{evt:l}),!0}),x)){p&&l.preventDefault();return}f.handle&&!Gt(y,f.handle,a,!1)||this._prepareDragStart(l,h,b)}}},_prepareDragStart:function(l,s,a){var f=this,p=f.el,c=f.options,h=p.ownerDocument,b;if(a&&!J&&a.parentNode===p){var y=Je(a);if(Pe=p,J=a,qe=J.parentNode,Yr=J.nextSibling,Io=a,_o=c.group,ge.dragged=J,Xr={target:J,clientX:(s||l).clientX,clientY:(s||l).clientY},lc=Xr.clientX-y.left,sc=Xr.clientY-y.top,this._lastX=(s||l).clientX,this._lastY=(s||l).clientY,J.style["will-change"]="all",b=function(){if(At("delayEnded",f,{evt:l}),ge.eventCanceled){f._onDrop();return}f._disableDelayedDragEvents(),!nc&&f.nativeDraggable&&(J.draggable=!0),f._triggerDragStart(l,s),Ct({sortable:f,name:"choose",originalEvent:l}),Bt(J,c.chosenClass,!0)},c.ignore.split(",").forEach(function(x){pc(J,x.trim(),kl)}),Se(h,"dragover",Kr),Se(h,"mousemove",Kr),Se(h,"touchmove",Kr),c.supportPointer?(Se(h,"pointerup",f._onDrop),!this.nativeDraggable&&Se(h,"pointercancel",f._onDrop)):(Se(h,"mouseup",f._onDrop),Se(h,"touchend",f._onDrop),Se(h,"touchcancel",f._onDrop)),nc&&this.nativeDraggable&&(this.options.touchStartThreshold=4,J.draggable=!0),At("delayStart",this,{evt:l}),c.delay&&(!c.delayOnTouchOnly||s)&&(!this.nativeDraggable||!(yi||cr))){if(ge.eventCanceled){this._onDrop();return}c.supportPointer?(Se(h,"pointerup",f._disableDelayedDrag),Se(h,"pointercancel",f._disableDelayedDrag)):(Se(h,"mouseup",f._disableDelayedDrag),Se(h,"touchend",f._disableDelayedDrag),Se(h,"touchcancel",f._disableDelayedDrag)),Se(h,"mousemove",f._delayedDragTouchMoveHandler),Se(h,"touchmove",f._delayedDragTouchMoveHandler),c.supportPointer&&Se(h,"pointermove",f._delayedDragTouchMoveHandler),f._dragStartTimer=setTimeout(b,c.delay)}else b()}},_delayedDragTouchMoveHandler:function(l){var s=l.touches?l.touches[0]:l;Math.max(Math.abs(s.clientX-this._lastX),Math.abs(s.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){J&&kl(J),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var l=this.el.ownerDocument;ke(l,"mouseup",this._disableDelayedDrag),ke(l,"touchend",this._disableDelayedDrag),ke(l,"touchcancel",this._disableDelayedDrag),ke(l,"pointerup",this._disableDelayedDrag),ke(l,"pointercancel",this._disableDelayedDrag),ke(l,"mousemove",this._delayedDragTouchMoveHandler),ke(l,"touchmove",this._delayedDragTouchMoveHandler),ke(l,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(l,s){s=s||l.pointerType=="touch"&&l,!this.nativeDraggable||s?this.options.supportPointer?Se(document,"pointermove",this._onTouchMove):s?Se(document,"touchmove",this._onTouchMove):Se(document,"mousemove",this._onTouchMove):(Se(J,"dragend",this),Se(Pe,"dragstart",this._onDragStart));try{document.selection?zo(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(l,s){if(Sn=!1,Pe&&J){At("dragStarted",this,{evt:s}),this.nativeDraggable&&Se(document,"dragover",eg);var a=this.options;!l&&Bt(J,a.dragClass,!1),Bt(J,a.ghostClass,!0),ge.active=this,l&&this._appendGhost(),Ct({sortable:this,name:"start",originalEvent:s})}else this._nulling()},_emulateDragOver:function(){if(jt){this._lastX=jt.clientX,this._lastY=jt.clientY,wc();for(var l=document.elementFromPoint(jt.clientX,jt.clientY),s=l;l&&l.shadowRoot&&(l=l.shadowRoot.elementFromPoint(jt.clientX,jt.clientY),l!==s);)s=l;if(J.parentNode[Ft]._isOutsideThisEl(l),s)do{if(s[Ft]){var a=void 0;if(a=s[Ft]._onDragOver({clientX:jt.clientX,clientY:jt.clientY,target:l,rootEl:s}),a&&!this.options.dragoverBubble)break}l=s}while(s=hc(s));Cc()}},_onTouchMove:function(l){if(Xr){var s=this.options,a=s.fallbackTolerance,f=s.fallbackOffset,p=l.touches?l.touches[0]:l,c=ye&&An(ye,!0),h=ye&&c&&c.a,b=ye&&c&&c.d,y=No&>&&ac(gt),x=(p.clientX-Xr.clientX+f.x)/(h||1)+(y?y[0]-Cl[0]:0)/(h||1),C=(p.clientY-Xr.clientY+f.y)/(b||1)+(y?y[1]-Cl[1]:0)/(b||1);if(!ge.active&&!Sn){if(a&&Math.max(Math.abs(p.clientX-this._lastX),Math.abs(p.clientY-this._lastY))=0&&(Ct({rootEl:qe,name:"add",toEl:qe,fromEl:Pe,originalEvent:l}),Ct({sortable:this,name:"remove",toEl:qe,originalEvent:l}),Ct({rootEl:qe,name:"sort",toEl:qe,fromEl:Pe,originalEvent:l}),Ct({sortable:this,name:"sort",toEl:qe,originalEvent:l})),ft&&ft.save()):Nt!==En&&Nt>=0&&(Ct({sortable:this,name:"update",toEl:qe,originalEvent:l}),Ct({sortable:this,name:"sort",toEl:qe,originalEvent:l})),ge.active&&((Nt==null||Nt===-1)&&(Nt=En,Ar=vi),Ct({sortable:this,name:"end",toEl:qe,originalEvent:l}),this.save()))),this._nulling()},_nulling:function(){At("nulling",this),Pe=J=qe=ye=Yr=Re=Io=Fr=Xr=jt=ci=Nt=Ar=En=vi=kn=mi=ft=_o=ge.dragged=ge.ghost=ge.clone=ge.active=null;var l=this.el;Uo.forEach(function(s){l.contains(s)&&(s.checked=!0)}),Uo.length=Dl=wl=0},handleEvent:function(l){switch(l.type){case"drop":case"dragend":this._onDrop(l);break;case"dragenter":case"dragover":J&&(this._onDragOver(l),tg(l));break;case"selectstart":l.preventDefault();break}},toArray:function(){for(var l=[],s,a=this.el.children,f=0,p=a.length,c=this.options;ff.right+p||o.clientY>a.bottom&&o.clientX>a.left:o.clientY>f.bottom+p||o.clientX>a.right&&o.clientY>a.top}function og(o,l,s,a,f,p,c,h){var b=a?o.clientY:o.clientX,y=a?s.height:s.width,x=a?s.top:s.left,C=a?s.bottom:s.right,E=!1;if(!c){if(h&&Pox+y*p/2:bC-Po)return-mi}else if(b>x+y*(1-f)/2&&bC-y*p/2)?b>x+y/2?1:-1:0}function ag(o){return Pt(J)0||C>0&&E0?"Converting "+l+" photo"+(l>1?"s":"")+"\u2026":"Uploading "+C+" photo"+(C>1?"s":"")+"\u2026",s.details.open=!0):C>0?(s.summary.textContent="\u2713 "+C+" photo"+(C>1?"s":"")+" ready \u2014 tap to review",s.details.open=!1):(s.summary.textContent="Photos (1\u20136)",s.details.open=!0)}}function c(){p(),setTimeout(p,150),setTimeout(p,500)}function h(){var x=o.querySelector('button[type="submit"], input[type="submit"]');if(x&&(x.disabled=l>0),l>0)f("Converting "+l+" photo"+(l>1?"s":"")+"\u2026");else{var C=Ec();C&&/Converting/.test(C.textContent)&&f("")}p()}o.addEventListener("submit",function(x){l>0&&(x.preventDefault(),f("Hang on \u2014 a photo is still converting.","err"))},!0);function b(x){return function(C){var E=C&&C.file;return E?_c(E).then(function(F){return F?(l++,h(),import("./heic-to-CN7JBE7H.js").then(function(_){var L=_.heicTo||_.default&&_.default.heicTo;return L({blob:E,type:"image/jpeg",quality:.85})}).then(function(_){var L=new File([_],dg(E.name),{type:"image/jpeg"});x.addFile(L)}).catch(function(){f("A photo couldn\u2019t be converted and was skipped \u2014 the others are fine.","err")}).then(function(){l--,h()}),!1):!0}):!0}}var y=0;(function x(){var C=window.GravFilePond&&window.GravFilePond.getInstances?window.GravFilePond.getInstances():[];if(!C.length){y++<120&&setTimeout(x,50);return}C.forEach(function(E){E&&!E._heicHooked&&(E._heicHooked=!0,E.setOptions({beforeAddFile:b(E),allowReorder:!0,itemInsertLocation:"after"}),a=E,["addfile","processfile","processfiles","removefile","error"].forEach(function(F){try{E.on(F,c)}catch{}}),p())})})()}function Ot(o){return document.querySelector('[name="data['+o+']"]')}function gg(){var o=Array.prototype.slice.call(document.querySelectorAll(".advanced-field"));if(o.length){var l=[];if(o.forEach(function(p){var c=p.closest(".form-field");c&&l.indexOf(c)===-1&&l.push(c)}),!!l.length){var s=document.createElement("details");s.className="more-options";var a=document.createElement("summary");a.className="more-options__summary",a.textContent="More options",s.appendChild(a),l[0].parentNode.insertBefore(s,l[0]),l.forEach(function(p){s.appendChild(p)});var f=l.some(function(p){var c=p.querySelector('input[type="text"]');if(c&&c.value.trim())return!0;var h=p.querySelector('input[type="radio"]:checked');if(!h||!h.value)return!1;var b=p.querySelector('input[type="radio"][checked]');return b?h.value!==b.value:h.value!=="0"});f&&(s.open=!0)}}}var vg={0:"Sunny",1:"Partly cloudy",2:"Partly cloudy",3:"Cloudy",45:"Foggy",48:"Foggy",51:"Drizzle",53:"Drizzle",55:"Drizzle",56:"Drizzle",57:"Drizzle",61:"Rain",63:"Rain",65:"Rain",66:"Rain",67:"Rain",80:"Rain",81:"Rain",82:"Rain",71:"Snow",73:"Snow",75:"Snow",77:"Snow",85:"Snow",86:"Snow",95:"Thunderstorm",96:"Thunderstorm",99:"Thunderstorm"};function dr(o,l,s){o&&(o.className="form-status"+(s?" form-status--"+s:""),o.textContent=l||"")}function mg(){var o=document.getElementById("get-location"),l=document.getElementById("get-weather");if(!o&&!l)return;var s=document.getElementById("location-status"),a=document.getElementById("weather-status");function f(){var h=Ot("lat"),b=Ot("lng"),y=h?h.value.trim():"",x=b?b.value.trim():"";return y&&x?{lat:y,lng:x}:null}function p(){if(l){var h=!!f();l.disabled=!h,l.title=h?"":"Get location first"}}p();function c(h,b){var y=Ot("location_city"),x=Ot("location_country");if(!((!y||y.value.trim())&&(!x||x.value.trim()))){var C="https://api.bigdatacloud.net/data/reverse-geocode-client?latitude="+encodeURIComponent(h)+"&longitude="+encodeURIComponent(b)+"&localityLanguage=en";fetch(C).then(function(E){return E.json()}).then(function(E){var F=(E.city||E.locality||"").trim(),_=(E.countryName||"").trim();y&&!y.value.trim()&&F&&(y.value=F),x&&!x.value.trim()&&_&&(x.value=_);var L=[F,_].filter(Boolean).join(", ");L&&dr(s,"\u2713 Location captured \xB7 "+L,"ok")}).catch(function(){})}}o&&o.addEventListener("click",function(){if(!navigator.geolocation){dr(s,"Geolocation is not supported on this device.","err");return}o.classList.add("is-loading"),o.disabled=!0,dr(s,"Getting location\u2026"),navigator.geolocation.getCurrentPosition(function(h){var b=h.coords.latitude.toFixed(6),y=h.coords.longitude.toFixed(6),x=Ot("lat"),C=Ot("lng");x&&(x.value=b),C&&(C.value=y),o.classList.remove("is-loading"),o.disabled=!1,dr(s,"\u2713 Location captured \xB7 "+b+", "+y,"ok"),p(),c(b,y)},function(h){o.classList.remove("is-loading"),o.disabled=!1,dr(s,"\u2717 "+(h&&h.message?h.message:"Could not get location")+" \u2014 enter coordinates manually if needed.","err")},{enableHighAccuracy:!0,timeout:15e3})}),l&&l.addEventListener("click",function(){var h=f();if(!h){dr(a,"Get location first, then fetch weather.","err");return}l.classList.add("is-loading"),l.disabled=!0,dr(a,"Fetching weather\u2026");var b="https://api.open-meteo.com/v1/forecast?latitude="+h.lat+"&longitude="+h.lng+"¤t=temperature_2m,weather_code&temperature_unit=celsius";fetch(b).then(function(y){return y.json()}).then(function(y){var x=Math.round(y.current.temperature_2m),C=vg[y.current.weather_code]||"Cloudy",E=Ot("weather_temp_c"),F=Ot("weather_desc");E&&(E.value=x),F&&(F.value=C),l.classList.remove("is-loading"),p(),dr(a,"\u2713 Weather set \xB7 "+C+" \xB7 "+x+"\xB0C (edit above if needed)","ok")}).catch(function(){l.classList.remove("is-loading"),p(),dr(a,"\u2717 Could not fetch weather \u2014 set it manually above.","err")})})}function bg(){var o=new Date;return o.setSeconds(0,0),o.setMinutes(o.getMinutes()-o.getTimezoneOffset()),o.toISOString().slice(0,16)}function yg(){var o={title:"Title",date:"Date & time",content:"Content"},l=document.querySelector('form[name="new-entry"]');if(!l)return;var s=Ot("date");s&&!String(s.value).trim()&&(s.value=bg());function a(){l.querySelectorAll(".field-error").forEach(function(c){c.remove()}),l.querySelectorAll(".field-invalid").forEach(function(c){c.classList.remove("field-invalid")})}function f(c,h){c.classList.add("field-invalid");var b=document.createElement("span");b.className="field-error",b.textContent=h,c.parentNode.insertBefore(b,c.nextSibling)}function p(c){var h=l.querySelector(".photos-collapse"),b,y;if(h?(h.open=!0,y=h.querySelector(".photos-collapse__summary"),b=h):(b=document.querySelector(".filepond-root, .form-input-file"),y=b),!y)return b||null;var x=document.createElement("span");return x.className="field-error",x.textContent=c,y.insertAdjacentElement("afterend",x),b||y}l.addEventListener("submit",function(c){a();var h=null;!Xo&&document.querySelectorAll(".filepond--item").length<1&&(h=p("Add at least one photo.")),Object.keys(o).forEach(function(b){var y=Ot(b);y&&!String(y.value).trim()&&(f(y,o[b]+" is required."),h||(h=y))}),h&&(c.preventDefault(),typeof h.focus=="function"&&h.focus(),h.scrollIntoView({behavior:"smooth",block:"center"}))})}var Pl="intotheeast:new-entry-draft";function xg(o){return Array.prototype.slice.call(o.querySelectorAll('[name^="data["]')).filter(function(l){if(l.type==="file")return!1;var s=l.name;return s.indexOf("data[_json")!==0&&s.indexOf("data[photos")!==0})}function Dg(){var o=document.querySelector(".filepond-root, .form-input-file");if(!(!o||!o.parentNode)&&!o.parentNode.querySelector(".photo-reauth-hint")){var l=document.createElement("p");l.className="photo-reauth-hint is-shown",l.textContent="Your text was restored \u2014 photos need re-selecting (they can\u2019t be saved in a draft).",o.parentNode.insertBefore(l,o.nextSibling)}}function wg(){var o=document.querySelector('form[name="new-entry"]');if(!o||Xo)return;if(document.querySelector(".notices.success")){try{localStorage.removeItem(Pl)}catch{}return}function l(){var p={};xg(o).forEach(function(c){c.type==="radio"?c.checked&&(p[c.name]=c.value):p[c.name]=c.value});try{localStorage.setItem(Pl,JSON.stringify(p))}catch{}}var s=null;try{s=localStorage.getItem(Pl)}catch{s=null}if(s){var a=null;try{a=JSON.parse(s)}catch{a=null}if(a){var f=!1;Object.keys(a).forEach(function(p){var c=a[p];if(c!=null&&String(c).trim()&&(f=!0),p!=="data[content]"){var h=o.querySelectorAll('input[type="radio"][name="'+p+'"]');if(h.length){h.forEach(function(y){y.checked=y.value===c});return}var b=o.querySelector('[name="'+p+'"]');b&&b.type!=="file"&&(b.value=c)}}),window.postFormEditor&&a["data[content]"]!=null&&window.postFormEditor.value(a["data[content]"]),f&&Dg()}}o.addEventListener("input",l),o.addEventListener("change",l),window.postFormEditor&&window.postFormEditor.codemirror.on("change",l)}function Cg(){var o=document.querySelector(".post-form-wrap"),l=document.querySelector(".post-form-wrap .notices.success, .post-form-wrap .notices.green");if(!(!o||!l)){var s=document.createElement("div");s.className="post-success";var a=document.createElement("p");a.className="post-success__title",a.textContent="\u2713 Saved to your journal.",s.appendChild(a);var f=document.createElement("div");f.className="post-success__actions";var p=o.getAttribute("data-trip-url");if(p){var c=document.createElement("a");c.className="post-success__view",c.href=p,c.textContent="View your journal \u2192",f.appendChild(c)}var h=document.createElement("a");h.className="post-success__again",h.href=window.location.pathname,h.textContent="Post another",f.appendChild(h),s.appendChild(f),l.parentNode.insertBefore(s,l.nextSibling),["form",".form-action-row","#location-status","#weather-status"].forEach(function(b){var y=o.querySelector(b);y&&(y.style.display="none")}),l.scrollIntoView({behavior:"smooth",block:"start"})}}var Xo=!1;function Ac(o){return new URLSearchParams(window.location.search).get(o)}function hr(o,l){var s=Ot(o);s&&(s.value=l==null?"":String(l))}function zl(o,l){var s=l?"1":"0",a=document.querySelectorAll('[name="data['+o+']"]');Array.prototype.forEach.call(a,function(f){f.checked=String(f.value)===s})}function kg(o){var l=o==null?"":String(o);if(window.postFormEditor&&typeof window.postFormEditor.value=="function")window.postFormEditor.value(l);else{var s=Ot("content");s&&(s.value=l)}}function Fc(o,l){var s=o.querySelectorAll("input, textarea, select, button");Array.prototype.forEach.call(s,function(a){a.type==="file"||a.name&&a.name.indexOf("data[photos")===0||(a.disabled=l)}),window.postFormEditor&&window.postFormEditor.codemirror&&window.postFormEditor.codemirror.setOption("readOnly",l?"nocursor":!1)}function Hl(o,l){o&&(o.tagName==="INPUT"?o.value=l:o.textContent=l)}function Sg(o,l){var s=o.querySelector(".post-edit-error");if(s){s.textContent=l;return}var a=document.createElement("div");a.className="post-edit-error",a.setAttribute("role","alert"),a.textContent=l;var f=o.querySelector("h1");f?f.insertAdjacentElement("afterend",a):o.insertBefore(a,o.firstChild)}var Eg=/\.(jpe?g|png|webp|heic|heif|gif)$/i;function Tc(o){var l=/(?:^|\/)photo-0*(\d+)\./i.exec(o);return l?parseInt(l[1],10):Number.MAX_SAFE_INTEGER}function Ag(o,l){var s=Tc(o),a=Tc(l);return s!==a?s-a:ol?1:0}function Lc(o,l){var s=String(o||"photo"),a=s.lastIndexOf("."),f=(a>0?s.slice(0,a):s).toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"photo",p=l?".jpg":a>0?s.slice(a).toLowerCase():".jpg",c=Date.now().toString(36)+Math.random().toString(36).slice(2,6);return f+"-"+c+p}function Fg(o){var l=document.querySelector('form[name="new-entry"]');if(!l||!o)return;var s=o.split("/").filter(Boolean).pop();if(!s)return;var a=document.querySelector(".filepond-root, .form-input-file"),f=a?a.closest(".form-field"):null;f&&(f.style.display="none");var p=l.querySelector(".photos-collapse");p&&(p.style.display="none");var c=document.createElement("div");c.className="photo-editor",c.innerHTML='

    Photos

    ',f&&f.parentNode?f.parentNode.insertBefore(c,f):l.insertBefore(c,l.firstElementChild);var h=c.querySelector(".photo-editor__grid"),b=c.querySelector(".photo-editor__status"),y=c.querySelector(".photo-editor__add"),x=c.querySelector(".photo-editor__input"),C=[],E=null,F=!1,_=0;function L(S,R){b.textContent=S||"",b.className="photo-editor__status gpx-status"+(R?" error":"")}function T(S){F=S,y.disabled=S,Array.prototype.forEach.call(h.querySelectorAll(".photo-editor__del, .photo-editor__confirm-yes, .photo-editor__confirm-no"),function(R){R.disabled=S}),E&&E.option("disabled",S)}function O(S,R,z){return fetch(S,Object.assign({credentials:"include"},R)).then(function(K){if(K.ok||z&&z.indexOf(K.status)!==-1)return K;var ue=new Error("HTTP "+K.status);throw ue.status=K.status,ue})}function N(S,R){var z=S&&S.status;return z===401||z===403?"Your login session expired \u2014 sign in again, then retry.":R}function P(){return fetch("/api/v1/pages"+o+"/media",{credentials:"include",headers:{Accept:"application/json"}}).then(function(S){if(!S.ok)throw new Error("HTTP "+S.status);return S.json()}).then(function(S){return(S&&S.data||[]).filter(function(R){return R&&typeof R.filename=="string"&&Eg.test(R.filename)}).map(function(R){return R.filename}).sort(Ag)})}function I(S){return O("/api/v1/entry/"+encodeURIComponent(s)+"/photos/order",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({order:S})})}function W(S){if(C=(S||[]).slice(),E&&(E.destroy(),E=null),h.innerHTML="",!C.length){h.innerHTML='

    No photos yet \u2014 add some.

    ';return}var R=++_;C.forEach(function(z){var K=document.createElement("div");K.className="photo-editor__cell",K.setAttribute("data-filename",z);var ue=document.createElement("img");ue.className="photo-editor__img",ue.loading="lazy",ue.alt=z,ue.src=o+"/"+encodeURIComponent(z)+"?v="+R;var De=document.createElement("button");De.type="button",De.className="photo-editor__del",De.setAttribute("aria-label","Delete "+z),De.textContent="\u2715",De.addEventListener("click",function(){U(K,z)}),K.appendChild(ue),K.appendChild(De),h.appendChild(K)}),C.length>1&&(E=new Sc(h,{animation:150,draggable:".photo-editor__cell",filter:".photo-editor__confirm",onEnd:be}))}function j(){return Array.prototype.map.call(h.querySelectorAll(".photo-editor__cell"),function(S){return S.getAttribute("data-filename")})}function X(S,R){if(S.length!==R.length)return!1;for(var z=0;zDelete?',S.appendChild(z),S.classList.add("is-confirming"),z.querySelector(".photo-editor__confirm-no").addEventListener("click",function(){S.classList.remove("is-confirming"),z.remove()}),z.querySelector(".photo-editor__confirm-yes").addEventListener("click",function(){z.querySelector(".photo-editor__confirm-yes").disabled=!0,z.querySelector(".photo-editor__confirm-no").disabled=!0,ae(R)})}}function ae(S){var R=C.slice(),z=C.filter(function(K){return K!==S});T(!0),L("Deleting\u2026"),O("/api/v1/pages"+o+"/media/"+encodeURIComponent(S),{method:"DELETE"},[204,404]).then(function(){return(z.length?I(z):Promise.resolve()).then(P).then(function(K){L(""),W(K)},function(){L("Photo deleted, but refreshing the list failed \u2014 reload if it looks off.",!0),W(z)})},function(K){L(N(K,"Couldn\u2019t delete that photo. Try again."),!0),W(R)}).then(function(){T(!1)})}function ne(S){return _c(S).then(function(R){return R?import("./heic-to-CN7JBE7H.js").then(function(z){var K=z.heicTo||z.default&&z.default.heicTo;return K({blob:S,type:"image/jpeg",quality:.85})}).then(function(z){return{blob:z,name:Lc(S.name,!0)}}):{blob:S,name:Lc(S.name,!1)}})}y.addEventListener("click",function(){F||x.click()}),x.addEventListener("change",function(){var S=Array.prototype.slice.call(x.files||[]);x.value="",S.length&&se(S)});function se(S){T(!0);var R=S.length,z=0,K=0,ue=!1,De=C.slice(),ot=Promise.resolve();S.forEach(function(A){ot=ot.then(function(){return z++,L("Uploading "+z+" of "+R+"\u2026"),ne(A).then(function(D){var ee=new FormData;return ee.append("file",D.blob,D.name),O("/api/v1/pages"+o+"/media",{method:"POST",body:ee})}).then(null,function(D){K++,D&&(D.status===401||D.status===403)&&(ue=!0)})})}),ot.then(function(){return L("Finishing\u2026"),P()}).then(function(A){var D=De.filter(function(he){return A.indexOf(he)!==-1}),ee=A.filter(function(he){return De.indexOf(he)===-1}),we=D.concat(ee);return we.length?I(we).catch(function(){return I(we)}).catch(function(){return Promise.all(ee.map(function(he){return O("/api/v1/pages"+o+"/media/"+encodeURIComponent(he),{method:"DELETE"},[204,404]).then(function(){return!0},function(){return!1})})).then(function(he){var $e=new Error("reorder failed");throw $e.rolledBack=!0,$e.rollbackIncomplete=he.indexOf(!1)!==-1,$e})}).then(P):(W([]),null)}).then(function(A){A&&W(A),K?L(ue?"Couldn\u2019t add photos \u2014 your login session expired. Sign in again, then retry.":K+" photo"+(K>1?"s":"")+" couldn\u2019t be added.",!0):L("")}).catch(function(A){var D;return A&&A.rolledBack?D=A.rollbackIncomplete?"Couldn\u2019t finish adding photos and cleanup was incomplete \u2014 reload the page and check your photos.":"Couldn\u2019t finish adding photos \u2014 changes were rolled back. Try again.":D="Couldn\u2019t add photos. Please try again.",L(D,!0),P().then(W,function(){W(De)})}).then(function(){T(!1)})}h.innerHTML='

    Loading photos\u2026

    ',P().then(W).catch(function(){L("Couldn\u2019t load photos.",!0),W([])})}function Tg(){var o=document.querySelector('form[name="new-entry"]'),l=document.querySelector(".post-form-wrap");if(!(!o||!l)){var s=Ac("edit");if(s){Xo=!0;var a=l.querySelector("h1");a&&(a.textContent="Edit entry");var f=o.querySelector('button[type="submit"], input[type="submit"]'),p=f?f.tagName==="INPUT"?f.value:f.textContent:"Save changes";Fc(o,!0),Hl(f,"Loading entry\u2026");var c=Ac("return")||l.getAttribute("data-trip-url")||"";o.setAttribute("action","/post?edit="+encodeURIComponent(s)+(c?"&return="+encodeURIComponent(c):"")),fetch("/api/v1/pages"+s,{credentials:"include",headers:{Accept:"application/json"}}).then(function(h){if(!h.ok){var b=new Error("HTTP "+h.status);throw b.status=h.status,b}return h.json()}).then(function(h){var b=h&&h.data||{},y=b.header||{};hr("title",y.title!=null?y.title:b.title),hr("date",y.date?String(y.date).replace(" ","T"):""),kg(b.content),hr("lat",y.lat),hr("lng",y.lng),hr("location_city",y.location_city),hr("location_country",y.location_country),hr("weather_desc",y.weather_desc),hr("weather_temp_c",y.weather_temp_c),hr("transport_mode",y.transport_mode),zl("featured",y.featured),zl("force_connect",y.force_connect),zl("published",y.published!==void 0?y.published:b.published);var x=Ot("edit_path");x&&(x.value=s+"/entry.md"),Fc(o,!1),Hl(f,"Save changes");var C=o.querySelector(".more-options");C&&(C.open=!0),Fg(s)}).catch(function(h){var b=h&&h.status===404?"This entry no longer exists \u2014 it may have been deleted. Head back to the journal.":"Sorry \u2014 this entry couldn\u2019t be loaded for editing. Check your connection and try again.";Sg(l,b),Hl(f,p)})}}}function Mc(){window.postFormEditor=fg(),Cg(),Tg(),wg(),pg(),gg(),mg(),yg()}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",Mc):Mc(); +`]},Np={link:"URL for the link:",image:"URL of the image:"},Op={locale:"en-US",format:{hour:"2-digit",minute:"2-digit"}},Ip={bold:"**",code:"```",italic:"*"},Pp={sbInit:"Attach files by drag and dropping or pasting from clipboard.",sbOnDragEnter:"Drop image to upload it.",sbOnDrop:"Uploading image #images_names#...",sbProgress:"Uploading #file_name#: #progress#%",sbOnUploaded:"Uploaded #image_name#",sizeUnits:" B, KB, MB"},zp={noFileGiven:"You must select a file.",typeNotAllowed:"This image type is not allowed.",fileTooLarge:`Image #image_name# is too big (#image_size#). +Maximum file size is #image_max_size#.`,importError:"Something went wrong when uploading the image #image_name#."};function re(o){o=o||{},o.parent=this;var l=!0;if(o.autoDownloadFontAwesome===!1&&(l=!1),o.autoDownloadFontAwesome!==!0)for(var s=document.styleSheets,a=0;a-1&&(l=!1);if(l){var f=document.createElement("link");f.rel="stylesheet",f.href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css",document.getElementsByTagName("head")[0].appendChild(f)}if(o.element)this.element=o.element;else if(o.element===null){console.log("EasyMDE: Error. No element was found.");return}if(o.toolbar===void 0){o.toolbar=[];for(var p in Ur)Object.prototype.hasOwnProperty.call(Ur,p)&&(p.indexOf("separator-")!=-1&&o.toolbar.push("|"),(Ur[p].default===!0||o.showIcons&&o.showIcons.constructor===Array&&o.showIcons.indexOf(p)!=-1)&&o.toolbar.push(p))}if(Object.prototype.hasOwnProperty.call(o,"previewClass")||(o.previewClass="editor-preview"),Object.prototype.hasOwnProperty.call(o,"status")||(o.status=["autosave","lines","words","cursor"],o.uploadImage&&o.status.unshift("upload-image")),o.previewRender||(o.previewRender=function(d){return this.parent.markdown(d)}),o.parsingConfig=sr({highlightFormatting:!0},o.parsingConfig||{}),o.insertTexts=sr({},Bp,o.insertTexts||{}),o.promptTexts=sr({},Np,o.promptTexts||{}),o.blockStyles=sr({},Ip,o.blockStyles||{}),o.autosave!=null&&(o.autosave.timeFormat=sr({},Op,o.autosave.timeFormat||{})),o.iconClassMap=sr({},_e,o.iconClassMap||{}),o.shortcuts=sr({},Sp,o.shortcuts||{}),o.maxHeight=o.maxHeight||void 0,o.direction=o.direction||"ltr",typeof o.maxHeight<"u"?o.minHeight=o.maxHeight:o.minHeight=o.minHeight||"300px",o.errorCallback=o.errorCallback||function(d){alert(d)},o.uploadImage=o.uploadImage||!1,o.imageMaxSize=o.imageMaxSize||2097152,o.imageAccept=o.imageAccept||"image/png, image/jpeg, image/gif, image/avif",o.imageTexts=sr({},Pp,o.imageTexts||{}),o.errorMessages=sr({},zp,o.errorMessages||{}),o.imagePathAbsolute=o.imagePathAbsolute||!1,o.imageCSRFName=o.imageCSRFName||"csrfmiddlewaretoken",o.imageCSRFHeader=o.imageCSRFHeader||!1,o.imageInputName=o.imageInputName||"image",o.autosave!=null&&o.autosave.unique_id!=null&&o.autosave.unique_id!=""&&(o.autosave.uniqueId=o.autosave.unique_id),o.overlayMode&&o.overlayMode.combine===void 0&&(o.overlayMode.combine=!0),this.options=o,this.render(),o.initialValue&&(!this.options.autosave||this.options.autosave.foundSavedValue!==!0)&&this.value(o.initialValue),o.uploadImage){var c=this;this.codemirror.on("dragenter",function(d,m){c.updateStatusBar("upload-image",c.options.imageTexts.sbOnDragEnter),m.stopPropagation(),m.preventDefault()}),this.codemirror.on("dragend",function(d,m){c.updateStatusBar("upload-image",c.options.imageTexts.sbInit),m.stopPropagation(),m.preventDefault()}),this.codemirror.on("dragleave",function(d,m){c.updateStatusBar("upload-image",c.options.imageTexts.sbInit),m.stopPropagation(),m.preventDefault()}),this.codemirror.on("dragover",function(d,m){c.updateStatusBar("upload-image",c.options.imageTexts.sbOnDragEnter),m.stopPropagation(),m.preventDefault()}),this.codemirror.on("drop",function(d,m){m.stopPropagation(),m.preventDefault(),o.imageUploadFunction?c.uploadImagesUsingCustomFunction(o.imageUploadFunction,m.dataTransfer.files):c.uploadImages(m.dataTransfer.files)}),this.codemirror.on("paste",function(d,m){o.imageUploadFunction?c.uploadImagesUsingCustomFunction(o.imageUploadFunction,m.clipboardData.files):c.uploadImages(m.clipboardData.files)})}}re.prototype.uploadImages=function(o,l,s){if(o.length!==0){for(var a=[],f=0;f=2){var I=N[1];if(l.imagesPreviewHandler){var P=l.imagesPreviewHandler(N[1]);typeof P=="string"&&(I=P)}if(window.EMDEimagesCache[I])F(O,window.EMDEimagesCache[I]);else{window.EMDEimagesCache[I]={};var q=document.createElement("img");q.onload=function(){window.EMDEimagesCache[I]={naturalWidth:q.naturalWidth,naturalHeight:q.naturalHeight,url:I},F(O,window.EMDEimagesCache[I])},q.src=I}}}})}this.codemirror.on("update",function(){_()}),this.gui.sideBySide=this.createSideBySide(),this._rendered=this.element,(l.autofocus===!0||o.autofocus)&&this.codemirror.focus();var L=this.codemirror;setTimeout(function(){L.refresh()}.bind(L),0)};re.prototype.cleanup=function(){document.removeEventListener("keydown",this.documentOnKeyDown)};function tc(){if(typeof localStorage=="object")try{localStorage.setItem("smde_localStorage",1),localStorage.removeItem("smde_localStorage")}catch{return!1}else return!1;return!0}re.prototype.autosave=function(){if(tc()){var o=this;if(this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to use the autosave feature");return}this.options.autosave.binded!==!0&&(o.element.form!=null&&o.element.form!=null&&o.element.form.addEventListener("submit",function(){clearTimeout(o.autosaveTimeoutId),o.autosaveTimeoutId=void 0,localStorage.removeItem("smde_"+o.options.autosave.uniqueId)}),this.options.autosave.binded=!0),this.options.autosave.loaded!==!0&&(typeof localStorage.getItem("smde_"+this.options.autosave.uniqueId)=="string"&&localStorage.getItem("smde_"+this.options.autosave.uniqueId)!=""&&(this.codemirror.setValue(localStorage.getItem("smde_"+this.options.autosave.uniqueId)),this.options.autosave.foundSavedValue=!0),this.options.autosave.loaded=!0);var l=o.value();l!==""?localStorage.setItem("smde_"+this.options.autosave.uniqueId,l):localStorage.removeItem("smde_"+this.options.autosave.uniqueId);var s=document.getElementById("autosaved");if(s!=null&&s!=null&&s!=""){var a=new Date,f=new Intl.DateTimeFormat([this.options.autosave.timeFormat.locale,"en-US"],this.options.autosave.timeFormat.format).format(a),p=this.options.autosave.text==null?"Autosaved: ":this.options.autosave.text;s.innerHTML=p+f}}else console.log("EasyMDE: localStorage not available, cannot autosave")};re.prototype.clearAutosavedValue=function(){if(tc()){if(this.options.autosave==null||this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to clear the autosave value");return}localStorage.removeItem("smde_"+this.options.autosave.uniqueId)}else console.log("EasyMDE: localStorage not available, cannot autosave")};re.prototype.openBrowseFileWindow=function(o,l){var s=this,a=this.gui.toolbar.getElementsByClassName("imageInput")[0];a.click();function f(p){s.options.imageUploadFunction?s.uploadImagesUsingCustomFunction(s.options.imageUploadFunction,p.target.files):s.uploadImages(p.target.files,o,l),a.removeEventListener("change",f)}a.addEventListener("change",f)};re.prototype.uploadImage=function(o,l,s){var a=this;l=l||function(y){$f(a,y)};function f(m){a.updateStatusBar("upload-image",m),setTimeout(function(){a.updateStatusBar("upload-image",a.options.imageTexts.sbInit)},1e4),s&&typeof s=="function"&&s(m),a.options.errorCallback(m)}function p(m){var y=a.options.imageTexts.sizeUnits.split(",");return m.replace("#image_name#",o.name).replace("#image_size#",fo(o.size,y)).replace("#image_max_size#",fo(a.options.imageMaxSize,y))}if(o.size>this.options.imageMaxSize){f(p(this.options.errorMessages.fileTooLarge));return}var c=new FormData;c.append("image",o),a.options.imageCSRFToken&&!a.options.imageCSRFHeader&&c.append(a.options.imageCSRFName,a.options.imageCSRFToken);var d=new XMLHttpRequest;d.upload.onprogress=function(m){if(m.lengthComputable){var y=""+Math.round(m.loaded*100/m.total);a.updateStatusBar("upload-image",a.options.imageTexts.sbProgress.replace("#file_name#",o.name).replace("#progress#",y))}},d.open("POST",this.options.imageUploadEndpoint),a.options.imageCSRFToken&&a.options.imageCSRFHeader&&d.setRequestHeader(a.options.imageCSRFName,a.options.imageCSRFToken),d.onload=function(){try{var m=JSON.parse(this.responseText)}catch{console.error("EasyMDE: The server did not return a valid json."),f(p(a.options.errorMessages.importError));return}this.status===200&&m&&!m.error&&m.data&&m.data.filePath?l((a.options.imagePathAbsolute?"":window.location.origin+"/")+m.data.filePath):m.error&&m.error in a.options.errorMessages?f(p(a.options.errorMessages[m.error])):m.error?f(p(m.error)):(console.error("EasyMDE: Received an unexpected response after uploading the image."+this.status+" ("+this.statusText+")"),f(p(a.options.errorMessages.importError)))},d.onerror=function(m){console.error("EasyMDE: An unexpected error occurred when trying to upload the image."+m.target.status+" ("+m.target.statusText+")"),f(a.options.errorMessages.importError)},d.send(c)};re.prototype.uploadImageUsingCustomFunction=function(o,l){var s=this;function a(c){$f(s,c)}function f(c){var d=p(c);s.updateStatusBar("upload-image",d),setTimeout(function(){s.updateStatusBar("upload-image",s.options.imageTexts.sbInit)},1e4),s.options.errorCallback(d)}function p(c){var d=s.options.imageTexts.sizeUnits.split(",");return c.replace("#image_name#",l.name).replace("#image_size#",fo(l.size,d)).replace("#image_max_size#",fo(s.options.imageMaxSize,d))}o.apply(this,[l,a,f])};re.prototype.setPreviewMaxHeight=function(){var o=this.codemirror,l=o.getWrapperElement(),s=l.nextSibling,a=parseInt(window.getComputedStyle(l).paddingTop),f=parseInt(window.getComputedStyle(l).borderTopWidth),p=parseInt(this.options.maxHeight),c=p+a*2+f*2,d=c.toString()+"px";s.style.height=d};re.prototype.createSideBySide=function(){var o=this.codemirror,l=o.getWrapperElement(),s=l.nextSibling;if(!s||!s.classList.contains("editor-preview-side")){if(s=document.createElement("div"),s.className="editor-preview-side",this.options.previewClass)if(Array.isArray(this.options.previewClass))for(var a=0;a"&&(l=l.substring(1)),o)try{if(o.matches)return o.matches(l);if(o.msMatchesSelector)return o.msMatchesSelector(l);if(o.webkitMatchesSelector)return o.webkitMatchesSelector(l)}catch{return!1}return!1}}function gc(o){return o.host&&o!==document&&o.host.nodeType&&o.host!==o?o.host:o.parentNode}function Gt(o,l,s,a){if(o){s=s||document;do{if(l!=null&&(l[0]===">"?o.parentNode===s&&Wo(o,l):Wo(o,l))||a&&o===s)return o;if(o===s)break}while(o=gc(o))}return null}var ac=/\s+/g;function Bt(o,l,s){if(o&&l)if(o.classList)o.classList[s?"add":"remove"](l);else{var a=(" "+o.className+" ").replace(ac," ").replace(" "+l+" "," ");o.className=(a+(s?" "+l:"")).replace(ac," ")}}function de(o,l,s){var a=o&&o.style;if(a){if(s===void 0)return document.defaultView&&document.defaultView.getComputedStyle?s=document.defaultView.getComputedStyle(o,""):o.currentStyle&&(s=o.currentStyle),l===void 0?s:s[l];!(l in a)&&l.indexOf("webkit")===-1&&(l="-webkit-"+l),a[l]=s+(typeof s=="string"?"":"px")}}function An(o,l){var s="";if(typeof o=="string")s=o;else do{var a=de(o,"transform");a&&a!=="none"&&(s=a+" "+s)}while(!l&&(o=o.parentNode));var f=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return f&&new f(s)}function vc(o,l,s){if(o){var a=o.getElementsByTagName(l),f=0,p=a.length;if(s)for(;f=p:c=f<=p,!c)return a;if(a===Vt())break;a=Tr(a,!1)}return!1}function Fn(o,l,s,a){for(var f=0,p=0,c=o.children;p2&&arguments[2]!==void 0?arguments[2]:{},f=a.evt,p=Rp(a,$p);xi.pluginEvent.bind(he)(l,s,er({dragEl:$,parentEl:Ue,ghostEl:be,rootEl:ze,nextEl:Yr,lastDownEl:Po,cloneEl:We,cloneHidden:Fr,dragStarted:ci,putSortable:ut,activeSortable:he.active,originalEvent:f,oldIndex:En,oldDraggableIndex:vi,newIndex:Nt,newDraggableIndex:Ar,hideGhostForTarget:kc,unhideGhostForTarget:Sc,cloneNowHidden:function(){Fr=!0},cloneNowShown:function(){Fr=!1},dispatchSortableEvent:function(d){Ct({sortable:s,name:d,originalEvent:f})}},p))};function Ct(o){Jp(er({putSortable:ut,cloneEl:We,targetEl:$,rootEl:ze,oldIndex:En,oldDraggableIndex:vi,newIndex:Nt,newDraggableIndex:Ar},o))}var $,Ue,be,ze,Yr,Po,We,Fr,En,Nt,vi,Ar,Bo,ut,Sn=!1,qo=!1,Uo=[],Xr,jt,wl,Cl,uc,fc,ci,kn,mi,bi=!1,No=!1,zo,pt,kl=[],Ll=!1,jo=[],Xo=typeof document<"u",Oo=Nl,cc=yi||cr?"cssFloat":"float",Vp=Xo&&!hc&&!Nl&&"draggable"in document.createElement("div"),Dc=function(){if(Xo){if(cr)return!1;var o=document.createElement("x");return o.style.cssText="pointer-events:auto",o.style.pointerEvents==="auto"}}(),wc=function(l,s){var a=de(l),f=parseInt(a.width)-parseInt(a.paddingLeft)-parseInt(a.paddingRight)-parseInt(a.borderLeftWidth)-parseInt(a.borderRightWidth),p=Fn(l,0,s),c=Fn(l,1,s),d=p&&de(p),m=c&&de(c),y=d&&parseInt(d.marginLeft)+parseInt(d.marginRight)+$e(p).width,x=m&&parseInt(m.marginLeft)+parseInt(m.marginRight)+$e(c).width;if(a.display==="flex")return a.flexDirection==="column"||a.flexDirection==="column-reverse"?"vertical":"horizontal";if(a.display==="grid")return a.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(p&&d.float&&d.float!=="none"){var C=d.float==="left"?"left":"right";return c&&(m.clear==="both"||m.clear===C)?"vertical":"horizontal"}return p&&(d.display==="block"||d.display==="flex"||d.display==="table"||d.display==="grid"||y>=f&&a[cc]==="none"||c&&a[cc]==="none"&&y+x>f)?"vertical":"horizontal"},eg=function(l,s,a){var f=a?l.left:l.top,p=a?l.right:l.bottom,c=a?l.width:l.height,d=a?s.left:s.top,m=a?s.right:s.bottom,y=a?s.width:s.height;return f===d||p===m||f+c/2===d+y/2},tg=function(l,s){var a;return Uo.some(function(f){var p=f[Ft].options.emptyInsertThreshold;if(!(!p||Ol(f))){var c=$e(f),d=l>=c.left-p&&l<=c.right+p,m=s>=c.top-p&&s<=c.bottom+p;if(d&&m)return a=f}}),a},Cc=function(l){function s(p,c){return function(d,m,y,x){var C=d.options.group.name&&m.options.group.name&&d.options.group.name===m.options.group.name;if(p==null&&(c||C))return!0;if(p==null||p===!1)return!1;if(c&&p==="clone")return p;if(typeof p=="function")return s(p(d,m,y,x),c)(d,m,y,x);var S=(c?d:m).options.group.name;return p===!0||typeof p=="string"&&p===S||p.join&&p.indexOf(S)>-1}}var a={},f=l.group;(!f||Tl(f)!="object")&&(f={name:f}),a.name=f.name,a.checkPull=s(f.pull,!0),a.checkPut=s(f.put),a.revertClone=f.revertClone,l.group=a},kc=function(){!Dc&&be&&de(be,"display","none")},Sc=function(){!Dc&&be&&de(be,"display","")};Xo&&!hc&&document.addEventListener("click",function(o){if(qo)return o.preventDefault(),o.stopPropagation&&o.stopPropagation(),o.stopImmediatePropagation&&o.stopImmediatePropagation(),qo=!1,!1},!0);var Kr=function(l){if($){l=l.touches?l.touches[0]:l;var s=tg(l.clientX,l.clientY);if(s){var a={};for(var f in l)l.hasOwnProperty(f)&&(a[f]=l[f]);a.target=a.rootEl=s,a.preventDefault=void 0,a.stopPropagation=void 0,s[Ft]._onDragOver(a)}}},rg=function(l){$&&$.parentNode[Ft]._isOutsideThisEl(l.target)};function he(o,l){if(!(o&&o.nodeType&&o.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(o));this.el=o,this.options=l=fr({},l),o[Ft]=this;var s={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(o.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return wc(o,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(c,d){c.setData("Text",d.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:he.supportPointer!==!1&&"PointerEvent"in window&&(!pi||Nl),emptyInsertThreshold:5};xi.initializePlugins(this,o,s);for(var a in s)!(a in l)&&(l[a]=s[a]);Cc(l);for(var f in this)f.charAt(0)==="_"&&typeof this[f]=="function"&&(this[f]=this[f].bind(this));this.nativeDraggable=l.forceFallback?!1:Vp,this.nativeDraggable&&(this.options.touchStartThreshold=1),l.supportPointer?Se(o,"pointerdown",this._onTapStart):(Se(o,"mousedown",this._onTapStart),Se(o,"touchstart",this._onTapStart)),this.nativeDraggable&&(Se(o,"dragover",this),Se(o,"dragenter",this)),Uo.push(this.el),l.store&&l.store.get&&this.sort(l.store.get(this)||[]),fr(this,Yp())}he.prototype={constructor:he,_isOutsideThisEl:function(l){!this.el.contains(l)&&l!==this.el&&(kn=null)},_getDirection:function(l,s){return typeof this.options.direction=="function"?this.options.direction.call(this,l,s,$):this.options.direction},_onTapStart:function(l){if(l.cancelable){var s=this,a=this.el,f=this.options,p=f.preventOnFilter,c=l.type,d=l.touches&&l.touches[0]||l.pointerType&&l.pointerType==="touch"&&l,m=(d||l).target,y=l.target.shadowRoot&&(l.path&&l.path[0]||l.composedPath&&l.composedPath()[0])||m,x=f.filter;if(fg(a),!$&&!(/mousedown|pointerdown/.test(c)&&l.button!==0||f.disabled)&&!y.isContentEditable&&!(!this.nativeDraggable&&pi&&m&&m.tagName.toUpperCase()==="SELECT")&&(m=Gt(m,f.draggable,a,!1),!(m&&m.animated)&&Po!==m)){if(En=Pt(m),vi=Pt(m,f.draggable),typeof x=="function"){if(x.call(this,l,m,this)){Ct({sortable:s,rootEl:y,name:"filter",targetEl:m,toEl:a,fromEl:a}),At("filter",s,{evt:l}),p&&l.preventDefault();return}}else if(x&&(x=x.split(",").some(function(C){if(C=Gt(y,C.trim(),a,!1),C)return Ct({sortable:s,rootEl:C,name:"filter",targetEl:m,fromEl:a,toEl:a}),At("filter",s,{evt:l}),!0}),x)){p&&l.preventDefault();return}f.handle&&!Gt(y,f.handle,a,!1)||this._prepareDragStart(l,d,m)}}},_prepareDragStart:function(l,s,a){var f=this,p=f.el,c=f.options,d=p.ownerDocument,m;if(a&&!$&&a.parentNode===p){var y=$e(a);if(ze=p,$=a,Ue=$.parentNode,Yr=$.nextSibling,Po=a,Bo=c.group,he.dragged=$,Xr={target:$,clientX:(s||l).clientX,clientY:(s||l).clientY},uc=Xr.clientX-y.left,fc=Xr.clientY-y.top,this._lastX=(s||l).clientX,this._lastY=(s||l).clientY,$.style["will-change"]="all",m=function(){if(At("delayEnded",f,{evt:l}),he.eventCanceled){f._onDrop();return}f._disableDelayedDragEvents(),!oc&&f.nativeDraggable&&($.draggable=!0),f._triggerDragStart(l,s),Ct({sortable:f,name:"choose",originalEvent:l}),Bt($,c.chosenClass,!0)},c.ignore.split(",").forEach(function(x){vc($,x.trim(),Sl)}),Se(d,"dragover",Kr),Se(d,"mousemove",Kr),Se(d,"touchmove",Kr),c.supportPointer?(Se(d,"pointerup",f._onDrop),!this.nativeDraggable&&Se(d,"pointercancel",f._onDrop)):(Se(d,"mouseup",f._onDrop),Se(d,"touchend",f._onDrop),Se(d,"touchcancel",f._onDrop)),oc&&this.nativeDraggable&&(this.options.touchStartThreshold=4,$.draggable=!0),At("delayStart",this,{evt:l}),c.delay&&(!c.delayOnTouchOnly||s)&&(!this.nativeDraggable||!(yi||cr))){if(he.eventCanceled){this._onDrop();return}c.supportPointer?(Se(d,"pointerup",f._disableDelayedDrag),Se(d,"pointercancel",f._disableDelayedDrag)):(Se(d,"mouseup",f._disableDelayedDrag),Se(d,"touchend",f._disableDelayedDrag),Se(d,"touchcancel",f._disableDelayedDrag)),Se(d,"mousemove",f._delayedDragTouchMoveHandler),Se(d,"touchmove",f._delayedDragTouchMoveHandler),c.supportPointer&&Se(d,"pointermove",f._delayedDragTouchMoveHandler),f._dragStartTimer=setTimeout(m,c.delay)}else m()}},_delayedDragTouchMoveHandler:function(l){var s=l.touches?l.touches[0]:l;Math.max(Math.abs(s.clientX-this._lastX),Math.abs(s.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){$&&Sl($),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var l=this.el.ownerDocument;ke(l,"mouseup",this._disableDelayedDrag),ke(l,"touchend",this._disableDelayedDrag),ke(l,"touchcancel",this._disableDelayedDrag),ke(l,"pointerup",this._disableDelayedDrag),ke(l,"pointercancel",this._disableDelayedDrag),ke(l,"mousemove",this._delayedDragTouchMoveHandler),ke(l,"touchmove",this._delayedDragTouchMoveHandler),ke(l,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(l,s){s=s||l.pointerType=="touch"&&l,!this.nativeDraggable||s?this.options.supportPointer?Se(document,"pointermove",this._onTouchMove):s?Se(document,"touchmove",this._onTouchMove):Se(document,"mousemove",this._onTouchMove):(Se($,"dragend",this),Se(ze,"dragstart",this._onDragStart));try{document.selection?Ho(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(l,s){if(Sn=!1,ze&&$){At("dragStarted",this,{evt:s}),this.nativeDraggable&&Se(document,"dragover",rg);var a=this.options;!l&&Bt($,a.dragClass,!1),Bt($,a.ghostClass,!0),he.active=this,l&&this._appendGhost(),Ct({sortable:this,name:"start",originalEvent:s})}else this._nulling()},_emulateDragOver:function(){if(jt){this._lastX=jt.clientX,this._lastY=jt.clientY,kc();for(var l=document.elementFromPoint(jt.clientX,jt.clientY),s=l;l&&l.shadowRoot&&(l=l.shadowRoot.elementFromPoint(jt.clientX,jt.clientY),l!==s);)s=l;if($.parentNode[Ft]._isOutsideThisEl(l),s)do{if(s[Ft]){var a=void 0;if(a=s[Ft]._onDragOver({clientX:jt.clientX,clientY:jt.clientY,target:l,rootEl:s}),a&&!this.options.dragoverBubble)break}l=s}while(s=gc(s));Sc()}},_onTouchMove:function(l){if(Xr){var s=this.options,a=s.fallbackTolerance,f=s.fallbackOffset,p=l.touches?l.touches[0]:l,c=be&&An(be,!0),d=be&&c&&c.a,m=be&&c&&c.d,y=Oo&&pt&&sc(pt),x=(p.clientX-Xr.clientX+f.x)/(d||1)+(y?y[0]-kl[0]:0)/(d||1),C=(p.clientY-Xr.clientY+f.y)/(m||1)+(y?y[1]-kl[1]:0)/(m||1);if(!he.active&&!Sn){if(a&&Math.max(Math.abs(p.clientX-this._lastX),Math.abs(p.clientY-this._lastY))=0&&(Ct({rootEl:Ue,name:"add",toEl:Ue,fromEl:ze,originalEvent:l}),Ct({sortable:this,name:"remove",toEl:Ue,originalEvent:l}),Ct({rootEl:Ue,name:"sort",toEl:Ue,fromEl:ze,originalEvent:l}),Ct({sortable:this,name:"sort",toEl:Ue,originalEvent:l})),ut&&ut.save()):Nt!==En&&Nt>=0&&(Ct({sortable:this,name:"update",toEl:Ue,originalEvent:l}),Ct({sortable:this,name:"sort",toEl:Ue,originalEvent:l})),he.active&&((Nt==null||Nt===-1)&&(Nt=En,Ar=vi),Ct({sortable:this,name:"end",toEl:Ue,originalEvent:l}),this.save()))),this._nulling()},_nulling:function(){At("nulling",this),ze=$=Ue=be=Yr=We=Po=Fr=Xr=jt=ci=Nt=Ar=En=vi=kn=mi=ut=Bo=he.dragged=he.ghost=he.clone=he.active=null;var l=this.el;jo.forEach(function(s){l.contains(s)&&(s.checked=!0)}),jo.length=wl=Cl=0},handleEvent:function(l){switch(l.type){case"drop":case"dragend":this._onDrop(l);break;case"dragenter":case"dragover":$&&(this._onDragOver(l),ng(l));break;case"selectstart":l.preventDefault();break}},toArray:function(){for(var l=[],s,a=this.el.children,f=0,p=a.length,c=this.options;ff.right+p||o.clientY>a.bottom&&o.clientX>a.left:o.clientY>f.bottom+p||o.clientX>a.right&&o.clientY>a.top}function lg(o,l,s,a,f,p,c,d){var m=a?o.clientY:o.clientX,y=a?s.height:s.width,x=a?s.top:s.left,C=a?s.bottom:s.right,S=!1;if(!c){if(d&&zox+y*p/2:mC-zo)return-mi}else if(m>x+y*(1-f)/2&&mC-y*p/2)?m>x+y/2?1:-1:0}function sg(o){return Pt($)0||C>0&&S0?"Converting "+l+" photo"+(l>1?"s":"")+"\u2026":"Uploading "+C+" photo"+(C>1?"s":"")+"\u2026",s.details.open=!0):C>0?(s.summary.textContent="\u2713 "+C+" photo"+(C>1?"s":"")+" ready \u2014 tap to review",s.details.open=!1):(s.summary.textContent="Photos (1\u20136)",s.details.open=!0)}}function c(){p(),setTimeout(p,150),setTimeout(p,500)}function d(){var x=o.querySelector('button[type="submit"], input[type="submit"]');if(x&&(x.disabled=l>0),l>0)f("Converting "+l+" photo"+(l>1?"s":"")+"\u2026");else{var C=Fc();C&&/Converting/.test(C.textContent)&&f("")}p()}o.addEventListener("submit",function(x){l>0&&(x.preventDefault(),f("Hang on \u2014 a photo is still converting.","err"))},!0);function m(x){return function(C){var S=C&&C.file;return S?Nc(S).then(function(F){return F?(l++,d(),import("./heic-to-CN7JBE7H.js").then(function(_){var L=_.heicTo||_.default&&_.default.heicTo;return L({blob:S,type:"image/jpeg",quality:.85})}).then(function(_){var L=new File([_],pg(S.name),{type:"image/jpeg"});x.addFile(L)}).catch(function(){f("A photo couldn\u2019t be converted and was skipped \u2014 the others are fine.","err")}).then(function(){l--,d()}),!1):!0}):!0}}var y=0;(function x(){var C=window.GravFilePond&&window.GravFilePond.getInstances?window.GravFilePond.getInstances():[];if(!C.length){y++<120&&setTimeout(x,50);return}C.forEach(function(S){S&&!S._heicHooked&&(S._heicHooked=!0,S.setOptions({beforeAddFile:m(S),allowReorder:!0,itemInsertLocation:"after"}),a=S,["addfile","processfile","processfiles","removefile","error"].forEach(function(F){try{S.on(F,c)}catch{}}),p())})})()}function Ot(o){return document.querySelector('[name="data['+o+']"]')}function mg(){var o=Array.prototype.slice.call(document.querySelectorAll(".advanced-field"));if(o.length){var l=[];if(o.forEach(function(p){var c=p.closest(".form-field");c&&l.indexOf(c)===-1&&l.push(c)}),!!l.length){var s=document.createElement("details");s.className="more-options";var a=document.createElement("summary");a.className="more-options__summary",a.textContent="More options",s.appendChild(a),l[0].parentNode.insertBefore(s,l[0]),l.forEach(function(p){s.appendChild(p)});var f=l.some(function(p){var c=p.querySelector('input[type="text"]');if(c&&c.value.trim())return!0;var d=p.querySelector('input[type="radio"]:checked');if(!d||!d.value)return!1;var m=p.querySelector('input[type="radio"][checked]');return m?d.value!==m.value:d.value!=="0"});f&&(s.open=!0)}}}var bg={0:"Sunny",1:"Partly cloudy",2:"Partly cloudy",3:"Cloudy",45:"Foggy",48:"Foggy",51:"Drizzle",53:"Drizzle",55:"Drizzle",56:"Drizzle",57:"Drizzle",61:"Rain",63:"Rain",65:"Rain",66:"Rain",67:"Rain",80:"Rain",81:"Rain",82:"Rain",71:"Snow",73:"Snow",75:"Snow",77:"Snow",85:"Snow",86:"Snow",95:"Thunderstorm",96:"Thunderstorm",99:"Thunderstorm"};function dr(o,l,s){o&&(o.className="form-status"+(s?" form-status--"+s:""),o.textContent=l||"")}function yg(){var o=document.getElementById("get-location"),l=document.getElementById("get-weather");if(!o&&!l)return;var s=document.getElementById("location-status"),a=document.getElementById("weather-status");function f(){var d=Ot("lat"),m=Ot("lng"),y=d?d.value.trim():"",x=m?m.value.trim():"";return y&&x?{lat:y,lng:x}:null}function p(){if(l){var d=!!f();l.disabled=!d,l.title=d?"":"Get location first"}}p();function c(d,m){var y=Ot("location_city"),x=Ot("location_country");if(!((!y||y.value.trim())&&(!x||x.value.trim()))){var C="https://api.bigdatacloud.net/data/reverse-geocode-client?latitude="+encodeURIComponent(d)+"&longitude="+encodeURIComponent(m)+"&localityLanguage=en";fetch(C).then(function(S){return S.json()}).then(function(S){var F=(S.city||S.locality||"").trim(),_=(S.countryName||"").trim();y&&!y.value.trim()&&F&&(y.value=F),x&&!x.value.trim()&&_&&(x.value=_);var L=[F,_].filter(Boolean).join(", ");L&&dr(s,"\u2713 Location captured \xB7 "+L,"ok")}).catch(function(){})}}o&&o.addEventListener("click",function(){if(!navigator.geolocation){dr(s,"Geolocation is not supported on this device.","err");return}o.classList.add("is-loading"),o.disabled=!0,dr(s,"Getting location\u2026"),navigator.geolocation.getCurrentPosition(function(d){var m=d.coords.latitude.toFixed(6),y=d.coords.longitude.toFixed(6),x=Ot("lat"),C=Ot("lng");x&&(x.value=m),C&&(C.value=y),o.classList.remove("is-loading"),o.disabled=!1,dr(s,"\u2713 Location captured \xB7 "+m+", "+y,"ok"),p(),c(m,y)},function(d){o.classList.remove("is-loading"),o.disabled=!1,dr(s,"\u2717 "+(d&&d.message?d.message:"Could not get location")+" \u2014 enter coordinates manually if needed.","err")},{enableHighAccuracy:!0,timeout:15e3})}),l&&l.addEventListener("click",function(){var d=f();if(!d){dr(a,"Get location first, then fetch weather.","err");return}l.classList.add("is-loading"),l.disabled=!0,dr(a,"Fetching weather\u2026");var m="https://api.open-meteo.com/v1/forecast?latitude="+d.lat+"&longitude="+d.lng+"¤t=temperature_2m,weather_code&temperature_unit=celsius";fetch(m).then(function(y){return y.json()}).then(function(y){var x=Math.round(y.current.temperature_2m),C=bg[y.current.weather_code]||"Cloudy",S=Ot("weather_temp_c"),F=Ot("weather_desc");S&&(S.value=x),F&&(F.value=C),l.classList.remove("is-loading"),p(),dr(a,"\u2713 Weather set \xB7 "+C+" \xB7 "+x+"\xB0C (edit above if needed)","ok")}).catch(function(){l.classList.remove("is-loading"),p(),dr(a,"\u2717 Could not fetch weather \u2014 set it manually above.","err")})})}function xg(){var o=new Date;return o.setSeconds(0,0),o.setMinutes(o.getMinutes()-o.getTimezoneOffset()),o.toISOString().slice(0,16)}function Dg(){var o={title:"Title",date:"Date & time",content:"Content"},l=document.querySelector('form[name="new-entry"]');if(!l)return;var s=Ot("date");s&&!String(s.value).trim()&&(s.value=xg());function a(){l.querySelectorAll(".field-error").forEach(function(c){c.remove()}),l.querySelectorAll(".field-invalid").forEach(function(c){c.classList.remove("field-invalid")})}function f(c,d){c.classList.add("field-invalid");var m=document.createElement("span");m.className="field-error",m.textContent=d,c.parentNode.insertBefore(m,c.nextSibling)}function p(c){var d=l.querySelector(".photos-collapse"),m,y;if(d?(d.open=!0,y=d.querySelector(".photos-collapse__summary"),m=d):(m=document.querySelector(".filepond-root, .form-input-file"),y=m),!y)return m||null;var x=document.createElement("span");return x.className="field-error",x.textContent=c,y.insertAdjacentElement("afterend",x),m||y}l.addEventListener("submit",function(c){a();var d=null;!Ko&&document.querySelectorAll(".filepond--item").length<1&&(d=p("Add at least one photo.")),Object.keys(o).forEach(function(m){var y=Ot(m);y&&!String(y.value).trim()&&(f(y,o[m]+" is required."),d||(d=y))}),d&&(c.preventDefault(),typeof d.focus=="function"&&d.focus(),d.scrollIntoView({behavior:"smooth",block:"center"}))})}var Hl="intotheeast:new-entry-draft";function wg(o){return Array.prototype.slice.call(o.querySelectorAll('[name^="data["]')).filter(function(l){if(l.type==="file")return!1;var s=l.name;return s.indexOf("data[_json")!==0&&s.indexOf("data[photos")!==0})}function Cg(){var o=document.querySelector(".filepond-root, .form-input-file");if(!(!o||!o.parentNode)&&!o.parentNode.querySelector(".photo-reauth-hint")){var l=document.createElement("p");l.className="photo-reauth-hint is-shown",l.textContent="Your text was restored \u2014 photos need re-selecting (they can\u2019t be saved in a draft).",o.parentNode.insertBefore(l,o.nextSibling)}}function kg(){var o=document.querySelector('form[name="new-entry"]');if(!o||Ko)return;if(document.querySelector(".notices.success")){try{localStorage.removeItem(Hl)}catch{}return}function l(){var p={};wg(o).forEach(function(c){c.type==="radio"?c.checked&&(p[c.name]=c.value):p[c.name]=c.value});try{localStorage.setItem(Hl,JSON.stringify(p))}catch{}}var s=null;try{s=localStorage.getItem(Hl)}catch{s=null}if(s){var a=null;try{a=JSON.parse(s)}catch{a=null}if(a){var f=!1;Object.keys(a).forEach(function(p){var c=a[p];if(c!=null&&String(c).trim()&&(f=!0),p!=="data[content]"){var d=o.querySelectorAll('input[type="radio"][name="'+p+'"]');if(d.length){d.forEach(function(y){y.checked=y.value===c});return}var m=o.querySelector('[name="'+p+'"]');m&&m.type!=="file"&&(m.value=c)}}),window.postFormEditor&&a["data[content]"]!=null&&window.postFormEditor.value(a["data[content]"]),f&&Cg()}}o.addEventListener("input",l),o.addEventListener("change",l),window.postFormEditor&&window.postFormEditor.codemirror.on("change",l)}function Sg(){var o=document.querySelector(".post-form-wrap"),l=document.querySelector(".post-form-wrap .notices.success, .post-form-wrap .notices.green");if(!(!o||!l)){var s=document.createElement("div");s.className="post-success";var a=document.createElement("p");a.className="post-success__title",a.textContent="\u2713 Saved to your journal.",s.appendChild(a);var f=document.createElement("div");f.className="post-success__actions";var p=o.getAttribute("data-trip-url");if(p){var c=document.createElement("a");c.className="post-success__view",c.href=p,c.textContent="View your journal \u2192",f.appendChild(c)}var d=document.createElement("a");d.className="post-success__again",d.href=window.location.pathname,d.textContent="Post another",f.appendChild(d),s.appendChild(f),l.parentNode.insertBefore(s,l.nextSibling),["form",".form-action-row","#location-status","#weather-status"].forEach(function(m){var y=o.querySelector(m);y&&(y.style.display="none")}),l.scrollIntoView({behavior:"smooth",block:"start"})}}var Ko=!1;function Tc(o){return new URLSearchParams(window.location.search).get(o)}function hr(o,l){var s=Ot(o);s&&(s.value=l==null?"":String(l))}function Rl(o,l){var s=l?"1":"0",a=document.querySelectorAll('[name="data['+o+']"]');Array.prototype.forEach.call(a,function(f){f.checked=String(f.value)===s})}function Eg(o){var l=o==null?"":String(o);if(window.postFormEditor&&typeof window.postFormEditor.value=="function")window.postFormEditor.value(l);else{var s=Ot("content");s&&(s.value=l)}}function Lc(o,l){var s=o.querySelectorAll("input, textarea, select, button");Array.prototype.forEach.call(s,function(a){a.type==="file"||a.name&&a.name.indexOf("data[photos")===0||(a.disabled=l)}),window.postFormEditor&&window.postFormEditor.codemirror&&window.postFormEditor.codemirror.setOption("readOnly",l?"nocursor":!1)}function Wl(o,l){o&&(o.tagName==="INPUT"?o.value=l:o.textContent=l)}function Ag(o,l){var s=o.querySelector(".post-edit-error");if(s){s.textContent=l;return}var a=document.createElement("div");a.className="post-edit-error",a.setAttribute("role","alert"),a.textContent=l;var f=o.querySelector("h1");f?f.insertAdjacentElement("afterend",a):o.insertBefore(a,o.firstChild)}var Fg=/\.(jpe?g|png|webp|heic|heif|gif)$/i;function Mc(o){var l=/(?:^|\/)photo-0*(\d+)\./i.exec(o);return l?parseInt(l[1],10):Number.MAX_SAFE_INTEGER}function Tg(o,l){var s=Mc(o),a=Mc(l);return s!==a?s-a:ol?1:0}function _c(o,l){var s=String(o||"photo"),a=s.lastIndexOf("."),f=(a>0?s.slice(0,a):s).toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"photo",p=l?".jpg":a>0?s.slice(a).toLowerCase():".jpg",c=Date.now().toString(36)+Math.random().toString(36).slice(2,6);return f+"-"+c+p}function Lg(o){var l=document.querySelector('form[name="new-entry"]');if(!l||!o)return;var s=o.split("/").filter(Boolean).pop();if(!s)return;var a=document.querySelector(".filepond-root, .form-input-file"),f=a?a.closest(".form-field"):null;f&&(f.style.display="none");var p=l.querySelector(".photos-collapse");p&&(p.style.display="none");var c=document.createElement("div");c.className="photo-editor",c.innerHTML='
    Photos

    ',f&&f.parentNode?f.parentNode.insertBefore(c,f):l.insertBefore(c,l.firstElementChild);var d=c.querySelector(".photo-editor__grid"),m=c.querySelector(".photo-editor__status"),y=c.querySelector(".photo-editor__add"),x=c.querySelector(".photo-editor__input"),C=[],S=null,F=!1,_=0;function L(j,ee){m.textContent=j||"",m.className="photo-editor__status gpx-status"+(ee?" error":"")}function T(j){F=j,y.disabled=j,Array.prototype.forEach.call(d.querySelectorAll(".photo-editor__del, .photo-editor__confirm-yes, .photo-editor__confirm-no"),function(ee){ee.disabled=j}),S&&S.option("disabled",j)}function O(){return fetch("/api/v1/pages"+o+"/media",{credentials:"include",headers:{Accept:"application/json"}}).then(function(j){if(!j.ok)throw new Error("HTTP "+j.status);return j.json()}).then(function(j){return(j&&j.data||[]).filter(function(ee){return ee&&typeof ee.filename=="string"&&Fg.test(ee.filename)}).map(function(ee){return ee.filename}).sort(Tg)})}function N(j){return Di("/api/v1/entry/"+encodeURIComponent(s)+"/photos/order",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({order:j})})}function I(j){if(C=(j||[]).slice(),S&&(S.destroy(),S=null),d.innerHTML="",!C.length){d.innerHTML='

    No photos yet \u2014 add some.

    ';return}var ee=++_;C.forEach(function(E){var H=document.createElement("div");H.className="photo-editor__cell",H.setAttribute("data-filename",E);var W=document.createElement("img");W.className="photo-editor__img",W.loading="lazy",W.alt=E,W.src=o+"/"+encodeURIComponent(E)+"?v="+ee;var Z=document.createElement("button");Z.type="button",Z.className="photo-editor__del",Z.setAttribute("aria-label","Delete "+E),Z.textContent="\u2715",Z.addEventListener("click",function(){K(H,E)}),H.appendChild(W),H.appendChild(Z),d.appendChild(H)}),C.length>1&&(S=new Ac(d,{animation:150,draggable:".photo-editor__cell",filter:".photo-editor__confirm",onEnd:G}))}function P(){return Array.prototype.map.call(d.querySelectorAll(".photo-editor__cell"),function(j){return j.getAttribute("data-filename")})}function q(j,ee){if(j.length!==ee.length)return!1;for(var E=0;EDelete?',j.appendChild(E),j.classList.add("is-confirming"),E.querySelector(".photo-editor__confirm-no").addEventListener("click",function(){j.classList.remove("is-confirming"),E.remove()}),E.querySelector(".photo-editor__confirm-yes").addEventListener("click",function(){E.querySelector(".photo-editor__confirm-yes").disabled=!0,E.querySelector(".photo-editor__confirm-no").disabled=!0,me(ee)})}}function me(j){var ee=C.slice(),E=C.filter(function(H){return H!==j});T(!0),L("Deleting\u2026"),Di("/api/v1/pages"+o+"/media/"+encodeURIComponent(j),{method:"DELETE"},[204,404]).then(function(){return(E.length?N(E):Promise.resolve()).then(O).then(function(H){L(""),I(H)},function(){L("Photo deleted, but refreshing the list failed \u2014 reload if it looks off.",!0),I(E)})},function(H){L(zl(H,"Couldn\u2019t delete that photo. Try again."),!0),I(ee)}).then(function(){T(!1)})}function U(j){return Nc(j).then(function(ee){return ee?import("./heic-to-CN7JBE7H.js").then(function(E){var H=E.heicTo||E.default&&E.default.heicTo;return H({blob:j,type:"image/jpeg",quality:.85})}).then(function(E){return{blob:E,name:_c(j.name,!0)}}):{blob:j,name:_c(j.name,!1)}})}y.addEventListener("click",function(){F||x.click()}),x.addEventListener("change",function(){var j=Array.prototype.slice.call(x.files||[]);x.value="",j.length&&le(j)});function le(j){T(!0);var ee=j.length,E=0,H=0,W=!1,Z=C.slice(),ve=Promise.resolve();j.forEach(function(De){ve=ve.then(function(){return E++,L("Uploading "+E+" of "+ee+"\u2026"),U(De).then(function(Le){var A=new FormData;return A.append("file",Le.blob,Le.name),Di("/api/v1/pages"+o+"/media",{method:"POST",body:A})}).then(null,function(Le){H++,Le&&(Le.status===401||Le.status===403)&&(W=!0)})})}),ve.then(function(){return L("Finishing\u2026"),O()}).then(function(De){var Le=Z.filter(function(te){return De.indexOf(te)!==-1}),A=De.filter(function(te){return Z.indexOf(te)===-1}),D=Le.concat(A);return D.length?N(D).catch(function(){return N(D)}).catch(function(){return Promise.all(A.map(function(te){return Di("/api/v1/pages"+o+"/media/"+encodeURIComponent(te),{method:"DELETE"},[204,404]).then(function(){return!0},function(){return!1})})).then(function(te){var we=new Error("reorder failed");throw we.rolledBack=!0,we.rollbackIncomplete=te.indexOf(!1)!==-1,we})}).then(O):(I([]),null)}).then(function(De){De&&I(De),H?L(W?"Couldn\u2019t add photos \u2014 your login session expired. Sign in again, then retry.":H+" photo"+(H>1?"s":"")+" couldn\u2019t be added.",!0):L("")}).catch(function(De){var Le;return De&&De.rolledBack?Le=De.rollbackIncomplete?"Couldn\u2019t finish adding photos and cleanup was incomplete \u2014 reload the page and check your photos.":"Couldn\u2019t finish adding photos \u2014 changes were rolled back. Try again.":Le="Couldn\u2019t add photos. Please try again.",L(Le,!0),O().then(I,function(){I(Z)})}).then(function(){T(!1)})}d.innerHTML='

    Loading photos\u2026

    ',O().then(I).catch(function(){L("Couldn\u2019t load photos.",!0),I([])})}function Mg(){var o=document.querySelector('form[name="new-entry"]'),l=document.querySelector(".post-form-wrap");if(!(!o||!l)){var s=Tc("edit");if(s){Ko=!0;var a=l.querySelector("h1");a&&(a.textContent="Edit entry");var f=o.querySelector('button[type="submit"], input[type="submit"]'),p=f?f.tagName==="INPUT"?f.value:f.textContent:"Save changes";Lc(o,!0),Wl(f,"Loading entry\u2026");var c=Tc("return")||l.getAttribute("data-trip-url")||"";o.setAttribute("action","/post?edit="+encodeURIComponent(s)+(c?"&return="+encodeURIComponent(c):"")),fetch("/api/v1/pages"+s,{credentials:"include",headers:{Accept:"application/json"}}).then(function(d){if(!d.ok){var m=new Error("HTTP "+d.status);throw m.status=d.status,m}return d.json()}).then(function(d){var m=d&&d.data||{},y=m.header||{};hr("title",y.title!=null?y.title:m.title),hr("date",y.date?String(y.date).replace(" ","T"):""),Eg(m.content),hr("lat",y.lat),hr("lng",y.lng),hr("location_city",y.location_city),hr("location_country",y.location_country),hr("weather_desc",y.weather_desc),hr("weather_temp_c",y.weather_temp_c),hr("transport_mode",y.transport_mode),Rl("featured",y.featured),Rl("force_connect",y.force_connect),Rl("published",y.published!==void 0?y.published:m.published);var x=Ot("edit_path");x&&(x.value=s+"/entry.md"),Lc(o,!1),Wl(f,"Save changes");var C=o.querySelector(".more-options");C&&(C.open=!0),Lg(s)}).catch(function(d){var m=d&&d.status===404?"This entry no longer exists \u2014 it may have been deleted. Head back to the journal.":"Sorry \u2014 this entry couldn\u2019t be loaded for editing. Check your connection and try again.";Ag(l,m),Wl(f,p)})}}}function Bc(){window.postFormEditor=dg(),Sg(),Mg(),kg(),vg(),mg(),yg(),Dg()}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",Bc):Bc(); /*! Bundled license information: sortablejs/modular/sortable.esm.js: diff --git a/themes/intotheeast/js/src/api-utils.js b/themes/intotheeast/js/src/api-utils.js new file mode 100644 index 0000000..3311400 --- /dev/null +++ b/themes/intotheeast/js/src/api-utils.js @@ -0,0 +1,45 @@ +/* + * api-utils.js — shared owner-facing API helpers. + * + * Imported by post-form.js (edit/photo mutations) and trip-publish.js (the + * publish toggle) so the "login expired" copy and the ok-status handling live + * in ONE place; esbuild inlines this module into each bundle at build time, so + * there is no runtime coupling between the two entry points. + */ + +// Mutation fetch that RESOLVES on success and REJECTS with a status-bearing +// Error otherwise, so callers can tell an expired login (401/403) apart from a +// generic failure. `okStatuses` lists extra codes to accept as success (e.g. +// 204 no-content, or 404 already-gone for an idempotent DELETE). Cookies +// auto-included. +// +// `timeoutMs` is OPTIONAL: when set, a hung request is aborted after that many +// ms so the caller's pending state can't stick forever (the abort rejects like +// any network error → generic error copy). Omit it (post-form's media uploads) +// to keep the old unbounded behaviour — a large upload must not be timed out. +export function apiSend(url, opts, okStatuses, timeoutMs) { + var controller = timeoutMs ? new AbortController() : null; + var timer = controller ? setTimeout(function () { controller.abort(); }, timeoutMs) : null; + var fetchOpts = Object.assign({ credentials: 'include' }, opts); + if (controller) fetchOpts.signal = controller.signal; + return fetch(url, fetchOpts).then(function (r) { + if (timer) clearTimeout(timer); + if (r.ok || (okStatuses && okStatuses.indexOf(r.status) !== -1)) return r; + var e = new Error('HTTP ' + r.status); + e.status = r.status; + throw e; + }, function (err) { + if (timer) clearTimeout(timer); + throw err; // abort (no .status) or network error → generic fallback copy + }); +} + +// Turn a failed apiSend/fetch into owner-facing copy. A 401/403 almost always +// means the login session lapsed — say so, because a plain "try again" wouldn't +// help until they sign back in; otherwise return the caller's fallback. +export function apiErrorMsg(err, fallback) { + var s = err && err.status; + return (s === 401 || s === 403) + ? 'Your login session expired — sign in again, then retry.' + : fallback; +} diff --git a/themes/intotheeast/js/src/post-form.js b/themes/intotheeast/js/src/post-form.js index 376112d..feaba15 100644 --- a/themes/intotheeast/js/src/post-form.js +++ b/themes/intotheeast/js/src/post-form.js @@ -11,6 +11,7 @@ import EasyMDE from 'easymde'; import Sortable from 'sortablejs'; import 'easymde/dist/easymde.min.css'; import './post-form.css'; +import { apiSend, apiErrorMsg } from './api-utils.js'; /* ── Markdown editor (EasyMDE) ───────────────────────────── */ function initEditor() { @@ -882,29 +883,7 @@ function initPhotoEditor(route) { if (sortable) sortable.option('disabled', b); } - // Mutation fetch that RESOLVES on success and REJECTS with a status-bearing - // Error otherwise, so callers can tell an expired login (401/403) apart from a - // generic failure. `okStatuses` lists extra codes to accept as success (e.g. - // 204 no-content, or 404 already-gone for an idempotent DELETE). Cookies - // auto-included. (Superseded the old boolean apiOk, which swallowed the code.) - function apiSend(url, opts, okStatuses) { - return fetch(url, Object.assign({ credentials: 'include' }, opts)).then(function (r) { - if (r.ok || (okStatuses && okStatuses.indexOf(r.status) !== -1)) return r; - var e = new Error('HTTP ' + r.status); - e.status = r.status; - throw e; - }); - } - - // Turn a failed apiSend/fetch into owner-facing copy. A 401/403 almost always - // means the login session lapsed mid-edit — say so, because a plain "try - // again" wouldn't help until they sign back in. - function editErrorMsg(err, fallback) { - var s = err && err.status; - return (s === 401 || s === 403) - ? 'Your login session expired — sign in again, then retry.' - : fallback; - } + // apiSend / apiErrorMsg now live in ./api-utils.js (shared with trip-publish.js). function mediaList() { return fetch('/api/v1/pages' + route + '/media', { credentials: 'include', headers: { Accept: 'application/json' } }) @@ -990,7 +969,7 @@ function initPhotoEditor(route) { function () { setStatus(''); render(next); } // saved; DOM already shows it ); }, function (err) { - setStatus(editErrorMsg(err, 'Couldn’t save the new order — reverted. Try again.'), true); + setStatus(apiErrorMsg(err, 'Couldn’t save the new order — reverted. Try again.'), true); render(lastGood); // revert the SortableJS move to last-known-good }).then(function () { setBusy(false); }); } @@ -1038,7 +1017,7 @@ function initPhotoEditor(route) { ); }, function (err) { // The DELETE request itself failed — nothing changed on disk. - setStatus(editErrorMsg(err, 'Couldn’t delete that photo. Try again.'), true); + setStatus(apiErrorMsg(err, 'Couldn’t delete that photo. Try again.'), true); render(lastGood); }) .then(function () { setBusy(false); }); diff --git a/themes/intotheeast/js/src/trip-publish.js b/themes/intotheeast/js/src/trip-publish.js new file mode 100644 index 0000000..a2fd979 --- /dev/null +++ b/themes/intotheeast/js/src/trip-publish.js @@ -0,0 +1,131 @@ +/* + * trip-publish.js (U6) — owner publish/unpublish toggle for the /trips listing. + * + * Loaded only for the owner (trips.html.twig gates the asset). Each listing card + * carries a switch (partials/trip-publish-toggle.html.twig) overlaid on the cover + * as a sibling of the navigating
    , so toggling never follows the card link. + * + * Flow: click/Enter/Space on the switch → (if unpublishing the ACTIVE trip) + * window.confirm → lock the switch (aria-busy) → POST /api/v1/trip//publish + * {published} (session cookie) → on success flip the switch + Draft badge in place + * (no reload); on failure re-enable and surface a VISIBLE page-level toast. + * + * Markup contract (data-* on button.trip-publish-toggle): + * data-trip-slug, data-published ("true"|"false"), + * data-active ("true" when this is site.active_trip); aria-checked mirrors + * data-published. The sibling .trip-draft-badge is shown iff not published. + */ + +import { apiSend, apiErrorMsg } from './api-utils.js'; + +var TOAST_TIMEOUT_MS = 5000; +var PUBLISH_TIMEOUT_MS = 10000; // abort a hung toggle so the switch never sticks (R13) +var toastTimer = null; + +// One visible, page-level polite toast (R15). Modelled on the feed-actions.js +// live region but intentionally NOT sr-only: the trip card has no inline message +// slot, so a sighted owner must actually see the failure. Replaces (never queues) +// the message, auto-dismisses, and carries a manual close control. +function toastEl() { + var el = document.getElementById('trip-publish-live'); + if (!el) { + el = document.createElement('div'); + el.id = 'trip-publish-live'; + el.className = 'trip-publish-toast'; + el.setAttribute('role', 'status'); + el.setAttribute('aria-live', 'polite'); + el.hidden = true; + + var msg = document.createElement('span'); + msg.className = 'trip-publish-toast__msg'; + + var close = document.createElement('button'); + close.type = 'button'; + close.className = 'trip-publish-toast__close'; + close.setAttribute('aria-label', 'Dismiss'); + close.textContent = '×'; // × + close.addEventListener('click', hideToast); + + el.appendChild(msg); + el.appendChild(close); + document.body.appendChild(el); + } + return el; +} +function showToast(message) { + var el = toastEl(); + el.querySelector('.trip-publish-toast__msg').textContent = message; + el.hidden = false; + if (toastTimer) clearTimeout(toastTimer); + toastTimer = setTimeout(hideToast, TOAST_TIMEOUT_MS); +} +function hideToast() { + var el = document.getElementById('trip-publish-live'); + if (el) el.hidden = true; + if (toastTimer) { clearTimeout(toastTimer); toastTimer = null; } +} + +function setPublishedUI(btn, published) { + btn.setAttribute('aria-checked', published ? 'true' : 'false'); + btn.setAttribute('data-published', published ? 'true' : 'false'); + var overlay = btn.closest('.trip-publish-overlay'); + var badge = overlay ? overlay.querySelector('.trip-draft-badge') : null; + if (badge) badge.hidden = published; +} + +function setPending(btn, pending) { + if (pending) { + btn.setAttribute('aria-busy', 'true'); + btn.disabled = true; + } else { + btn.removeAttribute('aria-busy'); + btn.disabled = false; + } +} + +function onToggle(btn) { + if (btn.getAttribute('aria-busy') === 'true') return; // already in flight (R13) + + var current = btn.getAttribute('data-published') === 'true'; + var next = !current; + + // R12: unpublishing the ACTIVE trip removes it from the home page — confirm + // first; cancelling leaves it published (no request, no UI change). + if (!next && btn.getAttribute('data-active') === 'true') { + if (!window.confirm('This is your active trip — unpublishing it also removes it from the home page. Unpublish anyway?')) { + return; + } + } + + var slug = btn.getAttribute('data-trip-slug'); + setPending(btn, true); + + apiSend('/api/v1/trip/' + encodeURIComponent(slug) + '/publish', { + method: 'POST', + headers: { 'Content-Type': 'application/json', Accept: 'application/json' }, + body: JSON.stringify({ published: next }) + }, null, PUBLISH_TIMEOUT_MS).then(function () { + // Success: flip the switch + Draft badge in place, no reload (R14). + setPublishedUI(btn, next); + setPending(btn, false); + }).catch(function (err) { + // Failure: the UI never flipped, so revert is just re-enable (R15). + setPending(btn, false); + showToast(apiErrorMsg(err, "Couldn't update — try again.")); + }); +} + +function initTripPublish() { + document.addEventListener('click', function (e) { + var btn = e.target.closest ? e.target.closest('.trip-publish-toggle') : null; + if (!btn) return; + e.preventDefault(); + onToggle(btn); + }); +} + +if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', initTripPublish); +} else { + initTripPublish(); +} diff --git a/themes/intotheeast/js/trip-publish.js b/themes/intotheeast/js/trip-publish.js new file mode 100644 index 0000000..ecfaf69 --- /dev/null +++ b/themes/intotheeast/js/trip-publish.js @@ -0,0 +1 @@ +(()=>{function c(t,e,i,r){var n=r?new AbortController:null,s=n?setTimeout(function(){n.abort()},r):null,l=Object.assign({credentials:"include"},e);return n&&(l.signal=n.signal),fetch(t,l).then(function(a){if(s&&clearTimeout(s),a.ok||i&&i.indexOf(a.status)!==-1)return a;var d=new Error("HTTP "+a.status);throw d.status=a.status,d},function(a){throw s&&clearTimeout(s),a})}function p(t,e){var i=t&&t.status;return i===401||i===403?"Your login session expired \u2014 sign in again, then retry.":e}var m=5e3,v=1e4,u=null;function g(){var t=document.getElementById("trip-publish-live");if(!t){t=document.createElement("div"),t.id="trip-publish-live",t.className="trip-publish-toast",t.setAttribute("role","status"),t.setAttribute("aria-live","polite"),t.hidden=!0;var e=document.createElement("span");e.className="trip-publish-toast__msg";var i=document.createElement("button");i.type="button",i.className="trip-publish-toast__close",i.setAttribute("aria-label","Dismiss"),i.textContent="\xD7",i.addEventListener("click",h),t.appendChild(e),t.appendChild(i),document.body.appendChild(t)}return t}function b(t){var e=g();e.querySelector(".trip-publish-toast__msg").textContent=t,e.hidden=!1,u&&clearTimeout(u),u=setTimeout(h,m)}function h(){var t=document.getElementById("trip-publish-live");t&&(t.hidden=!0),u&&(clearTimeout(u),u=null)}function T(t,e){t.setAttribute("aria-checked",e?"true":"false"),t.setAttribute("data-published",e?"true":"false");var i=t.closest(".trip-publish-overlay"),r=i?i.querySelector(".trip-draft-badge"):null;r&&(r.hidden=e)}function o(t,e){e?(t.setAttribute("aria-busy","true"),t.disabled=!0):(t.removeAttribute("aria-busy"),t.disabled=!1)}function y(t){if(t.getAttribute("aria-busy")!=="true"){var e=t.getAttribute("data-published")==="true",i=!e;if(!(!i&&t.getAttribute("data-active")==="true"&&!window.confirm("This is your active trip \u2014 unpublishing it also removes it from the home page. Unpublish anyway?"))){var r=t.getAttribute("data-trip-slug");o(t,!0),c("/api/v1/trip/"+encodeURIComponent(r)+"/publish",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({published:i})},null,v).then(function(){T(t,i),o(t,!1)}).catch(function(n){o(t,!1),b(p(n,"Couldn't update \u2014 try again."))})}}}function f(){document.addEventListener("click",function(t){var e=t.target.closest?t.target.closest(".trip-publish-toggle"):null;e&&(t.preventDefault(),y(e))})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",f):f();})(); diff --git a/themes/intotheeast/package.json b/themes/intotheeast/package.json index 6680083..a755877 100644 --- a/themes/intotheeast/package.json +++ b/themes/intotheeast/package.json @@ -1,7 +1,7 @@ { "private": true, "scripts": { - "build": "node scripts/gen-weather-icons.js && esbuild js/src/main.js --bundle --minify --format=iife --outfile=js/main.js --loader:.woff2=file --loader:.woff=file --asset-names=../fonts/[name] && esbuild js/src/map.js --bundle --minify --format=iife --outfile=js/map.js && esbuild js/src/feed-actions.js --bundle --minify --format=iife --outfile=js/feed-actions.js && rm -rf js/post && esbuild js/src/post-form.js --bundle --minify --format=esm --splitting --outdir=js/post && mkdir -p css-compiled fonts && { mv js/main.css css-compiled/main.css 2>/dev/null || true; } && { mv js/map.css css-compiled/map.css 2>/dev/null || true; } && { mv js/post/post-form.css css-compiled/post-form.css 2>/dev/null || true; }" + "build": "node scripts/gen-weather-icons.js && esbuild js/src/main.js --bundle --minify --format=iife --outfile=js/main.js --loader:.woff2=file --loader:.woff=file --asset-names=../fonts/[name] && esbuild js/src/map.js --bundle --minify --format=iife --outfile=js/map.js && esbuild js/src/feed-actions.js --bundle --minify --format=iife --outfile=js/feed-actions.js && esbuild js/src/trip-publish.js --bundle --minify --format=iife --outfile=js/trip-publish.js && rm -rf js/post && esbuild js/src/post-form.js --bundle --minify --format=esm --splitting --outdir=js/post && mkdir -p css-compiled fonts && { mv js/main.css css-compiled/main.css 2>/dev/null || true; } && { mv js/map.css css-compiled/map.css 2>/dev/null || true; } && { mv js/post/post-form.css css-compiled/post-form.css 2>/dev/null || true; }" }, "dependencies": { "@fontsource-variable/dm-sans": "latest", diff --git a/themes/intotheeast/templates/home.html.twig b/themes/intotheeast/templates/home.html.twig index 0fcb016..ccc60f1 100644 --- a/themes/intotheeast/templates/home.html.twig +++ b/themes/intotheeast/templates/home.html.twig @@ -9,7 +9,10 @@ {% set trip_route = config.site.active_trip %} {% set trip = grav.pages.find(trip_route) %} -{% if config.site.travelling %} +{# An unpublished active trip falls through to the between-trips state (R16, + KTD7): trip is resolved above and `.published` reads the trip.md flag. This is + the whole home fallback — site.active_trip is not touched. #} +{% if config.site.travelling and trip and trip.published %} {# ══════════════════════════════════════════════════════════ ACTIVE TRIP MODE #} {% set dailies_page = grav.pages.find(trip_route ~ '/dailies') %} diff --git a/themes/intotheeast/templates/partials/trip-publish-toggle.html.twig b/themes/intotheeast/templates/partials/trip-publish-toggle.html.twig new file mode 100644 index 0000000..5bd1169 --- /dev/null +++ b/themes/intotheeast/templates/partials/trip-publish-toggle.html.twig @@ -0,0 +1,27 @@ +{# + Owner-only publish/unpublish switch for a /trips listing card (U3, R10/R11). + + Rendered by trips.html.twig as a SIBLING of the navigating card (never a + child of it), overlaid top-right on the cover, so a click on it toggles publish + state rather than following the card link (KTD6). trip-publish.js binds the + button by `.trip-publish-toggle` and drives it from the data-* below. + + Params: + trip Page — the trip whose published state this controls + is_active bool — true when this trip is site.active_trip; drives the + "home page loses it" confirm in the JS (R12) +#} +{% set is_active = is_active ?? false %} +
    + Draft + +
    diff --git a/themes/intotheeast/templates/trips.html.twig b/themes/intotheeast/templates/trips.html.twig index ca616ce..9262cc7 100644 --- a/themes/intotheeast/templates/trips.html.twig +++ b/themes/intotheeast/templates/trips.html.twig @@ -3,7 +3,13 @@ {% block content %} {% import 'macros/cover.html.twig' as cover %}

    Past Trips

    -{% set trips = page.children.published()|sort((a, b) => a.date < b.date ? 1 : -1) %} +{# Owner gate (R1): broader than trip.html.twig's owner_can_edit — publishing + works on ANY trip, not just the active one, so it's just owner identity. #} +{% set is_owner = grav.user.authenticated + and grav.user.username == grav.config.site.owner_username %} +{# Owner sees drafts (R9); everyone else published only. #} +{% set trips = (is_owner ? page.children : page.children.published())|sort((a, b) => a.date < b.date ? 1 : -1) %} +{% if is_owner %}{% do assets.addJs('theme://js/trip-publish.js', {group: 'bottom'}) %}{% endif %} {% if trips|length == 0 %}

    No trips yet.

    {% else %} @@ -13,6 +19,17 @@ {% set stories_page = grav.pages.find(trip.route ~ '/stories') %} {% set journal_count = dailies_page ? dailies_page.children.published()|length : 0 %} {% set story_count = stories_page ? stories_page.children.published()|length : 0 %} + {# Active-trip match: site.active_trip may be a full route (/trips/x) or a + bare slug — normalise to its last segment and compare to the trip slug, + the same one-liner trip.html.twig uses, so the R12 confirm never silently + drops. #} + {% set active_trip_slug = (grav.config.site.active_trip|default(''))|split('/')|last %} + {% set is_active = active_trip_slug != '' and trip.slug == active_trip_slug %} + {# The wrapper is a positioned container so the owner toggle can overlay the + cover as a SIBLING of the navigating
    (KTD6) — and it exists even for a + coverless draft, giving the toggle an anchor whether or not the cover macro + emits an image. #} +
    {{ cover.render(trip, trip.title, 720, 240, 'trip-card-cover', '(max-width: 700px) 100vw, 360px') }}
    {{ trip.title }}
    @@ -32,6 +49,8 @@
    + {% if is_owner %}{% include 'partials/trip-publish-toggle.html.twig' with { trip: trip, is_active: is_active } only %}{% endif %} + {% endfor %} {% endif %}