diff --git a/docs/demo/assets/css/chunk-vendors.css b/docs/demo/assets/css/chunk-vendors.css index 9b7c2b7..706fa6f 100644 --- a/docs/demo/assets/css/chunk-vendors.css +++ b/docs/demo/assets/css/chunk-vendors.css @@ -1,14 +1,14 @@ -.CodeMirror-foldmarker{color:#00f;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-foldgutter{width:.7em}.CodeMirror-foldgutter-folded,.CodeMirror-foldgutter-open{cursor:pointer}.CodeMirror-foldgutter-open:after{content:"\25BE"}.CodeMirror-foldgutter-folded:after{content:"\25B8"}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:rgba(20,255,20,.5)}.cm-animate-fat-cursor,.cm-fat-cursor-mark{-webkit-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;border:0;background-color:#7e7}@-webkit-keyframes blink{50%{background-color:rgba(0,0,0,0)}}@keyframes blink{50%{background-color:rgba(0,0,0,0)}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid rgba(0,0,0,0)}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:rgba(0,0,0,0)}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:rgba(0,0,0,0)}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{border-radius:0;border-width:0;background:rgba(0,0,0,0);font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;-moz-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none} +.CodeMirror-foldmarker{color:#00f;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-foldgutter{width:.7em}.CodeMirror-foldgutter-folded,.CodeMirror-foldgutter-open{cursor:pointer}.CodeMirror-foldgutter-open:after{content:"\25BE"}.CodeMirror-foldgutter-folded:after{content:"\25B8"}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:transparent}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:transparent}.cm-fat-cursor{caret-color:transparent}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;-moz-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:none} /*! - * css of showdowns v0.5.5 + * css of showdowns v0.5.7 * Copyright (c) 2019-present, Jhuix (Hui Jin) * Released under the MIT License. - */.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{max-width:100%;height:auto;margin:0 auto;display:inherit;-ms-interpolation-mode:bicubic}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{padding-bottom:.3em;border-bottom:1px solid #d6d6d6}.showdowns h1{font-size:2em}.showdowns h2{font-size:1.5em}.showdowns h3{font-size:1.25em}.showdowns h4{font-size:1em}.showdowns h5{font-size:.875em}.showdowns h6{font-size:.85em;color:#6a737d}.showdowns .subheader{line-height:1.4;color:#6f6f6f;font-weight:400;margin-top:.2em;margin-bottom:.5em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{margin-left:1.25em;margin-bottom:0;list-style:none}.showdowns ul li ol,.showdowns ul li ul{margin-left:1.25em;margin-bottom:0}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-left:1.25em;margin-bottom:0}.showdowns dl dt{margin-bottom:.3em;font-weight:600}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{text-transform:uppercase;font-size:90%;color:#222;cursor:help}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{margin:0 0 16px;padding:0 15px;line-height:1.5;color:#5c5c5c;border-left:4px solid #d6d6d6}.showdowns blockquote cite{display:block;font-size:.8125em;color:#555}.showdowns blockquote cite:before{content:"\2014 \0020"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;border:1px solid #dfdfdf;margin-top:1.5em;margin-bottom:1.5em;padding:.125em .3125em .0625em}.showdowns pre code{background-color:rgba(0,0,0,0);border:0;padding:0}.showdowns table{background:#fff;margin-bottom:1.25em;table-layout:auto;overflow:auto;border-collapse:collapse;border-spacing:0}.showdowns table caption{background:rgba(0,0,0,0);color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{color:#222;line-height:1.125em;border:1px solid #d6d6d6;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{line-height:1.125em;border:1px solid #d6d6d6}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-center:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto;display:inherit}.showdowns .diagram-right:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto 0 auto auto;display:inherit}.showdowns .diagram-center.vega-embed{margin:auto;display:table}.showdowns .diagram-right.vega-embed{margin:auto 0 auto auto;display:table}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .latex.diagram-center .katex,.showdowns .latex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .latex.diagram-right .katex,.showdowns .latex.diagram-right .katex-display{text-align:right} + */.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{max-width:100%;height:auto;margin:0 auto;display:inherit;-ms-interpolation-mode:bicubic}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{padding-bottom:.3em;border-bottom:1px solid #d6d6d6}.showdowns h1{font-size:2em}.showdowns h2{font-size:1.5em}.showdowns h3{font-size:1.25em}.showdowns h4{font-size:1em}.showdowns h5{font-size:.875em}.showdowns h6{font-size:.85em;color:#6a737d}.showdowns .subheader{line-height:1.4;color:#6f6f6f;font-weight:400;margin-top:.2em;margin-bottom:.5em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{margin-left:1.25em;margin-bottom:0;list-style:none}.showdowns ul li ol,.showdowns ul li ul{margin-left:1.25em;margin-bottom:0}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-left:1.25em;margin-bottom:0}.showdowns dl dt{margin-bottom:.3em;font-weight:600}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{text-transform:uppercase;font-size:90%;color:#222;cursor:help}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{margin:0 0 16px;padding:0 15px;line-height:1.5;color:#5c5c5c;border-left:4px solid #d6d6d6}.showdowns blockquote cite{display:block;font-size:.8125em;color:#555}.showdowns blockquote cite:before{content:"\2014 \0020"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;border:1px solid #dfdfdf;margin-top:1.5em;margin-bottom:1.5em;padding:.125em .3125em .0625em}.showdowns pre code{background-color:transparent;border:0;padding:0}.showdowns table{background:#fff;margin-bottom:1.25em;table-layout:auto;overflow:auto;border-collapse:collapse;border-spacing:0}.showdowns table caption{background:transparent;color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{color:#222;line-height:1.125em;border:1px solid #d6d6d6;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{line-height:1.125em;border:1px solid #d6d6d6}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-center:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto;display:inherit}.showdowns .diagram-right:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto 0 auto auto;display:inherit}.showdowns .diagram-center.vega-embed{margin:auto;display:table}.showdowns .diagram-right.vega-embed{margin:auto 0 auto auto;display:table}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .latex.diagram-center .katex,.showdowns .latex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .latex.diagram-right .katex,.showdowns .latex.diagram-right .katex-display{text-align:right} /*! - * css of showdowns v0.5.5 + * css of showdowns v0.5.7 * Copyright (c) 2019-present, Jhuix (Hui Jin) * Released under the MIT License. - */.showdowns .showdown-container{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid #eee;border-radius:.25rem}.showdowns .showdown-container.container{border-left-width:.25rem;border-right-width:.25rem}.showdowns .showdown-container.container.tip{border-left-color:#5bc0de;border-right-color:#5bc0de}.showdowns .showdown-container.container.info{border-left-color:#cce5ff;border-right-color:#cce5ff}.showdowns .showdown-container.container.warning{border-left-color:#f0ad4e;border-right-color:#f0ad4e}.showdowns .showdown-container.container.error{border-left-color:#d9534f;border-right-color:#d9534f}.showdowns .showdown-container.container.success{border-left-color:#67c23a;border-right-color:#67c23a}.showdowns .showdown-container.alert{border:1px solid rgba(0,0,0,0);-webkit-transition:opacity .2s;transition:opacity .2s}.showdowns .showdown-container.alert.alert-tip{background-color:#5bc0de}.showdowns .showdown-container.alert.alert-info{background-color:#cce5ff}.showdowns .showdown-container.alert.alert-warning{background-color:#f0ad4e}.showdowns .showdown-container.alert.alert-error{background-color:#d9534f}.showdowns .showdown-container.alert.alert-success{background-color:#67c23a}.showdowns .showdown-container .container-title{font-size:1.25rem;font-weight:700;line-height:1.2}.cm-s-lesser-dark{line-height:1.3em}.cm-s-lesser-dark.CodeMirror{background:#262626;color:#ebefe7;text-shadow:0 -1px 1px #262626}.cm-s-lesser-dark div.CodeMirror-selected{background:#45443b}.cm-s-lesser-dark .CodeMirror-line::selection,.cm-s-lesser-dark .CodeMirror-line>span::selection,.cm-s-lesser-dark .CodeMirror-line>span>span::selection{background:rgba(69,68,59,.99)}.cm-s-lesser-dark .CodeMirror-line::-moz-selection,.cm-s-lesser-dark .CodeMirror-line>span::-moz-selection,.cm-s-lesser-dark .CodeMirror-line>span>span::-moz-selection{background:rgba(69,68,59,.99)}.cm-s-lesser-dark .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-lesser-dark pre{padding:0 8px}.cm-s-lesser-dark.CodeMirror span.CodeMirror-matchingbracket{color:#7efc7e}.cm-s-lesser-dark .CodeMirror-gutters{background:#262626;border-right:1px solid #aaa}.cm-s-lesser-dark .CodeMirror-guttermarker{color:#599eff}.cm-s-lesser-dark .CodeMirror-guttermarker-subtle,.cm-s-lesser-dark .CodeMirror-linenumber{color:#777}.cm-s-lesser-dark span.cm-header{color:#a0a}.cm-s-lesser-dark span.cm-quote{color:#090}.cm-s-lesser-dark span.cm-keyword{color:#599eff}.cm-s-lesser-dark span.cm-atom{color:#c2b470}.cm-s-lesser-dark span.cm-number{color:#b35e4d}.cm-s-lesser-dark span.cm-def{color:#fff}.cm-s-lesser-dark span.cm-variable{color:#d9bf8c}.cm-s-lesser-dark span.cm-variable-2{color:#669199}.cm-s-lesser-dark span.cm-type,.cm-s-lesser-dark span.cm-variable-3{color:#fff}.cm-s-lesser-dark span.cm-operator,.cm-s-lesser-dark span.cm-property{color:#92a75c}.cm-s-lesser-dark span.cm-comment{color:#666}.cm-s-lesser-dark span.cm-string{color:#bcd279}.cm-s-lesser-dark span.cm-string-2{color:#f50}.cm-s-lesser-dark span.cm-meta{color:#738c73}.cm-s-lesser-dark span.cm-qualifier{color:#555}.cm-s-lesser-dark span.cm-builtin{color:#ff9e59}.cm-s-lesser-dark span.cm-bracket{color:#ebefe7}.cm-s-lesser-dark span.cm-tag{color:#669199}.cm-s-lesser-dark span.cm-attribute{color:#81a4d5}.cm-s-lesser-dark span.cm-hr{color:#999}.cm-s-lesser-dark span.cm-link{color:#7070e6}.cm-s-lesser-dark span.cm-error{color:#9d1e15}.cm-s-lesser-dark .CodeMirror-activeline-background{background:#3c3a3a}.cm-s-lesser-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:#fff!important}.cm-s-mdn-like.CodeMirror{color:#999;background-color:#fff}.cm-s-mdn-like div.CodeMirror-selected{background:#cfc}.cm-s-mdn-like .CodeMirror-line::selection,.cm-s-mdn-like .CodeMirror-line>span::selection,.cm-s-mdn-like .CodeMirror-line>span>span::selection{background:#cfc}.cm-s-mdn-like .CodeMirror-line::-moz-selection,.cm-s-mdn-like .CodeMirror-line>span::-moz-selection,.cm-s-mdn-like .CodeMirror-line>span>span::-moz-selection{background:#cfc}.cm-s-mdn-like .CodeMirror-gutters{background:#f8f8f8;border-left:6px solid rgba(0,83,159,.65);color:#333}.cm-s-mdn-like .CodeMirror-linenumber{color:#aaa;padding-left:8px}.cm-s-mdn-like .CodeMirror-cursor{border-left:2px solid #222}.cm-s-mdn-like .cm-keyword{color:#6262ff}.cm-s-mdn-like .cm-atom{color:#f90}.cm-s-mdn-like .cm-number{color:#ca7841}.cm-s-mdn-like .cm-def{color:#8da6ce}.cm-s-mdn-like span.cm-tag,.cm-s-mdn-like span.cm-variable-2{color:#690}.cm-s-mdn-like .cm-variable,.cm-s-mdn-like span.cm-def,.cm-s-mdn-like span.cm-type,.cm-s-mdn-like span.cm-variable-3{color:#07a}.cm-s-mdn-like .cm-property{color:#905}.cm-s-mdn-like .cm-qualifier{color:#690}.cm-s-mdn-like .cm-operator{color:#cda869}.cm-s-mdn-like .cm-comment{color:#777;font-weight:400}.cm-s-mdn-like .cm-string{color:#07a;font-style:italic}.cm-s-mdn-like .cm-string-2{color:#bd6b18}.cm-s-mdn-like .cm-meta{color:#000}.cm-s-mdn-like .cm-builtin{color:#9b7536}.cm-s-mdn-like .cm-tag{color:#997643}.cm-s-mdn-like .cm-attribute{color:#d6bb6d}.cm-s-mdn-like .cm-header{color:#ff6400}.cm-s-mdn-like .cm-hr{color:#aeaeae}.cm-s-mdn-like .cm-link{color:#ad9361;font-style:italic;text-decoration:none}.cm-s-mdn-like .cm-error{border-bottom:1px solid red}div.cm-s-mdn-like .CodeMirror-activeline-background{background:#efefff}div.cm-s-mdn-like span.CodeMirror-matchingbracket{outline:1px solid grey;color:inherit}.cm-s-mdn-like.CodeMirror{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAyCAYAAAAp8UeFAAAHvklEQVR42s2b63bcNgyEQZCSHCdt2vd/0tWF7I+Q6XgMXiTtuvU5Pl57ZQKkKHzEAOtF5KeIJBGJ8uvL599FRFREZhFx8DeXv8trn68RuGaC8TRfo3SNp9dlDDHedyLyTUTeRWStXKPZrjtpZxaRw5hPqozRs1N8/enzIiQRWcCgy4MUA0f+XWliDhyL8Lfyvx7ei/Ae3iQFHyw7U/59pQVIMEEPEz0G7XiwdRjzSfC3UTtz9vchIntxvry5iMgfIhJoEflOz2CQr3F5h/HfeFe+GTdLaKcu9L8LTeQb/R/7GgbsfKedyNdoHsN31uRPWrfZ5wsj/NzzRQHuToIdU3ahwnsKPxXCjJITuOsi7XLc7SG/v5GdALs7wf8JjTFiB5+QvTEfRyGOfX3Lrx8wxyQi3sNq46O7QahQiCsRFgqddjBouVEHOKDgXAQHD9gJCr5sMKkEdjwsarG/ww3BMHBU7OBjXnzdyY7SfCxf5/z6ATccrwlKuwC/jhznnPF4CgVzhhVf4xp2EixcBActO75iZ8/fM9zAs2OMzKdslgXWJ9XG8PQoOAMA5fGcsvORgv0doBXyHrCwfLJAOwo71QLNkb8n2Pl6EWiR7OCibtkPaz4Kc/0NNAze2gju3zOwekALDaCFPI5vjPFmgGY5AZqyGEvH1x7QfIb8YtxMnA/b+QQ0aQDAwc6JMFg8CbQZ4qoYEEHbRwNojuK3EHwd7VALSgq+MNDKzfT58T8qdpADrgW0GmgcAS1lhzztJmkAzcPNOQbsWEALBDSlMKUG0Eq4CLAQWvEVQ9WU57gZJwZtgPO3r9oBTQ9WO8TjqXINx8R0EYpiZEUWOF3FxkbJkgU9B2f41YBrIj5ZfsQa0M5kTgiAAqM3ShXLgu8XMqcrQBvJ0CL5pnTsfMB13oB8athpAq2XOQmcGmoACCLydx7nToa23ATaSIY2ichfOdPTGxlasXMLaL0MLZAOwAKIM+y8CmicobGdCcbbK9DzN+yYGVoNNI5iUKTMyYOjPse4A8SM1MmcXgU0toOq1yO/v8FOxlASyc7TgeYaAMBJHcY1CcCwGI/TK4AmDbDyKYBBtFUkRwto8gygiQEaByFgJ00BH2M8JWwQS1nafDXQCidWyOI8AcjDCSjCLk8ngObuAm3JAHAdubAmOaK06V8MNEsKPJOhobSprwQa6gD7DclRQdqcwL4zxqgBrQcabUiBLclRDKAlWp+etPkBaNMA0AKlrHwTdEByZAA4GM+SNluSY6wAzcMNewxmgig5Ks0nkrSpBvSaQHMdKTBAnLojOdYyGpQ254602ZILPdTD1hdlggdIm74jbTp8vDwF5ZYUeLWGJpWsh6XNyXgcYwVoJQTEhhTYkxzZjiU5npU2TaB979TQehlaAVq4kaGpiPwwwLkYUuBbQwocyQTv1tA0+1UFWoJF3iv1oq+qoSk8EQdJmwHkziIF7oOZk14EGitibAdjLYYK78H5vZOhtWpoI0ATGHs0Q8OMb4Ey+2bU2UYztCtA0wFAs7TplGLRVQCcqaFdGSPCeTI1QNIC52iWNzof6Uib7xjEp07mNNoUYmVosVItHrHzRlLgBn9LFyRHaQCtVUMbtTNhoXWiTOO9k/V8BdAc1Oq0ArSQs6/5SU0hckNy9NnXqQY0PGYo5dWJ7nINaN6o958FWin27aBaWRka1r5myvLOAm0j30eBJqCxHLReVclxhxOEN2JfDWjxBtAC7MIH1fVaGdoOp4qJYDgKtKPSFNID2gSnGldrCqkFZ+5UeQXQBIRrSwocbdZYQT/2LwRahBPBXoHrB8nxaGROST62DKUbQOMMzZIC9abkuELfQzQALWTnDNAm8KHWFOJgJ5+SHIvTPcmx1xQyZRhNL5Qci689aXMEaN/uNIWkEwDAvFpOZmgsBaaGnbs1NPa1Jm32gBZAIh1pCtG7TSH4aE0y1uVY4uqoFPisGlpP2rSA5qTecWn5agK6BzSpgAyD+wFaqhnYoSZ1Vwr8CmlTQbrcO3ZaX0NAEyMbYaAlyquFoLKK3SPby9CeVUPThrSJmkCAE0CrKUQadi4DrdSlWhmah0YL9z9vClH59YGbHx1J8VZTyAjQepJjmXwAKTDQI3omc3p1U4gDUf6RfcdYfrUp5ClAi2J3Ba6UOXGo+K+bQrjjssitG2SJzshaLwMtXgRagUNpYYoVkMSBLM+9GGiJZMvduG6DRZ4qc04DMPtQQxOjEtACmhO7K1AbNbQDEggZyJwscFpAGwENhoBeUwh3bWolhe8BTYVKxQEWrSUn/uhcM5KhvUu/+eQu0Lzhi+VrK0PrZZNDQKs9cpYUuFYgMVpD4/NxenJTiMCNqdUEUf1qZWjppLT5qSkkUZbCwkbZMSuVnu80hfSkzRbQeqCZSAh6huR4VtoM2gHAlLf72smuWgE+VV7XpE25Ab2WFDgyhnSuKbs4GuGzCjR+tIoUuMFg3kgcWKLTwRqanJQ2W00hAsenfaApRC42hbCvK1SlE0HtE9BGgneJO+ELamitD1YjjOYnNYVcraGhtKkW0EqVVeDx733I2NH581k1NNxNLG0i0IJ8/NjVaOZ0tYZ2Vtr0Xv7tPV3hkWp9EFkgS/J0vosngTaSoaG06WHi+xObQkaAdlbanP8B2+2l0f90LmUAAAAASUVORK5CYII=)}.cm-s-neat span.cm-comment{color:#a86}.cm-s-neat span.cm-keyword{line-height:1em;font-weight:700;color:#00f}.cm-s-neat span.cm-string{color:#a22}.cm-s-neat span.cm-builtin{line-height:1em;font-weight:700;color:#077}.cm-s-neat span.cm-special{line-height:1em;font-weight:700;color:#0aa}.cm-s-neat span.cm-variable{color:#000}.cm-s-neat span.cm-atom,.cm-s-neat span.cm-number{color:#3a3}.cm-s-neat span.cm-meta{color:#555}.cm-s-neat span.cm-link{color:#3a3}.cm-s-neat .CodeMirror-activeline-background{background:#e8f2ff}.cm-s-neat .CodeMirror-matchingbracket{outline:1px solid grey;color:#000!important}.cm-s-rubyblue.CodeMirror{background:#112435;color:#fff}.cm-s-rubyblue div.CodeMirror-selected{background:#38566f}.cm-s-rubyblue .CodeMirror-line::selection,.cm-s-rubyblue .CodeMirror-line>span::selection,.cm-s-rubyblue .CodeMirror-line>span>span::selection{background:rgba(56,86,111,.99)}.cm-s-rubyblue .CodeMirror-line::-moz-selection,.cm-s-rubyblue .CodeMirror-line>span::-moz-selection,.cm-s-rubyblue .CodeMirror-line>span>span::-moz-selection{background:rgba(56,86,111,.99)}.cm-s-rubyblue .CodeMirror-gutters{background:#1f4661;border-right:7px solid #3e7087}.cm-s-rubyblue .CodeMirror-guttermarker{color:#fff}.cm-s-rubyblue .CodeMirror-guttermarker-subtle{color:#3e7087}.cm-s-rubyblue .CodeMirror-linenumber{color:#fff}.cm-s-rubyblue .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-rubyblue span.cm-comment{color:#999;font-style:italic;line-height:1em}.cm-s-rubyblue span.cm-atom{color:#f4c20b}.cm-s-rubyblue span.cm-attribute,.cm-s-rubyblue span.cm-number{color:#82c6e0}.cm-s-rubyblue span.cm-keyword{color:#f0f}.cm-s-rubyblue span.cm-string{color:#f08047}.cm-s-rubyblue span.cm-meta{color:#f0f}.cm-s-rubyblue span.cm-tag,.cm-s-rubyblue span.cm-variable-2{color:#7bd827}.cm-s-rubyblue span.cm-def,.cm-s-rubyblue span.cm-type,.cm-s-rubyblue span.cm-variable-3{color:#fff}.cm-s-rubyblue span.cm-bracket{color:#f0f}.cm-s-rubyblue span.cm-link{color:#f4c20b}.cm-s-rubyblue span.CodeMirror-matchingbracket{color:#f0f!important}.cm-s-rubyblue span.cm-builtin,.cm-s-rubyblue span.cm-special{color:#ff9d00}.cm-s-rubyblue span.cm-error{color:#af2018}.cm-s-rubyblue .CodeMirror-activeline-background{background:#173047}.cm-s-seti.CodeMirror{background-color:#151718!important;color:#cfd2d1!important;border:none}.cm-s-seti .CodeMirror-gutters{color:#404b53;background-color:#0e1112;border:none}.cm-s-seti .CodeMirror-cursor{border-left:thin solid #f8f8f0}.cm-s-seti .CodeMirror-linenumber{color:#6d8a88}.cm-s-seti.CodeMirror-focused div.CodeMirror-selected{background:hsla(0,0%,100%,.1)}.cm-s-seti .CodeMirror-line::selection,.cm-s-seti .CodeMirror-line>span::selection,.cm-s-seti .CodeMirror-line>span>span::selection{background:hsla(0,0%,100%,.1)}.cm-s-seti .CodeMirror-line::-moz-selection,.cm-s-seti .CodeMirror-line>span::-moz-selection,.cm-s-seti .CodeMirror-line>span>span::-moz-selection{background:hsla(0,0%,100%,.1)}.cm-s-seti span.cm-comment{color:#41535b}.cm-s-seti span.cm-string,.cm-s-seti span.cm-string-2{color:#55b5db}.cm-s-seti span.cm-number{color:#cd3f45}.cm-s-seti span.cm-variable{color:#55b5db}.cm-s-seti span.cm-variable-2{color:#a074c4}.cm-s-seti span.cm-def{color:#55b5db}.cm-s-seti span.cm-keyword{color:#ff79c6}.cm-s-seti span.cm-operator{color:#9fca56}.cm-s-seti span.cm-keyword{color:#e6cd69}.cm-s-seti span.cm-atom{color:#cd3f45}.cm-s-seti span.cm-meta,.cm-s-seti span.cm-tag{color:#55b5db}.cm-s-seti span.cm-attribute,.cm-s-seti span.cm-qualifier{color:#9fca56}.cm-s-seti span.cm-property{color:#a074c4}.cm-s-seti span.cm-builtin,.cm-s-seti span.cm-type,.cm-s-seti span.cm-variable-3{color:#9fca56}.cm-s-seti .CodeMirror-activeline-background{background:#101213}.cm-s-seti .CodeMirror-matchingbracket{text-decoration:underline;color:#fff!important}.cm-s-darcula{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif}.cm-s-darcula.CodeMirror{background:#2b2b2b;color:#a9b7c6}.cm-s-darcula span.cm-meta{color:#bbb529}.cm-s-darcula span.cm-number{color:#6897bb}.cm-s-darcula span.cm-keyword{color:#cc7832;line-height:1em;font-weight:700}.cm-s-darcula span.cm-def{color:#a9b7c6;font-style:italic}.cm-s-darcula span.cm-variable,.cm-s-darcula span.cm-variable-2{color:#a9b7c6}.cm-s-darcula span.cm-variable-3{color:#9876aa}.cm-s-darcula span.cm-type{color:#abc;font-weight:700}.cm-s-darcula span.cm-property{color:#ffc66d}.cm-s-darcula span.cm-operator{color:#a9b7c6}.cm-s-darcula span.cm-string,.cm-s-darcula span.cm-string-2{color:#6a8759}.cm-s-darcula span.cm-comment{color:#61a151;font-style:italic}.cm-s-darcula span.cm-atom,.cm-s-darcula span.cm-link{color:#cc7832}.cm-s-darcula span.cm-error{color:#bc3f3c}.cm-s-darcula span.cm-tag{color:#629755;font-weight:700;font-style:italic;text-decoration:underline}.cm-s-darcula span.cm-attribute{color:#6897bb}.cm-s-darcula span.cm-qualifier{color:#6a8759}.cm-s-darcula span.cm-bracket{color:#a9b7c6}.cm-s-darcula span.cm-builtin,.cm-s-darcula span.cm-special{color:#ff9e59}.cm-s-darcula span.cm-matchhighlight{color:#fff;background-color:rgba(50,89,48,.7);font-weight:400}.cm-s-darcula span.cm-searching{color:#fff;background-color:rgba(61,115,59,.7);font-weight:400}.cm-s-darcula .CodeMirror-cursor{border-left:1px solid #a9b7c6}.cm-s-darcula .CodeMirror-activeline-background{background:#323232}.cm-s-darcula .CodeMirror-gutters{background:#313335;border-right:1px solid #313335}.cm-s-darcula .CodeMirror-guttermarker{color:#ffee80}.cm-s-darcula .CodeMirror-guttermarker-subtle{color:#d0d0d0}.cm-s-darcula .CodeMirrir-linenumber{color:#606366}.cm-s-darcula .CodeMirror-matchingbracket{background-color:#3b514d;color:#ffef28!important;font-weight:700}.cm-s-darcula div.CodeMirror-selected{background:#214283}.CodeMirror-hints.darcula{font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#9c9e9e;background-color:#3b3e3f!important}.CodeMirror-hints.darcula .CodeMirror-hint-active{background-color:#494d4e!important;color:#9c9e9e!important}.cm-s-idea span.cm-meta{color:olive}.cm-s-idea span.cm-number{color:#00f}.cm-s-idea span.cm-keyword{line-height:1em;font-weight:700;color:navy}.cm-s-idea span.cm-atom{font-weight:700;color:navy}.cm-s-idea span.cm-def,.cm-s-idea span.cm-operator,.cm-s-idea span.cm-property,.cm-s-idea span.cm-type,.cm-s-idea span.cm-variable,.cm-s-idea span.cm-variable-2,.cm-s-idea span.cm-variable-3{color:#000}.cm-s-idea span.cm-comment{color:grey}.cm-s-idea span.cm-string,.cm-s-idea span.cm-string-2{color:green}.cm-s-idea span.cm-qualifier{color:#555}.cm-s-idea span.cm-error{color:red}.cm-s-idea span.cm-attribute{color:#00f}.cm-s-idea span.cm-tag{color:navy}.cm-s-idea span.cm-link{color:#00f}.cm-s-idea .CodeMirror-activeline-background{background:#fffae3}.cm-s-idea span.cm-builtin{color:#30a}.cm-s-idea span.cm-bracket{color:#cc7}.cm-s-idea{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif}.cm-s-idea .CodeMirror-matchingbracket{outline:1px solid grey;color:#000!important}.CodeMirror-hints.idea{font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#616569;background-color:#ebf3fd!important}.CodeMirror-hints.idea .CodeMirror-hint-active{background-color:#a2b8c9!important;color:#5c6065!important}.cm-s-the-matrix.CodeMirror{background:#000;color:#0f0}.cm-s-the-matrix div.CodeMirror-selected{background:#2d2d2d}.cm-s-the-matrix .CodeMirror-line::selection,.cm-s-the-matrix .CodeMirror-line>span::selection,.cm-s-the-matrix .CodeMirror-line>span>span::selection{background:rgba(45,45,45,.99)}.cm-s-the-matrix .CodeMirror-line::-moz-selection,.cm-s-the-matrix .CodeMirror-line>span::-moz-selection,.cm-s-the-matrix .CodeMirror-line>span>span::-moz-selection{background:rgba(45,45,45,.99)}.cm-s-the-matrix .CodeMirror-gutters{background:#060;border-right:2px solid #0f0}.cm-s-the-matrix .CodeMirror-guttermarker{color:#0f0}.cm-s-the-matrix .CodeMirror-guttermarker-subtle,.cm-s-the-matrix .CodeMirror-linenumber{color:#fff}.cm-s-the-matrix .CodeMirror-cursor{border-left:1px solid #0f0}.cm-s-the-matrix span.cm-keyword{color:#008803;font-weight:700}.cm-s-the-matrix span.cm-atom{color:#3ff}.cm-s-the-matrix span.cm-number{color:#ffb94f}.cm-s-the-matrix span.cm-def{color:#99c}.cm-s-the-matrix span.cm-variable{color:#f6c}.cm-s-the-matrix span.cm-variable-2{color:#c6f}.cm-s-the-matrix span.cm-type,.cm-s-the-matrix span.cm-variable-3{color:#96f}.cm-s-the-matrix span.cm-property{color:#62ffa0}.cm-s-the-matrix span.cm-operator{color:#999}.cm-s-the-matrix span.cm-comment{color:#ccc}.cm-s-the-matrix span.cm-string{color:#39c}.cm-s-the-matrix span.cm-meta{color:#c9f}.cm-s-the-matrix span.cm-qualifier{color:#fff700}.cm-s-the-matrix span.cm-builtin{color:#30a}.cm-s-the-matrix span.cm-bracket{color:#cc7}.cm-s-the-matrix span.cm-tag{color:#ffbd40}.cm-s-the-matrix span.cm-attribute{color:#fff700}.cm-s-the-matrix span.cm-error{color:red}.cm-s-the-matrix .CodeMirror-activeline-background{background:#040}.solarized.base03{color:#002b36}.solarized.base02{color:#073642}.solarized.base01{color:#586e75}.solarized.base00{color:#657b83}.solarized.base0{color:#839496}.solarized.base1{color:#93a1a1}.solarized.base2{color:#eee8d5}.solarized.base3{color:#fdf6e3}.solarized.solar-yellow{color:#b58900}.solarized.solar-orange{color:#cb4b16}.solarized.solar-red{color:#dc322f}.solarized.solar-magenta{color:#d33682}.solarized.solar-violet{color:#6c71c4}.solarized.solar-blue{color:#268bd2}.solarized.solar-cyan{color:#2aa198}.solarized.solar-green{color:#859900}.cm-s-solarized{line-height:1.45em;color-profile:sRGB;rendering-intent:auto}.cm-s-solarized.cm-s-dark{color:#839496;background-color:#002b36;text-shadow:#002b36 0 1px}.cm-s-solarized.cm-s-light{background-color:#fdf6e3;color:#657b83;text-shadow:#eee8d5 0 1px}.cm-s-solarized .CodeMirror-widget{text-shadow:none}.cm-s-solarized .cm-header{color:#586e75}.cm-s-solarized .cm-quote{color:#93a1a1}.cm-s-solarized .cm-keyword{color:#cb4b16}.cm-s-solarized .cm-atom,.cm-s-solarized .cm-number{color:#d33682}.cm-s-solarized .cm-def{color:#2aa198}.cm-s-solarized .cm-variable{color:#839496}.cm-s-solarized .cm-variable-2{color:#b58900}.cm-s-solarized .cm-type,.cm-s-solarized .cm-variable-3{color:#6c71c4}.cm-s-solarized .cm-property{color:#2aa198}.cm-s-solarized .cm-operator{color:#6c71c4}.cm-s-solarized .cm-comment{color:#586e75;font-style:italic}.cm-s-solarized .cm-string{color:#859900}.cm-s-solarized .cm-string-2{color:#b58900}.cm-s-solarized .cm-meta{color:#859900}.cm-s-solarized .cm-qualifier{color:#b58900}.cm-s-solarized .cm-builtin{color:#d33682}.cm-s-solarized .cm-bracket{color:#cb4b16}.cm-s-solarized .CodeMirror-matchingbracket{color:#859900}.cm-s-solarized .CodeMirror-nonmatchingbracket{color:#dc322f}.cm-s-solarized .cm-tag{color:#93a1a1}.cm-s-solarized .cm-attribute{color:#2aa198}.cm-s-solarized .cm-hr{color:rgba(0,0,0,0);border-top:1px solid #586e75;display:block}.cm-s-solarized .cm-link{color:#93a1a1;cursor:pointer}.cm-s-solarized .cm-special{color:#6c71c4}.cm-s-solarized .cm-em{color:#999;text-decoration:underline;-webkit-text-decoration-style:dotted;-moz-text-decoration-style:dotted;text-decoration-style:dotted}.cm-s-solarized .cm-error,.cm-s-solarized .cm-invalidchar{color:#586e75;border-bottom:1px dotted #dc322f}.cm-s-solarized.cm-s-dark div.CodeMirror-selected{background:#073642}.cm-s-solarized.cm-s-dark.CodeMirror ::-moz-selection{background:rgba(7,54,66,.99)}.cm-s-solarized.cm-s-dark.CodeMirror ::selection{background:rgba(7,54,66,.99)}.cm-s-dark .CodeMirror-line>span::-moz-selection,.cm-s-dark .CodeMirror-line>span>span::-moz-selection,.cm-s-solarized.cm-s-dark .CodeMirror-line::-moz-selection{background:rgba(7,54,66,.99)}.cm-s-solarized.cm-s-light div.CodeMirror-selected{background:#eee8d5}.cm-s-light .CodeMirror-line>span::-moz-selection,.cm-s-light .CodeMirror-line>span>span::-moz-selection,.cm-s-solarized.cm-s-light .CodeMirror-line::-moz-selection{background:#eee8d5}.cm-s-light .CodeMirror-line>span::selection,.cm-s-light .CodeMirror-line>span>span::selection,.cm-s-solarized.cm-s-light .CodeMirror-line::selection{background:#eee8d5}.cm-s-ligh .CodeMirror-line>span::-moz-selection,.cm-s-ligh .CodeMirror-line>span>span::-moz-selection,.cm-s-solarized.cm-s-light .CodeMirror-line::-moz-selection{background:#eee8d5}.cm-s-solarized.CodeMirror{-webkit-box-shadow:inset 7px 0 12px -6px #000;box-shadow:inset 7px 0 12px -6px #000}.cm-s-solarized .CodeMirror-gutters{border-right:0}.cm-s-solarized.cm-s-dark .CodeMirror-gutters{background-color:#073642}.cm-s-solarized.cm-s-dark .CodeMirror-linenumber{color:#586e75;text-shadow:#021014 0 -1px}.cm-s-solarized.cm-s-light .CodeMirror-gutters{background-color:#eee8d5}.cm-s-solarized.cm-s-light .CodeMirror-linenumber{color:#839496}.cm-s-solarized .CodeMirror-linenumber{padding:0 5px}.cm-s-solarized .CodeMirror-guttermarker-subtle{color:#586e75}.cm-s-solarized.cm-s-dark .CodeMirror-guttermarker{color:#ddd}.cm-s-solarized.cm-s-light .CodeMirror-guttermarker{color:#cb4b16}.cm-s-solarized .CodeMirror-gutter .CodeMirror-gutter-text{color:#586e75}.cm-s-solarized .CodeMirror-cursor{border-left:1px solid #819090}.cm-s-solarized.cm-s-light.cm-fat-cursor .CodeMirror-cursor{background:#7e7}.cm-s-solarized.cm-s-light .cm-animate-fat-cursor{background-color:#7e7}.cm-s-solarized.cm-s-dark.cm-fat-cursor .CodeMirror-cursor{background:#586e75}.cm-s-solarized.cm-s-dark .cm-animate-fat-cursor{background-color:#586e75}.cm-s-solarized.cm-s-dark .CodeMirror-activeline-background{background:hsla(0,0%,100%,.06)}.cm-s-solarized.cm-s-light .CodeMirror-activeline-background{background:rgba(0,0,0,.06)} + */.showdowns .showdown-container{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid #eee;border-radius:.25rem}.showdowns .showdown-container.container{border-left-width:.25rem;border-right-width:.25rem}.showdowns .showdown-container.container.tip{border-left-color:#5bc0de;border-right-color:#5bc0de}.showdowns .showdown-container.container.info{border-left-color:#cce5ff;border-right-color:#cce5ff}.showdowns .showdown-container.container.warning{border-left-color:#f0ad4e;border-right-color:#f0ad4e}.showdowns .showdown-container.container.error{border-left-color:#d9534f;border-right-color:#d9534f}.showdowns .showdown-container.container.success{border-left-color:#67c23a;border-right-color:#67c23a}.showdowns .showdown-container.alert{border:1px solid transparent;-webkit-transition:opacity .2s;transition:opacity .2s}.showdowns .showdown-container.alert.alert-tip{background-color:#5bc0de}.showdowns .showdown-container.alert.alert-info{background-color:#cce5ff}.showdowns .showdown-container.alert.alert-warning{background-color:#f0ad4e}.showdowns .showdown-container.alert.alert-error{background-color:#d9534f}.showdowns .showdown-container.alert.alert-success{background-color:#67c23a}.showdowns .showdown-container .container-title{font-size:1.25rem;font-weight:700;line-height:1.2}.cm-s-lesser-dark{line-height:1.3em}.cm-s-lesser-dark.CodeMirror{background:#262626;color:#ebefe7;text-shadow:0 -1px 1px #262626}.cm-s-lesser-dark div.CodeMirror-selected{background:#45443b}.cm-s-lesser-dark .CodeMirror-line::selection,.cm-s-lesser-dark .CodeMirror-line>span::selection,.cm-s-lesser-dark .CodeMirror-line>span>span::selection{background:rgba(69,68,59,.99)}.cm-s-lesser-dark .CodeMirror-line::-moz-selection,.cm-s-lesser-dark .CodeMirror-line>span::-moz-selection,.cm-s-lesser-dark .CodeMirror-line>span>span::-moz-selection{background:rgba(69,68,59,.99)}.cm-s-lesser-dark .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-lesser-dark pre{padding:0 8px}.cm-s-lesser-dark.CodeMirror span.CodeMirror-matchingbracket{color:#7efc7e}.cm-s-lesser-dark .CodeMirror-gutters{background:#262626;border-right:1px solid #aaa}.cm-s-lesser-dark .CodeMirror-guttermarker{color:#599eff}.cm-s-lesser-dark .CodeMirror-guttermarker-subtle,.cm-s-lesser-dark .CodeMirror-linenumber{color:#777}.cm-s-lesser-dark span.cm-header{color:#a0a}.cm-s-lesser-dark span.cm-quote{color:#090}.cm-s-lesser-dark span.cm-keyword{color:#599eff}.cm-s-lesser-dark span.cm-atom{color:#c2b470}.cm-s-lesser-dark span.cm-number{color:#b35e4d}.cm-s-lesser-dark span.cm-def{color:#fff}.cm-s-lesser-dark span.cm-variable{color:#d9bf8c}.cm-s-lesser-dark span.cm-variable-2{color:#669199}.cm-s-lesser-dark span.cm-type,.cm-s-lesser-dark span.cm-variable-3{color:#fff}.cm-s-lesser-dark span.cm-operator,.cm-s-lesser-dark span.cm-property{color:#92a75c}.cm-s-lesser-dark span.cm-comment{color:#666}.cm-s-lesser-dark span.cm-string{color:#bcd279}.cm-s-lesser-dark span.cm-string-2{color:#f50}.cm-s-lesser-dark span.cm-meta{color:#738c73}.cm-s-lesser-dark span.cm-qualifier{color:#555}.cm-s-lesser-dark span.cm-builtin{color:#ff9e59}.cm-s-lesser-dark span.cm-bracket{color:#ebefe7}.cm-s-lesser-dark span.cm-tag{color:#669199}.cm-s-lesser-dark span.cm-attribute{color:#81a4d5}.cm-s-lesser-dark span.cm-hr{color:#999}.cm-s-lesser-dark span.cm-link{color:#7070e6}.cm-s-lesser-dark span.cm-error{color:#9d1e15}.cm-s-lesser-dark .CodeMirror-activeline-background{background:#3c3a3a}.cm-s-lesser-dark .CodeMirror-matchingbracket{outline:1px solid grey;color:#fff!important}.cm-s-mdn-like.CodeMirror{color:#999;background-color:#fff}.cm-s-mdn-like div.CodeMirror-selected{background:#cfc}.cm-s-mdn-like .CodeMirror-line::selection,.cm-s-mdn-like .CodeMirror-line>span::selection,.cm-s-mdn-like .CodeMirror-line>span>span::selection{background:#cfc}.cm-s-mdn-like .CodeMirror-line::-moz-selection,.cm-s-mdn-like .CodeMirror-line>span::-moz-selection,.cm-s-mdn-like .CodeMirror-line>span>span::-moz-selection{background:#cfc}.cm-s-mdn-like .CodeMirror-gutters{background:#f8f8f8;border-left:6px solid rgba(0,83,159,.65);color:#333}.cm-s-mdn-like .CodeMirror-linenumber{color:#aaa;padding-left:8px}.cm-s-mdn-like .CodeMirror-cursor{border-left:2px solid #222}.cm-s-mdn-like .cm-keyword{color:#6262ff}.cm-s-mdn-like .cm-atom{color:#f90}.cm-s-mdn-like .cm-number{color:#ca7841}.cm-s-mdn-like .cm-def{color:#8da6ce}.cm-s-mdn-like span.cm-tag,.cm-s-mdn-like span.cm-variable-2{color:#690}.cm-s-mdn-like .cm-variable,.cm-s-mdn-like span.cm-def,.cm-s-mdn-like span.cm-type,.cm-s-mdn-like span.cm-variable-3{color:#07a}.cm-s-mdn-like .cm-property{color:#905}.cm-s-mdn-like .cm-qualifier{color:#690}.cm-s-mdn-like .cm-operator{color:#cda869}.cm-s-mdn-like .cm-comment{color:#777;font-weight:400}.cm-s-mdn-like .cm-string{color:#07a;font-style:italic}.cm-s-mdn-like .cm-string-2{color:#bd6b18}.cm-s-mdn-like .cm-meta{color:#000}.cm-s-mdn-like .cm-builtin{color:#9b7536}.cm-s-mdn-like .cm-tag{color:#997643}.cm-s-mdn-like .cm-attribute{color:#d6bb6d}.cm-s-mdn-like .cm-header{color:#ff6400}.cm-s-mdn-like .cm-hr{color:#aeaeae}.cm-s-mdn-like .cm-link{color:#ad9361;font-style:italic;text-decoration:none}.cm-s-mdn-like .cm-error{border-bottom:1px solid red}div.cm-s-mdn-like .CodeMirror-activeline-background{background:#efefff}div.cm-s-mdn-like span.CodeMirror-matchingbracket{outline:1px solid grey;color:inherit}.cm-s-mdn-like.CodeMirror{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAyCAYAAAAp8UeFAAAHvklEQVR42s2b63bcNgyEQZCSHCdt2vd/0tWF7I+Q6XgMXiTtuvU5Pl57ZQKkKHzEAOtF5KeIJBGJ8uvL599FRFREZhFx8DeXv8trn68RuGaC8TRfo3SNp9dlDDHedyLyTUTeRWStXKPZrjtpZxaRw5hPqozRs1N8/enzIiQRWcCgy4MUA0f+XWliDhyL8Lfyvx7ei/Ae3iQFHyw7U/59pQVIMEEPEz0G7XiwdRjzSfC3UTtz9vchIntxvry5iMgfIhJoEflOz2CQr3F5h/HfeFe+GTdLaKcu9L8LTeQb/R/7GgbsfKedyNdoHsN31uRPWrfZ5wsj/NzzRQHuToIdU3ahwnsKPxXCjJITuOsi7XLc7SG/v5GdALs7wf8JjTFiB5+QvTEfRyGOfX3Lrx8wxyQi3sNq46O7QahQiCsRFgqddjBouVEHOKDgXAQHD9gJCr5sMKkEdjwsarG/ww3BMHBU7OBjXnzdyY7SfCxf5/z6ATccrwlKuwC/jhznnPF4CgVzhhVf4xp2EixcBActO75iZ8/fM9zAs2OMzKdslgXWJ9XG8PQoOAMA5fGcsvORgv0doBXyHrCwfLJAOwo71QLNkb8n2Pl6EWiR7OCibtkPaz4Kc/0NNAze2gju3zOwekALDaCFPI5vjPFmgGY5AZqyGEvH1x7QfIb8YtxMnA/b+QQ0aQDAwc6JMFg8CbQZ4qoYEEHbRwNojuK3EHwd7VALSgq+MNDKzfT58T8qdpADrgW0GmgcAS1lhzztJmkAzcPNOQbsWEALBDSlMKUG0Eq4CLAQWvEVQ9WU57gZJwZtgPO3r9oBTQ9WO8TjqXINx8R0EYpiZEUWOF3FxkbJkgU9B2f41YBrIj5ZfsQa0M5kTgiAAqM3ShXLgu8XMqcrQBvJ0CL5pnTsfMB13oB8athpAq2XOQmcGmoACCLydx7nToa23ATaSIY2ichfOdPTGxlasXMLaL0MLZAOwAKIM+y8CmicobGdCcbbK9DzN+yYGVoNNI5iUKTMyYOjPse4A8SM1MmcXgU0toOq1yO/v8FOxlASyc7TgeYaAMBJHcY1CcCwGI/TK4AmDbDyKYBBtFUkRwto8gygiQEaByFgJ00BH2M8JWwQS1nafDXQCidWyOI8AcjDCSjCLk8ngObuAm3JAHAdubAmOaK06V8MNEsKPJOhobSprwQa6gD7DclRQdqcwL4zxqgBrQcabUiBLclRDKAlWp+etPkBaNMA0AKlrHwTdEByZAA4GM+SNluSY6wAzcMNewxmgig5Ks0nkrSpBvSaQHMdKTBAnLojOdYyGpQ254602ZILPdTD1hdlggdIm74jbTp8vDwF5ZYUeLWGJpWsh6XNyXgcYwVoJQTEhhTYkxzZjiU5npU2TaB979TQehlaAVq4kaGpiPwwwLkYUuBbQwocyQTv1tA0+1UFWoJF3iv1oq+qoSk8EQdJmwHkziIF7oOZk14EGitibAdjLYYK78H5vZOhtWpoI0ATGHs0Q8OMb4Ey+2bU2UYztCtA0wFAs7TplGLRVQCcqaFdGSPCeTI1QNIC52iWNzof6Uib7xjEp07mNNoUYmVosVItHrHzRlLgBn9LFyRHaQCtVUMbtTNhoXWiTOO9k/V8BdAc1Oq0ArSQs6/5SU0hckNy9NnXqQY0PGYo5dWJ7nINaN6o958FWin27aBaWRka1r5myvLOAm0j30eBJqCxHLReVclxhxOEN2JfDWjxBtAC7MIH1fVaGdoOp4qJYDgKtKPSFNID2gSnGldrCqkFZ+5UeQXQBIRrSwocbdZYQT/2LwRahBPBXoHrB8nxaGROST62DKUbQOMMzZIC9abkuELfQzQALWTnDNAm8KHWFOJgJ5+SHIvTPcmx1xQyZRhNL5Qci689aXMEaN/uNIWkEwDAvFpOZmgsBaaGnbs1NPa1Jm32gBZAIh1pCtG7TSH4aE0y1uVY4uqoFPisGlpP2rSA5qTecWn5agK6BzSpgAyD+wFaqhnYoSZ1Vwr8CmlTQbrcO3ZaX0NAEyMbYaAlyquFoLKK3SPby9CeVUPThrSJmkCAE0CrKUQadi4DrdSlWhmah0YL9z9vClH59YGbHx1J8VZTyAjQepJjmXwAKTDQI3omc3p1U4gDUf6RfcdYfrUp5ClAi2J3Ba6UOXGo+K+bQrjjssitG2SJzshaLwMtXgRagUNpYYoVkMSBLM+9GGiJZMvduG6DRZ4qc04DMPtQQxOjEtACmhO7K1AbNbQDEggZyJwscFpAGwENhoBeUwh3bWolhe8BTYVKxQEWrSUn/uhcM5KhvUu/+eQu0Lzhi+VrK0PrZZNDQKs9cpYUuFYgMVpD4/NxenJTiMCNqdUEUf1qZWjppLT5qSkkUZbCwkbZMSuVnu80hfSkzRbQeqCZSAh6huR4VtoM2gHAlLf72smuWgE+VV7XpE25Ab2WFDgyhnSuKbs4GuGzCjR+tIoUuMFg3kgcWKLTwRqanJQ2W00hAsenfaApRC42hbCvK1SlE0HtE9BGgneJO+ELamitD1YjjOYnNYVcraGhtKkW0EqVVeDx733I2NH581k1NNxNLG0i0IJ8/NjVaOZ0tYZ2Vtr0Xv7tPV3hkWp9EFkgS/J0vosngTaSoaG06WHi+xObQkaAdlbanP8B2+2l0f90LmUAAAAASUVORK5CYII=)}.cm-s-neat span.cm-comment{color:#a86}.cm-s-neat span.cm-keyword{line-height:1em;font-weight:700;color:#00f}.cm-s-neat span.cm-string{color:#a22}.cm-s-neat span.cm-builtin{line-height:1em;font-weight:700;color:#077}.cm-s-neat span.cm-special{line-height:1em;font-weight:700;color:#0aa}.cm-s-neat span.cm-variable{color:#000}.cm-s-neat span.cm-atom,.cm-s-neat span.cm-number{color:#3a3}.cm-s-neat span.cm-meta{color:#555}.cm-s-neat span.cm-link{color:#3a3}.cm-s-neat .CodeMirror-activeline-background{background:#e8f2ff}.cm-s-neat .CodeMirror-matchingbracket{outline:1px solid grey;color:#000!important}.cm-s-rubyblue.CodeMirror{background:#112435;color:#fff}.cm-s-rubyblue div.CodeMirror-selected{background:#38566f}.cm-s-rubyblue .CodeMirror-line::selection,.cm-s-rubyblue .CodeMirror-line>span::selection,.cm-s-rubyblue .CodeMirror-line>span>span::selection{background:rgba(56,86,111,.99)}.cm-s-rubyblue .CodeMirror-line::-moz-selection,.cm-s-rubyblue .CodeMirror-line>span::-moz-selection,.cm-s-rubyblue .CodeMirror-line>span>span::-moz-selection{background:rgba(56,86,111,.99)}.cm-s-rubyblue .CodeMirror-gutters{background:#1f4661;border-right:7px solid #3e7087}.cm-s-rubyblue .CodeMirror-guttermarker{color:#fff}.cm-s-rubyblue .CodeMirror-guttermarker-subtle{color:#3e7087}.cm-s-rubyblue .CodeMirror-linenumber{color:#fff}.cm-s-rubyblue .CodeMirror-cursor{border-left:1px solid #fff}.cm-s-rubyblue span.cm-comment{color:#999;font-style:italic;line-height:1em}.cm-s-rubyblue span.cm-atom{color:#f4c20b}.cm-s-rubyblue span.cm-attribute,.cm-s-rubyblue span.cm-number{color:#82c6e0}.cm-s-rubyblue span.cm-keyword{color:#f0f}.cm-s-rubyblue span.cm-string{color:#f08047}.cm-s-rubyblue span.cm-meta{color:#f0f}.cm-s-rubyblue span.cm-tag,.cm-s-rubyblue span.cm-variable-2{color:#7bd827}.cm-s-rubyblue span.cm-def,.cm-s-rubyblue span.cm-type,.cm-s-rubyblue span.cm-variable-3{color:#fff}.cm-s-rubyblue span.cm-bracket{color:#f0f}.cm-s-rubyblue span.cm-link{color:#f4c20b}.cm-s-rubyblue span.CodeMirror-matchingbracket{color:#f0f!important}.cm-s-rubyblue span.cm-builtin,.cm-s-rubyblue span.cm-special{color:#ff9d00}.cm-s-rubyblue span.cm-error{color:#af2018}.cm-s-rubyblue .CodeMirror-activeline-background{background:#173047}.cm-s-seti.CodeMirror{background-color:#151718!important;color:#cfd2d1!important;border:none}.cm-s-seti .CodeMirror-gutters{color:#404b53;background-color:#0e1112;border:none}.cm-s-seti .CodeMirror-cursor{border-left:thin solid #f8f8f0}.cm-s-seti .CodeMirror-linenumber{color:#6d8a88}.cm-s-seti.CodeMirror-focused div.CodeMirror-selected{background:hsla(0,0%,100%,.1)}.cm-s-seti .CodeMirror-line::selection,.cm-s-seti .CodeMirror-line>span::selection,.cm-s-seti .CodeMirror-line>span>span::selection{background:hsla(0,0%,100%,.1)}.cm-s-seti .CodeMirror-line::-moz-selection,.cm-s-seti .CodeMirror-line>span::-moz-selection,.cm-s-seti .CodeMirror-line>span>span::-moz-selection{background:hsla(0,0%,100%,.1)}.cm-s-seti span.cm-comment{color:#41535b}.cm-s-seti span.cm-string,.cm-s-seti span.cm-string-2{color:#55b5db}.cm-s-seti span.cm-number{color:#cd3f45}.cm-s-seti span.cm-variable{color:#55b5db}.cm-s-seti span.cm-variable-2{color:#a074c4}.cm-s-seti span.cm-def{color:#55b5db}.cm-s-seti span.cm-keyword{color:#ff79c6}.cm-s-seti span.cm-operator{color:#9fca56}.cm-s-seti span.cm-keyword{color:#e6cd69}.cm-s-seti span.cm-atom{color:#cd3f45}.cm-s-seti span.cm-meta,.cm-s-seti span.cm-tag{color:#55b5db}.cm-s-seti span.cm-attribute,.cm-s-seti span.cm-qualifier{color:#9fca56}.cm-s-seti span.cm-property{color:#a074c4}.cm-s-seti span.cm-builtin,.cm-s-seti span.cm-type,.cm-s-seti span.cm-variable-3{color:#9fca56}.cm-s-seti .CodeMirror-activeline-background{background:#101213}.cm-s-seti .CodeMirror-matchingbracket{text-decoration:underline;color:#fff!important}.cm-s-darcula{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif}.cm-s-darcula.CodeMirror{background:#2b2b2b;color:#a9b7c6}.cm-s-darcula span.cm-meta{color:#bbb529}.cm-s-darcula span.cm-number{color:#6897bb}.cm-s-darcula span.cm-keyword{color:#cc7832;line-height:1em;font-weight:700}.cm-s-darcula span.cm-def{color:#a9b7c6;font-style:italic}.cm-s-darcula span.cm-variable,.cm-s-darcula span.cm-variable-2{color:#a9b7c6}.cm-s-darcula span.cm-variable-3{color:#9876aa}.cm-s-darcula span.cm-type{color:#abc;font-weight:700}.cm-s-darcula span.cm-property{color:#ffc66d}.cm-s-darcula span.cm-operator{color:#a9b7c6}.cm-s-darcula span.cm-string,.cm-s-darcula span.cm-string-2{color:#6a8759}.cm-s-darcula span.cm-comment{color:#61a151;font-style:italic}.cm-s-darcula span.cm-atom,.cm-s-darcula span.cm-link{color:#cc7832}.cm-s-darcula span.cm-error{color:#bc3f3c}.cm-s-darcula span.cm-tag{color:#629755;font-weight:700;font-style:italic;text-decoration:underline}.cm-s-darcula span.cm-attribute{color:#6897bb}.cm-s-darcula span.cm-qualifier{color:#6a8759}.cm-s-darcula span.cm-bracket{color:#a9b7c6}.cm-s-darcula span.cm-builtin,.cm-s-darcula span.cm-special{color:#ff9e59}.cm-s-darcula span.cm-matchhighlight{color:#fff;background-color:rgba(50,89,48,.7);font-weight:400}.cm-s-darcula span.cm-searching{color:#fff;background-color:rgba(61,115,59,.7);font-weight:400}.cm-s-darcula .CodeMirror-cursor{border-left:1px solid #a9b7c6}.cm-s-darcula .CodeMirror-activeline-background{background:#323232}.cm-s-darcula .CodeMirror-gutters{background:#313335;border-right:1px solid #313335}.cm-s-darcula .CodeMirror-guttermarker{color:#ffee80}.cm-s-darcula .CodeMirror-guttermarker-subtle{color:#d0d0d0}.cm-s-darcula .CodeMirrir-linenumber{color:#606366}.cm-s-darcula .CodeMirror-matchingbracket{background-color:#3b514d;color:#ffef28!important;font-weight:700}.cm-s-darcula div.CodeMirror-selected{background:#214283}.CodeMirror-hints.darcula{font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#9c9e9e;background-color:#3b3e3f!important}.CodeMirror-hints.darcula .CodeMirror-hint-active{background-color:#494d4e!important;color:#9c9e9e!important}.cm-s-idea span.cm-meta{color:olive}.cm-s-idea span.cm-number{color:#00f}.cm-s-idea span.cm-keyword{line-height:1em;font-weight:700;color:navy}.cm-s-idea span.cm-atom{font-weight:700;color:navy}.cm-s-idea span.cm-def,.cm-s-idea span.cm-operator,.cm-s-idea span.cm-property,.cm-s-idea span.cm-type,.cm-s-idea span.cm-variable,.cm-s-idea span.cm-variable-2,.cm-s-idea span.cm-variable-3{color:#000}.cm-s-idea span.cm-comment{color:grey}.cm-s-idea span.cm-string,.cm-s-idea span.cm-string-2{color:green}.cm-s-idea span.cm-qualifier{color:#555}.cm-s-idea span.cm-error{color:red}.cm-s-idea span.cm-attribute{color:#00f}.cm-s-idea span.cm-tag{color:navy}.cm-s-idea span.cm-link{color:#00f}.cm-s-idea .CodeMirror-activeline-background{background:#fffae3}.cm-s-idea span.cm-builtin{color:#30a}.cm-s-idea span.cm-bracket{color:#cc7}.cm-s-idea{font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif}.cm-s-idea .CodeMirror-matchingbracket{outline:1px solid grey;color:#000!important}.CodeMirror-hints.idea{font-family:Menlo,Monaco,Consolas,Courier New,monospace;color:#616569;background-color:#ebf3fd!important}.CodeMirror-hints.idea .CodeMirror-hint-active{background-color:#a2b8c9!important;color:#5c6065!important}.cm-s-the-matrix.CodeMirror{background:#000;color:#0f0}.cm-s-the-matrix div.CodeMirror-selected{background:#2d2d2d}.cm-s-the-matrix .CodeMirror-line::selection,.cm-s-the-matrix .CodeMirror-line>span::selection,.cm-s-the-matrix .CodeMirror-line>span>span::selection{background:rgba(45,45,45,.99)}.cm-s-the-matrix .CodeMirror-line::-moz-selection,.cm-s-the-matrix .CodeMirror-line>span::-moz-selection,.cm-s-the-matrix .CodeMirror-line>span>span::-moz-selection{background:rgba(45,45,45,.99)}.cm-s-the-matrix .CodeMirror-gutters{background:#060;border-right:2px solid #0f0}.cm-s-the-matrix .CodeMirror-guttermarker{color:#0f0}.cm-s-the-matrix .CodeMirror-guttermarker-subtle,.cm-s-the-matrix .CodeMirror-linenumber{color:#fff}.cm-s-the-matrix .CodeMirror-cursor{border-left:1px solid #0f0}.cm-s-the-matrix span.cm-keyword{color:#008803;font-weight:700}.cm-s-the-matrix span.cm-atom{color:#3ff}.cm-s-the-matrix span.cm-number{color:#ffb94f}.cm-s-the-matrix span.cm-def{color:#99c}.cm-s-the-matrix span.cm-variable{color:#f6c}.cm-s-the-matrix span.cm-variable-2{color:#c6f}.cm-s-the-matrix span.cm-type,.cm-s-the-matrix span.cm-variable-3{color:#96f}.cm-s-the-matrix span.cm-property{color:#62ffa0}.cm-s-the-matrix span.cm-operator{color:#999}.cm-s-the-matrix span.cm-comment{color:#ccc}.cm-s-the-matrix span.cm-string{color:#39c}.cm-s-the-matrix span.cm-meta{color:#c9f}.cm-s-the-matrix span.cm-qualifier{color:#fff700}.cm-s-the-matrix span.cm-builtin{color:#30a}.cm-s-the-matrix span.cm-bracket{color:#cc7}.cm-s-the-matrix span.cm-tag{color:#ffbd40}.cm-s-the-matrix span.cm-attribute{color:#fff700}.cm-s-the-matrix span.cm-error{color:red}.cm-s-the-matrix .CodeMirror-activeline-background{background:#040}.solarized.base03{color:#002b36}.solarized.base02{color:#073642}.solarized.base01{color:#586e75}.solarized.base00{color:#657b83}.solarized.base0{color:#839496}.solarized.base1{color:#93a1a1}.solarized.base2{color:#eee8d5}.solarized.base3{color:#fdf6e3}.solarized.solar-yellow{color:#b58900}.solarized.solar-orange{color:#cb4b16}.solarized.solar-red{color:#dc322f}.solarized.solar-magenta{color:#d33682}.solarized.solar-violet{color:#6c71c4}.solarized.solar-blue{color:#268bd2}.solarized.solar-cyan{color:#2aa198}.solarized.solar-green{color:#859900}.cm-s-solarized{line-height:1.45em;color-profile:sRGB;rendering-intent:auto}.cm-s-solarized.cm-s-dark{color:#839496;background-color:#002b36}.cm-s-solarized.cm-s-light{background-color:#fdf6e3;color:#657b83}.cm-s-solarized .CodeMirror-widget{text-shadow:none}.cm-s-solarized .cm-header{color:#586e75}.cm-s-solarized .cm-quote{color:#93a1a1}.cm-s-solarized .cm-keyword{color:#cb4b16}.cm-s-solarized .cm-atom,.cm-s-solarized .cm-number{color:#d33682}.cm-s-solarized .cm-def{color:#2aa198}.cm-s-solarized .cm-variable{color:#839496}.cm-s-solarized .cm-variable-2{color:#b58900}.cm-s-solarized .cm-type,.cm-s-solarized .cm-variable-3{color:#6c71c4}.cm-s-solarized .cm-property{color:#2aa198}.cm-s-solarized .cm-operator{color:#6c71c4}.cm-s-solarized .cm-comment{color:#586e75;font-style:italic}.cm-s-solarized .cm-string{color:#859900}.cm-s-solarized .cm-string-2{color:#b58900}.cm-s-solarized .cm-meta{color:#859900}.cm-s-solarized .cm-qualifier{color:#b58900}.cm-s-solarized .cm-builtin{color:#d33682}.cm-s-solarized .cm-bracket{color:#cb4b16}.cm-s-solarized .CodeMirror-matchingbracket{color:#859900}.cm-s-solarized .CodeMirror-nonmatchingbracket{color:#dc322f}.cm-s-solarized .cm-tag{color:#93a1a1}.cm-s-solarized .cm-attribute{color:#2aa198}.cm-s-solarized .cm-hr{color:transparent;border-top:1px solid #586e75;display:block}.cm-s-solarized .cm-link{color:#93a1a1;cursor:pointer}.cm-s-solarized .cm-special{color:#6c71c4}.cm-s-solarized .cm-em{color:#999;text-decoration:underline;-webkit-text-decoration-style:dotted;-moz-text-decoration-style:dotted;text-decoration-style:dotted}.cm-s-solarized .cm-error,.cm-s-solarized .cm-invalidchar{color:#586e75;border-bottom:1px dotted #dc322f}.cm-s-solarized.cm-s-dark div.CodeMirror-selected{background:#073642}.cm-s-solarized.cm-s-dark.CodeMirror ::-moz-selection{background:rgba(7,54,66,.99)}.cm-s-solarized.cm-s-dark.CodeMirror ::selection{background:rgba(7,54,66,.99)}.cm-s-dark .CodeMirror-line>span::-moz-selection,.cm-s-dark .CodeMirror-line>span>span::-moz-selection,.cm-s-solarized.cm-s-dark .CodeMirror-line::-moz-selection{background:rgba(7,54,66,.99)}.cm-s-solarized.cm-s-light div.CodeMirror-selected{background:#eee8d5}.cm-s-light .CodeMirror-line>span::selection,.cm-s-light .CodeMirror-line>span>span::selection,.cm-s-solarized.cm-s-light .CodeMirror-line::selection{background:#eee8d5}.cm-s-light .CodeMirror-line>span::-moz-selection,.cm-s-light .CodeMirror-line>span>span::-moz-selection,.cm-s-solarized.cm-s-light .CodeMirror-line::-moz-selection{background:#eee8d5}.cm-s-solarized.CodeMirror{-webkit-box-shadow:inset 7px 0 12px -6px #000;box-shadow:inset 7px 0 12px -6px #000}.cm-s-solarized .CodeMirror-gutters{border-right:0}.cm-s-solarized.cm-s-dark .CodeMirror-gutters{background-color:#073642}.cm-s-solarized.cm-s-dark .CodeMirror-linenumber{color:#586e75}.cm-s-solarized.cm-s-light .CodeMirror-gutters{background-color:#eee8d5}.cm-s-solarized.cm-s-light .CodeMirror-linenumber{color:#839496}.cm-s-solarized .CodeMirror-linenumber{padding:0 5px}.cm-s-solarized .CodeMirror-guttermarker-subtle{color:#586e75}.cm-s-solarized.cm-s-dark .CodeMirror-guttermarker{color:#ddd}.cm-s-solarized.cm-s-light .CodeMirror-guttermarker{color:#cb4b16}.cm-s-solarized .CodeMirror-gutter .CodeMirror-gutter-text{color:#586e75}.cm-s-solarized .CodeMirror-cursor{border-left:1px solid #819090}.cm-s-solarized.cm-s-light.cm-fat-cursor .CodeMirror-cursor{background:#7e7}.cm-s-solarized.cm-s-light .cm-animate-fat-cursor{background-color:#7e7}.cm-s-solarized.cm-s-dark.cm-fat-cursor .CodeMirror-cursor{background:#586e75}.cm-s-solarized.cm-s-dark .cm-animate-fat-cursor{background-color:#586e75}.cm-s-solarized.cm-s-dark .CodeMirror-activeline-background{background:hsla(0,0%,100%,.06)}.cm-s-solarized.cm-s-light .CodeMirror-activeline-background{background:rgba(0,0,0,.06)} /*# sourceMappingURL=chunk-vendors.css.map */ \ No newline at end of file diff --git a/docs/demo/assets/css/chunk-vendors.css.map b/docs/demo/assets/css/chunk-vendors.css.map index 778efb8..2da5ba7 100644 --- a/docs/demo/assets/css/chunk-vendors.css.map +++ b/docs/demo/assets/css/chunk-vendors.css.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///node_modules/codemirror/addon/fold/foldgutter.css","webpack:///node_modules/codemirror/lib/codemirror.css","webpack:///node_modules/@jhuix/showdowns/dist/showdowns.min.css","webpack:///node_modules/codemirror/theme/lesser-dark.css","webpack:///node_modules/codemirror/theme/mdn-like.css","webpack:///node_modules/codemirror/theme/neat.css","webpack:///node_modules/codemirror/theme/rubyblue.css","webpack:///node_modules/codemirror/theme/seti.css","webpack:///node_modules/codemirror/theme/darcula.css","webpack:///node_modules/codemirror/theme/idea.css","webpack:///node_modules/codemirror/theme/the-matrix.css","webpack:///node_modules/codemirror/theme/solarized.css"],"names":[],"mappings":"AAAA,uBACE,UAAW,CACX,mFAAuF,CACvF,iBAAkB,CAClB,cAAe,CACf,cACF,CACA,uBACE,UACF,CACA,0DAEE,cACF,CACA,kCACE,eACF,CACA,oCACE,eACF,CCjBA,YAEE,qBAAsB,CACtB,YAAa,CACb,UAAY,CACZ,aACF,CAIA,kBACE,aACF,CACA,qEAEE,aACF,CAEA,uDACE,qBACF,CAIA,oBACE,2BAA4B,CAC5B,wBAAyB,CACzB,kBACF,CAEA,uBACE,mBAAoB,CACpB,cAAe,CACf,gBAAiB,CACjB,UAAW,CACX,kBACF,CAEA,yBAA2B,UAAc,CACzC,gCAAkC,UAAa,CAI/C,mBACE,0BAA4B,CAC5B,iBAAkB,CAClB,OACF,CAEA,2CACE,4BACF,CACA,kCACE,UAAW,CACX,kBAAoB,CACpB,eACF,CACA,sCACE,SACF,CACA,oBACE,mCAIF,CACA,2CAJE,+CAAgD,CAEhD,uCASF,CAPA,uBACE,UAAW,CACX,QAAS,CAIT,qBACF,CAMA,yBAEE,IAAM,8BAA+B,CAEvC,CACA,iBAEE,IAAM,8BAA+B,CAEvC,CAKA,QAAU,oBAAqB,CAAE,uBAA0B,CAE3D,mBACE,iBAAkB,CAClB,MAAO,CAAE,OAAQ,CAAE,SAAU,CAAE,QAAS,CACxC,eACF,CACA,kBACE,0BAA2B,CAC3B,KAAM,CAAE,QAAS,CACjB,iBACF,CAIA,yBAA0B,UAAY,CACtC,wBAAyB,UAAY,CACrC,aAAc,UAAY,CAC1B,aAAc,UAAY,CAC1B,sBAAwB,eAAkB,CAC1C,OAAQ,iBAAmB,CAC3B,SAAU,yBAA2B,CACrC,kBAAmB,4BAA8B,CAEjD,0BAA2B,UAAY,CACvC,uBAAwB,UAAY,CACpC,yBAA0B,UAAY,CACtC,sBAAuB,UAAY,CAKnC,6BAA8B,UAAY,CAC1C,oDAAsD,UAAY,CAClE,0BAA2B,UAAY,CACvC,yBAA0B,UAAY,CACtC,2BAA4B,UAAY,CAExC,mDAA6B,UAAY,CACzC,0BAA2B,UAAY,CACvC,0BAA2B,UAAY,CACvC,sBAAuB,UAAY,CACnC,4BAA6B,UAAY,CACzC,qBAAsB,UAAY,CAClC,uBAAwB,UAAY,CAGpC,wCAAiB,SAAY,CAE7B,sBAAwB,uBAA0B,CAIlD,+CAAgD,UAAY,CAC5D,kDAAmD,UAAY,CAC/D,wBAA0B,6BAAmC,CAC7D,kCAAmC,kBAAoB,CAOvD,YACE,iBAAkB,CAClB,eAAgB,CAChB,eACF,CAEA,mBACE,yBAA2B,CAG3B,mBAAoB,CAAE,kBAAmB,CACzC,mBAAoB,CACpB,WAAY,CACZ,YAAa,CACb,iBACF,CACA,kBACE,iBAAkB,CAClB,qCACF,CAKA,qGACE,iBAAkB,CAClB,SAAU,CACV,YAAa,CACb,YACF,CACA,uBACE,OAAQ,CAAE,KAAM,CAChB,iBAAkB,CAClB,iBACF,CACA,uBACE,QAAS,CAAE,MAAO,CAClB,iBAAkB,CAClB,iBACF,CACA,6BACE,OAAQ,CAAE,QACZ,CACA,0BACE,MAAO,CAAE,QACX,CAEA,oBACE,iBAAkB,CAAE,MAAO,CAAE,KAAM,CACnC,eAAgB,CAChB,SACF,CACA,mBACE,kBAAmB,CACnB,WAAY,CACZ,oBAAqB,CACrB,kBAAmB,CACnB,mBACF,CACA,2BACE,iBAAkB,CAClB,SAAU,CACV,yBAA2B,CAC3B,qBACF,CACA,8BACE,iBAAkB,CAClB,KAAM,CAAE,QAAS,CACjB,SACF,CACA,uBACE,iBAAkB,CAClB,cAAe,CACf,SACF,CACA,uCAAyC,8BAA8B,CACvE,4CAA8C,8BAA8B,CAE5E,kBACE,WAAY,CACZ,cACF,CACA,qEAGmD,eAAgB,CACjE,cAAe,CACf,wBAAuB,CACvB,mBAAoB,CACpB,iBAAkB,CAClB,QAAS,CACT,eAAgB,CAChB,gBAAiB,CACjB,mBAAoB,CACpB,aAAc,CACd,SAAU,CACV,iBAAkB,CAClB,gBAAiB,CACjB,uCAAwC,CACxC,yCAA0C,CAC1C,sCAAkC,CAAlC,iCACF,CACA,+EAEE,oBAAqB,CACrB,oBAAqB,CACrB,iBACF,CAEA,2BACE,iBAAkB,CAClB,MAAO,CAAE,OAAQ,CAAE,KAAM,CAAE,QAAS,CACpC,SACF,CAEA,uBACE,iBAAkB,CAClB,SAAU,CACV,YACF,CAIA,oBAAsB,aAAgB,CAEtC,iBACE,YACF,CAGA,mGAKE,2BAA4B,CAC5B,8BAAuB,CAAvB,sBACF,CAEA,oBACE,iBAAkB,CAClB,UAAW,CACX,QAAS,CACT,eAAgB,CAChB,iBACF,CAEA,mBACE,iBAAkB,CAClB,mBACF,CACA,wBAA0B,eAAkB,CAE5C,uBACE,iBAAkB,CAClB,iBAAkB,CAClB,SACF,CAKA,sEACE,kBACF,CAEA,qBAAuB,kBAAqB,CAC5C,yCAA2C,kBAAqB,CAChE,sBAAwB,gBAAmB,CAC3C,mGAA6G,kBAAqB,CAClI,kHAA4H,kBAAqB,CAEjJ,cACE,qBAAsB,CACtB,mCACF,CAGA,iBAAmB,kBAAqB,CAExC,aAEE,mCACE,iBACF,CACF,CAGA,wBAA0B,UAAa,CAGvC,6BAA+B,eAAkB;;AC7VjD;;;;EAIE,CAAC,qRAAqR,QAAQ,CAAC,SAAS,CAAC,oPAAoP,gBAAgB,CAAC,6PAA6P,iBAAiB,CAAC,aAAa,aAAa,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,iBAAiB,WAAW,CAAC,mBAAmB,cAAc,CAAC,yBAAyB,CAAC,eAAe,cAAc,CAAC,WAAW,CAAC,aAAa,CAAC,eAAe,CAAC,8BAA8B,CAAC,aAAa,mBAAmB,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,kBAAkB,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,oFAAoF,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,iCAAiC,CAAC,wHAAwH,aAAa,CAAC,aAAa,CAAC,4BAA4B,mBAAmB,CAAC,+BAA+B,CAAC,cAAc,aAAa,CAAC,cAAc,eAAe,CAAC,cAAc,gBAAgB,CAAC,cAAc,aAAa,CAAC,cAAc,gBAAgB,CAAC,cAAc,eAAe,CAAC,aAAa,CAAC,sBAAsB,eAAe,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,kBAAkB,CAAC,cAAc,iBAAiB,CAAC,oBAAoB,CAAC,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,2BAA2B,iBAAiB,CAAC,mBAAmB,CAAC,+BAA+B,eAAe,CAAC,mBAAmB,CAAC,iBAAiB,aAAa,CAAC,mBAAmB,CAAC,gBAAgB,kBAAkB,CAAC,gBAAgB,CAAC,2EAA2E,CAAC,eAAe,CAAC,8BAA8B,CAAC,0CAA0C,mBAAmB,CAAC,aAAa,CAAC,eAAe,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,cAAc,iBAAiB,CAAC,wBAAwB,aAAa,CAAC,4DAA4D,kBAAkB,CAAC,eAAe,CAAC,eAAe,CAAC,wCAAwC,kBAAkB,CAAC,eAAe,CAAC,+EAA+E,kBAAkB,CAAC,qBAAqB,sBAAsB,CAAC,iBAAiB,CAAC,qBAAqB,sBAAsB,CAAC,iBAAiB,CAAC,mBAAmB,oBAAoB,CAAC,iBAAiB,CAAC,wBAAwB,eAAe,CAAC,cAAc,iBAAiB,CAAC,wCAAwC,kBAAkB,CAAC,eAAe,CAAC,iBAAiB,kBAAkB,CAAC,eAAe,CAAC,iBAAiB,mBAAmB,CAAC,mCAAmC,wBAAwB,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,mBAAmB,CAAC,uBAAuB,gCAAgC,CAAC,sBAAsB,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,6BAA6B,CAAC,2BAA2B,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,kCAAkC,qBAAqB,CAAC,kEAAkE,UAAU,CAAC,eAAe,oBAAoB,CAAC,yBAAyB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,oBAAoB,8BAA4B,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,eAAe,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,aAAa,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,yBAAyB,wBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,kBAAkB,CAAC,0DAA0D,UAAU,CAAC,eAAe,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,uBAAuB,kBAAkB,CAAC,0DAA0D,UAAU,CAAC,eAAe,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,8CAA8C,UAAU,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,qFAAqF,kBAAkB,CAAC,0DAA0D,mBAAmB,CAAC,wBAAwB,CAAC,0HAA0H,wBAAwB,CAAC,4EAA4E,WAAW,CAAC,eAAe,CAAC,2EAA2E,uBAAuB,CAAC,eAAe,CAAC,sCAAsC,WAAW,CAAC,aAAa,CAAC,qCAAqC,uBAAuB,CAAC,aAAa,CAAC,gSAAgS,gBAAgB,CAAC,wLAAwL,iBAAiB,CAAC,oLAAoL,gBAAgB;;AAE/uM;;;;EAIE,CAAC,+BAA+B,iBAAiB,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,yCAAyC,wBAAwB,CAAC,yBAAyB,CAAC,6CAA6C,yBAAyB,CAAC,0BAA0B,CAAC,8CAA8C,yBAAyB,CAAC,0BAA0B,CAAC,iDAAiD,yBAAyB,CAAC,0BAA0B,CAAC,+CAA+C,yBAAyB,CAAC,0BAA0B,CAAC,iDAAiD,yBAAyB,CAAC,0BAA0B,CAAC,qCAAqC,8BAA4B,CAAC,8BAAqB,CAArB,sBAAsB,CAAC,+CAA+C,wBAAwB,CAAC,gDAAgD,wBAAwB,CAAC,mDAAmD,wBAAwB,CAAC,iDAAiD,wBAAwB,CAAC,mDAAmD,wBAAwB,CAAC,gDAAgD,iBAAiB,CAAC,eAAe,CAAC,eAAe,CCNvwC,kBACE,iBACF,CACA,6BAA+B,kBAAmB,CAAE,aAAc,CAAE,8BAAiC,CACrG,0CAA4C,kBAAqB,CACjE,yJAAmK,6BAAmC,CACtM,wKAAkL,6BAAmC,CACrN,qCAAuC,0BAA8B,CACrE,sBAAwB,aAAgB,CAExC,6DAA+D,aAAgB,CAE/E,sCAAwC,kBAAmB,CAAE,2BAA6B,CAC1F,2CAA6C,aAAgB,CAE7D,2FAA2C,UAAa,CAExD,iCAAmC,UAAa,CAChD,gCAAkC,UAAa,CAC/C,kCAAoC,aAAgB,CACpD,+BAAiC,aAAgB,CACjD,iCAAmC,aAAgB,CACnD,8BAAgC,UAAc,CAC9C,mCAAqC,aAAe,CACpD,qCAAuC,aAAgB,CACvD,oEAAuE,UAAc,CAErF,sEAAqC,aAAgB,CACrD,kCAAoC,UAAa,CACjD,iCAAmC,aAAgB,CACnD,mCAAqC,UAAa,CAClD,+BAAiC,aAAgB,CACjD,oCAAsC,UAAa,CACnD,kCAAoC,aAAgB,CACpD,kCAAoC,aAAgB,CACpD,8BAAgC,aAAgB,CAChD,oCAAsC,aAAgB,CACtD,6BAA+B,UAAa,CAC5C,+BAAiC,aAAgB,CACjD,gCAAkC,aAAgB,CAElD,oDAAsD,kBAAqB,CAC3E,8CAAgD,sBAAsB,CAAE,oBAAwB,CCrChG,0BAA4B,UAAW,CAAE,qBAAwB,CACjE,uCAAyC,eAAkB,CAC3D,gJAA0J,eAAkB,CAC5K,+JAAyK,eAAkB,CAE3L,mCAAqC,kBAAmB,CAAE,wCAA0C,CAAE,UAAa,CACnH,sCAAwC,UAAW,CAAE,gBAAmB,CACxE,kCAAoC,0BAA6B,CAEjE,2BAA6B,aAAgB,CAC7C,wBAA0B,UAAa,CACvC,0BAA4B,aAAiB,CAC7C,uBAAyB,aAAgB,CACzC,6DAAgE,UAAa,CAG7E,qHAA8B,UAAa,CAC3C,4BAA8B,UAAa,CAC3C,6BAA+B,UAAa,CAE5C,4BAA8B,aAAgB,CAC9C,2BAA6B,UAAU,CAAE,eAAoB,CAC7D,0BAA4B,UAAU,CAAE,iBAAmB,CAC3D,4BAA8B,aAAe,CAC7C,wBAA0B,UAAa,CACvC,2BAA6B,aAAgB,CAC7C,uBAAyB,aAAgB,CACzC,6BAA+B,aAAgB,CAC/C,0BAA4B,aAAgB,CAC5C,sBAAwB,aAAgB,CACxC,wBAA0B,aAAa,CAAE,iBAAiB,CAAE,oBAAsB,CAClF,yBAA2B,2BAA8B,CAEzD,oDAAsD,kBAAqB,CAC3E,kDAAoD,sBAAsB,CAAE,aAAgB,CAE5F,0BAA4B,4sFAA+sF,CC7C3uF,2BAA6B,UAAa,CAC1C,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,0BAA4B,UAAa,CACzC,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,4BAA8B,UAAc,CAC5C,kDAAqD,UAAa,CAClE,wBAA0B,UAAa,CACvC,wBAA0B,UAAa,CAEvC,6CAA+C,kBAAqB,CACpE,uCAAyC,sBAAsB,CAAE,oBAAwB,CCXzF,0BAA4B,kBAAmB,CAAE,UAAc,CAC/D,uCAAyC,kBAAqB,CAC9D,gJAA0J,8BAAqC,CAC/L,+JAAyK,8BAAqC,CAC9M,mCAAqC,kBAAmB,CAAE,8BAAiC,CAC3F,wCAA0C,UAAc,CACxD,+CAAiD,aAAgB,CACjE,sCAAwC,UAAc,CACtD,kCAAoC,0BAA8B,CAElE,+BAAiC,UAAW,CAAE,iBAAiB,CAAE,eAAkB,CACnF,4BAA8B,aAAgB,CAC9C,+DAAkE,aAAgB,CAClF,+BAAiC,UAAa,CAC9C,8BAAgC,aAAgB,CAChD,4BAA8B,UAAa,CAC3C,6DAAgE,aAAgB,CAChF,yFAA6F,UAAc,CAC3G,+BAAiC,UAAa,CAC9C,4BAA8B,aAAgB,CAC9C,+CAAiD,oBAAuB,CACxE,8DAAiE,aAAgB,CACjF,6BAA+B,aAAgB,CAE/C,iDAAmD,kBAAqB,CCdxE,sBACE,kCAAoC,CACpC,uBAAyB,CACzB,WACF,CACA,+BACE,aAAc,CACd,wBAAyB,CACzB,WACF,CACA,8BAAgC,8BAAiC,CACjE,kCAAoC,aAAgB,CACpD,sDAAwD,6BAAuC,CAC/F,oIAA8I,6BAAuC,CACrL,mJAA6J,6BAAuC,CACpM,2BAA6B,aAAgB,CAC7C,sDAAyD,aAAgB,CACzE,0BAA4B,aAAgB,CAC5C,4BAA8B,aAAgB,CAC9C,8BAAgC,aAAgB,CAChD,uBAAyB,aAAgB,CACzC,2BAA6B,aAAgB,CAC7C,4BAA8B,aAAgB,CAC9C,2BAA6B,aAAgB,CAC7C,wBAA0B,aAAgB,CAE1C,+CAAyB,aAAgB,CAEzC,0DAA+B,aAAgB,CAC/C,4BAA8B,aAAgB,CAE9C,iFAA6B,aAAgB,CAC7C,6CAA+C,kBAAqB,CACpE,uCAAyC,yBAA0B,CAAE,oBAAyB,CCtC9F,cAAiB,sIAA2J,CAC5K,yBAA2B,kBAAmB,CAAE,aAAgB,CAEhE,2BAA6B,aAAgB,CAC7C,6BAA+B,aAAgB,CAC/C,8BAAgC,aAAc,CAAE,eAAgB,CAAE,eAAmB,CACrF,0BAA4B,aAAc,CAAE,iBAAoB,CAEhE,gEAAmC,aAAgB,CACnD,iCAAmC,aAAgB,CACnD,2BAA6B,UAAc,CAAE,eAAmB,CAChE,+BAAiC,aAAgB,CACjD,+BAAiC,aAAgB,CAEjD,4DAAiC,aAAgB,CACjD,8BAAgC,aAAc,CAAE,iBAAoB,CAEpE,sDAA6B,aAAgB,CAC7C,4BAA8B,aAAgB,CAC9C,0BAA4B,aAAc,CAAE,eAAiB,CAAE,iBAAkB,CAAE,yBAA4B,CAC/G,gCAAkC,aAAgB,CAClD,gCAAkC,aAAgB,CAClD,8BAAgC,aAAgB,CAEhD,4DAAgC,aAAgB,CAChD,qCAAuC,UAAc,CAAE,kCAAsC,CAAE,eAAoB,CACnH,gCAAkC,UAAc,CAAE,mCAAuC,CAAE,eAAoB,CAE/G,iCAAmC,6BAAgC,CACnE,gDAAkD,kBAAqB,CACvE,kCAAoC,kBAAmB,CAAE,8BAAiC,CAC1F,uCAAyC,aAAgB,CACzD,8CAAgD,aAAgB,CAChE,qCAAuC,aAAgB,CACvD,0CAA4C,wBAAyB,CAAE,uBAAyB,CAAE,eAAmB,CAErH,sCAAwC,kBAAqB,CAE7D,0BACE,uDAA8D,CAC9D,aAAc,CACd,kCACF,CAEA,kDACE,kCAAoC,CACpC,uBACF,CC/CA,wBAA0B,WAAgB,CAC1C,0BAA4B,UAAgB,CAC5C,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAgB,CAClF,wBAA0B,eAAiB,CAAE,UAAgB,CAM7D,+LAA8B,UAAc,CAC5C,2BAA6B,UAAgB,CAE7C,sDAA8B,WAAgB,CAC9C,6BAA+B,UAAa,CAC5C,yBAA2B,SAAgB,CAC3C,6BAA+B,UAAgB,CAC/C,uBAAyB,UAAgB,CACzC,wBAA0B,UAAgB,CAC1C,6CAA+C,kBAAqB,CAEpE,2BAA6B,UAAa,CAC1C,2BAA6B,UAAa,CAC1C,WAAc,sIAAiJ,CAG/J,uCAAyC,sBAAsB,CAAE,oBAAwB,CAEzF,uBACE,uDAA8D,CAC9D,aAAc,CACd,kCACF,CAEA,+CACE,kCAAoC,CACpC,uBACF,CCzCA,4BAA8B,eAAmB,CAAE,UAAgB,CACnE,yCAA2C,kBAAqB,CAChE,sJAAgK,6BAAoC,CACpM,qKAA+K,6BAAoC,CACnN,qCAAuC,eAAgB,CAAE,2BAAiC,CAC1F,0CAA4C,UAAa,CAEzD,yFAA0C,UAAgB,CAC1D,oCAAsC,0BAAgC,CAEtE,iCAAmC,aAAc,CAAE,eAAmB,CACtE,8BAAgC,UAAa,CAC7C,gCAAkC,aAAgB,CAClD,6BAA+B,UAAa,CAC5C,kCAAoC,UAAa,CACjD,oCAAsC,UAAa,CACnD,kEAAqE,UAAa,CAClF,kCAAoC,aAAgB,CACpD,kCAAoC,UAAa,CACjD,iCAAmC,UAAgB,CACnD,gCAAkC,UAAa,CAC/C,8BAAgC,UAAa,CAC7C,mCAAqC,aAAgB,CACrD,iCAAmC,UAAa,CAChD,iCAAmC,UAAa,CAChD,6BAA+B,aAAgB,CAC/C,mCAAqC,aAAgB,CACrD,+BAAiC,SAAgB,CAEjD,mDAAqD,eAAkB,CCnBvE,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,iBAAmB,aAAgB,CACnC,iBAAmB,aAAgB,CACnC,iBAAmB,aAAgB,CACnC,iBAAoB,aAAgB,CACpC,wBAA2B,aAAgB,CAC3C,wBAA2B,aAAgB,CAC3C,qBAAuB,aAAgB,CACvC,yBAA2B,aAAgB,CAC3C,wBAA2B,aAAgB,CAC3C,sBAAwB,aAAgB,CACxC,sBAAwB,aAAgB,CACxC,uBAAyB,aAAgB,CAIzC,gBACE,kBAAmB,CACnB,kBAAmB,CACnB,qBACF,CACA,0BACE,aAAc,CACd,wBAAyB,CACzB,yBACF,CACA,2BACE,wBAAyB,CACzB,aAAc,CACd,yBACF,CAEA,mCACE,gBACF,CAEA,2BAA6B,aAAgB,CAC7C,0BAA4B,aAAgB,CAE5C,4BAA8B,aAAgB,CAE9C,oDAA6B,aAAgB,CAC7C,wBAA0B,aAAgB,CAE1C,6BAA+B,aAAgB,CAC/C,+BAAiC,aAAgB,CACjD,wDAA2D,aAAgB,CAE3E,6BAA+B,aAAgB,CAC/C,6BAA+B,aAAgB,CAE/C,4BAA8B,aAAc,CAAE,iBAAmB,CAEjE,2BAA6B,aAAgB,CAC7C,6BAA+B,aAAgB,CAE/C,yBAA2B,aAAgB,CAC3C,8BAAgC,aAAgB,CAChD,4BAA8B,aAAgB,CAC9C,4BAA8B,aAAgB,CAC9C,4CAA8C,aAAgB,CAC9D,+CAAiD,aAAgB,CACjE,wBAA0B,aAAgB,CAC1C,8BAAgC,aAAgB,CAChD,uBACE,mBAAkB,CAClB,4BAA6B,CAC7B,aACF,CACA,yBAA2B,aAAc,CAAE,cAAiB,CAC5D,4BAA8B,aAAgB,CAC9C,uBACE,UAAW,CACX,yBAA0B,CAC1B,oCAA6B,CAA7B,iCAA6B,CAA7B,4BACF,CACA,0DAEE,aAAc,CACd,gCACF,CAEA,kDAAoD,kBAAqB,CACzE,sDAAmD,4BAAmC,CAAtF,iDAAmD,4BAAmC,CACtF,kKAA4K,4BAAmC,CAE/M,mDAAqD,kBAAqB,CAC1E,qKAAgK,kBAAqB,CAArL,sJAAgK,kBAAqB,CACrL,mKAA6K,kBAAqB,CAOlM,2BAEE,6CAA8C,CAC9C,qCACF,CAGA,oCACE,cACF,CAKA,8CACE,wBACF,CAEA,iDACE,aAAc,CACd,0BACF,CAGA,+CACE,wBACF,CAEA,kDACE,aACF,CAGA,uCACE,aACF,CACA,gDAAkD,aAAgB,CAClE,mDAAqD,UAAa,CAClE,oDAAsD,aAAgB,CAEtE,2DACE,aACF,CAGA,mCAAqC,6BAAgC,CAGrE,4DAA8D,eAAqB,CACnF,kDAAoD,qBAA2B,CAC/E,2DAA6D,kBAAqB,CAClF,iDAAmD,wBAA2B,CAG9E,4DACE,8BACF,CACA,6DACE,0BACF","file":"chunk-vendors.css","sourcesContent":[".CodeMirror-foldmarker {\n color: blue;\n text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;\n font-family: arial;\n line-height: .3;\n cursor: pointer;\n}\n.CodeMirror-foldgutter {\n width: .7em;\n}\n.CodeMirror-foldgutter-open,\n.CodeMirror-foldgutter-folded {\n cursor: pointer;\n}\n.CodeMirror-foldgutter-open:after {\n content: \"\\25BE\";\n}\n.CodeMirror-foldgutter-folded:after {\n content: \"\\25B8\";\n}\n","/* BASICS */\n\n.CodeMirror {\n /* Set height, width, borders, and global font properties here */\n font-family: monospace;\n height: 300px;\n color: black;\n direction: ltr;\n}\n\n/* PADDING */\n\n.CodeMirror-lines {\n padding: 4px 0; /* Vertical padding around content */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n padding: 0 4px; /* Horizontal padding of content */\n}\n\n.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n background-color: white; /* The little square between H and V scrollbars */\n}\n\n/* GUTTER */\n\n.CodeMirror-gutters {\n border-right: 1px solid #ddd;\n background-color: #f7f7f7;\n white-space: nowrap;\n}\n.CodeMirror-linenumbers {}\n.CodeMirror-linenumber {\n padding: 0 3px 0 5px;\n min-width: 20px;\n text-align: right;\n color: #999;\n white-space: nowrap;\n}\n\n.CodeMirror-guttermarker { color: black; }\n.CodeMirror-guttermarker-subtle { color: #999; }\n\n/* CURSOR */\n\n.CodeMirror-cursor {\n border-left: 1px solid black;\n border-right: none;\n width: 0;\n}\n/* Shown when moving in bi-directional text */\n.CodeMirror div.CodeMirror-secondarycursor {\n border-left: 1px solid silver;\n}\n.cm-fat-cursor .CodeMirror-cursor {\n width: auto;\n border: 0 !important;\n background: #7e7;\n}\n.cm-fat-cursor div.CodeMirror-cursors {\n z-index: 1;\n}\n.cm-fat-cursor-mark {\n background-color: rgba(20, 255, 20, 0.5);\n -webkit-animation: blink 1.06s steps(1) infinite;\n -moz-animation: blink 1.06s steps(1) infinite;\n animation: blink 1.06s steps(1) infinite;\n}\n.cm-animate-fat-cursor {\n width: auto;\n border: 0;\n -webkit-animation: blink 1.06s steps(1) infinite;\n -moz-animation: blink 1.06s steps(1) infinite;\n animation: blink 1.06s steps(1) infinite;\n background-color: #7e7;\n}\n@-moz-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@-webkit-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n\n/* Can style cursor different in overwrite (non-insert) mode */\n.CodeMirror-overwrite .CodeMirror-cursor {}\n\n.cm-tab { display: inline-block; text-decoration: inherit; }\n\n.CodeMirror-rulers {\n position: absolute;\n left: 0; right: 0; top: -50px; bottom: 0;\n overflow: hidden;\n}\n.CodeMirror-ruler {\n border-left: 1px solid #ccc;\n top: 0; bottom: 0;\n position: absolute;\n}\n\n/* DEFAULT THEME */\n\n.cm-s-default .cm-header {color: blue;}\n.cm-s-default .cm-quote {color: #090;}\n.cm-negative {color: #d44;}\n.cm-positive {color: #292;}\n.cm-header, .cm-strong {font-weight: bold;}\n.cm-em {font-style: italic;}\n.cm-link {text-decoration: underline;}\n.cm-strikethrough {text-decoration: line-through;}\n\n.cm-s-default .cm-keyword {color: #708;}\n.cm-s-default .cm-atom {color: #219;}\n.cm-s-default .cm-number {color: #164;}\n.cm-s-default .cm-def {color: #00f;}\n.cm-s-default .cm-variable,\n.cm-s-default .cm-punctuation,\n.cm-s-default .cm-property,\n.cm-s-default .cm-operator {}\n.cm-s-default .cm-variable-2 {color: #05a;}\n.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}\n.cm-s-default .cm-comment {color: #a50;}\n.cm-s-default .cm-string {color: #a11;}\n.cm-s-default .cm-string-2 {color: #f50;}\n.cm-s-default .cm-meta {color: #555;}\n.cm-s-default .cm-qualifier {color: #555;}\n.cm-s-default .cm-builtin {color: #30a;}\n.cm-s-default .cm-bracket {color: #997;}\n.cm-s-default .cm-tag {color: #170;}\n.cm-s-default .cm-attribute {color: #00c;}\n.cm-s-default .cm-hr {color: #999;}\n.cm-s-default .cm-link {color: #00c;}\n\n.cm-s-default .cm-error {color: #f00;}\n.cm-invalidchar {color: #f00;}\n\n.CodeMirror-composing { border-bottom: 2px solid; }\n\n/* Default styles for common addons */\n\ndiv.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}\ndiv.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}\n.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }\n.CodeMirror-activeline-background {background: #e8f2ff;}\n\n/* STOP */\n\n/* The rest of this file contains styles related to the mechanics of\n the editor. You probably shouldn't touch them. */\n\n.CodeMirror {\n position: relative;\n overflow: hidden;\n background: white;\n}\n\n.CodeMirror-scroll {\n overflow: scroll !important; /* Things will break if this is overridden */\n /* 50px is the magic margin used to hide the element's real scrollbars */\n /* See overflow: hidden in .CodeMirror */\n margin-bottom: -50px; margin-right: -50px;\n padding-bottom: 50px;\n height: 100%;\n outline: none; /* Prevent dragging from highlighting the element */\n position: relative;\n}\n.CodeMirror-sizer {\n position: relative;\n border-right: 50px solid transparent;\n}\n\n/* The fake, visible scrollbars. Used to force redraw during scrolling\n before actual scrolling happens, thus preventing shaking and\n flickering artifacts. */\n.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n position: absolute;\n z-index: 6;\n display: none;\n outline: none;\n}\n.CodeMirror-vscrollbar {\n right: 0; top: 0;\n overflow-x: hidden;\n overflow-y: scroll;\n}\n.CodeMirror-hscrollbar {\n bottom: 0; left: 0;\n overflow-y: hidden;\n overflow-x: scroll;\n}\n.CodeMirror-scrollbar-filler {\n right: 0; bottom: 0;\n}\n.CodeMirror-gutter-filler {\n left: 0; bottom: 0;\n}\n\n.CodeMirror-gutters {\n position: absolute; left: 0; top: 0;\n min-height: 100%;\n z-index: 3;\n}\n.CodeMirror-gutter {\n white-space: normal;\n height: 100%;\n display: inline-block;\n vertical-align: top;\n margin-bottom: -50px;\n}\n.CodeMirror-gutter-wrapper {\n position: absolute;\n z-index: 4;\n background: none !important;\n border: none !important;\n}\n.CodeMirror-gutter-background {\n position: absolute;\n top: 0; bottom: 0;\n z-index: 4;\n}\n.CodeMirror-gutter-elt {\n position: absolute;\n cursor: default;\n z-index: 4;\n}\n.CodeMirror-gutter-wrapper ::selection { background-color: transparent }\n.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }\n\n.CodeMirror-lines {\n cursor: text;\n min-height: 1px; /* prevents collapsing before first draw */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n /* Reset some styles that the rest of the page might have set */\n -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;\n border-width: 0;\n background: transparent;\n font-family: inherit;\n font-size: inherit;\n margin: 0;\n white-space: pre;\n word-wrap: normal;\n line-height: inherit;\n color: inherit;\n z-index: 2;\n position: relative;\n overflow: visible;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-variant-ligatures: contextual;\n font-variant-ligatures: contextual;\n}\n.CodeMirror-wrap pre.CodeMirror-line,\n.CodeMirror-wrap pre.CodeMirror-line-like {\n word-wrap: break-word;\n white-space: pre-wrap;\n word-break: normal;\n}\n\n.CodeMirror-linebackground {\n position: absolute;\n left: 0; right: 0; top: 0; bottom: 0;\n z-index: 0;\n}\n\n.CodeMirror-linewidget {\n position: relative;\n z-index: 2;\n padding: 0.1px; /* Force widget margins to stay inside of the container */\n}\n\n.CodeMirror-widget {}\n\n.CodeMirror-rtl pre { direction: rtl; }\n\n.CodeMirror-code {\n outline: none;\n}\n\n/* Force content-box sizing for the elements where we expect it */\n.CodeMirror-scroll,\n.CodeMirror-sizer,\n.CodeMirror-gutter,\n.CodeMirror-gutters,\n.CodeMirror-linenumber {\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\n\n.CodeMirror-measure {\n position: absolute;\n width: 100%;\n height: 0;\n overflow: hidden;\n visibility: hidden;\n}\n\n.CodeMirror-cursor {\n position: absolute;\n pointer-events: none;\n}\n.CodeMirror-measure pre { position: static; }\n\ndiv.CodeMirror-cursors {\n visibility: hidden;\n position: relative;\n z-index: 3;\n}\ndiv.CodeMirror-dragcursors {\n visibility: visible;\n}\n\n.CodeMirror-focused div.CodeMirror-cursors {\n visibility: visible;\n}\n\n.CodeMirror-selected { background: #d9d9d9; }\n.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }\n.CodeMirror-crosshair { cursor: crosshair; }\n.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }\n.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }\n\n.cm-searching {\n background-color: #ffa;\n background-color: rgba(255, 255, 0, .4);\n}\n\n/* Used to force a border model for a node */\n.cm-force-border { padding-right: .1px; }\n\n@media print {\n /* Hide the cursor when printing */\n .CodeMirror div.CodeMirror-cursors {\n visibility: hidden;\n }\n}\n\n/* See issue #2901 */\n.cm-tab-wrap-hack:after { content: ''; }\n\n/* Help users use markselection to safely style text background */\nspan.CodeMirror-selectedtext { background: none; }\n","/*!\n * css of showdowns v0.5.5\n * Copyright (c) 2019-present, Jhuix (Hui Jin) \n * Released under the MIT License.\n */.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{max-width:100%;height:auto;margin:0 auto;display:inherit;-ms-interpolation-mode:bicubic}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{padding-bottom:.3em;border-bottom:1px solid #d6d6d6}.showdowns h1{font-size:2em}.showdowns h2{font-size:1.5em}.showdowns h3{font-size:1.25em}.showdowns h4{font-size:1em}.showdowns h5{font-size:.875em}.showdowns h6{font-size:.85em;color:#6a737d}.showdowns .subheader{line-height:1.4;color:#6f6f6f;font-weight:400;margin-top:.2em;margin-bottom:.5em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{margin-left:1.25em;margin-bottom:0;list-style:none}.showdowns ul li ol,.showdowns ul li ul{margin-left:1.25em;margin-bottom:0}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-left:1.25em;margin-bottom:0}.showdowns dl dt{margin-bottom:.3em;font-weight:600}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{text-transform:uppercase;font-size:90%;color:#222;cursor:help}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{margin:0 0 16px;padding:0 15px;line-height:1.5;color:#5c5c5c;border-left:4px solid #d6d6d6}.showdowns blockquote cite{display:block;font-size:.8125em;color:#555}.showdowns blockquote cite:before{content:\"\\2014 \\0020\"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;border:1px solid #dfdfdf;margin-top:1.5em;margin-bottom:1.5em;padding:.125em .3125em .0625em}.showdowns pre code{background-color:transparent;border:0;padding:0}.showdowns table{background:#fff;margin-bottom:1.25em;table-layout:auto;overflow:auto;border-collapse:collapse;border-spacing:0}.showdowns table caption{background:transparent;color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{color:#222;line-height:1.125em;border:1px solid #d6d6d6;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{line-height:1.125em;border:1px solid #d6d6d6}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-center:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto;display:inherit}.showdowns .diagram-right:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto 0 auto auto;display:inherit}.showdowns .diagram-center.vega-embed{margin:auto;display:table}.showdowns .diagram-right.vega-embed{margin:auto 0 auto auto;display:table}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .latex.diagram-center .katex,.showdowns .latex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .latex.diagram-right .katex,.showdowns .latex.diagram-right .katex-display{text-align:right}\n\n/*!\n * css of showdowns v0.5.5\n * Copyright (c) 2019-present, Jhuix (Hui Jin) \n * Released under the MIT License.\n */.showdowns .showdown-container{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid #eee;border-radius:.25rem}.showdowns .showdown-container.container{border-left-width:.25rem;border-right-width:.25rem}.showdowns .showdown-container.container.tip{border-left-color:#5bc0de;border-right-color:#5bc0de}.showdowns .showdown-container.container.info{border-left-color:#cce5ff;border-right-color:#cce5ff}.showdowns .showdown-container.container.warning{border-left-color:#f0ad4e;border-right-color:#f0ad4e}.showdowns .showdown-container.container.error{border-left-color:#d9534f;border-right-color:#d9534f}.showdowns .showdown-container.container.success{border-left-color:#67c23a;border-right-color:#67c23a}.showdowns .showdown-container.alert{border:1px solid transparent;transition:opacity .2s}.showdowns .showdown-container.alert.alert-tip{background-color:#5bc0de}.showdowns .showdown-container.alert.alert-info{background-color:#cce5ff}.showdowns .showdown-container.alert.alert-warning{background-color:#f0ad4e}.showdowns .showdown-container.alert.alert-error{background-color:#d9534f}.showdowns .showdown-container.alert.alert-success{background-color:#67c23a}.showdowns .showdown-container .container-title{font-size:1.25rem;font-weight:700;line-height:1.2}","/*\nhttp://lesscss.org/ dark theme\nPorted to CodeMirror by Peter Kroon\n*/\n.cm-s-lesser-dark {\n line-height: 1.3em;\n}\n.cm-s-lesser-dark.CodeMirror { background: #262626; color: #EBEFE7; text-shadow: 0 -1px 1px #262626; }\n.cm-s-lesser-dark div.CodeMirror-selected { background: #45443B; } /* 33322B*/\n.cm-s-lesser-dark .CodeMirror-line::selection, .cm-s-lesser-dark .CodeMirror-line > span::selection, .cm-s-lesser-dark .CodeMirror-line > span > span::selection { background: rgba(69, 68, 59, .99); }\n.cm-s-lesser-dark .CodeMirror-line::-moz-selection, .cm-s-lesser-dark .CodeMirror-line > span::-moz-selection, .cm-s-lesser-dark .CodeMirror-line > span > span::-moz-selection { background: rgba(69, 68, 59, .99); }\n.cm-s-lesser-dark .CodeMirror-cursor { border-left: 1px solid white; }\n.cm-s-lesser-dark pre { padding: 0 8px; }/*editable code holder*/\n\n.cm-s-lesser-dark.CodeMirror span.CodeMirror-matchingbracket { color: #7EFC7E; }/*65FC65*/\n\n.cm-s-lesser-dark .CodeMirror-gutters { background: #262626; border-right:1px solid #aaa; }\n.cm-s-lesser-dark .CodeMirror-guttermarker { color: #599eff; }\n.cm-s-lesser-dark .CodeMirror-guttermarker-subtle { color: #777; }\n.cm-s-lesser-dark .CodeMirror-linenumber { color: #777; }\n\n.cm-s-lesser-dark span.cm-header { color: #a0a; }\n.cm-s-lesser-dark span.cm-quote { color: #090; }\n.cm-s-lesser-dark span.cm-keyword { color: #599eff; }\n.cm-s-lesser-dark span.cm-atom { color: #C2B470; }\n.cm-s-lesser-dark span.cm-number { color: #B35E4D; }\n.cm-s-lesser-dark span.cm-def { color: white; }\n.cm-s-lesser-dark span.cm-variable { color:#D9BF8C; }\n.cm-s-lesser-dark span.cm-variable-2 { color: #669199; }\n.cm-s-lesser-dark span.cm-variable-3, .cm-s-lesser-dark span.cm-type { color: white; }\n.cm-s-lesser-dark span.cm-property { color: #92A75C; }\n.cm-s-lesser-dark span.cm-operator { color: #92A75C; }\n.cm-s-lesser-dark span.cm-comment { color: #666; }\n.cm-s-lesser-dark span.cm-string { color: #BCD279; }\n.cm-s-lesser-dark span.cm-string-2 { color: #f50; }\n.cm-s-lesser-dark span.cm-meta { color: #738C73; }\n.cm-s-lesser-dark span.cm-qualifier { color: #555; }\n.cm-s-lesser-dark span.cm-builtin { color: #ff9e59; }\n.cm-s-lesser-dark span.cm-bracket { color: #EBEFE7; }\n.cm-s-lesser-dark span.cm-tag { color: #669199; }\n.cm-s-lesser-dark span.cm-attribute { color: #81a4d5; }\n.cm-s-lesser-dark span.cm-hr { color: #999; }\n.cm-s-lesser-dark span.cm-link { color: #7070E6; }\n.cm-s-lesser-dark span.cm-error { color: #9d1e15; }\n\n.cm-s-lesser-dark .CodeMirror-activeline-background { background: #3C3A3A; }\n.cm-s-lesser-dark .CodeMirror-matchingbracket { outline:1px solid grey; color:white !important; }\n","/*\n MDN-LIKE Theme - Mozilla\n Ported to CodeMirror by Peter Kroon \n Report bugs/issues here: https://github.com/codemirror/CodeMirror/issues\n GitHub: @peterkroon\n\n The mdn-like theme is inspired on the displayed code examples at: https://developer.mozilla.org/en-US/docs/Web/CSS/animation\n\n*/\n.cm-s-mdn-like.CodeMirror { color: #999; background-color: #fff; }\n.cm-s-mdn-like div.CodeMirror-selected { background: #cfc; }\n.cm-s-mdn-like .CodeMirror-line::selection, .cm-s-mdn-like .CodeMirror-line > span::selection, .cm-s-mdn-like .CodeMirror-line > span > span::selection { background: #cfc; }\n.cm-s-mdn-like .CodeMirror-line::-moz-selection, .cm-s-mdn-like .CodeMirror-line > span::-moz-selection, .cm-s-mdn-like .CodeMirror-line > span > span::-moz-selection { background: #cfc; }\n\n.cm-s-mdn-like .CodeMirror-gutters { background: #f8f8f8; border-left: 6px solid rgba(0,83,159,0.65); color: #333; }\n.cm-s-mdn-like .CodeMirror-linenumber { color: #aaa; padding-left: 8px; }\n.cm-s-mdn-like .CodeMirror-cursor { border-left: 2px solid #222; }\n\n.cm-s-mdn-like .cm-keyword { color: #6262FF; }\n.cm-s-mdn-like .cm-atom { color: #F90; }\n.cm-s-mdn-like .cm-number { color: #ca7841; }\n.cm-s-mdn-like .cm-def { color: #8DA6CE; }\n.cm-s-mdn-like span.cm-variable-2, .cm-s-mdn-like span.cm-tag { color: #690; }\n.cm-s-mdn-like span.cm-variable-3, .cm-s-mdn-like span.cm-def, .cm-s-mdn-like span.cm-type { color: #07a; }\n\n.cm-s-mdn-like .cm-variable { color: #07a; }\n.cm-s-mdn-like .cm-property { color: #905; }\n.cm-s-mdn-like .cm-qualifier { color: #690; }\n\n.cm-s-mdn-like .cm-operator { color: #cda869; }\n.cm-s-mdn-like .cm-comment { color:#777; font-weight:normal; }\n.cm-s-mdn-like .cm-string { color:#07a; font-style:italic; }\n.cm-s-mdn-like .cm-string-2 { color:#bd6b18; } /*?*/\n.cm-s-mdn-like .cm-meta { color: #000; } /*?*/\n.cm-s-mdn-like .cm-builtin { color: #9B7536; } /*?*/\n.cm-s-mdn-like .cm-tag { color: #997643; }\n.cm-s-mdn-like .cm-attribute { color: #d6bb6d; } /*?*/\n.cm-s-mdn-like .cm-header { color: #FF6400; }\n.cm-s-mdn-like .cm-hr { color: #AEAEAE; }\n.cm-s-mdn-like .cm-link { color:#ad9361; font-style:italic; text-decoration:none; }\n.cm-s-mdn-like .cm-error { border-bottom: 1px solid red; }\n\ndiv.cm-s-mdn-like .CodeMirror-activeline-background { background: #efefff; }\ndiv.cm-s-mdn-like span.CodeMirror-matchingbracket { outline:1px solid grey; color: inherit; }\n\n.cm-s-mdn-like.CodeMirror { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAyCAYAAAAp8UeFAAAHvklEQVR42s2b63bcNgyEQZCSHCdt2vd/0tWF7I+Q6XgMXiTtuvU5Pl57ZQKkKHzEAOtF5KeIJBGJ8uvL599FRFREZhFx8DeXv8trn68RuGaC8TRfo3SNp9dlDDHedyLyTUTeRWStXKPZrjtpZxaRw5hPqozRs1N8/enzIiQRWcCgy4MUA0f+XWliDhyL8Lfyvx7ei/Ae3iQFHyw7U/59pQVIMEEPEz0G7XiwdRjzSfC3UTtz9vchIntxvry5iMgfIhJoEflOz2CQr3F5h/HfeFe+GTdLaKcu9L8LTeQb/R/7GgbsfKedyNdoHsN31uRPWrfZ5wsj/NzzRQHuToIdU3ahwnsKPxXCjJITuOsi7XLc7SG/v5GdALs7wf8JjTFiB5+QvTEfRyGOfX3Lrx8wxyQi3sNq46O7QahQiCsRFgqddjBouVEHOKDgXAQHD9gJCr5sMKkEdjwsarG/ww3BMHBU7OBjXnzdyY7SfCxf5/z6ATccrwlKuwC/jhznnPF4CgVzhhVf4xp2EixcBActO75iZ8/fM9zAs2OMzKdslgXWJ9XG8PQoOAMA5fGcsvORgv0doBXyHrCwfLJAOwo71QLNkb8n2Pl6EWiR7OCibtkPaz4Kc/0NNAze2gju3zOwekALDaCFPI5vjPFmgGY5AZqyGEvH1x7QfIb8YtxMnA/b+QQ0aQDAwc6JMFg8CbQZ4qoYEEHbRwNojuK3EHwd7VALSgq+MNDKzfT58T8qdpADrgW0GmgcAS1lhzztJmkAzcPNOQbsWEALBDSlMKUG0Eq4CLAQWvEVQ9WU57gZJwZtgPO3r9oBTQ9WO8TjqXINx8R0EYpiZEUWOF3FxkbJkgU9B2f41YBrIj5ZfsQa0M5kTgiAAqM3ShXLgu8XMqcrQBvJ0CL5pnTsfMB13oB8athpAq2XOQmcGmoACCLydx7nToa23ATaSIY2ichfOdPTGxlasXMLaL0MLZAOwAKIM+y8CmicobGdCcbbK9DzN+yYGVoNNI5iUKTMyYOjPse4A8SM1MmcXgU0toOq1yO/v8FOxlASyc7TgeYaAMBJHcY1CcCwGI/TK4AmDbDyKYBBtFUkRwto8gygiQEaByFgJ00BH2M8JWwQS1nafDXQCidWyOI8AcjDCSjCLk8ngObuAm3JAHAdubAmOaK06V8MNEsKPJOhobSprwQa6gD7DclRQdqcwL4zxqgBrQcabUiBLclRDKAlWp+etPkBaNMA0AKlrHwTdEByZAA4GM+SNluSY6wAzcMNewxmgig5Ks0nkrSpBvSaQHMdKTBAnLojOdYyGpQ254602ZILPdTD1hdlggdIm74jbTp8vDwF5ZYUeLWGJpWsh6XNyXgcYwVoJQTEhhTYkxzZjiU5npU2TaB979TQehlaAVq4kaGpiPwwwLkYUuBbQwocyQTv1tA0+1UFWoJF3iv1oq+qoSk8EQdJmwHkziIF7oOZk14EGitibAdjLYYK78H5vZOhtWpoI0ATGHs0Q8OMb4Ey+2bU2UYztCtA0wFAs7TplGLRVQCcqaFdGSPCeTI1QNIC52iWNzof6Uib7xjEp07mNNoUYmVosVItHrHzRlLgBn9LFyRHaQCtVUMbtTNhoXWiTOO9k/V8BdAc1Oq0ArSQs6/5SU0hckNy9NnXqQY0PGYo5dWJ7nINaN6o958FWin27aBaWRka1r5myvLOAm0j30eBJqCxHLReVclxhxOEN2JfDWjxBtAC7MIH1fVaGdoOp4qJYDgKtKPSFNID2gSnGldrCqkFZ+5UeQXQBIRrSwocbdZYQT/2LwRahBPBXoHrB8nxaGROST62DKUbQOMMzZIC9abkuELfQzQALWTnDNAm8KHWFOJgJ5+SHIvTPcmx1xQyZRhNL5Qci689aXMEaN/uNIWkEwDAvFpOZmgsBaaGnbs1NPa1Jm32gBZAIh1pCtG7TSH4aE0y1uVY4uqoFPisGlpP2rSA5qTecWn5agK6BzSpgAyD+wFaqhnYoSZ1Vwr8CmlTQbrcO3ZaX0NAEyMbYaAlyquFoLKK3SPby9CeVUPThrSJmkCAE0CrKUQadi4DrdSlWhmah0YL9z9vClH59YGbHx1J8VZTyAjQepJjmXwAKTDQI3omc3p1U4gDUf6RfcdYfrUp5ClAi2J3Ba6UOXGo+K+bQrjjssitG2SJzshaLwMtXgRagUNpYYoVkMSBLM+9GGiJZMvduG6DRZ4qc04DMPtQQxOjEtACmhO7K1AbNbQDEggZyJwscFpAGwENhoBeUwh3bWolhe8BTYVKxQEWrSUn/uhcM5KhvUu/+eQu0Lzhi+VrK0PrZZNDQKs9cpYUuFYgMVpD4/NxenJTiMCNqdUEUf1qZWjppLT5qSkkUZbCwkbZMSuVnu80hfSkzRbQeqCZSAh6huR4VtoM2gHAlLf72smuWgE+VV7XpE25Ab2WFDgyhnSuKbs4GuGzCjR+tIoUuMFg3kgcWKLTwRqanJQ2W00hAsenfaApRC42hbCvK1SlE0HtE9BGgneJO+ELamitD1YjjOYnNYVcraGhtKkW0EqVVeDx733I2NH581k1NNxNLG0i0IJ8/NjVaOZ0tYZ2Vtr0Xv7tPV3hkWp9EFkgS/J0vosngTaSoaG06WHi+xObQkaAdlbanP8B2+2l0f90LmUAAAAASUVORK5CYII=); }\n",".cm-s-neat span.cm-comment { color: #a86; }\n.cm-s-neat span.cm-keyword { line-height: 1em; font-weight: bold; color: blue; }\n.cm-s-neat span.cm-string { color: #a22; }\n.cm-s-neat span.cm-builtin { line-height: 1em; font-weight: bold; color: #077; }\n.cm-s-neat span.cm-special { line-height: 1em; font-weight: bold; color: #0aa; }\n.cm-s-neat span.cm-variable { color: black; }\n.cm-s-neat span.cm-number, .cm-s-neat span.cm-atom { color: #3a3; }\n.cm-s-neat span.cm-meta { color: #555; }\n.cm-s-neat span.cm-link { color: #3a3; }\n\n.cm-s-neat .CodeMirror-activeline-background { background: #e8f2ff; }\n.cm-s-neat .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; }\n",".cm-s-rubyblue.CodeMirror { background: #112435; color: white; }\n.cm-s-rubyblue div.CodeMirror-selected { background: #38566F; }\n.cm-s-rubyblue .CodeMirror-line::selection, .cm-s-rubyblue .CodeMirror-line > span::selection, .cm-s-rubyblue .CodeMirror-line > span > span::selection { background: rgba(56, 86, 111, 0.99); }\n.cm-s-rubyblue .CodeMirror-line::-moz-selection, .cm-s-rubyblue .CodeMirror-line > span::-moz-selection, .cm-s-rubyblue .CodeMirror-line > span > span::-moz-selection { background: rgba(56, 86, 111, 0.99); }\n.cm-s-rubyblue .CodeMirror-gutters { background: #1F4661; border-right: 7px solid #3E7087; }\n.cm-s-rubyblue .CodeMirror-guttermarker { color: white; }\n.cm-s-rubyblue .CodeMirror-guttermarker-subtle { color: #3E7087; }\n.cm-s-rubyblue .CodeMirror-linenumber { color: white; }\n.cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white; }\n\n.cm-s-rubyblue span.cm-comment { color: #999; font-style:italic; line-height: 1em; }\n.cm-s-rubyblue span.cm-atom { color: #F4C20B; }\n.cm-s-rubyblue span.cm-number, .cm-s-rubyblue span.cm-attribute { color: #82C6E0; }\n.cm-s-rubyblue span.cm-keyword { color: #F0F; }\n.cm-s-rubyblue span.cm-string { color: #F08047; }\n.cm-s-rubyblue span.cm-meta { color: #F0F; }\n.cm-s-rubyblue span.cm-variable-2, .cm-s-rubyblue span.cm-tag { color: #7BD827; }\n.cm-s-rubyblue span.cm-variable-3, .cm-s-rubyblue span.cm-def, .cm-s-rubyblue span.cm-type { color: white; }\n.cm-s-rubyblue span.cm-bracket { color: #F0F; }\n.cm-s-rubyblue span.cm-link { color: #F4C20B; }\n.cm-s-rubyblue span.CodeMirror-matchingbracket { color:#F0F !important; }\n.cm-s-rubyblue span.cm-builtin, .cm-s-rubyblue span.cm-special { color: #FF9D00; }\n.cm-s-rubyblue span.cm-error { color: #AF2018; }\n\n.cm-s-rubyblue .CodeMirror-activeline-background { background: #173047; }\n","/*\n\n Name: seti\n Author: Michael Kaminsky (http://github.com/mkaminsky11)\n\n Original seti color scheme by Jesse Weed (https://github.com/jesseweed/seti-syntax)\n\n*/\n\n\n.cm-s-seti.CodeMirror {\n background-color: #151718 !important;\n color: #CFD2D1 !important;\n border: none;\n}\n.cm-s-seti .CodeMirror-gutters {\n color: #404b53;\n background-color: #0E1112;\n border: none;\n}\n.cm-s-seti .CodeMirror-cursor { border-left: solid thin #f8f8f0; }\n.cm-s-seti .CodeMirror-linenumber { color: #6D8A88; }\n.cm-s-seti.CodeMirror-focused div.CodeMirror-selected { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti .CodeMirror-line::selection, .cm-s-seti .CodeMirror-line > span::selection, .cm-s-seti .CodeMirror-line > span > span::selection { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti .CodeMirror-line::-moz-selection, .cm-s-seti .CodeMirror-line > span::-moz-selection, .cm-s-seti .CodeMirror-line > span > span::-moz-selection { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti span.cm-comment { color: #41535b; }\n.cm-s-seti span.cm-string, .cm-s-seti span.cm-string-2 { color: #55b5db; }\n.cm-s-seti span.cm-number { color: #cd3f45; }\n.cm-s-seti span.cm-variable { color: #55b5db; }\n.cm-s-seti span.cm-variable-2 { color: #a074c4; }\n.cm-s-seti span.cm-def { color: #55b5db; }\n.cm-s-seti span.cm-keyword { color: #ff79c6; }\n.cm-s-seti span.cm-operator { color: #9fca56; }\n.cm-s-seti span.cm-keyword { color: #e6cd69; }\n.cm-s-seti span.cm-atom { color: #cd3f45; }\n.cm-s-seti span.cm-meta { color: #55b5db; }\n.cm-s-seti span.cm-tag { color: #55b5db; }\n.cm-s-seti span.cm-attribute { color: #9fca56; }\n.cm-s-seti span.cm-qualifier { color: #9fca56; }\n.cm-s-seti span.cm-property { color: #a074c4; }\n.cm-s-seti span.cm-variable-3, .cm-s-seti span.cm-type { color: #9fca56; }\n.cm-s-seti span.cm-builtin { color: #9fca56; }\n.cm-s-seti .CodeMirror-activeline-background { background: #101213; }\n.cm-s-seti .CodeMirror-matchingbracket { text-decoration: underline; color: white !important; }\n","/**\n Name: IntelliJ IDEA darcula theme\n From IntelliJ IDEA by JetBrains\n */\n\n.cm-s-darcula { font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif;}\n.cm-s-darcula.CodeMirror { background: #2B2B2B; color: #A9B7C6; }\n\n.cm-s-darcula span.cm-meta { color: #BBB529; }\n.cm-s-darcula span.cm-number { color: #6897BB; }\n.cm-s-darcula span.cm-keyword { color: #CC7832; line-height: 1em; font-weight: bold; }\n.cm-s-darcula span.cm-def { color: #A9B7C6; font-style: italic; }\n.cm-s-darcula span.cm-variable { color: #A9B7C6; }\n.cm-s-darcula span.cm-variable-2 { color: #A9B7C6; }\n.cm-s-darcula span.cm-variable-3 { color: #9876AA; }\n.cm-s-darcula span.cm-type { color: #AABBCC; font-weight: bold; }\n.cm-s-darcula span.cm-property { color: #FFC66D; }\n.cm-s-darcula span.cm-operator { color: #A9B7C6; }\n.cm-s-darcula span.cm-string { color: #6A8759; }\n.cm-s-darcula span.cm-string-2 { color: #6A8759; }\n.cm-s-darcula span.cm-comment { color: #61A151; font-style: italic; }\n.cm-s-darcula span.cm-link { color: #CC7832; }\n.cm-s-darcula span.cm-atom { color: #CC7832; }\n.cm-s-darcula span.cm-error { color: #BC3F3C; }\n.cm-s-darcula span.cm-tag { color: #629755; font-weight: bold; font-style: italic; text-decoration: underline; }\n.cm-s-darcula span.cm-attribute { color: #6897bb; }\n.cm-s-darcula span.cm-qualifier { color: #6A8759; }\n.cm-s-darcula span.cm-bracket { color: #A9B7C6; }\n.cm-s-darcula span.cm-builtin { color: #FF9E59; }\n.cm-s-darcula span.cm-special { color: #FF9E59; }\n.cm-s-darcula span.cm-matchhighlight { color: #FFFFFF; background-color: rgba(50, 89, 48, .7); font-weight: normal;}\n.cm-s-darcula span.cm-searching { color: #FFFFFF; background-color: rgba(61, 115, 59, .7); font-weight: normal;}\n\n.cm-s-darcula .CodeMirror-cursor { border-left: 1px solid #A9B7C6; }\n.cm-s-darcula .CodeMirror-activeline-background { background: #323232; }\n.cm-s-darcula .CodeMirror-gutters { background: #313335; border-right: 1px solid #313335; }\n.cm-s-darcula .CodeMirror-guttermarker { color: #FFEE80; }\n.cm-s-darcula .CodeMirror-guttermarker-subtle { color: #D0D0D0; }\n.cm-s-darcula .CodeMirrir-linenumber { color: #606366; }\n.cm-s-darcula .CodeMirror-matchingbracket { background-color: #3B514D; color: #FFEF28 !important; font-weight: bold; }\n\n.cm-s-darcula div.CodeMirror-selected { background: #214283; }\n\n.CodeMirror-hints.darcula {\n font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;\n color: #9C9E9E;\n background-color: #3B3E3F !important;\n}\n\n.CodeMirror-hints.darcula .CodeMirror-hint-active {\n background-color: #494D4E !important;\n color: #9C9E9E !important;\n}\n","/**\n Name: IDEA default theme\n From IntelliJ IDEA by JetBrains\n */\n\n.cm-s-idea span.cm-meta { color: #808000; }\n.cm-s-idea span.cm-number { color: #0000FF; }\n.cm-s-idea span.cm-keyword { line-height: 1em; font-weight: bold; color: #000080; }\n.cm-s-idea span.cm-atom { font-weight: bold; color: #000080; }\n.cm-s-idea span.cm-def { color: #000000; }\n.cm-s-idea span.cm-variable { color: black; }\n.cm-s-idea span.cm-variable-2 { color: black; }\n.cm-s-idea span.cm-variable-3, .cm-s-idea span.cm-type { color: black; }\n.cm-s-idea span.cm-property { color: black; }\n.cm-s-idea span.cm-operator { color: black; }\n.cm-s-idea span.cm-comment { color: #808080; }\n.cm-s-idea span.cm-string { color: #008000; }\n.cm-s-idea span.cm-string-2 { color: #008000; }\n.cm-s-idea span.cm-qualifier { color: #555; }\n.cm-s-idea span.cm-error { color: #FF0000; }\n.cm-s-idea span.cm-attribute { color: #0000FF; }\n.cm-s-idea span.cm-tag { color: #000080; }\n.cm-s-idea span.cm-link { color: #0000FF; }\n.cm-s-idea .CodeMirror-activeline-background { background: #FFFAE3; }\n\n.cm-s-idea span.cm-builtin { color: #30a; }\n.cm-s-idea span.cm-bracket { color: #cc7; }\n.cm-s-idea { font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;}\n\n\n.cm-s-idea .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; }\n\n.CodeMirror-hints.idea {\n font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;\n color: #616569;\n background-color: #ebf3fd !important;\n}\n\n.CodeMirror-hints.idea .CodeMirror-hint-active {\n background-color: #a2b8c9 !important;\n color: #5c6065 !important;\n}",".cm-s-the-matrix.CodeMirror { background: #000000; color: #00FF00; }\n.cm-s-the-matrix div.CodeMirror-selected { background: #2D2D2D; }\n.cm-s-the-matrix .CodeMirror-line::selection, .cm-s-the-matrix .CodeMirror-line > span::selection, .cm-s-the-matrix .CodeMirror-line > span > span::selection { background: rgba(45, 45, 45, 0.99); }\n.cm-s-the-matrix .CodeMirror-line::-moz-selection, .cm-s-the-matrix .CodeMirror-line > span::-moz-selection, .cm-s-the-matrix .CodeMirror-line > span > span::-moz-selection { background: rgba(45, 45, 45, 0.99); }\n.cm-s-the-matrix .CodeMirror-gutters { background: #060; border-right: 2px solid #00FF00; }\n.cm-s-the-matrix .CodeMirror-guttermarker { color: #0f0; }\n.cm-s-the-matrix .CodeMirror-guttermarker-subtle { color: white; }\n.cm-s-the-matrix .CodeMirror-linenumber { color: #FFFFFF; }\n.cm-s-the-matrix .CodeMirror-cursor { border-left: 1px solid #00FF00; }\n\n.cm-s-the-matrix span.cm-keyword { color: #008803; font-weight: bold; }\n.cm-s-the-matrix span.cm-atom { color: #3FF; }\n.cm-s-the-matrix span.cm-number { color: #FFB94F; }\n.cm-s-the-matrix span.cm-def { color: #99C; }\n.cm-s-the-matrix span.cm-variable { color: #F6C; }\n.cm-s-the-matrix span.cm-variable-2 { color: #C6F; }\n.cm-s-the-matrix span.cm-variable-3, .cm-s-the-matrix span.cm-type { color: #96F; }\n.cm-s-the-matrix span.cm-property { color: #62FFA0; }\n.cm-s-the-matrix span.cm-operator { color: #999; }\n.cm-s-the-matrix span.cm-comment { color: #CCCCCC; }\n.cm-s-the-matrix span.cm-string { color: #39C; }\n.cm-s-the-matrix span.cm-meta { color: #C9F; }\n.cm-s-the-matrix span.cm-qualifier { color: #FFF700; }\n.cm-s-the-matrix span.cm-builtin { color: #30a; }\n.cm-s-the-matrix span.cm-bracket { color: #cc7; }\n.cm-s-the-matrix span.cm-tag { color: #FFBD40; }\n.cm-s-the-matrix span.cm-attribute { color: #FFF700; }\n.cm-s-the-matrix span.cm-error { color: #FF0000; }\n\n.cm-s-the-matrix .CodeMirror-activeline-background { background: #040; }\n","/*\nSolarized theme for code-mirror\nhttp://ethanschoonover.com/solarized\n*/\n\n/*\nSolarized color palette\nhttp://ethanschoonover.com/solarized/img/solarized-palette.png\n*/\n\n.solarized.base03 { color: #002b36; }\n.solarized.base02 { color: #073642; }\n.solarized.base01 { color: #586e75; }\n.solarized.base00 { color: #657b83; }\n.solarized.base0 { color: #839496; }\n.solarized.base1 { color: #93a1a1; }\n.solarized.base2 { color: #eee8d5; }\n.solarized.base3 { color: #fdf6e3; }\n.solarized.solar-yellow { color: #b58900; }\n.solarized.solar-orange { color: #cb4b16; }\n.solarized.solar-red { color: #dc322f; }\n.solarized.solar-magenta { color: #d33682; }\n.solarized.solar-violet { color: #6c71c4; }\n.solarized.solar-blue { color: #268bd2; }\n.solarized.solar-cyan { color: #2aa198; }\n.solarized.solar-green { color: #859900; }\n\n/* Color scheme for code-mirror */\n\n.cm-s-solarized {\n line-height: 1.45em;\n color-profile: sRGB;\n rendering-intent: auto;\n}\n.cm-s-solarized.cm-s-dark {\n color: #839496;\n background-color: #002b36;\n text-shadow: #002b36 0 1px;\n}\n.cm-s-solarized.cm-s-light {\n background-color: #fdf6e3;\n color: #657b83;\n text-shadow: #eee8d5 0 1px;\n}\n\n.cm-s-solarized .CodeMirror-widget {\n text-shadow: none;\n}\n\n.cm-s-solarized .cm-header { color: #586e75; }\n.cm-s-solarized .cm-quote { color: #93a1a1; }\n\n.cm-s-solarized .cm-keyword { color: #cb4b16; }\n.cm-s-solarized .cm-atom { color: #d33682; }\n.cm-s-solarized .cm-number { color: #d33682; }\n.cm-s-solarized .cm-def { color: #2aa198; }\n\n.cm-s-solarized .cm-variable { color: #839496; }\n.cm-s-solarized .cm-variable-2 { color: #b58900; }\n.cm-s-solarized .cm-variable-3, .cm-s-solarized .cm-type { color: #6c71c4; }\n\n.cm-s-solarized .cm-property { color: #2aa198; }\n.cm-s-solarized .cm-operator { color: #6c71c4; }\n\n.cm-s-solarized .cm-comment { color: #586e75; font-style:italic; }\n\n.cm-s-solarized .cm-string { color: #859900; }\n.cm-s-solarized .cm-string-2 { color: #b58900; }\n\n.cm-s-solarized .cm-meta { color: #859900; }\n.cm-s-solarized .cm-qualifier { color: #b58900; }\n.cm-s-solarized .cm-builtin { color: #d33682; }\n.cm-s-solarized .cm-bracket { color: #cb4b16; }\n.cm-s-solarized .CodeMirror-matchingbracket { color: #859900; }\n.cm-s-solarized .CodeMirror-nonmatchingbracket { color: #dc322f; }\n.cm-s-solarized .cm-tag { color: #93a1a1; }\n.cm-s-solarized .cm-attribute { color: #2aa198; }\n.cm-s-solarized .cm-hr {\n color: transparent;\n border-top: 1px solid #586e75;\n display: block;\n}\n.cm-s-solarized .cm-link { color: #93a1a1; cursor: pointer; }\n.cm-s-solarized .cm-special { color: #6c71c4; }\n.cm-s-solarized .cm-em {\n color: #999;\n text-decoration: underline;\n text-decoration-style: dotted;\n}\n.cm-s-solarized .cm-error,\n.cm-s-solarized .cm-invalidchar {\n color: #586e75;\n border-bottom: 1px dotted #dc322f;\n}\n\n.cm-s-solarized.cm-s-dark div.CodeMirror-selected { background: #073642; }\n.cm-s-solarized.cm-s-dark.CodeMirror ::selection { background: rgba(7, 54, 66, 0.99); }\n.cm-s-solarized.cm-s-dark .CodeMirror-line::-moz-selection, .cm-s-dark .CodeMirror-line > span::-moz-selection, .cm-s-dark .CodeMirror-line > span > span::-moz-selection { background: rgba(7, 54, 66, 0.99); }\n\n.cm-s-solarized.cm-s-light div.CodeMirror-selected { background: #eee8d5; }\n.cm-s-solarized.cm-s-light .CodeMirror-line::selection, .cm-s-light .CodeMirror-line > span::selection, .cm-s-light .CodeMirror-line > span > span::selection { background: #eee8d5; }\n.cm-s-solarized.cm-s-light .CodeMirror-line::-moz-selection, .cm-s-ligh .CodeMirror-line > span::-moz-selection, .cm-s-ligh .CodeMirror-line > span > span::-moz-selection { background: #eee8d5; }\n\n/* Editor styling */\n\n\n\n/* Little shadow on the view-port of the buffer view */\n.cm-s-solarized.CodeMirror {\n -moz-box-shadow: inset 7px 0 12px -6px #000;\n -webkit-box-shadow: inset 7px 0 12px -6px #000;\n box-shadow: inset 7px 0 12px -6px #000;\n}\n\n/* Remove gutter border */\n.cm-s-solarized .CodeMirror-gutters {\n border-right: 0;\n}\n\n/* Gutter colors and line number styling based of color scheme (dark / light) */\n\n/* Dark */\n.cm-s-solarized.cm-s-dark .CodeMirror-gutters {\n background-color: #073642;\n}\n\n.cm-s-solarized.cm-s-dark .CodeMirror-linenumber {\n color: #586e75;\n text-shadow: #021014 0 -1px;\n}\n\n/* Light */\n.cm-s-solarized.cm-s-light .CodeMirror-gutters {\n background-color: #eee8d5;\n}\n\n.cm-s-solarized.cm-s-light .CodeMirror-linenumber {\n color: #839496;\n}\n\n/* Common */\n.cm-s-solarized .CodeMirror-linenumber {\n padding: 0 5px;\n}\n.cm-s-solarized .CodeMirror-guttermarker-subtle { color: #586e75; }\n.cm-s-solarized.cm-s-dark .CodeMirror-guttermarker { color: #ddd; }\n.cm-s-solarized.cm-s-light .CodeMirror-guttermarker { color: #cb4b16; }\n\n.cm-s-solarized .CodeMirror-gutter .CodeMirror-gutter-text {\n color: #586e75;\n}\n\n/* Cursor */\n.cm-s-solarized .CodeMirror-cursor { border-left: 1px solid #819090; }\n\n/* Fat cursor */\n.cm-s-solarized.cm-s-light.cm-fat-cursor .CodeMirror-cursor { background: #77ee77; }\n.cm-s-solarized.cm-s-light .cm-animate-fat-cursor { background-color: #77ee77; }\n.cm-s-solarized.cm-s-dark.cm-fat-cursor .CodeMirror-cursor { background: #586e75; }\n.cm-s-solarized.cm-s-dark .cm-animate-fat-cursor { background-color: #586e75; }\n\n/* Active line */\n.cm-s-solarized.cm-s-dark .CodeMirror-activeline-background {\n background: rgba(255, 255, 255, 0.06);\n}\n.cm-s-solarized.cm-s-light .CodeMirror-activeline-background {\n background: rgba(0, 0, 0, 0.06);\n}\n"]} \ No newline at end of file +{"version":3,"sources":["webpack:///node_modules/codemirror/addon/fold/foldgutter.css","webpack:///node_modules/codemirror/lib/codemirror.css","webpack:///node_modules/@jhuix/showdowns/dist/showdowns.min.css","webpack:///node_modules/codemirror/theme/lesser-dark.css","webpack:///node_modules/codemirror/theme/mdn-like.css","webpack:///node_modules/codemirror/theme/neat.css","webpack:///node_modules/codemirror/theme/rubyblue.css","webpack:///node_modules/codemirror/theme/seti.css","webpack:///node_modules/codemirror/theme/darcula.css","webpack:///node_modules/codemirror/theme/idea.css","webpack:///node_modules/codemirror/theme/the-matrix.css","webpack:///node_modules/codemirror/theme/solarized.css"],"names":[],"mappings":"AAAA,uBACE,UAAW,CACX,mFAAuF,CACvF,iBAAkB,CAClB,cAAe,CACf,cACF,CACA,uBACE,UACF,CACA,0DAEE,cACF,CACA,kCACE,eACF,CACA,oCACE,eACF,CCjBA,YAEE,qBAAsB,CACtB,YAAa,CACb,UAAY,CACZ,aACF,CAIA,kBACE,aACF,CACA,qEAEE,aACF,CAEA,uDACE,qBACF,CAIA,oBACE,2BAA4B,CAC5B,wBAAyB,CACzB,kBACF,CAEA,uBACE,mBAAoB,CACpB,cAAe,CACf,gBAAiB,CACjB,UAAW,CACX,kBACF,CAEA,yBAA2B,UAAc,CACzC,gCAAkC,UAAa,CAI/C,mBACE,0BAA4B,CAC5B,iBAAkB,CAClB,OACF,CAEA,2CACE,4BACF,CACA,kCACE,UAAW,CACX,kBAAoB,CACpB,eACF,CACA,sCACE,SACF,CACA,gJAE2D,sBAAyB,CACpF,+JAEgE,sBAAyB,CACzF,eAAiB,uBAA0B,CAM3C,yBAEE,IAAM,4BAA+B,CAEvC,CACA,iBAEE,IAAM,4BAA+B,CAEvC,CAKA,QAAU,oBAAqB,CAAE,uBAA0B,CAE3D,mBACE,iBAAkB,CAClB,MAAO,CAAE,OAAQ,CAAE,SAAU,CAAE,QAAS,CACxC,eACF,CACA,kBACE,0BAA2B,CAC3B,KAAM,CAAE,QAAS,CACjB,iBACF,CAIA,yBAA0B,UAAY,CACtC,wBAAyB,UAAY,CACrC,aAAc,UAAY,CAC1B,aAAc,UAAY,CAC1B,sBAAwB,eAAkB,CAC1C,OAAQ,iBAAmB,CAC3B,SAAU,yBAA2B,CACrC,kBAAmB,4BAA8B,CAEjD,0BAA2B,UAAY,CACvC,uBAAwB,UAAY,CACpC,yBAA0B,UAAY,CACtC,sBAAuB,UAAY,CAKnC,6BAA8B,UAAY,CAC1C,oDAAsD,UAAY,CAClE,0BAA2B,UAAY,CACvC,yBAA0B,UAAY,CACtC,2BAA4B,UAAY,CAExC,mDAA6B,UAAY,CACzC,0BAA2B,UAAY,CACvC,0BAA2B,UAAY,CACvC,sBAAuB,UAAY,CACnC,4BAA6B,UAAY,CACzC,qBAAsB,UAAY,CAClC,uBAAwB,UAAY,CAGpC,wCAAiB,SAAY,CAE7B,sBAAwB,uBAA0B,CAIlD,+CAAgD,UAAY,CAC5D,kDAAmD,UAAY,CAC/D,wBAA0B,6BAAmC,CAC7D,kCAAmC,kBAAoB,CAOvD,YACE,iBAAkB,CAClB,eAAgB,CAChB,eACF,CAEA,mBACE,yBAA2B,CAG3B,mBAAoB,CAAE,kBAAmB,CACzC,mBAAoB,CACpB,WAAY,CACZ,YAAa,CACb,iBAAkB,CAClB,SACF,CACA,kBACE,iBAAkB,CAClB,mCACF,CAKA,qGACE,iBAAkB,CAClB,SAAU,CACV,YAAa,CACb,YACF,CACA,uBACE,OAAQ,CAAE,KAAM,CAChB,iBAAkB,CAClB,iBACF,CACA,uBACE,QAAS,CAAE,MAAO,CAClB,iBAAkB,CAClB,iBACF,CACA,6BACE,OAAQ,CAAE,QACZ,CACA,0BACE,MAAO,CAAE,QACX,CAEA,oBACE,iBAAkB,CAAE,MAAO,CAAE,KAAM,CACnC,eAAgB,CAChB,SACF,CACA,mBACE,kBAAmB,CACnB,WAAY,CACZ,oBAAqB,CACrB,kBAAmB,CACnB,mBACF,CACA,2BACE,iBAAkB,CAClB,SAAU,CACV,yBAA2B,CAC3B,qBACF,CACA,8BACE,iBAAkB,CAClB,KAAM,CAAE,QAAS,CACjB,SACF,CACA,uBACE,iBAAkB,CAClB,cAAe,CACf,SACF,CACA,uCAAyC,4BAA8B,CACvE,4CAA8C,4BAA8B,CAE5E,kBACE,WAAY,CACZ,cACF,CACA,qEAGmD,eAAgB,CACjE,cAAe,CACf,sBAAuB,CACvB,mBAAoB,CACpB,iBAAkB,CAClB,QAAS,CACT,eAAgB,CAChB,gBAAiB,CACjB,mBAAoB,CACpB,aAAc,CACd,SAAU,CACV,iBAAkB,CAClB,gBAAiB,CACjB,uCAAwC,CACxC,yCAA0C,CAC1C,sCAAkC,CAAlC,iCACF,CACA,+EAEE,oBAAqB,CACrB,oBAAqB,CACrB,iBACF,CAEA,2BACE,iBAAkB,CAClB,MAAO,CAAE,OAAQ,CAAE,KAAM,CAAE,QAAS,CACpC,SACF,CAEA,uBACE,iBAAkB,CAClB,SAAU,CACV,YACF,CAIA,oBAAsB,aAAgB,CAEtC,iBACE,YACF,CAGA,mGAKE,2BAA4B,CAC5B,8BAAuB,CAAvB,sBACF,CAEA,oBACE,iBAAkB,CAClB,UAAW,CACX,QAAS,CACT,eAAgB,CAChB,iBACF,CAEA,mBACE,iBAAkB,CAClB,mBACF,CACA,wBAA0B,eAAkB,CAE5C,uBACE,iBAAkB,CAClB,iBAAkB,CAClB,SACF,CAKA,sEACE,kBACF,CAEA,qBAAuB,kBAAqB,CAC5C,yCAA2C,kBAAqB,CAChE,sBAAwB,gBAAmB,CAC3C,mGAA6G,kBAAqB,CAClI,kHAA4H,kBAAqB,CAEjJ,cACE,qBAAsB,CACtB,mCACF,CAGA,iBAAmB,kBAAqB,CAExC,aAEE,mCACE,iBACF,CACF,CAGA,wBAA0B,UAAa,CAGvC,6BAA+B,eAAkB;;ACvVjD;;;;EAIE,CAAC,qRAAqR,QAAQ,CAAC,SAAS,CAAC,oPAAoP,gBAAgB,CAAC,6PAA6P,iBAAiB,CAAC,aAAa,aAAa,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,iBAAiB,WAAW,CAAC,mBAAmB,cAAc,CAAC,yBAAyB,CAAC,eAAe,cAAc,CAAC,WAAW,CAAC,aAAa,CAAC,eAAe,CAAC,8BAA8B,CAAC,aAAa,mBAAmB,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,oBAAoB,CAAC,iCAAiC,CAAC,kBAAkB,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,oFAAoF,iBAAiB,CAAC,eAAe,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,iCAAiC,CAAC,wHAAwH,aAAa,CAAC,aAAa,CAAC,4BAA4B,mBAAmB,CAAC,+BAA+B,CAAC,cAAc,aAAa,CAAC,cAAc,eAAe,CAAC,cAAc,gBAAgB,CAAC,cAAc,aAAa,CAAC,cAAc,gBAAgB,CAAC,cAAc,eAAe,CAAC,aAAa,CAAC,sBAAsB,eAAe,CAAC,aAAa,CAAC,eAAe,CAAC,eAAe,CAAC,kBAAkB,CAAC,cAAc,iBAAiB,CAAC,oBAAoB,CAAC,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,2BAA2B,iBAAiB,CAAC,mBAAmB,CAAC,+BAA+B,eAAe,CAAC,mBAAmB,CAAC,iBAAiB,aAAa,CAAC,mBAAmB,CAAC,gBAAgB,kBAAkB,CAAC,gBAAgB,CAAC,2EAA2E,CAAC,eAAe,CAAC,8BAA8B,CAAC,0CAA0C,mBAAmB,CAAC,aAAa,CAAC,eAAe,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,cAAc,iBAAiB,CAAC,wBAAwB,aAAa,CAAC,4DAA4D,kBAAkB,CAAC,eAAe,CAAC,eAAe,CAAC,wCAAwC,kBAAkB,CAAC,eAAe,CAAC,+EAA+E,kBAAkB,CAAC,qBAAqB,sBAAsB,CAAC,iBAAiB,CAAC,qBAAqB,sBAAsB,CAAC,iBAAiB,CAAC,mBAAmB,oBAAoB,CAAC,iBAAiB,CAAC,wBAAwB,eAAe,CAAC,cAAc,iBAAiB,CAAC,wCAAwC,kBAAkB,CAAC,eAAe,CAAC,iBAAiB,kBAAkB,CAAC,eAAe,CAAC,iBAAiB,mBAAmB,CAAC,mCAAmC,wBAAwB,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,gBAAgB,mBAAmB,CAAC,uBAAuB,gCAAgC,CAAC,sBAAsB,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,6BAA6B,CAAC,2BAA2B,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,kCAAkC,qBAAqB,CAAC,kEAAkE,UAAU,CAAC,eAAe,oBAAoB,CAAC,yBAAyB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,8BAA8B,CAAC,oBAAoB,4BAA4B,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,eAAe,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,aAAa,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,yBAAyB,sBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,kBAAkB,CAAC,0DAA0D,UAAU,CAAC,eAAe,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,uBAAuB,kBAAkB,CAAC,0DAA0D,UAAU,CAAC,eAAe,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,8CAA8C,UAAU,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,qFAAqF,kBAAkB,CAAC,0DAA0D,mBAAmB,CAAC,wBAAwB,CAAC,0HAA0H,wBAAwB,CAAC,4EAA4E,WAAW,CAAC,eAAe,CAAC,2EAA2E,uBAAuB,CAAC,eAAe,CAAC,sCAAsC,WAAW,CAAC,aAAa,CAAC,qCAAqC,uBAAuB,CAAC,aAAa,CAAC,gSAAgS,gBAAgB,CAAC,wLAAwL,iBAAiB,CAAC,oLAAoL,gBAAgB;;AAE/uM;;;;EAIE,CAAC,+BAA+B,iBAAiB,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,yCAAyC,wBAAwB,CAAC,yBAAyB,CAAC,6CAA6C,yBAAyB,CAAC,0BAA0B,CAAC,8CAA8C,yBAAyB,CAAC,0BAA0B,CAAC,iDAAiD,yBAAyB,CAAC,0BAA0B,CAAC,+CAA+C,yBAAyB,CAAC,0BAA0B,CAAC,iDAAiD,yBAAyB,CAAC,0BAA0B,CAAC,qCAAqC,4BAA4B,CAAC,8BAAqB,CAArB,sBAAsB,CAAC,+CAA+C,wBAAwB,CAAC,gDAAgD,wBAAwB,CAAC,mDAAmD,wBAAwB,CAAC,iDAAiD,wBAAwB,CAAC,mDAAmD,wBAAwB,CAAC,gDAAgD,iBAAiB,CAAC,eAAe,CAAC,eAAe,CCNvwC,kBACE,iBACF,CACA,6BAA+B,kBAAmB,CAAE,aAAc,CAAE,8BAAiC,CACrG,0CAA4C,kBAAqB,CACjE,yJAAmK,6BAAmC,CACtM,wKAAkL,6BAAmC,CACrN,qCAAuC,0BAA8B,CACrE,sBAAwB,aAAgB,CAExC,6DAA+D,aAAgB,CAE/E,sCAAwC,kBAAmB,CAAE,2BAA6B,CAC1F,2CAA6C,aAAgB,CAE7D,2FAA2C,UAAa,CAExD,iCAAmC,UAAa,CAChD,gCAAkC,UAAa,CAC/C,kCAAoC,aAAgB,CACpD,+BAAiC,aAAgB,CACjD,iCAAmC,aAAgB,CACnD,8BAAgC,UAAc,CAC9C,mCAAqC,aAAe,CACpD,qCAAuC,aAAgB,CACvD,oEAAuE,UAAc,CAErF,sEAAqC,aAAgB,CACrD,kCAAoC,UAAa,CACjD,iCAAmC,aAAgB,CACnD,mCAAqC,UAAa,CAClD,+BAAiC,aAAgB,CACjD,oCAAsC,UAAa,CACnD,kCAAoC,aAAgB,CACpD,kCAAoC,aAAgB,CACpD,8BAAgC,aAAgB,CAChD,oCAAsC,aAAgB,CACtD,6BAA+B,UAAa,CAC5C,+BAAiC,aAAgB,CACjD,gCAAkC,aAAgB,CAElD,oDAAsD,kBAAqB,CAC3E,8CAAgD,sBAAsB,CAAE,oBAAwB,CCrChG,0BAA4B,UAAW,CAAE,qBAAwB,CACjE,uCAAyC,eAAkB,CAC3D,gJAA0J,eAAkB,CAC5K,+JAAyK,eAAkB,CAE3L,mCAAqC,kBAAmB,CAAE,wCAA0C,CAAE,UAAa,CACnH,sCAAwC,UAAW,CAAE,gBAAmB,CACxE,kCAAoC,0BAA6B,CAEjE,2BAA6B,aAAgB,CAC7C,wBAA0B,UAAa,CACvC,0BAA4B,aAAiB,CAC7C,uBAAyB,aAAgB,CACzC,6DAAgE,UAAa,CAG7E,qHAA8B,UAAa,CAC3C,4BAA8B,UAAa,CAC3C,6BAA+B,UAAa,CAE5C,4BAA8B,aAAgB,CAC9C,2BAA6B,UAAU,CAAE,eAAoB,CAC7D,0BAA4B,UAAU,CAAE,iBAAmB,CAC3D,4BAA8B,aAAe,CAC7C,wBAA0B,UAAa,CACvC,2BAA6B,aAAgB,CAC7C,uBAAyB,aAAgB,CACzC,6BAA+B,aAAgB,CAC/C,0BAA4B,aAAgB,CAC5C,sBAAwB,aAAgB,CACxC,wBAA0B,aAAa,CAAE,iBAAiB,CAAE,oBAAsB,CAClF,yBAA2B,2BAA8B,CAEzD,oDAAsD,kBAAqB,CAC3E,kDAAoD,sBAAsB,CAAE,aAAgB,CAE5F,0BAA4B,4sFAA+sF,CC7C3uF,2BAA6B,UAAa,CAC1C,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,0BAA4B,UAAa,CACzC,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAa,CAC/E,4BAA8B,UAAc,CAC5C,kDAAqD,UAAa,CAClE,wBAA0B,UAAa,CACvC,wBAA0B,UAAa,CAEvC,6CAA+C,kBAAqB,CACpE,uCAAyC,sBAAsB,CAAE,oBAAwB,CCXzF,0BAA4B,kBAAmB,CAAE,UAAc,CAC/D,uCAAyC,kBAAqB,CAC9D,gJAA0J,8BAAqC,CAC/L,+JAAyK,8BAAqC,CAC9M,mCAAqC,kBAAmB,CAAE,8BAAiC,CAC3F,wCAA0C,UAAc,CACxD,+CAAiD,aAAgB,CACjE,sCAAwC,UAAc,CACtD,kCAAoC,0BAA8B,CAElE,+BAAiC,UAAW,CAAE,iBAAiB,CAAE,eAAkB,CACnF,4BAA8B,aAAgB,CAC9C,+DAAkE,aAAgB,CAClF,+BAAiC,UAAa,CAC9C,8BAAgC,aAAgB,CAChD,4BAA8B,UAAa,CAC3C,6DAAgE,aAAgB,CAChF,yFAA6F,UAAc,CAC3G,+BAAiC,UAAa,CAC9C,4BAA8B,aAAgB,CAC9C,+CAAiD,oBAAuB,CACxE,8DAAiE,aAAgB,CACjF,6BAA+B,aAAgB,CAE/C,iDAAmD,kBAAqB,CCdxE,sBACE,kCAAoC,CACpC,uBAAyB,CACzB,WACF,CACA,+BACE,aAAc,CACd,wBAAyB,CACzB,WACF,CACA,8BAAgC,8BAAiC,CACjE,kCAAoC,aAAgB,CACpD,sDAAwD,6BAAuC,CAC/F,oIAA8I,6BAAuC,CACrL,mJAA6J,6BAAuC,CACpM,2BAA6B,aAAgB,CAC7C,sDAAyD,aAAgB,CACzE,0BAA4B,aAAgB,CAC5C,4BAA8B,aAAgB,CAC9C,8BAAgC,aAAgB,CAChD,uBAAyB,aAAgB,CACzC,2BAA6B,aAAgB,CAC7C,4BAA8B,aAAgB,CAC9C,2BAA6B,aAAgB,CAC7C,wBAA0B,aAAgB,CAE1C,+CAAyB,aAAgB,CAEzC,0DAA+B,aAAgB,CAC/C,4BAA8B,aAAgB,CAE9C,iFAA6B,aAAgB,CAC7C,6CAA+C,kBAAqB,CACpE,uCAAyC,yBAA0B,CAAE,oBAAyB,CCtC9F,cAAiB,sIAA2J,CAC5K,yBAA2B,kBAAmB,CAAE,aAAgB,CAEhE,2BAA6B,aAAgB,CAC7C,6BAA+B,aAAgB,CAC/C,8BAAgC,aAAc,CAAE,eAAgB,CAAE,eAAmB,CACrF,0BAA4B,aAAc,CAAE,iBAAoB,CAEhE,gEAAmC,aAAgB,CACnD,iCAAmC,aAAgB,CACnD,2BAA6B,UAAc,CAAE,eAAmB,CAChE,+BAAiC,aAAgB,CACjD,+BAAiC,aAAgB,CAEjD,4DAAiC,aAAgB,CACjD,8BAAgC,aAAc,CAAE,iBAAoB,CAEpE,sDAA6B,aAAgB,CAC7C,4BAA8B,aAAgB,CAC9C,0BAA4B,aAAc,CAAE,eAAiB,CAAE,iBAAkB,CAAE,yBAA4B,CAC/G,gCAAkC,aAAgB,CAClD,gCAAkC,aAAgB,CAClD,8BAAgC,aAAgB,CAEhD,4DAAgC,aAAgB,CAChD,qCAAuC,UAAc,CAAE,kCAAsC,CAAE,eAAoB,CACnH,gCAAkC,UAAc,CAAE,mCAAuC,CAAE,eAAoB,CAE/G,iCAAmC,6BAAgC,CACnE,gDAAkD,kBAAqB,CACvE,kCAAoC,kBAAmB,CAAE,8BAAiC,CAC1F,uCAAyC,aAAgB,CACzD,8CAAgD,aAAgB,CAChE,qCAAuC,aAAgB,CACvD,0CAA4C,wBAAyB,CAAE,uBAAyB,CAAE,eAAmB,CAErH,sCAAwC,kBAAqB,CAE7D,0BACE,uDAA8D,CAC9D,aAAc,CACd,kCACF,CAEA,kDACE,kCAAoC,CACpC,uBACF,CC/CA,wBAA0B,WAAgB,CAC1C,0BAA4B,UAAgB,CAC5C,2BAA6B,eAAgB,CAAE,eAAiB,CAAE,UAAgB,CAClF,wBAA0B,eAAiB,CAAE,UAAgB,CAM7D,+LAA8B,UAAc,CAC5C,2BAA6B,UAAgB,CAE7C,sDAA8B,WAAgB,CAC9C,6BAA+B,UAAa,CAC5C,yBAA2B,SAAgB,CAC3C,6BAA+B,UAAgB,CAC/C,uBAAyB,UAAgB,CACzC,wBAA0B,UAAgB,CAC1C,6CAA+C,kBAAqB,CAEpE,2BAA6B,UAAa,CAC1C,2BAA6B,UAAa,CAC1C,WAAc,sIAAiJ,CAG/J,uCAAyC,sBAAsB,CAAE,oBAAwB,CAEzF,uBACE,uDAA8D,CAC9D,aAAc,CACd,kCACF,CAEA,+CACE,kCAAoC,CACpC,uBACF,CCzCA,4BAA8B,eAAmB,CAAE,UAAgB,CACnE,yCAA2C,kBAAqB,CAChE,sJAAgK,6BAAoC,CACpM,qKAA+K,6BAAoC,CACnN,qCAAuC,eAAgB,CAAE,2BAAiC,CAC1F,0CAA4C,UAAa,CAEzD,yFAA0C,UAAgB,CAC1D,oCAAsC,0BAAgC,CAEtE,iCAAmC,aAAc,CAAE,eAAmB,CACtE,8BAAgC,UAAa,CAC7C,gCAAkC,aAAgB,CAClD,6BAA+B,UAAa,CAC5C,kCAAoC,UAAa,CACjD,oCAAsC,UAAa,CACnD,kEAAqE,UAAa,CAClF,kCAAoC,aAAgB,CACpD,kCAAoC,UAAa,CACjD,iCAAmC,UAAgB,CACnD,gCAAkC,UAAa,CAC/C,8BAAgC,UAAa,CAC7C,mCAAqC,aAAgB,CACrD,iCAAmC,UAAa,CAChD,iCAAmC,UAAa,CAChD,6BAA+B,aAAgB,CAC/C,mCAAqC,aAAgB,CACrD,+BAAiC,SAAgB,CAEjD,mDAAqD,eAAkB,CCnBvE,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,kBAAoB,aAAgB,CACpC,iBAAmB,aAAgB,CACnC,iBAAmB,aAAgB,CACnC,iBAAmB,aAAgB,CACnC,iBAAoB,aAAgB,CACpC,wBAA2B,aAAgB,CAC3C,wBAA2B,aAAgB,CAC3C,qBAAuB,aAAgB,CACvC,yBAA2B,aAAgB,CAC3C,wBAA2B,aAAgB,CAC3C,sBAAwB,aAAgB,CACxC,sBAAwB,aAAgB,CACxC,uBAAyB,aAAgB,CAIzC,gBACE,kBAAmB,CACnB,kBAAmB,CACnB,qBACF,CACA,0BACE,aAAc,CACd,wBACF,CACA,2BACE,wBAAyB,CACzB,aACF,CAEA,mCACE,gBACF,CAEA,2BAA6B,aAAgB,CAC7C,0BAA4B,aAAgB,CAE5C,4BAA8B,aAAgB,CAE9C,oDAA6B,aAAgB,CAC7C,wBAA0B,aAAgB,CAE1C,6BAA+B,aAAgB,CAC/C,+BAAiC,aAAgB,CACjD,wDAA2D,aAAgB,CAE3E,6BAA+B,aAAgB,CAC/C,6BAA+B,aAAgB,CAE/C,4BAA8B,aAAc,CAAE,iBAAmB,CAEjE,2BAA6B,aAAgB,CAC7C,6BAA+B,aAAgB,CAE/C,yBAA2B,aAAgB,CAC3C,8BAAgC,aAAgB,CAChD,4BAA8B,aAAgB,CAC9C,4BAA8B,aAAgB,CAC9C,4CAA8C,aAAgB,CAC9D,+CAAiD,aAAgB,CACjE,wBAA0B,aAAgB,CAC1C,8BAAgC,aAAgB,CAChD,uBACE,iBAAkB,CAClB,4BAA6B,CAC7B,aACF,CACA,yBAA2B,aAAc,CAAE,cAAiB,CAC5D,4BAA8B,aAAgB,CAC9C,uBACE,UAAW,CACX,yBAA0B,CAC1B,oCAA6B,CAA7B,iCAA6B,CAA7B,4BACF,CACA,0DAEE,aAAc,CACd,gCACF,CAEA,kDAAoD,kBAAqB,CACzE,sDAAmD,4BAAmC,CAAtF,iDAAmD,4BAAmC,CACtF,kKAA4K,4BAAmC,CAE/M,mDAAqD,kBAAqB,CAC1E,sJAAgK,kBAAqB,CACrL,qKAA+K,kBAAqB,CAOpM,2BAEE,6CAA8C,CAC9C,qCACF,CAGA,oCACE,cACF,CAKA,8CACE,wBACF,CAEA,iDACE,aACF,CAGA,+CACE,wBACF,CAEA,kDACE,aACF,CAGA,uCACE,aACF,CACA,gDAAkD,aAAgB,CAClE,mDAAqD,UAAa,CAClE,oDAAsD,aAAgB,CAEtE,2DACE,aACF,CAGA,mCAAqC,6BAAgC,CAGrE,4DAA8D,eAAqB,CACnF,kDAAoD,qBAA2B,CAC/E,2DAA6D,kBAAqB,CAClF,iDAAmD,wBAA2B,CAG9E,4DACE,8BACF,CACA,6DACE,0BACF","file":"chunk-vendors.css","sourcesContent":[".CodeMirror-foldmarker {\n color: blue;\n text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;\n font-family: arial;\n line-height: .3;\n cursor: pointer;\n}\n.CodeMirror-foldgutter {\n width: .7em;\n}\n.CodeMirror-foldgutter-open,\n.CodeMirror-foldgutter-folded {\n cursor: pointer;\n}\n.CodeMirror-foldgutter-open:after {\n content: \"\\25BE\";\n}\n.CodeMirror-foldgutter-folded:after {\n content: \"\\25B8\";\n}\n","/* BASICS */\n\n.CodeMirror {\n /* Set height, width, borders, and global font properties here */\n font-family: monospace;\n height: 300px;\n color: black;\n direction: ltr;\n}\n\n/* PADDING */\n\n.CodeMirror-lines {\n padding: 4px 0; /* Vertical padding around content */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n padding: 0 4px; /* Horizontal padding of content */\n}\n\n.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n background-color: white; /* The little square between H and V scrollbars */\n}\n\n/* GUTTER */\n\n.CodeMirror-gutters {\n border-right: 1px solid #ddd;\n background-color: #f7f7f7;\n white-space: nowrap;\n}\n.CodeMirror-linenumbers {}\n.CodeMirror-linenumber {\n padding: 0 3px 0 5px;\n min-width: 20px;\n text-align: right;\n color: #999;\n white-space: nowrap;\n}\n\n.CodeMirror-guttermarker { color: black; }\n.CodeMirror-guttermarker-subtle { color: #999; }\n\n/* CURSOR */\n\n.CodeMirror-cursor {\n border-left: 1px solid black;\n border-right: none;\n width: 0;\n}\n/* Shown when moving in bi-directional text */\n.CodeMirror div.CodeMirror-secondarycursor {\n border-left: 1px solid silver;\n}\n.cm-fat-cursor .CodeMirror-cursor {\n width: auto;\n border: 0 !important;\n background: #7e7;\n}\n.cm-fat-cursor div.CodeMirror-cursors {\n z-index: 1;\n}\n.cm-fat-cursor .CodeMirror-line::selection,\n.cm-fat-cursor .CodeMirror-line > span::selection, \n.cm-fat-cursor .CodeMirror-line > span > span::selection { background: transparent; }\n.cm-fat-cursor .CodeMirror-line::-moz-selection,\n.cm-fat-cursor .CodeMirror-line > span::-moz-selection,\n.cm-fat-cursor .CodeMirror-line > span > span::-moz-selection { background: transparent; }\n.cm-fat-cursor { caret-color: transparent; }\n@-moz-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@-webkit-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n\n/* Can style cursor different in overwrite (non-insert) mode */\n.CodeMirror-overwrite .CodeMirror-cursor {}\n\n.cm-tab { display: inline-block; text-decoration: inherit; }\n\n.CodeMirror-rulers {\n position: absolute;\n left: 0; right: 0; top: -50px; bottom: 0;\n overflow: hidden;\n}\n.CodeMirror-ruler {\n border-left: 1px solid #ccc;\n top: 0; bottom: 0;\n position: absolute;\n}\n\n/* DEFAULT THEME */\n\n.cm-s-default .cm-header {color: blue;}\n.cm-s-default .cm-quote {color: #090;}\n.cm-negative {color: #d44;}\n.cm-positive {color: #292;}\n.cm-header, .cm-strong {font-weight: bold;}\n.cm-em {font-style: italic;}\n.cm-link {text-decoration: underline;}\n.cm-strikethrough {text-decoration: line-through;}\n\n.cm-s-default .cm-keyword {color: #708;}\n.cm-s-default .cm-atom {color: #219;}\n.cm-s-default .cm-number {color: #164;}\n.cm-s-default .cm-def {color: #00f;}\n.cm-s-default .cm-variable,\n.cm-s-default .cm-punctuation,\n.cm-s-default .cm-property,\n.cm-s-default .cm-operator {}\n.cm-s-default .cm-variable-2 {color: #05a;}\n.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}\n.cm-s-default .cm-comment {color: #a50;}\n.cm-s-default .cm-string {color: #a11;}\n.cm-s-default .cm-string-2 {color: #f50;}\n.cm-s-default .cm-meta {color: #555;}\n.cm-s-default .cm-qualifier {color: #555;}\n.cm-s-default .cm-builtin {color: #30a;}\n.cm-s-default .cm-bracket {color: #997;}\n.cm-s-default .cm-tag {color: #170;}\n.cm-s-default .cm-attribute {color: #00c;}\n.cm-s-default .cm-hr {color: #999;}\n.cm-s-default .cm-link {color: #00c;}\n\n.cm-s-default .cm-error {color: #f00;}\n.cm-invalidchar {color: #f00;}\n\n.CodeMirror-composing { border-bottom: 2px solid; }\n\n/* Default styles for common addons */\n\ndiv.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}\ndiv.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}\n.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }\n.CodeMirror-activeline-background {background: #e8f2ff;}\n\n/* STOP */\n\n/* The rest of this file contains styles related to the mechanics of\n the editor. You probably shouldn't touch them. */\n\n.CodeMirror {\n position: relative;\n overflow: hidden;\n background: white;\n}\n\n.CodeMirror-scroll {\n overflow: scroll !important; /* Things will break if this is overridden */\n /* 50px is the magic margin used to hide the element's real scrollbars */\n /* See overflow: hidden in .CodeMirror */\n margin-bottom: -50px; margin-right: -50px;\n padding-bottom: 50px;\n height: 100%;\n outline: none; /* Prevent dragging from highlighting the element */\n position: relative;\n z-index: 0;\n}\n.CodeMirror-sizer {\n position: relative;\n border-right: 50px solid transparent;\n}\n\n/* The fake, visible scrollbars. Used to force redraw during scrolling\n before actual scrolling happens, thus preventing shaking and\n flickering artifacts. */\n.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n position: absolute;\n z-index: 6;\n display: none;\n outline: none;\n}\n.CodeMirror-vscrollbar {\n right: 0; top: 0;\n overflow-x: hidden;\n overflow-y: scroll;\n}\n.CodeMirror-hscrollbar {\n bottom: 0; left: 0;\n overflow-y: hidden;\n overflow-x: scroll;\n}\n.CodeMirror-scrollbar-filler {\n right: 0; bottom: 0;\n}\n.CodeMirror-gutter-filler {\n left: 0; bottom: 0;\n}\n\n.CodeMirror-gutters {\n position: absolute; left: 0; top: 0;\n min-height: 100%;\n z-index: 3;\n}\n.CodeMirror-gutter {\n white-space: normal;\n height: 100%;\n display: inline-block;\n vertical-align: top;\n margin-bottom: -50px;\n}\n.CodeMirror-gutter-wrapper {\n position: absolute;\n z-index: 4;\n background: none !important;\n border: none !important;\n}\n.CodeMirror-gutter-background {\n position: absolute;\n top: 0; bottom: 0;\n z-index: 4;\n}\n.CodeMirror-gutter-elt {\n position: absolute;\n cursor: default;\n z-index: 4;\n}\n.CodeMirror-gutter-wrapper ::selection { background-color: transparent }\n.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }\n\n.CodeMirror-lines {\n cursor: text;\n min-height: 1px; /* prevents collapsing before first draw */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n /* Reset some styles that the rest of the page might have set */\n -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;\n border-width: 0;\n background: transparent;\n font-family: inherit;\n font-size: inherit;\n margin: 0;\n white-space: pre;\n word-wrap: normal;\n line-height: inherit;\n color: inherit;\n z-index: 2;\n position: relative;\n overflow: visible;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-variant-ligatures: contextual;\n font-variant-ligatures: contextual;\n}\n.CodeMirror-wrap pre.CodeMirror-line,\n.CodeMirror-wrap pre.CodeMirror-line-like {\n word-wrap: break-word;\n white-space: pre-wrap;\n word-break: normal;\n}\n\n.CodeMirror-linebackground {\n position: absolute;\n left: 0; right: 0; top: 0; bottom: 0;\n z-index: 0;\n}\n\n.CodeMirror-linewidget {\n position: relative;\n z-index: 2;\n padding: 0.1px; /* Force widget margins to stay inside of the container */\n}\n\n.CodeMirror-widget {}\n\n.CodeMirror-rtl pre { direction: rtl; }\n\n.CodeMirror-code {\n outline: none;\n}\n\n/* Force content-box sizing for the elements where we expect it */\n.CodeMirror-scroll,\n.CodeMirror-sizer,\n.CodeMirror-gutter,\n.CodeMirror-gutters,\n.CodeMirror-linenumber {\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\n\n.CodeMirror-measure {\n position: absolute;\n width: 100%;\n height: 0;\n overflow: hidden;\n visibility: hidden;\n}\n\n.CodeMirror-cursor {\n position: absolute;\n pointer-events: none;\n}\n.CodeMirror-measure pre { position: static; }\n\ndiv.CodeMirror-cursors {\n visibility: hidden;\n position: relative;\n z-index: 3;\n}\ndiv.CodeMirror-dragcursors {\n visibility: visible;\n}\n\n.CodeMirror-focused div.CodeMirror-cursors {\n visibility: visible;\n}\n\n.CodeMirror-selected { background: #d9d9d9; }\n.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }\n.CodeMirror-crosshair { cursor: crosshair; }\n.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }\n.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }\n\n.cm-searching {\n background-color: #ffa;\n background-color: rgba(255, 255, 0, .4);\n}\n\n/* Used to force a border model for a node */\n.cm-force-border { padding-right: .1px; }\n\n@media print {\n /* Hide the cursor when printing */\n .CodeMirror div.CodeMirror-cursors {\n visibility: hidden;\n }\n}\n\n/* See issue #2901 */\n.cm-tab-wrap-hack:after { content: ''; }\n\n/* Help users use markselection to safely style text background */\nspan.CodeMirror-selectedtext { background: none; }\n","/*!\n * css of showdowns v0.5.7\n * Copyright (c) 2019-present, Jhuix (Hui Jin) \n * Released under the MIT License.\n */.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{max-width:100%;height:auto;margin:0 auto;display:inherit;-ms-interpolation-mode:bicubic}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{padding-bottom:.3em;border-bottom:1px solid #d6d6d6}.showdowns h1{font-size:2em}.showdowns h2{font-size:1.5em}.showdowns h3{font-size:1.25em}.showdowns h4{font-size:1em}.showdowns h5{font-size:.875em}.showdowns h6{font-size:.85em;color:#6a737d}.showdowns .subheader{line-height:1.4;color:#6f6f6f;font-weight:400;margin-top:.2em;margin-bottom:.5em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{margin-left:1.25em;margin-bottom:0;list-style:none}.showdowns ul li ol,.showdowns ul li ul{margin-left:1.25em;margin-bottom:0}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-left:1.25em;margin-bottom:0}.showdowns dl dt{margin-bottom:.3em;font-weight:600}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{text-transform:uppercase;font-size:90%;color:#222;cursor:help}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{margin:0 0 16px;padding:0 15px;line-height:1.5;color:#5c5c5c;border-left:4px solid #d6d6d6}.showdowns blockquote cite{display:block;font-size:.8125em;color:#555}.showdowns blockquote cite:before{content:\"\\2014 \\0020\"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;border:1px solid #dfdfdf;margin-top:1.5em;margin-bottom:1.5em;padding:.125em .3125em .0625em}.showdowns pre code{background-color:transparent;border:0;padding:0}.showdowns table{background:#fff;margin-bottom:1.25em;table-layout:auto;overflow:auto;border-collapse:collapse;border-spacing:0}.showdowns table caption{background:transparent;color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{color:#222;font-weight:600;line-height:1.125em;border:1px solid #d6d6d6;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{color:#222;line-height:1.125em;border:1px solid #d6d6d6;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{line-height:1.125em;border:1px solid #d6d6d6}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-center:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto;display:inherit}.showdowns .diagram-right:not(.vega-embed):not(.asciimath):not(.latex) svg{margin:auto 0 auto auto;display:inherit}.showdowns .diagram-center.vega-embed{margin:auto;display:table}.showdowns .diagram-right.vega-embed{margin:auto 0 auto auto;display:table}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .latex.diagram-center .katex,.showdowns .latex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .latex.diagram-right .katex,.showdowns .latex.diagram-right .katex-display{text-align:right}\n\n/*!\n * css of showdowns v0.5.7\n * Copyright (c) 2019-present, Jhuix (Hui Jin) \n * Released under the MIT License.\n */.showdowns .showdown-container{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid #eee;border-radius:.25rem}.showdowns .showdown-container.container{border-left-width:.25rem;border-right-width:.25rem}.showdowns .showdown-container.container.tip{border-left-color:#5bc0de;border-right-color:#5bc0de}.showdowns .showdown-container.container.info{border-left-color:#cce5ff;border-right-color:#cce5ff}.showdowns .showdown-container.container.warning{border-left-color:#f0ad4e;border-right-color:#f0ad4e}.showdowns .showdown-container.container.error{border-left-color:#d9534f;border-right-color:#d9534f}.showdowns .showdown-container.container.success{border-left-color:#67c23a;border-right-color:#67c23a}.showdowns .showdown-container.alert{border:1px solid transparent;transition:opacity .2s}.showdowns .showdown-container.alert.alert-tip{background-color:#5bc0de}.showdowns .showdown-container.alert.alert-info{background-color:#cce5ff}.showdowns .showdown-container.alert.alert-warning{background-color:#f0ad4e}.showdowns .showdown-container.alert.alert-error{background-color:#d9534f}.showdowns .showdown-container.alert.alert-success{background-color:#67c23a}.showdowns .showdown-container .container-title{font-size:1.25rem;font-weight:700;line-height:1.2}","/*\nhttp://lesscss.org/ dark theme\nPorted to CodeMirror by Peter Kroon\n*/\n.cm-s-lesser-dark {\n line-height: 1.3em;\n}\n.cm-s-lesser-dark.CodeMirror { background: #262626; color: #EBEFE7; text-shadow: 0 -1px 1px #262626; }\n.cm-s-lesser-dark div.CodeMirror-selected { background: #45443B; } /* 33322B*/\n.cm-s-lesser-dark .CodeMirror-line::selection, .cm-s-lesser-dark .CodeMirror-line > span::selection, .cm-s-lesser-dark .CodeMirror-line > span > span::selection { background: rgba(69, 68, 59, .99); }\n.cm-s-lesser-dark .CodeMirror-line::-moz-selection, .cm-s-lesser-dark .CodeMirror-line > span::-moz-selection, .cm-s-lesser-dark .CodeMirror-line > span > span::-moz-selection { background: rgba(69, 68, 59, .99); }\n.cm-s-lesser-dark .CodeMirror-cursor { border-left: 1px solid white; }\n.cm-s-lesser-dark pre { padding: 0 8px; }/*editable code holder*/\n\n.cm-s-lesser-dark.CodeMirror span.CodeMirror-matchingbracket { color: #7EFC7E; }/*65FC65*/\n\n.cm-s-lesser-dark .CodeMirror-gutters { background: #262626; border-right:1px solid #aaa; }\n.cm-s-lesser-dark .CodeMirror-guttermarker { color: #599eff; }\n.cm-s-lesser-dark .CodeMirror-guttermarker-subtle { color: #777; }\n.cm-s-lesser-dark .CodeMirror-linenumber { color: #777; }\n\n.cm-s-lesser-dark span.cm-header { color: #a0a; }\n.cm-s-lesser-dark span.cm-quote { color: #090; }\n.cm-s-lesser-dark span.cm-keyword { color: #599eff; }\n.cm-s-lesser-dark span.cm-atom { color: #C2B470; }\n.cm-s-lesser-dark span.cm-number { color: #B35E4D; }\n.cm-s-lesser-dark span.cm-def { color: white; }\n.cm-s-lesser-dark span.cm-variable { color:#D9BF8C; }\n.cm-s-lesser-dark span.cm-variable-2 { color: #669199; }\n.cm-s-lesser-dark span.cm-variable-3, .cm-s-lesser-dark span.cm-type { color: white; }\n.cm-s-lesser-dark span.cm-property { color: #92A75C; }\n.cm-s-lesser-dark span.cm-operator { color: #92A75C; }\n.cm-s-lesser-dark span.cm-comment { color: #666; }\n.cm-s-lesser-dark span.cm-string { color: #BCD279; }\n.cm-s-lesser-dark span.cm-string-2 { color: #f50; }\n.cm-s-lesser-dark span.cm-meta { color: #738C73; }\n.cm-s-lesser-dark span.cm-qualifier { color: #555; }\n.cm-s-lesser-dark span.cm-builtin { color: #ff9e59; }\n.cm-s-lesser-dark span.cm-bracket { color: #EBEFE7; }\n.cm-s-lesser-dark span.cm-tag { color: #669199; }\n.cm-s-lesser-dark span.cm-attribute { color: #81a4d5; }\n.cm-s-lesser-dark span.cm-hr { color: #999; }\n.cm-s-lesser-dark span.cm-link { color: #7070E6; }\n.cm-s-lesser-dark span.cm-error { color: #9d1e15; }\n\n.cm-s-lesser-dark .CodeMirror-activeline-background { background: #3C3A3A; }\n.cm-s-lesser-dark .CodeMirror-matchingbracket { outline:1px solid grey; color:white !important; }\n","/*\n MDN-LIKE Theme - Mozilla\n Ported to CodeMirror by Peter Kroon \n Report bugs/issues here: https://github.com/codemirror/CodeMirror/issues\n GitHub: @peterkroon\n\n The mdn-like theme is inspired on the displayed code examples at: https://developer.mozilla.org/en-US/docs/Web/CSS/animation\n\n*/\n.cm-s-mdn-like.CodeMirror { color: #999; background-color: #fff; }\n.cm-s-mdn-like div.CodeMirror-selected { background: #cfc; }\n.cm-s-mdn-like .CodeMirror-line::selection, .cm-s-mdn-like .CodeMirror-line > span::selection, .cm-s-mdn-like .CodeMirror-line > span > span::selection { background: #cfc; }\n.cm-s-mdn-like .CodeMirror-line::-moz-selection, .cm-s-mdn-like .CodeMirror-line > span::-moz-selection, .cm-s-mdn-like .CodeMirror-line > span > span::-moz-selection { background: #cfc; }\n\n.cm-s-mdn-like .CodeMirror-gutters { background: #f8f8f8; border-left: 6px solid rgba(0,83,159,0.65); color: #333; }\n.cm-s-mdn-like .CodeMirror-linenumber { color: #aaa; padding-left: 8px; }\n.cm-s-mdn-like .CodeMirror-cursor { border-left: 2px solid #222; }\n\n.cm-s-mdn-like .cm-keyword { color: #6262FF; }\n.cm-s-mdn-like .cm-atom { color: #F90; }\n.cm-s-mdn-like .cm-number { color: #ca7841; }\n.cm-s-mdn-like .cm-def { color: #8DA6CE; }\n.cm-s-mdn-like span.cm-variable-2, .cm-s-mdn-like span.cm-tag { color: #690; }\n.cm-s-mdn-like span.cm-variable-3, .cm-s-mdn-like span.cm-def, .cm-s-mdn-like span.cm-type { color: #07a; }\n\n.cm-s-mdn-like .cm-variable { color: #07a; }\n.cm-s-mdn-like .cm-property { color: #905; }\n.cm-s-mdn-like .cm-qualifier { color: #690; }\n\n.cm-s-mdn-like .cm-operator { color: #cda869; }\n.cm-s-mdn-like .cm-comment { color:#777; font-weight:normal; }\n.cm-s-mdn-like .cm-string { color:#07a; font-style:italic; }\n.cm-s-mdn-like .cm-string-2 { color:#bd6b18; } /*?*/\n.cm-s-mdn-like .cm-meta { color: #000; } /*?*/\n.cm-s-mdn-like .cm-builtin { color: #9B7536; } /*?*/\n.cm-s-mdn-like .cm-tag { color: #997643; }\n.cm-s-mdn-like .cm-attribute { color: #d6bb6d; } /*?*/\n.cm-s-mdn-like .cm-header { color: #FF6400; }\n.cm-s-mdn-like .cm-hr { color: #AEAEAE; }\n.cm-s-mdn-like .cm-link { color:#ad9361; font-style:italic; text-decoration:none; }\n.cm-s-mdn-like .cm-error { border-bottom: 1px solid red; }\n\ndiv.cm-s-mdn-like .CodeMirror-activeline-background { background: #efefff; }\ndiv.cm-s-mdn-like span.CodeMirror-matchingbracket { outline:1px solid grey; color: inherit; }\n\n.cm-s-mdn-like.CodeMirror { background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFcAAAAyCAYAAAAp8UeFAAAHvklEQVR42s2b63bcNgyEQZCSHCdt2vd/0tWF7I+Q6XgMXiTtuvU5Pl57ZQKkKHzEAOtF5KeIJBGJ8uvL599FRFREZhFx8DeXv8trn68RuGaC8TRfo3SNp9dlDDHedyLyTUTeRWStXKPZrjtpZxaRw5hPqozRs1N8/enzIiQRWcCgy4MUA0f+XWliDhyL8Lfyvx7ei/Ae3iQFHyw7U/59pQVIMEEPEz0G7XiwdRjzSfC3UTtz9vchIntxvry5iMgfIhJoEflOz2CQr3F5h/HfeFe+GTdLaKcu9L8LTeQb/R/7GgbsfKedyNdoHsN31uRPWrfZ5wsj/NzzRQHuToIdU3ahwnsKPxXCjJITuOsi7XLc7SG/v5GdALs7wf8JjTFiB5+QvTEfRyGOfX3Lrx8wxyQi3sNq46O7QahQiCsRFgqddjBouVEHOKDgXAQHD9gJCr5sMKkEdjwsarG/ww3BMHBU7OBjXnzdyY7SfCxf5/z6ATccrwlKuwC/jhznnPF4CgVzhhVf4xp2EixcBActO75iZ8/fM9zAs2OMzKdslgXWJ9XG8PQoOAMA5fGcsvORgv0doBXyHrCwfLJAOwo71QLNkb8n2Pl6EWiR7OCibtkPaz4Kc/0NNAze2gju3zOwekALDaCFPI5vjPFmgGY5AZqyGEvH1x7QfIb8YtxMnA/b+QQ0aQDAwc6JMFg8CbQZ4qoYEEHbRwNojuK3EHwd7VALSgq+MNDKzfT58T8qdpADrgW0GmgcAS1lhzztJmkAzcPNOQbsWEALBDSlMKUG0Eq4CLAQWvEVQ9WU57gZJwZtgPO3r9oBTQ9WO8TjqXINx8R0EYpiZEUWOF3FxkbJkgU9B2f41YBrIj5ZfsQa0M5kTgiAAqM3ShXLgu8XMqcrQBvJ0CL5pnTsfMB13oB8athpAq2XOQmcGmoACCLydx7nToa23ATaSIY2ichfOdPTGxlasXMLaL0MLZAOwAKIM+y8CmicobGdCcbbK9DzN+yYGVoNNI5iUKTMyYOjPse4A8SM1MmcXgU0toOq1yO/v8FOxlASyc7TgeYaAMBJHcY1CcCwGI/TK4AmDbDyKYBBtFUkRwto8gygiQEaByFgJ00BH2M8JWwQS1nafDXQCidWyOI8AcjDCSjCLk8ngObuAm3JAHAdubAmOaK06V8MNEsKPJOhobSprwQa6gD7DclRQdqcwL4zxqgBrQcabUiBLclRDKAlWp+etPkBaNMA0AKlrHwTdEByZAA4GM+SNluSY6wAzcMNewxmgig5Ks0nkrSpBvSaQHMdKTBAnLojOdYyGpQ254602ZILPdTD1hdlggdIm74jbTp8vDwF5ZYUeLWGJpWsh6XNyXgcYwVoJQTEhhTYkxzZjiU5npU2TaB979TQehlaAVq4kaGpiPwwwLkYUuBbQwocyQTv1tA0+1UFWoJF3iv1oq+qoSk8EQdJmwHkziIF7oOZk14EGitibAdjLYYK78H5vZOhtWpoI0ATGHs0Q8OMb4Ey+2bU2UYztCtA0wFAs7TplGLRVQCcqaFdGSPCeTI1QNIC52iWNzof6Uib7xjEp07mNNoUYmVosVItHrHzRlLgBn9LFyRHaQCtVUMbtTNhoXWiTOO9k/V8BdAc1Oq0ArSQs6/5SU0hckNy9NnXqQY0PGYo5dWJ7nINaN6o958FWin27aBaWRka1r5myvLOAm0j30eBJqCxHLReVclxhxOEN2JfDWjxBtAC7MIH1fVaGdoOp4qJYDgKtKPSFNID2gSnGldrCqkFZ+5UeQXQBIRrSwocbdZYQT/2LwRahBPBXoHrB8nxaGROST62DKUbQOMMzZIC9abkuELfQzQALWTnDNAm8KHWFOJgJ5+SHIvTPcmx1xQyZRhNL5Qci689aXMEaN/uNIWkEwDAvFpOZmgsBaaGnbs1NPa1Jm32gBZAIh1pCtG7TSH4aE0y1uVY4uqoFPisGlpP2rSA5qTecWn5agK6BzSpgAyD+wFaqhnYoSZ1Vwr8CmlTQbrcO3ZaX0NAEyMbYaAlyquFoLKK3SPby9CeVUPThrSJmkCAE0CrKUQadi4DrdSlWhmah0YL9z9vClH59YGbHx1J8VZTyAjQepJjmXwAKTDQI3omc3p1U4gDUf6RfcdYfrUp5ClAi2J3Ba6UOXGo+K+bQrjjssitG2SJzshaLwMtXgRagUNpYYoVkMSBLM+9GGiJZMvduG6DRZ4qc04DMPtQQxOjEtACmhO7K1AbNbQDEggZyJwscFpAGwENhoBeUwh3bWolhe8BTYVKxQEWrSUn/uhcM5KhvUu/+eQu0Lzhi+VrK0PrZZNDQKs9cpYUuFYgMVpD4/NxenJTiMCNqdUEUf1qZWjppLT5qSkkUZbCwkbZMSuVnu80hfSkzRbQeqCZSAh6huR4VtoM2gHAlLf72smuWgE+VV7XpE25Ab2WFDgyhnSuKbs4GuGzCjR+tIoUuMFg3kgcWKLTwRqanJQ2W00hAsenfaApRC42hbCvK1SlE0HtE9BGgneJO+ELamitD1YjjOYnNYVcraGhtKkW0EqVVeDx733I2NH581k1NNxNLG0i0IJ8/NjVaOZ0tYZ2Vtr0Xv7tPV3hkWp9EFkgS/J0vosngTaSoaG06WHi+xObQkaAdlbanP8B2+2l0f90LmUAAAAASUVORK5CYII=); }\n",".cm-s-neat span.cm-comment { color: #a86; }\n.cm-s-neat span.cm-keyword { line-height: 1em; font-weight: bold; color: blue; }\n.cm-s-neat span.cm-string { color: #a22; }\n.cm-s-neat span.cm-builtin { line-height: 1em; font-weight: bold; color: #077; }\n.cm-s-neat span.cm-special { line-height: 1em; font-weight: bold; color: #0aa; }\n.cm-s-neat span.cm-variable { color: black; }\n.cm-s-neat span.cm-number, .cm-s-neat span.cm-atom { color: #3a3; }\n.cm-s-neat span.cm-meta { color: #555; }\n.cm-s-neat span.cm-link { color: #3a3; }\n\n.cm-s-neat .CodeMirror-activeline-background { background: #e8f2ff; }\n.cm-s-neat .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; }\n",".cm-s-rubyblue.CodeMirror { background: #112435; color: white; }\n.cm-s-rubyblue div.CodeMirror-selected { background: #38566F; }\n.cm-s-rubyblue .CodeMirror-line::selection, .cm-s-rubyblue .CodeMirror-line > span::selection, .cm-s-rubyblue .CodeMirror-line > span > span::selection { background: rgba(56, 86, 111, 0.99); }\n.cm-s-rubyblue .CodeMirror-line::-moz-selection, .cm-s-rubyblue .CodeMirror-line > span::-moz-selection, .cm-s-rubyblue .CodeMirror-line > span > span::-moz-selection { background: rgba(56, 86, 111, 0.99); }\n.cm-s-rubyblue .CodeMirror-gutters { background: #1F4661; border-right: 7px solid #3E7087; }\n.cm-s-rubyblue .CodeMirror-guttermarker { color: white; }\n.cm-s-rubyblue .CodeMirror-guttermarker-subtle { color: #3E7087; }\n.cm-s-rubyblue .CodeMirror-linenumber { color: white; }\n.cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white; }\n\n.cm-s-rubyblue span.cm-comment { color: #999; font-style:italic; line-height: 1em; }\n.cm-s-rubyblue span.cm-atom { color: #F4C20B; }\n.cm-s-rubyblue span.cm-number, .cm-s-rubyblue span.cm-attribute { color: #82C6E0; }\n.cm-s-rubyblue span.cm-keyword { color: #F0F; }\n.cm-s-rubyblue span.cm-string { color: #F08047; }\n.cm-s-rubyblue span.cm-meta { color: #F0F; }\n.cm-s-rubyblue span.cm-variable-2, .cm-s-rubyblue span.cm-tag { color: #7BD827; }\n.cm-s-rubyblue span.cm-variable-3, .cm-s-rubyblue span.cm-def, .cm-s-rubyblue span.cm-type { color: white; }\n.cm-s-rubyblue span.cm-bracket { color: #F0F; }\n.cm-s-rubyblue span.cm-link { color: #F4C20B; }\n.cm-s-rubyblue span.CodeMirror-matchingbracket { color:#F0F !important; }\n.cm-s-rubyblue span.cm-builtin, .cm-s-rubyblue span.cm-special { color: #FF9D00; }\n.cm-s-rubyblue span.cm-error { color: #AF2018; }\n\n.cm-s-rubyblue .CodeMirror-activeline-background { background: #173047; }\n","/*\n\n Name: seti\n Author: Michael Kaminsky (http://github.com/mkaminsky11)\n\n Original seti color scheme by Jesse Weed (https://github.com/jesseweed/seti-syntax)\n\n*/\n\n\n.cm-s-seti.CodeMirror {\n background-color: #151718 !important;\n color: #CFD2D1 !important;\n border: none;\n}\n.cm-s-seti .CodeMirror-gutters {\n color: #404b53;\n background-color: #0E1112;\n border: none;\n}\n.cm-s-seti .CodeMirror-cursor { border-left: solid thin #f8f8f0; }\n.cm-s-seti .CodeMirror-linenumber { color: #6D8A88; }\n.cm-s-seti.CodeMirror-focused div.CodeMirror-selected { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti .CodeMirror-line::selection, .cm-s-seti .CodeMirror-line > span::selection, .cm-s-seti .CodeMirror-line > span > span::selection { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti .CodeMirror-line::-moz-selection, .cm-s-seti .CodeMirror-line > span::-moz-selection, .cm-s-seti .CodeMirror-line > span > span::-moz-selection { background: rgba(255, 255, 255, 0.10); }\n.cm-s-seti span.cm-comment { color: #41535b; }\n.cm-s-seti span.cm-string, .cm-s-seti span.cm-string-2 { color: #55b5db; }\n.cm-s-seti span.cm-number { color: #cd3f45; }\n.cm-s-seti span.cm-variable { color: #55b5db; }\n.cm-s-seti span.cm-variable-2 { color: #a074c4; }\n.cm-s-seti span.cm-def { color: #55b5db; }\n.cm-s-seti span.cm-keyword { color: #ff79c6; }\n.cm-s-seti span.cm-operator { color: #9fca56; }\n.cm-s-seti span.cm-keyword { color: #e6cd69; }\n.cm-s-seti span.cm-atom { color: #cd3f45; }\n.cm-s-seti span.cm-meta { color: #55b5db; }\n.cm-s-seti span.cm-tag { color: #55b5db; }\n.cm-s-seti span.cm-attribute { color: #9fca56; }\n.cm-s-seti span.cm-qualifier { color: #9fca56; }\n.cm-s-seti span.cm-property { color: #a074c4; }\n.cm-s-seti span.cm-variable-3, .cm-s-seti span.cm-type { color: #9fca56; }\n.cm-s-seti span.cm-builtin { color: #9fca56; }\n.cm-s-seti .CodeMirror-activeline-background { background: #101213; }\n.cm-s-seti .CodeMirror-matchingbracket { text-decoration: underline; color: white !important; }\n","/**\n Name: IntelliJ IDEA darcula theme\n From IntelliJ IDEA by JetBrains\n */\n\n.cm-s-darcula { font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif;}\n.cm-s-darcula.CodeMirror { background: #2B2B2B; color: #A9B7C6; }\n\n.cm-s-darcula span.cm-meta { color: #BBB529; }\n.cm-s-darcula span.cm-number { color: #6897BB; }\n.cm-s-darcula span.cm-keyword { color: #CC7832; line-height: 1em; font-weight: bold; }\n.cm-s-darcula span.cm-def { color: #A9B7C6; font-style: italic; }\n.cm-s-darcula span.cm-variable { color: #A9B7C6; }\n.cm-s-darcula span.cm-variable-2 { color: #A9B7C6; }\n.cm-s-darcula span.cm-variable-3 { color: #9876AA; }\n.cm-s-darcula span.cm-type { color: #AABBCC; font-weight: bold; }\n.cm-s-darcula span.cm-property { color: #FFC66D; }\n.cm-s-darcula span.cm-operator { color: #A9B7C6; }\n.cm-s-darcula span.cm-string { color: #6A8759; }\n.cm-s-darcula span.cm-string-2 { color: #6A8759; }\n.cm-s-darcula span.cm-comment { color: #61A151; font-style: italic; }\n.cm-s-darcula span.cm-link { color: #CC7832; }\n.cm-s-darcula span.cm-atom { color: #CC7832; }\n.cm-s-darcula span.cm-error { color: #BC3F3C; }\n.cm-s-darcula span.cm-tag { color: #629755; font-weight: bold; font-style: italic; text-decoration: underline; }\n.cm-s-darcula span.cm-attribute { color: #6897bb; }\n.cm-s-darcula span.cm-qualifier { color: #6A8759; }\n.cm-s-darcula span.cm-bracket { color: #A9B7C6; }\n.cm-s-darcula span.cm-builtin { color: #FF9E59; }\n.cm-s-darcula span.cm-special { color: #FF9E59; }\n.cm-s-darcula span.cm-matchhighlight { color: #FFFFFF; background-color: rgba(50, 89, 48, .7); font-weight: normal;}\n.cm-s-darcula span.cm-searching { color: #FFFFFF; background-color: rgba(61, 115, 59, .7); font-weight: normal;}\n\n.cm-s-darcula .CodeMirror-cursor { border-left: 1px solid #A9B7C6; }\n.cm-s-darcula .CodeMirror-activeline-background { background: #323232; }\n.cm-s-darcula .CodeMirror-gutters { background: #313335; border-right: 1px solid #313335; }\n.cm-s-darcula .CodeMirror-guttermarker { color: #FFEE80; }\n.cm-s-darcula .CodeMirror-guttermarker-subtle { color: #D0D0D0; }\n.cm-s-darcula .CodeMirrir-linenumber { color: #606366; }\n.cm-s-darcula .CodeMirror-matchingbracket { background-color: #3B514D; color: #FFEF28 !important; font-weight: bold; }\n\n.cm-s-darcula div.CodeMirror-selected { background: #214283; }\n\n.CodeMirror-hints.darcula {\n font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;\n color: #9C9E9E;\n background-color: #3B3E3F !important;\n}\n\n.CodeMirror-hints.darcula .CodeMirror-hint-active {\n background-color: #494D4E !important;\n color: #9C9E9E !important;\n}\n","/**\n Name: IDEA default theme\n From IntelliJ IDEA by JetBrains\n */\n\n.cm-s-idea span.cm-meta { color: #808000; }\n.cm-s-idea span.cm-number { color: #0000FF; }\n.cm-s-idea span.cm-keyword { line-height: 1em; font-weight: bold; color: #000080; }\n.cm-s-idea span.cm-atom { font-weight: bold; color: #000080; }\n.cm-s-idea span.cm-def { color: #000000; }\n.cm-s-idea span.cm-variable { color: black; }\n.cm-s-idea span.cm-variable-2 { color: black; }\n.cm-s-idea span.cm-variable-3, .cm-s-idea span.cm-type { color: black; }\n.cm-s-idea span.cm-property { color: black; }\n.cm-s-idea span.cm-operator { color: black; }\n.cm-s-idea span.cm-comment { color: #808080; }\n.cm-s-idea span.cm-string { color: #008000; }\n.cm-s-idea span.cm-string-2 { color: #008000; }\n.cm-s-idea span.cm-qualifier { color: #555; }\n.cm-s-idea span.cm-error { color: #FF0000; }\n.cm-s-idea span.cm-attribute { color: #0000FF; }\n.cm-s-idea span.cm-tag { color: #000080; }\n.cm-s-idea span.cm-link { color: #0000FF; }\n.cm-s-idea .CodeMirror-activeline-background { background: #FFFAE3; }\n\n.cm-s-idea span.cm-builtin { color: #30a; }\n.cm-s-idea span.cm-bracket { color: #cc7; }\n.cm-s-idea { font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;}\n\n\n.cm-s-idea .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; }\n\n.CodeMirror-hints.idea {\n font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;\n color: #616569;\n background-color: #ebf3fd !important;\n}\n\n.CodeMirror-hints.idea .CodeMirror-hint-active {\n background-color: #a2b8c9 !important;\n color: #5c6065 !important;\n}",".cm-s-the-matrix.CodeMirror { background: #000000; color: #00FF00; }\n.cm-s-the-matrix div.CodeMirror-selected { background: #2D2D2D; }\n.cm-s-the-matrix .CodeMirror-line::selection, .cm-s-the-matrix .CodeMirror-line > span::selection, .cm-s-the-matrix .CodeMirror-line > span > span::selection { background: rgba(45, 45, 45, 0.99); }\n.cm-s-the-matrix .CodeMirror-line::-moz-selection, .cm-s-the-matrix .CodeMirror-line > span::-moz-selection, .cm-s-the-matrix .CodeMirror-line > span > span::-moz-selection { background: rgba(45, 45, 45, 0.99); }\n.cm-s-the-matrix .CodeMirror-gutters { background: #060; border-right: 2px solid #00FF00; }\n.cm-s-the-matrix .CodeMirror-guttermarker { color: #0f0; }\n.cm-s-the-matrix .CodeMirror-guttermarker-subtle { color: white; }\n.cm-s-the-matrix .CodeMirror-linenumber { color: #FFFFFF; }\n.cm-s-the-matrix .CodeMirror-cursor { border-left: 1px solid #00FF00; }\n\n.cm-s-the-matrix span.cm-keyword { color: #008803; font-weight: bold; }\n.cm-s-the-matrix span.cm-atom { color: #3FF; }\n.cm-s-the-matrix span.cm-number { color: #FFB94F; }\n.cm-s-the-matrix span.cm-def { color: #99C; }\n.cm-s-the-matrix span.cm-variable { color: #F6C; }\n.cm-s-the-matrix span.cm-variable-2 { color: #C6F; }\n.cm-s-the-matrix span.cm-variable-3, .cm-s-the-matrix span.cm-type { color: #96F; }\n.cm-s-the-matrix span.cm-property { color: #62FFA0; }\n.cm-s-the-matrix span.cm-operator { color: #999; }\n.cm-s-the-matrix span.cm-comment { color: #CCCCCC; }\n.cm-s-the-matrix span.cm-string { color: #39C; }\n.cm-s-the-matrix span.cm-meta { color: #C9F; }\n.cm-s-the-matrix span.cm-qualifier { color: #FFF700; }\n.cm-s-the-matrix span.cm-builtin { color: #30a; }\n.cm-s-the-matrix span.cm-bracket { color: #cc7; }\n.cm-s-the-matrix span.cm-tag { color: #FFBD40; }\n.cm-s-the-matrix span.cm-attribute { color: #FFF700; }\n.cm-s-the-matrix span.cm-error { color: #FF0000; }\n\n.cm-s-the-matrix .CodeMirror-activeline-background { background: #040; }\n","/*\nSolarized theme for code-mirror\nhttp://ethanschoonover.com/solarized\n*/\n\n/*\nSolarized color palette\nhttp://ethanschoonover.com/solarized/img/solarized-palette.png\n*/\n\n.solarized.base03 { color: #002b36; }\n.solarized.base02 { color: #073642; }\n.solarized.base01 { color: #586e75; }\n.solarized.base00 { color: #657b83; }\n.solarized.base0 { color: #839496; }\n.solarized.base1 { color: #93a1a1; }\n.solarized.base2 { color: #eee8d5; }\n.solarized.base3 { color: #fdf6e3; }\n.solarized.solar-yellow { color: #b58900; }\n.solarized.solar-orange { color: #cb4b16; }\n.solarized.solar-red { color: #dc322f; }\n.solarized.solar-magenta { color: #d33682; }\n.solarized.solar-violet { color: #6c71c4; }\n.solarized.solar-blue { color: #268bd2; }\n.solarized.solar-cyan { color: #2aa198; }\n.solarized.solar-green { color: #859900; }\n\n/* Color scheme for code-mirror */\n\n.cm-s-solarized {\n line-height: 1.45em;\n color-profile: sRGB;\n rendering-intent: auto;\n}\n.cm-s-solarized.cm-s-dark {\n color: #839496;\n background-color: #002b36;\n}\n.cm-s-solarized.cm-s-light {\n background-color: #fdf6e3;\n color: #657b83;\n}\n\n.cm-s-solarized .CodeMirror-widget {\n text-shadow: none;\n}\n\n.cm-s-solarized .cm-header { color: #586e75; }\n.cm-s-solarized .cm-quote { color: #93a1a1; }\n\n.cm-s-solarized .cm-keyword { color: #cb4b16; }\n.cm-s-solarized .cm-atom { color: #d33682; }\n.cm-s-solarized .cm-number { color: #d33682; }\n.cm-s-solarized .cm-def { color: #2aa198; }\n\n.cm-s-solarized .cm-variable { color: #839496; }\n.cm-s-solarized .cm-variable-2 { color: #b58900; }\n.cm-s-solarized .cm-variable-3, .cm-s-solarized .cm-type { color: #6c71c4; }\n\n.cm-s-solarized .cm-property { color: #2aa198; }\n.cm-s-solarized .cm-operator { color: #6c71c4; }\n\n.cm-s-solarized .cm-comment { color: #586e75; font-style:italic; }\n\n.cm-s-solarized .cm-string { color: #859900; }\n.cm-s-solarized .cm-string-2 { color: #b58900; }\n\n.cm-s-solarized .cm-meta { color: #859900; }\n.cm-s-solarized .cm-qualifier { color: #b58900; }\n.cm-s-solarized .cm-builtin { color: #d33682; }\n.cm-s-solarized .cm-bracket { color: #cb4b16; }\n.cm-s-solarized .CodeMirror-matchingbracket { color: #859900; }\n.cm-s-solarized .CodeMirror-nonmatchingbracket { color: #dc322f; }\n.cm-s-solarized .cm-tag { color: #93a1a1; }\n.cm-s-solarized .cm-attribute { color: #2aa198; }\n.cm-s-solarized .cm-hr {\n color: transparent;\n border-top: 1px solid #586e75;\n display: block;\n}\n.cm-s-solarized .cm-link { color: #93a1a1; cursor: pointer; }\n.cm-s-solarized .cm-special { color: #6c71c4; }\n.cm-s-solarized .cm-em {\n color: #999;\n text-decoration: underline;\n text-decoration-style: dotted;\n}\n.cm-s-solarized .cm-error,\n.cm-s-solarized .cm-invalidchar {\n color: #586e75;\n border-bottom: 1px dotted #dc322f;\n}\n\n.cm-s-solarized.cm-s-dark div.CodeMirror-selected { background: #073642; }\n.cm-s-solarized.cm-s-dark.CodeMirror ::selection { background: rgba(7, 54, 66, 0.99); }\n.cm-s-solarized.cm-s-dark .CodeMirror-line::-moz-selection, .cm-s-dark .CodeMirror-line > span::-moz-selection, .cm-s-dark .CodeMirror-line > span > span::-moz-selection { background: rgba(7, 54, 66, 0.99); }\n\n.cm-s-solarized.cm-s-light div.CodeMirror-selected { background: #eee8d5; }\n.cm-s-solarized.cm-s-light .CodeMirror-line::selection, .cm-s-light .CodeMirror-line > span::selection, .cm-s-light .CodeMirror-line > span > span::selection { background: #eee8d5; }\n.cm-s-solarized.cm-s-light .CodeMirror-line::-moz-selection, .cm-s-light .CodeMirror-line > span::-moz-selection, .cm-s-light .CodeMirror-line > span > span::-moz-selection { background: #eee8d5; }\n\n/* Editor styling */\n\n\n\n/* Little shadow on the view-port of the buffer view */\n.cm-s-solarized.CodeMirror {\n -moz-box-shadow: inset 7px 0 12px -6px #000;\n -webkit-box-shadow: inset 7px 0 12px -6px #000;\n box-shadow: inset 7px 0 12px -6px #000;\n}\n\n/* Remove gutter border */\n.cm-s-solarized .CodeMirror-gutters {\n border-right: 0;\n}\n\n/* Gutter colors and line number styling based of color scheme (dark / light) */\n\n/* Dark */\n.cm-s-solarized.cm-s-dark .CodeMirror-gutters {\n background-color: #073642;\n}\n\n.cm-s-solarized.cm-s-dark .CodeMirror-linenumber {\n color: #586e75;\n}\n\n/* Light */\n.cm-s-solarized.cm-s-light .CodeMirror-gutters {\n background-color: #eee8d5;\n}\n\n.cm-s-solarized.cm-s-light .CodeMirror-linenumber {\n color: #839496;\n}\n\n/* Common */\n.cm-s-solarized .CodeMirror-linenumber {\n padding: 0 5px;\n}\n.cm-s-solarized .CodeMirror-guttermarker-subtle { color: #586e75; }\n.cm-s-solarized.cm-s-dark .CodeMirror-guttermarker { color: #ddd; }\n.cm-s-solarized.cm-s-light .CodeMirror-guttermarker { color: #cb4b16; }\n\n.cm-s-solarized .CodeMirror-gutter .CodeMirror-gutter-text {\n color: #586e75;\n}\n\n/* Cursor */\n.cm-s-solarized .CodeMirror-cursor { border-left: 1px solid #819090; }\n\n/* Fat cursor */\n.cm-s-solarized.cm-s-light.cm-fat-cursor .CodeMirror-cursor { background: #77ee77; }\n.cm-s-solarized.cm-s-light .cm-animate-fat-cursor { background-color: #77ee77; }\n.cm-s-solarized.cm-s-dark.cm-fat-cursor .CodeMirror-cursor { background: #586e75; }\n.cm-s-solarized.cm-s-dark .cm-animate-fat-cursor { background-color: #586e75; }\n\n/* Active line */\n.cm-s-solarized.cm-s-dark .CodeMirror-activeline-background {\n background: rgba(255, 255, 255, 0.06);\n}\n.cm-s-solarized.cm-s-light .CodeMirror-activeline-background {\n background: rgba(0, 0, 0, 0.06);\n}\n"]} \ No newline at end of file diff --git a/docs/demo/assets/css/index.css b/docs/demo/assets/css/index.css index e22e4ae..99724f4 100644 --- a/docs/demo/assets/css/index.css +++ b/docs/demo/assets/css/index.css @@ -1,2 +1,2 @@ -*{margin:0;padding:0;border:none}html{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;font-size:15px;line-height:1.5;height:100%}*,:after,:before{-webkit-box-sizing:inherit;-moz-box-sizing:inherit;box-sizing:inherit}body{background:#fbfbfb;color:#24292e;line-height:1.5;min-height:100%;position:relative;font-family:Menlo,Ubuntu Mono,Consolas,Courier New,Microsoft Yahei,Hiragino Sans GB,WenQuanYi Micro Hei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app,body{font-size:15px;height:100%}.mde-ui.splitpane{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;position:absolute;outline:none;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.mde-ui.splitpane.horizontal{width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;top:0;bottom:0}.mde-ui.splitpane.vertical{height:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;left:0;right:0}.mde-ui.pane{overflow:hidden;position:relative;outline:none}.mde-ui.pane.pane1{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.mde-ui.pane.pane2{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}.mde-ui.resizer{background:#464646;opacity:.2;z-index:200;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background-clip:padding-box}.mde-ui.resizer:hover{-webkit-transition:all 2s ease;transition:all 2s ease}.mde-ui.resizer.horizontal{height:11px;margin:-5px 0;border-top:5px solid hsla(0,0%,100%,0);border-bottom:5px solid hsla(0,0%,100%,0);cursor:row-resize;width:100%}.mde-ui.resizer.horizontal:hover{border-top:5px solid rgba(0,0,0,.5);border-bottom:5px solid rgba(0,0,0,.5)}.mde-ui.resizer.vertical{width:11px;margin:0 -5px;border-left:5px solid hsla(0,0%,100%,0);border-right:5px solid hsla(0,0%,100%,0);cursor:col-resize}.mde-ui.resizer.vertical:hover{border-left:5px solid rgba(0,0,0,.5);border-right:5px solid rgba(0,0,0,.5)}.mde-ui.resizer.disabled{cursor:not-allowed}.mde-ui.resizer.disabled:hover{border-color:rgba(0,0,0,0)}[data-tooltip]{position:relative}[data-tooltip]:before{content:"";width:.71428571em;height:.71428571em;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;-webkit-box-shadow:1px 1px 0 0 #bababc;box-shadow:1px 1px 0 0 #bababc}[data-tooltip]:after,[data-tooltip]:before{position:absolute;font-size:1rem;background:#fff}[data-tooltip]:after{content:attr(data-tooltip);text-transform:none;text-align:left;white-space:nowrap;border:1px solid #d4d4d5;line-height:1.4285em;max-width:none;padding:.833em 1em;font-weight:400;font-style:normal;color:rgba(0,0,0,.87);border-radius:.28571429rem;-webkit-box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);z-index:1}[data-tooltip]:not([data-position]):before{top:auto;right:auto;bottom:100%;left:50%;background:#fff;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-tooltip]:not([data-position]):after{left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);bottom:100%;margin-bottom:.5em}[data-tooltip]:after,[data-tooltip]:before{pointer-events:none;visibility:hidden}[data-tooltip]:before{opacity:0;-webkit-transform:rotate(45deg) scale(0)!important;-ms-transform:rotate(45deg) scale(0)!important;transform:rotate(45deg) scale(0)!important;-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}[data-tooltip]:after{opacity:1;-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}[data-tooltip]:hover:after,[data-tooltip]:hover:before{visibility:visible;pointer-events:auto;-webkit-transition:all .1s ease 1.5s;transition:all .1s ease 1.5s}[data-tooltip]:hover:before{-webkit-transform:rotate(45deg) scale(1)!important;-ms-transform:rotate(45deg) scale(1)!important;transform:rotate(45deg) scale(1)!important;opacity:1}[data-tooltip][data-position="bottom center"]:before,[data-tooltip][data-position="bottom left"]:before,[data-tooltip][data-position="top right"]:before{-webkit-transform:rotate(315deg)!important;-ms-transform:rotate(315deg)!important;transform:rotate(315deg)!important}[data-tooltip][data-tooltip-small]:after{font-size:12px}[data-tooltip]:after,[data-tooltip][data-position="bottom center"]:after,[data-tooltip][data-position="top center"]:after{-webkit-transform:translateX(-50%) scale(0)!important;-ms-transform:translateX(-50%) scale(0)!important;transform:translateX(-50%) scale(0)!important}[data-tooltip]:hover:after,[data-tooltip][data-position="bottom center"]:hover:after{-webkit-transform:translateX(-50%) scale(1)!important;-ms-transform:translateX(-50%) scale(1)!important;transform:translateX(-50%) scale(1)!important}[data-tooltip][data-position="left center"]:after,[data-tooltip][data-position="right center"]:after{-webkit-transform:translateY(-50%) scale(0)!important;-ms-transform:translateY(-50%) scale(0)!important;transform:translateY(-50%) scale(0)!important}[data-tooltip][data-position="left center"]:hover:after,[data-tooltip][data-position="right center"]:hover:after{-webkit-transform:translateY(-50%) scale(1)!important;-ms-transform:translateY(-50%) scale(1)!important;transform:translateY(-50%) scale(1)!important}[data-tooltip][data-position="bottom left"]:after,[data-tooltip][data-position="bottom right"]:after,[data-tooltip][data-position="top left"]:after,[data-tooltip][data-position="top right"]:after{-webkit-transform:scale(0)!important;-ms-transform:scale(0)!important;transform:scale(0)!important}[data-tooltip][data-position="bottom left"]:hover:after,[data-tooltip][data-position="bottom right"]:hover:after,[data-tooltip][data-position="top left"]:hover:after,[data-tooltip][data-position="top right"]:hover:after{-webkit-transform:scale(1)!important;-ms-transform:scale(1)!important;transform:scale(1)!important}[data-tooltip][data-inverted]:before{-webkit-box-shadow:none!important;box-shadow:none!important;background:#1b1c1d}[data-tooltip][data-inverted]:after{background:#1b1c1d;color:#fff;border:none;-webkit-box-shadow:none;box-shadow:none}[data-tooltip][data-inverted]:after .header{background-color:none;color:#fff}[data-position="top center"][data-tooltip]:after{top:auto;right:auto;left:50%;bottom:100%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);margin-bottom:.5em}[data-position="top center"][data-tooltip]:before{top:auto;right:auto;bottom:100%;left:50%;background:#fff;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="top left"][data-tooltip]:after{top:auto;right:auto;left:0;bottom:100%;margin-bottom:.5em}[data-position="top left"][data-tooltip]:before{top:auto;right:auto;bottom:100%;left:1em;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="top right"][data-tooltip]:after{top:auto;left:auto;right:0;bottom:100%;margin-bottom:.5em}[data-position="top right"][data-tooltip]:before{top:auto;left:auto;bottom:100%;right:1em;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="bottom center"][data-tooltip]:after{bottom:auto;right:auto;left:50%;top:100%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);margin-top:.5em}[data-position="bottom center"][data-tooltip]:before{bottom:auto;right:auto;top:100%;left:50%;margin-left:-.07142857rem;margin-top:.14285714rem}[data-position="bottom left"][data-tooltip]:after{left:0;top:100%;margin-top:.5em}[data-position="bottom left"][data-tooltip]:before{bottom:auto;right:auto;top:100%;left:1em;margin-left:-.07142857rem;margin-top:.14285714rem}[data-position="bottom right"][data-tooltip]:after{right:0;top:100%;margin-top:.5em}[data-position="bottom right"][data-tooltip]:before{bottom:auto;left:auto;top:100%;right:1em;margin-left:-.14285714rem;margin-top:.07142857rem}[data-position="left center"][data-tooltip]:after{right:100%;top:50%;margin-right:.5em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}[data-position="left center"][data-tooltip]:before{right:100%;top:50%;margin-top:-.14285714rem;margin-right:-.07142857rem}[data-position="right center"][data-tooltip]:after{left:100%;top:50%;margin-left:.5em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}[data-position="right center"][data-tooltip]:before{left:100%;top:50%;margin-top:-.07142857rem;margin-left:.14285714rem}[data-position~=bottom][data-tooltip]:before{background:#fff;-webkit-box-shadow:-1px -1px 0 0 #bababc;box-shadow:-1px -1px 0 0 #bababc}[data-position="left center"][data-tooltip]:before{background:#fff;-webkit-box-shadow:1px -1px 0 0 #bababc;box-shadow:1px -1px 0 0 #bababc}[data-position="right center"][data-tooltip]:before{background:#fff;-webkit-box-shadow:-1px 1px 0 0 #bababc;box-shadow:-1px 1px 0 0 #bababc}[data-position~=top][data-tooltip]:before{background:#fff}[data-inverted][data-position~=bottom][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:-1px -1px 0 0 #bababc;box-shadow:-1px -1px 0 0 #bababc}[data-inverted][data-position="left center"][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:1px -1px 0 0 #bababc;box-shadow:1px -1px 0 0 #bababc}[data-inverted][data-position="right center"][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:-1px 1px 0 0 #bababc;box-shadow:-1px 1px 0 0 #bababc}[data-inverted][data-position~=top][data-tooltip]:before{background:#1b1c1d}[data-position~=bottom][data-tooltip]:before{-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}[data-position~=bottom][data-tooltip]:after{-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}[data-position="left center"][data-tooltip]:before{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center}[data-position="left center"][data-tooltip]:after,[data-position="right center"][data-tooltip]:before{-webkit-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}[data-position="right center"][data-tooltip]:after{-webkit-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center}@font-face{font-family:iconfont;src:url(../../assets/fonts/iconfont.eot);src:url(../../assets/fonts/iconfont.eot#iefix) format("embedded.opentype"),url(../../assets/fonts/iconfont.woff2) format("woff2"),url(../../assets/fonts/iconfont.woff) format("woff"),url(../../assets/fonts/iconfont.ttf) format("truetype"),url(../../assets/img/iconfont.svg#iconfont) format("svg")}.icon{display:inline-block;opacity:1;font-family:iconfont!important;font-size:1em;font-style:normal;font-variant:normal;text-decoration:inherit;text-transform:none;text-align:center;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon:before{background:none!important}.icon.loading{height:1em;line-height:1;-webkit-animation:icon-loading 2s linear infinite;animation:icon-loading 2s linear infinite}@-webkit-keyframes icon-loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes icon-loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon.align-center:before{content:"\e600"}.icon.align-left:before{content:"\e601"}.icon.align-justify:before{content:"\e602"}.icon.align-right:before{content:"\e603"}.icon.border-all:before{content:"\e604"}.icon.bold:before{content:"\e605"}.icon.book:before{content:"\e606"}.icon.clipboard:before{content:"\e607"}.icon.code:before{content:"\e608"}.icon.cut:before{content:"\e609"}.icon.columns:before{content:"\e60a"}.icon.copy:before{content:"\e60b"}.icon.cog:before{content:"\e60c"}.icon.eraser:before{content:"\e60d"}.icon.file-alt:before{content:"\e60e"}.icon.heading:before{content:"\e60f"}.icon.file:before{content:"\e610"}.icon.i-cursor:before{content:"\e611"}.icon.font:before{content:"\e612"}.icon.highlighter:before{content:"\e613"}.icon.cogs:before{content:"\e614"}.icon.italic:before{content:"\e615"}.icon.list-alt:before{content:"\e616"}.icon.indent:before{content:"\e617"}.icon.outdent:before{content:"\e618"}.icon.image:before{content:"\e619"}.icon.list-ol:before,.icon.ordered:before{content:"\e61a"}.icon.icons:before{content:"\e61b"}.icon.bullet:before,.icon.list-ul:before{content:"\e61c"}.icon.redo:before{content:"\e61d"}.icon.print:before{content:"\e61e"}.icon.sitemap:before{content:"\e61f"}.icon.quote-right:before,.icon.quote:before{content:"\e620"}.icon.reply:before{content:"\e621"}.icon.link:before{content:"\e622"}.icon.list:before{content:"\e623"}.icon.tasks:before{content:"\e625"}.icon.spell-check:before{content:"\e626"}.icon.strikethrough:before{content:"\e627"}.icon.share:before{content:"\e628"}.icon.paper-plane:before{content:"\e629"}.icon.underline:before{content:"\e62a"}.icon.undo:before{content:"\e62c"}.icon.wrench:before{content:"\e62d"}.icon.sync:before{content:"\e62e"}.icon.clone:before{content:"\e62f"}.icon.paperclip:before{content:"\e630"}.icon.table:before{content:"\e631"}.icon.glasses:before,.icon.preview:before{content:"\e632"}.icon.tools:before{content:"\e633"}.icon.th-list:before{content:"\e634"}.icon.edit:before{content:"\e635"}.icon.unlink:before{content:"\e636"}.icon.ch1:before{content:"\e637"}.icon.ch2:before{content:"\e638"}.icon.ch3:before{content:"\e639"}.icon.ch4:before{content:"\e63a"}.icon.ch5:before{content:"\e63b"}.icon.ch6:before{content:"\e63c"}.icon.splitline:before{content:"\e62b"}.icon.toc:before{content:"\e624"}.icon.codeblock:before{content:"\e63d"}.icon.emoji:before{content:"\e63e"}.icon.preview-right-light:before{content:"\e63f"}.icon.lang:before{content:"\e640"}.icon.help:before{content:"\e641"}.mde-ui.icon-button{cursor:pointer;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;position:relative;-webkit-box-flex:1;-webkit-flex:1 0 auto;-moz-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;min-height:1em;outline:none;border:none;vertical-align:baseline;background:#e0e1e2 none;color:rgba(0,0,0,.6);text-transform:none;text-shadow:none;font-size:1em;font-weight:400;line-height:1em;font-style:normal;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease,-webkit-box-shadow .1s ease;will-change:"";-webkit-tap-highlight-color:transparent}.mde-ui.icon-button span[data-tooltip]{position:absolute;top:0;left:0;bottom:0;right:0;z-index:1000}.mde-ui.icon-button .content-left{display:inherit;padding:.618em}.mde-ui.icon-button .content-right{display:inherit;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;width:100%;padding:.618em .618em .618em 0}.mde-ui.icon-button.separator{opacity:.2!important;border:2px solid hsla(0,0%,100%,0);min-height:5px;min-width:5px;background-color:#464646;background-clip:padding-box}.mde-ui.icon-button.disabled,.mde-ui.icon-button.disabled:hover,.mde-ui.icon-button.separator,.mde-ui.icon-button:disabled{cursor:default;background-image:none!important;-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none!important}.mde-ui.icon-button.disabled,.mde-ui.icon-button.disabled:hover,.mde-ui.icon-button:disabled{opacity:.45!important}.mde-ui.icon-button.selected,.mde-ui.icon-button.selected:hover,.mde-ui.icon-button:selected{cursor:default;-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none!important}.mde-ui.icon-button,.mde-ui.icon-button:hover{-webkit-box-shadow:inset 0 0 0 1px rgba(0,0,0,0),inset 0 0 0 0 rgba(34,36,38,.15);box-shadow:inset 0 0 0 1px rgba(0,0,0,0),inset 0 0 0 0 rgba(34,36,38,.15)}.mde-ui.icon-button:hover{background-color:#cacbcd;background-image:none;color:rgba(0,0,0,.8)}.mde-ui.icon-button:hover .icon{opacity:.85}.mde-ui.icon-button:focus{background-color:#cacbcd;color:rgba(0,0,0,.8);background-image:""!important;-webkit-box-shadow:""!important;box-shadow:""!important}.mde-ui.icon-button:focus .icon{opacity:.85}.mde-ui.icon-button:active{background-color:#babbbc;background-image:"";color:rgba(0,0,0,.9);-webkit-box-shadow:inset 0 0 0 1px rgba(0,0,0,0),none;box-shadow:inset 0 0 0 1px rgba(0,0,0,0),none}.content-left>.icon{margin:auto!important;vertical-align:top;width:1em;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.content-right>.shortkey{padding-left:16px}.content-right>.caret{display:inline-block;width:0;height:0;vertical-align:middle;border-top:4px dashed;border-right:4px solid rgba(0,0,0,0);border-left:4px solid rgba(0,0,0,0)}.mde-ui.buttons{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;vertical-align:baseline;margin:0 .25em 0 0;-webkit-box-shadow:none;box-shadow:none;font-size:1em}.mde-ui.buttons:after{content:".";display:block;height:0;clear:both;visibility:hidden;font-size:0}.mde-ui.buttons .icon-button:not(.separator){-webkit-box-flex:1;-webkit-flex:1 0 auto;-moz-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;border-radius:0;margin:0}.mde-ui.buttons .icon-button:first-child{border-left:none;margin-left:0}.mde-ui.buttons .icon-button:first-child,.mde-ui.buttons .icon-button:first-child div:first-child{border-top-left-radius:.28571429em;border-bottom-left-radius:.28571429em}.mde-ui.buttons .icon-button:last-child,.mde-ui.buttons .icon-button:last-child div:last-child{border-top-right-radius:.28571429em;border-bottom-right-radius:.28571429em}.mde-ui.dropdown{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;vertical-align:baseline;margin:0 .28571429em 0 0;-webkit-box-shadow:none;box-shadow:none;font-size:1em;outline:0}.mde-ui.dropdown .icon-button:not(.separator){text-align:left;white-space:nowrap}.mde-ui.dropdown .icon-button:not(.separator).menubutton{border-radius:.28571429em}.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-right{padding-right:.28571429em;border-top-right-radius:.28571429em;border-bottom-right-radius:.28571429em}.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-left{border-top-left-radius:.28571429em;border-bottom-left-radius:.28571429em}.mde-ui.buttons.dropdown{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;top:40px;z-index:999;float:left;min-width:12em;margin:0;padding:5px 0;text-align:left;outline:0;background:#e0e1e2 none;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:.28571429em;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.mde-ui.buttons.dropdown .icon-button:first-child,.mde-ui.buttons.dropdown .icon-button:first-child div:first-child,.mde-ui.buttons.dropdown .icon-button:last-child,.mde-ui.buttons.dropdown .icon-button:last-child div:last-child{border-radius:0}.vue-codemirror{width:auto;height:100%}.vue-codemirror .CodeMirror,.vue-codemirror .CodeMirror-merge{height:100%}.vue-codemirror .CodeMirror{font-family:inherit}.vue-codemirror .CodeMirror .CodeMirror-gutters{border-right:0}.showdowns{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:16px;padding:16px;overflow:hidden}.mde-workspace-container{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;outline:none;min-width:50em;width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;flex-wrap:nowrap}.mde-workspace-container,.mde-workspace-container .mde-toolbar{position:relative;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap}.mde-workspace-container .mde-toolbar{border-bottom:1px solid #ddd;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;flex-wrap:nowrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;z-index:201}.mde-workspace-container .mde-toolbar .mde-toolbar-left,.mde-workspace-container .mde-toolbar .mde-toolbat-right{display:inherit}.mde-workspace-container .mde-toolbar .mde-toolbar-actions{padding:4px 5px;min-height:34px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav{min-width:40px;padding-left:0}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu{background:url(../../assets/img/logo.png) no-repeat;background-size:contain}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu .icon-button.menubutton{background-color:unset}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown .icon-button{border-top-left-radius:0;border-bottom-left-radius:0}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.buttons{margin-right:1em}.mde-workspace-container .mde-editor-container{position:relative;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}.mde-workspace-container .mde-editor-container .raw-editor{min-width:25em}.mde-workspace-container .mde-editor-container .mde-scroll-container{overflow:hidden;width:100%;height:100%}.mde-workspace-container .mde-editor-container .mde-scroll-container .mdse-preview{width:auto;height:100%;overflow-y:auto}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-track{background:#f1f1f1;border-radius:0}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);-webkit-transition:color .2s ease;transition:color .2s ease}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)}::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:0}::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);-webkit-transition:color .2s ease;transition:color .2s ease}::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)} +*{margin:0;padding:0;border:none}html{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;font-size:15px;line-height:1.5;height:100%}*,:after,:before{-webkit-box-sizing:inherit;-moz-box-sizing:inherit;box-sizing:inherit}body{background:#fbfbfb;color:#24292e;line-height:1.5;min-height:100%;position:relative;font-family:Menlo,Ubuntu Mono,Consolas,Courier New,Microsoft Yahei,Hiragino Sans GB,WenQuanYi Micro Hei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app,body{font-size:15px;height:100%}.mde-ui.splitpane{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;position:absolute;outline:none;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.mde-ui.splitpane.horizontal{width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;top:0;bottom:0}.mde-ui.splitpane.vertical{height:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;left:0;right:0}.mde-ui.pane{overflow:hidden;position:relative;outline:none}.mde-ui.pane.pane1{-webkit-box-flex:0;-webkit-flex:none;-moz-box-flex:0;-ms-flex:none;flex:none}.mde-ui.pane.pane2{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}.mde-ui.resizer{background:#464646;opacity:.2;z-index:200;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background-clip:padding-box}.mde-ui.resizer:hover{-webkit-transition:all 2s ease;transition:all 2s ease}.mde-ui.resizer.horizontal{height:11px;margin:-5px 0;border-top:5px solid hsla(0,0%,100%,0);border-bottom:5px solid hsla(0,0%,100%,0);cursor:row-resize;width:100%}.mde-ui.resizer.horizontal:hover{border-top:5px solid rgba(0,0,0,.5);border-bottom:5px solid rgba(0,0,0,.5)}.mde-ui.resizer.vertical{width:11px;margin:0 -5px;border-left:5px solid hsla(0,0%,100%,0);border-right:5px solid hsla(0,0%,100%,0);cursor:col-resize}.mde-ui.resizer.vertical:hover{border-left:5px solid rgba(0,0,0,.5);border-right:5px solid rgba(0,0,0,.5)}.mde-ui.resizer.disabled{cursor:not-allowed}.mde-ui.resizer.disabled:hover{border-color:transparent}[data-tooltip]{position:relative}[data-tooltip]:before{content:"";width:.71428571em;height:.71428571em;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:2;-webkit-box-shadow:1px 1px 0 0 #bababc;box-shadow:1px 1px 0 0 #bababc}[data-tooltip]:after,[data-tooltip]:before{position:absolute;font-size:1rem;background:#fff}[data-tooltip]:after{content:attr(data-tooltip);text-transform:none;text-align:left;white-space:nowrap;border:1px solid #d4d4d5;line-height:1.4285em;max-width:none;padding:.833em 1em;font-weight:400;font-style:normal;color:rgba(0,0,0,.87);border-radius:.28571429rem;-webkit-box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);box-shadow:0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);z-index:1}[data-tooltip]:not([data-position]):before{top:auto;right:auto;bottom:100%;left:50%;background:#fff;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-tooltip]:not([data-position]):after{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);bottom:100%;margin-bottom:.5em}[data-tooltip]:after,[data-tooltip]:before{pointer-events:none;visibility:hidden}[data-tooltip]:before{opacity:0;-webkit-transform:rotate(45deg) scale(0)!important;transform:rotate(45deg) scale(0)!important;-webkit-transform-origin:center top;transform-origin:center top}[data-tooltip]:after{opacity:1;-webkit-transform-origin:center bottom;transform-origin:center bottom}[data-tooltip]:hover:after,[data-tooltip]:hover:before{visibility:visible;pointer-events:auto;-webkit-transition:all .1s ease 1.5s;transition:all .1s ease 1.5s}[data-tooltip]:hover:before{-webkit-transform:rotate(45deg) scale(1)!important;transform:rotate(45deg) scale(1)!important;opacity:1}[data-tooltip][data-position="bottom center"]:before,[data-tooltip][data-position="bottom left"]:before,[data-tooltip][data-position="top right"]:before{-webkit-transform:rotate(315deg)!important;transform:rotate(315deg)!important}[data-tooltip][data-tooltip-small]:after{font-size:12px}[data-tooltip]:after,[data-tooltip][data-position="bottom center"]:after,[data-tooltip][data-position="top center"]:after{-webkit-transform:translateX(-50%) scale(0)!important;transform:translateX(-50%) scale(0)!important}[data-tooltip]:hover:after,[data-tooltip][data-position="bottom center"]:hover:after{-webkit-transform:translateX(-50%) scale(1)!important;transform:translateX(-50%) scale(1)!important}[data-tooltip][data-position="left center"]:after,[data-tooltip][data-position="right center"]:after{-webkit-transform:translateY(-50%) scale(0)!important;transform:translateY(-50%) scale(0)!important}[data-tooltip][data-position="left center"]:hover:after,[data-tooltip][data-position="right center"]:hover:after{-webkit-transform:translateY(-50%) scale(1)!important;transform:translateY(-50%) scale(1)!important}[data-tooltip][data-position="bottom left"]:after,[data-tooltip][data-position="bottom right"]:after,[data-tooltip][data-position="top left"]:after,[data-tooltip][data-position="top right"]:after{-webkit-transform:scale(0)!important;transform:scale(0)!important}[data-tooltip][data-position="bottom left"]:hover:after,[data-tooltip][data-position="bottom right"]:hover:after,[data-tooltip][data-position="top left"]:hover:after,[data-tooltip][data-position="top right"]:hover:after{-webkit-transform:scale(1)!important;transform:scale(1)!important}[data-tooltip][data-inverted]:before{-webkit-box-shadow:none!important;box-shadow:none!important;background:#1b1c1d}[data-tooltip][data-inverted]:after{background:#1b1c1d;color:#fff;border:none;-webkit-box-shadow:none;box-shadow:none}[data-tooltip][data-inverted]:after .header{background-color:none;color:#fff}[data-position="top center"][data-tooltip]:after{top:auto;right:auto;left:50%;bottom:100%;-webkit-transform:translateX(-50%);transform:translateX(-50%);margin-bottom:.5em}[data-position="top center"][data-tooltip]:before{top:auto;right:auto;bottom:100%;left:50%;background:#fff;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="top left"][data-tooltip]:after{top:auto;right:auto;left:0;bottom:100%;margin-bottom:.5em}[data-position="top left"][data-tooltip]:before{top:auto;right:auto;bottom:100%;left:1em;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="top right"][data-tooltip]:after{top:auto;left:auto;right:0;bottom:100%;margin-bottom:.5em}[data-position="top right"][data-tooltip]:before{top:auto;left:auto;bottom:100%;right:1em;margin-left:-.07142857rem;margin-bottom:.14285714rem}[data-position="bottom center"][data-tooltip]:after{bottom:auto;right:auto;left:50%;top:100%;-webkit-transform:translateX(-50%);transform:translateX(-50%);margin-top:.5em}[data-position="bottom center"][data-tooltip]:before{bottom:auto;right:auto;top:100%;left:50%;margin-left:-.07142857rem;margin-top:.14285714rem}[data-position="bottom left"][data-tooltip]:after{left:0;top:100%;margin-top:.5em}[data-position="bottom left"][data-tooltip]:before{bottom:auto;right:auto;top:100%;left:1em;margin-left:-.07142857rem;margin-top:.14285714rem}[data-position="bottom right"][data-tooltip]:after{right:0;top:100%;margin-top:.5em}[data-position="bottom right"][data-tooltip]:before{bottom:auto;left:auto;top:100%;right:1em;margin-left:-.14285714rem;margin-top:.07142857rem}[data-position="left center"][data-tooltip]:after{right:100%;top:50%;margin-right:.5em;-webkit-transform:translateY(-50%);transform:translateY(-50%)}[data-position="left center"][data-tooltip]:before{right:100%;top:50%;margin-top:-.14285714rem;margin-right:-.07142857rem}[data-position="right center"][data-tooltip]:after{left:100%;top:50%;margin-left:.5em;-webkit-transform:translateY(-50%);transform:translateY(-50%)}[data-position="right center"][data-tooltip]:before{left:100%;top:50%;margin-top:-.07142857rem;margin-left:.14285714rem}[data-position~=bottom][data-tooltip]:before{background:#fff;-webkit-box-shadow:-1px -1px 0 0 #bababc;box-shadow:-1px -1px 0 0 #bababc}[data-position="left center"][data-tooltip]:before{background:#fff;-webkit-box-shadow:1px -1px 0 0 #bababc;box-shadow:1px -1px 0 0 #bababc}[data-position="right center"][data-tooltip]:before{background:#fff;-webkit-box-shadow:-1px 1px 0 0 #bababc;box-shadow:-1px 1px 0 0 #bababc}[data-position~=top][data-tooltip]:before{background:#fff}[data-inverted][data-position~=bottom][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:-1px -1px 0 0 #bababc;box-shadow:-1px -1px 0 0 #bababc}[data-inverted][data-position="left center"][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:1px -1px 0 0 #bababc;box-shadow:1px -1px 0 0 #bababc}[data-inverted][data-position="right center"][data-tooltip]:before{background:#1b1c1d;-webkit-box-shadow:-1px 1px 0 0 #bababc;box-shadow:-1px 1px 0 0 #bababc}[data-inverted][data-position~=top][data-tooltip]:before{background:#1b1c1d}[data-position~=bottom][data-tooltip]:before{-webkit-transform-origin:center bottom;transform-origin:center bottom}[data-position~=bottom][data-tooltip]:after{-webkit-transform-origin:center top;transform-origin:center top}[data-position="left center"][data-tooltip]:before{-webkit-transform-origin:top center;transform-origin:top center}[data-position="left center"][data-tooltip]:after,[data-position="right center"][data-tooltip]:before{-webkit-transform-origin:right center;transform-origin:right center}[data-position="right center"][data-tooltip]:after{-webkit-transform-origin:left center;transform-origin:left center}@font-face{font-family:iconfont;src:url(../../assets/fonts/iconfont.eot);src:url(../../assets/fonts/iconfont.eot#iefix) format("embedded.opentype"),url(../../assets/fonts/iconfont.woff2) format("woff2"),url(../../assets/fonts/iconfont.woff) format("woff"),url(../../assets/fonts/iconfont.ttf) format("truetype"),url(../../assets/img/iconfont.svg#iconfont) format("svg")}.icon{display:inline-block;opacity:1;font-family:iconfont!important;font-size:1em;font-style:normal;font-variant:normal;text-decoration:inherit;text-transform:none;text-align:center;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon:before{background:none!important}.icon.loading{height:1em;line-height:1;-webkit-animation:icon-loading 2s linear infinite;animation:icon-loading 2s linear infinite}@-webkit-keyframes icon-loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes icon-loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon.align-center:before{content:"\e600"}.icon.align-left:before{content:"\e601"}.icon.align-justify:before{content:"\e602"}.icon.align-right:before{content:"\e603"}.icon.border-all:before{content:"\e604"}.icon.bold:before{content:"\e605"}.icon.book:before{content:"\e606"}.icon.clipboard:before{content:"\e607"}.icon.code:before{content:"\e608"}.icon.cut:before{content:"\e609"}.icon.columns:before{content:"\e60a"}.icon.copy:before{content:"\e60b"}.icon.cog:before{content:"\e60c"}.icon.eraser:before{content:"\e60d"}.icon.file-alt:before{content:"\e60e"}.icon.heading:before{content:"\e60f"}.icon.file:before{content:"\e610"}.icon.i-cursor:before{content:"\e611"}.icon.font:before{content:"\e612"}.icon.highlighter:before{content:"\e613"}.icon.cogs:before{content:"\e614"}.icon.italic:before{content:"\e615"}.icon.list-alt:before{content:"\e616"}.icon.indent:before{content:"\e617"}.icon.outdent:before{content:"\e618"}.icon.image:before{content:"\e619"}.icon.list-ol:before,.icon.ordered:before{content:"\e61a"}.icon.icons:before{content:"\e61b"}.icon.bullet:before,.icon.list-ul:before{content:"\e61c"}.icon.redo:before{content:"\e61d"}.icon.print:before{content:"\e61e"}.icon.sitemap:before{content:"\e61f"}.icon.quote-right:before,.icon.quote:before{content:"\e620"}.icon.reply:before{content:"\e621"}.icon.link:before{content:"\e622"}.icon.list:before{content:"\e623"}.icon.tasks:before{content:"\e625"}.icon.spell-check:before{content:"\e626"}.icon.strikethrough:before{content:"\e627"}.icon.share:before{content:"\e628"}.icon.paper-plane:before{content:"\e629"}.icon.underline:before{content:"\e62a"}.icon.undo:before{content:"\e62c"}.icon.wrench:before{content:"\e62d"}.icon.sync:before{content:"\e62e"}.icon.clone:before{content:"\e62f"}.icon.paperclip:before{content:"\e630"}.icon.table:before{content:"\e631"}.icon.glasses:before,.icon.preview:before{content:"\e632"}.icon.tools:before{content:"\e633"}.icon.th-list:before{content:"\e634"}.icon.edit:before{content:"\e635"}.icon.unlink:before{content:"\e636"}.icon.ch1:before{content:"\e637"}.icon.ch2:before{content:"\e638"}.icon.ch3:before{content:"\e639"}.icon.ch4:before{content:"\e63a"}.icon.ch5:before{content:"\e63b"}.icon.ch6:before{content:"\e63c"}.icon.splitline:before{content:"\e62b"}.icon.toc:before{content:"\e624"}.icon.codeblock:before{content:"\e63d"}.icon.emoji:before{content:"\e63e"}.icon.preview-right-light:before{content:"\e63f"}.icon.lang:before{content:"\e640"}.icon.help:before{content:"\e641"}.mde-ui.icon-button{cursor:pointer;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;position:relative;-webkit-box-flex:1;-webkit-flex:1 0 auto;-moz-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;min-height:1em;outline:none;border:none;vertical-align:baseline;background:#e0e1e2 none;color:rgba(0,0,0,.6);text-transform:none;text-shadow:none;font-size:1em;font-weight:400;line-height:1em;font-style:normal;text-align:center;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease,-webkit-box-shadow .1s ease;will-change:"";-webkit-tap-highlight-color:transparent}.mde-ui.icon-button span[data-tooltip]{position:absolute;top:0;left:0;bottom:0;right:0;z-index:1000}.mde-ui.icon-button .content-left{display:inherit;padding:.618em}.mde-ui.icon-button .content-right{display:inherit;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;width:100%;padding:.618em .618em .618em 0}.mde-ui.icon-button.separator{opacity:.2!important;border:2px solid hsla(0,0%,100%,0);min-height:5px;min-width:5px;background-color:#464646;background-clip:padding-box}.mde-ui.icon-button.disabled,.mde-ui.icon-button.disabled:hover,.mde-ui.icon-button.separator,.mde-ui.icon-button:disabled{cursor:default;background-image:none!important;-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none!important}.mde-ui.icon-button.disabled,.mde-ui.icon-button.disabled:hover,.mde-ui.icon-button:disabled{opacity:.45!important}.mde-ui.icon-button.selected,.mde-ui.icon-button.selected:hover,.mde-ui.icon-button:selected{cursor:default;-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none!important}.mde-ui.icon-button,.mde-ui.icon-button:hover{-webkit-box-shadow:inset 0 0 0 1px transparent,inset 0 0 0 0 rgba(34,36,38,.15);box-shadow:inset 0 0 0 1px transparent,inset 0 0 0 0 rgba(34,36,38,.15)}.mde-ui.icon-button:hover{background-color:#cacbcd;background-image:none;color:rgba(0,0,0,.8)}.mde-ui.icon-button:hover .icon{opacity:.85}.mde-ui.icon-button:focus{background-color:#cacbcd;color:rgba(0,0,0,.8);background-image:""!important;-webkit-box-shadow:""!important;box-shadow:""!important}.mde-ui.icon-button:focus .icon{opacity:.85}.mde-ui.icon-button:active{background-color:#babbbc;background-image:"";color:rgba(0,0,0,.9);-webkit-box-shadow:inset 0 0 0 1px transparent,none;box-shadow:inset 0 0 0 1px transparent,none}.content-left>.icon{margin:auto!important;vertical-align:top;width:1em;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.content-right>.shortkey{padding-left:16px}.content-right>.caret{display:inline-block;width:0;height:0;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}.mde-ui.buttons{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;vertical-align:baseline;margin:0 .25em 0 0;-webkit-box-shadow:none;box-shadow:none;font-size:1em}.mde-ui.buttons:after{content:".";display:block;height:0;clear:both;visibility:hidden;font-size:0}.mde-ui.buttons .icon-button:not(.separator){-webkit-box-flex:1;-webkit-flex:1 0 auto;-moz-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;border-radius:0;margin:0}.mde-ui.buttons .icon-button:first-child{border-left:none;margin-left:0}.mde-ui.buttons .icon-button:first-child,.mde-ui.buttons .icon-button:first-child div:first-child{border-top-left-radius:.28571429em;border-bottom-left-radius:.28571429em}.mde-ui.buttons .icon-button:last-child,.mde-ui.buttons .icon-button:last-child div:last-child{border-top-right-radius:.28571429em;border-bottom-right-radius:.28571429em}.mde-ui.dropdown{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;vertical-align:baseline;margin:0 .28571429em 0 0;-webkit-box-shadow:none;box-shadow:none;font-size:1em;outline:0}.mde-ui.dropdown .icon-button:not(.separator){text-align:left;white-space:nowrap}.mde-ui.dropdown .icon-button:not(.separator).menubutton{border-radius:.28571429em}.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-right{padding-right:.28571429em;border-top-right-radius:.28571429em;border-bottom-right-radius:.28571429em}.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-left{border-top-left-radius:.28571429em;border-bottom-left-radius:.28571429em}.mde-ui.buttons.dropdown{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;top:40px;z-index:999;float:left;min-width:12em;margin:0;padding:5px 0;text-align:left;outline:0;background:#e0e1e2 none;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:.28571429em;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.mde-ui.buttons.dropdown .icon-button:first-child,.mde-ui.buttons.dropdown .icon-button:first-child div:first-child,.mde-ui.buttons.dropdown .icon-button:last-child,.mde-ui.buttons.dropdown .icon-button:last-child div:last-child{border-radius:0}.vue-codemirror{width:auto;height:100%}.vue-codemirror .CodeMirror,.vue-codemirror .CodeMirror-merge{height:100%}.vue-codemirror .CodeMirror{font-family:inherit}.vue-codemirror .CodeMirror .CodeMirror-gutters{border-right:0}.showdowns{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:16px;padding:16px;overflow:hidden}.mde-workspace-container{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;outline:none;min-width:50em;width:100%;height:100%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-flex-direction:column;-moz-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;flex-wrap:nowrap}.mde-workspace-container,.mde-workspace-container .mde-toolbar{position:relative;-webkit-box-direction:normal;-moz-box-direction:normal;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap}.mde-workspace-container .mde-toolbar{border-bottom:1px solid #ddd;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;flex-wrap:nowrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;z-index:201}.mde-workspace-container .mde-toolbar .mde-toolbar-left,.mde-workspace-container .mde-toolbar .mde-toolbat-right{display:inherit}.mde-workspace-container .mde-toolbar .mde-toolbar-actions{padding:4px 5px;min-height:34px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-moz-box-orient:horizontal;-moz-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav{min-width:40px;padding-left:0}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu{background:url(../../assets/img/logo.png) no-repeat;background-size:contain}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu .icon-button.menubutton{background-color:unset}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown .icon-button{border-top-left-radius:0;border-bottom-left-radius:0}.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.buttons{margin-right:1em}.mde-workspace-container .mde-editor-container{position:relative;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}.mde-workspace-container .mde-editor-container .raw-editor{min-width:25em}.mde-workspace-container .mde-editor-container .mde-scroll-container{overflow:hidden;width:100%;height:100%}.mde-workspace-container .mde-editor-container .mde-scroll-container .mdse-preview{width:auto;height:100%;overflow-y:auto}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-track{background:#f1f1f1;border-radius:0}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);-webkit-transition:color .2s ease;transition:color .2s ease}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)}::-webkit-scrollbar{-webkit-appearance:none;width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:0}::-webkit-scrollbar-thumb{cursor:pointer;border-radius:5px;background:rgba(0,0,0,.25);-webkit-transition:color .2s ease;transition:color .2s ease}::-webkit-scrollbar-thumb:window-inactive{background:rgba(0,0,0,.15)}::-webkit-scrollbar-thumb:hover{background:rgba(128,135,139,.8)} /*# sourceMappingURL=index.css.map */ \ No newline at end of file diff --git a/docs/demo/assets/css/index.css.map b/docs/demo/assets/css/index.css.map index e94be0f..8134ddd 100644 --- a/docs/demo/assets/css/index.css.map +++ b/docs/demo/assets/css/index.css.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///examples/src/examples/src/App.vue","webpack:///examples/src/App.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-splitpane.vue","webpack:///src/components/mde-ui/mde-splitpane.vue","webpack:///src/assets/css/tooltip.css","webpack:///src/assets/css/iconfont.css","webpack:///src/components/mde-ui/src/components/mde-ui/mde-button.vue","webpack:///src/components/mde-ui/mde-button.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-buttons.vue","webpack:///src/components/mde-ui/mde-buttons.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-menubutton.vue","webpack:///src/components/mde-ui/mde-menubutton.vue","webpack:///src/components/src/assets/stylus/edit.styl","webpack:///src/components/Editor.vue","webpack:///src/components/src/assets/stylus/preview.styl","webpack:///src/components/Showdowns.vue","webpack:///src/components/src/components/ShowdownsEditor.vue","webpack:///src/components/ShowdownsEditor.vue","webpack:///examples/src/views/examples/src/views/preview.vue","webpack:///examples/src/views/preview.vue"],"names":[],"mappings":"AAkBA,EACE,QAAQ,CACR,SAAS,CACT,WCjBF,CDoBA,KACE,6BAAY,CAAZ,0BAAY,CAAZ,qBAAY,CACZ,6BAAkB,CAAlB,0BAAkB,CAAlB,yBAAkB,CAAlB,qBAAkB,CAClB,cAAW,CACX,eAAa,CACb,WClBF,CDqBA,iBACE,0BAAY,CAAZ,uBAAY,CAAZ,kBCjBF,CDoBA,KACE,kBAAY,CACZ,aAAO,CAEP,eAAa,CACb,eAAY,CACZ,iBAAU,CACV,kHAAkB,CAClB,kCAAwB,CACxB,iCCjBF,CDqBA,UAVE,cAAW,CAOX,WCdF,CCkIA,kBACE,mBAAS,CAAT,oBAAS,CAAT,gBAAS,CAAT,mBAAS,CAAT,YAAS,CACT,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MAAM,CACN,iBAAU,CACV,YAAS,CACT,wBAAa,CAAb,qBAAa,CAAb,oBAAa,CAAb,gBCjKF,CDmKE,6BACE,UAAO,CACP,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,KAAK,CACL,QCjKJ,CDoKE,2BACE,WAAQ,CACR,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,MAAM,CACN,OClKJ,CDsKA,aACE,eAAU,CACV,iBAAU,CACV,YCpKF,CDsKE,mBACE,kBAAM,CAAN,iBAAM,CAAN,eAAM,CAAN,aAAM,CAAN,SCpKJ,CDuKE,mBACE,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MCrKJ,CDyKA,gBACE,kBAAY,CACZ,UAAS,CACT,WAAS,CACT,6BAAY,CAAZ,0BAAY,CAAZ,qBAAY,CACZ,2BCvKF,CDyKE,sBACE,8BAAY,CAAZ,sBCvKJ,CD0KE,2BACE,WAAQ,CACR,aAAQ,CACR,sCAAY,CACZ,yCAAe,CACf,iBAAQ,CACR,UCxKJ,CD0KI,iCACE,mCAAY,CACZ,sCCxKN,CD4KE,yBACE,UAAO,CACP,aAAQ,CACR,uCAAa,CACb,wCAAc,CACd,iBC1KJ,CD4KI,+BACE,oCAAa,CACb,qCC1KN,CD8KE,yBACE,kBC5KJ,CD8KI,+BACE,0BC5KN,CCpEA,eACE,iBACF,CAEA,sBACE,UAAW,CACX,iBAAmB,CACnB,kBAAoB,CACpB,+BAAwB,CAAxB,2BAAwB,CAAxB,uBAAwB,CACxB,SAAU,CACV,sCAA+B,CAA/B,8BACF,CAEA,2CAEE,iBAAkB,CAClB,cAAe,CACf,eACF,CAEA,qBACE,0BAA2B,CAC3B,mBAAoB,CACpB,eAAgB,CAChB,kBAAmB,CACnB,wBAAyB,CACzB,oBAAqB,CACrB,cAAe,CACf,kBAAoB,CACpB,eAAgB,CAChB,iBAAkB,CAClB,qBAA0B,CAC1B,0BAA4B,CAC5B,iFAAmF,CAAnF,yEAAmF,CACnF,SACF,CAEA,2CACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,eAAgB,CAChB,yBAA2B,CAC3B,0BACF,CAEA,0CACE,QAAS,CACT,kCAA2B,CAA3B,8BAA2B,CAA3B,0BAA2B,CAC3B,WAAY,CACZ,kBACF,CAEA,2CACE,mBAAoB,CACpB,iBACF,CAEA,sBACE,SAAU,CACV,kDAA4C,CAA5C,8CAA4C,CAA5C,0CAA4C,CAC5C,mCAA4B,CAA5B,+BAA4B,CAA5B,2BAEF,CAEA,qBACE,SAAU,CACV,sCAA+B,CAA/B,kCAA+B,CAA/B,8BAEF,CAEA,uDACE,kBAAmB,CACnB,mBAAoB,CACpB,oCAA8B,CAA9B,4BACF,CAEA,4BACE,kDAA4C,CAA5C,8CAA4C,CAA5C,0CAA4C,CAC5C,SACF,CAEA,yJACE,0CAAoC,CAApC,sCAAoC,CAApC,kCACF,CAEA,yCACE,cACF,CAEA,0HACE,qDAA+C,CAA/C,iDAA+C,CAA/C,6CACF,CAEA,qFACE,qDAA+C,CAA/C,iDAA+C,CAA/C,6CACF,CAEA,qGACE,qDAA+C,CAA/C,iDAA+C,CAA/C,6CACF,CAEA,iHACE,qDAA+C,CAA/C,iDAA+C,CAA/C,6CACF,CAEA,oMACE,oCAA8B,CAA9B,gCAA8B,CAA9B,4BACF,CAEA,4NACE,oCAA8B,CAA9B,gCAA8B,CAA9B,4BACF,CAEA,qCACE,iCAA2B,CAA3B,yBAA2B,CAC3B,kBACF,CAEA,oCACE,kBAAmB,CACnB,UAAW,CACX,WAAY,CACZ,uBAAgB,CAAhB,eACF,CAEA,4CACE,qBAAsB,CACtB,UACF,CAEA,iDACE,QAAS,CACT,UAAW,CACX,QAAS,CACT,WAAY,CACZ,kCAA2B,CAA3B,8BAA2B,CAA3B,0BAA2B,CAC3B,kBACF,CAEA,kDACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,eAAgB,CAChB,yBAA2B,CAC3B,0BACF,CAEA,+CACE,QAAS,CACT,UAAW,CACX,MAAO,CACP,WAAY,CACZ,kBACF,CAEA,gDACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,yBAA2B,CAC3B,0BACF,CAEA,gDACE,QAAS,CACT,SAAU,CACV,OAAQ,CACR,WAAY,CACZ,kBACF,CAEA,iDACE,QAAS,CACT,SAAU,CACV,WAAY,CACZ,SAAU,CACV,yBAA2B,CAC3B,0BACF,CAEA,oDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,kCAA2B,CAA3B,8BAA2B,CAA3B,0BAA2B,CAC3B,eACF,CAEA,qDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,yBAA2B,CAC3B,uBACF,CAEA,kDACE,MAAO,CACP,QAAS,CACT,eACF,CAEA,mDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,yBAA2B,CAC3B,uBACF,CAEA,mDACE,OAAQ,CACR,QAAS,CACT,eACF,CAEA,oDACE,WAAY,CACZ,SAAU,CACV,QAAS,CACT,SAAU,CACV,yBAA2B,CAC3B,uBACF,CAEA,kDACE,UAAW,CACX,OAAQ,CACR,iBAAmB,CACnB,kCAA2B,CAA3B,8BAA2B,CAA3B,0BACF,CAEA,mDACE,UAAW,CACX,OAAQ,CACR,wBAA0B,CAC1B,0BACF,CAEA,mDACE,SAAU,CACV,OAAQ,CACR,gBAAkB,CAClB,kCAA2B,CAA3B,8BAA2B,CAA3B,0BACF,CAEA,oDACE,SAAU,CACV,OAAQ,CACR,wBAA0B,CAC1B,wBACF,CAEA,6CACE,eAAgB,CAChB,wCAAiC,CAAjC,gCACF,CAEA,mDACE,eAAgB,CAChB,uCAAgC,CAAhC,+BACF,CAEA,oDACE,eAAgB,CAChB,uCAAgC,CAAhC,+BACF,CAEA,0CACE,eACF,CAEA,4DACE,kBAAmB,CACnB,wCAAiC,CAAjC,gCACF,CAEA,kEACE,kBAAmB,CACnB,uCAAgC,CAAhC,+BACF,CAEA,mEACE,kBAAmB,CACnB,uCAAgC,CAAhC,+BACF,CAEA,yDACE,kBACF,CAEA,6CACE,sCAA+B,CAA/B,kCAA+B,CAA/B,8BACF,CAEA,4CACE,mCAA4B,CAA5B,+BAA4B,CAA5B,2BACF,CAEA,mDACE,mCAA4B,CAA5B,+BAA4B,CAA5B,2BACF,CAEA,sGACE,qCAA8B,CAA9B,iCAA8B,CAA9B,6BACF,CAEA,mDACE,oCAA6B,CAA7B,gCAA6B,CAA7B,4BACF,CCxTA,WACE,oBAAqB,CACrB,wCAAA,CACA,wSAKF,CAEA,MACE,oBAAqB,CACrB,SAAU,CACV,8BAAkC,CAClC,aAAc,CACd,iBAAkB,CAClB,mBAAoB,CACpB,uBAAwB,CACxB,mBAAoB,CACpB,iBAAkB,CAClB,iCAAkC,CAClC,kCAAmC,CACnC,kCAA2B,CAA3B,0BACF,CAEA,aACE,yBACF,CAEA,cACE,UAAW,CACX,aAAc,CACd,iDAA0C,CAA1C,yCACF,CAEA,gCACE,GACE,8BAAuB,CAAvB,sBACF,CAEA,GACE,+BAAwB,CAAxB,uBACF,CACF,CARA,wBACE,GACE,8BAAuB,CAAvB,sBACF,CAEA,GACE,+BAAwB,CAAxB,uBACF,CACF,CAEA,0BACE,eACF,CAEA,wBACE,eACF,CAEA,2BACE,eACF,CAEA,yBACE,eACF,CAEA,wBACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CAEA,uBACE,eACF,CAEA,kBACE,eACF,CAEA,iBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,iBACE,eACF,CAEA,oBACE,eACF,CAEA,sBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,sBACE,eACF,CAEA,kBACE,eACF,CAEA,yBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,sBACE,eACF,CAEA,oBACE,eACF,CAEA,qBACE,eACF,CAEA,mBACE,eACF,CAMA,0CACE,eACF,CAEA,mBACE,eACF,CAMA,yCACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,qBACE,eACF,CAMA,4CACE,eACF,CAEA,mBACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,yBACE,eACF,CAEA,2BACE,eACF,CAEA,mBACE,eACF,CAEA,yBACE,eACF,CAEA,uBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,uBACE,eACF,CAEA,mBACE,eACF,CAMA,0CACE,eACF,CAEA,mBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,uBACE,eACF,CAEA,iBACE,eACF,CAEA,uBACE,eACF,CAEA,mBACE,eACF,CAEA,iCACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CCzLA,oBACE,cAAQ,CACR,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,iBAAU,CACV,kBAAM,CAAN,qBAAM,CAAN,eAAM,CAAN,iBAAM,CAAN,aAAM,CACN,cAAY,CACZ,YAAS,CACT,WAAQ,CACR,uBAAgB,CAChB,uBAAY,CACZ,oBAAO,CACP,mBAAgB,CAChB,gBAAa,CACb,aAAW,CACX,eAAa,CACb,eAAa,CACb,iBAAY,CACZ,iBAAY,CACZ,oBAAiB,CACjB,wBAAa,CAAb,qBAAa,CAAb,oBAAa,CAAb,gBAAa,CACb,4HAA6B,CAA7B,oHAA6B,CAA7B,4GAA6B,CAA7B,wIAA6B,CAC7B,cAAa,CACb,uCC5IF,CD8IE,uCACE,iBAAU,CACV,KAAK,CACL,MAAM,CACN,QAAQ,CACR,OAAO,CACP,YC5IJ,CD+IE,kCACE,eAAS,CACT,cC7IJ,CDgJE,mCACE,eAAS,CACT,wBAAiB,CAAjB,qCAAiB,CAAjB,qBAAiB,CAAjB,qBAAiB,CAAjB,6BAAiB,CACjB,wBAAa,CAAb,0BAAa,CAAb,qBAAa,CAAb,qBAAa,CAAb,kBAAa,CACb,UAAO,CACP,8BC9IJ,CDkJA,8BAEE,oBAAS,CAIT,kCAAQ,CACR,cAAY,CACZ,aAAW,CACX,wBAAkB,CAClB,2BChJF,CDmJA,2HAZE,cAAQ,CAER,+BAAkB,CAClB,iCAAY,CAAZ,yBAAY,CACZ,6BClIF,CD0IA,6FAEE,qBC5IF,CDkJA,6FACE,cAAQ,CACR,iCAAY,CAAZ,yBAAY,CACZ,6BC9IF,CDiJA,8CACE,iFAAuC,CAAvC,yEC9IF,CDiJA,0BACE,wBAAkB,CAClB,qBAAkB,CAClB,oBC/IF,CDkJA,gCACE,WChJF,CDmJA,0BACE,wBAAkB,CAClB,oBAAO,CACP,6BAAkB,CAClB,+BAAY,CAAZ,uBCjJF,CDoJA,gCACE,WClJF,CDqJA,2BACE,wBAAkB,CAClB,mBAAkB,CAClB,oBAAO,CACP,qDAAuC,CAAvC,6CCnJF,CDsJA,oBACE,qBAAQ,CACR,kBAAgB,CAChB,SAAO,CACP,mCAAY,CAAZ,2BCpJF,CDuJA,yBACE,iBCrJF,CDwJA,sBACE,oBAAS,CACT,OAAO,CACP,QAAQ,CACR,qBAAgB,CAChB,qBAAY,CACZ,oCAAc,CACd,mCCtJF,CCrDA,gBACE,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,uBAAgB,CAChB,kBAAQ,CACR,uBAAY,CAAZ,eAAY,CACZ,aC/DF,CDkEA,sBACE,WAAS,CACT,aAAS,CACT,QAAQ,CACR,UAAO,CACP,iBAAY,CACZ,WChEF,CDmEA,6CACE,kBAAM,CAAN,qBAAM,CAAN,eAAM,CAAN,iBAAM,CAAN,aAAM,CACN,eAAe,CACf,QCjEF,CDoEA,yCACE,gBAAa,CACb,aChEF,CDoEE,kGAHA,kCAAwB,CACxB,qCC9DF,CD0EE,+FACE,mCAAyB,CACzB,sCCpEJ,CCmDA,iBACE,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,uBAAgB,CAChB,wBAAQ,CACR,uBAAY,CAAZ,eAAY,CACZ,aAAW,CACX,SCxFF,CD2FA,8CACE,eAAY,CACZ,kBCzFF,CD2FE,yDACE,yBCzFJ,CD2FI,wEACE,yBAAe,CACf,mCAAyB,CACzB,sCCzFN,CD4FI,uEACE,kCAAwB,CACxB,qCC1FN,CD+FA,yBACE,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,iBAAU,CACV,QAAK,CACL,WAAS,CACT,UAAO,CACP,cAAW,CACX,QAAQ,CACR,aAAS,CACT,eAAY,CACZ,SAAS,CACT,uBAAY,CACZ,2BAAiB,CACjB,qBAAQ,CACR,gCAAQ,CACR,yBAAe,CACf,8CAAY,CAAZ,sCC7FF,CD+FE,qOACE,eC1FJ,CC3CA,gBACE,UAAO,CACP,WCFF,CDIE,8DACE,WCDJ,CDIE,4BACE,mBCFJ,CDII,gDACE,cCFN,CCVA,WACE,iIAA0B,CAC1B,cAAW,CACX,YAAS,CACT,eCHF,CCybA,yBAEE,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MAAM,CACN,YAAS,CACT,cAAW,CACX,UAAO,CACP,WAAQ,CACR,mBAAS,CAAT,oBAAS,CAAT,gBAAS,CAAT,mBAAS,CAAT,YAAS,CACT,2BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,gBC9bF,CDgcE,+DAVA,iBAAU,CAOV,4BAAgB,CAAhB,yBAAgB,CAChB,wBAAW,CAAX,oBCrbF,CDubE,sCAEE,4BAAe,CACf,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,gBAAW,CACX,wBAAiB,CAAjB,qCAAiB,CAAjB,qBAAiB,CAAjB,qBAAiB,CAAjB,6BAAiB,CACjB,WC9bJ,CDgcI,iHACE,eC7bN,CDgcI,2DACE,eAAS,CACT,eAAY,CACZ,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,wBAAW,CAAX,oBAAW,CAAX,gBC9bN,CDgcM,+DACE,cAAW,CACX,cC9bR,CDicU,yFACE,mDAAA,CACA,uBC/bZ,CDicY,iHACE,sBC/bd,CDmcU,6FACE,wBAAwB,CACxB,2BCjcZ,CDqcQ,+EACE,gBCncV,CDycE,+CACE,iBAAU,CACV,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MCvcJ,CDycI,2DACE,cCvcN,CD0cI,qEACE,eAAU,CACV,UAAO,CACP,WCxcN,CD0cM,mFACE,UAAO,CACP,WAAQ,CACR,eCxcR,CD4cI,mEACE,uBAAoB,CACpB,UAAO,CACP,WC1cN,CD6cI,yEACE,kBAAY,CACZ,eC3cN,CD8cI,yEACE,cAAQ,CACR,iBAAe,CACf,0BAAY,CACZ,iCAAY,CAAZ,yBC5cN,CD+cI,yFACE,0BC7cN,CDgdI,+EACE,+BC9cN,CChCA,oBACE,uBAAoB,CACpB,UAAO,CACP,WCrDF,CDwDA,0BACE,kBAAY,CACZ,eCtDF,CDyDA,0BACE,cAAQ,CACR,iBAAe,CACf,0BAAY,CACZ,iCAAY,CAAZ,yBCvDF,CD0DA,0CACE,0BCxDF,CD2DA,gCACE,+BCzDF","file":"index.css","sourcesContent":["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n* {\n margin: 0;\n padding: 0;\n border: none;\n}\n\nhtml {\n box-sizing: border-box;\n text-size-adjust: 100%;\n font-size: 15px;\n line-height: 1.5;\n height: 100%;\n}\n\n*, :after, :before {\n box-sizing: inherit;\n}\n\nbody {\n background: #fbfbfb;\n color: #24292e;\n font-size: 15px;\n line-height: 1.5;\n min-height: 100%;\n position: relative;\n font-family: Menlo, \"Ubuntu Mono\", Consolas, \"Courier New\", \"Microsoft Yahei\", \"Hiragino Sans GB\", \"WenQuanYi Micro Hei\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n height: 100%;\n}\n\n#app {\n height: 100%;\n font-size: 15px;\n}\n","* {\n margin: 0;\n padding: 0;\n border: none;\n}\nhtml {\n box-sizing: border-box;\n text-size-adjust: 100%;\n font-size: 15px;\n line-height: 1.5;\n height: 100%;\n}\n*,\n:after,\n:before {\n box-sizing: inherit;\n}\nbody {\n background: #fbfbfb;\n color: #24292e;\n font-size: 15px;\n line-height: 1.5;\n min-height: 100%;\n position: relative;\n font-family: Menlo, \"Ubuntu Mono\", Consolas, \"Courier New\", \"Microsoft Yahei\", \"Hiragino Sans GB\", \"WenQuanYi Micro Hei\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n height: 100%;\n}\n#app {\n height: 100%;\n font-size: 15px;\n}\n/*# sourceMappingURL=examples/src/App.css.map */","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mde-ui.splitpane {\n display: flex;\n flex: 1;\n position: absolute;\n outline: none;\n user-select: text;\n\n &.horizontal {\n width: 100%;\n flex-direction: column;\n top: 0;\n bottom: 0;\n }\n\n &.vertical {\n height: 100%;\n flex-direction: row;\n left: 0;\n right: 0;\n }\n}\n\n.mde-ui.pane {\n overflow: hidden;\n position: relative;\n outline: none;\n\n &.pane1 {\n flex: none;\n }\n\n &.pane2 {\n flex: 1;\n }\n}\n\n.mde-ui.resizer {\n background: #464646;\n opacity: 0.2;\n z-index: 200;\n box-sizing: border-box;\n background-clip: padding-box;\n\n &:hover {\n transition: all 2s ease;\n }\n\n &.horizontal {\n height: 11px;\n margin: -5px 0;\n border-top: 5px solid hsla(0, 0%, 100%, 0);\n border-bottom: 5px solid hsla(0, 0%, 100%, 0);\n cursor: row-resize;\n width: 100%;\n\n &:hover {\n border-top: 5px solid rgba(0, 0, 0, 0.5);\n border-bottom: 5px solid rgba(0, 0, 0, 0.5);\n }\n }\n\n &.vertical {\n width: 11px;\n margin: 0 -5px;\n border-left: 5px solid hsla(0, 0%, 100%, 0);\n border-right: 5px solid hsla(0, 0%, 100%, 0);\n cursor: col-resize;\n\n &:hover {\n border-left: 5px solid rgba(0, 0, 0, 0.5);\n border-right: 5px solid rgba(0, 0, 0, 0.5);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n\n &:hover {\n border-color: transparent;\n }\n }\n}\n",".mde-ui.splitpane {\n display: flex;\n flex: 1;\n position: absolute;\n outline: none;\n user-select: text;\n}\n.mde-ui.splitpane.horizontal {\n width: 100%;\n flex-direction: column;\n top: 0;\n bottom: 0;\n}\n.mde-ui.splitpane.vertical {\n height: 100%;\n flex-direction: row;\n left: 0;\n right: 0;\n}\n.mde-ui.pane {\n overflow: hidden;\n position: relative;\n outline: none;\n}\n.mde-ui.pane.pane1 {\n flex: none;\n}\n.mde-ui.pane.pane2 {\n flex: 1;\n}\n.mde-ui.resizer {\n background: #464646;\n opacity: 0.2;\n z-index: 200;\n box-sizing: border-box;\n background-clip: padding-box;\n}\n.mde-ui.resizer:hover {\n transition: all 2s ease;\n}\n.mde-ui.resizer.horizontal {\n height: 11px;\n margin: -5px 0;\n border-top: 5px solid rgba(255,255,255,0);\n border-bottom: 5px solid rgba(255,255,255,0);\n cursor: row-resize;\n width: 100%;\n}\n.mde-ui.resizer.horizontal:hover {\n border-top: 5px solid rgba(0,0,0,0.5);\n border-bottom: 5px solid rgba(0,0,0,0.5);\n}\n.mde-ui.resizer.vertical {\n width: 11px;\n margin: 0 -5px;\n border-left: 5px solid rgba(255,255,255,0);\n border-right: 5px solid rgba(255,255,255,0);\n cursor: col-resize;\n}\n.mde-ui.resizer.vertical:hover {\n border-left: 5px solid rgba(0,0,0,0.5);\n border-right: 5px solid rgba(0,0,0,0.5);\n}\n.mde-ui.resizer.disabled {\n cursor: not-allowed;\n}\n.mde-ui.resizer.disabled:hover {\n border-color: transparent;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-splitpane.css.map */","[data-tooltip] {\n position: relative;\n}\n\n[data-tooltip]:before {\n content: '';\n width: 0.71428571em;\n height: 0.71428571em;\n transform: rotate(45deg);\n z-index: 2;\n box-shadow: 1px 1px 0 0 #bababc;\n}\n\n[data-tooltip]:after, [data-tooltip]:before {\n pointer-events: none;\n position: absolute;\n font-size: 1rem;\n background: #fff;\n}\n\n[data-tooltip]:after {\n content: attr(data-tooltip);\n text-transform: none;\n text-align: left;\n white-space: nowrap;\n border: 1px solid #d4d4d5;\n line-height: 1.4285em;\n max-width: none;\n padding: 0.833em 1em;\n font-weight: 400;\n font-style: normal;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 0.28571429rem;\n box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n z-index: 1;\n}\n\n[data-tooltip]:not([data-position]):before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 50%;\n background: #fff;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-tooltip]:not([data-position]):after {\n left: 50%;\n transform: translateX(-50%);\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-tooltip]:after, [data-tooltip]:before {\n pointer-events: none;\n visibility: hidden;\n}\n\n[data-tooltip]:before {\n opacity: 0;\n transform: rotate(45deg) scale(0) !important;\n transform-origin: center top;\n /* transition: all 0.1s ease; */\n}\n\n[data-tooltip]:after {\n opacity: 1;\n transform-origin: center bottom;\n /* transition: all 0.1s ease; */\n}\n\n[data-tooltip]:hover:after, [data-tooltip]:hover:before {\n visibility: visible;\n pointer-events: auto;\n transition: all 0.1s ease 1.5s;\n}\n\n[data-tooltip]:hover:before {\n transform: rotate(45deg) scale(1) !important;\n opacity: 1;\n}\n\n[data-tooltip][data-position='bottom center']:before, [data-tooltip][data-position='bottom left']:before, [data-tooltip][data-position='top right']:before {\n transform: rotate(315deg) !important;\n}\n\n[data-tooltip][data-tooltip-small]:after {\n font-size: 12px;\n}\n\n[data-tooltip]:after, [data-tooltip][data-position='bottom center']:after, [data-tooltip][data-position='top center']:after {\n transform: translateX(-50%) scale(0) !important;\n}\n\n[data-tooltip]:hover:after, [data-tooltip][data-position='bottom center']:hover:after {\n transform: translateX(-50%) scale(1) !important;\n}\n\n[data-tooltip][data-position='left center']:after, [data-tooltip][data-position='right center']:after {\n transform: translateY(-50%) scale(0) !important;\n}\n\n[data-tooltip][data-position='left center']:hover:after, [data-tooltip][data-position='right center']:hover:after {\n transform: translateY(-50%) scale(1) !important;\n}\n\n[data-tooltip][data-position='bottom left']:after, [data-tooltip][data-position='bottom right']:after, [data-tooltip][data-position='top left']:after, [data-tooltip][data-position='top right']:after {\n transform: scale(0) !important;\n}\n\n[data-tooltip][data-position='bottom left']:hover:after, [data-tooltip][data-position='bottom right']:hover:after, [data-tooltip][data-position='top left']:hover:after, [data-tooltip][data-position='top right']:hover:after {\n transform: scale(1) !important;\n}\n\n[data-tooltip][data-inverted]:before {\n box-shadow: none !important;\n background: #1b1c1d;\n}\n\n[data-tooltip][data-inverted]:after {\n background: #1b1c1d;\n color: #fff;\n border: none;\n box-shadow: none;\n}\n\n[data-tooltip][data-inverted]:after .header {\n background-color: none;\n color: #fff;\n}\n\n[data-position='top center'][data-tooltip]:after {\n top: auto;\n right: auto;\n left: 50%;\n bottom: 100%;\n transform: translateX(-50%);\n margin-bottom: 0.5em;\n}\n\n[data-position='top center'][data-tooltip]:before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 50%;\n background: #fff;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='top left'][data-tooltip]:after {\n top: auto;\n right: auto;\n left: 0;\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-position='top left'][data-tooltip]:before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 1em;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='top right'][data-tooltip]:after {\n top: auto;\n left: auto;\n right: 0;\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-position='top right'][data-tooltip]:before {\n top: auto;\n left: auto;\n bottom: 100%;\n right: 1em;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='bottom center'][data-tooltip]:after {\n bottom: auto;\n right: auto;\n left: 50%;\n top: 100%;\n transform: translateX(-50%);\n margin-top: 0.5em;\n}\n\n[data-position='bottom center'][data-tooltip]:before {\n bottom: auto;\n right: auto;\n top: 100%;\n left: 50%;\n margin-left: -0.07142857rem;\n margin-top: 0.14285714rem;\n}\n\n[data-position='bottom left'][data-tooltip]:after {\n left: 0;\n top: 100%;\n margin-top: 0.5em;\n}\n\n[data-position='bottom left'][data-tooltip]:before {\n bottom: auto;\n right: auto;\n top: 100%;\n left: 1em;\n margin-left: -0.07142857rem;\n margin-top: 0.14285714rem;\n}\n\n[data-position='bottom right'][data-tooltip]:after {\n right: 0;\n top: 100%;\n margin-top: 0.5em;\n}\n\n[data-position='bottom right'][data-tooltip]:before {\n bottom: auto;\n left: auto;\n top: 100%;\n right: 1em;\n margin-left: -0.14285714rem;\n margin-top: 0.07142857rem;\n}\n\n[data-position='left center'][data-tooltip]:after {\n right: 100%;\n top: 50%;\n margin-right: 0.5em;\n transform: translateY(-50%);\n}\n\n[data-position='left center'][data-tooltip]:before {\n right: 100%;\n top: 50%;\n margin-top: -0.14285714rem;\n margin-right: -0.07142857rem;\n}\n\n[data-position='right center'][data-tooltip]:after {\n left: 100%;\n top: 50%;\n margin-left: 0.5em;\n transform: translateY(-50%);\n}\n\n[data-position='right center'][data-tooltip]:before {\n left: 100%;\n top: 50%;\n margin-top: -0.07142857rem;\n margin-left: 0.14285714rem;\n}\n\n[data-position~='bottom'][data-tooltip]:before {\n background: #fff;\n box-shadow: -1px -1px 0 0 #bababc;\n}\n\n[data-position='left center'][data-tooltip]:before {\n background: #fff;\n box-shadow: 1px -1px 0 0 #bababc;\n}\n\n[data-position='right center'][data-tooltip]:before {\n background: #fff;\n box-shadow: -1px 1px 0 0 #bababc;\n}\n\n[data-position~='top'][data-tooltip]:before {\n background: #fff;\n}\n\n[data-inverted][data-position~='bottom'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: -1px -1px 0 0 #bababc;\n}\n\n[data-inverted][data-position='left center'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: 1px -1px 0 0 #bababc;\n}\n\n[data-inverted][data-position='right center'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: -1px 1px 0 0 #bababc;\n}\n\n[data-inverted][data-position~='top'][data-tooltip]:before {\n background: #1b1c1d;\n}\n\n[data-position~='bottom'][data-tooltip]:before {\n transform-origin: center bottom;\n}\n\n[data-position~='bottom'][data-tooltip]:after {\n transform-origin: center top;\n}\n\n[data-position='left center'][data-tooltip]:before {\n transform-origin: top center;\n}\n\n[data-position='left center'][data-tooltip]:after, [data-position='right center'][data-tooltip]:before {\n transform-origin: right center;\n}\n\n[data-position='right center'][data-tooltip]:after {\n transform-origin: left center;\n}\n","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n@font-face {\n font-family: iconfont;\n src: url(\"../../assets/fonts/iconfont.eot?t=1576392666910\"); /* IE9 */\n src: url(\"../../assets/fonts/iconfont.eot?t=1576392666910#iefix\") format(\"embedded.opentype\"), /* IE6.IE8 */\n url(\"../../assets/fonts/iconfont.woff2?t=1576392666910\") format(\"woff2\"),\n url(\"../../assets/fonts/iconfont.woff?t=1576392666910\") format(\"woff\"),\n url(\"../../assets/fonts/iconfont.ttf?t=1576392666910\") format(\"truetype\"), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */\n url(\"../../assets/fonts/iconfont.svg?t=1576392666910#iconfont\") format(\"svg\"); /* iOS 4.1- */\n}\n\n.icon {\n display: inline-block;\n opacity: 1;\n font-family: \"iconfont\" !important;\n font-size: 1em;\n font-style: normal;\n font-variant: normal;\n text-decoration: inherit;\n text-transform: none;\n text-align: center;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n backface-visibility: hidden;\n}\n\n.icon:before {\n background: none !important;\n}\n\n.icon.loading {\n height: 1em;\n line-height: 1;\n animation: icon-loading 2s linear infinite;\n}\n\n@keyframes icon-loading {\n 0% {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(1turn);\n }\n}\n\n.icon.align-center:before {\n content: \"\\e600\";\n}\n\n.icon.align-left:before {\n content: \"\\e601\";\n}\n\n.icon.align-justify:before {\n content: \"\\e602\";\n}\n\n.icon.align-right:before {\n content: \"\\e603\";\n}\n\n.icon.border-all:before {\n content: \"\\e604\";\n}\n\n.icon.bold:before {\n content: \"\\e605\";\n}\n\n.icon.book:before {\n content: \"\\e606\";\n}\n\n.icon.clipboard:before {\n content: \"\\e607\";\n}\n\n.icon.code:before {\n content: \"\\e608\";\n}\n\n.icon.cut:before {\n content: \"\\e609\";\n}\n\n.icon.columns:before {\n content: \"\\e60a\";\n}\n\n.icon.copy:before {\n content: \"\\e60b\";\n}\n\n.icon.cog:before {\n content: \"\\e60c\";\n}\n\n.icon.eraser:before {\n content: \"\\e60d\";\n}\n\n.icon.file-alt:before {\n content: \"\\e60e\";\n}\n\n.icon.heading:before {\n content: \"\\e60f\";\n}\n\n.icon.file:before {\n content: \"\\e610\";\n}\n\n.icon.i-cursor:before {\n content: \"\\e611\";\n}\n\n.icon.font:before {\n content: \"\\e612\";\n}\n\n.icon.highlighter:before {\n content: \"\\e613\";\n}\n\n.icon.cogs:before {\n content: \"\\e614\";\n}\n\n.icon.italic:before {\n content: \"\\e615\";\n}\n\n.icon.list-alt:before {\n content: \"\\e616\";\n}\n\n.icon.indent:before {\n content: \"\\e617\";\n}\n\n.icon.outdent:before {\n content: \"\\e618\";\n}\n\n.icon.image:before {\n content: \"\\e619\";\n}\n\n.icon.ordered:before {\n content: \"\\e61a\";\n}\n\n.icon.list-ol:before {\n content: \"\\e61a\";\n}\n\n.icon.icons:before {\n content: \"\\e61b\";\n}\n\n.icon.bullet:before {\n content: \"\\e61c\";\n}\n\n.icon.list-ul:before {\n content: \"\\e61c\";\n}\n\n.icon.redo:before {\n content: \"\\e61d\";\n}\n\n.icon.print:before {\n content: \"\\e61e\";\n}\n\n.icon.sitemap:before {\n content: \"\\e61f\";\n}\n\n.icon.quote:before {\n content: \"\\e620\";\n}\n\n.icon.quote-right:before {\n content: \"\\e620\";\n}\n\n.icon.reply:before {\n content: \"\\e621\";\n}\n\n.icon.link:before {\n content: \"\\e622\";\n}\n\n.icon.list:before {\n content: \"\\e623\";\n}\n\n.icon.tasks:before {\n content: \"\\e625\";\n}\n\n.icon.spell-check:before {\n content: \"\\e626\";\n}\n\n.icon.strikethrough:before {\n content: \"\\e627\";\n}\n\n.icon.share:before {\n content: \"\\e628\";\n}\n\n.icon.paper-plane:before {\n content: \"\\e629\";\n}\n\n.icon.underline:before {\n content: \"\\e62a\";\n}\n\n.icon.undo:before {\n content: \"\\e62c\";\n}\n\n.icon.wrench:before {\n content: \"\\e62d\";\n}\n\n.icon.sync:before {\n content: \"\\e62e\";\n}\n\n.icon.clone:before {\n content: \"\\e62f\";\n}\n\n.icon.paperclip:before {\n content: \"\\e630\";\n}\n\n.icon.table:before {\n content: \"\\e631\";\n}\n\n.icon.preview:before {\n content: \"\\e632\";\n}\n\n.icon.glasses:before {\n content: \"\\e632\";\n}\n\n.icon.tools:before {\n content: \"\\e633\";\n}\n\n.icon.th-list:before {\n content: \"\\e634\";\n}\n\n.icon.edit:before {\n content: \"\\e635\";\n}\n\n.icon.unlink:before {\n content: \"\\e636\";\n}\n\n.icon.ch1:before {\n content: \"\\e637\";\n}\n\n.icon.ch2:before {\n content: \"\\e638\";\n}\n\n.icon.ch3:before {\n content: \"\\e639\";\n}\n\n.icon.ch4:before {\n content: \"\\e63a\";\n}\n\n.icon.ch5:before {\n content: \"\\e63b\";\n}\n\n.icon.ch6:before {\n content: \"\\e63c\";\n}\n\n.icon.splitline:before {\n content: \"\\e62b\";\n}\n\n.icon.toc:before {\n content: \"\\e624\";\n}\n\n.icon.codeblock:before {\n content: \"\\e63d\";\n}\n\n.icon.emoji:before {\n content: \"\\e63e\";\n}\n\n.icon.preview-right-light:before {\n content: \"\\e63f\";\n}\n\n.icon.lang:before {\n content: \"\\e640\";\n}\n\n.icon.help:before {\n content: \"\\e641\";\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import ('../../assets/css/tooltip.css');\n@import ('../../assets/css/iconfont.css');\n\n.mde-ui.icon-button {\n cursor: pointer;\n display: inline-flex;\n position: relative;\n flex: 1 0 auto;\n min-height: 1em;\n outline: none;\n border: none;\n vertical-align: baseline;\n background: #e0e1e2 none;\n color: rgba(0, 0, 0, 0.6);\n text-transform: none;\n text-shadow: none;\n font-size: 1em;\n font-weight: 400;\n line-height: 1em;\n font-style: normal;\n text-align: center;\n text-decoration: none;\n user-select: none;\n transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;\n will-change: '';\n -webkit-tap-highlight-color: transparent;\n\n span[data-tooltip] {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1000;\n }\n\n .content-left {\n display: inherit;\n padding: 0.618em;\n }\n\n .content-right {\n display: inherit;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n padding: 0.618em 0.618em 0.618em 0;\n }\n}\n\n.mde-ui.icon-button.separator {\n cursor: default;\n opacity: 0.2 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n border: 2px solid rgba(255, 255, 255, 0);\n min-height: 5px;\n min-width: 5px;\n background-color: #464646;\n background-clip: padding-box;\n}\n\n.mde-ui.icon-button:disabled, .mde-ui.icon-button.disabled, .mde-ui.icon-button.disabled:hover {\n cursor: default;\n opacity: 0.45 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n\n.mde-ui.icon-button:selected, .mde-ui.icon-button.selected, .mde-ui.icon-button.selected:hover {\n cursor: default;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n\n.mde-ui.icon-button, .mde-ui.icon-button:hover {\n box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 0 rgba(34, 36, 38, 0.15);\n}\n\n.mde-ui.icon-button:hover {\n background-color: #cacbcd;\n background-image: none;\n color: rgba(0, 0, 0, 0.8);\n}\n\n.mde-ui.icon-button:hover .icon {\n opacity: 0.85;\n}\n\n.mde-ui.icon-button:focus {\n background-color: #cacbcd;\n color: rgba(0, 0, 0, 0.8);\n background-image: '' !important;\n box-shadow: '' !important;\n}\n\n.mde-ui.icon-button:focus .icon {\n opacity: 0.85;\n}\n\n.mde-ui.icon-button:active {\n background-color: #babbbc;\n background-image: '';\n color: rgba(0, 0, 0, 0.9);\n box-shadow: inset 0 0 0 1px transparent, none;\n}\n\n.content-left > .icon {\n margin: auto !important;\n vertical-align: top;\n width: 1em;\n transition: opacity 0.1s ease;\n}\n\n.content-right > .shortkey {\n padding-left: 16px;\n}\n\n.content-right > .caret {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n border-top: 4px dashed;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n","@import '../../assets/css/tooltip.css';\n@import '../../assets/css/iconfont.css';\n.mde-ui.icon-button {\n cursor: pointer;\n display: inline-flex;\n position: relative;\n flex: 1 0 auto;\n min-height: 1em;\n outline: none;\n border: none;\n vertical-align: baseline;\n background: #e0e1e2 none;\n color: rgba(0,0,0,0.6);\n text-transform: none;\n text-shadow: none;\n font-size: 1em;\n font-weight: 400;\n line-height: 1em;\n font-style: normal;\n text-align: center;\n text-decoration: none;\n user-select: none;\n transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;\n will-change: '';\n -webkit-tap-highlight-color: transparent;\n}\n.mde-ui.icon-button span[data-tooltip] {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1000;\n}\n.mde-ui.icon-button .content-left {\n display: inherit;\n padding: 0.618em;\n}\n.mde-ui.icon-button .content-right {\n display: inherit;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n padding: 0.618em 0.618em 0.618em 0;\n}\n.mde-ui.icon-button.separator {\n cursor: default;\n opacity: 0.2 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n border: 2px solid rgba(255,255,255,0);\n min-height: 5px;\n min-width: 5px;\n background-color: #464646;\n background-clip: padding-box;\n}\n.mde-ui.icon-button:disabled,\n.mde-ui.icon-button.disabled,\n.mde-ui.icon-button.disabled:hover {\n cursor: default;\n opacity: 0.45 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n.mde-ui.icon-button:selected,\n.mde-ui.icon-button.selected,\n.mde-ui.icon-button.selected:hover {\n cursor: default;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n.mde-ui.icon-button,\n.mde-ui.icon-button:hover {\n box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 0 rgba(34,36,38,0.15);\n}\n.mde-ui.icon-button:hover {\n background-color: #cacbcd;\n background-image: none;\n color: rgba(0,0,0,0.8);\n}\n.mde-ui.icon-button:hover .icon {\n opacity: 0.85;\n}\n.mde-ui.icon-button:focus {\n background-color: #cacbcd;\n color: rgba(0,0,0,0.8);\n background-image: '' !important;\n box-shadow: '' !important;\n}\n.mde-ui.icon-button:focus .icon {\n opacity: 0.85;\n}\n.mde-ui.icon-button:active {\n background-color: #babbbc;\n background-image: '';\n color: rgba(0,0,0,0.9);\n box-shadow: inset 0 0 0 1px transparent, none;\n}\n.content-left > .icon {\n margin: auto !important;\n vertical-align: top;\n width: 1em;\n transition: opacity 0.1s ease;\n}\n.content-right > .shortkey {\n padding-left: 16px;\n}\n.content-right > .caret {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n border-top: 4px dashed;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-button.css.map */","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mde-ui.buttons {\n display: inline-flex;\n flex-direction: row;\n vertical-align: baseline;\n margin: 0 0.25em 0 0;\n box-shadow: none;\n font-size: 1em;\n}\n\n.mde-ui.buttons:after {\n content: '.';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n font-size: 0;\n}\n\n.mde-ui.buttons .icon-button:not(.separator) {\n flex: 1 0 auto;\n border-radius: 0;\n margin: 0;\n}\n\n.mde-ui.buttons .icon-button:first-child {\n border-left: none;\n margin-left: 0;\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n\n div:first-child {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n }\n}\n\n.mde-ui.buttons .icon-button:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n\n div:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n }\n}\n",".mde-ui.buttons {\n display: inline-flex;\n flex-direction: row;\n vertical-align: baseline;\n margin: 0 0.25em 0 0;\n box-shadow: none;\n font-size: 1em;\n}\n.mde-ui.buttons:after {\n content: '.';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n font-size: 0;\n}\n.mde-ui.buttons .icon-button:not(.separator) {\n flex: 1 0 auto;\n border-radius: 0;\n margin: 0;\n}\n.mde-ui.buttons .icon-button:first-child {\n border-left: none;\n margin-left: 0;\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:first-child div:first-child {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:last-child div:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-buttons.css.map */","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mde-ui.dropdown {\n display: inline-flex;\n flex-direction: column;\n vertical-align: baseline;\n margin: 0 0.28571429em 0 0;\n box-shadow: none;\n font-size: 1em;\n outline: 0;\n}\n\n.mde-ui.dropdown .icon-button:not(.separator) {\n text-align: left;\n white-space: nowrap;\n\n &.menubutton {\n border-radius: 0.28571429em;\n\n .content-right {\n padding-right: 0.28571429em;\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n }\n\n .content-left {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n }\n }\n}\n\n.mde-ui.buttons.dropdown {\n flex-direction: column;\n position: absolute;\n top: 40px;\n z-index: 999;\n float: left;\n min-width: 12em;\n margin: 0;\n padding: 5px 0;\n text-align: left;\n outline: 0;\n background: #e0e1e2 none;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.28571429em;\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n\n .icon-button:first-child, .icon-button:last-child, .icon-button:first-child div:first-child, .icon-button:last-child div:last-child {\n border-radius: 0;\n }\n}\n",".mde-ui.dropdown {\n display: inline-flex;\n flex-direction: column;\n vertical-align: baseline;\n margin: 0 0.28571429em 0 0;\n box-shadow: none;\n font-size: 1em;\n outline: 0;\n}\n.mde-ui.dropdown .icon-button:not(.separator) {\n text-align: left;\n white-space: nowrap;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton {\n border-radius: 0.28571429em;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-right {\n padding-right: 0.28571429em;\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-left {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons.dropdown {\n flex-direction: column;\n position: absolute;\n top: 40px;\n z-index: 999;\n float: left;\n min-width: 12em;\n margin: 0;\n padding: 5px 0;\n text-align: left;\n outline: 0;\n background: #e0e1e2 none;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0,0,0,0.15);\n border-radius: 0.28571429em;\n box-shadow: 0 6px 12px rgba(0,0,0,0.175);\n}\n.mde-ui.buttons.dropdown .icon-button:first-child,\n.mde-ui.buttons.dropdown .icon-button:last-child,\n.mde-ui.buttons.dropdown .icon-button:first-child div:first-child,\n.mde-ui.buttons.dropdown .icon-button:last-child div:last-child {\n border-radius: 0;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-menubutton.css.map */","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n.vue-codemirror {\n width: auto;\n height: 100%;\n\n .CodeMirror, .CodeMirror-merge {\n height: 100%;\n }\n\n .CodeMirror {\n font-family: inherit;\n\n .CodeMirror-gutters {\n border-right: 0px;\n }\n }\n}\n","@import '../../node_modules/codemirror/addon/fold/foldgutter.css';\n@import '../../node_modules/codemirror/lib/codemirror.css';\n.vue-codemirror {\n width: auto;\n height: 100%;\n}\n.vue-codemirror .CodeMirror,\n.vue-codemirror .CodeMirror-merge {\n height: 100%;\n}\n.vue-codemirror .CodeMirror {\n font-family: inherit;\n}\n.vue-codemirror .CodeMirror .CodeMirror-gutters {\n border-right: 0px;\n}\n/*# sourceMappingURL=src/components/Editor.css.map */","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n.showdowns {\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 16px;\n padding: 16px;\n overflow: hidden;\n}\n","@import '../../node_modules/@jhuix/showdowns/dist/showdowns.min.css';\n.showdowns {\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 16px;\n padding: 16px;\n overflow: hidden;\n}\n/*# sourceMappingURL=src/components/Showdowns.css.map */","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.mde-workspace-container {\n position: relative;\n flex: 1;\n outline: none;\n min-width: 50em;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n\n .mde-toolbar {\n position: relative;\n border-bottom: 1px solid #ddd;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n z-index: 201;\n\n .mde-toolbar-left, .mde-toolbat-right {\n display: inherit;\n }\n\n .mde-toolbar-actions {\n padding: 4px 5px;\n min-height: 34px;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n\n &.nav {\n min-width: 40px;\n padding-left: 0;\n\n .mde-ui.dropdown {\n &.mainmenu {\n background: url('../assets/img/logo.png') no-repeat;\n background-size: contain;\n\n .icon-button.menubutton {\n background-color: unset;\n }\n }\n\n .icon-button {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n .mde-ui.buttons {\n margin-right: 1em;\n }\n }\n }\n }\n\n .mde-editor-container {\n position: relative;\n flex: 1;\n\n .raw-editor {\n min-width: 25em;\n }\n\n .mde-scroll-container {\n overflow: hidden;\n width: 100%;\n height: 100%;\n\n .mdse-preview {\n width: auto;\n height: 100%;\n overflow-y: auto;\n }\n }\n\n ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n }\n\n ::-webkit-scrollbar-track {\n background: rgb(241, 241, 241);\n border-radius: 0;\n }\n\n ::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0, 0, 0, 0.25);\n transition: color 0.2s ease;\n }\n\n ::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0, 0, 0, 0.15);\n }\n\n ::-webkit-scrollbar-thumb:hover {\n background: rgba(128, 135, 139, 0.8);\n }\n }\n}\n",".mde-workspace-container {\n position: relative;\n flex: 1;\n outline: none;\n min-width: 50em;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n}\n.mde-workspace-container .mde-toolbar {\n position: relative;\n border-bottom: 1px solid #ddd;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n z-index: 201;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-left,\n.mde-workspace-container .mde-toolbar .mde-toolbat-right {\n display: inherit;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions {\n padding: 4px 5px;\n min-height: 34px;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav {\n min-width: 40px;\n padding-left: 0;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu {\n background: url(\"../assets/img/logo.png\") no-repeat;\n background-size: contain;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu .icon-button.menubutton {\n background-color: unset;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown .icon-button {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.buttons {\n margin-right: 1em;\n}\n.mde-workspace-container .mde-editor-container {\n position: relative;\n flex: 1;\n}\n.mde-workspace-container .mde-editor-container .raw-editor {\n min-width: 25em;\n}\n.mde-workspace-container .mde-editor-container .mde-scroll-container {\n overflow: hidden;\n width: 100%;\n height: 100%;\n}\n.mde-workspace-container .mde-editor-container .mde-scroll-container .mdse-preview {\n width: auto;\n height: 100%;\n overflow-y: auto;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 0;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0,0,0,0.25);\n transition: color 0.2s ease;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0,0,0,0.15);\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:hover {\n background: rgba(128,135,139,0.8);\n}\n/*# sourceMappingURL=src/components/ShowdownsEditor.css.map */","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n\n::-webkit-scrollbar-track {\n background: rgb(241, 241, 241);\n border-radius: 0;\n}\n\n::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0, 0, 0, 0.25);\n transition: color 0.2s ease;\n}\n\n::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0, 0, 0, 0.15);\n}\n\n::-webkit-scrollbar-thumb:hover {\n background: rgba(128, 135, 139, 0.8);\n}\n","::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 0;\n}\n::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0,0,0,0.25);\n transition: color 0.2s ease;\n}\n::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0,0,0,0.15);\n}\n::-webkit-scrollbar-thumb:hover {\n background: rgba(128,135,139,0.8);\n}\n/*# sourceMappingURL=examples/src/views/preview.css.map */"]} \ No newline at end of file +{"version":3,"sources":["webpack:///examples/src/examples/src/App.vue","webpack:///examples/src/App.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-splitpane.vue","webpack:///src/components/mde-ui/mde-splitpane.vue","webpack:///src/assets/css/tooltip.css","webpack:///src/assets/css/iconfont.css","webpack:///src/components/mde-ui/src/components/mde-ui/mde-button.vue","webpack:///src/components/mde-ui/mde-button.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-buttons.vue","webpack:///src/components/mde-ui/mde-buttons.vue","webpack:///src/components/mde-ui/src/components/mde-ui/mde-menubutton.vue","webpack:///src/components/mde-ui/mde-menubutton.vue","webpack:///src/components/src/assets/stylus/edit.styl","webpack:///src/components/Editor.vue","webpack:///src/components/src/assets/stylus/preview.styl","webpack:///src/components/Showdowns.vue","webpack:///src/components/src/components/ShowdownsEditor.vue","webpack:///src/components/ShowdownsEditor.vue","webpack:///examples/src/views/examples/src/views/preview.vue","webpack:///examples/src/views/preview.vue"],"names":[],"mappings":"AACA,EACE,QAAQ,CACR,SAAS,CACT,WCAF,CDGA,KACE,6BAAY,CAAZ,0BAAY,CAAZ,qBAAY,CACZ,6BAAkB,CAAlB,0BAAkB,CAAlB,yBAAkB,CAAlB,qBAAkB,CAClB,cAAW,CACX,eAAa,CACb,WCDF,CDIA,iBACE,0BAAY,CAAZ,uBAAY,CAAZ,kBCAF,CDGA,KACE,kBAAY,CACZ,aAAO,CAEP,eAAa,CACb,eAAY,CACZ,iBAAU,CACV,kHAAkB,CAClB,kCAAwB,CACxB,iCCAF,CDIA,UAVE,cAAW,CAOX,WCGF,CC/BA,kBACE,mBAAS,CAAT,oBAAS,CAAT,gBAAS,CAAT,mBAAS,CAAT,YAAS,CACT,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MAAM,CACN,iBAAU,CACV,YAAS,CACT,wBAAa,CAAb,qBAAa,CAAb,oBAAa,CAAb,gBCAF,CDEE,6BACE,UAAO,CACP,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,KAAK,CACL,QCAJ,CDGE,2BACE,WAAQ,CACR,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,MAAM,CACN,OCDJ,CDKA,aACE,eAAU,CACV,iBAAU,CACV,YCHF,CDKE,mBACE,kBAAM,CAAN,iBAAM,CAAN,eAAM,CAAN,aAAM,CAAN,SCHJ,CDME,mBACE,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MCJJ,CDQA,gBACE,kBAAY,CACZ,UAAS,CACT,WAAS,CACT,6BAAY,CAAZ,0BAAY,CAAZ,qBAAY,CACZ,2BCNF,CDQE,sBACE,8BAAY,CAAZ,sBCNJ,CDSE,2BACE,WAAQ,CACR,aAAQ,CACR,sCAAY,CACZ,yCAAe,CACf,iBAAQ,CACR,UCPJ,CDSI,iCACE,mCAAY,CACZ,sCCPN,CDWE,yBACE,UAAO,CACP,aAAQ,CACR,uCAAa,CACb,wCAAc,CACd,iBCTJ,CDWI,+BACE,oCAAa,CACb,qCCTN,CDaE,yBACE,kBCXJ,CDaI,+BACE,wBCXN,CCpEA,eACE,iBACF,CAEA,sBACE,UAAW,CACX,iBAAmB,CACnB,kBAAoB,CACpB,+BAAwB,CAAxB,uBAAwB,CACxB,SAAU,CACV,sCAA+B,CAA/B,8BACF,CAEA,2CAEE,iBAAkB,CAClB,cAAe,CACf,eACF,CAEA,qBACE,0BAA2B,CAC3B,mBAAoB,CACpB,eAAgB,CAChB,kBAAmB,CACnB,wBAAyB,CACzB,oBAAqB,CACrB,cAAe,CACf,kBAAoB,CACpB,eAAgB,CAChB,iBAAkB,CAClB,qBAA0B,CAC1B,0BAA4B,CAC5B,iFAAmF,CAAnF,yEAAmF,CACnF,SACF,CAEA,2CACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,eAAgB,CAChB,yBAA2B,CAC3B,0BACF,CAEA,0CACE,QAAS,CACT,kCAA2B,CAA3B,0BAA2B,CAC3B,WAAY,CACZ,kBACF,CAEA,2CACE,mBAAoB,CACpB,iBACF,CAEA,sBACE,SAAU,CACV,kDAA4C,CAA5C,0CAA4C,CAC5C,mCAA4B,CAA5B,2BAEF,CAEA,qBACE,SAAU,CACV,sCAA+B,CAA/B,8BAEF,CAEA,uDACE,kBAAmB,CACnB,mBAAoB,CACpB,oCAA8B,CAA9B,4BACF,CAEA,4BACE,kDAA4C,CAA5C,0CAA4C,CAC5C,SACF,CAEA,yJACE,0CAAoC,CAApC,kCACF,CAEA,yCACE,cACF,CAEA,0HACE,qDAA+C,CAA/C,6CACF,CAEA,qFACE,qDAA+C,CAA/C,6CACF,CAEA,qGACE,qDAA+C,CAA/C,6CACF,CAEA,iHACE,qDAA+C,CAA/C,6CACF,CAEA,oMACE,oCAA8B,CAA9B,4BACF,CAEA,4NACE,oCAA8B,CAA9B,4BACF,CAEA,qCACE,iCAA2B,CAA3B,yBAA2B,CAC3B,kBACF,CAEA,oCACE,kBAAmB,CACnB,UAAW,CACX,WAAY,CACZ,uBAAgB,CAAhB,eACF,CAEA,4CACE,qBAAsB,CACtB,UACF,CAEA,iDACE,QAAS,CACT,UAAW,CACX,QAAS,CACT,WAAY,CACZ,kCAA2B,CAA3B,0BAA2B,CAC3B,kBACF,CAEA,kDACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,eAAgB,CAChB,yBAA2B,CAC3B,0BACF,CAEA,+CACE,QAAS,CACT,UAAW,CACX,MAAO,CACP,WAAY,CACZ,kBACF,CAEA,gDACE,QAAS,CACT,UAAW,CACX,WAAY,CACZ,QAAS,CACT,yBAA2B,CAC3B,0BACF,CAEA,gDACE,QAAS,CACT,SAAU,CACV,OAAQ,CACR,WAAY,CACZ,kBACF,CAEA,iDACE,QAAS,CACT,SAAU,CACV,WAAY,CACZ,SAAU,CACV,yBAA2B,CAC3B,0BACF,CAEA,oDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,kCAA2B,CAA3B,0BAA2B,CAC3B,eACF,CAEA,qDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,yBAA2B,CAC3B,uBACF,CAEA,kDACE,MAAO,CACP,QAAS,CACT,eACF,CAEA,mDACE,WAAY,CACZ,UAAW,CACX,QAAS,CACT,QAAS,CACT,yBAA2B,CAC3B,uBACF,CAEA,mDACE,OAAQ,CACR,QAAS,CACT,eACF,CAEA,oDACE,WAAY,CACZ,SAAU,CACV,QAAS,CACT,SAAU,CACV,yBAA2B,CAC3B,uBACF,CAEA,kDACE,UAAW,CACX,OAAQ,CACR,iBAAmB,CACnB,kCAA2B,CAA3B,0BACF,CAEA,mDACE,UAAW,CACX,OAAQ,CACR,wBAA0B,CAC1B,0BACF,CAEA,mDACE,SAAU,CACV,OAAQ,CACR,gBAAkB,CAClB,kCAA2B,CAA3B,0BACF,CAEA,oDACE,SAAU,CACV,OAAQ,CACR,wBAA0B,CAC1B,wBACF,CAEA,6CACE,eAAgB,CAChB,wCAAiC,CAAjC,gCACF,CAEA,mDACE,eAAgB,CAChB,uCAAgC,CAAhC,+BACF,CAEA,oDACE,eAAgB,CAChB,uCAAgC,CAAhC,+BACF,CAEA,0CACE,eACF,CAEA,4DACE,kBAAmB,CACnB,wCAAiC,CAAjC,gCACF,CAEA,kEACE,kBAAmB,CACnB,uCAAgC,CAAhC,+BACF,CAEA,mEACE,kBAAmB,CACnB,uCAAgC,CAAhC,+BACF,CAEA,yDACE,kBACF,CAEA,6CACE,sCAA+B,CAA/B,8BACF,CAEA,4CACE,mCAA4B,CAA5B,2BACF,CAEA,mDACE,mCAA4B,CAA5B,2BACF,CAEA,sGACE,qCAA8B,CAA9B,6BACF,CAEA,mDACE,oCAA6B,CAA7B,4BACF,CCxTA,WACE,oBAAqB,CACrB,wCAAA,CACA,wSAKF,CAEA,MACE,oBAAqB,CACrB,SAAU,CACV,8BAAkC,CAClC,aAAc,CACd,iBAAkB,CAClB,mBAAoB,CACpB,uBAAwB,CACxB,mBAAoB,CACpB,iBAAkB,CAClB,iCAAkC,CAClC,kCAAmC,CACnC,kCAA2B,CAA3B,0BACF,CAEA,aACE,yBACF,CAEA,cACE,UAAW,CACX,aAAc,CACd,iDAA0C,CAA1C,yCACF,CAEA,gCACE,GACE,8BAAuB,CAAvB,sBACF,CAEA,GACE,+BAAwB,CAAxB,uBACF,CACF,CARA,wBACE,GACE,8BAAuB,CAAvB,sBACF,CAEA,GACE,+BAAwB,CAAxB,uBACF,CACF,CAEA,0BACE,eACF,CAEA,wBACE,eACF,CAEA,2BACE,eACF,CAEA,yBACE,eACF,CAEA,wBACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CAEA,uBACE,eACF,CAEA,kBACE,eACF,CAEA,iBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,iBACE,eACF,CAEA,oBACE,eACF,CAEA,sBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,sBACE,eACF,CAEA,kBACE,eACF,CAEA,yBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,sBACE,eACF,CAEA,oBACE,eACF,CAEA,qBACE,eACF,CAEA,mBACE,eACF,CAMA,0CACE,eACF,CAEA,mBACE,eACF,CAMA,yCACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,qBACE,eACF,CAMA,4CACE,eACF,CAEA,mBACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,yBACE,eACF,CAEA,2BACE,eACF,CAEA,mBACE,eACF,CAEA,yBACE,eACF,CAEA,uBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,kBACE,eACF,CAEA,mBACE,eACF,CAEA,uBACE,eACF,CAEA,mBACE,eACF,CAMA,0CACE,eACF,CAEA,mBACE,eACF,CAEA,qBACE,eACF,CAEA,kBACE,eACF,CAEA,oBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,iBACE,eACF,CAEA,uBACE,eACF,CAEA,iBACE,eACF,CAEA,uBACE,eACF,CAEA,mBACE,eACF,CAEA,iCACE,eACF,CAEA,kBACE,eACF,CAEA,kBACE,eACF,CCpUA,oBACE,cAAQ,CACR,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,iBAAU,CACV,kBAAM,CAAN,qBAAM,CAAN,eAAM,CAAN,iBAAM,CAAN,aAAM,CACN,cAAY,CACZ,YAAS,CACT,WAAQ,CACR,uBAAgB,CAChB,uBAAY,CACZ,oBAAO,CACP,mBAAgB,CAChB,gBAAa,CACb,aAAW,CACX,eAAa,CACb,eAAa,CACb,iBAAY,CACZ,iBAAY,CACZ,oBAAiB,CACjB,wBAAa,CAAb,qBAAa,CAAb,oBAAa,CAAb,gBAAa,CACb,4HAA6B,CAA7B,oHAA6B,CAA7B,4GAA6B,CAA7B,wIAA6B,CAC7B,cAAa,CACb,uCCDF,CDGE,uCACE,iBAAU,CACV,KAAK,CACL,MAAM,CACN,QAAQ,CACR,OAAO,CACP,YCDJ,CDIE,kCACE,eAAS,CACT,cCFJ,CDKE,mCACE,eAAS,CACT,wBAAiB,CAAjB,qCAAiB,CAAjB,qBAAiB,CAAjB,qBAAiB,CAAjB,6BAAiB,CACjB,wBAAa,CAAb,0BAAa,CAAb,qBAAa,CAAb,qBAAa,CAAb,kBAAa,CACb,UAAO,CACP,8BCHJ,CDOA,8BAEE,oBAAS,CAIT,kCAAQ,CACR,cAAY,CACZ,aAAW,CACX,wBAAkB,CAClB,2BCLF,CDQA,2HAZE,cAAQ,CAER,+BAAkB,CAClB,iCAAY,CAAZ,yBAAY,CACZ,6BCSF,CDDA,6FAEE,qBCDF,CDOA,6FACE,cAAQ,CACR,iCAAY,CAAZ,yBAAY,CACZ,6BCHF,CDMA,8CACE,+EAAuC,CAAvC,uECHF,CDMA,0BACE,wBAAkB,CAClB,qBAAkB,CAClB,oBCJF,CDOA,gCACE,WCLF,CDQA,0BACE,wBAAkB,CAClB,oBAAO,CACP,6BAAkB,CAClB,+BAAY,CAAZ,uBCNF,CDSA,gCACE,WCPF,CDUA,2BACE,wBAAkB,CAClB,mBAAkB,CAClB,oBAAO,CACP,mDAAuC,CAAvC,2CCRF,CDWA,oBACE,qBAAQ,CACR,kBAAgB,CAChB,SAAO,CACP,mCAAY,CAAZ,2BCTF,CDYA,yBACE,iBCVF,CDaA,sBACE,oBAAS,CACT,OAAO,CACP,QAAQ,CACR,qBAAgB,CAChB,qBAAY,CACZ,kCAAc,CACd,iCCXF,CCpHA,gBACE,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,uBAAgB,CAChB,kBAAQ,CACR,uBAAY,CAAZ,eAAY,CACZ,aCAF,CDGA,sBACE,WAAS,CACT,aAAS,CACT,QAAQ,CACR,UAAO,CACP,iBAAY,CACZ,WCDF,CDIA,6CACE,kBAAM,CAAN,qBAAM,CAAN,eAAM,CAAN,iBAAM,CAAN,aAAM,CACN,eAAe,CACf,QCFF,CDKA,yCACE,gBAAa,CACb,aCDF,CDKE,kGAHA,kCAAwB,CACxB,qCCCF,CDWE,+FACE,mCAAyB,CACzB,sCCLJ,CCrCA,iBACE,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,uBAAgB,CAChB,wBAAQ,CACR,uBAAY,CAAZ,eAAY,CACZ,aAAW,CACX,SCAF,CDGA,8CACE,eAAY,CACZ,kBCDF,CDGE,yDACE,yBCDJ,CDGI,wEACE,yBAAe,CACf,mCAAyB,CACzB,sCCDN,CDII,uEACE,kCAAwB,CACxB,qCCFN,CDOA,yBACE,2BAAgB,CAAhB,4BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,iBAAU,CACV,QAAK,CACL,WAAS,CACT,UAAO,CACP,cAAW,CACX,QAAQ,CACR,aAAS,CACT,eAAY,CACZ,SAAS,CACT,uBAAY,CACZ,2BAAiB,CACjB,qBAAQ,CACR,gCAAQ,CACR,yBAAe,CACf,8CAAY,CAAZ,sCCLF,CDOE,qOACE,eCFJ,CC3CA,gBACE,UAAO,CACP,WCFF,CDIE,8DACE,WCDJ,CDIE,4BACE,mBCFJ,CDII,gDACE,cCFN,CCVA,WACE,iIAA0B,CAC1B,cAAW,CACX,YAAS,CACT,eCHF,CCLA,yBAEE,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MAAM,CACN,YAAS,CACT,cAAW,CACX,UAAO,CACP,WAAQ,CACR,mBAAS,CAAT,oBAAS,CAAT,gBAAS,CAAT,mBAAS,CAAT,YAAS,CACT,2BAAgB,CAAhB,6BAAgB,CAAhB,wBAAgB,CAAhB,yBAAgB,CAAhB,qBAAgB,CAChB,gBCAF,CDEE,+DAVA,iBAAU,CAOV,4BAAgB,CAAhB,yBAAgB,CAChB,wBAAW,CAAX,oBCSF,CDPE,sCAEE,4BAAe,CACf,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,gBAAW,CACX,wBAAiB,CAAjB,qCAAiB,CAAjB,qBAAiB,CAAjB,qBAAiB,CAAjB,6BAAiB,CACjB,WCAJ,CDEI,iHACE,eCCN,CDEI,2DACE,eAAS,CACT,eAAY,CACZ,0BAAS,CAAT,2BAAS,CAAT,uBAAS,CAAT,0BAAS,CAAT,mBAAS,CACT,6BAAgB,CAAhB,4BAAgB,CAAhB,0BAAgB,CAAhB,0BAAgB,CAAhB,yBAAgB,CAAhB,sBAAgB,CAAhB,kBAAgB,CAChB,wBAAW,CAAX,oBAAW,CAAX,gBCAN,CDEM,+DACE,cAAW,CACX,cCAR,CDGU,yFACE,mDAAA,CACA,uBCDZ,CDGY,iHACE,sBCDd,CDKU,6FACE,wBAAwB,CACxB,2BCHZ,CDOQ,+EACE,gBCLV,CDWE,+CACE,iBAAU,CACV,kBAAM,CAAN,cAAM,CAAN,eAAM,CAAN,UAAM,CAAN,MCTJ,CDWI,2DACE,cCTN,CDYI,qEACE,eAAU,CACV,UAAO,CACP,WCVN,CDYM,mFACE,UAAO,CACP,WAAQ,CACR,eCVR,CDcI,mEACE,uBAAoB,CACpB,UAAO,CACP,WCZN,CDeI,yEACE,kBAAY,CACZ,eCbN,CDgBI,yEACE,cAAQ,CACR,iBAAe,CACf,0BAAY,CACZ,iCAAY,CAAZ,yBCdN,CDiBI,yFACE,0BCfN,CDkBI,+EACE,+BChBN,CCrFA,oBACE,uBAAoB,CACpB,UAAO,CACP,WCAF,CDGA,0BACE,kBAAY,CACZ,eCDF,CDIA,0BACE,cAAQ,CACR,iBAAe,CACf,0BAAY,CACZ,iCAAY,CAAZ,yBCFF,CDKA,0CACE,0BCHF,CDMA,gCACE,+BCJF","file":"index.css","sourcesContent":["\n* {\n margin: 0;\n padding: 0;\n border: none;\n}\n\nhtml {\n box-sizing: border-box;\n text-size-adjust: 100%;\n font-size: 15px;\n line-height: 1.5;\n height: 100%;\n}\n\n*, :after, :before {\n box-sizing: inherit;\n}\n\nbody {\n background: #fbfbfb;\n color: #24292e;\n font-size: 15px;\n line-height: 1.5;\n min-height: 100%;\n position: relative;\n font-family: Menlo, \"Ubuntu Mono\", Consolas, \"Courier New\", \"Microsoft Yahei\", \"Hiragino Sans GB\", \"WenQuanYi Micro Hei\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n height: 100%;\n}\n\n#app {\n height: 100%;\n font-size: 15px;\n}\n","* {\n margin: 0;\n padding: 0;\n border: none;\n}\nhtml {\n box-sizing: border-box;\n text-size-adjust: 100%;\n font-size: 15px;\n line-height: 1.5;\n height: 100%;\n}\n*,\n:after,\n:before {\n box-sizing: inherit;\n}\nbody {\n background: #fbfbfb;\n color: #24292e;\n font-size: 15px;\n line-height: 1.5;\n min-height: 100%;\n position: relative;\n font-family: Menlo, \"Ubuntu Mono\", Consolas, \"Courier New\", \"Microsoft Yahei\", \"Hiragino Sans GB\", \"WenQuanYi Micro Hei\", sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n height: 100%;\n}\n#app {\n height: 100%;\n font-size: 15px;\n}\n/*# sourceMappingURL=examples/src/App.css.map */","\n.mde-ui.splitpane {\n display: flex;\n flex: 1;\n position: absolute;\n outline: none;\n user-select: text;\n\n &.horizontal {\n width: 100%;\n flex-direction: column;\n top: 0;\n bottom: 0;\n }\n\n &.vertical {\n height: 100%;\n flex-direction: row;\n left: 0;\n right: 0;\n }\n}\n\n.mde-ui.pane {\n overflow: hidden;\n position: relative;\n outline: none;\n\n &.pane1 {\n flex: none;\n }\n\n &.pane2 {\n flex: 1;\n }\n}\n\n.mde-ui.resizer {\n background: #464646;\n opacity: 0.2;\n z-index: 200;\n box-sizing: border-box;\n background-clip: padding-box;\n\n &:hover {\n transition: all 2s ease;\n }\n\n &.horizontal {\n height: 11px;\n margin: -5px 0;\n border-top: 5px solid hsla(0, 0%, 100%, 0);\n border-bottom: 5px solid hsla(0, 0%, 100%, 0);\n cursor: row-resize;\n width: 100%;\n\n &:hover {\n border-top: 5px solid rgba(0, 0, 0, 0.5);\n border-bottom: 5px solid rgba(0, 0, 0, 0.5);\n }\n }\n\n &.vertical {\n width: 11px;\n margin: 0 -5px;\n border-left: 5px solid hsla(0, 0%, 100%, 0);\n border-right: 5px solid hsla(0, 0%, 100%, 0);\n cursor: col-resize;\n\n &:hover {\n border-left: 5px solid rgba(0, 0, 0, 0.5);\n border-right: 5px solid rgba(0, 0, 0, 0.5);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n\n &:hover {\n border-color: transparent;\n }\n }\n}\n",".mde-ui.splitpane {\n display: flex;\n flex: 1;\n position: absolute;\n outline: none;\n user-select: text;\n}\n.mde-ui.splitpane.horizontal {\n width: 100%;\n flex-direction: column;\n top: 0;\n bottom: 0;\n}\n.mde-ui.splitpane.vertical {\n height: 100%;\n flex-direction: row;\n left: 0;\n right: 0;\n}\n.mde-ui.pane {\n overflow: hidden;\n position: relative;\n outline: none;\n}\n.mde-ui.pane.pane1 {\n flex: none;\n}\n.mde-ui.pane.pane2 {\n flex: 1;\n}\n.mde-ui.resizer {\n background: #464646;\n opacity: 0.2;\n z-index: 200;\n box-sizing: border-box;\n background-clip: padding-box;\n}\n.mde-ui.resizer:hover {\n transition: all 2s ease;\n}\n.mde-ui.resizer.horizontal {\n height: 11px;\n margin: -5px 0;\n border-top: 5px solid rgba(255,255,255,0);\n border-bottom: 5px solid rgba(255,255,255,0);\n cursor: row-resize;\n width: 100%;\n}\n.mde-ui.resizer.horizontal:hover {\n border-top: 5px solid rgba(0,0,0,0.5);\n border-bottom: 5px solid rgba(0,0,0,0.5);\n}\n.mde-ui.resizer.vertical {\n width: 11px;\n margin: 0 -5px;\n border-left: 5px solid rgba(255,255,255,0);\n border-right: 5px solid rgba(255,255,255,0);\n cursor: col-resize;\n}\n.mde-ui.resizer.vertical:hover {\n border-left: 5px solid rgba(0,0,0,0.5);\n border-right: 5px solid rgba(0,0,0,0.5);\n}\n.mde-ui.resizer.disabled {\n cursor: not-allowed;\n}\n.mde-ui.resizer.disabled:hover {\n border-color: transparent;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-splitpane.css.map */","[data-tooltip] {\n position: relative;\n}\n\n[data-tooltip]:before {\n content: '';\n width: 0.71428571em;\n height: 0.71428571em;\n transform: rotate(45deg);\n z-index: 2;\n box-shadow: 1px 1px 0 0 #bababc;\n}\n\n[data-tooltip]:after, [data-tooltip]:before {\n pointer-events: none;\n position: absolute;\n font-size: 1rem;\n background: #fff;\n}\n\n[data-tooltip]:after {\n content: attr(data-tooltip);\n text-transform: none;\n text-align: left;\n white-space: nowrap;\n border: 1px solid #d4d4d5;\n line-height: 1.4285em;\n max-width: none;\n padding: 0.833em 1em;\n font-weight: 400;\n font-style: normal;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 0.28571429rem;\n box-shadow: 0 2px 4px 0 rgba(34, 36, 38, 0.12), 0 2px 10px 0 rgba(34, 36, 38, 0.15);\n z-index: 1;\n}\n\n[data-tooltip]:not([data-position]):before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 50%;\n background: #fff;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-tooltip]:not([data-position]):after {\n left: 50%;\n transform: translateX(-50%);\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-tooltip]:after, [data-tooltip]:before {\n pointer-events: none;\n visibility: hidden;\n}\n\n[data-tooltip]:before {\n opacity: 0;\n transform: rotate(45deg) scale(0) !important;\n transform-origin: center top;\n /* transition: all 0.1s ease; */\n}\n\n[data-tooltip]:after {\n opacity: 1;\n transform-origin: center bottom;\n /* transition: all 0.1s ease; */\n}\n\n[data-tooltip]:hover:after, [data-tooltip]:hover:before {\n visibility: visible;\n pointer-events: auto;\n transition: all 0.1s ease 1.5s;\n}\n\n[data-tooltip]:hover:before {\n transform: rotate(45deg) scale(1) !important;\n opacity: 1;\n}\n\n[data-tooltip][data-position='bottom center']:before, [data-tooltip][data-position='bottom left']:before, [data-tooltip][data-position='top right']:before {\n transform: rotate(315deg) !important;\n}\n\n[data-tooltip][data-tooltip-small]:after {\n font-size: 12px;\n}\n\n[data-tooltip]:after, [data-tooltip][data-position='bottom center']:after, [data-tooltip][data-position='top center']:after {\n transform: translateX(-50%) scale(0) !important;\n}\n\n[data-tooltip]:hover:after, [data-tooltip][data-position='bottom center']:hover:after {\n transform: translateX(-50%) scale(1) !important;\n}\n\n[data-tooltip][data-position='left center']:after, [data-tooltip][data-position='right center']:after {\n transform: translateY(-50%) scale(0) !important;\n}\n\n[data-tooltip][data-position='left center']:hover:after, [data-tooltip][data-position='right center']:hover:after {\n transform: translateY(-50%) scale(1) !important;\n}\n\n[data-tooltip][data-position='bottom left']:after, [data-tooltip][data-position='bottom right']:after, [data-tooltip][data-position='top left']:after, [data-tooltip][data-position='top right']:after {\n transform: scale(0) !important;\n}\n\n[data-tooltip][data-position='bottom left']:hover:after, [data-tooltip][data-position='bottom right']:hover:after, [data-tooltip][data-position='top left']:hover:after, [data-tooltip][data-position='top right']:hover:after {\n transform: scale(1) !important;\n}\n\n[data-tooltip][data-inverted]:before {\n box-shadow: none !important;\n background: #1b1c1d;\n}\n\n[data-tooltip][data-inverted]:after {\n background: #1b1c1d;\n color: #fff;\n border: none;\n box-shadow: none;\n}\n\n[data-tooltip][data-inverted]:after .header {\n background-color: none;\n color: #fff;\n}\n\n[data-position='top center'][data-tooltip]:after {\n top: auto;\n right: auto;\n left: 50%;\n bottom: 100%;\n transform: translateX(-50%);\n margin-bottom: 0.5em;\n}\n\n[data-position='top center'][data-tooltip]:before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 50%;\n background: #fff;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='top left'][data-tooltip]:after {\n top: auto;\n right: auto;\n left: 0;\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-position='top left'][data-tooltip]:before {\n top: auto;\n right: auto;\n bottom: 100%;\n left: 1em;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='top right'][data-tooltip]:after {\n top: auto;\n left: auto;\n right: 0;\n bottom: 100%;\n margin-bottom: 0.5em;\n}\n\n[data-position='top right'][data-tooltip]:before {\n top: auto;\n left: auto;\n bottom: 100%;\n right: 1em;\n margin-left: -0.07142857rem;\n margin-bottom: 0.14285714rem;\n}\n\n[data-position='bottom center'][data-tooltip]:after {\n bottom: auto;\n right: auto;\n left: 50%;\n top: 100%;\n transform: translateX(-50%);\n margin-top: 0.5em;\n}\n\n[data-position='bottom center'][data-tooltip]:before {\n bottom: auto;\n right: auto;\n top: 100%;\n left: 50%;\n margin-left: -0.07142857rem;\n margin-top: 0.14285714rem;\n}\n\n[data-position='bottom left'][data-tooltip]:after {\n left: 0;\n top: 100%;\n margin-top: 0.5em;\n}\n\n[data-position='bottom left'][data-tooltip]:before {\n bottom: auto;\n right: auto;\n top: 100%;\n left: 1em;\n margin-left: -0.07142857rem;\n margin-top: 0.14285714rem;\n}\n\n[data-position='bottom right'][data-tooltip]:after {\n right: 0;\n top: 100%;\n margin-top: 0.5em;\n}\n\n[data-position='bottom right'][data-tooltip]:before {\n bottom: auto;\n left: auto;\n top: 100%;\n right: 1em;\n margin-left: -0.14285714rem;\n margin-top: 0.07142857rem;\n}\n\n[data-position='left center'][data-tooltip]:after {\n right: 100%;\n top: 50%;\n margin-right: 0.5em;\n transform: translateY(-50%);\n}\n\n[data-position='left center'][data-tooltip]:before {\n right: 100%;\n top: 50%;\n margin-top: -0.14285714rem;\n margin-right: -0.07142857rem;\n}\n\n[data-position='right center'][data-tooltip]:after {\n left: 100%;\n top: 50%;\n margin-left: 0.5em;\n transform: translateY(-50%);\n}\n\n[data-position='right center'][data-tooltip]:before {\n left: 100%;\n top: 50%;\n margin-top: -0.07142857rem;\n margin-left: 0.14285714rem;\n}\n\n[data-position~='bottom'][data-tooltip]:before {\n background: #fff;\n box-shadow: -1px -1px 0 0 #bababc;\n}\n\n[data-position='left center'][data-tooltip]:before {\n background: #fff;\n box-shadow: 1px -1px 0 0 #bababc;\n}\n\n[data-position='right center'][data-tooltip]:before {\n background: #fff;\n box-shadow: -1px 1px 0 0 #bababc;\n}\n\n[data-position~='top'][data-tooltip]:before {\n background: #fff;\n}\n\n[data-inverted][data-position~='bottom'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: -1px -1px 0 0 #bababc;\n}\n\n[data-inverted][data-position='left center'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: 1px -1px 0 0 #bababc;\n}\n\n[data-inverted][data-position='right center'][data-tooltip]:before {\n background: #1b1c1d;\n box-shadow: -1px 1px 0 0 #bababc;\n}\n\n[data-inverted][data-position~='top'][data-tooltip]:before {\n background: #1b1c1d;\n}\n\n[data-position~='bottom'][data-tooltip]:before {\n transform-origin: center bottom;\n}\n\n[data-position~='bottom'][data-tooltip]:after {\n transform-origin: center top;\n}\n\n[data-position='left center'][data-tooltip]:before {\n transform-origin: top center;\n}\n\n[data-position='left center'][data-tooltip]:after, [data-position='right center'][data-tooltip]:before {\n transform-origin: right center;\n}\n\n[data-position='right center'][data-tooltip]:after {\n transform-origin: left center;\n}\n","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n@font-face {\n font-family: iconfont;\n src: url(\"../../assets/fonts/iconfont.eot?t=1576392666910\"); /* IE9 */\n src: url(\"../../assets/fonts/iconfont.eot?t=1576392666910#iefix\") format(\"embedded.opentype\"), /* IE6.IE8 */\n url(\"../../assets/fonts/iconfont.woff2?t=1576392666910\") format(\"woff2\"),\n url(\"../../assets/fonts/iconfont.woff?t=1576392666910\") format(\"woff\"),\n url(\"../../assets/fonts/iconfont.ttf?t=1576392666910\") format(\"truetype\"), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */\n url(\"../../assets/fonts/iconfont.svg?t=1576392666910#iconfont\") format(\"svg\"); /* iOS 4.1- */\n}\n\n.icon {\n display: inline-block;\n opacity: 1;\n font-family: \"iconfont\" !important;\n font-size: 1em;\n font-style: normal;\n font-variant: normal;\n text-decoration: inherit;\n text-transform: none;\n text-align: center;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n backface-visibility: hidden;\n}\n\n.icon:before {\n background: none !important;\n}\n\n.icon.loading {\n height: 1em;\n line-height: 1;\n animation: icon-loading 2s linear infinite;\n}\n\n@keyframes icon-loading {\n 0% {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(1turn);\n }\n}\n\n.icon.align-center:before {\n content: \"\\e600\";\n}\n\n.icon.align-left:before {\n content: \"\\e601\";\n}\n\n.icon.align-justify:before {\n content: \"\\e602\";\n}\n\n.icon.align-right:before {\n content: \"\\e603\";\n}\n\n.icon.border-all:before {\n content: \"\\e604\";\n}\n\n.icon.bold:before {\n content: \"\\e605\";\n}\n\n.icon.book:before {\n content: \"\\e606\";\n}\n\n.icon.clipboard:before {\n content: \"\\e607\";\n}\n\n.icon.code:before {\n content: \"\\e608\";\n}\n\n.icon.cut:before {\n content: \"\\e609\";\n}\n\n.icon.columns:before {\n content: \"\\e60a\";\n}\n\n.icon.copy:before {\n content: \"\\e60b\";\n}\n\n.icon.cog:before {\n content: \"\\e60c\";\n}\n\n.icon.eraser:before {\n content: \"\\e60d\";\n}\n\n.icon.file-alt:before {\n content: \"\\e60e\";\n}\n\n.icon.heading:before {\n content: \"\\e60f\";\n}\n\n.icon.file:before {\n content: \"\\e610\";\n}\n\n.icon.i-cursor:before {\n content: \"\\e611\";\n}\n\n.icon.font:before {\n content: \"\\e612\";\n}\n\n.icon.highlighter:before {\n content: \"\\e613\";\n}\n\n.icon.cogs:before {\n content: \"\\e614\";\n}\n\n.icon.italic:before {\n content: \"\\e615\";\n}\n\n.icon.list-alt:before {\n content: \"\\e616\";\n}\n\n.icon.indent:before {\n content: \"\\e617\";\n}\n\n.icon.outdent:before {\n content: \"\\e618\";\n}\n\n.icon.image:before {\n content: \"\\e619\";\n}\n\n.icon.ordered:before {\n content: \"\\e61a\";\n}\n\n.icon.list-ol:before {\n content: \"\\e61a\";\n}\n\n.icon.icons:before {\n content: \"\\e61b\";\n}\n\n.icon.bullet:before {\n content: \"\\e61c\";\n}\n\n.icon.list-ul:before {\n content: \"\\e61c\";\n}\n\n.icon.redo:before {\n content: \"\\e61d\";\n}\n\n.icon.print:before {\n content: \"\\e61e\";\n}\n\n.icon.sitemap:before {\n content: \"\\e61f\";\n}\n\n.icon.quote:before {\n content: \"\\e620\";\n}\n\n.icon.quote-right:before {\n content: \"\\e620\";\n}\n\n.icon.reply:before {\n content: \"\\e621\";\n}\n\n.icon.link:before {\n content: \"\\e622\";\n}\n\n.icon.list:before {\n content: \"\\e623\";\n}\n\n.icon.tasks:before {\n content: \"\\e625\";\n}\n\n.icon.spell-check:before {\n content: \"\\e626\";\n}\n\n.icon.strikethrough:before {\n content: \"\\e627\";\n}\n\n.icon.share:before {\n content: \"\\e628\";\n}\n\n.icon.paper-plane:before {\n content: \"\\e629\";\n}\n\n.icon.underline:before {\n content: \"\\e62a\";\n}\n\n.icon.undo:before {\n content: \"\\e62c\";\n}\n\n.icon.wrench:before {\n content: \"\\e62d\";\n}\n\n.icon.sync:before {\n content: \"\\e62e\";\n}\n\n.icon.clone:before {\n content: \"\\e62f\";\n}\n\n.icon.paperclip:before {\n content: \"\\e630\";\n}\n\n.icon.table:before {\n content: \"\\e631\";\n}\n\n.icon.preview:before {\n content: \"\\e632\";\n}\n\n.icon.glasses:before {\n content: \"\\e632\";\n}\n\n.icon.tools:before {\n content: \"\\e633\";\n}\n\n.icon.th-list:before {\n content: \"\\e634\";\n}\n\n.icon.edit:before {\n content: \"\\e635\";\n}\n\n.icon.unlink:before {\n content: \"\\e636\";\n}\n\n.icon.ch1:before {\n content: \"\\e637\";\n}\n\n.icon.ch2:before {\n content: \"\\e638\";\n}\n\n.icon.ch3:before {\n content: \"\\e639\";\n}\n\n.icon.ch4:before {\n content: \"\\e63a\";\n}\n\n.icon.ch5:before {\n content: \"\\e63b\";\n}\n\n.icon.ch6:before {\n content: \"\\e63c\";\n}\n\n.icon.splitline:before {\n content: \"\\e62b\";\n}\n\n.icon.toc:before {\n content: \"\\e624\";\n}\n\n.icon.codeblock:before {\n content: \"\\e63d\";\n}\n\n.icon.emoji:before {\n content: \"\\e63e\";\n}\n\n.icon.preview-right-light:before {\n content: \"\\e63f\";\n}\n\n.icon.lang:before {\n content: \"\\e640\";\n}\n\n.icon.help:before {\n content: \"\\e641\";\n}\n","\n@import ('../../assets/css/tooltip.css');\n@import ('../../assets/css/iconfont.css');\n\n.mde-ui.icon-button {\n cursor: pointer;\n display: inline-flex;\n position: relative;\n flex: 1 0 auto;\n min-height: 1em;\n outline: none;\n border: none;\n vertical-align: baseline;\n background: #e0e1e2 none;\n color: rgba(0, 0, 0, 0.6);\n text-transform: none;\n text-shadow: none;\n font-size: 1em;\n font-weight: 400;\n line-height: 1em;\n font-style: normal;\n text-align: center;\n text-decoration: none;\n user-select: none;\n transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;\n will-change: '';\n -webkit-tap-highlight-color: transparent;\n\n span[data-tooltip] {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1000;\n }\n\n .content-left {\n display: inherit;\n padding: 0.618em;\n }\n\n .content-right {\n display: inherit;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n padding: 0.618em 0.618em 0.618em 0;\n }\n}\n\n.mde-ui.icon-button.separator {\n cursor: default;\n opacity: 0.2 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n border: 2px solid rgba(255, 255, 255, 0);\n min-height: 5px;\n min-width: 5px;\n background-color: #464646;\n background-clip: padding-box;\n}\n\n.mde-ui.icon-button:disabled, .mde-ui.icon-button.disabled, .mde-ui.icon-button.disabled:hover {\n cursor: default;\n opacity: 0.45 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n\n.mde-ui.icon-button:selected, .mde-ui.icon-button.selected, .mde-ui.icon-button.selected:hover {\n cursor: default;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n\n.mde-ui.icon-button, .mde-ui.icon-button:hover {\n box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 0 rgba(34, 36, 38, 0.15);\n}\n\n.mde-ui.icon-button:hover {\n background-color: #cacbcd;\n background-image: none;\n color: rgba(0, 0, 0, 0.8);\n}\n\n.mde-ui.icon-button:hover .icon {\n opacity: 0.85;\n}\n\n.mde-ui.icon-button:focus {\n background-color: #cacbcd;\n color: rgba(0, 0, 0, 0.8);\n background-image: '' !important;\n box-shadow: '' !important;\n}\n\n.mde-ui.icon-button:focus .icon {\n opacity: 0.85;\n}\n\n.mde-ui.icon-button:active {\n background-color: #babbbc;\n background-image: '';\n color: rgba(0, 0, 0, 0.9);\n box-shadow: inset 0 0 0 1px transparent, none;\n}\n\n.content-left > .icon {\n margin: auto !important;\n vertical-align: top;\n width: 1em;\n transition: opacity 0.1s ease;\n}\n\n.content-right > .shortkey {\n padding-left: 16px;\n}\n\n.content-right > .caret {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n border-top: 4px dashed;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n","@import '../../assets/css/tooltip.css';\n@import '../../assets/css/iconfont.css';\n.mde-ui.icon-button {\n cursor: pointer;\n display: inline-flex;\n position: relative;\n flex: 1 0 auto;\n min-height: 1em;\n outline: none;\n border: none;\n vertical-align: baseline;\n background: #e0e1e2 none;\n color: rgba(0,0,0,0.6);\n text-transform: none;\n text-shadow: none;\n font-size: 1em;\n font-weight: 400;\n line-height: 1em;\n font-style: normal;\n text-align: center;\n text-decoration: none;\n user-select: none;\n transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease;\n will-change: '';\n -webkit-tap-highlight-color: transparent;\n}\n.mde-ui.icon-button span[data-tooltip] {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1000;\n}\n.mde-ui.icon-button .content-left {\n display: inherit;\n padding: 0.618em;\n}\n.mde-ui.icon-button .content-right {\n display: inherit;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n padding: 0.618em 0.618em 0.618em 0;\n}\n.mde-ui.icon-button.separator {\n cursor: default;\n opacity: 0.2 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n border: 2px solid rgba(255,255,255,0);\n min-height: 5px;\n min-width: 5px;\n background-color: #464646;\n background-clip: padding-box;\n}\n.mde-ui.icon-button:disabled,\n.mde-ui.icon-button.disabled,\n.mde-ui.icon-button.disabled:hover {\n cursor: default;\n opacity: 0.45 !important;\n background-image: none !important;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n.mde-ui.icon-button:selected,\n.mde-ui.icon-button.selected,\n.mde-ui.icon-button.selected:hover {\n cursor: default;\n box-shadow: none !important;\n pointer-events: none !important;\n}\n.mde-ui.icon-button,\n.mde-ui.icon-button:hover {\n box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 0 rgba(34,36,38,0.15);\n}\n.mde-ui.icon-button:hover {\n background-color: #cacbcd;\n background-image: none;\n color: rgba(0,0,0,0.8);\n}\n.mde-ui.icon-button:hover .icon {\n opacity: 0.85;\n}\n.mde-ui.icon-button:focus {\n background-color: #cacbcd;\n color: rgba(0,0,0,0.8);\n background-image: '' !important;\n box-shadow: '' !important;\n}\n.mde-ui.icon-button:focus .icon {\n opacity: 0.85;\n}\n.mde-ui.icon-button:active {\n background-color: #babbbc;\n background-image: '';\n color: rgba(0,0,0,0.9);\n box-shadow: inset 0 0 0 1px transparent, none;\n}\n.content-left > .icon {\n margin: auto !important;\n vertical-align: top;\n width: 1em;\n transition: opacity 0.1s ease;\n}\n.content-right > .shortkey {\n padding-left: 16px;\n}\n.content-right > .caret {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n border-top: 4px dashed;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-button.css.map */","\n.mde-ui.buttons {\n display: inline-flex;\n flex-direction: row;\n vertical-align: baseline;\n margin: 0 0.25em 0 0;\n box-shadow: none;\n font-size: 1em;\n}\n\n.mde-ui.buttons:after {\n content: '.';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n font-size: 0;\n}\n\n.mde-ui.buttons .icon-button:not(.separator) {\n flex: 1 0 auto;\n border-radius: 0;\n margin: 0;\n}\n\n.mde-ui.buttons .icon-button:first-child {\n border-left: none;\n margin-left: 0;\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n\n div:first-child {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n }\n}\n\n.mde-ui.buttons .icon-button:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n\n div:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n }\n}\n",".mde-ui.buttons {\n display: inline-flex;\n flex-direction: row;\n vertical-align: baseline;\n margin: 0 0.25em 0 0;\n box-shadow: none;\n font-size: 1em;\n}\n.mde-ui.buttons:after {\n content: '.';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n font-size: 0;\n}\n.mde-ui.buttons .icon-button:not(.separator) {\n flex: 1 0 auto;\n border-radius: 0;\n margin: 0;\n}\n.mde-ui.buttons .icon-button:first-child {\n border-left: none;\n margin-left: 0;\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:first-child div:first-child {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n.mde-ui.buttons .icon-button:last-child div:last-child {\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-buttons.css.map */","\n.mde-ui.dropdown {\n display: inline-flex;\n flex-direction: column;\n vertical-align: baseline;\n margin: 0 0.28571429em 0 0;\n box-shadow: none;\n font-size: 1em;\n outline: 0;\n}\n\n.mde-ui.dropdown .icon-button:not(.separator) {\n text-align: left;\n white-space: nowrap;\n\n &.menubutton {\n border-radius: 0.28571429em;\n\n .content-right {\n padding-right: 0.28571429em;\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n }\n\n .content-left {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n }\n }\n}\n\n.mde-ui.buttons.dropdown {\n flex-direction: column;\n position: absolute;\n top: 40px;\n z-index: 999;\n float: left;\n min-width: 12em;\n margin: 0;\n padding: 5px 0;\n text-align: left;\n outline: 0;\n background: #e0e1e2 none;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.28571429em;\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n\n .icon-button:first-child, .icon-button:last-child, .icon-button:first-child div:first-child, .icon-button:last-child div:last-child {\n border-radius: 0;\n }\n}\n",".mde-ui.dropdown {\n display: inline-flex;\n flex-direction: column;\n vertical-align: baseline;\n margin: 0 0.28571429em 0 0;\n box-shadow: none;\n font-size: 1em;\n outline: 0;\n}\n.mde-ui.dropdown .icon-button:not(.separator) {\n text-align: left;\n white-space: nowrap;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton {\n border-radius: 0.28571429em;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-right {\n padding-right: 0.28571429em;\n border-top-right-radius: 0.28571429em;\n border-bottom-right-radius: 0.28571429em;\n}\n.mde-ui.dropdown .icon-button:not(.separator).menubutton .content-left {\n border-top-left-radius: 0.28571429em;\n border-bottom-left-radius: 0.28571429em;\n}\n.mde-ui.buttons.dropdown {\n flex-direction: column;\n position: absolute;\n top: 40px;\n z-index: 999;\n float: left;\n min-width: 12em;\n margin: 0;\n padding: 5px 0;\n text-align: left;\n outline: 0;\n background: #e0e1e2 none;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0,0,0,0.15);\n border-radius: 0.28571429em;\n box-shadow: 0 6px 12px rgba(0,0,0,0.175);\n}\n.mde-ui.buttons.dropdown .icon-button:first-child,\n.mde-ui.buttons.dropdown .icon-button:last-child,\n.mde-ui.buttons.dropdown .icon-button:first-child div:first-child,\n.mde-ui.buttons.dropdown .icon-button:last-child div:last-child {\n border-radius: 0;\n}\n/*# sourceMappingURL=src/components/mde-ui/mde-menubutton.css.map */","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n.vue-codemirror {\n width: auto;\n height: 100%;\n\n .CodeMirror, .CodeMirror-merge {\n height: 100%;\n }\n\n .CodeMirror {\n font-family: inherit;\n\n .CodeMirror-gutters {\n border-right: 0px;\n }\n }\n}\n","@import '../../node_modules/codemirror/addon/fold/foldgutter.css';\n@import '../../node_modules/codemirror/lib/codemirror.css';\n.vue-codemirror {\n width: auto;\n height: 100%;\n}\n.vue-codemirror .CodeMirror,\n.vue-codemirror .CodeMirror-merge {\n height: 100%;\n}\n.vue-codemirror .CodeMirror {\n font-family: inherit;\n}\n.vue-codemirror .CodeMirror .CodeMirror-gutters {\n border-right: 0px;\n}\n/*# sourceMappingURL=src/components/Editor.css.map */","/*\n * Copyright (c) 2019-present, Jhuix (Hui Jin) . All rights reserved.\n * Use of this source code is governed by a MIT license that can be found in the LICENSE file.\n */\n\n.showdowns {\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 16px;\n padding: 16px;\n overflow: hidden;\n}\n","@import '../../node_modules/@jhuix/showdowns/dist/showdowns.min.css';\n.showdowns {\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 16px;\n padding: 16px;\n overflow: hidden;\n}\n/*# sourceMappingURL=src/components/Showdowns.css.map */","\n.mde-workspace-container {\n position: relative;\n flex: 1;\n outline: none;\n min-width: 50em;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n\n .mde-toolbar {\n position: relative;\n border-bottom: 1px solid #ddd;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n z-index: 201;\n\n .mde-toolbar-left, .mde-toolbat-right {\n display: inherit;\n }\n\n .mde-toolbar-actions {\n padding: 4px 5px;\n min-height: 34px;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n\n &.nav {\n min-width: 40px;\n padding-left: 0;\n\n .mde-ui.dropdown {\n &.mainmenu {\n background: url('../assets/img/logo.png') no-repeat;\n background-size: contain;\n\n .icon-button.menubutton {\n background-color: unset;\n }\n }\n\n .icon-button {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n .mde-ui.buttons {\n margin-right: 1em;\n }\n }\n }\n }\n\n .mde-editor-container {\n position: relative;\n flex: 1;\n\n .raw-editor {\n min-width: 25em;\n }\n\n .mde-scroll-container {\n overflow: hidden;\n width: 100%;\n height: 100%;\n\n .mdse-preview {\n width: auto;\n height: 100%;\n overflow-y: auto;\n }\n }\n\n ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n }\n\n ::-webkit-scrollbar-track {\n background: rgb(241, 241, 241);\n border-radius: 0;\n }\n\n ::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0, 0, 0, 0.25);\n transition: color 0.2s ease;\n }\n\n ::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0, 0, 0, 0.15);\n }\n\n ::-webkit-scrollbar-thumb:hover {\n background: rgba(128, 135, 139, 0.8);\n }\n }\n}\n",".mde-workspace-container {\n position: relative;\n flex: 1;\n outline: none;\n min-width: 50em;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n}\n.mde-workspace-container .mde-toolbar {\n position: relative;\n border-bottom: 1px solid #ddd;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n z-index: 201;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-left,\n.mde-workspace-container .mde-toolbar .mde-toolbat-right {\n display: inherit;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions {\n padding: 4px 5px;\n min-height: 34px;\n display: inline-flex;\n flex-direction: row;\n flex-wrap: nowrap;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav {\n min-width: 40px;\n padding-left: 0;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu {\n background: url(\"../assets/img/logo.png\") no-repeat;\n background-size: contain;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown.mainmenu .icon-button.menubutton {\n background-color: unset;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.dropdown .icon-button {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.mde-workspace-container .mde-toolbar .mde-toolbar-actions.nav .mde-ui.buttons {\n margin-right: 1em;\n}\n.mde-workspace-container .mde-editor-container {\n position: relative;\n flex: 1;\n}\n.mde-workspace-container .mde-editor-container .raw-editor {\n min-width: 25em;\n}\n.mde-workspace-container .mde-editor-container .mde-scroll-container {\n overflow: hidden;\n width: 100%;\n height: 100%;\n}\n.mde-workspace-container .mde-editor-container .mde-scroll-container .mdse-preview {\n width: auto;\n height: 100%;\n overflow-y: auto;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 0;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0,0,0,0.25);\n transition: color 0.2s ease;\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0,0,0,0.15);\n}\n.mde-workspace-container .mde-editor-container ::-webkit-scrollbar-thumb:hover {\n background: rgba(128,135,139,0.8);\n}\n/*# sourceMappingURL=src/components/ShowdownsEditor.css.map */","\n::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n\n::-webkit-scrollbar-track {\n background: rgb(241, 241, 241);\n border-radius: 0;\n}\n\n::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0, 0, 0, 0.25);\n transition: color 0.2s ease;\n}\n\n::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0, 0, 0, 0.15);\n}\n\n::-webkit-scrollbar-thumb:hover {\n background: rgba(128, 135, 139, 0.8);\n}\n","::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 10px;\n height: 10px;\n}\n::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 0;\n}\n::-webkit-scrollbar-thumb {\n cursor: pointer;\n border-radius: 5px;\n background: rgba(0,0,0,0.25);\n transition: color 0.2s ease;\n}\n::-webkit-scrollbar-thumb:window-inactive {\n background: rgba(0,0,0,0.15);\n}\n::-webkit-scrollbar-thumb:hover {\n background: rgba(128,135,139,0.8);\n}\n/*# sourceMappingURL=examples/src/views/preview.css.map */"]} \ No newline at end of file diff --git a/docs/demo/assets/js/chunk-vendors.js b/docs/demo/assets/js/chunk-vendors.js index 88992a6..1e4e107 100644 --- a/docs/demo/assets/js/chunk-vendors.js +++ b/docs/demo/assets/js/chunk-vendors.js @@ -1,43 +1,35 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"00ee":function(e,t,n){var r=n("b622"),i=r("toStringTag"),o={};o[i]="z",e.exports="[object z]"===String(o)},"00fd":function(e,t,n){var r=n("9e69"),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;function l(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}e.exports=l},"0366":function(e,t,n){var r=n("1c0b");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},"0373":function(e,t,n){var r=n("b65a"),i=n("b68d"),o=n("d3a2");e.exports=!r&&!i((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"057f":function(e,t,n){var r=n("fc6a"),i=n("241c").f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return i(e)}catch(t){return a.slice()}};e.exports.f=function(e){return a&&"[object Window]"==o.call(e)?s(e):i(r(e))}},"05dd":function(e,t,n){(function(e){e(n("56b3"),n("a2c1"))})((function(e){e.defineOption("autoCloseTags",!1,(function(t,n,i){if(i!=e.Init&&i&&t.removeKeyMap("autoCloseTags"),n){var a={name:"autoCloseTags"};"object"==typeof n&&!1===n.whenClosing||(a["'/'"]=function(e){return o(e)}),"object"==typeof n&&!1===n.whenOpening||(a["'>'"]=function(e){return r(e)}),t.addKeyMap(a)}}));var t=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],n=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"];function r(r){if(r.getOption("disableInput"))return e.Pass;for(var i=r.listSelections(),o=[],l=r.getOption("autoCloseTags"),u=0;uc.ch&&(g=g.slice(0,g.length-f.end+c.ch));var b=g.toLowerCase();if(!g||"string"==f.type&&(f.end!=c.ch||!/[\"\']/.test(f.string.charAt(f.string.length-1))||1==f.string.length)||"tag"==f.type&&p.close||f.string.indexOf("/")==c.ch-f.start-1||v&&a(v,b)>-1||s(r,h.mode.xmlCurrentContext&&h.mode.xmlCurrentContext(d)||[],g,c,!0))return e.Pass;var w="object"==typeof l&&l.emptyTags;if(w&&a(w,g)>-1)o[u]={text:"/>",newPos:e.Pos(c.line,c.ch+2)};else{var _=y&&a(y,b)>-1;o[u]={indent:_,text:">"+(_?"\n\n":"")+"",newPos:_?e.Pos(c.line+1,0):e.Pos(c.line,c.ch+1)}}}var x="object"==typeof l&&l.dontIndentOnAutoClose;for(u=i.length-1;u>=0;u--){var k=o[u];r.replaceRange(k.text,i[u].head,i[u].anchor,"+insert");var S=r.listSelections().slice(0);S[u]={head:k.newPos,anchor:k.newPos},r.setSelections(S),!x&&k.indent&&(r.indentLine(k.newPos.line,null,!0),r.indentLine(k.newPos.line+1,null,!0))}}function i(t,n){for(var r=t.listSelections(),i=[],o=n?"/":""!=t.getLine(c.line).charAt(f.end)&&(p+=">"),i[u]=p}if(t.replaceSelections(i),r=t.listSelections(),!l)for(u=0;u=0;u--){if(n[u]!=r)break;++l}i=s.to;for(u=1;u=0)e[t]=0}var u=0,c=1,f=2,h=3,d=258,p=29,g=256,m=g+1+p,v=30,y=19,b=2*m+1,w=15,_=16,x=7,k=256,S=16,C=17,E=18,A=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],L=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],O=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],M=512,j=new Array(2*(m+2));l(j);var P=new Array(2*v);l(P);var R=new Array(M);l(R);var N=new Array(d-h+1);l(N);var D=new Array(p);l(D);var z,F,I,B=new Array(v);function U(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function H(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function $(e){return e<256?R[e]:R[256+(e>>>7)]}function W(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function q(e,t,n){e.bi_valid>_-n?(e.bi_buf|=t<>_-e.bi_valid,e.bi_valid+=n-_):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function G(e){16===e.bi_valid?(W(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}function Y(e,t){var n,r,i,o,a,s,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,f=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,g=0;for(o=0;o<=w;o++)e.bl_count[o]=0;for(l[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;np&&(o=p,g++),l[2*r+1]=o,r>u||(e.bl_count[o]++,a=0,r>=d&&(a=h[r-d]),s=l[2*r],e.opt_len+=s*(o+a),f&&(e.static_len+=s*(c[2*r+1]+a)));if(0!==g){do{o=p-1;while(0===e.bl_count[o])o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,g-=2}while(g>0);for(o=p;0!==o;o--){r=e.bl_count[o];while(0!==r)i=e.heap[--n],i>u||(l[2*i+1]!==o&&(e.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),r--)}}}function K(e,t,n){var r,i,o=new Array(w+1),a=0;for(r=1;r<=w;r++)o[r]=a=a+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=V(o[s]++,s))}}function X(){var e,t,n,r,i,o=new Array(w+1);for(n=0,r=0;r>=7;r8?W(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function ee(e,t,n,i){Q(e),i&&(W(e,n),W(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}function te(e,t,n,r){var i=2*t,o=2*n;return e[i]>1;n>=1;n--)ne(e,o,n);i=l;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ne(e,o,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,o[2*i]=o[2*n]+o[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,o[2*n+1]=o[2*r+1]=i,e.heap[1]=i++,ne(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],Y(e,t),K(o,u,e.bl_count)}function oe(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=a,a=t[2*(r+1)+1],++s=3;t--)if(0!==e.bl_tree[2*T[t]+1])break;return e.opt_len+=3*(t+1)+5+5+4,t}function le(e,t,n,r){var i;for(q(e,t-257,5),q(e,n-1,5),q(e,r-4,4),i=0;i>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return o;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(t=32;t0?(e.strm.data_type===s&&(e.strm.data_type=ue(e)),ie(e,e.l_desc),ie(e,e.d_desc),l=se(e),o=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a<=o&&(o=a)):o=a=n+5,n+4<=o&&-1!==t?he(e,t,n,r):e.strategy===i||a===o?(q(e,(c<<1)+(r?1:0),3),re(e,j,P)):(q(e,(f<<1)+(r?1:0),3),le(e,e.l_desc.max_code+1,e.d_desc.max_code+1,l+1),re(e,e.dyn_ltree,e.dyn_dtree)),J(e),r&&Q(e)}function ge(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(N[n]+g+1)]++,e.dyn_dtree[2*$(t)]++),e.last_lit===e.lit_bufsize-1}t._tr_init=fe,t._tr_stored_block=he,t._tr_flush_block=pe,t._tr_tally=ge,t._tr_align=de},"0960":function(e,t,n){e.exports=n("b19a")},"0af7":function(e,t,n){"use strict";var r=n("e9a6"),i=n("af3e"),o=n("db8f");e.exports=function(e,t,n){var a=r(t);a in e?i.f(e,a,o(0,n)):e[a]=n}},"0cfb":function(e,t,n){var r=n("83ab"),i=n("d039"),o=n("cc12");e.exports=!r&&!i((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"0d1a":function(e,t,n){"use strict";var r=n("abf8");e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},"0e28":function(e,t,n){"use strict";var r=n("b68d");e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){throw 1},1)}))}},"0fc5":function(e,t,n){var r=n("52c9"),i=n("6fe2"),o=n("f742"),a=n("433a"),s=n("77fd"),l=n("b695"),u=i("wks"),c=r.Symbol,f=l?c:c&&c.withoutSetter||a;e.exports=function(e){return o(u,e)||(s&&o(c,e)?u[e]=c[e]:u[e]=f("Symbol."+e)),u[e]}},"10b2":function(e,t,n){(function(e){e(n("56b3"))})((function(e){var t={pairs:"()[]{}''\"\"",closeBefore:")]}'\":;>",triples:"",explode:"[]{}"},n=e.Pos;function r(e,n){return"pairs"==n&&"string"==typeof e?e:"object"==typeof e&&null!=e[n]?e[n]:t[n]}e.defineOption("autoCloseBrackets",!1,(function(t,n,a){a&&a!=e.Init&&(t.removeKeyMap(i),t.state.closeBrackets=null),n&&(o(r(n,"pairs")),t.state.closeBrackets=n,t.addKeyMap(i))}));var i={Backspace:l,Enter:u};function o(e){for(var t=0;t=0;l--){var c=a[l].head;t.replaceRange("",n(c.line,c.ch-1),n(c.line,c.ch+1),"+delete")}}function u(t){var n=s(t),i=n&&r(n,"explode");if(!i||t.getOption("disableInput"))return e.Pass;for(var o=t.listSelections(),a=0;a0;return{anchor:new n(t.anchor.line,t.anchor.ch+(r?-1:1)),head:new n(t.head.line,t.head.ch+(r?1:-1))}}function f(t,i){var o=s(t);if(!o||t.getOption("disableInput"))return e.Pass;var a=r(o,"pairs"),l=a.indexOf(i);if(-1==l)return e.Pass;for(var u,f=r(o,"closeBefore"),h=r(o,"triples"),p=a.charAt(l+1)==i,g=t.listSelections(),m=l%2==0,v=0;v1&&h.indexOf(i)>=0&&t.getRange(n(w.line,w.ch-2),w)==i+i){if(w.ch>2&&/\bstring/.test(t.getTokenTypeAt(n(w.line,w.ch-2))))return e.Pass;y="addFour"}else if(p){var x=0==w.ch?" ":t.getRange(n(w.line,w.ch-1),w);if(e.isWordChar(_)||x==i||e.isWordChar(x))return e.Pass;y="both"}else{if(!m||!(0===_.length||/\s/.test(_)||f.indexOf(_)>-1))return e.Pass;y="both"}else y=p&&d(t,w)?"both":h.indexOf(i)>=0&&t.getRange(w,n(w.line,w.ch+3))==i+i+i?"skipThree":"skip";if(u){if(u!=y)return e.Pass}else u=y}var k=l%2?a.charAt(l-1):i,S=l%2?i:a.charAt(l+1);t.operation((function(){if("skip"==u)t.execCommand("goCharRight");else if("skipThree"==u)for(var e=0;e<3;e++)t.execCommand("goCharRight");else if("surround"==u){var n=t.getSelections();for(e=0;e1||"".split(/.?/).length?function(e,n){var r=String(a(this)),o=void 0===n?g:n>>>0;if(0===o)return[];if(void 0===e)return[r];if(!i(e))return t.call(r,e,o);var s,l,u,c=[],h=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),p=0,m=new RegExp(e.source,h+"g");while(s=f.call(m,r)){if(l=m.lastIndex,l>p&&(c.push(r.slice(p,s.index)),s.length>1&&s.index=o))break;m.lastIndex===s.index&&m.lastIndex++}return p===r.length?!u&&m.test("")||c.push(""):c.push(r.slice(p)),c.length>o?c.slice(0,o):c}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var i=a(this),o=void 0==t?void 0:t[e];return void 0!==o?o.call(t,i,n):r.call(String(i),t,n)},function(e,i){var a=n(r,e,this,i,r!==t);if(a.done)return a.value;var f=o(e),h=String(this),d=s(f,RegExp),v=f.unicode,y=(f.ignoreCase?"i":"")+(f.multiline?"m":"")+(f.unicode?"u":"")+(m?"y":"g"),b=new d(m?f:"^(?:"+f.source+")",y),w=void 0===i?g:i>>>0;if(0===w)return[];if(0===h.length)return null===c(b,h)?[h]:[];var _=0,x=0,k=[];while(x1?arguments[1]:void 0)}},"19aa":function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},"1a8c":function(e,t){function n(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}e.exports=n},"1be4":function(e,t,n){var r=n("d066");e.exports=r("document","documentElement")},"1c0b":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},"1c7e":function(e,t,n){var r=n("b622"),i=r("iterator"),o=!1;try{var a=0,s={next:function(){return{done:!!a++}},return:function(){o=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(l){}e.exports=function(e,t){if(!t&&!o)return!1;var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(l){}return n}},"1cdc":function(e,t,n){var r=n("342f");e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(r)},"1d80":function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},"1db9":function(e,t,n){var r=n("eefc");e.exports=function(e){return Object(r(e))}},"1dde":function(e,t,n){var r=n("d039"),i=n("b622"),o=n("2d00"),a=i("species");e.exports=function(e){return o>=51||!r((function(){var t=[],n=t.constructor={};return n[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},"1ef7":function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t=/^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,n=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,r=/[*+-]\s/;function i(e,n){var r=n.line,i=0,o=0,a=t.exec(e.getLine(r)),s=a[1];do{i+=1;var l=r+i,u=e.getLine(l),c=t.exec(u);if(c){var f=c[1],h=parseInt(a[3],10)+i-o,d=parseInt(c[3],10),p=d;if(s!==f||isNaN(d)){if(s.length>f.length)return;if(s.lengthd&&(p=h+1),e.replaceRange(u.replace(t,f+p+c[4]+c[5]),{line:l,ch:0},{line:l,ch:u.length})}}while(c)}e.commands.newlineAndIndentContinueMarkdownList=function(o){if(o.getOption("disableInput"))return e.Pass;for(var a=o.listSelections(),s=[],l=0;l\s*$/.test(p),y=!/>\s*$/.test(p);(v||y)&&o.replaceRange("",{line:u.line,ch:0},{line:u.line,ch:u.ch+1}),s[l]="\n"}else{var b=g[1],w=g[5],_=!(r.test(g[2])||g[2].indexOf(">")>=0),x=_?parseInt(g[3],10)+1+g[4]:g[2].replace("x"," ");s[l]="\n"+b+x+w,_&&i(o,u)}}o.replaceSelections(s)}}))},"1fb5":function(e,t,n){"use strict";t.byteLength=c,t.toByteArray=h,t.fromByteArray=g;for(var r=[],i=[],o="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");-1===n&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=u(e),n=t[0],r=t[1];return 3*(n+r)/4-r}function f(e,t,n){return 3*(t+n)/4-n}function h(e){var t,n,r=u(e),a=r[0],s=r[1],l=new o(f(e,a,s)),c=0,h=s>0?a-4:a;for(n=0;n>16&255,l[c++]=t>>8&255,l[c++]=255&t;return 2===s&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,l[c++]=255&t),1===s&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,l[c++]=t>>8&255,l[c++]=255&t),l}function d(e){return r[e>>18&63]+r[e>>12&63]+r[e>>6&63]+r[63&e]}function p(e,t,n){for(var r,i=[],o=t;ol?l:s+a));return 1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},"21aa":function(e,t,n){var r=n("52c9"),i=n("c5b8"),o=n("f742"),a=n("eed0"),s=n("cd48"),l=n("d817"),u=l.get,c=l.enforce,f=String(String).split("String");(e.exports=function(e,t,n,s){var l=!!s&&!!s.unsafe,u=!!s&&!!s.enumerable,h=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof t||o(n,"name")||i(n,"name",t),c(n).source=f.join("string"==typeof t?t:"")),e!==r?(l?!h&&e[t]&&(u=!0):delete e[t],u?e[t]=n:i(e,t,n)):u?e[t]=n:a(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},2266:function(e,t,n){var r=n("825a"),i=n("e95a"),o=n("50c4"),a=n("0366"),s=n("35a1"),l=n("9bdd"),u=function(e,t){this.stopped=e,this.result=t},c=e.exports=function(e,t,n,c,f){var h,d,p,g,m,v,y,b=a(t,n,c?2:1);if(f)h=e;else{if(d=s(e),"function"!=typeof d)throw TypeError("Target is not iterable");if(i(d)){for(p=0,g=o(e.length);g>p;p++)if(m=c?b(r(y=e[p])[0],y[1]):b(e[p]),m&&m instanceof u)return m;return new u(!1)}h=d.call(e)}v=h.next;while(!(y=v.call(h)).done)if(m=l(h,b,y.value,c),"object"==typeof m&&m&&m instanceof u)return m;return new u(!1)};c.stop=function(e){return new u(!0,e)}},"23cb":function(e,t,n){var r=n("a691"),i=Math.max,o=Math.min;e.exports=function(e,t){var n=r(e);return n<0?i(n+t,0):o(n,t)}},"23e2":function(e,t,n){"use strict";var r=n("1274");function i(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var o;if(n)o=n(t);else if(r.isURLSearchParams(t))o=t.toString();else{var a=[];r.forEach(t,(function(e,t){null!==e&&"undefined"!==typeof e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),a.push(i(t)+"="+i(e))})))})),o=a.join("&")}if(o){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},"23e7":function(e,t,n){var r=n("da84"),i=n("06cf").f,o=n("9112"),a=n("6eeb"),s=n("ce4e"),l=n("e893"),u=n("94ca");e.exports=function(e,t){var n,c,f,h,d,p,g=e.target,m=e.global,v=e.stat;if(c=m?r:v?r[g]||s(g,{}):(r[g]||{}).prototype,c)for(f in t){if(d=t[f],e.noTargetGet?(p=i(c,f),h=p&&p.value):h=c[f],n=u(m?f:g+(v?".":"#")+f,e.forced),!n&&void 0!==h){if(typeof d===typeof h)continue;l(d,h)}(e.sham||h&&h.sham)&&o(d,"sham",!0),a(c,f,d,e)}}},"241c":function(e,t,n){var r=n("ca84"),i=n("7839"),o=i.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},2626:function(e,t,n){"use strict";var r=n("d066"),i=n("9bf2"),o=n("b622"),a=n("83ab"),s=o("species");e.exports=function(e){var t=r(e),n=i.f;a&&t&&!t[s]&&n(t,s,{configurable:!0,get:function(){return this}})}},"27bf":function(e,t,n){"use strict";e.exports=a;var r=n("b19a"),i=Object.create(n("3a7c"));function o(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length1?arguments[1]:void 0,t.length)),r=String(e);return c?c.call(t,r,n):t.slice(n,n+r.length)===r}})},"2ceb":function(e,t,n){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},"2cf4":function(e,t,n){var r,i,o,a=n("da84"),s=n("d039"),l=n("c6b6"),u=n("0366"),c=n("1be4"),f=n("cc12"),h=n("1cdc"),d=a.location,p=a.setImmediate,g=a.clearImmediate,m=a.process,v=a.MessageChannel,y=a.Dispatch,b=0,w={},_="onreadystatechange",x=function(e){if(w.hasOwnProperty(e)){var t=w[e];delete w[e],t()}},k=function(e){return function(){x(e)}},S=function(e){x(e.data)},C=function(e){a.postMessage(e+"",d.protocol+"//"+d.host)};p&&g||(p=function(e){var t=[],n=1;while(arguments.length>n)t.push(arguments[n++]);return w[++b]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},r(b),b},g=function(e){delete w[e]},"process"==l(m)?r=function(e){m.nextTick(k(e))}:y&&y.now?r=function(e){y.now(k(e))}:v&&!h?(i=new v,o=i.port2,i.port1.onmessage=S,r=u(o.postMessage,o,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||s(C)||"file:"===d.protocol?r=_ in f("script")?function(e){c.appendChild(f("script"))[_]=function(){c.removeChild(this),x(e)}}:function(e){setTimeout(k(e),0)}:(r=C,a.addEventListener("message",S,!1))),e.exports={set:p,clear:g}},"2d00":function(e,t,n){var r,i,o=n("da84"),a=n("342f"),s=o.process,l=s&&s.versions,u=l&&l.v8;u?(r=u.split("."),i=r[0]+r[1]):a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(i=r[1]))),e.exports=i&&+i},"2d38":function(e,t,n){"use strict";var r=n("e6fd"),i=n("f9a6");e.exports=r?{}.toString:function(){return"[object "+i(this)+"]"}},"2e6d":function(e,t,n){"use strict";function r(e){this.message=e}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,e.exports=r},"2f68":function(e,t,n){"use strict";var r=n("1274"),i=n("c751"),o=n("fc9e"),a=n("23e2"),s=n("eb1d"),l=n("c293"),u=n("8f3b"),c=n("e27c");e.exports=function(e){return new Promise((function(t,n){var f=e.data,h=e.headers;r.isFormData(f)&&delete h["Content-Type"],(r.isBlob(f)||r.isFile(f))&&f.type&&delete h["Content-Type"];var d=new XMLHttpRequest;if(e.auth){var p=e.auth.username||"",g=unescape(encodeURIComponent(e.auth.password))||"";h.Authorization="Basic "+btoa(p+":"+g)}var m=s(e.baseURL,e.url);if(d.open(e.method.toUpperCase(),a(m,e.params,e.paramsSerializer),!0),d.timeout=e.timeout,d.onreadystatechange=function(){if(d&&4===d.readyState&&(0!==d.status||d.responseURL&&0===d.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in d?l(d.getAllResponseHeaders()):null,o=e.responseType&&"text"!==e.responseType?d.response:d.responseText,a={data:o,status:d.status,statusText:d.statusText,headers:r,config:e,request:d};i(t,n,a),d=null}},d.onabort=function(){d&&(n(c("Request aborted",e,"ECONNABORTED",d)),d=null)},d.onerror=function(){n(c("Network Error",e,null,d)),d=null},d.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(c(t,e,"ECONNABORTED",d)),d=null},r.isStandardBrowserEnv()){var v=(e.withCredentials||u(m))&&e.xsrfCookieName?o.read(e.xsrfCookieName):void 0;v&&(h[e.xsrfHeaderName]=v)}if("setRequestHeader"in d&&r.forEach(h,(function(e,t){"undefined"===typeof f&&"content-type"===t.toLowerCase()?delete h[t]:d.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),e.responseType)try{d.responseType=e.responseType}catch(y){if("json"!==e.responseType)throw y}"function"===typeof e.onDownloadProgress&&d.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&d.upload&&d.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){d&&(d.abort(),n(e),d=null)})),f||(f=null),d.send(f)}))}},3022:function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return e}})),l=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),y(n)?r.showHidden=n:n&&t._extend(r,n),S(r.showHidden)&&(r.showHidden=!1),S(r.depth)&&(r.depth=2),S(r.colors)&&(r.colors=!1),S(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=l),f(r,e,r.depth)}function l(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function c(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}function f(e,n,r){if(e.customInspect&&n&&O(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return x(i)||(i=f(e,i,r)),i}var o=h(e,n);if(o)return o;var a=Object.keys(n),s=c(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),L(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return d(n);if(0===a.length){if(O(n)){var l=n.name?": "+n.name:"";return e.stylize("[Function"+l+"]","special")}if(C(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(A(n))return e.stylize(Date.prototype.toString.call(n),"date");if(L(n))return d(n)}var u,y="",b=!1,w=["{","}"];if(v(n)&&(b=!0,w=["[","]"]),O(n)){var _=n.name?": "+n.name:"";y=" [Function"+_+"]"}return C(n)&&(y=" "+RegExp.prototype.toString.call(n)),A(n)&&(y=" "+Date.prototype.toUTCString.call(n)),L(n)&&(y=" "+d(n)),0!==a.length||b&&0!=n.length?r<0?C(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=b?p(e,n,r,s,a):a.map((function(t){return g(e,n,r,s,t,b)})),e.seen.pop(),m(u,y,w)):w[0]+y+w[1]}function h(e,t){if(S(t))return e.stylize("undefined","undefined");if(x(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return _(t)?e.stylize(""+t,"number"):y(t)?e.stylize(""+t,"boolean"):b(t)?e.stylize("null","null"):void 0}function d(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,i){for(var o=[],a=0,s=t.length;a-1&&(s=o?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n"))):s=e.stylize("[Circular]","special")),S(a)){if(o&&i.match(/^\d+$/))return s;a=JSON.stringify(""+i),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function m(e,t,n){var r=e.reduce((function(e,t){return t.indexOf("\n")>=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0);return r>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function v(e){return Array.isArray(e)}function y(e){return"boolean"===typeof e}function b(e){return null===e}function w(e){return null==e}function _(e){return"number"===typeof e}function x(e){return"string"===typeof e}function k(e){return"symbol"===typeof e}function S(e){return void 0===e}function C(e){return E(e)&&"[object RegExp]"===M(e)}function E(e){return"object"===typeof e&&null!==e}function A(e){return E(e)&&"[object Date]"===M(e)}function L(e){return E(e)&&("[object Error]"===M(e)||e instanceof Error)}function O(e){return"function"===typeof e}function T(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e}function M(e){return Object.prototype.toString.call(e)}function j(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(S(o)&&(o=Object({NODE_ENV:"production",BASE_URL:""}).NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=v,t.isBoolean=y,t.isNull=b,t.isNullOrUndefined=w,t.isNumber=_,t.isString=x,t.isSymbol=k,t.isUndefined=S,t.isRegExp=C,t.isObject=E,t.isDate=A,t.isError=L,t.isFunction=O,t.isPrimitive=T,t.isBuffer=n("d60a");var P=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R(){var e=new Date,t=[j(e.getHours()),j(e.getMinutes()),j(e.getSeconds())].join(":");return[e.getDate(),P[e.getMonth()],t].join(" ")}function N(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",R(),t.format.apply(t,arguments))},t.inherits=n("28a0"),t._extend=function(e,t){if(!t||!E(t))return e;var n=Object.keys(t),r=n.length;while(r--)e[n[r]]=t[n[r]];return e};var D="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function z(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}function F(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');function n(){for(var n=[],r=0;r0?i(r(e),9007199254740991):0}},"31c5":function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t="CodeMirror-activeline",n="CodeMirror-activeline-background",r="CodeMirror-activeline-gutter";function i(e){for(var i=0;il)i.f(e,n=r[l++],t[n]);return e}},"3a7c":function(e,t,n){(function(e){function n(e){return Array.isArray?Array.isArray(e):"[object Array]"===m(e)}function r(e){return"boolean"===typeof e}function i(e){return null===e}function o(e){return null==e}function a(e){return"number"===typeof e}function s(e){return"string"===typeof e}function l(e){return"symbol"===typeof e}function u(e){return void 0===e}function c(e){return"[object RegExp]"===m(e)}function f(e){return"object"===typeof e&&null!==e}function h(e){return"[object Date]"===m(e)}function d(e){return"[object Error]"===m(e)||e instanceof Error}function p(e){return"function"===typeof e}function g(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e}function m(e){return Object.prototype.toString.call(e)}t.isArray=n,t.isBoolean=r,t.isNull=i,t.isNullOrUndefined=o,t.isNumber=a,t.isString=s,t.isSymbol=l,t.isUndefined=u,t.isRegExp=c,t.isObject=f,t.isDate=h,t.isError=d,t.isFunction=p,t.isPrimitive=g,t.isBuffer=e.isBuffer}).call(this,n("b639").Buffer)},"3bbe":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},"3ca3":function(e,t,n){"use strict";var r=n("6547").charAt,i=n("69f3"),o=n("7dd0"),a="String Iterator",s=i.set,l=i.getterFor(a);o(String,"String",(function(e){s(this,{type:a,string:String(e),index:0})}),(function(){var e,t=l(this),n=t.string,i=t.index;return i>=n.length?{value:void 0,done:!0}:(e=r(n,i),t.index+=e.length,{value:e,done:!1})}))},"3f8c":function(e,t){e.exports={}},"3fb5":function(e,t){"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},"408c":function(e,t,n){var r=n("2b3e"),i=function(){return r.Date.now()};e.exports=i},"413a":function(e,t){t.f=Object.getOwnPropertySymbols},4160:function(e,t,n){"use strict";var r=n("23e7"),i=n("17c2");r({target:"Array",proto:!0,forced:[].forEach!=i},{forEach:i})},"428f":function(e,t,n){var r=n("da84");e.exports=r},"429b":function(e,t,n){e.exports=n("faa1").EventEmitter},"433a":function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+r).toString(36)}},4362:function(e,t,n){t.nextTick=function(e){var t=Array.prototype.slice.call(arguments);t.shift(),setTimeout((function(){e.apply(null,t)}),0)},t.platform=t.arch=t.execPath=t.title="browser",t.pid=1,t.browser=!0,t.env={},t.argv=[],t.binding=function(e){throw new Error("No such module. (Possibly not yet loaded)")},function(){var e,r="/";t.cwd=function(){return r},t.chdir=function(t){e||(e=n("df7c")),r=e.resolve(t,r)}}(),t.exit=t.kill=t.umask=t.dlopen=t.uptime=t.memoryUsage=t.uvCounters=function(){},t.features={}},"44a0":function(e,t,n){(function(e){e(n("56b3"),n("959b"),n("9eb9"))})((function(e){"use strict";var t=/^((?:(?: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;e.defineMode("gfm",(function(n,r){var i=0;function o(e){return e.code=!1,null}var a={startState:function(){return{code:!1,codeBlock:!1,ateSpace:!1}},copyState:function(e){return{code:e.code,codeBlock:e.codeBlock,ateSpace:e.ateSpace}},token:function(e,n){if(n.combineTokens=null,n.codeBlock)return e.match(/^```+/)?(n.codeBlock=!1,null):(e.skipToEnd(),null);if(e.sol()&&(n.code=!1),e.sol()&&e.match(/^```+/))return e.skipToEnd(),n.codeBlock=!0,null;if("`"===e.peek()){e.next();var o=e.pos;e.eatWhile("`");var a=1+e.pos-o;return n.code?a===i&&(n.code=!1):(i=a,n.code=!0),null}if(n.code)return e.next(),null;if(e.eatSpace())return n.ateSpace=!0,null;if((e.sol()||n.ateSpace)&&(n.ateSpace=!1,!1!==r.gitHubSpice)){if(e.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+@)?(?=.{0,6}\d)(?:[a-f0-9]{7,40}\b)/))return n.combineTokens=!0,"link";if(e.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+)?#[0-9]+\b/))return n.combineTokens=!0,"link"}return e.match(t)&&"]("!=e.string.slice(e.start-2,e.start)&&(0==e.start||/\W/.test(e.string.charAt(e.start-1)))?(n.combineTokens=!0,"link"):(e.next(),null)},blankLine:o},s={taskLists:!0,strikethrough:!0,emoji:!0};for(var l in r)s[l]=r[l];return s.name="markdown",e.overlayMode(e.getMode(n,s),a)}),"markdown"),e.defineMIME("text/x-gfm","gfm")}))},"44ad":function(e,t,n){var r=n("d039"),i=n("c6b6"),o="".split;e.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?o.call(e,""):Object(e)}:Object},"44d2":function(e,t,n){var r=n("b622"),i=n("7c73"),o=n("9bf2"),a=r("unscopables"),s=Array.prototype;void 0==s[a]&&o.f(s,a,{configurable:!0,value:i(null)}),e.exports=function(e){s[a][e]=!0}},"44de":function(e,t,n){var r=n("da84");e.exports=function(e,t){var n=r.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},"44e7":function(e,t,n){var r=n("861d"),i=n("c6b6"),o=n("b622"),a=o("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"==i(e))}},"466d":function(e,t,n){"use strict";var r=n("d784"),i=n("825a"),o=n("50c4"),a=n("1d80"),s=n("8aa5"),l=n("14c3");r("match",1,(function(e,t,n){return[function(t){var n=a(this),r=void 0==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var a=i(e),u=String(this);if(!a.global)return l(a,u);var c=a.unicode;a.lastIndex=0;var f,h=[],d=0;while(null!==(f=l(a,u))){var p=String(f[0]);h[d]=p,""===p&&(a.lastIndex=s(u,o(a.lastIndex),c)),d++}return 0===d?null:h}]}))},4681:function(e,t,n){"use strict";var r=n("966d");function i(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return i||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(a,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(a,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)}function o(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function a(e,t){e.emit("error",t)}e.exports={destroy:i,undestroy:o}},"470b":function(e,t,n){"use strict";(function(e){var r=n("b639").Buffer,i=n("d485").Transform,o=n("6b75"),a=n("3022"),s=n("f654").ok,l=n("b639").kMaxLength,u="Cannot create final Buffer. It would be larger than 0x"+l.toString(16)+" bytes";o.Z_MIN_WINDOWBITS=8,o.Z_MAX_WINDOWBITS=15,o.Z_DEFAULT_WINDOWBITS=15,o.Z_MIN_CHUNK=64,o.Z_MAX_CHUNK=1/0,o.Z_DEFAULT_CHUNK=16384,o.Z_MIN_MEMLEVEL=1,o.Z_MAX_MEMLEVEL=9,o.Z_DEFAULT_MEMLEVEL=8,o.Z_MIN_LEVEL=-1,o.Z_MAX_LEVEL=9,o.Z_DEFAULT_LEVEL=o.Z_DEFAULT_COMPRESSION;for(var c=Object.keys(o),f=0;f=l?a=new RangeError(u):t=r.concat(i,o),i=[],e.close(),n(a,t)}e.on("error",s),e.on("end",c),e.end(t),a()}function y(e,t){if("string"===typeof t&&(t=r.from(t)),!r.isBuffer(t))throw new TypeError("Not a string or buffer");var n=e._finishFlushFlag;return e._processChunk(t,n)}function b(e){if(!(this instanceof b))return new b(e);A.call(this,e,o.DEFLATE)}function w(e){if(!(this instanceof w))return new w(e);A.call(this,e,o.INFLATE)}function _(e){if(!(this instanceof _))return new _(e);A.call(this,e,o.GZIP)}function x(e){if(!(this instanceof x))return new x(e);A.call(this,e,o.GUNZIP)}function k(e){if(!(this instanceof k))return new k(e);A.call(this,e,o.DEFLATERAW)}function S(e){if(!(this instanceof S))return new S(e);A.call(this,e,o.INFLATERAW)}function C(e){if(!(this instanceof C))return new C(e);A.call(this,e,o.UNZIP)}function E(e){return e===o.Z_NO_FLUSH||e===o.Z_PARTIAL_FLUSH||e===o.Z_SYNC_FLUSH||e===o.Z_FULL_FLUSH||e===o.Z_FINISH||e===o.Z_BLOCK}function A(e,n){var a=this;if(this._opts=e=e||{},this._chunkSize=e.chunkSize||t.Z_DEFAULT_CHUNK,i.call(this,e),e.flush&&!E(e.flush))throw new Error("Invalid flush flag: "+e.flush);if(e.finishFlush&&!E(e.finishFlush))throw new Error("Invalid flush flag: "+e.finishFlush);if(this._flushFlag=e.flush||o.Z_NO_FLUSH,this._finishFlushFlag="undefined"!==typeof e.finishFlush?e.finishFlush:o.Z_FINISH,e.chunkSize&&(e.chunkSizet.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBitst.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.levelt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevelt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=t.Z_FILTERED&&e.strategy!=t.Z_HUFFMAN_ONLY&&e.strategy!=t.Z_RLE&&e.strategy!=t.Z_FIXED&&e.strategy!=t.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!r.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new o.Zlib(n);var s=this;this._hadError=!1,this._handle.onerror=function(e,n){L(s),s._hadError=!0;var r=new Error(e);r.errno=n,r.code=t.codes[n],s.emit("error",r)};var l=t.Z_DEFAULT_COMPRESSION;"number"===typeof e.level&&(l=e.level);var u=t.Z_DEFAULT_STRATEGY;"number"===typeof e.strategy&&(u=e.strategy),this._handle.init(e.windowBits||t.Z_DEFAULT_WINDOWBITS,l,e.memLevel||t.Z_DEFAULT_MEMLEVEL,u,e.dictionary),this._buffer=r.allocUnsafe(this._chunkSize),this._offset=0,this._level=l,this._strategy=u,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!a._handle},configurable:!0,enumerable:!0})}function L(t,n){n&&e.nextTick(n),t._handle&&(t._handle.close(),t._handle=null)}function O(e){e.emit("close")}Object.defineProperty(t,"codes",{enumerable:!0,value:Object.freeze(d),writable:!1}),t.Deflate=b,t.Inflate=w,t.Gzip=_,t.Gunzip=x,t.DeflateRaw=k,t.InflateRaw=S,t.Unzip=C,t.createDeflate=function(e){return new b(e)},t.createInflate=function(e){return new w(e)},t.createDeflateRaw=function(e){return new k(e)},t.createInflateRaw=function(e){return new S(e)},t.createGzip=function(e){return new _(e)},t.createGunzip=function(e){return new x(e)},t.createUnzip=function(e){return new C(e)},t.deflate=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new b(t),e,n)},t.deflateSync=function(e,t){return y(new b(t),e)},t.gzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new _(t),e,n)},t.gzipSync=function(e,t){return y(new _(t),e)},t.deflateRaw=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new k(t),e,n)},t.deflateRawSync=function(e,t){return y(new k(t),e)},t.unzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new C(t),e,n)},t.unzipSync=function(e,t){return y(new C(t),e)},t.inflate=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new w(t),e,n)},t.inflateSync=function(e,t){return y(new w(t),e)},t.gunzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new x(t),e,n)},t.gunzipSync=function(e,t){return y(new x(t),e)},t.inflateRaw=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new S(t),e,n)},t.inflateRawSync=function(e,t){return y(new S(t),e)},a.inherits(A,i),A.prototype.params=function(n,r,i){if(nt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+n);if(r!=t.Z_FILTERED&&r!=t.Z_HUFFMAN_ONLY&&r!=t.Z_RLE&&r!=t.Z_FIXED&&r!=t.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+r);if(this._level!==n||this._strategy!==r){var a=this;this.flush(o.Z_SYNC_FLUSH,(function(){s(a._handle,"zlib binding closed"),a._handle.params(n,r),a._hadError||(a._level=n,a._strategy=r,i&&i())}))}else e.nextTick(i)},A.prototype.reset=function(){return s(this._handle,"zlib binding closed"),this._handle.reset()},A.prototype._flush=function(e){this._transform(r.alloc(0),"",e)},A.prototype.flush=function(t,n){var i=this,a=this._writableState;("function"===typeof t||void 0===t&&!n)&&(n=t,t=o.Z_FULL_FLUSH),a.ended?n&&e.nextTick(n):a.ending?n&&this.once("end",n):a.needDrain?n&&this.once("drain",(function(){return i.flush(t,n)})):(this._flushFlag=t,this.write(r.alloc(0),"",n))},A.prototype.close=function(t){L(this,t),e.nextTick(O,this)},A.prototype._transform=function(e,t,n){var i,a=this._writableState,s=a.ending||a.ended,l=s&&(!e||a.length===e.length);return null===e||r.isBuffer(e)?this._handle?(l?i=this._finishFlushFlag:(i=this._flushFlag,e.length>=a.length&&(this._flushFlag=this._opts.flush||o.Z_NO_FLUSH)),void this._processChunk(e,i,n)):n(new Error("zlib binding closed")):n(new Error("invalid input"))},A.prototype._processChunk=function(e,t,n){var i=e&&e.length,o=this._chunkSize-this._offset,a=0,c=this,f="function"===typeof n;if(!f){var h,d=[],p=0;this.on("error",(function(e){h=e})),s(this._handle,"zlib binding closed");do{var g=this._handle.writeSync(t,e,a,i,this._buffer,this._offset,o)}while(!this._hadError&&y(g[0],g[1]));if(this._hadError)throw h;if(p>=l)throw L(this),new RangeError(u);var m=r.concat(d,p);return L(this),m}s(this._handle,"zlib binding closed");var v=this._handle.write(t,e,a,i,this._buffer,this._offset,o);function y(l,u){if(this&&(this.buffer=null,this.callback=null),!c._hadError){var h=o-u;if(s(h>=0,"have should not go down"),h>0){var g=c._buffer.slice(c._offset,c._offset+h);c._offset+=h,f?c.push(g):(d.push(g),p+=g.length)}if((0===u||c._offset>=c._chunkSize)&&(o=c._chunkSize,c._offset=0,c._buffer=r.allocUnsafe(c._chunkSize)),0===u){if(a+=i-l,i=l,!f)return!0;var m=c._handle.write(t,e,a,i,c._buffer,c._offset,c._chunkSize);return m.callback=y,void(m.buffer=e)}if(!f)return!1;n()}}v.buffer=e,v.callback=y},a.inherits(b,A),a.inherits(w,A),a.inherits(_,A),a.inherits(x,A),a.inherits(k,A),a.inherits(S,A),a.inherits(C,A)}).call(this,n("4362"))},4840:function(e,t,n){var r=n("825a"),i=n("1c0b"),o=n("b622"),a=o("species");e.exports=function(e,t){var n,o=r(e).constructor;return void 0===o||void 0==(n=r(o)[a])?t:i(n)}},4895:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";function t(t,r,o,a){if(o&&o.call){var s=o;o=null}else s=i(t,o,"rangeFinder");"number"==typeof r&&(r=e.Pos(r,0));var l=i(t,o,"minFoldSize");function u(e){var n=s(t,r);if(!n||n.to.line-n.from.linet.firstLine())r=e.Pos(r.line-1,0),c=u(!1);if(c&&!c.cleared&&"unfold"!==a){var f=n(t,o,c);e.on(f,"mousedown",(function(t){h.clear(),e.e_preventDefault(t)}));var h=t.markText(c.from,c.to,{replacedWith:f,clearOnEnter:i(t,o,"clearOnEnter"),__isFold:!0});h.on("clear",(function(n,r){e.signal(t,"unfold",t,n,r)})),e.signal(t,"fold",t,c.from,c.to)}}function n(e,t,n){var r=i(e,t,"widget");if("function"==typeof r&&(r=r(n.from,n.to)),"string"==typeof r){var o=document.createTextNode(r);r=document.createElement("span"),r.appendChild(o),r.className="CodeMirror-foldmarker"}else r&&(r=r.cloneNode(!0));return r}e.newFoldFunction=function(e,n){return function(r,i){t(r,i,{rangeFinder:e,widget:n})}},e.defineExtension("foldCode",(function(e,n,r){t(this,e,n,r)})),e.defineExtension("isFolded",(function(e){for(var t=this.findMarksAt(e),n=0;nc)if(s=l[c++],s!=s)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},"4dc6":function(e,t,n){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},"4de4":function(e,t,n){"use strict";var r=n("23e7"),i=n("b727").filter,o=n("1dde"),a=n("ae40"),s=o("filter"),l=a("filter");r({target:"Array",proto:!0,forced:!s||!l},{filter:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}})},"4fdd":function(e,t,n){var r=n("c785");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},"50c4":function(e,t,n){var r=n("a691"),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},5135:function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"52c9":function(e,t,n){(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n("c8ba"))},5319:function(e,t,n){"use strict";var r=n("d784"),i=n("825a"),o=n("7b0b"),a=n("50c4"),s=n("a691"),l=n("1d80"),u=n("8aa5"),c=n("14c3"),f=Math.max,h=Math.min,d=Math.floor,p=/\$([$&'`]|\d\d?|<[^>]*>)/g,g=/\$([$&'`]|\d\d?)/g,m=function(e){return void 0===e?e:String(e)};r("replace",2,(function(e,t,n,r){var v=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,y=r.REPLACE_KEEPS_$0,b=v?"$":"$0";return[function(n,r){var i=l(this),o=void 0==n?void 0:n[e];return void 0!==o?o.call(n,i,r):t.call(String(i),n,r)},function(e,r){if(!v&&y||"string"===typeof r&&-1===r.indexOf(b)){var o=n(t,e,this,r);if(o.done)return o.value}var l=i(e),d=String(this),p="function"===typeof r;p||(r=String(r));var g=l.global;if(g){var _=l.unicode;l.lastIndex=0}var x=[];while(1){var k=c(l,d);if(null===k)break;if(x.push(k),!g)break;var S=String(k[0]);""===S&&(l.lastIndex=u(d,a(l.lastIndex),_))}for(var C="",E=0,A=0;A=E&&(C+=d.slice(E,O)+R,E=O+L.length)}return C+d.slice(E)}];function w(e,n,r,i,a,s){var l=r+e.length,u=i.length,c=g;return void 0!==a&&(a=o(a),c=p),t.call(s,c,(function(t,o){var s;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,r);case"'":return n.slice(l);case"<":s=a[o.slice(1,-1)];break;default:var c=+o;if(0===c)return t;if(c>u){var f=d(c/10);return 0===f?t:f<=u?void 0===i[f-1]?o.charAt(1):i[f-1]+o.charAt(1):t}s=i[c-1]}return void 0===s?"":s}))}}))},"53b9":function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},"53ca":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));n("a4d3"),n("e01a"),n("d28b"),n("d3b7"),n("3ca3"),n("ddb0");function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}},5530:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));n("a4d3"),n("4de4"),n("4160"),n("e439"),n("dbb4"),n("b64b"),n("159b");var r=n("ade3");function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=15&&(f=!1,l=!0);var x=y&&(u||f&&(null==_||_<12.11)),k=n||a&&s>=9;function S(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var C,E=function(e,t){var n=e.className,r=S(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 A(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function L(e,t){return A(e).appendChild(t)}function O(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),"string"==typeof t)i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o=t)return a+(t-o);a+=s-o,a+=n-a%n,o=s+1}}g?N=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:a&&(N=function(e){try{e.select()}catch(t){}});var I=function(){this.id=null,this.f=null,this.time=0,this.handler=D(this.onTimeout,this)};function B(e,t){for(var n=0;n=t)return r+Math.min(a,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var V=[""];function G(e){while(V.length<=e)V.push(Y(V)+" ");return V[e]}function Y(e){return e[e.length-1]}function K(e,t){for(var n=[],r=0;r"€"&&(e.toUpperCase()!=e.toLowerCase()||ee.test(e))}function ne(e,t){return t?!!(t.source.indexOf("\\w")>-1&&te(e))||t.test(e):te(e)}function re(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var ie=/[\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 oe(e){return e.charCodeAt(0)>=768&&ie.test(e)}function ae(e,t,n){while((n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function le(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;ot||t==n&&a.to==t)&&(r(Math.max(a.from,t),Math.min(a.to,n),1==a.level?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var ue=null;function ce(e,t,n){var r;ue=null;for(var i=0;it)return i;o.to==t&&(o.from!=o.to&&"before"==n?r=i:ue=i),o.from==t&&(o.from!=o.to&&"before"!=n?r=i:ue=i)}return null!=r?r:ue}var fe=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(n){return n<=247?e.charAt(n):1424<=n&&n<=1524?"R":1536<=n&&n<=1785?t.charAt(n-1536):1774<=n&&n<=2220?"r":8192<=n&&n<=8203?"w":8204==n?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,a=/[Lb1n]/,s=/[1n]/;function l(e,t,n){this.level=e,this.from=t,this.to=n}return function(e,t){var u="ltr"==t?"L":"R";if(0==e.length||"ltr"==t&&!r.test(e))return!1;for(var c=e.length,f=[],h=0;h-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function ve(e,t){var n=ge(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function _e(e){e.prototype.on=function(e,t){pe(this,e,t)},e.prototype.off=function(e,t){me(this,e,t)}}function xe(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function ke(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Se(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function Ce(e){xe(e),ke(e)}function Ee(e){return e.target||e.srcElement}function Ae(e){var t=e.which;return null==t&&(1&e.button?t=1:2&e.button?t=3:4&e.button&&(t=2)),y&&e.ctrlKey&&1==t&&(t=3),t}var Le,Oe,Te=function(){if(a&&s<9)return!1;var e=O("div");return"draggable"in e||"dragDrop"in e}();function Me(e){if(null==Le){var t=O("span","​");L(e,O("span",[t,document.createTextNode("x")])),0!=e.firstChild.offsetHeight&&(Le=t.offsetWidth<=1&&t.offsetHeight>2&&!(a&&s<8))}var n=Le?O("span","​"):O("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}function je(e){if(null!=Oe)return Oe;var t=L(e,document.createTextNode("AخA")),n=C(t,0,1).getBoundingClientRect(),r=C(t,1,2).getBoundingClientRect();return A(e),!(!n||n.left==n.right)&&(Oe=r.right-n.right<3)}var Pe=3!="\n\nb".split(/\n/).length?function(e){var t=0,n=[],r=e.length;while(t<=r){var i=e.indexOf("\n",t);-1==i&&(i=e.length);var o=e.slice(t,"\r"==e.charAt(i-1)?i-1:i),a=o.indexOf("\r");-1!=a?(n.push(o.slice(0,a)),t+=a+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},Re=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch(t){return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch(n){}return!(!t||t.parentElement()!=e)&&0!=t.compareEndPoints("StartToEnd",t)},Ne=function(){var e=O("div");return"oncopy"in e||(e.setAttribute("oncopy","return;"),"function"==typeof e.oncopy)}(),De=null;function ze(e){if(null!=De)return De;var t=L(e,O("span","x")),n=t.getBoundingClientRect(),r=C(t,0,1).getBoundingClientRect();return De=Math.abs(n.left-r.left)>1}var Fe={},Ie={};function Be(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),Fe[e]=t}function Ue(e,t){Ie[e]=t}function He(e){if("string"==typeof e&&Ie.hasOwnProperty(e))e=Ie[e];else if(e&&"string"==typeof e.name&&Ie.hasOwnProperty(e.name)){var t=Ie[e.name];"string"==typeof t&&(t={name:t}),e=Q(t,e),e.name=t.name}else{if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return He("application/xml");if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return He("application/json")}return"string"==typeof e?{name:e}:e||{name:"null"}}function $e(e,t){t=He(t);var n=Fe[t.name];if(!n)return $e(e,"text/plain");var r=n(e,t);if(We.hasOwnProperty(t.name)){var i=We[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var a in t.modeProps)r[a]=t.modeProps[a];return r}var We={};function qe(e,t){var n=We.hasOwnProperty(e)?We[e]:We[e]={};z(t,n)}function Ze(e,t){if(!0===t)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 Ve(e,t){var n;while(e.innerMode){if(n=e.innerMode(t),!n||n.mode==e)break;t=n.state,e=n.mode}return n||{mode:e,state:t}}function Ge(e,t,n){return!e.startState||e.startState(t,n)}var Ye=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};function Ke(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");var n=e;while(!n.lines)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t=e.first&&tn?it(n,Ke(e,n).text.length):ht(t,Ke(e,t.line).text.length)}function ht(e,t){var n=e.ch;return null==n||n>t?it(e.line,t):n<0?it(e.line,0):e}function dt(e,t){for(var n=[],r=0;r=this.string.length},Ye.prototype.sol=function(){return this.pos==this.lineStart},Ye.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},Ye.prototype.next=function(){if(this.post},Ye.prototype.eatSpace=function(){var e=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos)))++this.pos;return this.pos>e},Ye.prototype.skipToEnd=function(){this.pos=this.string.length},Ye.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},Ye.prototype.backUp=function(e){this.pos-=e},Ye.prototype.column=function(){return this.lastColumnPos0?null:(r&&!1!==t&&(this.pos+=r[0].length),r)}var i=function(e){return n?e.toLowerCase():e},o=this.string.substr(this.pos,e.length);if(i(o)==i(e))return!1!==t&&(this.pos+=e.length),!0},Ye.prototype.current=function(){return this.string.slice(this.start,this.pos)},Ye.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},Ye.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},Ye.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};var pt=function(e,t){this.state=e,this.lookAhead=t},gt=function(e,t,n,r){this.state=t,this.doc=e,this.line=n,this.maxLookAhead=r||0,this.baseTokens=null,this.baseTokenPos=1};function mt(e,t,n,r){var i=[e.state.modeGen],o={};Ct(e,t.text,e.doc.mode,n,(function(e,t){return i.push(e,t)}),o,r);for(var a=n.state,s=function(r){n.baseTokens=i;var s=e.state.overlays[r],l=1,u=0;n.state=!0,Ct(e,t.text,s.mode,n,(function(e,t){var n=l;while(ue&&i.splice(l,1,e,i[l+1],r),l+=2,u=Math.min(e,r)}if(t)if(s.opaque)i.splice(n,l-n,e,"overlay "+t),l=n+2;else for(;ne.options.maxHighlightLength&&Ze(e.doc.mode,r.state),o=mt(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.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 yt(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new gt(r,!0,t);var o=Et(e,t,n),a=o>r.first&&Ke(r,o-1).stateAfter,s=a?gt.fromSaved(r,a,o):new gt(r,Ge(r.mode),o);return r.iter(o,t,(function(n){bt(e,n.text,s);var r=s.line;n.stateAfter=r==t-1||r%5==0||r>=i.viewFrom&&rt.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}gt.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return null!=t&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},gt.prototype.baseToken=function(e){if(!this.baseTokens)return null;while(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}},gt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},gt.fromSaved=function(e,t,n){return t instanceof pt?new gt(e,Ze(e.mode,t.state),n,t.lookAhead):new gt(e,Ze(e.mode,t),n)},gt.prototype.save=function(e){var t=!1!==e?Ze(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new pt(t,this.maxLookAhead):t};var xt=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function kt(e,t,n,r){var i,o=e.doc,a=o.mode;t=ft(o,t);var s,l=Ke(o,t.line),u=yt(e,t.line,n),c=new Ye(l.text,e.options.tabSize,u);r&&(s=[]);while((r||c.pose.options.maxHighlightLength?(s=!1,a&&bt(e,t,r,f.pos),f.pos=t.length,l=null):l=St(_t(n,f,r.state,h),o),h){var d=h[0].name;d&&(l="m-"+(l?d+" "+l:d))}if(!s||c!=l){while(ua;--s){if(s<=o.first)return o.first;var l=Ke(o,s-1),u=l.stateAfter;if(u&&(!n||s+(u instanceof pt?u.lookAhead:0)<=o.modeFrontier))return s;var c=F(l.text,null,e.options.tabSize);(null==i||r>c)&&(i=s-1,r=c)}return i}function At(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=Ke(e,r).stateAfter;if(i&&(!(i instanceof pt)||r+i.lookAhead=t:o.to>t);(r||(r=[])).push(new jt(a,o.from,l?null:o.to))}}return r}function zt(e,t,n){var r;if(e)for(var i=0;i=t:o.to>t);if(s||o.from==t&&"bookmark"==a.type&&(!n||o.marker.insertLeft)){var l=null==o.from||(a.inclusiveLeft?o.from<=t:o.from0&&s)for(var w=0;w0)){var c=[l,1],f=ot(u.from,s.from),h=ot(u.to,s.to);(f<0||!a.inclusiveLeft&&!f)&&c.push({from:u.from,to:s.from}),(h>0||!a.inclusiveRight&&!h)&&c.push({from:s.to,to:u.to}),i.splice.apply(i,c),l+=c.length-3}}return i}function Ut(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!n||qt(n,o.marker)<0)&&(n=o.marker)}return n}function Kt(e,t,n,r,i){var o=Ke(e,t),a=Ot&&o.markedSpans;if(a)for(var s=0;s=0&&f<=0||c<=0&&f>=0)&&(c<=0&&(l.marker.inclusiveRight&&i.inclusiveLeft?ot(u.to,n)>=0:ot(u.to,n)>0)||c>=0&&(l.marker.inclusiveRight&&i.inclusiveLeft?ot(u.from,r)<=0:ot(u.from,r)<0)))return!0}}}function Xt(e){var t;while(t=Vt(e))e=t.find(-1,!0).line;return e}function Jt(e){var t;while(t=Gt(e))e=t.find(1,!0).line;return e}function Qt(e){var t,n;while(t=Gt(e))e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function en(e,t){var n=Ke(e,t),r=Xt(n);return n==r?t:et(r)}function tn(e,t){if(t>e.lastLine())return t;var n,r=Ke(e,t);if(!nn(e,r))return t;while(n=Gt(r))r=n.find(1,!0).line;return et(r)+1}function nn(e,t){var n=Ot&&t.markedSpans;if(n)for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=n,t.maxLine=e)}))}var ln=function(e,t,n){this.text=e,Ht(this,t),this.height=n?n(this):1};function un(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),null!=e.order&&(e.order=null),Ut(e),Ht(e,n);var i=r?r(e):1;i!=e.height&&Qe(e,i)}function cn(e){e.parent=null,Ut(e)}ln.prototype.lineNo=function(){return et(this)},_e(ln);var fn={},hn={};function dn(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?hn:fn;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function pn(e,t){var n=T("span",null,null,l?"padding-right: .1px":null),r={pre:T("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 o=i?t.rest[i-1]:t.line,a=void 0;r.pos=0,r.addToken=mn,je(e.display.measure)&&(a=he(o,e.doc.direction))&&(r.addToken=yn(r.addToken,a)),r.map=[];var s=t!=e.display.externalMeasured&&et(o);wn(o,r,vt(e,o,s)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=R(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=R(o.styleClasses.textClass,r.textClass||""))),0==r.map.length&&r.map.push(0,0,r.content.appendChild(Me(e.display.measure))),0==i?(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(l){var u=r.content.lastChild;(/\bcm-tab\b/.test(u.className)||u.querySelector&&u.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return ve(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=R(r.pre.className,r.textClass||"")),r}function gn(e){var t=O("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function mn(e,t,n,r,i,o,l){if(t){var u,c=e.splitSpaces?vn(t,e.trailingSpace):t,f=e.cm.state.specialChars,h=!1;if(f.test(t)){u=document.createDocumentFragment();var d=0;while(1){f.lastIndex=d;var p=f.exec(t),g=p?p.index-d:t.length-d;if(g){var m=document.createTextNode(c.slice(d,d+g));a&&s<9?u.appendChild(O("span",[m])):u.appendChild(m),e.map.push(e.pos,e.pos+g,m),e.col+=g,e.pos+=g}if(!p)break;d+=g+1;var v=void 0;if("\t"==p[0]){var y=e.cm.options.tabSize,b=y-e.col%y;v=u.appendChild(O("span",G(b),"cm-tab")),v.setAttribute("role","presentation"),v.setAttribute("cm-text","\t"),e.col+=b}else"\r"==p[0]||"\n"==p[0]?(v=u.appendChild(O("span","\r"==p[0]?"␍":"␤","cm-invalidchar")),v.setAttribute("cm-text",p[0]),e.col+=1):(v=e.cm.options.specialCharPlaceholder(p[0]),v.setAttribute("cm-text",p[0]),a&&s<9?u.appendChild(O("span",[v])):u.appendChild(v),e.col+=1);e.map.push(e.pos,e.pos+1,v),e.pos++}}else e.col+=t.length,u=document.createTextNode(c),e.map.push(e.pos,e.pos+t.length,u),a&&s<9&&(h=!0),e.pos+=t.length;if(e.trailingSpace=32==c.charCodeAt(t.length-1),n||r||i||h||o||l){var w=n||"";r&&(w+=r),i&&(w+=i);var _=O("span",[u],w,o);if(l)for(var x in l)l.hasOwnProperty(x)&&"style"!=x&&"class"!=x&&_.setAttribute(x,l[x]);return e.content.appendChild(_)}e.content.appendChild(u)}}function vn(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;iu&&f.from<=u)break;if(f.to>=c)return e(n,r,i,o,a,s,l);e(n,r.slice(0,f.to-u),i,o,null,s,l),o=null,r=r.slice(f.to-u),u=f.to}}}function bn(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 wn(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(r)for(var a,s,l,u,c,f,h,d=i.length,p=0,g=1,m="",v=0;;){if(v==p){l=u=c=s="",h=null,f=null,v=1/0;for(var y=[],b=void 0,w=0;wp||x.collapsed&&_.to==p&&_.from==p)){if(null!=_.to&&_.to!=p&&v>_.to&&(v=_.to,u=""),x.className&&(l+=" "+x.className),x.css&&(s=(s?s+";":"")+x.css),x.startStyle&&_.from==p&&(c+=" "+x.startStyle),x.endStyle&&_.to==v&&(b||(b=[])).push(x.endStyle,_.to),x.title&&((h||(h={})).title=x.title),x.attributes)for(var k in x.attributes)(h||(h={}))[k]=x.attributes[k];x.collapsed&&(!f||qt(f.marker,x)<0)&&(f=_)}else _.from>p&&v>_.from&&(v=_.from)}if(b)for(var S=0;S=d)break;var E=Math.min(d,v);while(1){if(m){var A=p+m.length;if(!f){var L=A>E?m.slice(0,E-p):m;t.addToken(t,L,a?a+l:l,c,p+L.length==v?u:"",s,h)}if(A>=E){m=m.slice(E-p),p=E;break}p=A,c=""}m=i.slice(o,o=n[g++]),a=dn(n[g++],t.cm.options)}}else for(var O=1;O2&&o.push((l.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function Xn(e,t,n){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};for(var r=0;rn)return{map:e.measure.maps[i],cache:e.measure.caches[i],before:!0}}function Jn(e,t){t=Xt(t);var n=et(t),r=e.display.externalMeasured=new _n(e.doc,t,n);r.lineN=n;var i=r.built=pn(e,r);return r.text=i.pre,L(e.display.lineMeasure,i.pre),r}function Qn(e,t,n,r){return nr(e,tr(e,t),n,r)}function er(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(o=l-s,i=o-1,t>=l&&(a="right")),null!=i){if(r=e[u+2],s==l&&n==(r.insertLeft?"left":"right")&&(a=n),"left"==n&&0==i)while(u&&e[u-2]==e[u-3]&&e[u-1].insertLeft)r=e[2+(u-=3)],a="left";if("right"==n&&i==l-s)while(u=0;i--)if((n=e[i]).left!=n.right)break;return n}function sr(e,t,n,r){var i,o=or(t.map,n,r),l=o.node,u=o.start,c=o.end,f=o.collapse;if(3==l.nodeType){for(var h=0;h<4;h++){while(u&&oe(t.line.text.charAt(o.coverStart+u)))--u;while(o.coverStart+c0&&(f=r="right"),i=e.options.lineWrapping&&(d=l.getClientRects()).length>1?d["right"==r?d.length-1:0]:l.getBoundingClientRect()}if(a&&s<9&&!u&&(!i||!i.left&&!i.right)){var p=l.parentNode.getClientRects()[0];i=p?{left:p.left,right:p.left+Or(e.display),top:p.top,bottom:p.bottom}:ir}for(var g=i.top-t.rect.top,m=i.bottom-t.rect.top,v=(g+m)/2,y=t.view.measure.heights,b=0;b=r.text.length?(l=r.text.length,u="before"):l<=0&&(l=0,u="after"),!s)return a("before"==u?l-1:l,"before"==u);function c(e,t,n){var r=s[t],i=1==r.level;return a(n?e-1:e,i!=n)}var f=ce(s,l,u),h=ue,d=c(l,f,"before"==u);return null!=h&&(d.other=c(l,h,"before"!=u)),d}function br(e,t){var n=0;t=ft(e.doc,t),e.options.lineWrapping||(n=Or(e.display)*t.ch);var r=Ke(e.doc,t.line),i=on(r)+Wn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function wr(e,t,n,r,i){var o=it(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function _r(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return wr(r.first,0,null,-1,-1);var i=tt(r,n),o=r.first+r.size-1;if(i>o)return wr(r.first+r.size-1,Ke(r,o).text.length,null,1,1);t<0&&(t=0);for(var a=Ke(r,i);;){var s=Cr(e,a,i,t,n),l=Yt(a,s.ch+(s.xRel>0||s.outside>0?1:0));if(!l)return s;var u=l.find(1);if(u.line==i)return u;a=Ke(r,i=u.line)}}function xr(e,t,n,r){r-=pr(t);var i=t.text.length,o=se((function(t){return nr(e,n,t-1).bottom<=r}),i,0);return i=se((function(t){return nr(e,n,t).top>r}),o,i),{begin:o,end:i}}function kr(e,t,n,r){n||(n=tr(e,t));var i=gr(e,t,nr(e,n,r),"line").top;return xr(e,t,n,i)}function Sr(e,t,n,r){return!(e.bottom<=n)&&(e.top>n||(r?e.left:e.right)>t)}function Cr(e,t,n,r,i){i-=on(t);var o=tr(e,t),a=pr(t),s=0,l=t.text.length,u=!0,c=he(t,e.doc.direction);if(c){var f=(e.options.lineWrapping?Ar:Er)(e,t,n,o,c,r,i);u=1!=f.level,s=u?f.from:f.to-1,l=u?f.to:f.from-1}var h,d,p=null,g=null,m=se((function(t){var n=nr(e,o,t);return n.top+=a,n.bottom+=a,!!Sr(n,r,i,!1)&&(n.top<=i&&n.left<=r&&(p=t,g=n),!0)}),s,l),v=!1;if(g){var y=r-g.left=w.bottom?1:0}return m=ae(t.text,m,1),wr(n,m,d,v,r-h)}function Er(e,t,n,r,i,o,a){var s=se((function(s){var l=i[s],u=1!=l.level;return Sr(yr(e,it(n,u?l.to:l.from,u?"before":"after"),"line",t,r),o,a,!0)}),0,i.length-1),l=i[s];if(s>0){var u=1!=l.level,c=yr(e,it(n,u?l.from:l.to,u?"after":"before"),"line",t,r);Sr(c,o,a,!0)&&c.top>a&&(l=i[s-1])}return l}function Ar(e,t,n,r,i,o,a){var s=xr(e,t,r,a),l=s.begin,u=s.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var c=null,f=null,h=0;h=u||d.to<=l)){var p=1!=d.level,g=nr(e,r,p?Math.min(u,d.to)-1:Math.max(l,d.from)).right,m=gm)&&(c=d,f=m)}}return c||(c=i[i.length-1]),c.fromu&&(c={from:c.from,to:u,level:c.level}),c}function Lr(e){if(null!=e.cachedTextHeight)return e.cachedTextHeight;if(null==rr){rr=O("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)rr.appendChild(document.createTextNode("x")),rr.appendChild(O("br"));rr.appendChild(document.createTextNode("x"))}L(e.measure,rr);var n=rr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),A(e.measure),n||1}function Or(e){if(null!=e.cachedCharWidth)return e.cachedCharWidth;var t=O("span","xxxxxxxxxx"),n=O("pre",[t],"CodeMirror-line-like");L(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Tr(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,a=0;o;o=o.nextSibling,++a){var s=e.display.gutterSpecs[a].className;n[s]=o.offsetLeft+o.clientLeft+i,r[s]=o.clientWidth}return{fixedPos:Mr(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function Mr(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function jr(e){var t=Lr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Or(e.display)-3);return function(i){if(nn(e.doc,i))return 0;var o=0;if(i.widgets)for(var a=0;a0&&(l=Ke(e.doc,u.line).text).length==u.ch){var c=F(l,l.length,e.options.tabSize)-l.length;u=it(u.line,Math.max(0,Math.round((o-Zn(e.display).left)/Or(e.display))-c))}return u}function Nr(e,t){if(t>=e.display.viewTo)return null;if(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)Ot&&en(e.doc,t)i.viewFrom?Fr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)Fr(e);else if(t<=i.viewFrom){var o=Ir(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):Fr(e)}else if(n>=i.viewTo){var a=Ir(e,t,t,-1);a?(i.view=i.view.slice(0,a.index),i.viewTo=a.lineN):Fr(e)}else{var s=Ir(e,t,t,-1),l=Ir(e,n,n+r,1);s&&l?(i.view=i.view.slice(0,s.index).concat(xn(e,s.lineN,l.lineN)).concat(i.view.slice(l.index)),i.viewTo+=r):Fr(e)}var u=i.externalMeasured;u&&(n=i.lineN&&t=r.viewTo)){var o=r.view[Nr(e,t)];if(null!=o.node){var a=o.changes||(o.changes=[]);-1==B(a,n)&&a.push(n)}}}function Fr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Ir(e,t,n,r){var i,o=Nr(e,t),a=e.display.view;if(!Ot||n==e.doc.first+e.doc.size)return{index:o,lineN:n};for(var s=e.display.viewFrom,l=0;l0){if(o==a.length-1)return null;i=s+a[o].size-t,o++}else i=s-t;t+=i,n+=i}while(en(e.doc,n)!=n){if(o==(r<0?0:a.length-1))return null;n+=r*a[o-(r<0?1:0)].size,o+=r}return{index:o,lineN:n}}function Br(e,t,n){var r=e.display,i=r.view;0==i.length||t>=r.viewTo||n<=r.viewFrom?(r.view=xn(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=xn(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Nr(e,n)))),r.viewTo=n}function Ur(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||s.to().line0?t.blinker=setInterval((function(){e.hasFocus()||Xr(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"}),e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function Gr(e){e.state.focused||(e.display.input.focus(),Kr(e))}function Yr(e){e.state.delayingBlurEvent=!0,setTimeout((function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,Xr(e))}),100)}function Kr(e,t){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1),"nocursor"!=e.options.readOnly&&(e.state.focused||(ve(e,"focus",e,t),e.state.focused=!0,P(e.display.wrapper,"CodeMirror-focused"),e.curOp||e.display.selForContextMenu==e.doc.sel||(e.display.input.reset(),l&&setTimeout((function(){return e.display.input.reset(!0)}),20)),e.display.input.receivedFocus()),Vr(e))}function Xr(e,t){e.state.delayingBlurEvent||(e.state.focused&&(ve(e,"blur",e,t),e.state.focused=!1,E(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout((function(){e.state.focused||(e.display.shift=!1)}),150))}function Jr(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=0;r.005||h<-.005)&&(Qe(i.line,l),Qr(i.line),i.rest))for(var d=0;de.display.sizerWidth){var p=Math.ceil(u/Or(e.display));p>e.display.maxLineLength&&(e.display.maxLineLength=p,e.display.maxLine=i.line,e.display.maxLineChanged=!0)}}}}function Qr(e){if(e.widgets)for(var t=0;t=a&&(o=tt(t,on(Ke(t,l))-e.wrapper.clientHeight),a=l)}return{from:o,to:Math.max(a,o+1)}}function ti(e,t){if(!ye(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null;if(t.top+r.top<0?i=!0:t.bottom+r.top>(window.innerHeight||document.documentElement.clientHeight)&&(i=!1),null!=i&&!p){var o=O("div","​",null,"position: absolute;\n top: "+(t.top-n.viewOffset-Wn(e.display))+"px;\n height: "+(t.bottom-t.top+Vn(e)+n.barHeight)+"px;\n left: "+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(o),o.scrollIntoView(i),e.display.lineSpace.removeChild(o)}}}function ni(e,t,n,r){var i;null==r&&(r=0),e.options.lineWrapping||t!=n||(t=t.ch?it(t.line,"before"==t.sticky?t.ch-1:t.ch,"after"):t,n="before"==t.sticky?it(t.line,t.ch+1,"before"):t);for(var o=0;o<5;o++){var a=!1,s=yr(e,t),l=n&&n!=t?yr(e,n):s;i={left:Math.min(s.left,l.left),top:Math.min(s.top,l.top)-r,right:Math.max(s.left,l.left),bottom:Math.max(s.bottom,l.bottom)+r};var u=ii(e,i),c=e.doc.scrollTop,f=e.doc.scrollLeft;if(null!=u.scrollTop&&(fi(e,u.scrollTop),Math.abs(e.doc.scrollTop-c)>1&&(a=!0)),null!=u.scrollLeft&&(di(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-f)>1&&(a=!0)),!a)break}return i}function ri(e,t){var n=ii(e,t);null!=n.scrollTop&&fi(e,n.scrollTop),null!=n.scrollLeft&&di(e,n.scrollLeft)}function ii(e,t){var n=e.display,r=Lr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&null!=e.curOp.scrollTop?e.curOp.scrollTop:n.scroller.scrollTop,o=Yn(e),a={};t.bottom-t.top>o&&(t.bottom=t.top+o);var s=e.doc.height+qn(n),l=t.tops-r;if(t.topi+o){var c=Math.min(t.top,(u?s:t.bottom)-o);c!=i&&(a.scrollTop=c)}var f=e.curOp&&null!=e.curOp.scrollLeft?e.curOp.scrollLeft:n.scroller.scrollLeft,h=Gn(e)-(e.options.fixedGutter?n.gutters.offsetWidth:0),d=t.right-t.left>h;return d&&(t.right=t.left+h),t.left<10?a.scrollLeft=0:t.lefth+f-3&&(a.scrollLeft=t.right+(d?0:10)-h),a}function oi(e,t){null!=t&&(ui(e),e.curOp.scrollTop=(null==e.curOp.scrollTop?e.doc.scrollTop:e.curOp.scrollTop)+t)}function ai(e){ui(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function si(e,t,n){null==t&&null==n||ui(e),null!=t&&(e.curOp.scrollLeft=t),null!=n&&(e.curOp.scrollTop=n)}function li(e,t){ui(e),e.curOp.scrollToPos=t}function ui(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=br(e,t.from),r=br(e,t.to);ci(e,n,r,t.margin)}}function ci(e,t,n,r){var i=ii(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});si(e,i.scrollLeft,i.scrollTop)}function fi(e,t){Math.abs(e.doc.scrollTop-t)<2||(n||Hi(e,{top:t}),hi(e,t,!0),n&&Hi(e),Ri(e,100))}function hi(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 di(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,Zi(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function pi(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+qn(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+Vn(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var gi=function(e,t,n){this.cm=n;var r=this.vert=O("div",[O("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=O("div",[O("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),pe(r,"scroll",(function(){r.clientHeight&&t(r.scrollTop,"vertical")})),pe(i,"scroll",(function(){i.clientWidth&&t(i.scrollLeft,"horizontal")})),this.checkedZeroWidth=!1,a&&s<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};gi.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.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 o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(0==r&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},gi.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},gi.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},gi.prototype.zeroWidthHack=function(){var e=y&&!d?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.pointerEvents=this.vert.style.pointerEvents="none",this.disableHoriz=new I,this.disableVert=new I},gi.prototype.enableZeroWidthBar=function(e,t,n){function r(){var i=e.getBoundingClientRect(),o="vert"==n?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.pointerEvents="none":t.set(1e3,r)}e.style.pointerEvents="auto",t.set(1e3,r)},gi.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var mi=function(){};function vi(e,t){t||(t=pi(e));var n=e.display.barWidth,r=e.display.barHeight;yi(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&Jr(e),yi(e,pi(e)),n=e.display.barWidth,r=e.display.barHeight}function yi(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=""}mi.prototype.update=function(){return{bottom:0,right:0}},mi.prototype.setScrollLeft=function(){},mi.prototype.setScrollTop=function(){},mi.prototype.clear=function(){};var bi={native:gi,null:mi};function wi(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&E(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new bi[e.options.scrollbarStyle]((function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),pe(t,"mousedown",(function(){e.state.focused&&setTimeout((function(){return e.display.input.focus()}),0)})),t.setAttribute("cm-not-content","true")}),(function(t,n){"horizontal"==n?di(e,t):fi(e,t)}),e),e.display.scrollbars.addClass&&P(e.display.wrapper,e.display.scrollbars.addClass)}var _i=0;function xi(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:++_i},Sn(e.curOp)}function ki(e){var t=e.curOp;t&&En(t,(function(e){for(var t=0;t=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new Di(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Ei(e){e.updatedDisplay=e.mustUpdate&&Bi(e.cm,e.update)}function Ai(e){var t=e.cm,n=t.display;e.updatedDisplay&&Jr(t),e.barMeasure=pi(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=Qn(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+Vn(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-Gn(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function Li(e){var t=e.cm;null!=e.adjustWidthTo&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=yt(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),(function(o){if(r.line>=e.display.viewFrom){var a=o.styles,s=o.text.length>e.options.maxHighlightLength?Ze(t.mode,r.state):null,l=mt(e,o,r,!0);s&&(r.state=s),o.styles=l.styles;var u=o.styleClasses,c=l.classes;c?o.styleClasses=c:u&&(o.styleClasses=null);for(var f=!a||a.length!=o.styles.length||u!=c&&(!u||!c||u.bgClass!=c.bgClass||u.textClass!=c.textClass),h=0;!f&&hn)return Ri(e,e.options.workDelay),!0})),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&Ti(e,(function(){for(var t=0;t=n.viewFrom&&t.visible.to<=n.viewTo&&(null==n.updateLineNumbers||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&0==Ur(e))return!1;Vi(e)&&(Fr(e),t.dims=Tr(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),a=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFroma&&n.viewTo-a<20&&(a=Math.min(i,n.viewTo)),Ot&&(o=en(e.doc,o),a=tn(e.doc,a));var s=o!=n.viewFrom||a!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;Br(e,o,a),n.viewOffset=on(Ke(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var l=Ur(e);if(!s&&0==l&&!t.force&&n.renderedView==n.view&&(null==n.updateLineNumbers||n.updateLineNumbers>=n.viewTo))return!1;var u=Fi(e);return l>4&&(n.lineDiv.style.display="none"),$i(e,n.updateLineNumbers,t.dims),l>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,Ii(u),A(n.cursorDiv),A(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,s&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,Ri(e,400)),n.updateLineNumbers=null,!0}function Ui(e,t){for(var n=t.viewport,r=!0;;r=!1){if(r&&e.options.lineWrapping&&t.oldDisplayWidth!=Gn(e))r&&(t.visible=ei(e.display,e.doc,n));else if(n&&null!=n.top&&(n={top:Math.min(e.doc.height+qn(e.display)-Yn(e),n.top)}),t.visible=ei(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break;if(!Bi(e,t))break;Jr(e);var i=pi(e);Hr(e),vi(e,i),qi(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 Hi(e,t){var n=new Di(e,t);if(Bi(e,n)){Jr(e),Ui(e,n);var r=pi(e);Hr(e),vi(e,r),qi(e,r),n.finish()}}function $i(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,a=o.firstChild;function s(t){var n=t.nextSibling;return l&&y&&e.display.currentWheelTarget==t?t.style.display="none":t.parentNode.removeChild(t),n}for(var u=r.view,c=r.viewFrom,f=0;f-1&&(d=!1),Tn(e,h,c,n)),d&&(A(h.lineNumber),h.lineNumber.appendChild(document.createTextNode(rt(e.options,c)))),a=h.node.nextSibling}else{var p=Fn(e,h,c,n);o.insertBefore(p,a)}c+=h.size}while(a)a=s(a)}function Wi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px"}function qi(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+Vn(e)+"px"}function Zi(e){var t=e.display,n=t.view;if(t.alignWidgets||t.gutters.firstChild&&e.options.fixedGutter){for(var r=Mr(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",a=0;as.clientWidth,c=s.scrollHeight>s.clientHeight;if(i&&u||o&&c){if(o&&y&&l)e:for(var h=t.target,d=a.view;h!=s;h=h.parentNode)for(var p=0;p=0&&ot(e,r.to())<=0)return n}return-1};var io=function(e,t){this.anchor=e,this.head=t};function oo(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort((function(e,t){return ot(e.from(),t.from())})),n=B(t,i);for(var o=1;o0:l>=0){var u=ut(s.from(),a.from()),c=lt(s.to(),a.to()),f=s.empty()?a.from()==a.head:s.from()==s.head;o<=n&&--n,t.splice(--o,2,new io(f?c:u,f?u:c))}}return new ro(t,n)}function ao(e,t){return new ro([new io(e,t||e)],0)}function so(e){return e.text?it(e.from.line+e.text.length-1,Y(e.text).length+(1==e.text.length?e.from.ch:0)):e.to}function lo(e,t){if(ot(e,t.from)<0)return e;if(ot(e,t.to)<=0)return so(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+=so(t).ch-t.to.ch),it(n,r)}function uo(e,t){for(var n=[],r=0;r1&&e.remove(s.line+1,p-1),e.insert(s.line+1,v)}Ln(e,"change",e,t)}function vo(e,t,n){function r(e,i,o){if(e.linked)for(var a=0;a1&&!e.done[e.done.length-2].ranges?(e.done.pop(),Y(e.done)):void 0}function Co(e,t,n,r){var i=e.history;i.undone.length=0;var o,a,s=+new Date;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&("+"==t.origin.charAt(0)&&i.lastModTime>s-(e.cm?e.cm.options.historyEventDelay:500)||"*"==t.origin.charAt(0)))&&(o=So(i,i.lastOp==r)))a=Y(o.changes),0==ot(t.from,t.to)&&0==ot(t.from,a.to)?a.to=so(t):o.changes.push(xo(e,t));else{var l=Y(i.done);l&&l.ranges||Lo(e.sel,i.done),o={changes:[xo(e,t)],generation:i.generation},i.done.push(o);while(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=s,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||ve(e,"historyAdded")}function Eo(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 Ao(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||Eo(e,o,Y(i.done),t))?i.done[i.done.length-1]=t:Lo(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&!1!==r.clearRedo&&ko(i.undone)}function Lo(e,t){var n=Y(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Oo(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),(function(n){n.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=n.markedSpans),++o}))}function To(e){if(!e)return null;for(var t,n=0;n-1&&(Y(s)[f]=u[f],delete u[f])}}}return r}function Ro(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ot(t,i)<0;o!=ot(n,i)<0?(i=t,t=n):o!=ot(t,n)<0&&(t=n)}return new io(i,t)}return new io(n||t,t)}function No(e,t,n,r,i){null==i&&(i=e.cm&&(e.cm.display.shift||e.extend)),Uo(e,new ro([Ro(e.sel.primary(),t,n,i)],0),r)}function Do(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o=t.ch:s.to>t.ch))){if(i&&(ve(l,"beforeCursorEnter"),l.explicitlyCleared)){if(o.markedSpans){--a;continue}break}if(!l.atomic)continue;if(n){var f=l.find(r<0?1:-1),h=void 0;if((r<0?c:u)&&(f=Go(e,f,-r,f&&f.line==t.line?o:null)),f&&f.line==t.line&&(h=ot(f,n))&&(r<0?h<0:h>0))return Zo(e,f,t,r,i)}var d=l.find(r<0?-1:1);return(r<0?u:c)&&(d=Go(e,d,r,d.line==t.line?o:null)),d?Zo(e,d,t,r,i):null}}return t}function Vo(e,t,n,r,i){var o=r||1,a=Zo(e,t,n,o,i)||!i&&Zo(e,t,n,o,!0)||Zo(e,t,n,-o,i)||!i&&Zo(e,t,n,-o,!0);return a||(e.cantEdit=!0,it(e.first,0))}function Go(e,t,n,r){return n<0&&0==t.ch?t.line>e.first?ft(e,it(t.line-1)):null:n>0&&t.ch==(r||Ke(e,t.line)).text.length?t.line=0;--i)Jo(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else Jo(e,t)}}function Jo(e,t){if(1!=t.text.length||""!=t.text[0]||0!=ot(t.from,t.to)){var n=uo(e,t);Co(e,t,n,e.cm?e.cm.curOp.id:NaN),ta(e,t,n,Ft(e,t));var r=[];vo(e,(function(e,n){n||-1!=B(r,e.history)||(aa(e.history,t),r.push(e.history)),ta(e,t,null,Ft(e,t))}))}}function Qo(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!r||n){for(var i,o=e.history,a=e.sel,s="undo"==t?o.done:o.undone,l="undo"==t?o.undone:o.done,u=0;u=0;--d){var p=h(d);if(p)return p.v}}}}function ea(e,t){if(0!=t&&(e.first+=t,e.sel=new ro(K(e.sel.ranges,(function(e){return new io(it(e.anchor.line+t,e.anchor.ch),it(e.head.line+t,e.head.ch))})),e.sel.primIndex),e.cm)){Dr(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineo&&(t={from:t.from,to:it(o,Ke(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=Xe(e,t.from,t.to),n||(n=uo(e,t)),e.cm?na(e.cm,t,r):mo(e,t,r),Ho(e,n,$),e.cantEdit&&Vo(e,it(e.firstLine(),0))&&(e.cantEdit=!1)}}function na(e,t,n){var r=e.doc,i=e.display,o=t.from,a=t.to,s=!1,l=o.line;e.options.lineWrapping||(l=et(Xt(Ke(r,o.line))),r.iter(l,a.line+1,(function(e){if(e==i.maxLine)return s=!0,!0}))),r.sel.contains(t.from,t.to)>-1&&be(e),mo(r,t,n,jr(e)),e.options.lineWrapping||(r.iter(l,o.line+t.text.length,(function(e){var t=an(e);t>i.maxLineLength&&(i.maxLine=e,i.maxLineLength=t,i.maxLineChanged=!0,s=!1)})),s&&(e.curOp.updateMaxLine=!0)),At(r,o.line),Ri(e,400);var u=t.text.length-(a.line-o.line)-1;t.full?Dr(e):o.line!=a.line||1!=t.text.length||go(e.doc,t)?Dr(e,o.line,a.line+1,u):zr(e,o.line,"text");var c=we(e,"changes"),f=we(e,"change");if(f||c){var h={from:o,to:a,text:t.text,removed:t.removed,origin:t.origin};f&&Ln(e,"change",e,h),c&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(h)}e.display.selForContextMenu=null}function ra(e,t,n,r,i){var o;r||(r=n),ot(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),"string"==typeof t&&(t=e.splitLines(t)),Xo(e,{from:n,to:r,text:t,origin:i})}function ia(e,t,n,r){n1||!(this.children[0]instanceof la))){var s=[];this.collapse(s),this.children=[new la(s)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var a=i.lines.length%25+25,s=a;s10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;r0||0==a&&!1!==o.clearWhenEmpty)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=T("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(Kt(e,t.line,t,n,o)||t.line!=n.line&&Kt(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");Mt()}o.addToHistory&&Co(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var s,l=t.line,u=e.cm;if(e.iter(l,n.line+1,(function(e){u&&o.collapsed&&!u.options.lineWrapping&&Xt(e)==u.display.maxLine&&(s=!0),o.collapsed&&l!=t.line&&Qe(e,0),Nt(e,new jt(o,l==t.line?t.ch:null,l==n.line?n.ch:null)),++l})),o.collapsed&&e.iter(t.line,n.line+1,(function(t){nn(e,t)&&Qe(t,0)})),o.clearOnEnter&&pe(o,"beforeCursorEnter",(function(){return o.clear()})),o.readOnly&&(Tt(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++da,o.atomic=!0),u){if(s&&(u.curOp.updateMaxLine=!0),o.collapsed)Dr(u,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var c=t.line;c<=n.line;c++)zr(u,c,"text");o.atomic&&Wo(u.doc),Ln(u,"markerAdded",u,o)}return o}pa.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&xi(e),we(this,"clear")){var n=this.find();n&&Ln(this,"clear",n.from,n.to)}for(var r=null,i=null,o=0;oe.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=c,e.display.maxLineChanged=!0)}null!=r&&e&&this.collapsed&&Dr(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Wo(e.doc)),e&&Ln(e,"markerCleared",e,this,r,i),t&&ki(e),this.parent&&this.parent.clear()}},pa.prototype.find=function(e,t){var n,r;null==e&&"bookmark"==this.type&&(e=1);for(var i=0;i=0;l--)Xo(this,r[l]);s?Bo(this,s):this.cm&&ai(this.cm)})),undo:Pi((function(){Qo(this,"undo")})),redo:Pi((function(){Qo(this,"redo")})),undoSelection:Pi((function(){Qo(this,"undo",!0)})),redoSelection:Pi((function(){Qo(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=ft(this,e),t=ft(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,(function(o){var a=o.markedSpans;if(a)for(var s=0;s=l.to||null==l.from&&i!=e.line||null!=l.from&&i==t.line&&l.from>=t.ch||n&&!n(l.marker)||r.push(l.marker.parent||l.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-=o,++n})),ft(this,it(n,t))},indexFromPos:function(e){e=ft(this,e);var t=e.ch;if(e.linet&&(t=e.from),null!=e.to&&e.to-1)return t.state.draggingText(e),void setTimeout((function(){return t.display.input.focus()}),20);try{var f=e.dataTransfer.getData("Text");if(f){var h;if(t.state.draggingText&&!t.state.draggingText.copy&&(h=t.listSelections()),Ho(t.doc,ao(n,n)),h)for(var d=0;d=0;t--)ra(e.doc,"",r[t].from,r[t].to,"+delete");ai(e)}))}function Za(e,t,n){var r=ae(e.text,t+n,n);return r<0||r>e.text.length?null:r}function Va(e,t,n){var r=Za(e,t.ch,n);return null==r?null:new it(t.line,r,n<0?"after":"before")}function Ga(e,t,n,r,i){if(e){"rtl"==t.doc.direction&&(i=-i);var o=he(n,t.doc.direction);if(o){var a,s=i<0?Y(o):o[0],l=i<0==(1==s.level),u=l?"after":"before";if(s.level>0||"rtl"==t.doc.direction){var c=tr(t,n);a=i<0?n.text.length-1:0;var f=nr(t,c,a).top;a=se((function(e){return nr(t,c,e).top==f}),i<0==(1==s.level)?s.from:s.to-1,a),"before"==u&&(a=Za(n,a,1))}else a=i<0?s.to:s.from;return new it(r,a,u)}}return new it(r,i<0?n.text.length:0,i<0?"before":"after")}function Ya(e,t,n,r){var i=he(t,e.doc.direction);if(!i)return Va(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 o=ce(i,n.ch,n.sticky),a=i[o];if("ltr"==e.doc.direction&&a.level%2==0&&(r>0?a.to>n.ch:a.from=a.from&&h>=c.begin)){var d=f?"before":"after";return new it(n.line,h,d)}}var p=function(e,t,r){for(var o=function(e,t){return t?new it(n.line,l(e,1),"before"):new it(n.line,e,"after")};e>=0&&e0==(1!=a.level),u=s?r.begin:l(r.end,-1);if(a.from<=u&&u0?c.end:l(c.begin,-1);return null==m||r>0&&m==t.text.length||(g=p(r>0?0:i.length-1,r,u(m)),!g)?null:g}za.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},za.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},za.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},za.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},za["default"]=y?za.macDefault:za.pcDefault;var Ka={selectAll:Yo,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),$)},killLine:function(e){return qa(e,(function(t){if(t.empty()){var n=Ke(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new it(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),it(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var a=Ke(e.doc,i.line-1).text;a&&(i=new it(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+a.charAt(a.length-1),it(i.line-1,a.length-1),i,"+transpose"))}n.push(new io(i,i))}e.setSelections(n)}))},newlineAndIndent:function(e){return Ti(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;r-1&&(ot((i=s.ranges[i]).from(),t)<0||t.xRel>0)&&(ot(i.to(),t)>0||t.xRel<0)?_s(e,r,t,o):ks(e,r,t,o)}function _s(e,t,n,r){var i=e.display,o=!1,u=Mi(e,(function(t){l&&(i.scroller.draggable=!1),e.state.draggingText=!1,me(i.wrapper.ownerDocument,"mouseup",u),me(i.wrapper.ownerDocument,"mousemove",c),me(i.scroller,"dragstart",f),me(i.scroller,"drop",u),o||(xe(t),r.addNew||No(e.doc,n,null,null,r.extend),l&&!h||a&&9==s?setTimeout((function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()}),20):i.input.focus())})),c=function(e){o=o||Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)>=10},f=function(){return o=!0};l&&(i.scroller.draggable=!0),e.state.draggingText=u,u.copy=!r.moveOnDrag,i.scroller.dragDrop&&i.scroller.dragDrop(),pe(i.wrapper.ownerDocument,"mouseup",u),pe(i.wrapper.ownerDocument,"mousemove",c),pe(i.scroller,"dragstart",f),pe(i.scroller,"drop",u),Yr(e),setTimeout((function(){return i.input.focus()}),20)}function xs(e,t,n){if("char"==n)return new io(t,t);if("word"==n)return e.findWordAt(t);if("line"==n)return new io(it(t.line,0),ft(e.doc,it(t.line+1,0)));var r=n(e,t);return new io(r.from,r.to)}function ks(e,t,n,r){var i=e.display,o=e.doc;xe(t);var a,s,l=o.sel,u=l.ranges;if(r.addNew&&!r.extend?(s=o.sel.contains(n),a=s>-1?u[s]:new io(n,n)):(a=o.sel.primary(),s=o.sel.primIndex),"rectangle"==r.unit)r.addNew||(a=new io(n,n)),n=Rr(e,t,!0,!0),s=-1;else{var c=xs(e,n,r.unit);a=r.extend?Ro(a,c.anchor,c.head,r.extend):c}r.addNew?-1==s?(s=u.length,Uo(o,oo(e,u.concat([a]),s),{scroll:!1,origin:"*mouse"})):u.length>1&&u[s].empty()&&"char"==r.unit&&!r.extend?(Uo(o,oo(e,u.slice(0,s).concat(u.slice(s+1)),0),{scroll:!1,origin:"*mouse"}),l=o.sel):zo(o,s,a,W):(s=0,Uo(o,new ro([a],0),W),l=o.sel);var f=n;function h(t){if(0!=ot(f,t))if(f=t,"rectangle"==r.unit){for(var i=[],u=e.options.tabSize,c=F(Ke(o,n.line).text,n.ch,u),h=F(Ke(o,t.line).text,t.ch,u),d=Math.min(c,h),p=Math.max(c,h),g=Math.min(n.line,t.line),m=Math.min(e.lastLine(),Math.max(n.line,t.line));g<=m;g++){var v=Ke(o,g).text,y=Z(v,d,u);d==p?i.push(new io(it(g,y),it(g,y))):v.length>y&&i.push(new io(it(g,y),it(g,Z(v,p,u))))}i.length||i.push(new io(n,n)),Uo(o,oo(e,l.ranges.slice(0,s).concat(i),s),{origin:"*mouse",scroll:!1}),e.scrollIntoView(t)}else{var b,w=a,_=xs(e,t,r.unit),x=w.anchor;ot(_.anchor,x)>0?(b=_.head,x=ut(w.from(),_.anchor)):(b=_.anchor,x=lt(w.to(),_.head));var k=l.ranges.slice(0);k[s]=Ss(e,new io(ft(o,x),b)),Uo(o,oo(e,k,s),W)}}var d=i.wrapper.getBoundingClientRect(),p=0;function g(t){var n=++p,a=Rr(e,t,!0,"rectangle"==r.unit);if(a)if(0!=ot(a,f)){e.curOp.focus=j(),h(a);var s=ei(i,o);(a.line>=s.to||a.lined.bottom?20:0;l&&setTimeout(Mi(e,(function(){p==n&&(i.scroller.scrollTop+=l,g(t))})),50)}}function m(t){e.state.selectingText=!1,p=1/0,t&&(xe(t),i.input.focus()),me(i.wrapper.ownerDocument,"mousemove",v),me(i.wrapper.ownerDocument,"mouseup",y),o.history.lastSelOrigin=null}var v=Mi(e,(function(e){0!==e.buttons&&Ae(e)?g(e):m(e)})),y=Mi(e,m);e.state.selectingText=y,pe(i.wrapper.ownerDocument,"mousemove",v),pe(i.wrapper.ownerDocument,"mouseup",y)}function Ss(e,t){var n=t.anchor,r=t.head,i=Ke(e.doc,n.line);if(0==ot(n,r)&&n.sticky==r.sticky)return t;var o=he(i);if(!o)return t;var a=ce(o,n.ch,n.sticky),s=o[a];if(s.from!=n.ch&&s.to!=n.ch)return t;var l,u=a+(s.from==n.ch==(1!=s.level)?0:1);if(0==u||u==o.length)return t;if(r.line!=n.line)l=(r.line-n.line)*("ltr"==e.doc.direction?1:-1)>0;else{var c=ce(o,r.ch,r.sticky),f=c-a||(r.ch-n.ch)*(1==s.level?-1:1);l=c==u-1||c==u?f<0:f>0}var h=o[u+(l?-1:0)],d=l==(1==h.level),p=d?h.from:h.to,g=d?"after":"before";return n.ch==p&&n.sticky==g?t:new io(new it(n.line,p,g),r)}function Cs(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch(h){return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&xe(t);var a=e.display,s=a.lineDiv.getBoundingClientRect();if(o>s.bottom||!we(e,n))return Se(t);o-=s.top-a.viewOffset;for(var l=0;l=i){var c=tt(e.doc,o),f=e.display.gutterSpecs[l];return ve(e,n,e,c,f.className,t),Se(t)}}}function Es(e,t){return Cs(e,t,"gutterClick",!0)}function As(e,t){$n(e.display,t)||Ls(e,t)||ye(e,t,"contextmenu")||k||e.display.input.onContextMenu(t)}function Ls(e,t){return!!we(e,"gutterContextMenu")&&Cs(e,t,"gutterContextMenu",!1)}function Os(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),fr(e)}gs.prototype.compare=function(e,t,n){return this.time+ps>e&&0==ot(t,this.pos)&&n==this.button};var Ts={toString:function(){return"CodeMirror.Init"}},Ms={},js={};function Ps(e){var t=e.optionHandlers;function n(n,r,i,o){e.defaults[n]=r,i&&(t[n]=o?function(e,t,n){n!=Ts&&i(e,t,n)}:i)}e.defineOption=n,e.Init=Ts,n("value","",(function(e,t){return e.setValue(t)}),!0),n("mode",null,(function(e,t){e.doc.modeOption=t,ho(e)}),!0),n("indentUnit",2,ho,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,(function(e){po(e),fr(e),Dr(e)}),!0),n("lineSeparator",null,(function(e,t){if(e.doc.lineSep=t,t){var n=[],r=e.doc.first;e.doc.iter((function(e){for(var i=0;;){var o=e.text.indexOf(t,i);if(-1==o)break;i=o+t.length,n.push(it(r,o))}r++}));for(var i=n.length-1;i>=0;i--)ra(e.doc,t,n[i],it(n[i].line,n[i].ch+t.length))}})),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b-\u200c\u200e\u200f\u2028\u2029\ufeff\ufff9-\ufffc]/g,(function(e,t,n){e.state.specialChars=new RegExp(t.source+(t.test("\t")?"":"|\t"),"g"),n!=Ts&&e.refresh()})),n("specialCharPlaceholder",gn,(function(e){return e.refresh()}),!0),n("electricChars",!0),n("inputStyle",v?"contenteditable":"textarea",(function(){throw new Error("inputStyle can not (yet) be changed in a running editor")}),!0),n("spellcheck",!1,(function(e,t){return e.getInputField().spellcheck=t}),!0),n("autocorrect",!1,(function(e,t){return e.getInputField().autocorrect=t}),!0),n("autocapitalize",!1,(function(e,t){return e.getInputField().autocapitalize=t}),!0),n("rtlMoveVisually",!w),n("wholeLineUpdateBefore",!0),n("theme","default",(function(e){Os(e),Ki(e)}),!0),n("keyMap","default",(function(e,t,n){var r=Wa(t),i=n!=Ts&&Wa(n);i&&i.detach&&i.detach(e,r),r.attach&&r.attach(e,i||null)})),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,Ns,!0),n("gutters",[],(function(e,t){e.display.gutterSpecs=Gi(t,e.options.lineNumbers),Ki(e)}),!0),n("fixedGutter",!0,(function(e,t){e.display.gutters.style.left=t?Mr(e.display)+"px":"0",e.refresh()}),!0),n("coverGutterNextToScrollbar",!1,(function(e){return vi(e)}),!0),n("scrollbarStyle","native",(function(e){wi(e),vi(e),e.display.scrollbars.setScrollTop(e.doc.scrollTop),e.display.scrollbars.setScrollLeft(e.doc.scrollLeft)}),!0),n("lineNumbers",!1,(function(e,t){e.display.gutterSpecs=Gi(e.options.gutters,t),Ki(e)}),!0),n("firstLineNumber",1,Ki,!0),n("lineNumberFormatter",(function(e){return e}),Ki,!0),n("showCursorWhenSelecting",!1,Hr,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,(function(e,t){"nocursor"==t&&(Xr(e),e.display.input.blur()),e.display.input.readOnlyChanged(t)})),n("screenReaderLabel",null,(function(e,t){t=""===t?null:t,e.display.input.screenReaderLabelChanged(t)})),n("disableInput",!1,(function(e,t){t||e.display.input.reset()}),!0),n("dragDrop",!0,Rs),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,Hr,!0),n("singleCursorHeightPerLine",!0,Hr,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,po,!0),n("addModeClass",!1,po,!0),n("pollInterval",100),n("undoDepth",200,(function(e,t){return e.doc.history.undoDepth=t})),n("historyEventDelay",1250),n("viewportMargin",10,(function(e){return e.refresh()}),!0),n("maxHighlightLength",1e4,po,!0),n("moveInputWithCursor",!0,(function(e,t){t||e.display.input.resetPosition()})),n("tabindex",null,(function(e,t){return e.display.input.getField().tabIndex=t||""})),n("autofocus",null),n("direction","ltr",(function(e,t){return e.doc.setDirection(t)}),!0),n("phrases",null)}function Rs(e,t,n){var r=n&&n!=Ts;if(!t!=!r){var i=e.display.dragFunctions,o=t?pe:me;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function Ns(e){e.options.lineWrapping?(P(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(E(e.display.wrapper,"CodeMirror-wrap"),sn(e)),Pr(e),Dr(e),fr(e),setTimeout((function(){return vi(e)}),100)}function Ds(e,t){var n=this;if(!(this instanceof Ds))return new Ds(e,t);this.options=t=t?z(t):{},z(Ms,t,!1);var r=t.value;"string"==typeof r?r=new xa(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Ds.inputStyles[t.inputStyle](this),o=this.display=new Xi(e,r,i,t);for(var u in o.wrapper.CodeMirror=this,Os(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),wi(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 I,keySeq:null,specialChars:null},t.autofocus&&!v&&o.input.focus(),a&&s<11&&setTimeout((function(){return n.display.input.reset(!0)}),20),zs(this),Ta(),xi(this),this.curOp.forceUpdate=!0,yo(this,r),t.autofocus&&!v||this.hasFocus()?setTimeout((function(){n.hasFocus()&&!n.state.focused&&Kr(n)}),20):Xr(this),js)js.hasOwnProperty(u)&&js[u](this,t[u],Ts);Vi(this),t.finishInit&&t.finishInit(this);for(var c=0;c400}pe(t.scroller,"touchstart",(function(i){if(!ye(e,i)&&!o(i)&&!Es(e,i)){t.input.ensurePolled(),clearTimeout(n);var a=+new Date;t.activeTouch={start:a,moved:!1,prev:a-r.end<=300?r:null},1==i.touches.length&&(t.activeTouch.left=i.touches[0].pageX,t.activeTouch.top=i.touches[0].pageY)}})),pe(t.scroller,"touchmove",(function(){t.activeTouch&&(t.activeTouch.moved=!0)})),pe(t.scroller,"touchend",(function(n){var r=t.activeTouch;if(r&&!$n(t,n)&&null!=r.left&&!r.moved&&new Date-r.start<300){var o,a=e.coordsChar(t.activeTouch,"page");o=!r.prev||l(r,r.prev)?new io(a,a):!r.prev.prev||l(r,r.prev.prev)?e.findWordAt(a):new io(it(a.line,0),ft(e.doc,it(a.line+1,0))),e.setSelection(o.anchor,o.head),e.focus(),xe(n)}i()})),pe(t.scroller,"touchcancel",i),pe(t.scroller,"scroll",(function(){t.scroller.clientHeight&&(fi(e,t.scroller.scrollTop),di(e,t.scroller.scrollLeft,!0),ve(e,"scroll",e))})),pe(t.scroller,"mousewheel",(function(t){return no(e,t)})),pe(t.scroller,"DOMMouseScroll",(function(t){return no(e,t)})),pe(t.wrapper,"scroll",(function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0})),t.dragFunctions={enter:function(t){ye(e,t)||Ce(t)},over:function(t){ye(e,t)||(Ea(e,t),Ce(t))},start:function(t){return Ca(e,t)},drop:Mi(e,Sa),leave:function(t){ye(e,t)||Aa(e)}};var u=t.input.getField();pe(u,"keyup",(function(t){return cs.call(e,t)})),pe(u,"keydown",Mi(e,ls)),pe(u,"keypress",Mi(e,fs)),pe(u,"focus",(function(t){return Kr(e,t)})),pe(u,"blur",(function(t){return Xr(e,t)}))}Ds.defaults=Ms,Ds.optionHandlers=js;var Fs=[];function Is(e,t,n,r){var i,o=e.doc;null==n&&(n="add"),"smart"==n&&(o.mode.indent?i=yt(e,t).state:n="prev");var a=e.options.tabSize,s=Ke(o,t),l=F(s.text,null,a);s.stateAfter&&(s.stateAfter=null);var u,c=s.text.match(/^\s*/)[0];if(r||/\S/.test(s.text)){if("smart"==n&&(u=o.mode.indent(i,s.text.slice(c.length),s.text),u==H||u>150)){if(!r)return;n="prev"}}else u=0,n="not";"prev"==n?u=t>o.first?F(Ke(o,t-1).text,null,a):0:"add"==n?u=l+e.options.indentUnit:"subtract"==n?u=l-e.options.indentUnit:"number"==typeof n&&(u=l+n),u=Math.max(0,u);var f="",h=0;if(e.options.indentWithTabs)for(var d=Math.floor(u/a);d;--d)h+=a,f+="\t";if(ha,l=Pe(t),u=null;if(s&&r.ranges.length>1)if(Bs&&Bs.text.join("\n")==t){if(r.ranges.length%Bs.text.length==0){u=[];for(var c=0;c=0;h--){var d=r.ranges[h],p=d.from(),g=d.to();d.empty()&&(n&&n>0?p=it(p.line,p.ch-n):e.state.overwrite&&!s?g=it(g.line,Math.min(Ke(o,g.line).text.length,g.ch+Y(l).length)):s&&Bs&&Bs.lineWise&&Bs.text.join("\n")==l.join("\n")&&(p=g=it(p.line,0)));var m={from:p,to:g,text:u?u[h%u.length]:l,origin:i||(s?"paste":e.state.cutIncoming>a?"cut":"+input")};Xo(e.doc,m),Ln(e,"inputRead",e,m)}t&&!s&&Ws(e,t),ai(e),e.curOp.updateInput<2&&(e.curOp.updateInput=f),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function $s(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),t.isReadOnly()||t.options.disableInput||Ti(t,(function(){return Hs(t,n,0,null,"paste")})),!0}function Ws(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 o=e.getModeAt(i.head),a=!1;if(o.electricChars){for(var s=0;s-1){a=Is(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(Ke(e.doc,i.head.line).text.slice(0,i.head.ch))&&(a=Is(e,i.head.line,"smart"));a&&Ln(e,"electricInput",e,i.head.line)}}}function qs(e){for(var t=[],n=[],r=0;rn&&(Is(this,i.head.line,e,!0),n=i.head.line,r==this.doc.sel.primIndex&&ai(this));else{var o=i.from(),a=i.to(),s=Math.max(n,o.line);n=Math.min(this.lastLine(),a.line-(a.ch?0:1))+1;for(var l=s;l0&&zo(this.doc,r,new io(o,u[r].to()),$)}}})),getTokenAt:function(e,t){return kt(this,e,t)},getLineTokens:function(e,t){return kt(this,it(e),t,!0)},getTokenTypeAt:function(e){e=ft(this.doc,e);var t,n=vt(this,Ke(this.doc,e.line)),r=0,i=(n.length-1)/2,o=e.ch;if(0==o)t=n[2];else for(;;){var a=r+i>>1;if((a?n[2*a-1]:0)>=o)i=a;else{if(!(n[2*a+1]o&&(e=o,i=!0),r=Ke(this.doc,e)}else r=e;return gr(this,r,{top:0,left:0},t||"page",n||i).top+(i?this.doc.height-on(r):0)},defaultTextHeight:function(){return Lr(this.display)},defaultCharWidth:function(){return Or(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(e,t,n,r,i){var o=this.display;e=yr(this,ft(this.doc,e));var a=e.bottom,s=e.left;if(t.style.position="absolute",t.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(t),o.sizer.appendChild(t),"over"==r)a=e.top;else if("above"==r||"near"==r){var l=Math.max(o.wrapper.clientHeight,this.doc.height),u=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);("above"==r||e.bottom+t.offsetHeight>l)&&e.top>t.offsetHeight?a=e.top-t.offsetHeight:e.bottom+t.offsetHeight<=l&&(a=e.bottom),s+t.offsetWidth>u&&(s=u-t.offsetWidth)}t.style.top=a+"px",t.style.left=t.style.right="","right"==i?(s=o.sizer.clientWidth-t.offsetWidth,t.style.right="0px"):("left"==i?s=0:"middle"==i&&(s=(o.sizer.clientWidth-t.offsetWidth)/2),t.style.left=s+"px"),n&&ri(this,{left:s,top:a,right:s+t.offsetWidth,bottom:a+t.offsetHeight})},triggerOnKeyDown:ji(ls),triggerOnKeyPress:ji(fs),triggerOnKeyUp:cs,triggerOnMouseDown:ji(vs),execCommand:function(e){if(Ka.hasOwnProperty(e))return Ka[e].call(null,this)},triggerElectric:ji((function(e){Ws(this,e)})),findPosH:function(e,t,n,r){var i=1;t<0&&(i=-1,t=-t);for(var o=ft(this.doc,e),a=0;a0&&s(n.charAt(r-1)))--r;while(i.5||this.options.lineWrapping)&&Pr(this),ve(this,"refresh",this)})),swapDoc:ji((function(e){var t=this.doc;return t.cm=null,this.state.selectingText&&this.state.selectingText(),yo(this,e),fr(this),this.display.input.reset(),si(this,e.scrollLeft,e.scrollTop),this.curOp.forceScroll=!0,Ln(this,"swapDoc",this,t),t})),phrase:function(e){var t=this.options.phrases;return t&&Object.prototype.hasOwnProperty.call(t,e)?t[e]:e},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}},_e(e),e.registerHelper=function(t,r,i){n.hasOwnProperty(t)||(n[t]=e[t]={_global:[]}),n[t][r]=i},e.registerGlobalHelper=function(t,r,i,o){e.registerHelper(t,r,o),n[t]._global.push({pred:i,val:o})}}function Ys(e,t,n,r,i){var o=t,a=n,s=Ke(e,t.line),l=i&&"rtl"==e.direction?-n:n;function u(){var n=t.line+l;return!(n=e.first+e.size)&&(t=new it(n,t.ch,t.sticky),s=Ke(e,n))}function c(o){var a;if("codepoint"==r){var c=s.text.charCodeAt(t.ch+(r>0?0:-1));a=isNaN(c)?null:new it(t.line,Math.max(0,Math.min(s.text.length,t.ch+n*(c>=55296&&c<56320?2:1))),-n)}else a=i?Ya(e.cm,s,t,n):Va(s,t,n);if(null==a){if(o||!u())return!1;t=Ga(i,e.cm,s,t.line,l)}else t=a;return!0}if("char"==r||"codepoint"==r)c();else if("column"==r)c(!0);else if("word"==r||"group"==r)for(var f=null,h="group"==r,d=e.cm&&e.cm.getHelper(t,"wordChars"),p=!0;;p=!1){if(n<0&&!c(!p))break;var g=s.text.charAt(t.ch)||"\n",m=ne(g,d)?"w":h&&"\n"==g?"n":!h||/\s/.test(g)?null:"p";if(!h||p||m||(m="s"),f&&f!=m){n<0&&(n=1,c(),t.sticky="after");break}if(m&&(f=m),n>0&&!c(!p))break}var v=Vo(e,t,o,a,!0);return at(o,v)&&(v.hitSide=!0),v}function Ks(e,t,n,r){var i,o,a=e.doc,s=t.left;if("page"==r){var l=Math.min(e.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight),u=Math.max(l-.5*Lr(e.display),3);i=(n>0?t.bottom:t.top)+n*u}else"line"==r&&(i=n>0?t.bottom+3:t.top-3);for(;;){if(o=_r(e,s,i),!o.outside)break;if(n<0?i<=0:i>=a.height){o.hitSide=!0;break}i+=5*n}return o}var Xs=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new I,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};function Js(e,t){var n=er(e,t.line);if(!n||n.hidden)return null;var r=Ke(e.doc,t.line),i=Xn(n,r,t.line),o=he(r,e.doc.direction),a="left";if(o){var s=ce(o,t.ch);a=s%2?"right":"left"}var l=or(i.map,t.ch,a);return l.offset="right"==l.collapse?l.end:l.start,l}function Qs(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function el(e,t){return t&&(e.bad=!0),e}function tl(e,t,n,r,i){var o="",a=!1,s=e.doc.lineSeparator(),l=!1;function u(e){return function(t){return t.id==e}}function c(){a&&(o+=s,l&&(o+=s),a=l=!1)}function f(e){e&&(c(),o+=e)}function h(t){if(1==t.nodeType){var n=t.getAttribute("cm-text");if(n)return void f(n);var o,d=t.getAttribute("cm-marker");if(d){var p=e.findMarks(it(r,0),it(i+1,0),u(+d));return void(p.length&&(o=p[0].find(0))&&f(Xe(e.doc,o.from,o.to).join(s)))}if("false"==t.getAttribute("contenteditable"))return;var g=/^(pre|div|p|li|table|br)$/i.test(t.nodeName);if(!/^br$/i.test(t.nodeName)&&0==t.textContent.length)return;g&&c();for(var m=0;m=t.display.viewTo||o.line=t.display.viewFrom&&Js(t,i)||{node:l[0].measure.map[2],offset:0},c=o.liner.firstLine()&&(a=it(a.line-1,Ke(r.doc,a.line-1).length)),s.ch==Ke(r.doc,s.line).text.length&&s.linei.viewTo-1)return!1;a.line==i.viewFrom||0==(e=Nr(r,a.line))?(t=et(i.view[0].line),n=i.view[0].node):(t=et(i.view[e].line),n=i.view[e-1].node.nextSibling);var l,u,c=Nr(r,s.line);if(c==i.view.length-1?(l=i.viewTo-1,u=i.lineDiv.lastChild):(l=et(i.view[c+1].line)-1,u=i.view[c+1].node.previousSibling),!n)return!1;var f=r.doc.splitLines(tl(r,n,u,t,l)),h=Xe(r.doc,it(t,0),it(l,Ke(r.doc,l).text.length));while(f.length>1&&h.length>1)if(Y(f)==Y(h))f.pop(),h.pop(),l--;else{if(f[0]!=h[0])break;f.shift(),h.shift(),t++}var d=0,p=0,g=f[0],m=h[0],v=Math.min(g.length,m.length);while(da.ch&&y.charCodeAt(y.length-p-1)==b.charCodeAt(b.length-p-1))d--,p++;f[f.length-1]=y.slice(0,y.length-p).replace(/^\u200b+/,""),f[0]=f[0].slice(d).replace(/\u200b+$/,"");var _=it(t,d),x=it(l,h.length?Y(h).length-p:0);return f.length>1||f[0]||ot(_,x)?(ra(r.doc,f,_,x,"+input"),!0):void 0},Xs.prototype.ensurePolled=function(){this.forceCompositionEnd()},Xs.prototype.reset=function(){this.forceCompositionEnd()},Xs.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Xs.prototype.readFromDOMSoon=function(){var e=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout((function(){if(e.readDOMTimeout=null,e.composing){if(!e.composing.done)return;e.composing=null}e.updateFromDOM()}),80))},Xs.prototype.updateFromDOM=function(){var e=this;!this.cm.isReadOnly()&&this.pollContent()||Ti(this.cm,(function(){return Dr(e.cm)}))},Xs.prototype.setUneditable=function(e){e.contentEditable="false"},Xs.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||Mi(this.cm,Hs)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},Xs.prototype.readOnlyChanged=function(e){this.div.contentEditable=String("nocursor"!=e)},Xs.prototype.onContextMenu=function(){},Xs.prototype.resetPosition=function(){},Xs.prototype.needsContentAttribute=!0;var il=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new I,this.hasSelection=!1,this.composing=null};function ol(e,t){if(t=t?z(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),null==t.autofocus){var n=j();t.autofocus=n==e||null!=e.getAttribute("autofocus")&&n==document.body}function r(){e.value=s.getValue()}var i;if(e.form&&(pe(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var a=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=a}}catch(l){}}t.finishInit=function(n){n.save=r,n.getTextArea=function(){return e},n.toTextArea=function(){n.toTextArea=isNaN,r(),e.parentNode.removeChild(n.getWrapperElement()),e.style.display="",e.form&&(me(e.form,"submit",r),t.leaveSubmitMethodAlone||"function"!=typeof e.form.submit||(e.form.submit=i))}},e.style.display="none";var s=Ds((function(t){return e.parentNode.insertBefore(t,e.nextSibling)}),t);return s}function al(e){e.off=me,e.on=pe,e.wheelEventPixels=to,e.Doc=xa,e.splitLines=Pe,e.countColumn=F,e.findColumn=Z,e.isWordChar=te,e.Pass=H,e.signal=ve,e.Line=ln,e.changeEnd=so,e.scrollbarModel=bi,e.Pos=it,e.cmpPos=ot,e.modes=Fe,e.mimeModes=Ie,e.resolveMode=He,e.getMode=$e,e.modeExtensions=We,e.extendMode=qe,e.copyState=Ze,e.startState=Ge,e.innerMode=Ve,e.commands=Ka,e.keyMap=za,e.keyName=$a,e.isModifierKey=Ua,e.lookupKey=Ba,e.normalizeKeyMap=Ia,e.StringStream=Ye,e.SharedTextMarker=ma,e.TextMarker=pa,e.LineWidget=ca,e.e_preventDefault=xe,e.e_stopPropagation=ke,e.e_stop=Ce,e.addClass=P,e.contains=M,e.rmClass=E,e.keyNames=Pa}il.prototype.init=function(e){var t=this,n=this,r=this.cm;this.createField(e);var i=this.textarea;function o(e){if(!ye(r,e)){if(r.somethingSelected())Us({lineWise:!1,text:r.getSelections()});else{if(!r.options.lineWiseCopyCut)return;var t=qs(r);Us({lineWise:!0,text:t.text}),"cut"==e.type?r.setSelections(t.ranges,null,$):(n.prevInput="",i.value=t.text.join("\n"),N(i))}"cut"==e.type&&(r.state.cutIncoming=+new Date)}}e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),g&&(i.style.width="0px"),pe(i,"input",(function(){a&&s>=9&&t.hasSelection&&(t.hasSelection=null),n.poll()})),pe(i,"paste",(function(e){ye(r,e)||$s(e,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())})),pe(i,"cut",o),pe(i,"copy",o),pe(e.scroller,"paste",(function(t){if(!$n(e,t)&&!ye(r,t)){if(!i.dispatchEvent)return r.state.pasteIncoming=+new Date,void n.focus();var o=new Event("paste");o.clipboardData=t.clipboardData,i.dispatchEvent(o)}})),pe(e.lineSpace,"selectstart",(function(t){$n(e,t)||xe(t)})),pe(i,"compositionstart",(function(){var e=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:e,range:r.markText(e,r.getCursor("to"),{className:"CodeMirror-composing"})}})),pe(i,"compositionend",(function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)}))},il.prototype.createField=function(e){this.wrapper=Vs(),this.textarea=this.wrapper.firstChild},il.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},il.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=$r(e);if(e.options.moveInputWithCursor){var i=yr(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),a=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+a.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+a.left-o.left))}return r},il.prototype.showSelection=function(e){var t=this.cm,n=t.display;L(n.cursorDiv,e.cursors),L(n.selectionDiv,e.selection),null!=e.teTop&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},il.prototype.reset=function(e){if(!this.contextMenuPending&&!this.composing){var t=this.cm;if(t.somethingSelected()){this.prevInput="";var n=t.getSelection();this.textarea.value=n,t.state.focused&&N(this.textarea),a&&s>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",a&&s>=9&&(this.hasSelection=null))}},il.prototype.getField=function(){return this.textarea},il.prototype.supportsTouch=function(){return!1},il.prototype.focus=function(){if("nocursor"!=this.cm.options.readOnly&&(!v||j()!=this.textarea))try{this.textarea.focus()}catch(e){}},il.prototype.blur=function(){this.textarea.blur()},il.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},il.prototype.receivedFocus=function(){this.slowPoll()},il.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,(function(){e.poll(),e.cm.state.focused&&e.slowPoll()}))},il.prototype.fastPoll=function(){var e=!1,t=this;function n(){var r=t.poll();r||e?(t.pollingFast=!1,t.slowPoll()):(e=!0,t.polling.set(60,n))}t.pollingFast=!0,t.polling.set(20,n)},il.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||!t.state.focused||Re(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(a&&s>=9&&this.hasSelection===i||y&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(8203!=o||r||(r="​"),8666==o)return this.reset(),this.cm.execCommand("undo")}var l=0,u=Math.min(r.length,i.length);while(l1e3||i.indexOf("\n")>-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},il.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},il.prototype.onKeyPress=function(){a&&s>=9&&(this.hasSelection=null),this.fastPoll()},il.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=Rr(n,e),u=r.scroller.scrollTop;if(o&&!f){var c=n.options.resetSelectionOnContextMenu;c&&-1==n.doc.sel.contains(o)&&Mi(n,Uo)(n.doc,ao(o),$);var h,d=i.style.cssText,p=t.wrapper.style.cssText,g=t.wrapper.offsetParent.getBoundingClientRect();if(t.wrapper.style.cssText="position: static",i.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(e.clientY-g.top-5)+"px; left: "+(e.clientX-g.left-5)+"px;\n z-index: 1000; background: "+(a?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);",l&&(h=window.scrollY),r.input.focus(),l&&window.scrollTo(null,h),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=y,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll),a&&s>=9&&v(),k){Ce(e);var m=function(){me(window,"mouseup",m),setTimeout(y,20)};pe(window,"mouseup",m)}else setTimeout(y,50)}function v(){if(null!=i.selectionStart){var e=n.somethingSelected(),o="​"+(e?i.value:"");i.value="⇚",i.value=o,t.prevInput=e?"":"​",i.selectionStart=1,i.selectionEnd=o.length,r.selForContextMenu=n.doc.sel}}function y(){if(t.contextMenuPending==y&&(t.contextMenuPending=!1,t.wrapper.style.cssText=p,i.style.cssText=d,a&&s<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=u),null!=i.selectionStart)){(!a||a&&s<9)&&v();var e=0,o=function(){r.selForContextMenu==n.doc.sel&&0==i.selectionStart&&i.selectionEnd>0&&"​"==t.prevInput?Mi(n,Yo)(n):e++<10?r.detectingSelectAll=setTimeout(o,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(o,200)}}},il.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled="nocursor"==e,this.textarea.readOnly=!!e},il.prototype.setUneditable=function(){},il.prototype.needsContentAttribute=!1,Ps(Ds),Gs(Ds);var sl="iter insert remove copy getEditor constructor".split(" ");for(var ll in xa.prototype)xa.prototype.hasOwnProperty(ll)&&B(sl,ll)<0&&(Ds.prototype[ll]=function(e){return function(){return e.apply(this.doc,arguments)}}(xa.prototype[ll]));return _e(xa),Ds.inputStyles={textarea:il,contenteditable:Xs},Ds.defineMode=function(e){Ds.defaults.mode||"null"==e||(Ds.defaults.mode=e),Be.apply(this,arguments)},Ds.defineMIME=Ue,Ds.defineMode("null",(function(){return{token:function(e){return e.skipToEnd()}}})),Ds.defineMIME("text/plain","null"),Ds.defineExtension=function(e,t){Ds.prototype[e]=t},Ds.defineDocExtension=function(e,t){xa.prototype[e]=t},Ds.fromTextArea=ol,al(Ds),Ds.version="5.58.1",Ds}))},"56ef":function(e,t,n){var r=n("d066"),i=n("241c"),o=n("7418"),a=n("825a");e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(a(e)),n=o.f;return n?t.concat(n(e)):t}},"585a":function(e,t,n){(function(t){var n="object"==typeof t&&t&&t.Object===Object&&t;e.exports=n}).call(this,n("c8ba"))},5899:function(e,t){e.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},"58a8":function(e,t,n){var r=n("1d80"),i=n("5899"),o="["+i+"]",a=RegExp("^"+o+o+"*"),s=RegExp(o+o+"*$"),l=function(e){return function(t){var n=String(r(t));return 1&e&&(n=n.replace(a,"")),2&e&&(n=n.replace(s,"")),n}};e.exports={start:l(1),end:l(2),trim:l(3)}},"5a34":function(e,t,n){var r=n("44e7");e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},"5c6c":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"5c99":function(e,t,n){var r=n("0fc5"),i=r("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[i]=!1,"/./"[e](t)}catch(r){}}return!1}},"5e1a":function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=n("8707").Buffer,o=n(2);function a(e,t,n){e.copy(t,n)}e.exports=function(){function e(){r(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";var t=this.head,n=""+t.data;while(t=t.next)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return i.alloc(0);if(1===this.length)return this.head.data;var t=i.allocUnsafe(e>>>0),n=this.head,r=0;while(n)a(n.data,t,r),r+=n.data.length,n=n.next;return t},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},"60da":function(e,t,n){"use strict";var r=n("83ab"),i=n("d039"),o=n("df75"),a=n("7418"),s=n("d1e7"),l=n("7b0b"),u=n("44ad"),c=Object.assign,f=Object.defineProperty;e.exports=!c||i((function(){if(r&&1!==c({b:1},c(f({},"a",{enumerable:!0,get:function(){f(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!=c({},e)[n]||o(c({},t)).join("")!=i}))?function(e,t){var n=l(e),i=arguments.length,c=1,f=a.f,h=s.f;while(i>c){var d,p=u(arguments[c++]),g=f?o(p).concat(f(p)):o(p),m=g.length,v=0;while(m>v)d=g[v++],r&&!h.call(p,d)||(n[d]=p[d])}return n}:c},6102:function(e,t,n){var r=n("e6fd"),i=n("21aa"),o=n("2d38");r||i(Object.prototype,"toString",o,{unsafe:!0})},"652b":function(e,t,n){"use strict";var r=n("2e6d");function i(e){if("function"!==typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;e((function(e){n.reason||(n.reason=new r(e),t(n.reason))}))}i.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},i.source=function(){var e,t=new i((function(t){e=t}));return{token:t,cancel:e}},e.exports=i},6547:function(e,t,n){var r=n("a691"),i=n("1d80"),o=function(e){return function(t,n){var o,a,s=String(i(t)),l=r(n),u=s.length;return l<0||l>=u?e?"":void 0:(o=s.charCodeAt(l),o<55296||o>56319||l+1===u||(a=s.charCodeAt(l+1))<56320||a>57343?e?s.charAt(l):o:e?s.slice(l,l+2):a-56320+(o-55296<<10)+65536)}};e.exports={codeAt:o(!1),charAt:o(!0)}},"65f0":function(e,t,n){var r=n("861d"),i=n("e8b5"),o=n("b622"),a=o("species");e.exports=function(e,t){var n;return i(e)&&(n=e.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[a],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},"679d":function(e,t,n){var r=n("70d0"),i=n("52c9"),o=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e])||o(i[e]):r[e]&&r[e][t]||i[e]&&i[e][t]}},6853:function(e,t,n){"use strict";var r=n("be7f"),i=15,o=852,a=592,s=0,l=1,u=2,c=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],f=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],h=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],d=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,n,p,g,m,v,y){var b,w,_,x,k,S,C,E,A,L=y.bits,O=0,T=0,M=0,j=0,P=0,R=0,N=0,D=0,z=0,F=0,I=null,B=0,U=new r.Buf16(i+1),H=new r.Buf16(i+1),$=null,W=0;for(O=0;O<=i;O++)U[O]=0;for(T=0;T=1;j--)if(0!==U[j])break;if(P>j&&(P=j),0===j)return g[m++]=20971520,g[m++]=20971520,y.bits=1,0;for(M=1;M0&&(e===s||1!==j))return-1;for(H[1]=0,O=1;Oo||e===u&&z>a)return 1;for(;;){C=O-N,v[T]S?(E=$[W+v[T]],A=I[B+v[T]]):(E=96,A=0),b=1<>N)+w]=C<<24|E<<16|A|0}while(0!==w);b=1<>=1;if(0!==b?(F&=b-1,F+=b):F=0,T++,0===--U[O]){if(O===j)break;O=t[n+v[T]]}if(O>P&&(F&x)!==_){0===N&&(N=P),k+=M,R=O-N,D=1<o||e===u&&z>a)return 1;_=F&x,g[_]=P<<24|R<<16|k-m|0}}return 0!==F&&(g[k+F]=O-N<<24|64<<16|0),y.bits=P,0}},"69f3":function(e,t,n){var r,i,o,a=n("7f9a"),s=n("da84"),l=n("861d"),u=n("9112"),c=n("5135"),f=n("f772"),h=n("d012"),d=s.WeakMap,p=function(e){return o(e)?i(e):r(e,{})},g=function(e){return function(t){var n;if(!l(t)||(n=i(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(a){var m=new d,v=m.get,y=m.has,b=m.set;r=function(e,t){return b.call(m,e,t),t},i=function(e){return v.call(m,e)||{}},o=function(e){return y.call(m,e)}}else{var w=f("state");h[w]=!0,r=function(e,t){return u(e,w,t),t},i=function(e){return c(e,w)?e[w]:{}},o=function(e){return c(e,w)}}e.exports={set:r,get:i,has:o,enforce:p,getterFor:g}},"6aa8":function(e,t,n){var r=n("8b4a"),i=n("30cb"),o=n("918f"),a=function(e){return function(t,n,a){var s,l=r(t),u=i(l.length),c=o(a,u);if(e&&n!=n){while(u>c)if(s=l[c++],s!=s)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},"6b75":function(e,t,n){"use strict";(function(e,r){var i=n("f654"),o=n("8936"),a=n("a177"),s=n("9e6e"),l=n("2ceb");for(var u in l)t[u]=l[u];t.NONE=0,t.DEFLATE=1,t.INFLATE=2,t.GZIP=3,t.GUNZIP=4,t.DEFLATERAW=5,t.INFLATERAW=6,t.UNZIP=7;var c=31,f=139;function h(e){if("number"!==typeof e||et.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=e,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}h.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,i(this.init_done,"close before init"),i(this.mode<=t.UNZIP),this.mode===t.DEFLATE||this.mode===t.GZIP||this.mode===t.DEFLATERAW?a.deflateEnd(this.strm):this.mode!==t.INFLATE&&this.mode!==t.GUNZIP&&this.mode!==t.INFLATERAW&&this.mode!==t.UNZIP||s.inflateEnd(this.strm),this.mode=t.NONE,this.dictionary=null)},h.prototype.write=function(e,t,n,r,i,o,a){return this._write(!0,e,t,n,r,i,o,a)},h.prototype.writeSync=function(e,t,n,r,i,o,a){return this._write(!1,e,t,n,r,i,o,a)},h.prototype._write=function(n,o,a,s,l,u,c,f){if(i.equal(arguments.length,8),i(this.init_done,"write before init"),i(this.mode!==t.NONE,"already finalized"),i.equal(!1,this.write_in_progress,"write already in progress"),i.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,i.equal(!1,void 0===o,"must provide flush value"),this.write_in_progress=!0,o!==t.Z_NO_FLUSH&&o!==t.Z_PARTIAL_FLUSH&&o!==t.Z_SYNC_FLUSH&&o!==t.Z_FULL_FLUSH&&o!==t.Z_FINISH&&o!==t.Z_BLOCK)throw new Error("Invalid flush value");if(null==a&&(a=e.alloc(0),l=0,s=0),this.strm.avail_in=l,this.strm.input=a,this.strm.next_in=s,this.strm.avail_out=f,this.strm.output=u,this.strm.next_out=c,this.flush=o,!n)return this._process(),this._checkError()?this._afterSync():void 0;var h=this;return r.nextTick((function(){h._process(),h._after()})),this},h.prototype._afterSync=function(){var e=this.strm.avail_out,t=this.strm.avail_in;return this.write_in_progress=!1,[t,e]},h.prototype._process=function(){var e=null;switch(this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=a.deflate(this.strm,this.flush);break;case t.UNZIP:switch(this.strm.avail_in>0&&(e=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(null===e)break;if(this.strm.input[e]!==c){this.mode=t.INFLATE;break}if(this.gzip_id_bytes_read=1,e++,1===this.strm.avail_in)break;case 1:if(null===e)break;this.strm.input[e]===f?(this.gzip_id_bytes_read=2,this.mode=t.GUNZIP):this.mode=t.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:this.err=s.inflate(this.strm,this.flush),this.err===t.Z_NEED_DICT&&this.dictionary&&(this.err=s.inflateSetDictionary(this.strm,this.dictionary),this.err===t.Z_OK?this.err=s.inflate(this.strm,this.flush):this.err===t.Z_DATA_ERROR&&(this.err=t.Z_NEED_DICT));while(this.strm.avail_in>0&&this.mode===t.GUNZIP&&this.err===t.Z_STREAM_END&&0!==this.strm.next_in[0])this.reset(),this.err=s.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},h.prototype._checkError=function(){switch(this.err){case t.Z_OK:case t.Z_BUF_ERROR:if(0!==this.strm.avail_out&&this.flush===t.Z_FINISH)return this._error("unexpected end of file"),!1;break;case t.Z_STREAM_END:break;case t.Z_NEED_DICT:return null==this.dictionary?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},h.prototype._after=function(){if(this._checkError()){var e=this.strm.avail_out,t=this.strm.avail_in;this.write_in_progress=!1,this.callback(t,e),this.pending_close&&this.close()}},h.prototype._error=function(e){this.strm.msg&&(e=this.strm.msg),this.onerror(e,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},h.prototype.init=function(e,n,r,o,a){i(4===arguments.length||5===arguments.length,"init(windowBits, level, memLevel, strategy, [dictionary])"),i(e>=8&&e<=15,"invalid windowBits"),i(n>=-1&&n<=9,"invalid compression level"),i(r>=1&&r<=9,"invalid memlevel"),i(o===t.Z_FILTERED||o===t.Z_HUFFMAN_ONLY||o===t.Z_RLE||o===t.Z_FIXED||o===t.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(n,e,r,o,a),this._setDictionary()},h.prototype.params=function(){throw new Error("deflateParams Not supported")},h.prototype.reset=function(){this._reset(),this._setDictionary()},h.prototype._init=function(e,n,r,i,l){switch(this.level=e,this.windowBits=n,this.memLevel=r,this.strategy=i,this.flush=t.Z_NO_FLUSH,this.err=t.Z_OK,this.mode!==t.GZIP&&this.mode!==t.GUNZIP||(this.windowBits+=16),this.mode===t.UNZIP&&(this.windowBits+=32),this.mode!==t.DEFLATERAW&&this.mode!==t.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new o,this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=a.deflateInit2(this.strm,this.level,t.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:case t.UNZIP:this.err=s.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==t.Z_OK&&this._error("Init error"),this.dictionary=l,this.write_in_progress=!1,this.init_done=!0},h.prototype._setDictionary=function(){if(null!=this.dictionary){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:this.err=a.deflateSetDictionary(this.strm,this.dictionary);break;default:break}this.err!==t.Z_OK&&this._error("Failed to set dictionary")}},h.prototype._reset=function(){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:case t.GZIP:this.err=a.deflateReset(this.strm);break;case t.INFLATE:case t.INFLATERAW:case t.GUNZIP:this.err=s.inflateReset(this.strm);break;default:break}this.err!==t.Z_OK&&this._error("Failed to reset stream")},t.Zlib=h}).call(this,n("b639").Buffer,n("4362"))},"6bd1":function(e,t,n){var r=n("b68d"),i=n("6c01"),o="".split;e.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?o.call(e,""):Object(e)}:Object},"6c01":function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},"6e25":function(e,t,n){var r=n("b68d"),i=/#|\.prototype\./,o=function(e,t){var n=s[a(e)];return n==u||n!=l&&("function"==typeof t?r(t):!!t)},a=o.normalize=function(e){return String(e).replace(i,".").toLowerCase()},s=o.data={},l=o.NATIVE="N",u=o.POLYFILL="P";e.exports=o},"6e7e":function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},"6eeb":function(e,t,n){var r=n("da84"),i=n("9112"),o=n("5135"),a=n("ce4e"),s=n("8925"),l=n("69f3"),u=l.get,c=l.enforce,f=String(String).split("String");(e.exports=function(e,t,n,s){var l=!!s&&!!s.unsafe,u=!!s&&!!s.enumerable,h=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof t||o(n,"name")||i(n,"name",t),c(n).source=f.join("string"==typeof t?t:"")),e!==r?(l?!h&&e[t]&&(u=!0):delete e[t],u?e[t]=n:i(e,t,n)):u?e[t]=n:a(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},"6fe2":function(e,t,n){var r=n("769b"),i=n("8a12");(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},"70d0":function(e,t,n){var r=n("52c9");e.exports=r},7156:function(e,t,n){var r=n("861d"),i=n("d2bb");e.exports=function(e,t,n){var o,a;return i&&"function"==typeof(o=t.constructor)&&o!==n&&r(a=o.prototype)&&a!==n.prototype&&i(e,a),e}},7238:function(e,t,n){var r=n("b65a"),i=n("069e"),o=n("db8f"),a=n("8b4a"),s=n("e9a6"),l=n("f742"),u=n("0373"),c=Object.getOwnPropertyDescriptor;t.f=r?c:function(e,t){if(e=a(e),t=s(t,!0),u)try{return c(e,t)}catch(n){}if(l(e,t))return o(!i.f.call(e,t),e[t])}},7297:function(e,t,n){var r=n("b65a"),i=n("af3e").f,o=Function.prototype,a=o.toString,s=/^\s*function ([^ (]*)/,l="name";r&&!(l in o)&&i(o,l,{configurable:!0,get:function(){try{return a.call(this).match(s)[1]}catch(e){return""}}})},7353:function(e,t,n){"use strict"; +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"00ce":function(e,t,n){"use strict";var r,i=n("a645"),o=n("417f"),a=n("dc99"),s=n("1409"),l=n("67ee"),u=n("0d25"),c=n("67d9"),f=Function,h=function(e){try{return f('"use strict"; return ('+e+").constructor;")()}catch(t){}},d=Object.getOwnPropertyDescriptor;if(d)try{d({},"")}catch(D){d=null}var p=function(){throw new u},g=d?function(){try{return p}catch(e){try{return d(arguments,"callee").get}catch(t){return p}}}():p,m=n("5156")(),v=n("0a36")(),y=Object.getPrototypeOf||(v?function(e){return e.__proto__}:null),b={},w="undefined"!==typeof Uint8Array&&y?y(Uint8Array):r,_={__proto__:null,"%AggregateError%":"undefined"===typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"===typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":m&&y?y([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":b,"%AsyncGenerator%":b,"%AsyncGeneratorFunction%":b,"%AsyncIteratorPrototype%":b,"%Atomics%":"undefined"===typeof Atomics?r:Atomics,"%BigInt%":"undefined"===typeof BigInt?r:BigInt,"%BigInt64Array%":"undefined"===typeof BigInt64Array?r:BigInt64Array,"%BigUint64Array%":"undefined"===typeof BigUint64Array?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"===typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":i,"%eval%":eval,"%EvalError%":o,"%Float32Array%":"undefined"===typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"===typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"===typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":f,"%GeneratorFunction%":b,"%Int8Array%":"undefined"===typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"===typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"===typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":m&&y?y(y([][Symbol.iterator]())):r,"%JSON%":"object"===typeof JSON?JSON:r,"%Map%":"undefined"===typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!==typeof Map&&m&&y?y((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"===typeof Promise?r:Promise,"%Proxy%":"undefined"===typeof Proxy?r:Proxy,"%RangeError%":a,"%ReferenceError%":s,"%Reflect%":"undefined"===typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"===typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!==typeof Set&&m&&y?y((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"===typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":m&&y?y(""[Symbol.iterator]()):r,"%Symbol%":m?Symbol:r,"%SyntaxError%":l,"%ThrowTypeError%":g,"%TypedArray%":w,"%TypeError%":u,"%Uint8Array%":"undefined"===typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"===typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"===typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"===typeof Uint32Array?r:Uint32Array,"%URIError%":c,"%WeakMap%":"undefined"===typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"===typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"===typeof WeakSet?r:WeakSet};if(y)try{null.error}catch(D){var x=y(y(D));_["%Error.prototype%"]=x}var k=function e(t){var n;if("%AsyncFunction%"===t)n=h("async function () {}");else if("%GeneratorFunction%"===t)n=h("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=h("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var i=e("%AsyncGenerator%");i&&y&&(n=y(i.prototype))}return _[t]=n,n},S={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},C=n("0f7c"),E=n("9671"),A=C.call(Function.call,Array.prototype.concat),O=C.call(Function.apply,Array.prototype.splice),L=C.call(Function.call,String.prototype.replace),T=C.call(Function.call,String.prototype.slice),M=C.call(Function.call,RegExp.prototype.exec),P=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,j=/\\(\\)?/g,R=function(e){var t=T(e,0,1),n=T(e,-1);if("%"===t&&"%"!==n)throw new l("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new l("invalid intrinsic syntax, expected opening `%`");var r=[];return L(e,P,(function(e,t,n,i){r[r.length]=n?L(i,j,"$1"):t||e})),r},N=function(e,t){var n,r=e;if(E(S,r)&&(n=S[r],r="%"+n[0]+"%"),E(_,r)){var i=_[r];if(i===b&&(i=k(r)),"undefined"===typeof i&&!t)throw new u("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:i}}throw new l("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!==typeof e||0===e.length)throw new u("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!==typeof t)throw new u('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,e))throw new l("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=R(e),r=n.length>0?n[0]:"",i=N("%"+r+"%",t),o=i.name,a=i.value,s=!1,c=i.alias;c&&(r=c[0],O(n,A([0,1],c)));for(var f=1,h=!0;f=n.length){var v=d(a,p);h=!!v,a=h&&"get"in v&&!("originalValue"in v.get)?v.get:a[p]}else h=E(a,p),a=a[p];h&&!s&&(_[o]=a)}}return a}},"00ee":function(e,t,n){"use strict";var r=n("b622"),i=r("toStringTag"),o={};o[i]="z",e.exports="[object z]"===String(o)},"00fd":function(e,t,n){var r=n("9e69"),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;function l(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}e.exports=l},"01b4":function(e,t,n){"use strict";var r=function(){this.head=null,this.tail=null};r.prototype={add:function(e){var t={item:e,next:null},n=this.tail;n?n.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e){var t=this.head=e.next;return null===t&&(this.tail=null),e.item}}},e.exports=r},"0366":function(e,t,n){"use strict";var r=n("4625"),i=n("59ed"),o=n("40d5"),a=r(r.bind);e.exports=function(e,t){return i(e),void 0===t?e:o?a(e,t):function(){return e.apply(t,arguments)}}},"04f8":function(e,t,n){"use strict";var r=n("2d00"),i=n("d039"),o=n("da84"),a=o.String;e.exports=!!Object.getOwnPropertySymbols&&!i((function(){var e=Symbol("symbol detection");return!a(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},"057f":function(e,t,n){"use strict";var r=n("c6b6"),i=n("fc6a"),o=n("241c").f,a=n("f36a"),s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],l=function(e){try{return o(e)}catch(t){return a(s)}};e.exports.f=function(e){return s&&"Window"===r(e)?l(e):o(i(e))}},"05dd":function(e,t,n){(function(e){e(n("56b3"),n("a2c1"))})((function(e){e.defineOption("autoCloseTags",!1,(function(t,n,i){if(i!=e.Init&&i&&t.removeKeyMap("autoCloseTags"),n){var a={name:"autoCloseTags"};"object"==typeof n&&!1===n.whenClosing||(a["'/'"]=function(e){return o(e)}),"object"==typeof n&&!1===n.whenOpening||(a["'>'"]=function(e){return r(e)}),t.addKeyMap(a)}}));var t=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],n=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"];function r(r){if(r.getOption("disableInput"))return e.Pass;for(var i=r.listSelections(),o=[],l=r.getOption("autoCloseTags"),u=0;uc.ch&&(g=g.slice(0,g.length-f.end+c.ch));var b=g.toLowerCase();if(!g||"string"==f.type&&(f.end!=c.ch||!/[\"\']/.test(f.string.charAt(f.string.length-1))||1==f.string.length)||"tag"==f.type&&p.close||f.string.indexOf("/")==c.ch-f.start-1||v&&a(v,b)>-1||s(r,h.mode.xmlCurrentContext&&h.mode.xmlCurrentContext(d)||[],g,c,!0))return e.Pass;var w="object"==typeof l&&l.emptyTags;if(w&&a(w,g)>-1)o[u]={text:"/>",newPos:e.Pos(c.line,c.ch+2)};else{var _=y&&a(y,b)>-1;o[u]={indent:_,text:">"+(_?"\n\n":"")+"",newPos:_?e.Pos(c.line+1,0):e.Pos(c.line,c.ch+1)}}}var x="object"==typeof l&&l.dontIndentOnAutoClose;for(u=i.length-1;u>=0;u--){var k=o[u];r.replaceRange(k.text,i[u].head,i[u].anchor,"+insert");var S=r.listSelections().slice(0);S[u]={head:k.newPos,anchor:k.newPos},r.setSelections(S),!x&&k.indent&&(r.indentLine(k.newPos.line,null,!0),r.indentLine(k.newPos.line+1,null,!0))}}function i(t,n){for(var r=t.listSelections(),i=[],o=n?"/":""!=t.getLine(c.line).charAt(f.end)&&(p+=">"),i[u]=p}if(t.replaceSelections(i),r=t.listSelections(),!l)for(u=0;u=0;u--){if(n[u]!=r)break;++l}i=s.to;for(u=1;u=0)e[t]=0}var u=0,c=1,f=2,h=3,d=258,p=29,g=256,m=g+1+p,v=30,y=19,b=2*m+1,w=15,_=16,x=7,k=256,S=16,C=17,E=18,A=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],O=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],L=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],M=512,P=new Array(2*(m+2));l(P);var j=new Array(2*v);l(j);var R=new Array(M);l(R);var N=new Array(d-h+1);l(N);var D=new Array(p);l(D);var F,I,z,B=new Array(v);function U(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function $(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function H(e){return e<256?R[e]:R[256+(e>>>7)]}function W(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function q(e,t,n){e.bi_valid>_-n?(e.bi_buf|=t<>_-e.bi_valid,e.bi_valid+=n-_):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function G(e){16===e.bi_valid?(W(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}function Y(e,t){var n,r,i,o,a,s,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,f=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,g=0;for(o=0;o<=w;o++)e.bl_count[o]=0;for(l[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;np&&(o=p,g++),l[2*r+1]=o,r>u||(e.bl_count[o]++,a=0,r>=d&&(a=h[r-d]),s=l[2*r],e.opt_len+=s*(o+a),f&&(e.static_len+=s*(c[2*r+1]+a)));if(0!==g){do{o=p-1;while(0===e.bl_count[o])o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,g-=2}while(g>0);for(o=p;0!==o;o--){r=e.bl_count[o];while(0!==r)i=e.heap[--n],i>u||(l[2*i+1]!==o&&(e.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),r--)}}}function K(e,t,n){var r,i,o=new Array(w+1),a=0;for(r=1;r<=w;r++)o[r]=a=a+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=V(o[s]++,s))}}function X(){var e,t,n,r,i,o=new Array(w+1);for(n=0,r=0;r>=7;r8?W(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function ee(e,t,n,i){Q(e),i&&(W(e,n),W(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}function te(e,t,n,r){var i=2*t,o=2*n;return e[i]>1;n>=1;n--)ne(e,o,n);i=l;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ne(e,o,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,o[2*i]=o[2*n]+o[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,o[2*n+1]=o[2*r+1]=i,e.heap[1]=i++,ne(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],Y(e,t),K(o,u,e.bl_count)}function oe(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=a,a=t[2*(r+1)+1],++s=3;t--)if(0!==e.bl_tree[2*T[t]+1])break;return e.opt_len+=3*(t+1)+5+5+4,t}function le(e,t,n,r){var i;for(q(e,t-257,5),q(e,n-1,5),q(e,r-4,4),i=0;i>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return o;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(t=32;t0?(e.strm.data_type===s&&(e.strm.data_type=ue(e)),ie(e,e.l_desc),ie(e,e.d_desc),l=se(e),o=e.opt_len+3+7>>>3,a=e.static_len+3+7>>>3,a<=o&&(o=a)):o=a=n+5,n+4<=o&&-1!==t?he(e,t,n,r):e.strategy===i||a===o?(q(e,(c<<1)+(r?1:0),3),re(e,P,j)):(q(e,(f<<1)+(r?1:0),3),le(e,e.l_desc.max_code+1,e.d_desc.max_code+1,l+1),re(e,e.dyn_ltree,e.dyn_dtree)),J(e),r&&Q(e)}function ge(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(N[n]+g+1)]++,e.dyn_dtree[2*H(t)]++),e.last_lit===e.lit_bufsize-1}t._tr_init=fe,t._tr_stored_block=he,t._tr_flush_block=pe,t._tr_tally=ge,t._tr_align=de},"07fa":function(e,t,n){"use strict";var r=n("50c4");e.exports=function(e){return r(e.length)}},"0960":function(e,t,n){e.exports=n("b19a")},"0a06":function(e,t,n){"use strict";var r=n("c532"),i=n("30b5"),o=n("f6b4"),a=n("5270"),s=n("4a7b");function l(e){this.defaults=e,this.interceptors={request:new o,response:new o}}l.prototype.request=function(e){"string"===typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[a,void 0],n=Promise.resolve(e);this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));while(t.length)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=s(this.defaults,e),i(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t}))}})),r.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=l},"0a36":function(e,t,n){"use strict";var r={__proto__:null,foo:{}},i=Object;e.exports=function(){return{__proto__:r}.foo===r.foo&&!(r instanceof i)}},"0b42":function(e,t,n){"use strict";var r=n("e8b5"),i=n("68ee"),o=n("861d"),a=n("b622"),s=a("species"),l=Array;e.exports=function(e){var t;return r(e)&&(t=e.constructor,i(t)&&(t===l||r(t.prototype))?t=void 0:o(t)&&(t=t[s],null===t&&(t=void 0))),void 0===t?l:t}},"0b43":function(e,t,n){"use strict";var r=n("04f8");e.exports=r&&!!Symbol["for"]&&!!Symbol.keyFor},"0cb2":function(e,t,n){"use strict";var r=n("e330"),i=n("7b0b"),o=Math.floor,a=r("".charAt),s=r("".replace),l=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,c=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,r,f,h){var d=n+e.length,p=r.length,g=c;return void 0!==f&&(f=i(f),g=u),s(h,g,(function(i,s){var u;switch(a(s,0)){case"$":return"$";case"&":return e;case"`":return l(t,0,n);case"'":return l(t,d);case"<":u=f[l(s,1,-1)];break;default:var c=+s;if(0===c)return i;if(c>p){var h=o(c/10);return 0===h?i:h<=p?void 0===r[h-1]?a(s,1):r[h-1]+a(s,1):i}u=r[c-1]}return void 0===u?"":u}))}},"0cfb":function(e,t,n){"use strict";var r=n("83ab"),i=n("d039"),o=n("cc12");e.exports=!r&&!i((function(){return 7!==Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},"0d25":function(e,t,n){"use strict";e.exports=TypeError},"0d26":function(e,t,n){"use strict";var r=n("e330"),i=Error,o=r("".replace),a=function(e){return String(new i(e).stack)}("zxcasd"),s=/\n\s*at [^:]*:[^\n]*/,l=s.test(a);e.exports=function(e,t){if(l&&"string"==typeof e&&!i.prepareStackTrace)while(t--)e=o(e,s,"");return e}},"0d51":function(e,t,n){"use strict";var r=String;e.exports=function(e){try{return r(e)}catch(t){return"Object"}}},"0df6":function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},"0f7c":function(e,t,n){"use strict";var r=n("688e");e.exports=Function.prototype.bind||r},"107c":function(e,t,n){"use strict";var r=n("d039"),i=n("da84"),o=i.RegExp;e.exports=r((function(){var e=o("(?b)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},"10b2":function(e,t,n){(function(e){e(n("56b3"))})((function(e){var t={pairs:"()[]{}''\"\"",closeBefore:")]}'\":;>",triples:"",explode:"[]{}"},n=e.Pos;function r(e,n){return"pairs"==n&&"string"==typeof e?e:"object"==typeof e&&null!=e[n]?e[n]:t[n]}e.defineOption("autoCloseBrackets",!1,(function(t,n,a){a&&a!=e.Init&&(t.removeKeyMap(i),t.state.closeBrackets=null),n&&(o(r(n,"pairs")),t.state.closeBrackets=n,t.addKeyMap(i))}));var i={Backspace:l,Enter:u};function o(e){for(var t=0;t=0;l--){var c=a[l].head;t.replaceRange("",n(c.line,c.ch-1),n(c.line,c.ch+1),"+delete")}}function u(t){var n=s(t),i=n&&r(n,"explode");if(!i||t.getOption("disableInput"))return e.Pass;for(var o=t.listSelections(),a=0;a0?{line:a.head.line,ch:a.head.ch+t}:{line:a.head.line-1};n.push({anchor:s,head:s})}e.setSelections(n,i)}function f(t){var r=e.cmpPos(t.anchor,t.head)>0;return{anchor:new n(t.anchor.line,t.anchor.ch+(r?-1:1)),head:new n(t.head.line,t.head.ch+(r?1:-1))}}function h(t,i){var o=s(t);if(!o||t.getOption("disableInput"))return e.Pass;var a=r(o,"pairs"),l=a.indexOf(i);if(-1==l)return e.Pass;for(var u,h=r(o,"closeBefore"),d=r(o,"triples"),g=a.charAt(l+1)==i,m=t.listSelections(),v=l%2==0,y=0;y1&&d.indexOf(i)>=0&&t.getRange(n(_.line,_.ch-2),_)==i+i){if(_.ch>2&&/\bstring/.test(t.getTokenTypeAt(n(_.line,_.ch-2))))return e.Pass;b="addFour"}else if(g){var k=0==_.ch?" ":t.getRange(n(_.line,_.ch-1),_);if(e.isWordChar(x)||k==i||e.isWordChar(k))return e.Pass;b="both"}else{if(!v||!(0===x.length||/\s/.test(x)||h.indexOf(x)>-1))return e.Pass;b="both"}else b=g&&p(t,_)?"both":d.indexOf(i)>=0&&t.getRange(_,n(_.line,_.ch+3))==i+i+i?"skipThree":"skip";if(u){if(u!=b)return e.Pass}else u=b}var S=l%2?a.charAt(l-1):i,C=l%2?i:a.charAt(l+1);t.operation((function(){if("skip"==u)c(t,1);else if("skipThree"==u)c(t,3);else if("surround"==u){for(var e=t.getSelections(),n=0;n1||"".split(/.?/).length;o("split",(function(e,t,n){var i="0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:r(t,this,e,n)}:t;return[function(t,n){var o=l(this),a=s(t)?void 0:d(t,e);return a?r(a,t,o,n):r(i,h(o),t,n)},function(e,r){var o=a(this),s=h(e);if(!k){var l=n(i,o,s,r,i!==t);if(l.done)return l.value}var d=u(o,RegExp),g=o.unicode,m=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(v?"g":"y"),x=new d(v?"^(?:"+o.source+")":o,m),S=void 0===r?y:r>>>0;if(0===S)return[];if(0===s.length)return null===p(x,s)?[s]:[];var C=0,E=0,A=[];while(E1?arguments[1]:void 0)}},"19aa":function(e,t,n){"use strict";var r=n("3a9b"),i=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw new i("Incorrect invocation")}},"1a2d":function(e,t,n){"use strict";var r=n("e330"),i=n("7b0b"),o=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return o(i(e),t)}},"1a8c":function(e,t){function n(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}e.exports=n},"1be4":function(e,t,n){"use strict";var r=n("d066");e.exports=r("document","documentElement")},"1c7e":function(e,t,n){"use strict";var r=n("b622"),i=r("iterator"),o=!1;try{var a=0,s={next:function(){return{done:!!a++}},return:function(){o=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(l){}e.exports=function(e,t){try{if(!t&&!o)return!1}catch(l){return!1}var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(l){}return n}},"1cdc":function(e,t,n){"use strict";var r=n("342f");e.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},"1d2b":function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r=51||!r((function(){var t=[],n=t.constructor={};return n[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},"1ef7":function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t=/^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,n=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,r=/[*+-]\s/;function i(e,n){var r=n.line,i=0,o=0,a=t.exec(e.getLine(r)),s=a[1];do{i+=1;var l=r+i,u=e.getLine(l),c=t.exec(u);if(c){var f=c[1],h=parseInt(a[3],10)+i-o,d=parseInt(c[3],10),p=d;if(s!==f||isNaN(d)){if(s.length>f.length)return;if(s.lengthd&&(p=h+1),e.replaceRange(u.replace(t,f+p+c[4]+c[5]),{line:l,ch:0},{line:l,ch:u.length})}}while(c)}e.commands.newlineAndIndentContinueMarkdownList=function(o){if(o.getOption("disableInput"))return e.Pass;for(var a=o.listSelections(),s=[],l=0;l\s*$/.test(p),y=!/>\s*$/.test(p);(v||y)&&o.replaceRange("",{line:u.line,ch:0},{line:u.line,ch:u.ch+1}),s[l]="\n"}else{var b=g[1],w=g[5],_=!(r.test(g[2])||g[2].indexOf(">")>=0),x=_?parseInt(g[3],10)+1+g[4]:g[2].replace("x"," ");s[l]="\n"+b+x+w,_&&i(o,u)}}o.replaceSelections(s)}}))},"1fb5":function(e,t,n){"use strict";t.byteLength=c,t.toByteArray=h,t.fromByteArray=g;for(var r=[],i=[],o="undefined"!==typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");-1===n&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=u(e),n=t[0],r=t[1];return 3*(n+r)/4-r}function f(e,t,n){return 3*(t+n)/4-n}function h(e){var t,n,r=u(e),a=r[0],s=r[1],l=new o(f(e,a,s)),c=0,h=s>0?a-4:a;for(n=0;n>16&255,l[c++]=t>>8&255,l[c++]=255&t;return 2===s&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,l[c++]=255&t),1===s&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,l[c++]=t>>8&255,l[c++]=255&t),l}function d(e){return r[e>>18&63]+r[e>>12&63]+r[e>>6&63]+r[63&e]}function p(e,t,n){for(var r,i=[],o=t;ol?l:s+a));return 1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},2266:function(e,t,n){"use strict";var r=n("0366"),i=n("c65b"),o=n("825a"),a=n("0d51"),s=n("e95a"),l=n("07fa"),u=n("3a9b"),c=n("9a1f"),f=n("35a1"),h=n("2a62"),d=TypeError,p=function(e,t){this.stopped=e,this.result=t},g=p.prototype;e.exports=function(e,t,n){var m,v,y,b,w,_,x,k=n&&n.that,S=!(!n||!n.AS_ENTRIES),C=!(!n||!n.IS_RECORD),E=!(!n||!n.IS_ITERATOR),A=!(!n||!n.INTERRUPTED),O=r(t,k),L=function(e){return m&&h(m,"normal",e),new p(!0,e)},T=function(e){return S?(o(e),A?O(e[0],e[1],L):O(e[0],e[1])):A?O(e,L):O(e)};if(C)m=e.iterator;else if(E)m=e;else{if(v=f(e),!v)throw new d(a(e)+" is not iterable");if(s(v)){for(y=0,b=l(e);b>y;y++)if(w=T(e[y]),w&&u(g,w))return w;return new p(!1)}m=c(e,v)}_=C?e.next:m.next;while(!(x=i(_,m)).done){try{w=T(x.value)}catch(M){h(m,"throw",M)}if("object"==typeof w&&w&&u(g,w))return w}return new p(!1)}},"23cb":function(e,t,n){"use strict";var r=n("5926"),i=Math.max,o=Math.min;e.exports=function(e,t){var n=r(e);return n<0?i(n+t,0):o(n,t)}},"23e7":function(e,t,n){"use strict";var r=n("da84"),i=n("06cf").f,o=n("9112"),a=n("cb2d"),s=n("6374"),l=n("e893"),u=n("94ca");e.exports=function(e,t){var n,c,f,h,d,p,g=e.target,m=e.global,v=e.stat;if(c=m?r:v?r[g]||s(g,{}):r[g]&&r[g].prototype,c)for(f in t){if(d=t[f],e.dontCallGetSet?(p=i(c,f),h=p&&p.value):h=c[f],n=u(m?f:g+(v?".":"#")+f,e.forced),!n&&void 0!==h){if(typeof d==typeof h)continue;l(d,h)}(e.sham||h&&h.sham)&&o(d,"sham",!0),a(c,f,d,e)}}},"241c":function(e,t,n){"use strict";var r=n("ca84"),i=n("7839"),o=i.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},2444:function(e,t,n){"use strict";(function(t){var r=n("c532"),i=n("c8af"),o={"Content-Type":"application/x-www-form-urlencoded"};function a(e,t){!r.isUndefined(e)&&r.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function s(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof t&&"[object process]"===Object.prototype.toString.call(t))&&(e=n("b50d")),e}var l={adapter:s(),transformRequest:[function(e,t){return i(t,"Accept"),i(t,"Content-Type"),r.isFormData(e)||r.isArrayBuffer(e)||r.isBuffer(e)||r.isStream(e)||r.isFile(e)||r.isBlob(e)?e:r.isArrayBufferView(e)?e.buffer:r.isURLSearchParams(e)?(a(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):r.isObject(e)?(a(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),r.forEach(["post","put","patch"],(function(e){l.headers[e]=r.merge(o)})),e.exports=l}).call(this,n("4362"))},"25f0":function(e,t,n){"use strict";var r=n("5e77").PROPER,i=n("cb2d"),o=n("825a"),a=n("577e"),s=n("d039"),l=n("90d8"),u="toString",c=RegExp.prototype,f=c[u],h=s((function(){return"/a/b"!==f.call({source:"a",flags:"b"})})),d=r&&f.name!==u;(h||d)&&i(c,u,(function(){var e=o(this),t=a(e.source),n=a(l(e));return"/"+t+"/"+n}),{unsafe:!0})},2626:function(e,t,n){"use strict";var r=n("d066"),i=n("edd0"),o=n("b622"),a=n("83ab"),s=o("species");e.exports=function(e){var t=r(e);a&&t&&!t[s]&&i(t,s,{configurable:!0,get:function(){return this}})}},"27bf":function(e,t,n){"use strict";e.exports=a;var r=n("b19a"),i=Object.create(n("3a7c"));function o(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length=0&&(t=e.slice(r),e=e.slice(0,r));var i=e.indexOf("?");return i>=0&&(n=e.slice(i+1),e=e.slice(0,i)),{path:e,query:n,hash:t}}function T(e){return e.replace(/\/\//g,"/")}var M=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)},j=X,P=F,R=I,N=H,D=K,z=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function F(e,t){var n,r=[],i=0,o=0,a="",s=t&&t.delimiter||"/";while(null!=(n=z.exec(e))){var l=n[0],u=n[1],c=n.index;if(a+=e.slice(o,c),o=c+l.length,u)a+=u[1];else{var f=e[o],h=n[2],d=n[3],p=n[4],g=n[5],m=n[6],v=n[7];a&&(r.push(a),a="");var y=null!=h&&null!=f&&f!==h,b="+"===m||"*"===m,w="?"===m||"*"===m,_=n[2]||s,x=p||g;r.push({name:d||i++,prefix:h||"",delimiter:_,optional:w,repeat:b,partial:y,asterisk:!!v,pattern:x?W(x):v?".*":"[^"+$(_)+"]+?"})}}return o1||!S.length)return 0===S.length?e():e("span",{},S)}if("a"===this.tag)k.on=_,k.attrs={href:l,"aria-current":y};else{var C=se(this.$slots.default);if(C){C.isStatic=!1;var E=C.data=i({},C.data);for(var A in E.on=E.on||{},E.on){var L=E.on[A];A in _&&(E.on[A]=Array.isArray(L)?L:[L])}for(var O in _)O in E.on?E.on[O].push(_[O]):E.on[O]=b;var T=C.data.attrs=i({},C.data.attrs);T.href=l,T["aria-current"]=y}else k.on=_}return e(this.tag,k,this.$slots.default)}};function ae(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(void 0===e.button||0===e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function se(e){if(e)for(var t,n=0;n-1&&(s.params[h]=n.params[h]);return s.path=Q(u.path,s.params,'named route "'+l+'"'),c(u,s,a)}if(s.path){s.params={};for(var d=0;d=e.length?n():e[i]?t(e[i],(function(){r(i+1)})):r(i+1)};r(0)}var Ie={redirected:2,aborted:4,cancelled:8,duplicated:16};function Be(e,t){return We(e,t,Ie.redirected,'Redirected when going from "'+e.fullPath+'" to "'+Ze(t)+'" via a navigation guard.')}function Ue(e,t){var n=We(e,t,Ie.duplicated,'Avoided redundant navigation to current location: "'+e.fullPath+'".');return n.name="NavigationDuplicated",n}function He(e,t){return We(e,t,Ie.cancelled,'Navigation cancelled from "'+e.fullPath+'" to "'+t.fullPath+'" with a new navigation.')}function $e(e,t){return We(e,t,Ie.aborted,'Navigation aborted from "'+e.fullPath+'" to "'+t.fullPath+'" via a navigation guard.')}function We(e,t,n,r){var i=new Error(r);return i._isRouter=!0,i.from=e,i.to=t,i.type=n,i}var qe=["params","query","hash"];function Ze(e){if("string"===typeof e)return e;if("path"in e)return e.path;var t={};return qe.forEach((function(n){n in e&&(t[n]=e[n])})),JSON.stringify(t,null,2)}function Ve(e){return Object.prototype.toString.call(e).indexOf("Error")>-1}function Ge(e,t){return Ve(e)&&e._isRouter&&(null==t||e.type===t)}function Ye(e){return function(t,n,r){var i=!1,o=0,a=null;Ke(e,(function(e,t,n,s){if("function"===typeof e&&void 0===e.cid){i=!0,o++;var l,u=et((function(t){Qe(t)&&(t=t.default),e.resolved="function"===typeof t?t:te.extend(t),n.components[s]=t,o--,o<=0&&r()})),c=et((function(e){var t="Failed to resolve async component "+s+": "+e;a||(a=Ve(e)?e:new Error(t),r(a))}));try{l=e(u,c)}catch(h){c(h)}if(l)if("function"===typeof l.then)l.then(u,c);else{var f=l.component;f&&"function"===typeof f.then&&f.then(u,c)}}})),i||r()}}function Ke(e,t){return Xe(e.map((function(e){return Object.keys(e.components).map((function(n){return t(e.components[n],e.instances[n],e,n)}))})))}function Xe(e){return Array.prototype.concat.apply([],e)}var Je="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Qe(e){return e.__esModule||Je&&"Module"===e[Symbol.toStringTag]}function et(e){var t=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!t)return t=!0,e.apply(this,n)}}var tt=function(e,t){this.router=e,this.base=nt(t),this.current=v,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function nt(e){if(!e)if(ue){var t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^https?:\/\/[^\/]+/,"")}else e="/";return"/"!==e.charAt(0)&&(e="/"+e),e.replace(/\/$/,"")}function rt(e,t){var n,r=Math.max(e.length,t.length);for(n=0;n0)){var t=this.router,n=t.options.scrollBehavior,r=Ne&&n;r&&this.listeners.push(ke());var i=function(){var n=e.current,i=ht(e.base);e.current===v&&i===e._startLocation||e.transitionTo(i,(function(e){r&&Se(t,e,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){De(T(r.base+e.fullPath)),Se(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){ze(T(r.base+e.fullPath)),Se(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.ensureURL=function(e){if(ht(this.base)!==this.current.fullPath){var t=T(this.base+this.current.fullPath);e?De(t):ze(t)}},t.prototype.getCurrentLocation=function(){return ht(this.base)},t}(tt);function ht(e){var t=window.location.pathname;return e&&0===t.toLowerCase().indexOf(e.toLowerCase())&&(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var dt=function(e){function t(t,n,r){e.call(this,t,n),r&&pt(this.base)||gt()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;if(!(this.listeners.length>0)){var t=this.router,n=t.options.scrollBehavior,r=Ne&&n;r&&this.listeners.push(ke());var i=function(){var t=e.current;gt()&&e.transitionTo(mt(),(function(n){r&&Se(e.router,n,t,!0),Ne||bt(n.fullPath)}))},o=Ne?"popstate":"hashchange";window.addEventListener(o,i),this.listeners.push((function(){window.removeEventListener(o,i)}))}},t.prototype.push=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){yt(e.fullPath),Se(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){bt(e.fullPath),Se(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;mt()!==t&&(e?yt(t):bt(t))},t.prototype.getCurrentLocation=function(){return mt()},t}(tt);function pt(e){var t=ht(e);if(!/^\/#/.test(t))return window.location.replace(T(e+"/#"+t)),!0}function gt(){var e=mt();return"/"===e.charAt(0)||(bt("/"+e),!1)}function mt(){var e=window.location.href,t=e.indexOf("#");return t<0?"":(e=e.slice(t+1),e)}function vt(e){var t=window.location.href,n=t.indexOf("#"),r=n>=0?t.slice(0,n):t;return r+"#"+e}function yt(e){Ne?De(vt(e)):window.location.hash=e}function bt(e){Ne?ze(vt(e)):window.location.replace(vt(e))}var wt=function(e){function t(t,n){e.call(this,t,n),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index+1).concat(e),r.index++,t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index).concat(e),t&&t(e)}),n)},t.prototype.go=function(e){var t=this,n=this.index+e;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var e=t.current;t.index=n,t.updateRoute(r),t.router.afterHooks.forEach((function(t){t&&t(r,e)}))}),(function(e){Ge(e,Ie.duplicated)&&(t.index=n)}))}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(tt),_t=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=pe(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!Ne&&!1!==e.fallback,this.fallback&&(t="hash"),ue||(t="abstract"),this.mode=t,t){case"history":this.history=new ft(this,e.base);break;case"hash":this.history=new dt(this,e.base,this.fallback);break;case"abstract":this.history=new wt(this,e.base);break;default:0}},xt={currentRoute:{configurable:!0}};function kt(e,t){return e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function St(e,t,n){var r="hash"===n?"#"+t:t;return e?T(e+"/"+r):r}_t.prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},xt.currentRoute.get=function(){return this.history&&this.history.current},_t.prototype.init=function(e){var t=this;if(this.apps.push(e),e.$once("hook:destroyed",(function(){var n=t.apps.indexOf(e);n>-1&&t.apps.splice(n,1),t.app===e&&(t.app=t.apps[0]||null),t.app||t.history.teardown()})),!this.app){this.app=e;var n=this.history;if(n instanceof ft||n instanceof dt){var r=function(e){var r=n.current,i=t.options.scrollBehavior,o=Ne&&i;o&&"fullPath"in e&&Se(t,e,r,!1)},i=function(e){n.setupListeners(),r(e)};n.transitionTo(n.getCurrentLocation(),i,i)}n.listen((function(e){t.apps.forEach((function(t){t._route=e}))}))}},_t.prototype.beforeEach=function(e){return kt(this.beforeHooks,e)},_t.prototype.beforeResolve=function(e){return kt(this.resolveHooks,e)},_t.prototype.afterEach=function(e){return kt(this.afterHooks,e)},_t.prototype.onReady=function(e,t){this.history.onReady(e,t)},_t.prototype.onError=function(e){this.history.onError(e)},_t.prototype.push=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!==typeof Promise)return new Promise((function(t,n){r.history.push(e,t,n)}));this.history.push(e,t,n)},_t.prototype.replace=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!==typeof Promise)return new Promise((function(t,n){r.history.replace(e,t,n)}));this.history.replace(e,t,n)},_t.prototype.go=function(e){this.history.go(e)},_t.prototype.back=function(){this.go(-1)},_t.prototype.forward=function(){this.go(1)},_t.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map((function(e){return Object.keys(e.components).map((function(t){return e.components[t]}))}))):[]},_t.prototype.resolve=function(e,t,n){t=t||this.history.current;var r=ee(e,t,n,this),i=this.match(r,t),o=i.redirectedFrom||i.fullPath,a=this.history.base,s=St(a,o,this.mode);return{location:r,route:i,href:s,normalizedTo:r,resolved:i}},_t.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==v&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(_t.prototype,xt),_t.install=le,_t.version="3.4.7",_t.isNavigationFailure=Ge,_t.NavigationFailureType=Ie,ue&&window.Vue&&window.Vue.use(_t),t["a"]=_t},7418:function(e,t){t.f=Object.getOwnPropertySymbols},"746f":function(e,t,n){var r=n("428f"),i=n("5135"),o=n("e538"),a=n("9bf2").f;e.exports=function(e){var t=r.Symbol||(r.Symbol={});i(t,e)||a(t,e,{value:o.f(e)})}},7620:function(e,t){e.exports={}},"769b":function(e,t){e.exports=!1},"77fd":function(e,t,n){var r=n("b68d");e.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},"780f":function(e,t,n){"use strict";e.exports=o;var r=n("27bf"),i=Object.create(n("3a7c"));function o(e){if(!(this instanceof o))return new o(e);r.call(this,e)}i.inherits=n("3fb5"),i.inherits(o,r),o.prototype._transform=function(e,t,n){n(null,e)}},7839:function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"78ed":function(e,t,n){"use strict";(function(e){ -/*! - * Vue.js v2.6.12 - * (c) 2014-2020 Evan You + * Vue.js v2.7.16 + * (c) 2014-2023 Evan You * Released under the MIT License. */ -var n=Object.freeze({});function r(e){return void 0===e||null===e}function i(e){return void 0!==e&&null!==e}function o(e){return!0===e}function a(e){return!1===e}function s(e){return"string"===typeof e||"number"===typeof e||"symbol"===typeof e||"boolean"===typeof e}function l(e){return null!==e&&"object"===typeof e}var u=Object.prototype.toString;function c(e){return"[object Object]"===u.call(e)}function f(e){return"[object RegExp]"===u.call(e)}function h(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function d(e){return i(e)&&"function"===typeof e.then&&"function"===typeof e.catch}function p(e){return null==e?"":Array.isArray(e)||c(e)&&e.toString===u?JSON.stringify(e,null,2):String(e)}function g(e){var t=parseFloat(e);return isNaN(t)?e:t}function m(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function w(e,t){return b.call(e,t)}function _(e){var t=Object.create(null);return function(n){var r=t[n];return r||(t[n]=e(n))}}var x=/-(\w)/g,k=_((function(e){return e.replace(x,(function(e,t){return t?t.toUpperCase():""}))})),S=_((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),C=/\B([A-Z])/g,E=_((function(e){return e.replace(C,"-$1").toLowerCase()}));function A(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function L(e,t){return e.bind(t)}var O=Function.prototype.bind?L:A;function T(e,t){t=t||0;var n=e.length-t,r=new Array(n);while(n--)r[n]=e[n+t];return r}function M(e,t){for(var n in t)e[n]=t[n];return e}function j(e){for(var t={},n=0;n0,ne=Q&&Q.indexOf("edge/")>0,re=(Q&&Q.indexOf("android"),Q&&/iphone|ipad|ipod|ios/.test(Q)||"ios"===J),ie=(Q&&/chrome\/\d+/.test(Q),Q&&/phantomjs/.test(Q),Q&&Q.match(/firefox\/(\d+)/)),oe={}.watch,ae=!1;if(K)try{var se={};Object.defineProperty(se,"passive",{get:function(){ae=!0}}),window.addEventListener("test-passive",null,se)}catch(ka){}var le=function(){return void 0===G&&(G=!K&&!X&&"undefined"!==typeof e&&(e["process"]&&"server"===e["process"].env.VUE_ENV)),G},ue=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ce(e){return"function"===typeof e&&/native code/.test(e.toString())}var fe,he="undefined"!==typeof Symbol&&ce(Symbol)&&"undefined"!==typeof Reflect&&ce(Reflect.ownKeys);fe="undefined"!==typeof Set&&ce(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var de=P,pe=0,ge=function(){this.id=pe++,this.subs=[]};ge.prototype.addSub=function(e){this.subs.push(e)},ge.prototype.removeSub=function(e){y(this.subs,e)},ge.prototype.depend=function(){ge.target&&ge.target.addDep(this)},ge.prototype.notify=function(){var e=this.subs.slice();for(var t=0,n=e.length;t-1)if(o&&!w(i,"default"))a=!1;else if(""===a||a===E(e)){var l=et(String,i.type);(l<0||s0&&(a=At(a,(t||"")+"_"+n),Et(a[0])&&Et(u)&&(c[l]=xe(u.text+a[0].text),a.shift()),c.push.apply(c,a)):s(a)?Et(u)?c[l]=xe(u.text+a):""!==a&&c.push(xe(a)):Et(a)&&Et(u)?c[l]=xe(u.text+a.text):(o(e._isVList)&&i(a.tag)&&r(a.key)&&i(t)&&(a.key="__vlist"+t+"_"+n+"__"),c.push(a)));return c}function Lt(e){var t=e.$options.provide;t&&(e._provided="function"===typeof t?t.call(e):t)}function Ot(e){var t=Tt(e.$options.inject,e);t&&(Oe(!1),Object.keys(t).forEach((function(n){Re(e,n,t[n])})),Oe(!0))}function Tt(e,t){if(e){for(var n=Object.create(null),r=he?Reflect.ownKeys(e):Object.keys(e),i=0;i0,a=e?!!e.$stable:!o,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(a&&r&&r!==n&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var l in i={},e)e[l]&&"$"!==l[0]&&(i[l]=Rt(t,l,e[l]))}else i={};for(var u in t)u in i||(i[u]=Nt(t,u));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",a),q(i,"$key",s),q(i,"$hasNormal",o),i}function Rt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return e=e&&"object"===typeof e&&!Array.isArray(e)?[e]:Ct(e),e&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function Nt(e,t){return function(){return e[t]}}function Dt(e,t){var n,r,o,a,s;if(Array.isArray(e)||"string"===typeof e)for(n=new Array(e.length),r=0,o=e.length;r1?T(n):n;for(var r=T(arguments,1),i='event handler for "'+e+'"',o=0,a=n.length;odocument.createEvent("Event").timeStamp&&(Gn=function(){return Yn.now()})}function Kn(){var e,t;for(Vn=Gn(),Wn=!0,Bn.sort((function(e,t){return e.id-t.id})),qn=0;qnqn&&Bn[n].id>e.id)n--;Bn.splice(n+1,0,e)}else Bn.push(e);$n||($n=!0,pt(Kn))}}var tr=0,nr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++tr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new fe,this.newDepIds=new fe,this.expression="","function"===typeof t?this.getter=t:(this.getter=V(t),this.getter||(this.getter=P)),this.value=this.lazy?void 0:this.get()};nr.prototype.get=function(){var e;ve(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(ka){if(!this.user)throw ka;tt(ka,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&mt(e),ye(),this.cleanupDeps()}return e},nr.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},nr.prototype.cleanupDeps=function(){var e=this.deps.length;while(e--){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},nr.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():er(this)},nr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||l(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(ka){tt(ka,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},nr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},nr.prototype.depend=function(){var e=this.deps.length;while(e--)this.deps[e].depend()},nr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);var e=this.deps.length;while(e--)this.deps[e].removeSub(this);this.active=!1}};var rr={enumerable:!0,configurable:!0,get:P,set:P};function ir(e,t,n){rr.get=function(){return this[t][n]},rr.set=function(e){this[t][n]=e},Object.defineProperty(e,n,rr)}function or(e){e._watchers=[];var t=e.$options;t.props&&ar(e,t.props),t.methods&&pr(e,t.methods),t.data?sr(e):Pe(e._data={},!0),t.computed&&cr(e,t.computed),t.watch&&t.watch!==oe&&gr(e,t.watch)}function ar(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[],o=!e.$parent;o||Oe(!1);var a=function(o){i.push(o);var a=Ke(o,t,n,e);Re(r,o,a),o in e||ir(e,"_props",o)};for(var s in t)a(s);Oe(!0)}function sr(e){var t=e.$options.data;t=e._data="function"===typeof t?lr(t,e):t||{},c(t)||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);while(i--){var o=n[i];0,r&&w(r,o)||W(o)||ir(e,"_data",o)}Pe(t,!0)}function lr(e,t){ve();try{return e.call(t,t)}catch(ka){return tt(ka,t,"data()"),{}}finally{ye()}}var ur={lazy:!0};function cr(e,t){var n=e._computedWatchers=Object.create(null),r=le();for(var i in t){var o=t[i],a="function"===typeof o?o:o.get;0,r||(n[i]=new nr(e,a||P,P,ur)),i in e||fr(e,i,o)}}function fr(e,t,n){var r=!le();"function"===typeof n?(rr.get=r?hr(t):dr(n),rr.set=P):(rr.get=n.get?r&&!1!==n.cache?hr(t):dr(n.get):P,rr.set=n.set||P),Object.defineProperty(e,t,rr)}function hr(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),ge.target&&t.depend(),t.value}}function dr(e){return function(){return e.call(this,this)}}function pr(e,t){e.$options.props;for(var n in t)e[n]="function"!==typeof t[n]?P:O(t[n],e)}function gr(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i-1)return this;var n=T(arguments,1);return n.unshift(this),"function"===typeof e.install?e.install.apply(e,n):"function"===typeof e&&e.apply(null,n),t.push(e),this}}function Cr(e){e.mixin=function(e){return this.options=Ge(this.options,e),this}}function Er(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name;var a=function(e){this._init(e)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=t++,a.options=Ge(n.options,e),a["super"]=n,a.options.props&&Ar(a),a.options.computed&&Lr(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,B.forEach((function(e){a[e]=n[e]})),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=M({},a.options),i[r]=a,a}}function Ar(e){var t=e.options.props;for(var n in t)ir(e.prototype,"_props",n)}function Lr(e){var t=e.options.computed;for(var n in t)fr(e.prototype,n,t[n])}function Or(e){B.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&c(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"===typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}function Tr(e){return e&&(e.Ctor.options.name||e.tag)}function Mr(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"===typeof e?e.split(",").indexOf(t)>-1:!!f(e)&&e.test(t)}function jr(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=Tr(a.componentOptions);s&&!t(s)&&Pr(n,o,r,i)}}}function Pr(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,y(n,t)}br(kr),vr(kr),On(kr),Pn(kr),yn(kr);var Rr=[String,RegExp,Array],Nr={name:"keep-alive",abstract:!0,props:{include:Rr,exclude:Rr,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)Pr(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",(function(t){jr(e,(function(e){return Mr(t,e)}))})),this.$watch("exclude",(function(t){jr(e,(function(e){return!Mr(t,e)}))}))},render:function(){var e=this.$slots.default,t=kn(e),n=t&&t.componentOptions;if(n){var r=Tr(n),i=this,o=i.include,a=i.exclude;if(o&&(!r||!Mr(o,r))||a&&r&&Mr(a,r))return t;var s=this,l=s.cache,u=s.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;l[c]?(t.componentInstance=l[c].componentInstance,y(u,c),u.push(c)):(l[c]=t,u.push(c),this.max&&u.length>parseInt(this.max)&&Pr(l,u[0],u,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}},Dr={KeepAlive:Nr};function zr(e){var t={get:function(){return H}};Object.defineProperty(e,"config",t),e.util={warn:de,extend:M,mergeOptions:Ge,defineReactive:Re},e.set=Ne,e.delete=De,e.nextTick=pt,e.observable=function(e){return Pe(e),e},e.options=Object.create(null),B.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,M(e.options.components,Dr),Sr(e),Cr(e),Er(e),Or(e)}zr(kr),Object.defineProperty(kr.prototype,"$isServer",{get:le}),Object.defineProperty(kr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(kr,"FunctionalRenderContext",{value:Xt}),kr.version="2.6.12";var Fr=m("style,class"),Ir=m("input,textarea,option,select,progress"),Br=function(e,t,n){return"value"===n&&Ir(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Ur=m("contenteditable,draggable,spellcheck"),Hr=m("events,caret,typing,plaintext-only"),$r=function(e,t){return Gr(t)||"false"===t?"false":"contenteditable"===e&&Hr(t)?t:"true"},Wr=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),qr="http://www.w3.org/1999/xlink",Zr=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Vr=function(e){return Zr(e)?e.slice(6,e.length):""},Gr=function(e){return null==e||!1===e};function Yr(e){var t=e.data,n=e,r=e;while(i(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(t=Kr(r.data,t));while(i(n=n.parent))n&&n.data&&(t=Kr(t,n.data));return Xr(t.staticClass,t.class)}function Kr(e,t){return{staticClass:Jr(e.staticClass,t.staticClass),class:i(e.class)?[e.class,t.class]:t.class}}function Xr(e,t){return i(e)||i(t)?Jr(e,Qr(t)):""}function Jr(e,t){return e?t?e+" "+t:e:t||""}function Qr(e){return Array.isArray(e)?ei(e):l(e)?ti(e):"string"===typeof e?e:""}function ei(e){for(var t,n="",r=0,o=e.length;r-1?si[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:si[e]=/HTMLUnknownElement/.test(t.toString())}var ui=m("text,number,password,search,email,tel,url");function ci(e){if("string"===typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function fi(e,t){var n=document.createElement(e);return"select"!==e||t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function hi(e,t){return document.createElementNS(ni[e],t)}function di(e){return document.createTextNode(e)}function pi(e){return document.createComment(e)}function gi(e,t,n){e.insertBefore(t,n)}function mi(e,t){e.removeChild(t)}function vi(e,t){e.appendChild(t)}function yi(e){return e.parentNode}function bi(e){return e.nextSibling}function wi(e){return e.tagName}function _i(e,t){e.textContent=t}function xi(e,t){e.setAttribute(t,"")}var ki=Object.freeze({createElement:fi,createElementNS:hi,createTextNode:di,createComment:pi,insertBefore:gi,removeChild:mi,appendChild:vi,parentNode:yi,nextSibling:bi,tagName:wi,setTextContent:_i,setStyleScope:xi}),Si={create:function(e,t){Ci(t)},update:function(e,t){e.data.ref!==t.data.ref&&(Ci(e,!0),Ci(t))},destroy:function(e){Ci(e,!0)}};function Ci(e,t){var n=e.data.ref;if(i(n)){var r=e.context,o=e.componentInstance||e.elm,a=r.$refs;t?Array.isArray(a[n])?y(a[n],o):a[n]===o&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])?a[n].indexOf(o)<0&&a[n].push(o):a[n]=[o]:a[n]=o}}var Ei=new be("",{},[]),Ai=["create","activate","update","remove","destroy"];function Li(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&i(e.data)===i(t.data)&&Oi(e,t)||o(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&r(t.asyncFactory.error))}function Oi(e,t){if("input"!==e.tag)return!0;var n,r=i(n=e.data)&&i(n=n.attrs)&&n.type,o=i(n=t.data)&&i(n=n.attrs)&&n.type;return r===o||ui(r)&&ui(o)}function Ti(e,t,n){var r,o,a={};for(r=t;r<=n;++r)o=e[r].key,i(o)&&(a[o]=r);return a}function Mi(e){var t,n,a={},l=e.modules,u=e.nodeOps;for(t=0;tg?(f=r(n[y+1])?null:n[y+1].elm,k(e,f,n,p,y,o)):p>y&&C(t,h,g)}function L(e,t,n,r){for(var o=n;o-1?Hi(e,t,n):Wr(t)?Gr(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Ur(t)?e.setAttribute(t,$r(t,n)):Zr(t)?Gr(n)?e.removeAttributeNS(qr,Vr(t)):e.setAttributeNS(qr,t,n):Hi(e,t,n)}function Hi(e,t,n){if(Gr(n))e.removeAttribute(t);else{if(ee&&!te&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var $i={create:Bi,update:Bi};function Wi(e,t){var n=t.elm,o=t.data,a=e.data;if(!(r(o.staticClass)&&r(o.class)&&(r(a)||r(a.staticClass)&&r(a.class)))){var s=Yr(t),l=n._transitionClasses;i(l)&&(s=Jr(s,Qr(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var qi,Zi={create:Wi,update:Wi},Vi="__r",Gi="__c";function Yi(e){if(i(e[Vi])){var t=ee?"change":"input";e[t]=[].concat(e[Vi],e[t]||[]),delete e[Vi]}i(e[Gi])&&(e.change=[].concat(e[Gi],e.change||[]),delete e[Gi])}function Ki(e,t,n){var r=qi;return function i(){var o=t.apply(null,arguments);null!==o&&Qi(e,i,n,r)}}var Xi=at&&!(ie&&Number(ie[1])<=53);function Ji(e,t,n,r){if(Xi){var i=Vn,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qi.addEventListener(e,t,ae?{capture:n,passive:r}:n)}function Qi(e,t,n,r){(r||qi).removeEventListener(e,t._wrapper||t,n)}function eo(e,t){if(!r(e.data.on)||!r(t.data.on)){var n=t.data.on||{},i=e.data.on||{};qi=t.elm,Yi(n),wt(n,i,Ji,Qi,Ki,t.context),qi=void 0}}var to,no={create:eo,update:eo};function ro(e,t){if(!r(e.data.domProps)||!r(t.data.domProps)){var n,o,a=t.elm,s=e.data.domProps||{},l=t.data.domProps||{};for(n in i(l.__ob__)&&(l=t.data.domProps=M({},l)),s)n in l||(a[n]="");for(n in l){if(o=l[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),o===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=o;var u=r(o)?"":String(o);io(a,u)&&(a.value=u)}else if("innerHTML"===n&&ii(a.tagName)&&r(a.innerHTML)){to=to||document.createElement("div"),to.innerHTML=""+o+"";var c=to.firstChild;while(a.firstChild)a.removeChild(a.firstChild);while(c.firstChild)a.appendChild(c.firstChild)}else if(o!==s[n])try{a[n]=o}catch(ka){}}}}function io(e,t){return!e.composing&&("OPTION"===e.tagName||oo(e,t)||ao(e,t))}function oo(e,t){var n=!0;try{n=document.activeElement!==e}catch(ka){}return n&&e.value!==t}function ao(e,t){var n=e.value,r=e._vModifiers;if(i(r)){if(r.number)return g(n)!==g(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}var so={create:ro,update:ro},lo=_((function(e){var t={},n=/;(?![^(]*\))/g,r=/:(.+)/;return e.split(n).forEach((function(e){if(e){var n=e.split(r);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}));function uo(e){var t=co(e.style);return e.staticStyle?M(e.staticStyle,t):t}function co(e){return Array.isArray(e)?j(e):"string"===typeof e?lo(e):e}function fo(e,t){var n,r={};if(t){var i=e;while(i.componentInstance)i=i.componentInstance._vnode,i&&i.data&&(n=uo(i.data))&&M(r,n)}(n=uo(e.data))&&M(r,n);var o=e;while(o=o.parent)o.data&&(n=uo(o.data))&&M(r,n);return r}var ho,po=/^--/,go=/\s*!important$/,mo=function(e,t,n){if(po.test(t))e.style.setProperty(t,n);else if(go.test(n))e.style.setProperty(E(t),n.replace(go,""),"important");else{var r=yo(t);if(Array.isArray(n))for(var i=0,o=n.length;i-1?t.split(_o).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function ko(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(_o).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?e.setAttribute("class",n):e.removeAttribute("class")}}function So(e){if(e){if("object"===typeof e){var t={};return!1!==e.css&&M(t,Co(e.name||"v")),M(t,e),t}return"string"===typeof e?Co(e):void 0}}var Co=_((function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}})),Eo=K&&!te,Ao="transition",Lo="animation",Oo="transition",To="transitionend",Mo="animation",jo="animationend";Eo&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Oo="WebkitTransition",To="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Mo="WebkitAnimation",jo="webkitAnimationEnd"));var Po=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ro(e){Po((function(){Po(e)}))}function No(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),xo(e,t))}function Do(e,t){e._transitionClasses&&y(e._transitionClasses,t),ko(e,t)}function zo(e,t,n){var r=Io(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ao?To:jo,l=0,u=function(){e.removeEventListener(s,c),n()},c=function(t){t.target===e&&++l>=a&&u()};setTimeout((function(){l0&&(n=Ao,c=a,f=o.length):t===Lo?u>0&&(n=Lo,c=u,f=l.length):(c=Math.max(a,u),n=c>0?a>u?Ao:Lo:null,f=n?n===Ao?o.length:l.length:0);var h=n===Ao&&Fo.test(r[Oo+"Property"]);return{type:n,timeout:c,propCount:f,hasTransform:h}}function Bo(e,t){while(e.length1}function Zo(e,t){!0!==t.data.show&&Ho(t)}var Vo=K?{create:Zo,activate:Zo,remove:function(e,t){!0!==e.data.show?$o(e,t):t()}}:{},Go=[$i,Zi,no,so,wo,Vo],Yo=Go.concat(Ii),Ko=Mi({nodeOps:ki,modules:Yo});te&&document.addEventListener("selectionchange",(function(){var e=document.activeElement;e&&e.vmodel&&ia(e,"input")}));var Xo={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?_t(n,"postpatch",(function(){Xo.componentUpdated(e,t,n)})):Jo(e,t,n.context),e._vOptions=[].map.call(e.options,ta)):("textarea"===n.tag||ui(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",na),e.addEventListener("compositionend",ra),e.addEventListener("change",ra),te&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Jo(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,ta);if(i.some((function(e,t){return!D(e,r[t])}))){var o=e.multiple?t.value.some((function(e){return ea(e,i)})):t.value!==t.oldValue&&ea(t.value,i);o&&ia(e,"change")}}}};function Jo(e,t,n){Qo(e,t,n),(ee||ne)&&setTimeout((function(){Qo(e,t,n)}),0)}function Qo(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,l=e.options.length;s-1,a.selected!==o&&(a.selected=o);else if(D(ta(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function ea(e,t){return t.every((function(t){return!D(t,e)}))}function ta(e){return"_value"in e?e._value:e.value}function na(e){e.target.composing=!0}function ra(e){e.target.composing&&(e.target.composing=!1,ia(e.target,"input"))}function ia(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function oa(e){return!e.componentInstance||e.data&&e.data.transition?e:oa(e.componentInstance._vnode)}var aa={bind:function(e,t,n){var r=t.value;n=oa(n);var i=n.data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Ho(n,(function(){e.style.display=o}))):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value,i=t.oldValue;if(!r!==!i){n=oa(n);var o=n.data&&n.data.transition;o?(n.data.show=!0,r?Ho(n,(function(){e.style.display=e.__vOriginalDisplay})):$o(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none"}},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},sa={model:Xo,show:aa},la={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function ua(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?ua(kn(t.children)):e}function ca(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[k(o)]=i[o];return t}function fa(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function ha(e){while(e=e.parent)if(e.data.transition)return!0}function da(e,t){return t.key===e.key&&t.tag===e.tag}var pa=function(e){return e.tag||xn(e)},ga=function(e){return"show"===e.name},ma={name:"transition",props:la,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(pa),n.length)){0;var r=this.mode;0;var i=n[0];if(ha(this.$vnode))return i;var o=ua(i);if(!o)return i;if(this._leaving)return fa(e,i);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var l=(o.data||(o.data={})).transition=ca(this),u=this._vnode,c=ua(u);if(o.data.directives&&o.data.directives.some(ga)&&(o.data.show=!0),c&&c.data&&!da(o,c)&&!xn(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var f=c.data.transition=M({},l);if("out-in"===r)return this._leaving=!0,_t(f,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),fa(e,i);if("in-out"===r){if(xn(o))return u;var h,d=function(){h()};_t(l,"afterEnter",d),_t(l,"enterCancelled",d),_t(f,"delayLeave",(function(e){h=e}))}}return i}}},va=M({tag:String,moveClass:String},la);delete va.mode;var ya={props:va,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Mn(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=ca(this),s=0;s1?arguments[1]:void 0,t.length)),r=String(e);return c?c.call(t,r,n):t.slice(n,n+r.length)===r}})},"7b0b":function(e,t,n){var r=n("1d80");e.exports=function(e){return Object(r(e))}},"7bd6":function(e,t,n){"use strict";var r=n("1274"),i=n("23e2"),o=n("7efb"),a=n("9441"),s=n("c5a4");function l(e){this.defaults=e,this.interceptors={request:new o,response:new o}}l.prototype.request=function(e){"string"===typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[a,void 0],n=Promise.resolve(e);this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));while(t.length)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=s(this.defaults,e),i(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t}))}})),r.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=l},"7c73":function(e,t,n){var r,i=n("825a"),o=n("37e8"),a=n("7839"),s=n("d012"),l=n("1be4"),u=n("cc12"),c=n("f772"),f=">",h="<",d="prototype",p="script",g=c("IE_PROTO"),m=function(){},v=function(e){return h+p+f+e+h+"/"+p+f},y=function(e){e.write(v("")),e.close();var t=e.parentWindow.Object;return e=null,t},b=function(){var e,t=u("iframe"),n="java"+p+":";return t.style.display="none",l.appendChild(t),t.src=String(n),e=t.contentWindow.document,e.open(),e.write(v("document.F=Object")),e.close(),e.F},w=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}w=r?y(r):b();var e=a.length;while(e--)delete w[d][a[e]];return w()};s[g]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(m[d]=i(e),n=new m,m[d]=null,n[g]=e):n=w(),void 0===t?n:o(n,t)}},"7d72":function(e,t,n){"use strict";var r=n("8707").Buffer,i=r.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){if(!e)return"utf8";var t;while(1)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function a(e){var t=o(e);if("string"!==typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}function s(e){var t;switch(this.encoding=a(e),this.encoding){case"utf16le":this.text=p,this.end=g,t=4;break;case"utf8":this.fillLast=f,t=4;break;case"base64":this.text=m,this.end=v,t=3;break;default:return this.write=y,void(this.end=b)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function l(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function u(e,t,n){var r=t.length-1;if(r=0?(i>0&&(e.lastNeed=i-1),i):--r=0?(i>0&&(e.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0))}function c(e,t,n){if(128!==(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"�"}}function f(e){var t=this.lastTotal-this.lastNeed,n=c(this,e,t);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function h(e,t){var n=u(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t}function p(e,t){if((e.length-t)%2===0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function g(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function m(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function v(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function y(e){return e.toString(this.encoding)}function b(e){return e&&e.length?this.write(e):""}t.StringDecoder=s,s.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(t=this.fillLast(e),void 0===t)return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n>>24,g>>>=x,m-=x,x=_>>>16&255,0===x)L[s++]=65535&_;else{if(!(16&x)){if(0===(64&x)){_=v[(65535&_)+(g&(1<>>=x,m-=x),m<15&&(g+=A[o++]<>>24,g>>>=x,m-=x,x=_>>>16&255,!(16&x)){if(0===(64&x)){_=y[(65535&_)+(g&(1<c){e.msg="invalid distance too far back",n.mode=r;break e}if(g>>>=x,m-=x,x=s-l,S>x){if(x=S-x,x>h&&n.sane){e.msg="invalid distance too far back",n.mode=r;break e}if(C=0,E=p,0===d){if(C+=f-x,x2)L[s++]=E[C++],L[s++]=E[C++],L[s++]=E[C++],k-=3;k&&(L[s++]=E[C++],k>1&&(L[s++]=E[C++]))}else{C=s-S;do{L[s++]=L[C++],L[s++]=L[C++],L[s++]=L[C++],k-=3}while(k>2);k&&(L[s++]=L[C++],k>1&&(L[s++]=L[C++]))}break}}break}}while(o>3,o-=k,m-=k<<3,g&=(1<=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(i=r[1]))),e.exports=i&&+i},"825a":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},"83ab":function(e,t,n){var r=n("d039");e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},8418:function(e,t,n){"use strict";var r=n("c04e"),i=n("9bf2"),o=n("5c6c");e.exports=function(e,t,n){var a=r(t);a in e?i.f(e,a,o(0,n)):e[a]=n}},"861d":function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},8707:function(e,t,n){var r=n("b639"),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=a),o(i,a),a.from=function(e,t,n){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!==typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"===typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},8822:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t="CodeMirror-lint-markers";function n(t,n,r){var i=document.createElement("div");function o(t){if(!i.parentNode)return e.off(document,"mousemove",o);i.style.top=Math.max(0,t.clientY-i.offsetHeight-5)+"px",i.style.left=t.clientX+5+"px"}return i.className="CodeMirror-lint-tooltip cm-s-"+t.options.theme,i.appendChild(r.cloneNode(!0)),t.state.lint.options.selfContain?t.getWrapperElement().appendChild(i):document.body.appendChild(i),e.on(document,"mousemove",o),o(n),null!=i.style.opacity&&(i.style.opacity=1),i}function r(e){e.parentNode&&e.parentNode.removeChild(e)}function i(e){e.parentNode&&(null==e.style.opacity&&r(e),e.style.opacity=0,setTimeout((function(){r(e)}),600))}function o(t,r,o,a){var s=n(t,r,o);function l(){e.off(a,"mouseout",l),s&&(i(s),s=null)}var u=setInterval((function(){if(s)for(var e=a;;e=e.parentNode){if(e&&11==e.nodeType&&(e=e.host),e==document.body)return;if(!e){l();break}}if(!s)return clearInterval(u)}),400);e.on(a,"mouseout",l)}function a(e,t,n){this.marked=[],this.options=t,this.timeout=null,this.hasGutter=n,this.onMouseOver=function(t){y(e,t)},this.waitingFor=0}function s(e,t){return t instanceof Function?{getAnnotations:t}:(t&&!0!==t||(t={}),t)}function l(e){var n=e.state.lint;n.hasGutter&&e.clearGutter(t);for(var r=0;r1,r.options.tooltips))}}i.onUpdateLinting&&i.onUpdateLinting(n,o,e)}function m(e){var t=e.state.lint;t&&(clearTimeout(t.timeout),t.timeout=setTimeout((function(){p(e)}),t.options.delay||500))}function v(e,t,n){for(var r=n.target||n.srcElement,i=document.createDocumentFragment(),a=0;a",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function i(e){return e&&e.bracketRegex||/[(){}[\]]/}function o(e,t,o){var s=e.getLineHandle(t.line),l=t.ch-1,u=o&&o.afterCursor;null==u&&(u=/(^| )cm-fat-cursor($| )/.test(e.getWrapperElement().className));var c=i(o),f=!u&&l>=0&&c.test(s.text.charAt(l))&&r[s.text.charAt(l)]||c.test(s.text.charAt(l+1))&&r[s.text.charAt(++l)];if(!f)return null;var h=">"==f.charAt(1)?1:-1;if(o&&o.strict&&h>0!=(l==t.ch))return null;var d=e.getTokenTypeAt(n(t.line,l+1)),p=a(e,n(t.line,l+(h>0?1:0)),h,d||null,o);return null==p?null:{from:n(t.line,l),to:p&&p.pos,match:p&&p.ch==f.charAt(0),forward:h>0}}function a(e,t,o,a,s){for(var l=s&&s.maxScanLineLength||1e4,u=s&&s.maxScanLines||1e3,c=[],f=i(s),h=o>0?Math.min(t.line+u,e.lastLine()+1):Math.max(e.firstLine()-1,t.line-u),d=t.line;d!=h;d+=o){var p=e.getLine(d);if(p){var g=o>0?0:p.length-1,m=o>0?p.length:-1;if(!(p.length>l))for(d==t.line&&(g=t.ch-(o<0?1:0));g!=m;g+=o){var v=p.charAt(g);if(f.test(v)&&(void 0===a||e.getTokenTypeAt(n(d,g+1))==a)){var y=r[v];if(y&&">"==y.charAt(1)==o>0)c.push(v);else{if(!c.length)return{pos:n(d,g),ch:v};c.pop()}}}}}return d-o!=(o>0?e.lastLine():e.firstLine())&&null}function s(e,r,i){for(var a=e.state.matchBrackets.maxHighlightLineLength||1e3,s=[],l=e.listSelections(),u=0;ui))break;o=a}}return o?{from:e.Pos(r.line,n.getLine(r.line).length),to:e.Pos(o,n.getLine(o).length)}:void 0}}))}))},"8dc1":function(e,t,n){"use strict";var r=n("1274");e.exports=function(e,t){r.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},"8e06":function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"8f3b":function(e,t,n){"use strict";var r=n("1274");e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=i(window.location.href),function(t){var n=r.isString(t)?i(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return function(){return!0}}()},"8f94":function(e,t,n){!function(t,r){e.exports=r(n("56b3"))}(0,(function(e){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=3)}([function(t,n){t.exports=e},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(r),o=window.CodeMirror||i.default;"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),r=1;r>1,c=-7,f=n?i-1:0,h=n?-1:1,d=e[t+f];for(f+=h,o=d&(1<<-c)-1,d>>=-c,c+=s;c>0;o=256*o+e[t+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=r;c>0;a=256*a+e[t+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=u}return(d?-1:1)*a*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:o-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=c):(a=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-a))<1&&(a--,l*=2),t+=a+f>=1?h/l:h*Math.pow(2,1-f),t*l>=2&&(a++,l/=2),a+f>=c?(s=0,a=c):a+f>=1?(s=(t*l-1)*Math.pow(2,i),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;e[n+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;e[n+d]=255&a,d+=p,a/=256,u-=8);e[n+d-p]|=128*g}},9174:function(e,t,n){var r=n("fc60"),i=n("8e06"),o=i.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},"918d":function(e,t,n){var r=n("f97c"),i=n("804c"),o=n("0fc5"),a=o("species");e.exports=function(e,t){var n;return i(e)&&(n=e.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[a],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},"918f":function(e,t,n){var r=n("f6a7"),i=Math.max,o=Math.min;e.exports=function(e,t){var n=r(e);return n<0?i(n+t,0):o(n,t)}},"922b":function(e,t,n){var r=n("679d"),i=n("9174"),o=n("413a"),a=n("abf8");e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(a(e)),n=o.f;return n?t.concat(n(e)):t}},9263:function(e,t,n){"use strict";var r=n("ad6d"),i=n("9f7f"),o=RegExp.prototype.exec,a=String.prototype.replace,s=o,l=function(){var e=/a/,t=/b*/g;return o.call(e,"a"),o.call(t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),u=i.UNSUPPORTED_Y||i.BROKEN_CARET,c=void 0!==/()??/.exec("")[1],f=l||c||u;f&&(s=function(e){var t,n,i,s,f=this,h=u&&f.sticky,d=r.call(f),p=f.source,g=0,m=e;return h&&(d=d.replace("y",""),-1===d.indexOf("g")&&(d+="g"),m=String(e).slice(f.lastIndex),f.lastIndex>0&&(!f.multiline||f.multiline&&"\n"!==e[f.lastIndex-1])&&(p="(?: "+p+")",m=" "+m,g++),n=new RegExp("^(?:"+p+")",d)),c&&(n=new RegExp("^"+p+"$(?!\\s)",d)),l&&(t=f.lastIndex),i=o.call(h?n:f,m),h?i?(i.input=i.input.slice(g),i[0]=i[0].slice(g),i.index=f.lastIndex,f.lastIndex+=i[0].length):f.lastIndex=0:l&&i&&(f.lastIndex=f.global?i.index+i[0].length:t),c&&i&&i.length>1&&a.call(i[0],n,(function(){for(s=1;s` "'(~:]+/,p=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,g=/^\s*\[[^\]]+?\]:.*$/,m=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\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]/,v=" ";function y(e,t,n){return t.f=t.inline=n,n(e,t)}function b(e,t,n){return t.f=t.block=n,n(e,t)}function w(e){return!e||!/\S/.test(e.string)}function _(t){if(t.linkTitle=!1,t.linkHref=!1,t.linkText=!1,t.em=!1,t.strong=!1,t.strikethrough=!1,t.quote=0,t.indentedCode=!1,t.f==k){var n=i;if(!n){var o=e.innerMode(r,t.htmlState);n="xml"==o.mode.name&&null===o.state.tagStart&&!o.state.context&&o.state.tokenize.isInText}n&&(t.f=A,t.block=x,t.htmlState=null)}return t.trailingSpace=0,t.trailingSpaceNewLine=!1,t.prevLine=t.thisLine,t.thisLine={stream:null},null}function x(t,r){var i=t.column()===r.indentation,s=w(r.prevLine.stream),d=r.indentedCode,m=r.prevLine.hr,v=!1!==r.list,b=(r.listStack[r.listStack.length-1]||0)+3;r.indentedCode=!1;var _=r.indentation;if(null===r.indentationDiff&&(r.indentationDiff=r.indentation,v)){r.list=null;while(_=4&&(d||r.prevLine.fencedCodeEnd||r.prevLine.header||s))return t.skipToEnd(),r.indentedCode=!0,a.code;if(t.eatSpace())return null;if(i&&r.indentation<=b&&(E=t.match(f))&&E[1].length<=6)return r.quote=0,r.header=E[1].length,r.thisLine.header=!0,n.highlightFormatting&&(r.formatting="header"),r.f=r.inline,C(r);if(r.indentation<=b&&t.eat(">"))return r.quote=i?1:r.quote+1,n.highlightFormatting&&(r.formatting="quote"),t.eatSpace(),C(r);if(!k&&!r.setext&&i&&r.indentation<=b&&(E=t.match(u))){var A=E[1]?"ol":"ul";return r.indentation=_+t.current().length,r.list=!0,r.quote=0,r.listStack.push(r.indentation),r.em=!1,r.strong=!1,r.code=!1,r.strikethrough=!1,n.taskLists&&t.match(c,!1)&&(r.taskList=!0),r.f=r.inline,n.highlightFormatting&&(r.formatting=["list","list-"+A]),C(r)}return i&&r.indentation<=b&&(E=t.match(p,!0))?(r.quote=0,r.fencedEndRE=new RegExp(E[1]+"+ *$"),r.localMode=n.fencedCodeBlockHighlighting&&o(E[2]||n.fencedCodeBlockDefaultMode),r.localMode&&(r.localState=e.startState(r.localMode)),r.f=r.block=S,n.highlightFormatting&&(r.formatting="code-block"),r.code=-1,C(r)):r.setext||!(x&&v||r.quote||!1!==r.list||r.code||k||g.test(t.string))&&(E=t.lookAhead(1))&&(E=E.match(h))?(r.setext?(r.header=r.setext,r.setext=0,t.skipToEnd(),n.highlightFormatting&&(r.formatting="header")):(r.header="="==E[0].charAt(0)?1:2,r.setext=r.header),r.thisLine.header=!0,r.f=r.inline,C(r)):k?(t.skipToEnd(),r.hr=!0,r.thisLine.hr=!0,a.hr):"["===t.peek()?y(t,r,j):y(t,r,r.inline)}function k(t,n){var o=r.token(t,n.htmlState);if(!i){var a=e.innerMode(r,n.htmlState);("xml"==a.mode.name&&null===a.state.tagStart&&!a.state.context&&a.state.tokenize.isInText||n.md_inside&&t.current().indexOf(">")>-1)&&(n.f=A,n.block=x,n.htmlState=null)}return o}function S(e,t){var r,i=t.listStack[t.listStack.length-1]||0,o=t.indentation=e.quote?t.push(a.formatting+"-"+e.formatting[r]+"-"+e.quote):t.push("error"))}if(e.taskOpen)return t.push("meta"),t.length?t.join(" "):null;if(e.taskClosed)return t.push("property"),t.length?t.join(" "):null;if(e.linkHref?t.push(a.linkHref,"url"):(e.strong&&t.push(a.strong),e.em&&t.push(a.em),e.strikethrough&&t.push(a.strikethrough),e.emoji&&t.push(a.emoji),e.linkText&&t.push(a.linkText),e.code&&t.push(a.code),e.image&&t.push(a.image),e.imageAltText&&t.push(a.imageAltText,"link"),e.imageMarker&&t.push(a.imageMarker)),e.header&&t.push(a.header,a.header+"-"+e.header),e.quote&&(t.push(a.quote),!n.maxBlockquoteDepth||n.maxBlockquoteDepth>=e.quote?t.push(a.quote+"-"+e.quote):t.push(a.quote+"-"+n.maxBlockquoteDepth)),!1!==e.list){var i=(e.listStack.length-1)%3;i?1===i?t.push(a.list2):t.push(a.list3):t.push(a.list1)}return e.trailingSpaceNewLine?t.push("trailing-space-new-line"):e.trailingSpace&&t.push("trailing-space-"+(e.trailingSpace%2?"a":"b")),t.length?t.join(" "):null}function E(e,t){if(e.match(d,!0))return C(t)}function A(t,i){var o=i.text(t,i);if("undefined"!==typeof o)return o;if(i.list)return i.list=null,C(i);if(i.taskList){var s=" "===t.match(c,!0)[1];return s?i.taskOpen=!0:i.taskClosed=!0,n.highlightFormatting&&(i.formatting="task"),i.taskList=!1,C(i)}if(i.taskOpen=!1,i.taskClosed=!1,i.header&&t.match(/^#+$/,!0))return n.highlightFormatting&&(i.formatting="header"),C(i);var l=t.next();if(i.linkTitle){i.linkTitle=!1;var u=l;"("===l&&(u=")"),u=(u+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var f="^\\s*(?:[^"+u+"\\\\]+|\\\\\\\\|\\\\.)"+u;if(t.match(new RegExp(f),!0))return a.linkHref}if("`"===l){var h=i.formatting;n.highlightFormatting&&(i.formatting="code"),t.eatWhile("`");var d=t.current().length;if(0!=i.code||i.quote&&1!=d){if(d==i.code){var p=C(i);return i.code=0,p}return i.formatting=h,C(i)}return i.code=d,C(i)}if(i.code)return C(i);if("\\"===l&&(t.next(),n.highlightFormatting)){var g=C(i),v=a.formatting+"-escape";return g?g+" "+v:v}if("!"===l&&t.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return i.imageMarker=!0,i.image=!0,n.highlightFormatting&&(i.formatting="image"),C(i);if("["===l&&i.imageMarker&&t.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return i.imageMarker=!1,i.imageAltText=!0,n.highlightFormatting&&(i.formatting="image"),C(i);if("]"===l&&i.imageAltText){n.highlightFormatting&&(i.formatting="image");g=C(i);return i.imageAltText=!1,i.image=!1,i.inline=i.f=O,g}if("["===l&&!i.image)return i.linkText&&t.match(/^.*?\]/)||(i.linkText=!0,n.highlightFormatting&&(i.formatting="link")),C(i);if("]"===l&&i.linkText){n.highlightFormatting&&(i.formatting="link");g=C(i);return i.linkText=!1,i.inline=i.f=t.match(/\(.*?\)| ?\[.*?\]/,!1)?O:A,g}if("<"===l&&t.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){i.f=i.inline=L,n.highlightFormatting&&(i.formatting="link");g=C(i);return g?g+=" ":g="",g+a.linkInline}if("<"===l&&t.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){i.f=i.inline=L,n.highlightFormatting&&(i.formatting="link");g=C(i);return g?g+=" ":g="",g+a.linkEmail}if(n.xml&&"<"===l&&t.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var y=t.string.indexOf(">",t.pos);if(-1!=y){var w=t.string.substring(t.start,y);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(w)&&(i.md_inside=!0)}return t.backUp(1),i.htmlState=e.startState(r),b(t,i,k)}if(n.xml&&"<"===l&&t.match(/^\/\w*?>/))return i.md_inside=!1,"tag";if("*"===l||"_"===l){var _=1,x=1==t.pos?" ":t.string.charAt(t.pos-2);while(_<3&&t.eat(l))_++;var S=t.peek()||" ",E=!/\s/.test(S)&&(!m.test(S)||/\s/.test(x)||m.test(x)),T=!/\s/.test(x)&&(!m.test(x)||/\s/.test(S)||m.test(S)),M=null,j=null;if(_%2&&(i.em||!E||"*"!==l&&T&&!m.test(x)?i.em!=l||!T||"*"!==l&&E&&!m.test(S)||(M=!1):M=!0),_>1&&(i.strong||!E||"*"!==l&&T&&!m.test(x)?i.strong!=l||!T||"*"!==l&&E&&!m.test(S)||(j=!1):j=!0),null!=j||null!=M){n.highlightFormatting&&(i.formatting=null==M?"strong":null==j?"em":"strong em"),!0===M&&(i.em=l),!0===j&&(i.strong=l);p=C(i);return!1===M&&(i.em=!1),!1===j&&(i.strong=!1),p}}else if(" "===l&&(t.eat("*")||t.eat("_"))){if(" "===t.peek())return C(i);t.backUp(1)}if(n.strikethrough)if("~"===l&&t.eatWhile(l)){if(i.strikethrough){n.highlightFormatting&&(i.formatting="strikethrough");p=C(i);return i.strikethrough=!1,p}if(t.match(/^[^\s]/,!1))return i.strikethrough=!0,n.highlightFormatting&&(i.formatting="strikethrough"),C(i)}else if(" "===l&&t.match(/^~~/,!0)){if(" "===t.peek())return C(i);t.backUp(2)}if(n.emoji&&":"===l&&t.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){i.emoji=!0,n.highlightFormatting&&(i.formatting="emoji");var P=C(i);return i.emoji=!1,P}return" "===l&&(t.match(/^ +$/,!1)?i.trailingSpace++:i.trailingSpace&&(i.trailingSpaceNewLine=!0)),C(i)}function L(e,t){var r=e.next();if(">"===r){t.f=t.inline=A,n.highlightFormatting&&(t.formatting="link");var i=C(t);return i?i+=" ":i="",i+a.linkInline}return e.match(/^[^>]+/,!0),a.linkInline}function O(e,t){if(e.eatSpace())return null;var r=e.next();return"("===r||"["===r?(t.f=t.inline=M("("===r?")":"]"),n.highlightFormatting&&(t.formatting="link-string"),t.linkHref=!0,C(t)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function M(e){return function(t,r){var i=t.next();if(i===e){r.f=r.inline=A,n.highlightFormatting&&(r.formatting="link-string");var o=C(r);return r.linkHref=!1,o}return t.match(T[e]),r.linkHref=!0,C(r)}}function j(e,t){return e.match(/^([^\]\\]|\\.)*\]:/,!1)?(t.f=P,e.next(),n.highlightFormatting&&(t.formatting="link"),t.linkText=!0,C(t)):y(e,t,A)}function P(e,t){if(e.match(/^\]:/,!0)){t.f=t.inline=R,n.highlightFormatting&&(t.formatting="link");var r=C(t);return t.linkText=!1,r}return e.match(/^([^\]\\]|\\.)+/,!0),a.linkText}function R(e,t){return e.eatSpace()?null:(e.match(/^[^\s]+/,!0),void 0===e.peek()?t.linkTitle=!0:e.match(/^(?:\s+(?:"(?:[^"\\]|\\\\|\\.)+"|'(?:[^'\\]|\\\\|\\.)+'|\((?:[^)\\]|\\\\|\\.)+\)))?/,!0),t.f=t.inline=A,a.linkHref+" url")}var N={startState:function(){return{f:x,prevLine:{stream:null},thisLine:{stream:null},block:x,htmlState:null,indentation:0,inline:A,text:E,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(t){return{f:t.f,prevLine:t.prevLine,thisLine:t.thisLine,block:t.block,htmlState:t.htmlState&&e.copyState(r,t.htmlState),indentation:t.indentation,localMode:t.localMode,localState:t.localMode?e.copyState(t.localMode,t.localState):null,inline:t.inline,text:t.text,formatting:!1,linkText:t.linkText,linkTitle:t.linkTitle,linkHref:t.linkHref,code:t.code,em:t.em,strong:t.strong,strikethrough:t.strikethrough,emoji:t.emoji,header:t.header,setext:t.setext,hr:t.hr,taskList:t.taskList,list:t.list,listStack:t.listStack.slice(0),quote:t.quote,indentedCode:t.indentedCode,trailingSpace:t.trailingSpace,trailingSpaceNewLine:t.trailingSpaceNewLine,md_inside:t.md_inside,fencedEndRE:t.fencedEndRE}},token:function(e,t){if(t.formatting=!1,e!=t.thisLine.stream){if(t.header=0,t.hr=!1,e.match(/^\s*$/,!0))return _(t),null;if(t.prevLine=t.thisLine,t.thisLine={stream:e},t.taskList=!1,t.trailingSpace=0,t.trailingSpaceNewLine=!1,!t.localState&&(t.f=t.block,t.f!=k)){var n=e.match(/^\s*/,!0)[0].replace(/\t/g,v).length;if(t.indentation=n,t.indentationDiff=null,n>0)return null}}return t.f(e,t)},innerMode:function(e){return e.block==k?{state:e.htmlState,mode:r}:e.localState?{state:e.localState,mode:e.localMode}:{state:e,mode:N}},indent:function(t,n,i){return t.block==k&&r.indent?r.indent(t.htmlState,n,i):t.localState&&t.localMode.indent?t.localMode.indent(t.localState,n,i):e.Pass},blankLine:_,getType:C,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return N}),"xml"),e.defineMIME("text/markdown","markdown"),e.defineMIME("text/x-markdown","markdown")}))},"966d":function(e,t,n){"use strict";(function(t){function n(e,n,r,i){if("function"!==typeof e)throw new TypeError('"callback" argument must be a function');var o,a,s=arguments.length;switch(s){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,i)}));default:o=new Array(s-1),a=0;while(a=51||!i((function(){var e=[];return e[p]=!1,e.concat()[0]!==e})),y=f("concat"),b=function(e){if(!a(e))return!1;var t=e[p];return void 0!==t?!!t:o(e)},w=!v||!y;r({target:"Array",proto:!0,forced:w},{concat:function(e){var t,n,r,i,o,a=s(this),f=c(a,0),h=0;for(t=-1,r=arguments.length;tg)throw TypeError(m);for(n=0;n=g)throw TypeError(m);u(f,h++,o)}return f.length=h,f}})},"9bdd":function(e,t,n){var r=n("825a");e.exports=function(e,t,n,i){try{return i?t(r(n)[0],n[1]):t(n)}catch(a){var o=e["return"];throw void 0!==o&&r(o.call(e)),a}}},"9bf2":function(e,t,n){var r=n("83ab"),i=n("0cfb"),o=n("825a"),a=n("c04e"),s=Object.defineProperty;t.f=r?s:function(e,t,n){if(o(e),t=a(t,!0),o(n),i)try{return s(e,t,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},"9e69":function(e,t,n){var r=n("2b3e"),i=r.Symbol;e.exports=i},"9e6e":function(e,t,n){"use strict";var r=n("be7f"),i=n("c834"),o=n("eeda"),a=n("7eb1"),s=n("6853"),l=0,u=1,c=2,f=4,h=5,d=6,p=0,g=1,m=2,v=-2,y=-3,b=-4,w=-5,_=8,x=1,k=2,S=3,C=4,E=5,A=6,L=7,O=8,T=9,M=10,j=11,P=12,R=13,N=14,D=15,z=16,F=17,I=18,B=19,U=20,H=21,$=22,W=23,q=24,Z=25,V=26,G=27,Y=28,K=29,X=30,J=31,Q=32,ee=852,te=592,ne=15,re=ne;function ie(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function oe(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function ae(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=x,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(ee),t.distcode=t.distdyn=new r.Buf32(te),t.sane=1,t.back=-1,p):v}function se(e){var t;return e&&e.state?(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,ae(e)):v}function le(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?v:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,se(e))):v}function ue(e,t){var n,r;return e?(r=new oe,e.state=r,r.window=null,n=le(e,t),n!==p&&(e.state=null),n):v}function ce(e){return ue(e,re)}var fe,he,de=!0;function pe(e){if(de){var t;fe=new r.Buf32(512),he=new r.Buf32(32),t=0;while(t<144)e.lens[t++]=8;while(t<256)e.lens[t++]=9;while(t<280)e.lens[t++]=7;while(t<288)e.lens[t++]=8;s(u,e.lens,0,288,fe,0,e.work,{bits:9}),t=0;while(t<32)e.lens[t++]=5;s(c,e.lens,0,32,he,0,e.work,{bits:5}),de=!1}e.lencode=fe,e.lenbits=9,e.distcode=he,e.distbits=5}function ge(e,t,n,i){var o,a=e.state;return null===a.window&&(a.wsize=1<=a.wsize?(r.arraySet(a.window,t,n-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(o=a.wsize-a.wnext,o>i&&(o=i),r.arraySet(a.window,t,n-i,o,a.wnext),i-=o,i?(r.arraySet(a.window,t,n-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=o,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,n.check=o(n.check,Ae,2,0),se=0,le=0,n.mode=k;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",n.mode=X;break}if((15&se)!==_){e.msg="unknown compression method",n.mode=X;break}if(se>>>=4,le-=4,xe=8+(15&se),0===n.wbits)n.wbits=xe;else if(xe>n.wbits){e.msg="invalid window size",n.mode=X;break}n.dmax=1<>8&1),512&n.flags&&(Ae[0]=255&se,Ae[1]=se>>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0,n.mode=S;case S:while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>8&255,Ae[2]=se>>>16&255,Ae[3]=se>>>24&255,n.check=o(n.check,Ae,4,0)),se=0,le=0,n.mode=C;case C:while(le<16){if(0===oe)break e;oe--,se+=ee[ne++]<>8),512&n.flags&&(Ae[0]=255&se,Ae[1]=se>>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0,n.mode=E;case E:if(1024&n.flags){while(le<16){if(0===oe)break e;oe--,se+=ee[ne++]<>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0}else n.head&&(n.head.extra=null);n.mode=A;case A:if(1024&n.flags&&(fe=n.length,fe>oe&&(fe=oe),fe&&(n.head&&(xe=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,ee,ne,fe,xe)),512&n.flags&&(n.check=o(n.check,ee,fe,ne)),oe-=fe,ne+=fe,n.length-=fe),n.length))break e;n.length=0,n.mode=L;case L:if(2048&n.flags){if(0===oe)break e;fe=0;do{xe=ee[ne+fe++],n.head&&xe&&n.length<65536&&(n.head.name+=String.fromCharCode(xe))}while(xe&&fe>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=P;break;case M:while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>=7&le,le-=7&le,n.mode=G;break}while(le<3){if(0===oe)break e;oe--,se+=ee[ne++]<>>=1,le-=1,3&se){case 0:n.mode=N;break;case 1:if(pe(n),n.mode=U,t===d){se>>>=2,le-=2;break e}break;case 2:n.mode=F;break;case 3:e.msg="invalid block type",n.mode=X}se>>>=2,le-=2;break;case N:se>>>=7&le,le-=7≤while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=X;break}if(n.length=65535&se,se=0,le=0,n.mode=D,t===d)break e;case D:n.mode=z;case z:if(fe=n.length,fe){if(fe>oe&&(fe=oe),fe>ae&&(fe=ae),0===fe)break e;r.arraySet(te,ee,ne,fe,re),oe-=fe,ne+=fe,ae-=fe,re+=fe,n.length-=fe;break}n.mode=P;break;case F:while(le<14){if(0===oe)break e;oe--,se+=ee[ne++]<>>=5,le-=5,n.ndist=1+(31&se),se>>>=5,le-=5,n.ncode=4+(15&se),se>>>=4,le-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=X;break}n.have=0,n.mode=I;case I:while(n.have>>=3,le-=3}while(n.have<19)n.lens[Le[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,Se={bits:n.lenbits},ke=s(l,n.lens,0,19,n.lencode,0,n.work,Se),n.lenbits=Se.bits,ke){e.msg="invalid code lengths set",n.mode=X;break}n.have=0,n.mode=B;case B:while(n.have>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=me,le-=me,n.lens[n.have++]=ye;else{if(16===ye){Ce=me+2;while(le>>=me,le-=me,0===n.have){e.msg="invalid bit length repeat",n.mode=X;break}xe=n.lens[n.have-1],fe=3+(3&se),se>>>=2,le-=2}else if(17===ye){Ce=me+3;while(le>>=me,le-=me,xe=0,fe=3+(7&se),se>>>=3,le-=3}else{Ce=me+7;while(le>>=me,le-=me,xe=0,fe=11+(127&se),se>>>=7,le-=7}if(n.have+fe>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=X;break}while(fe--)n.lens[n.have++]=xe}}if(n.mode===X)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=X;break}if(n.lenbits=9,Se={bits:n.lenbits},ke=s(u,n.lens,0,n.nlen,n.lencode,0,n.work,Se),n.lenbits=Se.bits,ke){e.msg="invalid literal/lengths set",n.mode=X;break}if(n.distbits=6,n.distcode=n.distdyn,Se={bits:n.distbits},ke=s(c,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,Se),n.distbits=Se.bits,ke){e.msg="invalid distances set",n.mode=X;break}if(n.mode=U,t===d)break e;case U:n.mode=H;case H:if(oe>=6&&ae>=258){e.next_out=re,e.avail_out=ae,e.next_in=ne,e.avail_in=oe,n.hold=se,n.bits=le,a(e,ce),re=e.next_out,te=e.output,ae=e.avail_out,ne=e.next_in,ee=e.input,oe=e.avail_in,se=n.hold,le=n.bits,n.mode===P&&(n.back=-1);break}for(n.back=0;;){if(Ee=n.lencode[se&(1<>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>be)],me=Ee>>>24,ve=Ee>>>16&255,ye=65535&Ee,be+me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=be,le-=be,n.back+=be}if(se>>>=me,le-=me,n.back+=me,n.length=ye,0===ve){n.mode=V;break}if(32&ve){n.back=-1,n.mode=P;break}if(64&ve){e.msg="invalid literal/length code",n.mode=X;break}n.extra=15&ve,n.mode=$;case $:if(n.extra){Ce=n.extra;while(le>>=n.extra,le-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=W;case W:for(;;){if(Ee=n.distcode[se&(1<>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>be)],me=Ee>>>24,ve=Ee>>>16&255,ye=65535&Ee,be+me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=be,le-=be,n.back+=be}if(se>>>=me,le-=me,n.back+=me,64&ve){e.msg="invalid distance code",n.mode=X;break}n.offset=ye,n.extra=15&ve,n.mode=q;case q:if(n.extra){Ce=n.extra;while(le>>=n.extra,le-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=X;break}n.mode=Z;case Z:if(0===ae)break e;if(fe=ce-ae,n.offset>fe){if(fe=n.offset-fe,fe>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=X;break}fe>n.wnext?(fe-=n.wnext,he=n.wsize-fe):he=n.wnext-fe,fe>n.length&&(fe=n.length),de=n.window}else de=te,he=re-n.offset,fe=n.length;fe>ae&&(fe=ae),ae-=fe,n.length-=fe;do{te[re++]=de[he++]}while(--fe);0===n.length&&(n.mode=H);break;case V:if(0===ae)break e;te[re++]=n.length,ae--,n.mode=H;break;case G:if(n.wrap){while(le<32){if(0===oe)break e;oe--,se|=ee[ne++]<=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),r.forEach(["post","put","patch"],(function(e){l.headers[e]=r.merge(o)})),e.exports=l}).call(this,n("4362"))},a15b:function(e,t,n){"use strict";var r=n("23e7"),i=n("44ad"),o=n("fc6a"),a=n("a640"),s=[].join,l=i!=Object,u=a("join",",");r({target:"Array",proto:!0,forced:l||!u},{join:function(e){return s.call(o(this),void 0===e?",":e)}})},a177:function(e,t,n){"use strict";var r,i=n("be7f"),o=n("07f4"),a=n("c834"),s=n("eeda"),l=n("4dc6"),u=0,c=1,f=3,h=4,d=5,p=0,g=1,m=-2,v=-3,y=-5,b=-1,w=1,_=2,x=3,k=4,S=0,C=2,E=8,A=9,L=15,O=8,T=29,M=256,j=M+1+T,P=30,R=19,N=2*j+1,D=15,z=3,F=258,I=F+z+1,B=32,U=42,H=69,$=73,W=91,q=103,Z=113,V=666,G=1,Y=2,K=3,X=4,J=3;function Q(e,t){return e.msg=l[t],t}function ee(e){return(e<<1)-(e>4?9:0)}function te(e){var t=e.length;while(--t>=0)e[t]=0}function ne(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function re(e,t){o._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ne(e.strm)}function ie(e,t){e.pending_buf[e.pending++]=t}function oe(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function ae(e,t,n,r){var o=e.avail_in;return o>r&&(o=r),0===o?0:(e.avail_in-=o,i.arraySet(t,e.input,e.next_in,o,n),1===e.state.wrap?e.adler=a(e.adler,t,o,n):2===e.state.wrap&&(e.adler=s(e.adler,t,o,n)),e.next_in+=o,e.total_in+=o,o)}function se(e,t){var n,r,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-I?e.strstart-(e.w_size-I):0,u=e.window,c=e.w_mask,f=e.prev,h=e.strstart+F,d=u[o+a-1],p=u[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(n=t,u[n+a]===p&&u[n+a-1]===d&&u[n]===u[o]&&u[++n]===u[o+1]){o+=2,n++;do{}while(u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&oa){if(e.match_start=t,a=r,r>=s)break;d=u[o+a-1],p=u[o+a]}}}while((t=f[t&c])>l&&0!==--i);return a<=e.lookahead?a:e.lookahead}function le(e){var t,n,r,o,a,s=e.w_size;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=s+(s-I)){i.arraySet(e.window,e.window,s,s,0),e.match_start-=s,e.strstart-=s,e.block_start-=s,n=e.hash_size,t=n;do{r=e.head[--t],e.head[t]=r>=s?r-s:0}while(--n);n=s,t=n;do{r=e.prev[--t],e.prev[t]=r>=s?r-s:0}while(--n);o+=s}if(0===e.strm.avail_in)break;if(n=ae(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=n,e.lookahead+e.insert>=z){a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(le(e),0===e.lookahead&&t===u)return G;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,re(e,!1),0===e.strm.avail_out))return G;if(e.strstart-e.block_start>=e.w_size-I&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):(e.strstart>e.block_start&&(re(e,!1),e.strm.avail_out),G)}function ce(e,t){for(var n,r;;){if(e.lookahead=z&&(e.ins_h=(e.ins_h<=z)if(r=o._tr_tally(e,e.strstart-e.match_start,e.match_length-z),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=z){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=z&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=z-1)),e.prev_length>=z&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-z,r=o._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-z),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<=z&&e.strstart>0&&(i=e.strstart-1,r=s[i],r===s[++i]&&r===s[++i]&&r===s[++i])){a=e.strstart+F;do{}while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=z?(n=o._tr_tally(e,1,e.match_length-z),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):e.last_lit&&(re(e,!1),0===e.strm.avail_out)?G:Y}function de(e,t){for(var n;;){if(0===e.lookahead&&(le(e),0===e.lookahead)){if(t===u)return G;break}if(e.match_length=0,n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):e.last_lit&&(re(e,!1),0===e.strm.avail_out)?G:Y}function pe(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function ge(e){e.window_size=2*e.w_size,te(e.head),e.max_lazy_match=r[e.level].max_lazy,e.good_match=r[e.level].good_length,e.nice_match=r[e.level].nice_length,e.max_chain_length=r[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=z-1,e.match_available=0,e.ins_h=0}function me(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=E,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*N),this.dyn_dtree=new i.Buf16(2*(2*P+1)),this.bl_tree=new i.Buf16(2*(2*R+1)),te(this.dyn_ltree),te(this.dyn_dtree),te(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(D+1),this.heap=new i.Buf16(2*j+1),te(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*j+1),te(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ve(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=C,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?U:Z,e.adler=2===t.wrap?0:1,t.last_flush=u,o._tr_init(t),p):Q(e,m)}function ye(e){var t=ve(e);return t===p&&ge(e.state),t}function be(e,t){return e&&e.state?2!==e.state.wrap?m:(e.state.gzhead=t,p):m}function we(e,t,n,r,o,a){if(!e)return m;var s=1;if(t===b&&(t=6),r<0?(s=0,r=-r):r>15&&(s=2,r-=16),o<1||o>A||n!==E||r<8||r>15||t<0||t>9||a<0||a>k)return Q(e,m);8===r&&(r=9);var l=new me;return e.state=l,l.strm=e,l.wrap=s,l.gzhead=null,l.w_bits=r,l.w_size=1<d||t<0)return e?Q(e,m):m;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===V&&t!==h)return Q(e,0===e.avail_out?y:m);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===U)if(2===i.wrap)e.adler=0,ie(i,31),ie(i,139),ie(i,8),i.gzhead?(ie(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),ie(i,255&i.gzhead.time),ie(i,i.gzhead.time>>8&255),ie(i,i.gzhead.time>>16&255),ie(i,i.gzhead.time>>24&255),ie(i,9===i.level?2:i.strategy>=_||i.level<2?4:0),ie(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(ie(i,255&i.gzhead.extra.length),ie(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=H):(ie(i,0),ie(i,0),ie(i,0),ie(i,0),ie(i,0),ie(i,9===i.level?2:i.strategy>=_||i.level<2?4:0),ie(i,J),i.status=Z);else{var v=E+(i.w_bits-8<<4)<<8,b=-1;b=i.strategy>=_||i.level<2?0:i.level<6?1:6===i.level?2:3,v|=b<<6,0!==i.strstart&&(v|=B),v+=31-v%31,i.status=Z,oe(i,v),0!==i.strstart&&(oe(i,e.adler>>>16),oe(i,65535&e.adler)),e.adler=1}if(i.status===H)if(i.gzhead.extra){a=i.pending;while(i.gzindex<(65535&i.gzhead.extra.length)){if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size))break;ie(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++}i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=$)}else i.status=$;if(i.status===$)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.gzindex=0,i.status=W)}else i.status=W;if(i.status===W)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.status=q)}else i.status=q;if(i.status===q&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ne(e),i.pending+2<=i.pending_buf_size&&(ie(i,255&e.adler),ie(i,e.adler>>8&255),e.adler=0,i.status=Z)):i.status=Z),0!==i.pending){if(ne(e),0===e.avail_out)return i.last_flush=-1,p}else if(0===e.avail_in&&ee(t)<=ee(n)&&t!==h)return Q(e,y);if(i.status===V&&0!==e.avail_in)return Q(e,y);if(0!==e.avail_in||0!==i.lookahead||t!==u&&i.status!==V){var w=i.strategy===_?de(i,t):i.strategy===x?he(i,t):r[i.level].func(i,t);if(w!==K&&w!==X||(i.status=V),w===G||w===K)return 0===e.avail_out&&(i.last_flush=-1),p;if(w===Y&&(t===c?o._tr_align(i):t!==d&&(o._tr_stored_block(i,0,0,!1),t===f&&(te(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),ne(e),0===e.avail_out))return i.last_flush=-1,p}return t!==h?p:i.wrap<=0?g:(2===i.wrap?(ie(i,255&e.adler),ie(i,e.adler>>8&255),ie(i,e.adler>>16&255),ie(i,e.adler>>24&255),ie(i,255&e.total_in),ie(i,e.total_in>>8&255),ie(i,e.total_in>>16&255),ie(i,e.total_in>>24&255)):(oe(i,e.adler>>>16),oe(i,65535&e.adler)),ne(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?p:g)}function ke(e){var t;return e&&e.state?(t=e.state.status,t!==U&&t!==H&&t!==$&&t!==W&&t!==q&&t!==Z&&t!==V?Q(e,m):(e.state=null,t===Z?Q(e,v):p)):m}function Se(e,t){var n,r,o,s,l,u,c,f,h=t.length;if(!e||!e.state)return m;if(n=e.state,s=n.wrap,2===s||1===s&&n.status!==U||n.lookahead)return m;1===s&&(e.adler=a(e.adler,t,h,0)),n.wrap=0,h>=n.w_size&&(0===s&&(te(n.head),n.strstart=0,n.block_start=0,n.insert=0),f=new i.Buf8(n.w_size),i.arraySet(f,t,h-n.w_size,n.w_size,0),t=f,h=n.w_size),l=e.avail_in,u=e.next_in,c=e.input,e.avail_in=h,e.next_in=0,e.input=t,le(n);while(n.lookahead>=z){r=n.strstart,o=n.lookahead-(z-1);do{n.ins_h=(n.ins_h<=e.max))return e.ch=0,e.text=e.cm.getLine(++e.line),!0}function u(e){if(!(e.line<=e.min))return e.text=e.cm.getLine(--e.line),e.ch=e.text.length,!0}function c(e){for(;;){var t=e.text.indexOf(">",e.ch);if(-1==t){if(l(e))continue;return}if(s(e,t+1)){var n=e.text.lastIndexOf("/",t),r=n>-1&&!/\S/.test(e.text.slice(n+1,t));return e.ch=t+1,r?"selfClose":"regular"}e.ch=t+1}}function f(e){for(;;){var t=e.ch?e.text.lastIndexOf("<",e.ch-1):-1;if(-1==t){if(u(e))continue;return}if(s(e,t+1)){o.lastIndex=t,e.ch=t;var n=o.exec(e.text);if(n&&n.index==t)return n}else e.ch=t}}function h(e){for(;;){o.lastIndex=e.ch;var t=o.exec(e.text);if(!t){if(l(e))continue;return}if(s(e,t.index+1))return e.ch=t.index+t[0].length,t;e.ch=t.index+1}}function d(e){for(;;){var t=e.ch?e.text.lastIndexOf(">",e.ch-1):-1;if(-1==t){if(u(e))continue;return}if(s(e,t+1)){var n=e.text.lastIndexOf("/",t),r=n>-1&&!/\S/.test(e.text.slice(n+1,t));return e.ch=t+1,r?"selfClose":"regular"}e.ch=t}}function p(e,n){for(var r=[];;){var i,o=h(e),a=e.line,s=e.ch-(o?o[0].length:0);if(!o||!(i=c(e)))return;if("selfClose"!=i)if(o[1]){for(var l=r.length-1;l>=0;--l)if(r[l]==o[2]){r.length=l;break}if(l<0&&(!n||n==o[2]))return{tag:o[2],from:t(a,s),to:t(e.line,e.ch)}}else r.push(o[2])}}function g(e,n){for(var r=[];;){var i=d(e);if(!i)return;if("selfClose"!=i){var o=e.line,a=e.ch,s=f(e);if(!s)return;if(s[1])r.push(s[2]);else{for(var l=r.length-1;l>=0;--l)if(r[l]==s[2]){r.length=l;break}if(l<0&&(!n||n==s[2]))return{tag:s[2],from:t(e.line,e.ch),to:t(o,a)}}}else f(e)}}e.registerHelper("fold","xml",(function(e,r){for(var i=new a(e,r.line,0);;){var o=h(i);if(!o||i.line!=r.line)return;var s=c(i);if(!s)return;if(!o[1]&&"selfClose"!=s){var l=t(i.line,i.ch),u=p(i,o[2]);return u&&n(u.from,l)>0?{from:l,to:u.from}:null}}})),e.findMatchingTag=function(e,r,i){var o=new a(e,r.line,r.ch,i);if(-1!=o.text.indexOf(">")||-1!=o.text.indexOf("<")){var s=c(o),l=s&&t(o.line,o.ch),u=s&&f(o);if(s&&u&&!(n(o,r)>0)){var h={from:t(o.line,o.ch),to:l,tag:u[2]};return"selfClose"==s?{open:h,close:null,at:"open"}:u[1]?{open:g(o,u[2]),close:h,at:"close"}:(o=new a(e,l.line,l.ch,i),{open:h,close:p(o,u[2]),at:"open"})}}},e.findEnclosingTag=function(e,t,n,r){for(var i=new a(e,t.line,t.ch,n);;){var o=g(i,r);if(!o)break;var s=new a(e,t.line,t.ch,n),l=p(s,o.tag);if(l)return{open:o,close:l}}},e.scanForClosingTag=function(e,t,n,r){var i=new a(e,t.line,t.ch,r?{from:0,to:r}:null);return p(i,n)}}))},a450:function(e,t,n){var r=n("52c9"),i=n("cd48"),o=r.WeakMap;e.exports="function"===typeof o&&/native code/.test(i(o))},a4d3:function(e,t,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("d066"),a=n("c430"),s=n("83ab"),l=n("4930"),u=n("fdbf"),c=n("d039"),f=n("5135"),h=n("e8b5"),d=n("861d"),p=n("825a"),g=n("7b0b"),m=n("fc6a"),v=n("c04e"),y=n("5c6c"),b=n("7c73"),w=n("df75"),_=n("241c"),x=n("057f"),k=n("7418"),S=n("06cf"),C=n("9bf2"),E=n("d1e7"),A=n("9112"),L=n("6eeb"),O=n("5692"),T=n("f772"),M=n("d012"),j=n("90e3"),P=n("b622"),R=n("e538"),N=n("746f"),D=n("d44e"),z=n("69f3"),F=n("b727").forEach,I=T("hidden"),B="Symbol",U="prototype",H=P("toPrimitive"),$=z.set,W=z.getterFor(B),q=Object[U],Z=i.Symbol,V=o("JSON","stringify"),G=S.f,Y=C.f,K=x.f,X=E.f,J=O("symbols"),Q=O("op-symbols"),ee=O("string-to-symbol-registry"),te=O("symbol-to-string-registry"),ne=O("wks"),re=i.QObject,ie=!re||!re[U]||!re[U].findChild,oe=s&&c((function(){return 7!=b(Y({},"a",{get:function(){return Y(this,"a",{value:7}).a}})).a}))?function(e,t,n){var r=G(q,t);r&&delete q[t],Y(e,t,n),r&&e!==q&&Y(q,t,r)}:Y,ae=function(e,t){var n=J[e]=b(Z[U]);return $(n,{type:B,tag:e,description:t}),s||(n.description=t),n},se=u?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof Z},le=function(e,t,n){e===q&&le(Q,t,n),p(e);var r=v(t,!0);return p(n),f(J,r)?(n.enumerable?(f(e,I)&&e[I][r]&&(e[I][r]=!1),n=b(n,{enumerable:y(0,!1)})):(f(e,I)||Y(e,I,y(1,{})),e[I][r]=!0),oe(e,r,n)):Y(e,r,n)},ue=function(e,t){p(e);var n=m(t),r=w(n).concat(pe(n));return F(r,(function(t){s&&!fe.call(n,t)||le(e,t,n[t])})),e},ce=function(e,t){return void 0===t?b(e):ue(b(e),t)},fe=function(e){var t=v(e,!0),n=X.call(this,t);return!(this===q&&f(J,t)&&!f(Q,t))&&(!(n||!f(this,t)||!f(J,t)||f(this,I)&&this[I][t])||n)},he=function(e,t){var n=m(e),r=v(t,!0);if(n!==q||!f(J,r)||f(Q,r)){var i=G(n,r);return!i||!f(J,r)||f(n,I)&&n[I][r]||(i.enumerable=!0),i}},de=function(e){var t=K(m(e)),n=[];return F(t,(function(e){f(J,e)||f(M,e)||n.push(e)})),n},pe=function(e){var t=e===q,n=K(t?Q:m(e)),r=[];return F(n,(function(e){!f(J,e)||t&&!f(q,e)||r.push(J[e])})),r};if(l||(Z=function(){if(this instanceof Z)throw TypeError("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,t=j(e),n=function(e){this===q&&n.call(Q,e),f(this,I)&&f(this[I],t)&&(this[I][t]=!1),oe(this,t,y(1,e))};return s&&ie&&oe(q,t,{configurable:!0,set:n}),ae(t,e)},L(Z[U],"toString",(function(){return W(this).tag})),L(Z,"withoutSetter",(function(e){return ae(j(e),e)})),E.f=fe,C.f=le,S.f=he,_.f=x.f=de,k.f=pe,R.f=function(e){return ae(P(e),e)},s&&(Y(Z[U],"description",{configurable:!0,get:function(){return W(this).description}}),a||L(q,"propertyIsEnumerable",fe,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:Z}),F(w(ne),(function(e){N(e)})),r({target:B,stat:!0,forced:!l},{for:function(e){var t=String(e);if(f(ee,t))return ee[t];var n=Z(t);return ee[t]=n,te[n]=t,n},keyFor:function(e){if(!se(e))throw TypeError(e+" is not a symbol");if(f(te,e))return te[e]},useSetter:function(){ie=!0},useSimple:function(){ie=!1}}),r({target:"Object",stat:!0,forced:!l,sham:!s},{create:ce,defineProperty:le,defineProperties:ue,getOwnPropertyDescriptor:he}),r({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:de,getOwnPropertySymbols:pe}),r({target:"Object",stat:!0,forced:c((function(){k.f(1)}))},{getOwnPropertySymbols:function(e){return k.f(g(e))}}),V){var ge=!l||c((function(){var e=Z();return"[null]"!=V([e])||"{}"!=V({a:e})||"{}"!=V(Object(e))}));r({target:"JSON",stat:!0,forced:ge},{stringify:function(e,t,n){var r,i=[e],o=1;while(arguments.length>o)i.push(arguments[o++]);if(r=t,(d(t)||void 0!==e)&&!se(e))return h(t)||(t=function(e,t){if("function"==typeof r&&(t=r.call(this,e,t)),!se(t))return t}),i[1]=t,V.apply(null,i)}})}Z[U][H]||A(Z[U],H,Z[U].valueOf),D(Z,B),M[I]=!0},a640:function(e,t,n){"use strict";var r=n("d039");e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){throw 1},1)}))}},a691:function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},a79d:function(e,t,n){"use strict";var r=n("23e7"),i=n("c430"),o=n("fea9"),a=n("d039"),s=n("d066"),l=n("4840"),u=n("cdf9"),c=n("6eeb"),f=!!o&&a((function(){o.prototype["finally"].call({then:function(){}},(function(){}))}));r({target:"Promise",proto:!0,real:!0,forced:f},{finally:function(e){var t=l(this,s("Promise")),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}}),i||"function"!=typeof o||o.prototype["finally"]||c(o.prototype,"finally",s("Promise").prototype["finally"])},a9e3:function(e,t,n){"use strict";var r=n("83ab"),i=n("da84"),o=n("94ca"),a=n("6eeb"),s=n("5135"),l=n("c6b6"),u=n("7156"),c=n("c04e"),f=n("d039"),h=n("7c73"),d=n("241c").f,p=n("06cf").f,g=n("9bf2").f,m=n("58a8").trim,v="Number",y=i[v],b=y.prototype,w=l(h(b))==v,_=function(e){var t,n,r,i,o,a,s,l,u=c(e,!1);if("string"==typeof u&&u.length>2)if(u=m(u),t=u.charCodeAt(0),43===t||45===t){if(n=u.charCodeAt(2),88===n||120===n)return NaN}else if(48===t){switch(u.charCodeAt(1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+u}for(o=u.slice(2),a=o.length,s=0;si)return NaN;return parseInt(o,r)}return+u};if(o(v,!y(" 0o1")||!y("0b1")||y("+0x1"))){for(var x,k=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof k&&(w?f((function(){b.valueOf.call(n)})):l(n)!=v)?u(new y(_(t)),n,k):_(t)},S=r?d(y):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),C=0;S.length>C;C++)s(y,x=S[C])&&!s(k,x)&&g(k,x,p(y,x));k.prototype=b,b.constructor=k,a(i,v,k)}},ab13:function(e,t,n){var r=n("b622"),i=r("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[i]=!1,"/./"[e](t)}catch(r){}}return!1}},abf8:function(e,t,n){var r=n("f97c");e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},ac1f:function(e,t,n){"use strict";var r=n("23e7"),i=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==i},{exec:i})},ad6d:function(e,t,n){"use strict";var r=n("825a");e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},ad71:function(e,t,n){"use strict";(function(t,r){var i=n("966d");e.exports=x;var o,a=n("e3db");x.ReadableState=_;n("faa1").EventEmitter;var s=function(e,t){return e.listeners(t).length},l=n("429b"),u=n("8707").Buffer,c=t.Uint8Array||function(){};function f(e){return u.from(e)}function h(e){return u.isBuffer(e)||e instanceof c}var d=Object.create(n("3a7c"));d.inherits=n("3fb5");var p=n(1),g=void 0;g=p&&p.debuglog?p.debuglog("stream"):function(){};var m,v=n("5e1a"),y=n("4681");d.inherits(x,l);var b=["error","close","destroy","pause","resume"];function w(e,t,n){if("function"===typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}function _(e,t){o=o||n("b19a"),e=e||{};var r=t instanceof o;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,a=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(a||0===a)?a:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new v,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(m||(m=n("7d72").StringDecoder),this.decoder=new m(e.encoding),this.encoding=e.encoding)}function x(e){if(o=o||n("b19a"),!(this instanceof x))return new x(e);this._readableState=new _(e,this),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),l.call(this)}function k(e,t,n,r,i){var o,a=e._readableState;null===t?(a.reading=!1,T(e,a)):(i||(o=C(a,t)),o?e.emit("error",o):a.objectMode||t&&t.length>0?("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=f(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):S(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?S(e,a,t,!1):P(e,a)):S(e,a,t,!1))):r||(a.reading=!1));return E(a)}function S(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&M(e)),P(e,t)}function C(e,t){var n;return h(t)||"string"===typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}function E(e){return!e.ended&&(e.needReadable||e.length=A?e=A:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function O(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=L(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function T(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,M(e)}}function M(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(g("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(j,e):j(e))}function j(e){g("emit readable"),e.emit("readable"),I(e)}function P(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(R,e,t))}function R(e,t){var n=t.length;while(!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=U(e,t.buffer,t.decoder),n);var n}function U(e,t,n){var r;return eo.length?o.length:e;if(a===o.length?i+=o:i+=o.slice(0,e),e-=a,0===e){a===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(a));break}++r}return t.length-=r,i}function $(e,t){var n=u.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;while(r=r.next){var o=r.data,a=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,a),e-=a,0===e){a===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}function W(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(q,t,e))}function q(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function Z(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return g("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?W(this):M(this),null;if(e=O(e,t),0===e&&t.ended)return 0===t.length&&W(this),null;var r,i=t.needReadable;return g("need readable",i),(0===t.length||t.length-e0?B(e,t):null,null===r?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&W(this)),null!==r&&this.emit("data",r),r},x.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},x.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e);break}o.pipesCount+=1,g("pipe count=%d opts=%j",o.pipesCount,t);var a=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr,l=a?c:_;function u(e,t){g("onunpipe"),e===n&&t&&!1===t.hasUnpiped&&(t.hasUnpiped=!0,d())}function c(){g("onend"),e.end()}o.endEmitted?i.nextTick(l):n.once("end",l),e.on("unpipe",u);var f=N(n);e.on("drain",f);var h=!1;function d(){g("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",v),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",_),n.removeListener("data",m),h=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||f()}var p=!1;function m(t){g("ondata"),p=!1;var r=e.write(t);!1!==r||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==Z(o.pipes,e))&&!h&&(g("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function v(t){g("onerror",t),_(),e.removeListener("error",v),0===s(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),_()}function b(){g("onfinish"),e.removeListener("close",y),_()}function _(){g("unpipe"),n.unpipe(e)}return n.on("data",m),w(e,"error",v),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(g("pipe resume"),n.resume()),e},x.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;ot.lastLine())return null;var r=t.getTokenAt(e.Pos(n,1));if(/\S/.test(r.string)||(r=t.getTokenAt(e.Pos(n,r.end+1))),"keyword"!=r.type||"import"!=r.string)return null;for(var i=n,o=Math.min(t.lastLine(),n+10);i<=o;++i){var a=t.getLine(i),s=a.indexOf(";");if(-1!=s)return{startCh:r.end,end:e.Pos(i,s)}}}var i,o=n.line,a=r(o);if(!a||r(o-1)||(i=r(o-2))&&i.end.line==o-1)return null;for(var s=a.end;;){var l=r(s.line+1);if(null==l)break;s=l.end}return{from:t.clipPos(e.Pos(o,a.startCh+1)),to:s}})),e.registerHelper("fold","include",(function(t,n){function r(n){if(nt.lastLine())return null;var r=t.getTokenAt(e.Pos(n,1));return/\S/.test(r.string)||(r=t.getTokenAt(e.Pos(n,r.end+1))),"meta"==r.type&&"#include"==r.string.slice(0,8)?r.start+8:void 0}var i=n.line,o=r(i);if(null==o||null!=r(i-1))return null;for(var a=i;;){var s=r(a+1);if(null==s)break;++a}return{from:e.Pos(i,o+1),to:t.clipPos(e.Pos(a))}}))}))},af3e:function(e,t,n){var r=n("b65a"),i=n("0373"),o=n("abf8"),a=n("e9a6"),s=Object.defineProperty;t.f=r?s:function(e,t,n){if(o(e),t=a(t,!0),o(n),i)try{return s(e,t,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},b041:function(e,t,n){"use strict";var r=n("00ee"),i=n("f5df");e.exports=r?{}.toString:function(){return"[object "+i(this)+"]"}},b047:function(e,t,n){var r=n("1a8c"),i=n("408c"),o=n("b4b0"),a="Expected a function",s=Math.max,l=Math.min;function u(e,t,n){var u,c,f,h,d,p,g=0,m=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=u,r=c;return u=c=void 0,g=t,h=e.apply(r,n),h}function w(e){return g=e,d=setTimeout(k,t),m?b(e):h}function _(e){var n=e-p,r=e-g,i=t-n;return v?l(i,f-r):i}function x(e){var n=e-p,r=e-g;return void 0===p||n>=t||n<0||v&&r>=f}function k(){var e=i();if(x(e))return S(e);d=setTimeout(k,_(e))}function S(e){return d=void 0,y&&u?b(e):(u=c=void 0,h)}function C(){void 0!==d&&clearTimeout(d),g=0,u=p=c=d=void 0}function E(){return void 0===d?h:S(i())}function A(){var e=i(),n=x(e);if(u=arguments,c=this,p=e,n){if(void 0===d)return w(p);if(v)return clearTimeout(d),d=setTimeout(k,t),b(p)}return void 0===d&&(d=setTimeout(k,t)),h}return t=o(t)||0,r(n)&&(m=!!n.leading,v="maxWait"in n,f=v?s(o(n.maxWait)||0,t):f,y="trailing"in n?!!n.trailing:y),A.cancel=C,A.flush=E,A}e.exports=u},b0c0:function(e,t,n){var r=n("83ab"),i=n("9bf2").f,o=Function.prototype,a=o.toString,s=/^\s*function ([^ (]*)/,l="name";r&&!(l in o)&&i(o,l,{configurable:!0,get:function(){try{return a.call(this).match(s)[1]}catch(e){return""}}})},b19a:function(e,t,n){"use strict";var r=n("966d"),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=f;var o=Object.create(n("3a7c"));o.inherits=n("3fb5");var a=n("ad71"),s=n("dc14");o.inherits(f,a);for(var l=i(s.prototype),u=0;u=0&&Math.floor(t)===t&&isFinite(e)}function m(e){return a(e)&&"function"===typeof e.then&&"function"===typeof e.catch}function v(e){return null==e?"":Array.isArray(e)||d(e)&&e.toString===h?JSON.stringify(e,y,2):String(e)}function y(e,t){return t&&t.__v_isRef?t.value:t}function b(e){var t=parseFloat(e);return isNaN(t)?e:t}function w(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(r,1)}}var k=Object.prototype.hasOwnProperty;function S(e,t){return k.call(e,t)}function C(e){var t=Object.create(null);return function(n){var r=t[n];return r||(t[n]=e(n))}}var E=/-(\w)/g,A=C((function(e){return e.replace(E,(function(e,t){return t?t.toUpperCase():""}))})),O=C((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),L=/\B([A-Z])/g,T=C((function(e){return e.replace(L,"-$1").toLowerCase()}));function M(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function P(e,t){return e.bind(t)}var j=Function.prototype.bind?P:M;function R(e,t){t=t||0;var n=e.length-t,r=new Array(n);while(n--)r[n]=e[n+t];return r}function N(e,t){for(var n in t)e[n]=t[n];return e}function D(e){for(var t={},n=0;n0,ie=te&&te.indexOf("edge/")>0;te&&te.indexOf("android");var oe=te&&/iphone|ipad|ipod|ios/.test(te);te&&/chrome\/\d+/.test(te),te&&/phantomjs/.test(te);var ae,se=te&&te.match(/firefox\/(\d+)/),le={}.watch,ue=!1;if(ee)try{var ce={};Object.defineProperty(ce,"passive",{get:function(){ue=!0}}),window.addEventListener("test-passive",null,ce)}catch(Qa){}var fe=function(){return void 0===ae&&(ae=!ee&&"undefined"!==typeof e&&(e["process"]&&"server"===e["process"].env.VUE_ENV)),ae},he=ee&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function de(e){return"function"===typeof e&&/native code/.test(e.toString())}var pe,ge="undefined"!==typeof Symbol&&de(Symbol)&&"undefined"!==typeof Reflect&&de(Reflect.ownKeys);pe="undefined"!==typeof Set&&de(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var me=null;function ve(e){void 0===e&&(e=null),e||me&&me._scope.off(),me=e,e&&e._scope.on()}var ye=function(){function e(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(e.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),e}(),be=function(e){void 0===e&&(e="");var t=new ye;return t.text=e,t.isComment=!0,t};function we(e){return new ye(void 0,void 0,void 0,String(e))}function _e(e){var t=new ye(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}"function"===typeof SuppressedError&&SuppressedError;var xe=0,ke=[],Se=function(){for(var e=0;e0&&(r=ut(r,"".concat(t||"","_").concat(n)),lt(r[0])&<(c)&&(f[l]=we(c.text+r[0].text),r.shift()),f.push.apply(f,r)):u(r)?lt(c)?f[l]=we(c.text+r):""!==r&&f.push(we(r)):lt(r)&<(c)?f[l]=we(c.text+r.text):(s(e._isVList)&&a(r.tag)&&o(r.key)&&a(t)&&(r.key="__vlist".concat(t,"_").concat(n,"__")),f.push(r)));return f}function ct(e,t){var n,r,o,s,l=null;if(i(e)||"string"===typeof e)for(l=new Array(e.length),n=0,r=e.length;n0,s=t?!!t.$stable:!a,l=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(s&&i&&i!==r&&l===i.$key&&!a&&!i.$hasNormal)return i;for(var u in o={},t)t[u]&&"$"!==u[0]&&(o[u]=Lt(e,n,u,t[u]))}else o={};for(var c in n)c in o||(o[c]=Tt(n,c));return t&&Object.isExtensible(t)&&(t._normalized=o),K(o,"$stable",s),K(o,"$key",l),K(o,"$hasNormal",a),o}function Lt(e,t,n,r){var o=function(){var t=me;ve(e);var n=arguments.length?r.apply(null,arguments):r({});n=n&&"object"===typeof n&&!i(n)?[n]:st(n);var o=n&&n[0];return ve(t),n&&(!o||1===n.length&&o.isComment&&!At(o))?void 0:n};return r.proxy&&Object.defineProperty(t,n,{get:o,enumerable:!0,configurable:!0}),o}function Tt(e,t){return function(){return e[t]}}function Mt(e){var t=e.$options,n=t.setup;if(n){var r=e._setupContext=Pt(e);ve(e),Ae();var i=Xt(n,null,[e._props||He({}),r],e,"setup");if(Oe(),ve(),c(i))t.render=i;else if(f(i))if(e._setupState=i,i.__sfc){var o=e._setupProxy={};for(var a in i)"__sfc"!==a&&Ve(o,i,a)}else for(var a in i)Y(a)||Ve(e,i,a);else 0}}function Pt(e){return{get attrs(){if(!e._attrsProxy){var t=e._attrsProxy={};K(t,"_v_attr_proxy",!0),jt(t,e.$attrs,r,e,"$attrs")}return e._attrsProxy},get listeners(){if(!e._listenersProxy){var t=e._listenersProxy={};jt(t,e.$listeners,r,e,"$listeners")}return e._listenersProxy},get slots(){return Nt(e)},emit:j(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Ve(e,t,n)}))}}}function jt(e,t,n,r,i){var o=!1;for(var a in t)a in e?t[a]!==n[a]&&(o=!0):(o=!0,Rt(e,a,r,i));for(var a in e)a in t||(o=!0,delete e[a]);return o}function Rt(e,t,n,r){Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){return n[r][t]}})}function Nt(e){return e._slotsProxy||Dt(e._slotsProxy={},e.$scopedSlots),e._slotsProxy}function Dt(e,t){for(var n in t)e[n]=t[n];for(var n in e)n in t||delete e[n]}function Ft(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,i=n&&n.context;e.$slots=Ct(t._renderChildren,i),e.$scopedSlots=n?Ot(e.$parent,n.data.scopedSlots,e.$slots):r,e._c=function(t,n,r,i){return Zt(e,t,n,r,i,!1)},e.$createElement=function(t,n,r,i){return Zt(e,t,n,r,i,!0)};var o=n&&n.data;ze(e,"$attrs",o&&o.attrs||r,null,!0),ze(e,"$listeners",t._parentListeners||r,null,!0)}var It=null;function zt(e){St(e.prototype),e.prototype.$nextTick=function(e){return cn(e,this)},e.prototype._render=function(){var e=this,t=e.$options,n=t.render,r=t._parentVnode;r&&e._isMounted&&(e.$scopedSlots=Ot(e.$parent,r.data.scopedSlots,e.$slots,e.$scopedSlots),e._slotsProxy&&Dt(e._slotsProxy,e.$scopedSlots)),e.$vnode=r;var o,a=me,s=It;try{ve(e),It=e,o=n.call(e._renderProxy,e.$createElement)}catch(Qa){Kt(Qa,e,"render"),o=e._vnode}finally{It=s,ve(a)}return i(o)&&1===o.length&&(o=o[0]),o instanceof ye||(o=be()),o.parent=r,o}}function Bt(e,t){return(e.__esModule||ge&&"Module"===e[Symbol.toStringTag])&&(e=e.default),f(e)?t.extend(e):e}function Ut(e,t,n,r,i){var o=be();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}function $t(e,t){if(s(e.error)&&a(e.errorComp))return e.errorComp;if(a(e.resolved))return e.resolved;var n=It;if(n&&a(e.owners)&&-1===e.owners.indexOf(n)&&e.owners.push(n),s(e.loading)&&a(e.loadingComp))return e.loadingComp;if(n&&!a(e.owners)){var r=e.owners=[n],i=!0,l=null,u=null;n.$on("hook:destroyed",(function(){return x(r,n)}));var c=function(e){for(var t=0,n=r.length;t1?R(n):n;for(var r=R(arguments,1),i='event handler for "'.concat(e,'"'),o=0,a=n.length;odocument.createEvent("Event").timeStamp&&(Wn=function(){return qn.now()})}var Zn=function(e,t){if(e.post){if(!t.post)return 1}else if(t.post)return-1;return e.id-t.id};function Vn(){var e,t;for(Hn=Wn(),Bn=!0,Dn.sort(Zn),Un=0;UnUn&&Dn[n].id>e.id)n--;Dn.splice(n+1,0,e)}else Dn.push(e);zn||(zn=!0,cn(Vn))}}function Jn(e){var t=e.$options.provide;if(t){var n=c(t)?t.call(e):t;if(!f(n))return;for(var r=Qe(e),i=ge?Reflect.ownKeys(n):Object.keys(n),o=0;o-1)if(o&&!S(i,"default"))a=!1;else if(""===a||a===T(e)){var l=Mr(String,i.type);(l<0||s-1)return this;var n=R(arguments,1);return n.unshift(this),c(e.install)?e.install.apply(e,n):c(e)&&e.apply(null,n),t.push(e),this}}function ei(e){e.mixin=function(e){return this.options=Sr(this.options,e),this}}function ti(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=or(e)||or(n.options);var a=function(e){this._init(e)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=t++,a.options=Sr(n.options,e),a["super"]=n,a.options.props&&ni(a),a.options.computed&&ri(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,q.forEach((function(e){a[e]=n[e]})),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=N({},a.options),i[r]=a,a}}function ni(e){var t=e.options.props;for(var n in t)jr(e.prototype,"_props",n)}function ri(e){var t=e.options.computed;for(var n in t)Br(e.prototype,n,t[n])}function ii(e){q.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&d(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&c(n)&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}function oi(e){return e&&(or(e.Ctor.options)||e.tag)}function ai(e,t){return i(e)?e.indexOf(t)>-1:"string"===typeof e?e.split(",").indexOf(t)>-1:!!p(e)&&e.test(t)}function si(e,t){var n=e.cache,r=e.keys,i=e._vnode,o=e.$vnode;for(var a in n){var s=n[a];if(s){var l=s.name;l&&!t(l)&&li(n,a,r,i)}}o.componentOptions.children=void 0}function li(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,x(n,t)}Gr(Jr),Zr(Jr),Cn(Jr),Ln(Jr),zt(Jr);var ui=[String,RegExp,Array],ci={name:"keep-alive",abstract:!0,props:{include:ui,exclude:ui,max:[String,Number]},methods:{cacheVNode:function(){var e=this,t=e.cache,n=e.keys,r=e.vnodeToCache,i=e.keyToCache;if(r){var o=r.tag,a=r.componentInstance,s=r.componentOptions;t[i]={name:oi(s),tag:o,componentInstance:a},n.push(i),this.max&&n.length>parseInt(this.max)&&li(t,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)li(this.cache,e,this.keys)},mounted:function(){var e=this;this.cacheVNode(),this.$watch("include",(function(t){si(e,(function(e){return ai(t,e)}))})),this.$watch("exclude",(function(t){si(e,(function(e){return!ai(t,e)}))}))},updated:function(){this.cacheVNode()},render:function(){var e=this.$slots.default,t=Ht(e),n=t&&t.componentOptions;if(n){var r=oi(n),i=this,o=i.include,a=i.exclude;if(o&&(!r||!ai(o,r))||a&&r&&ai(a,r))return t;var s=this,l=s.cache,u=s.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):t.key;l[c]?(t.componentInstance=l[c].componentInstance,x(u,c),u.push(c)):(this.vnodeToCache=t,this.keyToCache=c),t.data.keepAlive=!0}return t||e&&e[0]}},fi={KeepAlive:ci};function hi(e){var t={get:function(){return V}};Object.defineProperty(e,"config",t),e.util={warn:dr,extend:N,mergeOptions:Sr,defineReactive:ze},e.set=Be,e.delete=Ue,e.nextTick=cn,e.observable=function(e){return Ie(e),e},e.options=Object.create(null),q.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,N(e.options.components,fi),Qr(e),ei(e),ti(e),ii(e)}hi(Jr),Object.defineProperty(Jr.prototype,"$isServer",{get:fe}),Object.defineProperty(Jr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Jr,"FunctionalRenderContext",{value:tr}),Jr.version=dn;var di=w("style,class"),pi=w("input,textarea,option,select,progress"),gi=function(e,t,n){return"value"===n&&pi(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},mi=w("contenteditable,draggable,spellcheck"),vi=w("events,caret,typing,plaintext-only"),yi=function(e,t){return ki(t)||"false"===t?"false":"contenteditable"===e&&vi(t)?t:"true"},bi=w("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),wi="http://www.w3.org/1999/xlink",_i=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},xi=function(e){return _i(e)?e.slice(6,e.length):""},ki=function(e){return null==e||!1===e};function Si(e){var t=e.data,n=e,r=e;while(a(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(t=Ci(r.data,t));while(a(n=n.parent))n&&n.data&&(t=Ci(t,n.data));return Ei(t.staticClass,t.class)}function Ci(e,t){return{staticClass:Ai(e.staticClass,t.staticClass),class:a(e.class)?[e.class,t.class]:t.class}}function Ei(e,t){return a(e)||a(t)?Ai(e,Oi(t)):""}function Ai(e,t){return e?t?e+" "+t:e:t||""}function Oi(e){return Array.isArray(e)?Li(e):f(e)?Ti(e):"string"===typeof e?e:""}function Li(e){for(var t,n="",r=0,i=e.length;r-1?Di[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Di[e]=/HTMLUnknownElement/.test(t.toString())}var Ii=w("text,number,password,search,email,tel,url");function zi(e){if("string"===typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function Bi(e,t){var n=document.createElement(e);return"select"!==e||t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function Ui(e,t){return document.createElementNS(Mi[e],t)}function $i(e){return document.createTextNode(e)}function Hi(e){return document.createComment(e)}function Wi(e,t,n){e.insertBefore(t,n)}function qi(e,t){e.removeChild(t)}function Zi(e,t){e.appendChild(t)}function Vi(e){return e.parentNode}function Gi(e){return e.nextSibling}function Yi(e){return e.tagName}function Ki(e,t){e.textContent=t}function Xi(e,t){e.setAttribute(t,"")}var Ji=Object.freeze({__proto__:null,createElement:Bi,createElementNS:Ui,createTextNode:$i,createComment:Hi,insertBefore:Wi,removeChild:qi,appendChild:Zi,parentNode:Vi,nextSibling:Gi,tagName:Yi,setTextContent:Ki,setStyleScope:Xi}),Qi={create:function(e,t){eo(t)},update:function(e,t){e.data.ref!==t.data.ref&&(eo(e,!0),eo(t))},destroy:function(e){eo(e,!0)}};function eo(e,t){var n=e.data.ref;if(a(n)){var r=e.context,o=e.componentInstance||e.elm,s=t?null:o,l=t?void 0:o;if(c(n))Xt(n,r,[s],r,"template ref function");else{var u=e.data.refInFor,f="string"===typeof n||"number"===typeof n,h=Ze(n),d=r.$refs;if(f||h)if(u){var p=f?d[n]:n.value;t?i(p)&&x(p,o):i(p)?p.includes(o)||p.push(o):f?(d[n]=[o],to(r,n,d[n])):n.value=[o]}else if(f){if(t&&d[n]!==o)return;d[n]=l,to(r,n,s)}else if(h){if(t&&n.value!==o)return;n.value=s}else 0}}}function to(e,t,n){var r=e._setupState;r&&S(r,t)&&(Ze(r[t])?r[t].value=n:r[t]=n)}var no=new ye("",{},[]),ro=["create","activate","update","remove","destroy"];function io(e,t){return e.key===t.key&&e.asyncFactory===t.asyncFactory&&(e.tag===t.tag&&e.isComment===t.isComment&&a(e.data)===a(t.data)&&oo(e,t)||s(e.isAsyncPlaceholder)&&o(t.asyncFactory.error))}function oo(e,t){if("input"!==e.tag)return!0;var n,r=a(n=e.data)&&a(n=n.attrs)&&n.type,i=a(n=t.data)&&a(n=n.attrs)&&n.type;return r===i||Ii(r)&&Ii(i)}function ao(e,t,n){var r,i,o={};for(r=t;r<=n;++r)i=e[r].key,a(i)&&(o[i]=r);return o}function so(e){var t,n,r={},l=e.modules,c=e.nodeOps;for(t=0;tg?(f=o(n[y+1])?null:n[y+1].elm,S(e,f,n,d,y,r)):d>y&&E(t,h,g)}function L(e,t,n,r){for(var i=n;i-1?bo(e,t,n):bi(t)?ki(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):mi(t)?e.setAttribute(t,yi(t,n)):_i(t)?ki(n)?e.removeAttributeNS(wi,xi(t)):e.setAttributeNS(wi,t,n):bo(e,t,n)}function bo(e,t,n){if(ki(n))e.removeAttribute(t);else{if(ne&&!re&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var wo={create:vo,update:vo};function _o(e,t){var n=t.elm,r=t.data,i=e.data;if(!(o(r.staticClass)&&o(r.class)&&(o(i)||o(i.staticClass)&&o(i.class)))){var s=Si(t),l=n._transitionClasses;a(l)&&(s=Ai(s,Oi(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var xo,ko={create:_o,update:_o},So="__r",Co="__c";function Eo(e){if(a(e[So])){var t=ne?"change":"input";e[t]=[].concat(e[So],e[t]||[]),delete e[So]}a(e[Co])&&(e.change=[].concat(e[Co],e.change||[]),delete e[Co])}function Ao(e,t,n){var r=xo;return function i(){var o=t.apply(null,arguments);null!==o&&To(e,i,n,r)}}var Oo=tn&&!(se&&Number(se[1])<=53);function Lo(e,t,n,r){if(Oo){var i=Hn,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}xo.addEventListener(e,t,ue?{capture:n,passive:r}:n)}function To(e,t,n,r){(r||xo).removeEventListener(e,t._wrapper||t,n)}function Mo(e,t){if(!o(e.data.on)||!o(t.data.on)){var n=t.data.on||{},r=e.data.on||{};xo=t.elm||e.elm,Eo(n),nt(n,r,Lo,To,Ao,t.context),xo=void 0}}var Po,jo={create:Mo,update:Mo,destroy:function(e){return Mo(e,no)}};function Ro(e,t){if(!o(e.data.domProps)||!o(t.data.domProps)){var n,r,i=t.elm,l=e.data.domProps||{},u=t.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=t.data.domProps=N({},u)),l)n in u||(i[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===l[n])continue;1===i.childNodes.length&&i.removeChild(i.childNodes[0])}if("value"===n&&"PROGRESS"!==i.tagName){i._value=r;var c=o(r)?"":String(r);No(i,c)&&(i.value=c)}else if("innerHTML"===n&&ji(i.tagName)&&o(i.innerHTML)){Po=Po||document.createElement("div"),Po.innerHTML="".concat(r,"");var f=Po.firstChild;while(i.firstChild)i.removeChild(i.firstChild);while(f.firstChild)i.appendChild(f.firstChild)}else if(r!==l[n])try{i[n]=r}catch(Qa){}}}}function No(e,t){return!e.composing&&("OPTION"===e.tagName||Do(e,t)||Fo(e,t))}function Do(e,t){var n=!0;try{n=document.activeElement!==e}catch(Qa){}return n&&e.value!==t}function Fo(e,t){var n=e.value,r=e._vModifiers;if(a(r)){if(r.number)return b(n)!==b(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}var Io={create:Ro,update:Ro},zo=C((function(e){var t={},n=/;(?![^(]*\))/g,r=/:(.+)/;return e.split(n).forEach((function(e){if(e){var n=e.split(r);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}));function Bo(e){var t=Uo(e.style);return e.staticStyle?N(e.staticStyle,t):t}function Uo(e){return Array.isArray(e)?D(e):"string"===typeof e?zo(e):e}function $o(e,t){var n,r={};if(t){var i=e;while(i.componentInstance)i=i.componentInstance._vnode,i&&i.data&&(n=Bo(i.data))&&N(r,n)}(n=Bo(e.data))&&N(r,n);var o=e;while(o=o.parent)o.data&&(n=Bo(o.data))&&N(r,n);return r}var Ho,Wo=/^--/,qo=/\s*!important$/,Zo=function(e,t,n){if(Wo.test(t))e.style.setProperty(t,n);else if(qo.test(n))e.style.setProperty(T(t),n.replace(qo,""),"important");else{var r=Go(t);if(Array.isArray(n))for(var i=0,o=n.length;i-1?t.split(Xo).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" ".concat(e.getAttribute("class")||""," ");n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function Qo(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Xo).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{var n=" ".concat(e.getAttribute("class")||""," "),r=" "+t+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?e.setAttribute("class",n):e.removeAttribute("class")}}function ea(e){if(e){if("object"===typeof e){var t={};return!1!==e.css&&N(t,ta(e.name||"v")),N(t,e),t}return"string"===typeof e?ta(e):void 0}}var ta=C((function(e){return{enterClass:"".concat(e,"-enter"),enterToClass:"".concat(e,"-enter-to"),enterActiveClass:"".concat(e,"-enter-active"),leaveClass:"".concat(e,"-leave"),leaveToClass:"".concat(e,"-leave-to"),leaveActiveClass:"".concat(e,"-leave-active")}})),na=ee&&!re,ra="transition",ia="animation",oa="transition",aa="transitionend",sa="animation",la="animationend";na&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(oa="WebkitTransition",aa="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(sa="WebkitAnimation",la="webkitAnimationEnd"));var ua=ee?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function ca(e){ua((function(){ua(e)}))}function fa(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Jo(e,t))}function ha(e,t){e._transitionClasses&&x(e._transitionClasses,t),Qo(e,t)}function da(e,t,n){var r=ga(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===ra?aa:la,l=0,u=function(){e.removeEventListener(s,c),n()},c=function(t){t.target===e&&++l>=a&&u()};setTimeout((function(){l0&&(n=ra,c=a,f=o.length):t===ia?u>0&&(n=ia,c=u,f=l.length):(c=Math.max(a,u),n=c>0?a>u?ra:ia:null,f=n?n===ra?o.length:l.length:0);var h=n===ra&&pa.test(r[oa+"Property"]);return{type:n,timeout:c,propCount:f,hasTransform:h}}function ma(e,t){while(e.length1}function xa(e,t){!0!==t.data.show&&ya(t)}var ka=ee?{create:xa,activate:xa,remove:function(e,t){!0!==e.data.show?ba(e,t):t()}}:{},Sa=[wo,ko,jo,Io,Ko,ka],Ca=Sa.concat(mo),Ea=so({nodeOps:Ji,modules:Ca});re&&document.addEventListener("selectionchange",(function(){var e=document.activeElement;e&&e.vmodel&&Ra(e,"input")}));var Aa={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?rt(n,"postpatch",(function(){Aa.componentUpdated(e,t,n)})):Oa(e,t,n.context),e._vOptions=[].map.call(e.options,Ma)):("textarea"===n.tag||Ii(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Pa),e.addEventListener("compositionend",ja),e.addEventListener("change",ja),re&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Oa(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Ma);if(i.some((function(e,t){return!B(e,r[t])}))){var o=e.multiple?t.value.some((function(e){return Ta(e,i)})):t.value!==t.oldValue&&Ta(t.value,i);o&&Ra(e,"change")}}}};function Oa(e,t,n){La(e,t,n),(ne||ie)&&setTimeout((function(){La(e,t,n)}),0)}function La(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,l=e.options.length;s-1,a.selected!==o&&(a.selected=o);else if(B(Ma(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ta(e,t){return t.every((function(t){return!B(t,e)}))}function Ma(e){return"_value"in e?e._value:e.value}function Pa(e){e.target.composing=!0}function ja(e){e.target.composing&&(e.target.composing=!1,Ra(e.target,"input"))}function Ra(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Na(e){return!e.componentInstance||e.data&&e.data.transition?e:Na(e.componentInstance._vnode)}var Da={bind:function(e,t,n){var r=t.value;n=Na(n);var i=n.data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,ya(n,(function(){e.style.display=o}))):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value,i=t.oldValue;if(!r!==!i){n=Na(n);var o=n.data&&n.data.transition;o?(n.data.show=!0,r?ya(n,(function(){e.style.display=e.__vOriginalDisplay})):ba(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none"}},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},Fa={model:Aa,show:Da},Ia={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function za(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?za(Ht(t.children)):e}function Ba(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var r in i)t[A(r)]=i[r];return t}function Ua(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function $a(e){while(e=e.parent)if(e.data.transition)return!0}function Ha(e,t){return t.key===e.key&&t.tag===e.tag}var Wa=function(e){return e.tag||At(e)},qa=function(e){return"show"===e.name},Za={name:"transition",props:Ia,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(Wa),n.length)){0;var r=this.mode;0;var i=n[0];if($a(this.$vnode))return i;var o=za(i);if(!o)return i;if(this._leaving)return Ua(e,i);var a="__transition-".concat(this._uid,"-");o.key=null==o.key?o.isComment?a+"comment":a+o.tag:u(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var s=(o.data||(o.data={})).transition=Ba(this),l=this._vnode,c=za(l);if(o.data.directives&&o.data.directives.some(qa)&&(o.data.show=!0),c&&c.data&&!Ha(o,c)&&!At(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var f=c.data.transition=N({},s);if("out-in"===r)return this._leaving=!0,rt(f,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),Ua(e,i);if("in-out"===r){if(At(o))return l;var h,d=function(){h()};rt(s,"afterEnter",d),rt(s,"enterCancelled",d),rt(f,"delayLeave",(function(e){h=e}))}}return i}}},Va=N({tag:String,moveClass:String},Ia);delete Va.mode;var Ga={props:Va,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=An(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=Ba(this),s=0;s1?arguments[1]:void 0,t.length)),r=s(e);return h(t,n,n+r.length)===r}})},"2ceb":function(e,t,n){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},"2cf4":function(e,t,n){"use strict";var r,i,o,a,s=n("da84"),l=n("2ba4"),u=n("0366"),c=n("1626"),f=n("1a2d"),h=n("d039"),d=n("1be4"),p=n("f36a"),g=n("cc12"),m=n("d6d6"),v=n("1cdc"),y=n("605d"),b=s.setImmediate,w=s.clearImmediate,_=s.process,x=s.Dispatch,k=s.Function,S=s.MessageChannel,C=s.String,E=0,A={},O="onreadystatechange";h((function(){r=s.location}));var L=function(e){if(f(A,e)){var t=A[e];delete A[e],t()}},T=function(e){return function(){L(e)}},M=function(e){L(e.data)},P=function(e){s.postMessage(C(e),r.protocol+"//"+r.host)};b&&w||(b=function(e){m(arguments.length,1);var t=c(e)?e:k(e),n=p(arguments,1);return A[++E]=function(){l(t,void 0,n)},i(E),E},w=function(e){delete A[e]},y?i=function(e){_.nextTick(T(e))}:x&&x.now?i=function(e){x.now(T(e))}:S&&!v?(o=new S,a=o.port2,o.port1.onmessage=M,i=u(a.postMessage,a)):s.addEventListener&&c(s.postMessage)&&!s.importScripts&&r&&"file:"!==r.protocol&&!h(P)?(i=P,s.addEventListener("message",M,!1)):i=O in g("script")?function(e){d.appendChild(g("script"))[O]=function(){d.removeChild(this),L(e)}}:function(e){setTimeout(T(e),0)}),e.exports={set:b,clear:w}},"2d00":function(e,t,n){"use strict";var r,i,o=n("da84"),a=n("342f"),s=o.process,l=o.Deno,u=s&&s.versions||l&&l.version,c=u&&u.v8;c&&(r=c.split("."),i=r[0]>0&&r[0]<4?1:+(r[0]+r[1])),!i&&a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(i=+r[1]))),e.exports=i},"2d83":function(e,t,n){"use strict";var r=n("387f");e.exports=function(e,t,n,i,o){var a=new Error(e);return r(a,t,n,i,o)}},"2e67":function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},"2f62":function(e,t,n){"use strict";(function(e){ +/*! + * vuex v3.6.2 + * (c) 2021 Evan You + * @license MIT + */ +function n(e){var t=Number(e.version.split(".")[0]);if(t>=2)e.mixin({beforeCreate:r});else{var n=e.prototype._init;e.prototype._init=function(e){void 0===e&&(e={}),e.init=e.init?[r].concat(e.init):r,n.call(this,e)}}function r(){var e=this.$options;e.store?this.$store="function"===typeof e.store?e.store():e.store:e.parent&&e.parent.$store&&(this.$store=e.parent.$store)}}var r="undefined"!==typeof window?window:"undefined"!==typeof e?e:{},i=r.__VUE_DEVTOOLS_GLOBAL_HOOK__;function o(e){i&&(e._devtoolHook=i,i.emit("vuex:init",e),i.on("vuex:travel-to-state",(function(t){e.replaceState(t)})),e.subscribe((function(e,t){i.emit("vuex:mutation",e,t)}),{prepend:!0}),e.subscribeAction((function(e,t){i.emit("vuex:action",e,t)}),{prepend:!0}))}function a(e,t){return e.filter(t)[0]}function s(e,t){if(void 0===t&&(t=[]),null===e||"object"!==typeof e)return e;var n=a(t,(function(t){return t.original===e}));if(n)return n.copy;var r=Array.isArray(e)?[]:{};return t.push({original:e,copy:r}),Object.keys(e).forEach((function(n){r[n]=s(e[n],t)})),r}function l(e,t){Object.keys(e).forEach((function(n){return t(e[n],n)}))}function u(e){return null!==e&&"object"===typeof e}function c(e){return e&&"function"===typeof e.then}function f(e,t){return function(){return e(t)}}var h=function(e,t){this.runtime=t,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=("function"===typeof n?n():n)||{}},d={namespaced:{configurable:!0}};d.namespaced.get=function(){return!!this._rawModule.namespaced},h.prototype.addChild=function(e,t){this._children[e]=t},h.prototype.removeChild=function(e){delete this._children[e]},h.prototype.getChild=function(e){return this._children[e]},h.prototype.hasChild=function(e){return e in this._children},h.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},h.prototype.forEachChild=function(e){l(this._children,e)},h.prototype.forEachGetter=function(e){this._rawModule.getters&&l(this._rawModule.getters,e)},h.prototype.forEachAction=function(e){this._rawModule.actions&&l(this._rawModule.actions,e)},h.prototype.forEachMutation=function(e){this._rawModule.mutations&&l(this._rawModule.mutations,e)},Object.defineProperties(h.prototype,d);var p=function(e){this.register([],e,!1)};function g(e,t,n){if(t.update(n),n.modules)for(var r in n.modules){if(!t.getChild(r))return void 0;g(e.concat(r),t.getChild(r),n.modules[r])}}p.prototype.get=function(e){return e.reduce((function(e,t){return e.getChild(t)}),this.root)},p.prototype.getNamespace=function(e){var t=this.root;return e.reduce((function(e,n){return t=t.getChild(n),e+(t.namespaced?n+"/":"")}),"")},p.prototype.update=function(e){g([],this.root,e)},p.prototype.register=function(e,t,n){var r=this;void 0===n&&(n=!0);var i=new h(t,n);if(0===e.length)this.root=i;else{var o=this.get(e.slice(0,-1));o.addChild(e[e.length-1],i)}t.modules&&l(t.modules,(function(t,i){r.register(e.concat(i),t,n)}))},p.prototype.unregister=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1],r=t.getChild(n);r&&r.runtime&&t.removeChild(n)},p.prototype.isRegistered=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1];return!!t&&t.hasChild(n)};var m;var v=function(e){var t=this;void 0===e&&(e={}),!m&&"undefined"!==typeof window&&window.Vue&&M(window.Vue);var n=e.plugins;void 0===n&&(n=[]);var r=e.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new p(e),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new m,this._makeLocalGettersCache=Object.create(null);var i=this,a=this,s=a.dispatch,l=a.commit;this.dispatch=function(e,t){return s.call(i,e,t)},this.commit=function(e,t,n){return l.call(i,e,t,n)},this.strict=r;var u=this._modules.root.state;x(this,u,[],this._modules.root),_(this,u),n.forEach((function(e){return e(t)}));var c=void 0!==e.devtools?e.devtools:m.config.devtools;c&&o(this)},y={state:{configurable:!0}};function b(e,t,n){return t.indexOf(e)<0&&(n&&n.prepend?t.unshift(e):t.push(e)),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function w(e,t){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;x(e,n,[],e._modules.root,!0),_(e,n,t)}function _(e,t,n){var r=e._vm;e.getters={},e._makeLocalGettersCache=Object.create(null);var i=e._wrappedGetters,o={};l(i,(function(t,n){o[n]=f(t,e),Object.defineProperty(e.getters,n,{get:function(){return e._vm[n]},enumerable:!0})}));var a=m.config.silent;m.config.silent=!0,e._vm=new m({data:{$$state:t},computed:o}),m.config.silent=a,e.strict&&O(e),r&&(n&&e._withCommit((function(){r._data.$$state=null})),m.nextTick((function(){return r.$destroy()})))}function x(e,t,n,r,i){var o=!n.length,a=e._modules.getNamespace(n);if(r.namespaced&&(e._modulesNamespaceMap[a],e._modulesNamespaceMap[a]=r),!o&&!i){var s=L(t,n.slice(0,-1)),l=n[n.length-1];e._withCommit((function(){m.set(s,l,r.state)}))}var u=r.context=k(e,a,n);r.forEachMutation((function(t,n){var r=a+n;C(e,r,t,u)})),r.forEachAction((function(t,n){var r=t.root?n:a+n,i=t.handler||t;E(e,r,i,u)})),r.forEachGetter((function(t,n){var r=a+n;A(e,r,t,u)})),r.forEachChild((function(r,o){x(e,t,n.concat(o),r,i)}))}function k(e,t,n){var r=""===t,i={dispatch:r?e.dispatch:function(n,r,i){var o=T(n,r,i),a=o.payload,s=o.options,l=o.type;return s&&s.root||(l=t+l),e.dispatch(l,a)},commit:r?e.commit:function(n,r,i){var o=T(n,r,i),a=o.payload,s=o.options,l=o.type;s&&s.root||(l=t+l),e.commit(l,a,s)}};return Object.defineProperties(i,{getters:{get:r?function(){return e.getters}:function(){return S(e,t)}},state:{get:function(){return L(e.state,n)}}}),i}function S(e,t){if(!e._makeLocalGettersCache[t]){var n={},r=t.length;Object.keys(e.getters).forEach((function(i){if(i.slice(0,r)===t){var o=i.slice(r);Object.defineProperty(n,o,{get:function(){return e.getters[i]},enumerable:!0})}})),e._makeLocalGettersCache[t]=n}return e._makeLocalGettersCache[t]}function C(e,t,n,r){var i=e._mutations[t]||(e._mutations[t]=[]);i.push((function(t){n.call(e,r.state,t)}))}function E(e,t,n,r){var i=e._actions[t]||(e._actions[t]=[]);i.push((function(t){var i=n.call(e,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:e.getters,rootState:e.state},t);return c(i)||(i=Promise.resolve(i)),e._devtoolHook?i.catch((function(t){throw e._devtoolHook.emit("vuex:error",t),t})):i}))}function A(e,t,n,r){e._wrappedGetters[t]||(e._wrappedGetters[t]=function(e){return n(r.state,r.getters,e.state,e.getters)})}function O(e){e._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}function L(e,t){return t.reduce((function(e,t){return e[t]}),e)}function T(e,t,n){return u(e)&&e.type&&(n=t,t=e,e=e.type),{type:e,payload:t,options:n}}function M(e){m&&e===m||(m=e,n(m))}y.state.get=function(){return this._vm._data.$$state},y.state.set=function(e){0},v.prototype.commit=function(e,t,n){var r=this,i=T(e,t,n),o=i.type,a=i.payload,s=(i.options,{type:o,payload:a}),l=this._mutations[o];l&&(this._withCommit((function(){l.forEach((function(e){e(a)}))})),this._subscribers.slice().forEach((function(e){return e(s,r.state)})))},v.prototype.dispatch=function(e,t){var n=this,r=T(e,t),i=r.type,o=r.payload,a={type:i,payload:o},s=this._actions[i];if(s){try{this._actionSubscribers.slice().filter((function(e){return e.before})).forEach((function(e){return e.before(a,n.state)}))}catch(u){0}var l=s.length>1?Promise.all(s.map((function(e){return e(o)}))):s[0](o);return new Promise((function(e,t){l.then((function(t){try{n._actionSubscribers.filter((function(e){return e.after})).forEach((function(e){return e.after(a,n.state)}))}catch(u){0}e(t)}),(function(e){try{n._actionSubscribers.filter((function(e){return e.error})).forEach((function(t){return t.error(a,n.state,e)}))}catch(u){0}t(e)}))}))}},v.prototype.subscribe=function(e,t){return b(e,this._subscribers,t)},v.prototype.subscribeAction=function(e,t){var n="function"===typeof e?{before:e}:e;return b(n,this._actionSubscribers,t)},v.prototype.watch=function(e,t,n){var r=this;return this._watcherVM.$watch((function(){return e(r.state,r.getters)}),t,n)},v.prototype.replaceState=function(e){var t=this;this._withCommit((function(){t._vm._data.$$state=e}))},v.prototype.registerModule=function(e,t,n){void 0===n&&(n={}),"string"===typeof e&&(e=[e]),this._modules.register(e,t),x(this,this.state,e,this._modules.get(e),n.preserveState),_(this,this.state)},v.prototype.unregisterModule=function(e){var t=this;"string"===typeof e&&(e=[e]),this._modules.unregister(e),this._withCommit((function(){var n=L(t.state,e.slice(0,-1));m.delete(n,e[e.length-1])})),w(this)},v.prototype.hasModule=function(e){return"string"===typeof e&&(e=[e]),this._modules.isRegistered(e)},v.prototype.hotUpdate=function(e){this._modules.update(e),w(this,!0)},v.prototype._withCommit=function(e){var t=this._committing;this._committing=!0,e(),this._committing=t},Object.defineProperties(v.prototype,y);var P=z((function(e,t){var n={};return F(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=this.$store.state,n=this.$store.getters;if(e){var r=B(this.$store,"mapState",e);if(!r)return;t=r.context.state,n=r.context.getters}return"function"===typeof i?i.call(this,t,n):t[i]},n[r].vuex=!0})),n})),j=z((function(e,t){var n={};return F(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=[],n=arguments.length;while(n--)t[n]=arguments[n];var r=this.$store.commit;if(e){var o=B(this.$store,"mapMutations",e);if(!o)return;r=o.context.commit}return"function"===typeof i?i.apply(this,[r].concat(t)):r.apply(this.$store,[i].concat(t))}})),n})),R=z((function(e,t){var n={};return F(t).forEach((function(t){var r=t.key,i=t.val;i=e+i,n[r]=function(){if(!e||B(this.$store,"mapGetters",e))return this.$store.getters[i]},n[r].vuex=!0})),n})),N=z((function(e,t){var n={};return F(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=[],n=arguments.length;while(n--)t[n]=arguments[n];var r=this.$store.dispatch;if(e){var o=B(this.$store,"mapActions",e);if(!o)return;r=o.context.dispatch}return"function"===typeof i?i.apply(this,[r].concat(t)):r.apply(this.$store,[i].concat(t))}})),n})),D=function(e){return{mapState:P.bind(null,e),mapGetters:R.bind(null,e),mapMutations:j.bind(null,e),mapActions:N.bind(null,e)}};function F(e){return I(e)?Array.isArray(e)?e.map((function(e){return{key:e,val:e}})):Object.keys(e).map((function(t){return{key:t,val:e[t]}})):[]}function I(e){return Array.isArray(e)||u(e)}function z(e){return function(t,n){return"string"!==typeof t?(n=t,t=""):"/"!==t.charAt(t.length-1)&&(t+="/"),e(t,n)}}function B(e,t,n){var r=e._modulesNamespaceMap[n];return r}function U(e){void 0===e&&(e={});var t=e.collapsed;void 0===t&&(t=!0);var n=e.filter;void 0===n&&(n=function(e,t,n){return!0});var r=e.transformer;void 0===r&&(r=function(e){return e});var i=e.mutationTransformer;void 0===i&&(i=function(e){return e});var o=e.actionFilter;void 0===o&&(o=function(e,t){return!0});var a=e.actionTransformer;void 0===a&&(a=function(e){return e});var l=e.logMutations;void 0===l&&(l=!0);var u=e.logActions;void 0===u&&(u=!0);var c=e.logger;return void 0===c&&(c=console),function(e){var f=s(e.state);"undefined"!==typeof c&&(l&&e.subscribe((function(e,o){var a=s(o);if(n(e,f,a)){var l=W(),u=i(e),h="mutation "+e.type+l;$(c,h,t),c.log("%c prev state","color: #9E9E9E; font-weight: bold",r(f)),c.log("%c mutation","color: #03A9F4; font-weight: bold",u),c.log("%c next state","color: #4CAF50; font-weight: bold",r(a)),H(c)}f=a})),u&&e.subscribeAction((function(e,n){if(o(e,n)){var r=W(),i=a(e),s="action "+e.type+r;$(c,s,t),c.log("%c action","color: #03A9F4; font-weight: bold",i),H(c)}})))}}function $(e,t,n){var r=n?e.groupCollapsed:e.group;try{r.call(e,t)}catch(i){e.log(t)}}function H(e){try{e.groupEnd()}catch(t){e.log("—— log end ——")}}function W(){var e=new Date;return" @ "+Z(e.getHours(),2)+":"+Z(e.getMinutes(),2)+":"+Z(e.getSeconds(),2)+"."+Z(e.getMilliseconds(),3)}function q(e,t){return new Array(t+1).join(e)}function Z(e,t){return q("0",t-e.toString().length)+e}var V={Store:v,install:M,version:"3.6.2",mapState:P,mapMutations:j,mapGetters:R,mapActions:N,createNamespacedHelpers:D,createLogger:U};t["a"]=V}).call(this,n("c8ba"))},3022:function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return e}})),l=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),y(n)?r.showHidden=n:n&&t._extend(r,n),S(r.showHidden)&&(r.showHidden=!1),S(r.depth)&&(r.depth=2),S(r.colors)&&(r.colors=!1),S(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=l),f(r,e,r.depth)}function l(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function u(e,t){return e}function c(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}function f(e,n,r){if(e.customInspect&&n&&L(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return x(i)||(i=f(e,i,r)),i}var o=h(e,n);if(o)return o;var a=Object.keys(n),s=c(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),O(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return d(n);if(0===a.length){if(L(n)){var l=n.name?": "+n.name:"";return e.stylize("[Function"+l+"]","special")}if(C(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(A(n))return e.stylize(Date.prototype.toString.call(n),"date");if(O(n))return d(n)}var u,y="",b=!1,w=["{","}"];if(v(n)&&(b=!0,w=["[","]"]),L(n)){var _=n.name?": "+n.name:"";y=" [Function"+_+"]"}return C(n)&&(y=" "+RegExp.prototype.toString.call(n)),A(n)&&(y=" "+Date.prototype.toUTCString.call(n)),O(n)&&(y=" "+d(n)),0!==a.length||b&&0!=n.length?r<0?C(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),u=b?p(e,n,r,s,a):a.map((function(t){return g(e,n,r,s,t,b)})),e.seen.pop(),m(u,y,w)):w[0]+y+w[1]}function h(e,t){if(S(t))return e.stylize("undefined","undefined");if(x(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return _(t)?e.stylize(""+t,"number"):y(t)?e.stylize(""+t,"boolean"):b(t)?e.stylize("null","null"):void 0}function d(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,i){for(var o=[],a=0,s=t.length;a-1&&(s=o?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n"))):s=e.stylize("[Circular]","special")),S(a)){if(o&&i.match(/^\d+$/))return s;a=JSON.stringify(""+i),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function m(e,t,n){var r=e.reduce((function(e,t){return t.indexOf("\n")>=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0);return r>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}function v(e){return Array.isArray(e)}function y(e){return"boolean"===typeof e}function b(e){return null===e}function w(e){return null==e}function _(e){return"number"===typeof e}function x(e){return"string"===typeof e}function k(e){return"symbol"===typeof e}function S(e){return void 0===e}function C(e){return E(e)&&"[object RegExp]"===M(e)}function E(e){return"object"===typeof e&&null!==e}function A(e){return E(e)&&"[object Date]"===M(e)}function O(e){return E(e)&&("[object Error]"===M(e)||e instanceof Error)}function L(e){return"function"===typeof e}function T(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e}function M(e){return Object.prototype.toString.call(e)}function P(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(S(o)&&(o=Object({NODE_ENV:"production",BASE_URL:""}).NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=v,t.isBoolean=y,t.isNull=b,t.isNullOrUndefined=w,t.isNumber=_,t.isString=x,t.isSymbol=k,t.isUndefined=S,t.isRegExp=C,t.isObject=E,t.isDate=A,t.isError=O,t.isFunction=L,t.isPrimitive=T,t.isBuffer=n("d60a");var j=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R(){var e=new Date,t=[P(e.getHours()),P(e.getMinutes()),P(e.getSeconds())].join(":");return[e.getDate(),j[e.getMonth()],t].join(" ")}function N(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",R(),t.format.apply(t,arguments))},t.inherits=n("28a0"),t._extend=function(e,t){if(!t||!E(t))return e;var n=Object.keys(t),r=n.length;while(r--)e[n[r]]=t[n[r]];return e};var D="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function F(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}function I(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');function n(){for(var n=[],r=0;ri)throw r("Maximum allowed index exceeded");return e}},3529:function(e,t,n){"use strict";var r=n("23e7"),i=n("c65b"),o=n("59ed"),a=n("f069"),s=n("e667"),l=n("2266"),u=n("5eed");r({target:"Promise",stat:!0,forced:u},{race:function(e){var t=this,n=a.f(t),r=n.reject,u=s((function(){var a=o(t.resolve);l(e,(function(e){i(a,t,e).then(n.resolve,r)}))}));return u.error&&r(u.value),n.promise}})},"35a1":function(e,t,n){"use strict";var r=n("f5df"),i=n("dc4a"),o=n("7234"),a=n("3f8c"),s=n("b622"),l=s("iterator");e.exports=function(e){if(!o(e))return i(e,l)||i(e,"@@iterator")||a[r(e)]}},3729:function(e,t,n){var r=n("9e69"),i=n("00fd"),o=n("29f3"),a="[object Null]",s="[object Undefined]",l=r?r.toStringTag:void 0;function u(e){return null==e?void 0===e?s:a:l&&l in Object(e)?i(e):o(e)}e.exports=u},"37e8":function(e,t,n){"use strict";var r=n("83ab"),i=n("aed9"),o=n("9bf2"),a=n("825a"),s=n("fc6a"),l=n("df75");t.f=r&&!i?Object.defineProperties:function(e,t){a(e);var n,r=s(t),i=l(t),u=i.length,c=0;while(u>c)o.f(e,n=i[c++],r[n]);return e}},"387f":function(e,t,n){"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},3934:function(e,t,n){"use strict";var r=n("c532");e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=i(window.location.href),function(t){var n=r.isString(t)?i(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return function(){return!0}}()},"3a34":function(e,t,n){"use strict";var r=n("83ab"),i=n("e8b5"),o=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=s?function(e,t){if(i(e)&&!a(e,"length").writable)throw new o("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},"3a7c":function(e,t,n){function r(e){return Array.isArray?Array.isArray(e):"[object Array]"===v(e)}function i(e){return"boolean"===typeof e}function o(e){return null===e}function a(e){return null==e}function s(e){return"number"===typeof e}function l(e){return"string"===typeof e}function u(e){return"symbol"===typeof e}function c(e){return void 0===e}function f(e){return"[object RegExp]"===v(e)}function h(e){return"object"===typeof e&&null!==e}function d(e){return"[object Date]"===v(e)}function p(e){return"[object Error]"===v(e)||e instanceof Error}function g(e){return"function"===typeof e}function m(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e}function v(e){return Object.prototype.toString.call(e)}t.isArray=r,t.isBoolean=i,t.isNull=o,t.isNullOrUndefined=a,t.isNumber=s,t.isString=l,t.isSymbol=u,t.isUndefined=c,t.isRegExp=f,t.isObject=h,t.isDate=d,t.isError=p,t.isFunction=g,t.isPrimitive=m,t.isBuffer=n("b639").Buffer.isBuffer},"3a9b":function(e,t,n){"use strict";var r=n("e330");e.exports=r({}.isPrototypeOf)},"3bbe":function(e,t,n){"use strict";var r=n("1787"),i=String,o=TypeError;e.exports=function(e){if(r(e))return e;throw new o("Can't set "+i(e)+" as a prototype")}},"3ca3":function(e,t,n){"use strict";var r=n("6547").charAt,i=n("577e"),o=n("69f3"),a=n("c6d2"),s=n("4754"),l="String Iterator",u=o.set,c=o.getterFor(l);a(String,"String",(function(e){u(this,{type:l,string:i(e),index:0})}),(function(){var e,t=c(this),n=t.string,i=t.index;return i>=n.length?s(void 0,!0):(e=r(n,i),t.index+=e.length,s(e,!1))}))},"3eb1":function(e,t,n){"use strict";var r=n("0f7c"),i=n("00ce"),o=n("d009"),a=n("0d25"),s=i("%Function.prototype.apply%"),l=i("%Function.prototype.call%"),u=i("%Reflect.apply%",!0)||r.call(l,s),c=n("71c9"),f=i("%Math.max%");e.exports=function(e){if("function"!==typeof e)throw new a("a function is required");var t=u(r,l,arguments);return o(t,1+f(0,e.length-(arguments.length-1)),!0)};var h=function(){return u(r,s,arguments)};c?c(e.exports,"apply",{value:h}):e.exports.apply=h},"3f8c":function(e,t,n){"use strict";e.exports={}},"3fb5":function(e,t){"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},"408a":function(e,t,n){"use strict";var r=n("e330");e.exports=r(1..valueOf)},"408c":function(e,t,n){var r=n("2b3e"),i=function(){return r.Date.now()};e.exports=i},"40d5":function(e,t,n){"use strict";var r=n("d039");e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},"417f":function(e,t,n){"use strict";e.exports=EvalError},"428f":function(e,t,n){"use strict";var r=n("da84");e.exports=r},"429b":function(e,t,n){e.exports=n("faa1").EventEmitter},4362:function(e,t,n){t.nextTick=function(e){var t=Array.prototype.slice.call(arguments);t.shift(),setTimeout((function(){e.apply(null,t)}),0)},t.platform=t.arch=t.execPath=t.title="browser",t.pid=1,t.browser=!0,t.env={},t.argv=[],t.binding=function(e){throw new Error("No such module. (Possibly not yet loaded)")},function(){var e,r="/";t.cwd=function(){return r},t.chdir=function(t){e||(e=n("df7c")),r=e.resolve(t,r)}}(),t.exit=t.kill=t.umask=t.dlopen=t.uptime=t.memoryUsage=t.uvCounters=function(){},t.features={}},"44a0":function(e,t,n){(function(e){e(n("56b3"),n("959b"),n("9eb9"))})((function(e){"use strict";var t=/^((?:(?: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;e.defineMode("gfm",(function(n,r){var i=0;function o(e){return e.code=!1,null}var a={startState:function(){return{code:!1,codeBlock:!1,ateSpace:!1}},copyState:function(e){return{code:e.code,codeBlock:e.codeBlock,ateSpace:e.ateSpace}},token:function(e,n){if(n.combineTokens=null,n.codeBlock)return e.match(/^```+/)?(n.codeBlock=!1,null):(e.skipToEnd(),null);if(e.sol()&&(n.code=!1),e.sol()&&e.match(/^```+/))return e.skipToEnd(),n.codeBlock=!0,null;if("`"===e.peek()){e.next();var o=e.pos;e.eatWhile("`");var a=1+e.pos-o;return n.code?a===i&&(n.code=!1):(i=a,n.code=!0),null}if(n.code)return e.next(),null;if(e.eatSpace())return n.ateSpace=!0,null;if((e.sol()||n.ateSpace)&&(n.ateSpace=!1,!1!==r.gitHubSpice)){if(e.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+@)?(?=.{0,6}\d)(?:[a-f0-9]{7,40}\b)/))return n.combineTokens=!0,"link";if(e.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+)?#[0-9]+\b/))return n.combineTokens=!0,"link"}return e.match(t)&&"]("!=e.string.slice(e.start-2,e.start)&&(0==e.start||/\W/.test(e.string.charAt(e.start-1)))?(n.combineTokens=!0,"link"):(e.next(),null)},blankLine:o},s={taskLists:!0,strikethrough:!0,emoji:!0};for(var l in r)s[l]=r[l];return s.name="markdown",e.overlayMode(e.getMode(n,s),a)}),"markdown"),e.defineMIME("text/x-gfm","gfm")}))},"44ad":function(e,t,n){"use strict";var r=n("e330"),i=n("d039"),o=n("c6b6"),a=Object,s=r("".split);e.exports=i((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"===o(e)?s(e,""):a(e)}:a},"44d2":function(e,t,n){"use strict";var r=n("b622"),i=n("7c73"),o=n("9bf2").f,a=r("unscopables"),s=Array.prototype;void 0===s[a]&&o(s,a,{configurable:!0,value:i(null)}),e.exports=function(e){s[a][e]=!0}},"44de":function(e,t,n){"use strict";e.exports=function(e,t){try{1===arguments.length?console.error(e):console.error(e,t)}catch(n){}}},"44e7":function(e,t,n){"use strict";var r=n("861d"),i=n("c6b6"),o=n("b622"),a=o("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"===i(e))}},4625:function(e,t,n){"use strict";var r=n("c6b6"),i=n("e330");e.exports=function(e){if("Function"===r(e))return i(e)}},"466d":function(e,t,n){"use strict";var r=n("c65b"),i=n("d784"),o=n("825a"),a=n("7234"),s=n("50c4"),l=n("577e"),u=n("1d80"),c=n("dc4a"),f=n("8aa5"),h=n("14c3");i("match",(function(e,t,n){return[function(t){var n=u(this),i=a(t)?void 0:c(t,e);return i?r(i,t,n):new RegExp(t)[e](l(n))},function(e){var r=o(this),i=l(e),a=n(t,r,i);if(a.done)return a.value;if(!r.global)return h(r,i);var u=r.unicode;r.lastIndex=0;var c,d=[],p=0;while(null!==(c=h(r,i))){var g=l(c[0]);d[p]=g,""===g&&(r.lastIndex=f(i,s(r.lastIndex),u)),p++}return 0===p?null:d}]}))},"467f":function(e,t,n){"use strict";var r=n("2d83");e.exports=function(e,t,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},4681:function(e,t,n){"use strict";var r=n("966d");function i(e,t){var n=this,i=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return i||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,r.nextTick(a,this,e)):r.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?n._writableState?n._writableState.errorEmitted||(n._writableState.errorEmitted=!0,r.nextTick(a,n,e)):r.nextTick(a,n,e):t&&t(e)})),this)}function o(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function a(e,t){e.emit("error",t)}e.exports={destroy:i,undestroy:o}},"470b":function(e,t,n){"use strict";(function(e){var r=n("b639").Buffer,i=n("d485").Transform,o=n("6b75"),a=n("3022"),s=n("f654").ok,l=n("b639").kMaxLength,u="Cannot create final Buffer. It would be larger than 0x"+l.toString(16)+" bytes";o.Z_MIN_WINDOWBITS=8,o.Z_MAX_WINDOWBITS=15,o.Z_DEFAULT_WINDOWBITS=15,o.Z_MIN_CHUNK=64,o.Z_MAX_CHUNK=1/0,o.Z_DEFAULT_CHUNK=16384,o.Z_MIN_MEMLEVEL=1,o.Z_MAX_MEMLEVEL=9,o.Z_DEFAULT_MEMLEVEL=8,o.Z_MIN_LEVEL=-1,o.Z_MAX_LEVEL=9,o.Z_DEFAULT_LEVEL=o.Z_DEFAULT_COMPRESSION;for(var c=Object.keys(o),f=0;f=l?a=new RangeError(u):t=r.concat(i,o),i=[],e.close(),n(a,t)}e.on("error",s),e.on("end",c),e.end(t),a()}function y(e,t){if("string"===typeof t&&(t=r.from(t)),!r.isBuffer(t))throw new TypeError("Not a string or buffer");var n=e._finishFlushFlag;return e._processChunk(t,n)}function b(e){if(!(this instanceof b))return new b(e);A.call(this,e,o.DEFLATE)}function w(e){if(!(this instanceof w))return new w(e);A.call(this,e,o.INFLATE)}function _(e){if(!(this instanceof _))return new _(e);A.call(this,e,o.GZIP)}function x(e){if(!(this instanceof x))return new x(e);A.call(this,e,o.GUNZIP)}function k(e){if(!(this instanceof k))return new k(e);A.call(this,e,o.DEFLATERAW)}function S(e){if(!(this instanceof S))return new S(e);A.call(this,e,o.INFLATERAW)}function C(e){if(!(this instanceof C))return new C(e);A.call(this,e,o.UNZIP)}function E(e){return e===o.Z_NO_FLUSH||e===o.Z_PARTIAL_FLUSH||e===o.Z_SYNC_FLUSH||e===o.Z_FULL_FLUSH||e===o.Z_FINISH||e===o.Z_BLOCK}function A(e,n){var a=this;if(this._opts=e=e||{},this._chunkSize=e.chunkSize||t.Z_DEFAULT_CHUNK,i.call(this,e),e.flush&&!E(e.flush))throw new Error("Invalid flush flag: "+e.flush);if(e.finishFlush&&!E(e.finishFlush))throw new Error("Invalid flush flag: "+e.finishFlush);if(this._flushFlag=e.flush||o.Z_NO_FLUSH,this._finishFlushFlag="undefined"!==typeof e.finishFlush?e.finishFlush:o.Z_FINISH,e.chunkSize&&(e.chunkSizet.Z_MAX_CHUNK))throw new Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(e.windowBitst.Z_MAX_WINDOWBITS))throw new Error("Invalid windowBits: "+e.windowBits);if(e.level&&(e.levelt.Z_MAX_LEVEL))throw new Error("Invalid compression level: "+e.level);if(e.memLevel&&(e.memLevelt.Z_MAX_MEMLEVEL))throw new Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=t.Z_FILTERED&&e.strategy!=t.Z_HUFFMAN_ONLY&&e.strategy!=t.Z_RLE&&e.strategy!=t.Z_FIXED&&e.strategy!=t.Z_DEFAULT_STRATEGY)throw new Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!r.isBuffer(e.dictionary))throw new Error("Invalid dictionary: it should be a Buffer instance");this._handle=new o.Zlib(n);var s=this;this._hadError=!1,this._handle.onerror=function(e,n){O(s),s._hadError=!0;var r=new Error(e);r.errno=n,r.code=t.codes[n],s.emit("error",r)};var l=t.Z_DEFAULT_COMPRESSION;"number"===typeof e.level&&(l=e.level);var u=t.Z_DEFAULT_STRATEGY;"number"===typeof e.strategy&&(u=e.strategy),this._handle.init(e.windowBits||t.Z_DEFAULT_WINDOWBITS,l,e.memLevel||t.Z_DEFAULT_MEMLEVEL,u,e.dictionary),this._buffer=r.allocUnsafe(this._chunkSize),this._offset=0,this._level=l,this._strategy=u,this.once("end",this.close),Object.defineProperty(this,"_closed",{get:function(){return!a._handle},configurable:!0,enumerable:!0})}function O(t,n){n&&e.nextTick(n),t._handle&&(t._handle.close(),t._handle=null)}function L(e){e.emit("close")}Object.defineProperty(t,"codes",{enumerable:!0,value:Object.freeze(d),writable:!1}),t.Deflate=b,t.Inflate=w,t.Gzip=_,t.Gunzip=x,t.DeflateRaw=k,t.InflateRaw=S,t.Unzip=C,t.createDeflate=function(e){return new b(e)},t.createInflate=function(e){return new w(e)},t.createDeflateRaw=function(e){return new k(e)},t.createInflateRaw=function(e){return new S(e)},t.createGzip=function(e){return new _(e)},t.createGunzip=function(e){return new x(e)},t.createUnzip=function(e){return new C(e)},t.deflate=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new b(t),e,n)},t.deflateSync=function(e,t){return y(new b(t),e)},t.gzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new _(t),e,n)},t.gzipSync=function(e,t){return y(new _(t),e)},t.deflateRaw=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new k(t),e,n)},t.deflateRawSync=function(e,t){return y(new k(t),e)},t.unzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new C(t),e,n)},t.unzipSync=function(e,t){return y(new C(t),e)},t.inflate=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new w(t),e,n)},t.inflateSync=function(e,t){return y(new w(t),e)},t.gunzip=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new x(t),e,n)},t.gunzipSync=function(e,t){return y(new x(t),e)},t.inflateRaw=function(e,t,n){return"function"===typeof t&&(n=t,t={}),v(new S(t),e,n)},t.inflateRawSync=function(e,t){return y(new S(t),e)},a.inherits(A,i),A.prototype.params=function(n,r,i){if(nt.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+n);if(r!=t.Z_FILTERED&&r!=t.Z_HUFFMAN_ONLY&&r!=t.Z_RLE&&r!=t.Z_FIXED&&r!=t.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+r);if(this._level!==n||this._strategy!==r){var a=this;this.flush(o.Z_SYNC_FLUSH,(function(){s(a._handle,"zlib binding closed"),a._handle.params(n,r),a._hadError||(a._level=n,a._strategy=r,i&&i())}))}else e.nextTick(i)},A.prototype.reset=function(){return s(this._handle,"zlib binding closed"),this._handle.reset()},A.prototype._flush=function(e){this._transform(r.alloc(0),"",e)},A.prototype.flush=function(t,n){var i=this,a=this._writableState;("function"===typeof t||void 0===t&&!n)&&(n=t,t=o.Z_FULL_FLUSH),a.ended?n&&e.nextTick(n):a.ending?n&&this.once("end",n):a.needDrain?n&&this.once("drain",(function(){return i.flush(t,n)})):(this._flushFlag=t,this.write(r.alloc(0),"",n))},A.prototype.close=function(t){O(this,t),e.nextTick(L,this)},A.prototype._transform=function(e,t,n){var i,a=this._writableState,s=a.ending||a.ended,l=s&&(!e||a.length===e.length);return null===e||r.isBuffer(e)?this._handle?(l?i=this._finishFlushFlag:(i=this._flushFlag,e.length>=a.length&&(this._flushFlag=this._opts.flush||o.Z_NO_FLUSH)),void this._processChunk(e,i,n)):n(new Error("zlib binding closed")):n(new Error("invalid input"))},A.prototype._processChunk=function(e,t,n){var i=e&&e.length,o=this._chunkSize-this._offset,a=0,c=this,f="function"===typeof n;if(!f){var h,d=[],p=0;this.on("error",(function(e){h=e})),s(this._handle,"zlib binding closed");do{var g=this._handle.writeSync(t,e,a,i,this._buffer,this._offset,o)}while(!this._hadError&&y(g[0],g[1]));if(this._hadError)throw h;if(p>=l)throw O(this),new RangeError(u);var m=r.concat(d,p);return O(this),m}s(this._handle,"zlib binding closed");var v=this._handle.write(t,e,a,i,this._buffer,this._offset,o);function y(l,u){if(this&&(this.buffer=null,this.callback=null),!c._hadError){var h=o-u;if(s(h>=0,"have should not go down"),h>0){var g=c._buffer.slice(c._offset,c._offset+h);c._offset+=h,f?c.push(g):(d.push(g),p+=g.length)}if((0===u||c._offset>=c._chunkSize)&&(o=c._chunkSize,c._offset=0,c._buffer=r.allocUnsafe(c._chunkSize)),0===u){if(a+=i-l,i=l,!f)return!0;var m=c._handle.write(t,e,a,i,c._buffer,c._offset,c._chunkSize);return m.callback=y,void(m.buffer=e)}if(!f)return!1;n()}}v.buffer=e,v.callback=y},a.inherits(b,A),a.inherits(w,A),a.inherits(_,A),a.inherits(x,A),a.inherits(k,A),a.inherits(S,A),a.inherits(C,A)}).call(this,n("4362"))},4738:function(e,t,n){"use strict";var r=n("da84"),i=n("d256"),o=n("1626"),a=n("94ca"),s=n("8925"),l=n("b622"),u=n("6069"),c=n("6c59"),f=n("c430"),h=n("2d00"),d=i&&i.prototype,p=l("species"),g=!1,m=o(r.PromiseRejectionEvent),v=a("Promise",(function(){var e=s(i),t=e!==String(i);if(!t&&66===h)return!0;if(f&&(!d["catch"]||!d["finally"]))return!0;if(!h||h<51||!/native code/.test(e)){var n=new i((function(e){e(1)})),r=function(e){e((function(){}),(function(){}))},o=n.constructor={};if(o[p]=r,g=n.then((function(){}))instanceof r,!g)return!0}return!t&&(u||c)&&!m}));e.exports={CONSTRUCTOR:v,REJECTION_EVENT:m,SUBCLASSING:g}},4754:function(e,t,n){"use strict";e.exports=function(e,t){return{value:e,done:t}}},4840:function(e,t,n){"use strict";var r=n("825a"),i=n("5087"),o=n("7234"),a=n("b622"),s=a("species");e.exports=function(e,t){var n,a=r(e).constructor;return void 0===a||o(n=r(a)[s])?t:i(n)}},"485a":function(e,t,n){"use strict";var r=n("c65b"),i=n("1626"),o=n("861d"),a=TypeError;e.exports=function(e,t){var n,s;if("string"===t&&i(n=e.toString)&&!o(s=r(n,e)))return s;if(i(n=e.valueOf)&&!o(s=r(n,e)))return s;if("string"!==t&&i(n=e.toString)&&!o(s=r(n,e)))return s;throw new a("Can't convert object to primitive value")}},4895:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";function t(t,r,o,a){if(o&&o.call){var s=o;o=null}else s=i(t,o,"rangeFinder");"number"==typeof r&&(r=e.Pos(r,0));var l=i(t,o,"minFoldSize");function u(e){var n=s(t,r);if(!n||n.to.line-n.from.linet.firstLine())r=e.Pos(r.line-1,0),c=u(!1);if(c&&!c.cleared&&"unfold"!==a){var f=n(t,o,c);e.on(f,"mousedown",(function(t){h.clear(),e.e_preventDefault(t)}));var h=t.markText(c.from,c.to,{replacedWith:f,clearOnEnter:i(t,o,"clearOnEnter"),__isFold:!0});h.on("clear",(function(n,r){e.signal(t,"unfold",t,n,r)})),e.signal(t,"fold",t,c.from,c.to)}}function n(e,t,n){var r=i(e,t,"widget");if("function"==typeof r&&(r=r(n.from,n.to)),"string"==typeof r){var o=document.createTextNode(r);r=document.createElement("span"),r.appendChild(o),r.className="CodeMirror-foldmarker"}else r&&(r=r.cloneNode(!0));return r}e.newFoldFunction=function(e,n){return function(r,i){t(r,i,{rangeFinder:e,widget:n})}},e.defineExtension("foldCode",(function(e,n,r){t(this,e,n,r)})),e.defineExtension("isFolded",(function(e){for(var t=this.findMarksAt(e),n=0;nc)if(u=s[c++],u!==u)return!0}else for(;l>c;c++)if((e||c in s)&&s[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},"4dc6":function(e,t,n){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},"4de4":function(e,t,n){"use strict";var r=n("23e7"),i=n("b727").filter,o=n("1dde"),a=o("filter");r({target:"Array",proto:!0,forced:!a},{filter:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}})},5087:function(e,t,n){"use strict";var r=n("68ee"),i=n("0d51"),o=TypeError;e.exports=function(e){if(r(e))return e;throw new o(i(e)+" is not a constructor")}},"50c4":function(e,t,n){"use strict";var r=n("5926"),i=Math.min;e.exports=function(e){var t=r(e);return t>0?i(t,9007199254740991):0}},5156:function(e,t,n){"use strict";var r="undefined"!==typeof Symbol&&Symbol,i=n("1696");e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&i())))}},"51eb":function(e,t,n){"use strict";var r=n("825a"),i=n("485a"),o=TypeError;e.exports=function(e){if(r(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw new o("Incorrect hint");return i(this,e)}},5270:function(e,t,n){"use strict";var r=n("c532"),i=n("c401"),o=n("2e67"),a=n("2444");function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){s(e),e.headers=e.headers||{},e.data=i(e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]}));var t=e.adapter||a.adapter;return t(e).then((function(t){return s(e),t.data=i(t.data,t.headers,e.transformResponse),t}),(function(t){return o(t)||(s(e),t&&t.response&&(t.response.data=i(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},5319:function(e,t,n){"use strict";var r=n("2ba4"),i=n("c65b"),o=n("e330"),a=n("d784"),s=n("d039"),l=n("825a"),u=n("1626"),c=n("7234"),f=n("5926"),h=n("50c4"),d=n("577e"),p=n("1d80"),g=n("8aa5"),m=n("dc4a"),v=n("0cb2"),y=n("14c3"),b=n("b622"),w=b("replace"),_=Math.max,x=Math.min,k=o([].concat),S=o([].push),C=o("".indexOf),E=o("".slice),A=function(e){return void 0===e?e:String(e)},O=function(){return"$0"==="a".replace(/./,"$0")}(),L=function(){return!!/./[w]&&""===/./[w]("a","$0")}(),T=!s((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}));a("replace",(function(e,t,n){var o=L?"$":"$0";return[function(e,n){var r=p(this),o=c(e)?void 0:m(e,w);return o?i(o,e,r,n):i(t,d(r),e,n)},function(e,i){var a=l(this),s=d(e);if("string"==typeof i&&-1===C(i,o)&&-1===C(i,"$<")){var c=n(t,a,s,i);if(c.done)return c.value}var p=u(i);p||(i=d(i));var m,b=a.global;b&&(m=a.unicode,a.lastIndex=0);var w,O=[];while(1){if(w=y(a,s),null===w)break;if(S(O,w),!b)break;var L=d(w[0]);""===L&&(a.lastIndex=g(s,h(a.lastIndex),m))}for(var T="",M=0,P=0;P=M&&(T+=E(s,M,N)+j,M=N+R.length)}return T+E(s,M)}]}),!T||!O||L)},"53ca":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));n("a4d3"),n("e01a"),n("d28b"),n("d3b7"),n("3ca3"),n("ddb0");function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}},"545e":function(e,t,n){"use strict";var r=n("00ce"),i=n("3eb1"),o=i(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&o(e,".prototype.")>-1?i(n):n}},5530:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));n("a4d3"),n("4de4"),n("14d9"),n("e439"),n("dbb4"),n("b64b"),n("d3b7"),n("159b");var r=n("ade3");function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t2),v=/Android/.test(e),y=m||v||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(e),b=m||/Mac/.test(t),w=/\bCrOS\b/.test(e),_=/win/i.test(t),x=h&&e.match(/Version\/(\d*\.\d*)/);x&&(x=Number(x[1])),x&&x>=15&&(h=!1,l=!0);var k=b&&(u||h&&(null==x||x<12.11)),S=n||a&&s>=9;function C(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var E,A=function(e,t){var n=e.className,r=C(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 O(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function L(e,t){return O(e).appendChild(t)}function T(e,t,n,r){var i=document.createElement(e);if(n&&(i.className=n),r&&(i.style.cssText=r),"string"==typeof t)i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o=t)return a+(t-o);a+=s-o,a+=n-a%n,o=s+1}}m?D=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:a&&(D=function(e){try{e.select()}catch(t){}});var W=function(){this.id=null,this.f=null,this.time=0,this.handler=U(this.onTimeout,this)};function q(e,t){for(var n=0;n=t)return r+Math.min(a,t-i);if(i+=o-r,i+=n-i%n,r=o+1,i>=t)return r}}var J=[""];function Q(e){while(J.length<=e)J.push(ee(J)+" ");return J[e]}function ee(e){return e[e.length-1]}function te(e,t){for(var n=[],r=0;r"€"&&(e.toUpperCase()!=e.toLowerCase()||oe.test(e))}function se(e,t){return t?!!(t.source.indexOf("\\w")>-1&&ae(e))||t.test(e):ae(e)}function le(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var ue=/[\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 ce(e){return e.charCodeAt(0)>=768&&ue.test(e)}function fe(e,t,n){while((n<0?t>0:tn?-1:1;;){if(t==n)return t;var i=(t+n)/2,o=r<0?Math.ceil(i):Math.floor(i);if(o==t)return e(o)?t:n;e(o)?n=o:t=o+r}}function de(e,t,n,r){if(!e)return r(t,n,"ltr",0);for(var i=!1,o=0;ot||t==n&&a.to==t)&&(r(Math.max(a.from,t),Math.min(a.to,n),1==a.level?"rtl":"ltr",o),i=!0)}i||r(t,n,"ltr")}var pe=null;function ge(e,t,n){var r;pe=null;for(var i=0;it)return i;o.to==t&&(o.from!=o.to&&"before"==n?r=i:pe=i),o.from==t&&(o.from!=o.to&&"before"!=n?r=i:pe=i)}return null!=r?r:pe}var me=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function n(n){return n<=247?e.charAt(n):1424<=n&&n<=1524?"R":1536<=n&&n<=1785?t.charAt(n-1536):1774<=n&&n<=2220?"r":8192<=n&&n<=8203?"w":8204==n?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,i=/[stwN]/,o=/[LRr]/,a=/[Lb1n]/,s=/[1n]/;function l(e,t,n){this.level=e,this.from=t,this.to=n}return function(e,t){var u="ltr"==t?"L":"R";if(0==e.length||"ltr"==t&&!r.test(e))return!1;for(var c=e.length,f=[],h=0;h-1&&(r[t]=i.slice(0,o).concat(i.slice(o+1)))}}}function xe(e,t){var n=we(e,t);if(n.length)for(var r=Array.prototype.slice.call(arguments,2),i=0;i0}function Ee(e){e.prototype.on=function(e,t){be(this,e,t)},e.prototype.off=function(e,t){_e(this,e,t)}}function Ae(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function Oe(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Le(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function Te(e){Ae(e),Oe(e)}function Me(e){return e.target||e.srcElement}function Pe(e){var t=e.which;return null==t&&(1&e.button?t=1:2&e.button?t=3:4&e.button&&(t=2)),b&&e.ctrlKey&&1==t&&(t=3),t}var je,Re,Ne=function(){if(a&&s<9)return!1;var e=T("div");return"draggable"in e||"dragDrop"in e}();function De(e){if(null==je){var t=T("span","​");L(e,T("span",[t,document.createTextNode("x")])),0!=e.firstChild.offsetHeight&&(je=t.offsetWidth<=1&&t.offsetHeight>2&&!(a&&s<8))}var n=je?T("span","​"):T("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return n.setAttribute("cm-text",""),n}function Fe(e){if(null!=Re)return Re;var t=L(e,document.createTextNode("AخA")),n=E(t,0,1).getBoundingClientRect(),r=E(t,1,2).getBoundingClientRect();return O(e),!(!n||n.left==n.right)&&(Re=r.right-n.right<3)}var Ie=3!="\n\nb".split(/\n/).length?function(e){var t=0,n=[],r=e.length;while(t<=r){var i=e.indexOf("\n",t);-1==i&&(i=e.length);var o=e.slice(t,"\r"==e.charAt(i-1)?i-1:i),a=o.indexOf("\r");-1!=a?(n.push(o.slice(0,a)),t+=a+1):(n.push(o),t=i+1)}return n}:function(e){return e.split(/\r\n?|\n/)},ze=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch(t){return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch(n){}return!(!t||t.parentElement()!=e)&&0!=t.compareEndPoints("StartToEnd",t)},Be=function(){var e=T("div");return"oncopy"in e||(e.setAttribute("oncopy","return;"),"function"==typeof e.oncopy)}(),Ue=null;function $e(e){if(null!=Ue)return Ue;var t=L(e,T("span","x")),n=t.getBoundingClientRect(),r=E(t,0,1).getBoundingClientRect();return Ue=Math.abs(n.left-r.left)>1}var He={},We={};function qe(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),He[e]=t}function Ze(e,t){We[e]=t}function Ve(e){if("string"==typeof e&&We.hasOwnProperty(e))e=We[e];else if(e&&"string"==typeof e.name&&We.hasOwnProperty(e.name)){var t=We[e.name];"string"==typeof t&&(t={name:t}),e=ie(t,e),e.name=t.name}else{if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ve("application/xml");if("string"==typeof e&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ve("application/json")}return"string"==typeof e?{name:e}:e||{name:"null"}}function Ge(e,t){t=Ve(t);var n=He[t.name];if(!n)return Ge(e,"text/plain");var r=n(e,t);if(Ye.hasOwnProperty(t.name)){var i=Ye[t.name];for(var o in i)i.hasOwnProperty(o)&&(r.hasOwnProperty(o)&&(r["_"+o]=r[o]),r[o]=i[o])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var a in t.modeProps)r[a]=t.modeProps[a];return r}var Ye={};function Ke(e,t){var n=Ye.hasOwnProperty(e)?Ye[e]:Ye[e]={};$(t,n)}function Xe(e,t){if(!0===t)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 Je(e,t){var n;while(e.innerMode){if(n=e.innerMode(t),!n||n.mode==e)break;t=n.state,e=n.mode}return n||{mode:e,state:t}}function Qe(e,t,n){return!e.startState||e.startState(t,n)}var et=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};function tt(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");var n=e;while(!n.lines)for(var r=0;;++r){var i=n.children[r],o=i.chunkSize();if(t=e.first&&tn?ut(n,tt(e,n).text.length):vt(t,tt(e,t.line).text.length)}function vt(e,t){var n=e.ch;return null==n||n>t?ut(e.line,t):n<0?ut(e.line,0):e}function yt(e,t){for(var n=[],r=0;r=this.string.length},et.prototype.sol=function(){return this.pos==this.lineStart},et.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},et.prototype.next=function(){if(this.post},et.prototype.eatSpace=function(){var e=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos)))++this.pos;return this.pos>e},et.prototype.skipToEnd=function(){this.pos=this.string.length},et.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},et.prototype.backUp=function(e){this.pos-=e},et.prototype.column=function(){return this.lastColumnPos0?null:(r&&!1!==t&&(this.pos+=r[0].length),r)}var i=function(e){return n?e.toLowerCase():e},o=this.string.substr(this.pos,e.length);if(i(o)==i(e))return!1!==t&&(this.pos+=e.length),!0},et.prototype.current=function(){return this.string.slice(this.start,this.pos)},et.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},et.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},et.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};var bt=function(e,t){this.state=e,this.lookAhead=t},wt=function(e,t,n,r){this.state=t,this.doc=e,this.line=n,this.maxLookAhead=r||0,this.baseTokens=null,this.baseTokenPos=1};function _t(e,t,n,r){var i=[e.state.modeGen],o={};Tt(e,t.text,e.doc.mode,n,(function(e,t){return i.push(e,t)}),o,r);for(var a=n.state,s=function(r){n.baseTokens=i;var s=e.state.overlays[r],l=1,u=0;n.state=!0,Tt(e,t.text,s.mode,n,(function(e,t){var n=l;while(ue&&i.splice(l,1,e,i[l+1],r),l+=2,u=Math.min(e,r)}if(t)if(s.opaque)i.splice(n,l-n,e,"overlay "+t),l=n+2;else for(;ne.options.maxHighlightLength&&Xe(e.doc.mode,r.state),o=_t(e,t,r);i&&(r.state=i),t.stateAfter=r.save(!i),t.styles=o.styles,o.classes?t.styleClasses=o.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 kt(e,t,n){var r=e.doc,i=e.display;if(!r.mode.startState)return new wt(r,!0,t);var o=Mt(e,t,n),a=o>r.first&&tt(r,o-1).stateAfter,s=a?wt.fromSaved(r,a,o):new wt(r,Qe(r.mode),o);return r.iter(o,t,(function(n){St(e,n.text,s);var r=s.line;n.stateAfter=r==t-1||r%5==0||r>=i.viewFrom&&rt.start)return o}throw new Error("Mode "+e.name+" failed to advance stream.")}wt.prototype.lookAhead=function(e){var t=this.doc.getLine(this.line+e);return null!=t&&e>this.maxLookAhead&&(this.maxLookAhead=e),t},wt.prototype.baseToken=function(e){if(!this.baseTokens)return null;while(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}},wt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},wt.fromSaved=function(e,t,n){return t instanceof bt?new wt(e,Xe(e.mode,t.state),n,t.lookAhead):new wt(e,Xe(e.mode,t),n)},wt.prototype.save=function(e){var t=!1!==e?Xe(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new bt(t,this.maxLookAhead):t};var At=function(e,t,n){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=n};function Ot(e,t,n,r){var i,o=e.doc,a=o.mode;t=mt(o,t);var s,l=tt(o,t.line),u=kt(e,t.line,n),c=new et(l.text,e.options.tabSize,u);r&&(s=[]);while((r||c.pose.options.maxHighlightLength?(s=!1,a&&St(e,t,r,f.pos),f.pos=t.length,l=null):l=Lt(Et(n,f,r.state,h),o),h){var d=h[0].name;d&&(l="m-"+(l?d+" "+l:d))}if(!s||c!=l){while(ua;--s){if(s<=o.first)return o.first;var l=tt(o,s-1),u=l.stateAfter;if(u&&(!n||s+(u instanceof bt?u.lookAhead:0)<=o.modeFrontier))return s;var c=H(l.text,null,e.options.tabSize);(null==i||r>c)&&(i=s-1,r=c)}return i}function Pt(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontiern;r--){var i=tt(e,r).stateAfter;if(i&&(!(i instanceof bt)||r+i.lookAhead=t:o.to>t);(r||(r=[])).push(new Ft(a,o.from,l?null:o.to))}}return r}function $t(e,t,n){var r;if(e)for(var i=0;i=t:o.to>t);if(s||o.from==t&&"bookmark"==a.type&&(!n||o.marker.insertLeft)){var l=null==o.from||(a.inclusiveLeft?o.from<=t:o.from0&&s)for(var w=0;w0)){var c=[l,1],f=ct(u.from,s.from),h=ct(u.to,s.to);(f<0||!a.inclusiveLeft&&!f)&&c.push({from:u.from,to:s.from}),(h>0||!a.inclusiveRight&&!h)&&c.push({from:s.to,to:u.to}),i.splice.apply(i,c),l+=c.length-3}}return i}function Zt(e){var t=e.markedSpans;if(t){for(var n=0;nt)&&(!n||Kt(n,o.marker)<0)&&(n=o.marker)}return n}function tn(e,t,n,r,i){var o=tt(e,t),a=Rt&&o.markedSpans;if(a)for(var s=0;s=0&&f<=0||c<=0&&f>=0)&&(c<=0&&(l.marker.inclusiveRight&&i.inclusiveLeft?ct(u.to,n)>=0:ct(u.to,n)>0)||c>=0&&(l.marker.inclusiveRight&&i.inclusiveLeft?ct(u.from,r)<=0:ct(u.from,r)<0)))return!0}}}function nn(e){var t;while(t=Jt(e))e=t.find(-1,!0).line;return e}function rn(e){var t;while(t=Qt(e))e=t.find(1,!0).line;return e}function on(e){var t,n;while(t=Qt(e))e=t.find(1,!0).line,(n||(n=[])).push(e);return n}function an(e,t){var n=tt(e,t),r=nn(n);return n==r?t:ot(r)}function sn(e,t){if(t>e.lastLine())return t;var n,r=tt(e,t);if(!ln(e,r))return t;while(n=Qt(r))r=n.find(1,!0).line;return ot(r)+1}function ln(e,t){var n=Rt&&t.markedSpans;if(n)for(var r=void 0,i=0;it.maxLineLength&&(t.maxLineLength=n,t.maxLine=e)}))}var dn=function(e,t,n){this.text=e,Vt(this,t),this.height=n?n(this):1};function pn(e,t,n,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),null!=e.order&&(e.order=null),Zt(e),Vt(e,n);var i=r?r(e):1;i!=e.height&&it(e,i)}function gn(e){e.parent=null,Zt(e)}dn.prototype.lineNo=function(){return ot(this)},Ee(dn);var mn={},vn={};function yn(e,t){if(!e||/^\s*$/.test(e))return null;var n=t.addModeClass?vn:mn;return n[e]||(n[e]=e.replace(/\S+/g,"cm-$&"))}function bn(e,t){var n=M("span",null,null,l?"padding-right: .1px":null),r={pre:M("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 o=i?t.rest[i-1]:t.line,a=void 0;r.pos=0,r.addToken=_n,Fe(e.display.measure)&&(a=ve(o,e.doc.direction))&&(r.addToken=kn(r.addToken,a)),r.map=[];var s=t!=e.display.externalMeasured&&ot(o);Cn(o,r,xt(e,o,s)),o.styleClasses&&(o.styleClasses.bgClass&&(r.bgClass=N(o.styleClasses.bgClass,r.bgClass||"")),o.styleClasses.textClass&&(r.textClass=N(o.styleClasses.textClass,r.textClass||""))),0==r.map.length&&r.map.push(0,0,r.content.appendChild(De(e.display.measure))),0==i?(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(l){var u=r.content.lastChild;(/\bcm-tab\b/.test(u.className)||u.querySelector&&u.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return xe(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=N(r.pre.className,r.textClass||"")),r}function wn(e){var t=T("span","•","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function _n(e,t,n,r,i,o,l){if(t){var u,c=e.splitSpaces?xn(t,e.trailingSpace):t,f=e.cm.state.specialChars,h=!1;if(f.test(t)){u=document.createDocumentFragment();var d=0;while(1){f.lastIndex=d;var p=f.exec(t),g=p?p.index-d:t.length-d;if(g){var m=document.createTextNode(c.slice(d,d+g));a&&s<9?u.appendChild(T("span",[m])):u.appendChild(m),e.map.push(e.pos,e.pos+g,m),e.col+=g,e.pos+=g}if(!p)break;d+=g+1;var v=void 0;if("\t"==p[0]){var y=e.cm.options.tabSize,b=y-e.col%y;v=u.appendChild(T("span",Q(b),"cm-tab")),v.setAttribute("role","presentation"),v.setAttribute("cm-text","\t"),e.col+=b}else"\r"==p[0]||"\n"==p[0]?(v=u.appendChild(T("span","\r"==p[0]?"␍":"␤","cm-invalidchar")),v.setAttribute("cm-text",p[0]),e.col+=1):(v=e.cm.options.specialCharPlaceholder(p[0]),v.setAttribute("cm-text",p[0]),a&&s<9?u.appendChild(T("span",[v])):u.appendChild(v),e.col+=1);e.map.push(e.pos,e.pos+1,v),e.pos++}}else e.col+=t.length,u=document.createTextNode(c),e.map.push(e.pos,e.pos+t.length,u),a&&s<9&&(h=!0),e.pos+=t.length;if(e.trailingSpace=32==c.charCodeAt(t.length-1),n||r||i||h||o||l){var w=n||"";r&&(w+=r),i&&(w+=i);var _=T("span",[u],w,o);if(l)for(var x in l)l.hasOwnProperty(x)&&"style"!=x&&"class"!=x&&_.setAttribute(x,l[x]);return e.content.appendChild(_)}e.content.appendChild(u)}}function xn(e,t){if(e.length>1&&!/ /.test(e))return e;for(var n=t,r="",i=0;iu&&f.from<=u)break;if(f.to>=c)return e(n,r,i,o,a,s,l);e(n,r.slice(0,f.to-u),i,o,null,s,l),o=null,r=r.slice(f.to-u),u=f.to}}}function Sn(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 Cn(e,t,n){var r=e.markedSpans,i=e.text,o=0;if(r)for(var a,s,l,u,c,f,h,d=i.length,p=0,g=1,m="",v=0;;){if(v==p){l=u=c=s="",h=null,f=null,v=1/0;for(var y=[],b=void 0,w=0;wp||x.collapsed&&_.to==p&&_.from==p)){if(null!=_.to&&_.to!=p&&v>_.to&&(v=_.to,u=""),x.className&&(l+=" "+x.className),x.css&&(s=(s?s+";":"")+x.css),x.startStyle&&_.from==p&&(c+=" "+x.startStyle),x.endStyle&&_.to==v&&(b||(b=[])).push(x.endStyle,_.to),x.title&&((h||(h={})).title=x.title),x.attributes)for(var k in x.attributes)(h||(h={}))[k]=x.attributes[k];x.collapsed&&(!f||Kt(f.marker,x)<0)&&(f=_)}else _.from>p&&v>_.from&&(v=_.from)}if(b)for(var S=0;S=d)break;var E=Math.min(d,v);while(1){if(m){var A=p+m.length;if(!f){var O=A>E?m.slice(0,E-p):m;t.addToken(t,O,a?a+l:l,c,p+O.length==v?u:"",s,h)}if(A>=E){m=m.slice(E-p),p=E;break}p=A,c=""}m=i.slice(o,o=n[g++]),a=yn(n[g++],t.cm.options)}}else for(var L=1;L2&&o.push((l.bottom+u.top)/2-n.top)}}o.push(n.bottom-n.top)}}function nr(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 rr(e,t){t=nn(t);var n=ot(t),r=e.display.externalMeasured=new En(e.doc,t,n);r.lineN=n;var i=r.built=bn(e,r);return r.text=i.pre,L(e.display.lineMeasure,i.pre),r}function ir(e,t,n,r){return sr(e,ar(e,t),n,r)}function or(e,t){if(t>=e.display.viewFrom&&t=n.lineN&&tt)&&(o=l-s,i=o-1,t>=l&&(a="right")),null!=i){if(r=e[u+2],s==l&&n==(r.insertLeft?"left":"right")&&(a=n),"left"==n&&0==i)while(u&&e[u-2]==e[u-3]&&e[u-1].insertLeft)r=e[2+(u-=3)],a="left";if("right"==n&&i==l-s)while(u=0;i--)if((n=e[i]).left!=n.right)break;return n}function hr(e,t,n,r){var i,o=cr(t.map,n,r),l=o.node,u=o.start,c=o.end,f=o.collapse;if(3==l.nodeType){for(var h=0;h<4;h++){while(u&&ce(t.line.text.charAt(o.coverStart+u)))--u;while(o.coverStart+c0&&(f=r="right"),i=e.options.lineWrapping&&(d=l.getClientRects()).length>1?d["right"==r?d.length-1:0]:l.getBoundingClientRect()}if(a&&s<9&&!u&&(!i||!i.left&&!i.right)){var p=l.parentNode.getClientRects()[0];i=p?{left:p.left,right:p.left+Rr(e.display),top:p.top,bottom:p.bottom}:ur}for(var g=i.top-t.rect.top,m=i.bottom-t.rect.top,v=(g+m)/2,y=t.view.measure.heights,b=0;b=r.text.length?(l=r.text.length,u="before"):l<=0&&(l=0,u="after"),!s)return a("before"==u?l-1:l,"before"==u);function c(e,t,n){var r=s[t],i=1==r.level;return a(n?e-1:e,i!=n)}var f=ge(s,l,u),h=pe,d=c(l,f,"before"==u);return null!=h&&(d.other=c(l,h,"before"!=u)),d}function Sr(e,t){var n=0;t=mt(e.doc,t),e.options.lineWrapping||(n=Rr(e.display)*t.ch);var r=tt(e.doc,t.line),i=cn(r)+Yn(e.display);return{left:n,right:n,top:i,bottom:i+r.height}}function Cr(e,t,n,r,i){var o=ut(e,t,n);return o.xRel=i,r&&(o.outside=r),o}function Er(e,t,n){var r=e.doc;if(n+=e.display.viewOffset,n<0)return Cr(r.first,0,null,-1,-1);var i=at(r,n),o=r.first+r.size-1;if(i>o)return Cr(r.first+r.size-1,tt(r,o).text.length,null,1,1);t<0&&(t=0);for(var a=tt(r,i);;){var s=Tr(e,a,i,t,n),l=en(a,s.ch+(s.xRel>0||s.outside>0?1:0));if(!l)return s;var u=l.find(1);if(u.line==i)return u;a=tt(r,i=u.line)}}function Ar(e,t,n,r){r-=br(t);var i=t.text.length,o=he((function(t){return sr(e,n,t-1).bottom<=r}),i,0);return i=he((function(t){return sr(e,n,t).top>r}),o,i),{begin:o,end:i}}function Or(e,t,n,r){n||(n=ar(e,t));var i=wr(e,t,sr(e,n,r),"line").top;return Ar(e,t,n,i)}function Lr(e,t,n,r){return!(e.bottom<=n)&&(e.top>n||(r?e.left:e.right)>t)}function Tr(e,t,n,r,i){i-=cn(t);var o=ar(e,t),a=br(t),s=0,l=t.text.length,u=!0,c=ve(t,e.doc.direction);if(c){var f=(e.options.lineWrapping?Pr:Mr)(e,t,n,o,c,r,i);u=1!=f.level,s=u?f.from:f.to-1,l=u?f.to:f.from-1}var h,d,p=null,g=null,m=he((function(t){var n=sr(e,o,t);return n.top+=a,n.bottom+=a,!!Lr(n,r,i,!1)&&(n.top<=i&&n.left<=r&&(p=t,g=n),!0)}),s,l),v=!1;if(g){var y=r-g.left=w.bottom?1:0}return m=fe(t.text,m,1),Cr(n,m,d,v,r-h)}function Mr(e,t,n,r,i,o,a){var s=he((function(s){var l=i[s],u=1!=l.level;return Lr(kr(e,ut(n,u?l.to:l.from,u?"before":"after"),"line",t,r),o,a,!0)}),0,i.length-1),l=i[s];if(s>0){var u=1!=l.level,c=kr(e,ut(n,u?l.from:l.to,u?"after":"before"),"line",t,r);Lr(c,o,a,!0)&&c.top>a&&(l=i[s-1])}return l}function Pr(e,t,n,r,i,o,a){var s=Ar(e,t,r,a),l=s.begin,u=s.end;/\s/.test(t.text.charAt(u-1))&&u--;for(var c=null,f=null,h=0;h=u||d.to<=l)){var p=1!=d.level,g=sr(e,r,p?Math.min(u,d.to)-1:Math.max(l,d.from)).right,m=gm)&&(c=d,f=m)}}return c||(c=i[i.length-1]),c.fromu&&(c={from:c.from,to:u,level:c.level}),c}function jr(e){if(null!=e.cachedTextHeight)return e.cachedTextHeight;if(null==lr){lr=T("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)lr.appendChild(document.createTextNode("x")),lr.appendChild(T("br"));lr.appendChild(document.createTextNode("x"))}L(e.measure,lr);var n=lr.offsetHeight/50;return n>3&&(e.cachedTextHeight=n),O(e.measure),n||1}function Rr(e){if(null!=e.cachedCharWidth)return e.cachedCharWidth;var t=T("span","xxxxxxxxxx"),n=T("pre",[t],"CodeMirror-line-like");L(e.measure,n);var r=t.getBoundingClientRect(),i=(r.right-r.left)/10;return i>2&&(e.cachedCharWidth=i),i||10}function Nr(e){for(var t=e.display,n={},r={},i=t.gutters.clientLeft,o=t.gutters.firstChild,a=0;o;o=o.nextSibling,++a){var s=e.display.gutterSpecs[a].className;n[s]=o.offsetLeft+o.clientLeft+i,r[s]=o.clientWidth}return{fixedPos:Dr(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:n,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function Dr(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function Fr(e){var t=jr(e.display),n=e.options.lineWrapping,r=n&&Math.max(5,e.display.scroller.clientWidth/Rr(e.display)-3);return function(i){if(ln(e.doc,i))return 0;var o=0;if(i.widgets)for(var a=0;a0&&(l=tt(e.doc,u.line).text).length==u.ch){var c=H(l,l.length,e.options.tabSize)-l.length;u=ut(u.line,Math.max(0,Math.round((o-Xn(e.display).left)/Rr(e.display))-c))}return u}function Br(e,t){if(t>=e.display.viewTo)return null;if(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)Rt&&an(e.doc,t)i.viewFrom?Hr(e):(i.viewFrom+=r,i.viewTo+=r);else if(t<=i.viewFrom&&n>=i.viewTo)Hr(e);else if(t<=i.viewFrom){var o=Wr(e,n,n+r,1);o?(i.view=i.view.slice(o.index),i.viewFrom=o.lineN,i.viewTo+=r):Hr(e)}else if(n>=i.viewTo){var a=Wr(e,t,t,-1);a?(i.view=i.view.slice(0,a.index),i.viewTo=a.lineN):Hr(e)}else{var s=Wr(e,t,t,-1),l=Wr(e,n,n+r,1);s&&l?(i.view=i.view.slice(0,s.index).concat(An(e,s.lineN,l.lineN)).concat(i.view.slice(l.index)),i.viewTo+=r):Hr(e)}var u=i.externalMeasured;u&&(n=i.lineN&&t=r.viewTo)){var o=r.view[Br(e,t)];if(null!=o.node){var a=o.changes||(o.changes=[]);-1==q(a,n)&&a.push(n)}}}function Hr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function Wr(e,t,n,r){var i,o=Br(e,t),a=e.display.view;if(!Rt||n==e.doc.first+e.doc.size)return{index:o,lineN:n};for(var s=e.display.viewFrom,l=0;l0){if(o==a.length-1)return null;i=s+a[o].size-t,o++}else i=s-t;t+=i,n+=i}while(an(e.doc,n)!=n){if(o==(r<0?0:a.length-1))return null;n+=r*a[o-(r<0?1:0)].size,o+=r}return{index:o,lineN:n}}function qr(e,t,n){var r=e.display,i=r.view;0==i.length||t>=r.viewTo||n<=r.viewFrom?(r.view=An(e,t,n),r.viewFrom=t):(r.viewFrom>t?r.view=An(e,t,r.viewFrom).concat(r.view):r.viewFromn&&(r.view=r.view.slice(0,Br(e,n)))),r.viewTo=n}function Zr(e){for(var t=e.display.view,n=0,r=0;r=e.display.viewTo||l.to().line0?a:e.defaultCharWidth())+"px"}if(r.other){var s=n.appendChild(T("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));s.style.display="",s.style.left=r.other.left+"px",s.style.top=r.other.top+"px",s.style.height=.85*(r.other.bottom-r.other.top)+"px"}}function Kr(e,t){return e.top-t.top||e.left-t.left}function Xr(e,t,n){var r=e.display,i=e.doc,o=document.createDocumentFragment(),a=Xn(e.display),s=a.left,l=Math.max(r.sizerWidth,Qn(e)-r.sizer.offsetLeft)-a.right,u="ltr"==i.direction;function c(e,t,n,r){t<0&&(t=0),t=Math.round(t),r=Math.round(r),o.appendChild(T("div",null,"CodeMirror-selected","position: absolute; left: "+e+"px;\n top: "+t+"px; width: "+(null==n?l-e:n)+"px;\n height: "+(r-t)+"px"))}function f(t,n,r){var o,a,f=tt(i,t),h=f.text.length;function d(n,r){return xr(e,ut(t,n),"div",f,r)}function p(t,n,r){var i=Or(e,f,null,t),o="ltr"==n==("after"==r)?"left":"right",a="after"==r?i.begin:i.end-(/\s/.test(f.text.charAt(i.end-1))?2:1);return d(a,o)[o]}var g=ve(f,i.direction);return de(g,n||0,null==r?h:r,(function(e,t,i,f){var m="ltr"==i,v=d(e,m?"left":"right"),y=d(t-1,m?"right":"left"),b=null==n&&0==e,w=null==r&&t==h,_=0==f,x=!g||f==g.length-1;if(y.top-v.top<=3){var k=(u?b:w)&&_,S=(u?w:b)&&x,C=k?s:(m?v:y).left,E=S?l:(m?y:v).right;c(C,v.top,E-C,v.bottom)}else{var A,O,L,T;m?(A=u&&b&&_?s:v.left,O=u?l:p(e,i,"before"),L=u?s:p(t,i,"after"),T=u&&w&&x?l:y.right):(A=u?p(e,i,"before"):s,O=!u&&b&&_?l:v.right,L=!u&&w&&x?s:y.left,T=u?p(t,i,"after"):l),c(A,v.top,O-A,v.bottom),v.bottom0?t.blinker=setInterval((function(){e.hasFocus()||ni(e),t.cursorDiv.style.visibility=(n=!n)?"":"hidden"}),e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function Qr(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||ti(e))}function ei(e){e.state.delayingBlurEvent=!0,setTimeout((function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&ni(e))}),100)}function ti(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),"nocursor"!=e.options.readOnly&&(e.state.focused||(xe(e,"focus",e,t),e.state.focused=!0,R(e.display.wrapper,"CodeMirror-focused"),e.curOp||e.display.selForContextMenu==e.doc.sel||(e.display.input.reset(),l&&setTimeout((function(){return e.display.input.reset(!0)}),20)),e.display.input.receivedFocus()),Jr(e))}function ni(e,t){e.state.delayingBlurEvent||(e.state.focused&&(xe(e,"blur",e,t),e.state.focused=!1,A(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout((function(){e.state.focused||(e.display.shift=!1)}),150))}function ri(e){for(var t=e.display,n=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),i=t.lineDiv.getBoundingClientRect().top,o=0,l=0;l.005||g<-.005)&&(ie.display.sizerWidth){var v=Math.ceil(h/Rr(e.display));v>e.display.maxLineLength&&(e.display.maxLineLength=v,e.display.maxLine=u.line,e.display.maxLineChanged=!0)}}}Math.abs(o)>2&&(t.scroller.scrollTop+=o)}function ii(e){if(e.widgets)for(var t=0;t=a&&(o=at(t,cn(tt(t,l))-e.wrapper.clientHeight),a=l)}return{from:o,to:Math.max(a,o+1)}}function ai(e,t){if(!ke(e,"scrollCursorIntoView")){var n=e.display,r=n.sizer.getBoundingClientRect(),i=null,o=n.wrapper.ownerDocument;if(t.top+r.top<0?i=!0:t.bottom+r.top>(o.defaultView.innerHeight||o.documentElement.clientHeight)&&(i=!1),null!=i&&!g){var a=T("div","​",null,"position: absolute;\n top: "+(t.top-n.viewOffset-Yn(e.display))+"px;\n height: "+(t.bottom-t.top+Jn(e)+n.barHeight)+"px;\n left: "+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(a),a.scrollIntoView(i),e.display.lineSpace.removeChild(a)}}}function si(e,t,n,r){var i;null==r&&(r=0),e.options.lineWrapping||t!=n||(n="before"==t.sticky?ut(t.line,t.ch+1,"before"):t,t=t.ch?ut(t.line,"before"==t.sticky?t.ch-1:t.ch,"after"):t);for(var o=0;o<5;o++){var a=!1,s=kr(e,t),l=n&&n!=t?kr(e,n):s;i={left:Math.min(s.left,l.left),top:Math.min(s.top,l.top)-r,right:Math.max(s.left,l.left),bottom:Math.max(s.bottom,l.bottom)+r};var u=ui(e,i),c=e.doc.scrollTop,f=e.doc.scrollLeft;if(null!=u.scrollTop&&(mi(e,u.scrollTop),Math.abs(e.doc.scrollTop-c)>1&&(a=!0)),null!=u.scrollLeft&&(yi(e,u.scrollLeft),Math.abs(e.doc.scrollLeft-f)>1&&(a=!0)),!a)break}return i}function li(e,t){var n=ui(e,t);null!=n.scrollTop&&mi(e,n.scrollTop),null!=n.scrollLeft&&yi(e,n.scrollLeft)}function ui(e,t){var n=e.display,r=jr(e.display);t.top<0&&(t.top=0);var i=e.curOp&&null!=e.curOp.scrollTop?e.curOp.scrollTop:n.scroller.scrollTop,o=er(e),a={};t.bottom-t.top>o&&(t.bottom=t.top+o);var s=e.doc.height+Kn(n),l=t.tops-r;if(t.topi+o){var c=Math.min(t.top,(u?s:t.bottom)-o);c!=i&&(a.scrollTop=c)}var f=e.options.fixedGutter?0:n.gutters.offsetWidth,h=e.curOp&&null!=e.curOp.scrollLeft?e.curOp.scrollLeft:n.scroller.scrollLeft-f,d=Qn(e)-n.gutters.offsetWidth,p=t.right-t.left>d;return p&&(t.right=t.left+d),t.left<10?a.scrollLeft=0:t.leftd+h-3&&(a.scrollLeft=t.right+(p?0:10)-d),a}function ci(e,t){null!=t&&(pi(e),e.curOp.scrollTop=(null==e.curOp.scrollTop?e.doc.scrollTop:e.curOp.scrollTop)+t)}function fi(e){pi(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function hi(e,t,n){null==t&&null==n||pi(e),null!=t&&(e.curOp.scrollLeft=t),null!=n&&(e.curOp.scrollTop=n)}function di(e,t){pi(e),e.curOp.scrollToPos=t}function pi(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var n=Sr(e,t.from),r=Sr(e,t.to);gi(e,n,r,t.margin)}}function gi(e,t,n,r){var i=ui(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});hi(e,i.scrollLeft,i.scrollTop)}function mi(e,t){Math.abs(e.doc.scrollTop-t)<2||(n||Vi(e,{top:t}),vi(e,t,!0),n&&Vi(e),zi(e,100))}function vi(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 yi(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,Xi(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function bi(e){var t=e.display,n=t.gutters.offsetWidth,r=Math.round(e.doc.height+Kn(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+Jn(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:n}}var wi=function(e,t,n){this.cm=n;var r=this.vert=T("div",[T("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),i=this.horiz=T("div",[T("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=i.tabIndex=-1,e(r),e(i),be(r,"scroll",(function(){r.clientHeight&&t(r.scrollTop,"vertical")})),be(i,"scroll",(function(){i.clientWidth&&t(i.scrollLeft,"horizontal")})),this.checkedZeroWidth=!1,a&&s<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};wi.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 o=e.viewWidth-e.barLeft-(n?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+o)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(0==r&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:n?r:0,bottom:t?r:0}},wi.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},wi.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},wi.prototype.zeroWidthHack=function(){var e=b&&!p?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new W,this.disableVert=new W},wi.prototype.enableZeroWidthBar=function(e,t,n){function r(){var i=e.getBoundingClientRect(),o="vert"==n?document.elementFromPoint(i.right-1,(i.top+i.bottom)/2):document.elementFromPoint((i.right+i.left)/2,i.bottom-1);o!=e?e.style.visibility="hidden":t.set(1e3,r)}e.style.visibility="",t.set(1e3,r)},wi.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var _i=function(){};function xi(e,t){t||(t=bi(e));var n=e.display.barWidth,r=e.display.barHeight;ki(e,t);for(var i=0;i<4&&n!=e.display.barWidth||r!=e.display.barHeight;i++)n!=e.display.barWidth&&e.options.lineWrapping&&ri(e),ki(e,bi(e)),n=e.display.barWidth,r=e.display.barHeight}function ki(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=""}_i.prototype.update=function(){return{bottom:0,right:0}},_i.prototype.setScrollLeft=function(){},_i.prototype.setScrollTop=function(){},_i.prototype.clear=function(){};var Si={native:wi,null:_i};function Ci(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&A(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new Si[e.options.scrollbarStyle]((function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),be(t,"mousedown",(function(){e.state.focused&&setTimeout((function(){return e.display.input.focus()}),0)})),t.setAttribute("cm-not-content","true")}),(function(t,n){"horizontal"==n?yi(e,t):mi(e,t)}),e),e.display.scrollbars.addClass&&R(e.display.wrapper,e.display.scrollbars.addClass)}var Ei=0;function Ai(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:++Ei,markArrays:null},Ln(e.curOp)}function Oi(e){var t=e.curOp;t&&Mn(t,(function(e){for(var t=0;t=n.viewTo)||n.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new Ui(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function Mi(e){e.updatedDisplay=e.mustUpdate&&qi(e.cm,e.update)}function Pi(e){var t=e.cm,n=t.display;e.updatedDisplay&&ri(t),e.barMeasure=bi(t),n.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=ir(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+Jn(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,n.sizer.offsetLeft+e.adjustWidthTo-Qn(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=n.input.prepareSelection())}function ji(e){var t=e.cm;null!=e.adjustWidthTo&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var n=+new Date+e.options.workTime,r=kt(e,t.highlightFrontier),i=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),(function(o){if(r.line>=e.display.viewFrom){var a=o.styles,s=o.text.length>e.options.maxHighlightLength?Xe(t.mode,r.state):null,l=_t(e,o,r,!0);s&&(r.state=s),o.styles=l.styles;var u=o.styleClasses,c=l.classes;c?o.styleClasses=c:u&&(o.styleClasses=null);for(var f=!a||a.length!=o.styles.length||u!=c&&(!u||!c||u.bgClass!=c.bgClass||u.textClass!=c.textClass),h=0;!f&&hn)return zi(e,e.options.workDelay),!0})),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),i.length&&Ni(e,(function(){for(var t=0;t=n.viewFrom&&t.visible.to<=n.viewTo&&(null==n.updateLineNumbers||n.updateLineNumbers>=n.viewTo)&&n.renderedView==n.view&&0==Zr(e))return!1;Ji(e)&&(Hr(e),t.dims=Nr(e));var i=r.first+r.size,o=Math.max(t.visible.from-e.options.viewportMargin,r.first),a=Math.min(i,t.visible.to+e.options.viewportMargin);n.viewFroma&&n.viewTo-a<20&&(a=Math.min(i,n.viewTo)),Rt&&(o=an(e.doc,o),a=sn(e.doc,a));var s=o!=n.viewFrom||a!=n.viewTo||n.lastWrapHeight!=t.wrapperHeight||n.lastWrapWidth!=t.wrapperWidth;qr(e,o,a),n.viewOffset=cn(tt(e.doc,n.viewFrom)),e.display.mover.style.top=n.viewOffset+"px";var l=Zr(e);if(!s&&0==l&&!t.force&&n.renderedView==n.view&&(null==n.updateLineNumbers||n.updateLineNumbers>=n.viewTo))return!1;var u=Hi(e);return l>4&&(n.lineDiv.style.display="none"),Gi(e,n.updateLineNumbers,t.dims),l>4&&(n.lineDiv.style.display=""),n.renderedView=n.view,Wi(u),O(n.cursorDiv),O(n.selectionDiv),n.gutters.style.height=n.sizer.style.minHeight=0,s&&(n.lastWrapHeight=t.wrapperHeight,n.lastWrapWidth=t.wrapperWidth,zi(e,400)),n.updateLineNumbers=null,!0}function Zi(e,t){for(var n=t.viewport,r=!0;;r=!1){if(r&&e.options.lineWrapping&&t.oldDisplayWidth!=Qn(e))r&&(t.visible=oi(e.display,e.doc,n));else if(n&&null!=n.top&&(n={top:Math.min(e.doc.height+Kn(e.display)-er(e),n.top)}),t.visible=oi(e.display,e.doc,n),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break;if(!qi(e,t))break;ri(e);var i=bi(e);Vr(e),xi(e,i),Ki(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 Vi(e,t){var n=new Ui(e,t);if(qi(e,n)){ri(e),Zi(e,n);var r=bi(e);Vr(e),xi(e,r),Ki(e,r),n.finish()}}function Gi(e,t,n){var r=e.display,i=e.options.lineNumbers,o=r.lineDiv,a=o.firstChild;function s(t){var n=t.nextSibling;return l&&b&&e.display.currentWheelTarget==t?t.style.display="none":t.parentNode.removeChild(t),n}for(var u=r.view,c=r.viewFrom,f=0;f-1&&(d=!1),Nn(e,h,c,n)),d&&(O(h.lineNumber),h.lineNumber.appendChild(document.createTextNode(lt(e.options,c)))),a=h.node.nextSibling}else{var p=Hn(e,h,c,n);o.insertBefore(p,a)}c+=h.size}while(a)a=s(a)}function Yi(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",jn(e,"gutterChanged",e)}function Ki(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+Jn(e)+"px"}function Xi(e){var t=e.display,n=t.view;if(t.alignWidgets||t.gutters.firstChild&&e.options.fixedGutter){for(var r=Dr(t)-t.scroller.scrollLeft+e.doc.scrollLeft,i=t.gutters.offsetWidth,o=r+"px",a=0;a=105&&(o.wrapper.style.clipPath="inset(0px)"),o.wrapper.setAttribute("translate","no"),a&&s<8&&(o.gutters.style.zIndex=-1,o.scroller.style.paddingRight=0),l||n&&y||(o.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(o.wrapper):e(o.wrapper)),o.viewFrom=o.viewTo=t.first,o.reportedViewFrom=o.reportedViewTo=t.first,o.view=[],o.renderedView=null,o.externalMeasured=null,o.viewOffset=0,o.lastWrapHeight=o.lastWrapWidth=0,o.updateLineNumbers=null,o.nativeBarWidth=o.barHeight=o.barWidth=0,o.scrollbarsClipped=!1,o.lineNumWidth=o.lineNumInnerWidth=o.lineNumChars=null,o.alignWidgets=!1,o.cachedCharWidth=o.cachedTextHeight=o.cachedPaddingH=null,o.maxLine=null,o.maxLineLength=0,o.maxLineChanged=!1,o.wheelDX=o.wheelDY=o.wheelStartX=o.wheelStartY=null,o.shift=!1,o.selForContextMenu=null,o.activeTouch=null,o.gutterSpecs=Qi(i.gutters,i.lineNumbers),eo(o),r.init(o)}Ui.prototype.signal=function(e,t){Ce(e,t)&&this.events.push(arguments)},Ui.prototype.finish=function(){for(var e=0;eu.clientWidth,p=u.scrollHeight>u.clientHeight;if(i&&d||o&&p){if(o&&b&&l)e:for(var g=t.target,m=s.view;g!=u;g=g.parentNode)for(var v=0;v=0&&ct(e,r.to())<=0)return n}return-1};var uo=function(e,t){this.anchor=e,this.head=t};function co(e,t,n){var r=e&&e.options.selectionsMayTouch,i=t[n];t.sort((function(e,t){return ct(e.from(),t.from())})),n=q(t,i);for(var o=1;o0:l>=0){var u=pt(s.from(),a.from()),c=dt(s.to(),a.to()),f=s.empty()?a.from()==a.head:s.from()==s.head;o<=n&&--n,t.splice(--o,2,new uo(f?c:u,f?u:c))}}return new lo(t,n)}function fo(e,t){return new lo([new uo(e,t||e)],0)}function ho(e){return e.text?ut(e.from.line+e.text.length-1,ee(e.text).length+(1==e.text.length?e.from.ch:0)):e.to}function po(e,t){if(ct(e,t.from)<0)return e;if(ct(e,t.to)<=0)return ho(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+=ho(t).ch-t.to.ch),ut(n,r)}function go(e,t){for(var n=[],r=0;r1&&e.remove(s.line+1,p-1),e.insert(s.line+1,v)}jn(e,"change",e,t)}function xo(e,t,n){function r(e,i,o){if(e.linked)for(var a=0;a1&&!e.done[e.done.length-2].ranges?(e.done.pop(),ee(e.done)):void 0}function To(e,t,n,r){var i=e.history;i.undone.length=0;var o,a,s=+new Date;if((i.lastOp==r||i.lastOrigin==t.origin&&t.origin&&("+"==t.origin.charAt(0)&&i.lastModTime>s-(e.cm?e.cm.options.historyEventDelay:500)||"*"==t.origin.charAt(0)))&&(o=Lo(i,i.lastOp==r)))a=ee(o.changes),0==ct(t.from,t.to)&&0==ct(t.from,a.to)?a.to=ho(t):o.changes.push(Ao(e,t));else{var l=ee(i.done);l&&l.ranges||jo(e.sel,i.done),o={changes:[Ao(e,t)],generation:i.generation},i.done.push(o);while(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=s,i.lastOp=i.lastSelOp=r,i.lastOrigin=i.lastSelOrigin=t.origin,a||xe(e,"historyAdded")}function Mo(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 Po(e,t,n,r){var i=e.history,o=r&&r.origin;n==i.lastSelOp||o&&i.lastSelOrigin==o&&(i.lastModTime==i.lastSelTime&&i.lastOrigin==o||Mo(e,o,ee(i.done),t))?i.done[i.done.length-1]=t:jo(t,i.done),i.lastSelTime=+new Date,i.lastSelOrigin=o,i.lastSelOp=n,r&&!1!==r.clearRedo&&Oo(i.undone)}function jo(e,t){var n=ee(t);n&&n.ranges&&n.equals(e)||t.push(e)}function Ro(e,t,n,r){var i=t["spans_"+e.id],o=0;e.iter(Math.max(e.first,n),Math.min(e.first+e.size,r),(function(n){n.markedSpans&&((i||(i=t["spans_"+e.id]={}))[o]=n.markedSpans),++o}))}function No(e){if(!e)return null;for(var t,n=0;n-1&&(ee(s)[f]=u[f],delete u[f])}}}return r}function zo(e,t,n,r){if(r){var i=e.anchor;if(n){var o=ct(t,i)<0;o!=ct(n,i)<0?(i=t,t=n):o!=ct(t,n)<0&&(t=n)}return new uo(i,t)}return new uo(n||t,t)}function Bo(e,t,n,r,i){null==i&&(i=e.cm&&(e.cm.display.shift||e.extend)),Zo(e,new lo([zo(e.sel.primary(),t,n,i)],0),r)}function Uo(e,t,n){for(var r=[],i=e.cm&&(e.cm.display.shift||e.extend),o=0;o=t.ch:s.to>t.ch))){if(i&&(xe(l,"beforeCursorEnter"),l.explicitlyCleared)){if(o.markedSpans){--a;continue}break}if(!l.atomic)continue;if(n){var f=l.find(r<0?1:-1),h=void 0;if((r<0?c:u)&&(f=Qo(e,f,-r,f&&f.line==t.line?o:null)),f&&f.line==t.line&&(h=ct(f,n))&&(r<0?h<0:h>0))return Xo(e,f,t,r,i)}var d=l.find(r<0?-1:1);return(r<0?u:c)&&(d=Qo(e,d,r,d.line==t.line?o:null)),d?Xo(e,d,t,r,i):null}}return t}function Jo(e,t,n,r,i){var o=r||1,a=Xo(e,t,n,o,i)||!i&&Xo(e,t,n,o,!0)||Xo(e,t,n,-o,i)||!i&&Xo(e,t,n,-o,!0);return a||(e.cantEdit=!0,ut(e.first,0))}function Qo(e,t,n,r){return n<0&&0==t.ch?t.line>e.first?mt(e,ut(t.line-1)):null:n>0&&t.ch==(r||tt(e,t.line)).text.length?t.line=0;--i)ra(e,{from:r[i].from,to:r[i].to,text:i?[""]:t.text,origin:t.origin});else ra(e,t)}}function ra(e,t){if(1!=t.text.length||""!=t.text[0]||0!=ct(t.from,t.to)){var n=go(e,t);To(e,t,n,e.cm?e.cm.curOp.id:NaN),aa(e,t,n,Ht(e,t));var r=[];xo(e,(function(e,n){n||-1!=q(r,e.history)||(fa(e.history,t),r.push(e.history)),aa(e,t,null,Ht(e,t))}))}}function ia(e,t,n){var r=e.cm&&e.cm.state.suppressEdits;if(!r||n){for(var i,o=e.history,a=e.sel,s="undo"==t?o.done:o.undone,l="undo"==t?o.undone:o.done,u=0;u=0;--d){var p=h(d);if(p)return p.v}}}}function oa(e,t){if(0!=t&&(e.first+=t,e.sel=new lo(te(e.sel.ranges,(function(e){return new uo(ut(e.anchor.line+t,e.anchor.ch),ut(e.head.line+t,e.head.ch))})),e.sel.primIndex),e.cm)){Ur(e.cm,e.first,e.first-t,t);for(var n=e.cm.display,r=n.viewFrom;re.lastLine())){if(t.from.lineo&&(t={from:t.from,to:ut(o,tt(e,o).text.length),text:[t.text[0]],origin:t.origin}),t.removed=nt(e,t.from,t.to),n||(n=go(e,t)),e.cm?sa(e.cm,t,r):_o(e,t,r),Vo(e,n,G),e.cantEdit&&Jo(e,ut(e.firstLine(),0))&&(e.cantEdit=!1)}}function sa(e,t,n){var r=e.doc,i=e.display,o=t.from,a=t.to,s=!1,l=o.line;e.options.lineWrapping||(l=ot(nn(tt(r,o.line))),r.iter(l,a.line+1,(function(e){if(e==i.maxLine)return s=!0,!0}))),r.sel.contains(t.from,t.to)>-1&&Se(e),_o(r,t,n,Fr(e)),e.options.lineWrapping||(r.iter(l,o.line+t.text.length,(function(e){var t=fn(e);t>i.maxLineLength&&(i.maxLine=e,i.maxLineLength=t,i.maxLineChanged=!0,s=!1)})),s&&(e.curOp.updateMaxLine=!0)),Pt(r,o.line),zi(e,400);var u=t.text.length-(a.line-o.line)-1;t.full?Ur(e):o.line!=a.line||1!=t.text.length||wo(e.doc,t)?Ur(e,o.line,a.line+1,u):$r(e,o.line,"text");var c=Ce(e,"changes"),f=Ce(e,"change");if(f||c){var h={from:o,to:a,text:t.text,removed:t.removed,origin:t.origin};f&&jn(e,"change",e,h),c&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(h)}e.display.selForContextMenu=null}function la(e,t,n,r,i){var o;r||(r=n),ct(r,n)<0&&(o=[r,n],n=o[0],r=o[1]),"string"==typeof t&&(t=e.splitLines(t)),na(e,{from:n,to:r,text:t,origin:i})}function ua(e,t,n,r){n1||!(this.children[0]instanceof da))){var s=[];this.collapse(s),this.children=[new da(s)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var a=i.lines.length%25+25,s=a;s10);e.parent.maybeSpill()}},iterN:function(e,t,n){for(var r=0;r0||0==a&&!1!==o.clearWhenEmpty)return o;if(o.replacedWith&&(o.collapsed=!0,o.widgetNode=M("span",[o.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||o.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(o.widgetNode.insertLeft=!0)),o.collapsed){if(tn(e,t.line,t,n,o)||t.line!=n.line&&tn(e,n.line,t,n,o))throw new Error("Inserting collapsed marker partially overlapping an existing one");Dt()}o.addToHistory&&To(e,{from:t,to:n,origin:"markText"},e.sel,NaN);var s,l=t.line,u=e.cm;if(e.iter(l,n.line+1,(function(r){u&&o.collapsed&&!u.options.lineWrapping&&nn(r)==u.display.maxLine&&(s=!0),o.collapsed&&l!=t.line&&it(r,0),Bt(r,new Ft(o,l==t.line?t.ch:null,l==n.line?n.ch:null),e.cm&&e.cm.curOp),++l})),o.collapsed&&e.iter(t.line,n.line+1,(function(t){ln(e,t)&&it(t,0)})),o.clearOnEnter&&be(o,"beforeCursorEnter",(function(){return o.clear()})),o.readOnly&&(Nt(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),o.collapsed&&(o.id=++ya,o.atomic=!0),u){if(s&&(u.curOp.updateMaxLine=!0),o.collapsed)Ur(u,t.line,n.line+1);else if(o.className||o.startStyle||o.endStyle||o.css||o.attributes||o.title)for(var c=t.line;c<=n.line;c++)$r(u,c,"text");o.atomic&&Yo(u.doc),jn(u,"markerAdded",u,o)}return o}ba.prototype.clear=function(){if(!this.explicitlyCleared){var e=this.doc.cm,t=e&&!e.curOp;if(t&&Ai(e),Ce(this,"clear")){var n=this.find();n&&jn(this,"clear",n.from,n.to)}for(var r=null,i=null,o=0;oe.display.maxLineLength&&(e.display.maxLine=u,e.display.maxLineLength=c,e.display.maxLineChanged=!0)}null!=r&&e&&this.collapsed&&Ur(e,r,i+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&Yo(e.doc)),e&&jn(e,"markerCleared",e,this,r,i),t&&Oi(e),this.parent&&this.parent.clear()}},ba.prototype.find=function(e,t){var n,r;null==e&&"bookmark"==this.type&&(e=1);for(var i=0;i=0;l--)na(this,r[l]);s?qo(this,s):this.cm&&fi(this.cm)})),undo:Ii((function(){ia(this,"undo")})),redo:Ii((function(){ia(this,"redo")})),undoSelection:Ii((function(){ia(this,"undo",!0)})),redoSelection:Ii((function(){ia(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=mt(this,e),t=mt(this,t);var r=[],i=e.line;return this.iter(e.line,t.line+1,(function(o){var a=o.markedSpans;if(a)for(var s=0;s=l.to||null==l.from&&i!=e.line||null!=l.from&&i==t.line&&l.from>=t.ch||n&&!n(l.marker)||r.push(l.marker.parent||l.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-=o,++n})),mt(this,ut(n,t))},indexFromPos:function(e){e=mt(this,e);var t=e.ch;if(e.linet&&(t=e.from),null!=e.to&&e.to-1)return t.state.draggingText(e),void setTimeout((function(){return t.display.input.focus()}),20);try{var f=e.dataTransfer.getData("Text");if(f){var h;if(t.state.draggingText&&!t.state.draggingText.copy&&(h=t.listSelections()),Vo(t.doc,fo(n,n)),h)for(var d=0;d=0;t--)la(e.doc,"",r[t].from,r[t].to,"+delete");fi(e)}))}function Xa(e,t,n){var r=fe(e.text,t+n,n);return r<0||r>e.text.length?null:r}function Ja(e,t,n){var r=Xa(e,t.ch,n);return null==r?null:new ut(t.line,r,n<0?"after":"before")}function Qa(e,t,n,r,i){if(e){"rtl"==t.doc.direction&&(i=-i);var o=ve(n,t.doc.direction);if(o){var a,s=i<0?ee(o):o[0],l=i<0==(1==s.level),u=l?"after":"before";if(s.level>0||"rtl"==t.doc.direction){var c=ar(t,n);a=i<0?n.text.length-1:0;var f=sr(t,c,a).top;a=he((function(e){return sr(t,c,e).top==f}),i<0==(1==s.level)?s.from:s.to-1,a),"before"==u&&(a=Xa(n,a,1))}else a=i<0?s.to:s.from;return new ut(r,a,u)}}return new ut(r,i<0?n.text.length:0,i<0?"before":"after")}function es(e,t,n,r){var i=ve(t,e.doc.direction);if(!i)return Ja(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 o=ge(i,n.ch,n.sticky),a=i[o];if("ltr"==e.doc.direction&&a.level%2==0&&(r>0?a.to>n.ch:a.from=a.from&&h>=c.begin)){var d=f?"before":"after";return new ut(n.line,h,d)}}var p=function(e,t,r){for(var o=function(e,t){return t?new ut(n.line,l(e,1),"before"):new ut(n.line,e,"after")};e>=0&&e0==(1!=a.level),u=s?r.begin:l(r.end,-1);if(a.from<=u&&u0?c.end:l(c.begin,-1);return null==m||r>0&&m==t.text.length||(g=p(r>0?0:i.length-1,r,u(m)),!g)?null:g}$a.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},$a.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},$a.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},$a.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},$a["default"]=b?$a.macDefault:$a.pcDefault;var ts={selectAll:ea,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),G)},killLine:function(e){return Ka(e,(function(t){if(t.empty()){var n=tt(e.doc,t.head.line).text.length;return t.head.ch==n&&t.head.line0)i=new ut(i.line,i.ch+1),e.replaceRange(o.charAt(i.ch-1)+o.charAt(i.ch-2),ut(i.line,i.ch-2),i,"+transpose");else if(i.line>e.doc.first){var a=tt(e.doc,i.line-1).text;a&&(i=new ut(i.line,1),e.replaceRange(o.charAt(0)+e.doc.lineSeparator()+a.charAt(a.length-1),ut(i.line-1,a.length-1),i,"+transpose"))}n.push(new uo(i,i))}e.setSelections(n)}))},newlineAndIndent:function(e){return Ni(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;r-1&&(ct((i=s.ranges[i]).from(),t)<0||t.xRel>0)&&(ct(i.to(),t)>0||t.xRel<0)?Es(e,r,t,o):Os(e,r,t,o)}function Es(e,t,n,r){var i=e.display,o=!1,u=Di(e,(function(t){l&&(i.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:ei(e)),_e(i.wrapper.ownerDocument,"mouseup",u),_e(i.wrapper.ownerDocument,"mousemove",c),_e(i.scroller,"dragstart",f),_e(i.scroller,"drop",u),o||(Ae(t),r.addNew||Bo(e.doc,n,null,null,r.extend),l&&!d||a&&9==s?setTimeout((function(){i.wrapper.ownerDocument.body.focus({preventScroll:!0}),i.input.focus()}),20):i.input.focus())})),c=function(e){o=o||Math.abs(t.clientX-e.clientX)+Math.abs(t.clientY-e.clientY)>=10},f=function(){return o=!0};l&&(i.scroller.draggable=!0),e.state.draggingText=u,u.copy=!r.moveOnDrag,be(i.wrapper.ownerDocument,"mouseup",u),be(i.wrapper.ownerDocument,"mousemove",c),be(i.scroller,"dragstart",f),be(i.scroller,"drop",u),e.state.delayingBlurEvent=!0,setTimeout((function(){return i.input.focus()}),20),i.scroller.dragDrop&&i.scroller.dragDrop()}function As(e,t,n){if("char"==n)return new uo(t,t);if("word"==n)return e.findWordAt(t);if("line"==n)return new uo(ut(t.line,0),mt(e.doc,ut(t.line+1,0)));var r=n(e,t);return new uo(r.from,r.to)}function Os(e,t,n,r){a&&ei(e);var i=e.display,o=e.doc;Ae(t);var s,l,u=o.sel,c=u.ranges;if(r.addNew&&!r.extend?(l=o.sel.contains(n),s=l>-1?c[l]:new uo(n,n)):(s=o.sel.primary(),l=o.sel.primIndex),"rectangle"==r.unit)r.addNew||(s=new uo(n,n)),n=zr(e,t,!0,!0),l=-1;else{var f=As(e,n,r.unit);s=r.extend?zo(s,f.anchor,f.head,r.extend):f}r.addNew?-1==l?(l=c.length,Zo(o,co(e,c.concat([s]),l),{scroll:!1,origin:"*mouse"})):c.length>1&&c[l].empty()&&"char"==r.unit&&!r.extend?(Zo(o,co(e,c.slice(0,l).concat(c.slice(l+1)),0),{scroll:!1,origin:"*mouse"}),u=o.sel):$o(o,l,s,Y):(l=0,Zo(o,new lo([s],0),Y),u=o.sel);var h=n;function d(t){if(0!=ct(h,t))if(h=t,"rectangle"==r.unit){for(var i=[],a=e.options.tabSize,c=H(tt(o,n.line).text,n.ch,a),f=H(tt(o,t.line).text,t.ch,a),d=Math.min(c,f),p=Math.max(c,f),g=Math.min(n.line,t.line),m=Math.min(e.lastLine(),Math.max(n.line,t.line));g<=m;g++){var v=tt(o,g).text,y=X(v,d,a);d==p?i.push(new uo(ut(g,y),ut(g,y))):v.length>y&&i.push(new uo(ut(g,y),ut(g,X(v,p,a))))}i.length||i.push(new uo(n,n)),Zo(o,co(e,u.ranges.slice(0,l).concat(i),l),{origin:"*mouse",scroll:!1}),e.scrollIntoView(t)}else{var b,w=s,_=As(e,t,r.unit),x=w.anchor;ct(_.anchor,x)>0?(b=_.head,x=pt(w.from(),_.anchor)):(b=_.anchor,x=dt(w.to(),_.head));var k=u.ranges.slice(0);k[l]=Ls(e,new uo(mt(o,x),b)),Zo(o,co(e,k,l),Y)}}var p=i.wrapper.getBoundingClientRect(),g=0;function m(t){var n=++g,a=zr(e,t,!0,"rectangle"==r.unit);if(a)if(0!=ct(a,h)){e.curOp.focus=j(I(e)),d(a);var s=oi(i,o);(a.line>=s.to||a.linep.bottom?20:0;l&&setTimeout(Di(e,(function(){g==n&&(i.scroller.scrollTop+=l,m(t))})),50)}}function v(t){e.state.selectingText=!1,g=1/0,t&&(Ae(t),i.input.focus()),_e(i.wrapper.ownerDocument,"mousemove",y),_e(i.wrapper.ownerDocument,"mouseup",b),o.history.lastSelOrigin=null}var y=Di(e,(function(e){0!==e.buttons&&Pe(e)?m(e):v(e)})),b=Di(e,v);e.state.selectingText=b,be(i.wrapper.ownerDocument,"mousemove",y),be(i.wrapper.ownerDocument,"mouseup",b)}function Ls(e,t){var n=t.anchor,r=t.head,i=tt(e.doc,n.line);if(0==ct(n,r)&&n.sticky==r.sticky)return t;var o=ve(i);if(!o)return t;var a=ge(o,n.ch,n.sticky),s=o[a];if(s.from!=n.ch&&s.to!=n.ch)return t;var l,u=a+(s.from==n.ch==(1!=s.level)?0:1);if(0==u||u==o.length)return t;if(r.line!=n.line)l=(r.line-n.line)*("ltr"==e.doc.direction?1:-1)>0;else{var c=ge(o,r.ch,r.sticky),f=c-a||(r.ch-n.ch)*(1==s.level?-1:1);l=c==u-1||c==u?f<0:f>0}var h=o[u+(l?-1:0)],d=l==(1==h.level),p=d?h.from:h.to,g=d?"after":"before";return n.ch==p&&n.sticky==g?t:new uo(new ut(n.line,p,g),r)}function Ts(e,t,n,r){var i,o;if(t.touches)i=t.touches[0].clientX,o=t.touches[0].clientY;else try{i=t.clientX,o=t.clientY}catch(h){return!1}if(i>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&Ae(t);var a=e.display,s=a.lineDiv.getBoundingClientRect();if(o>s.bottom||!Ce(e,n))return Le(t);o-=s.top-a.viewOffset;for(var l=0;l=i){var c=at(e.doc,o),f=e.display.gutterSpecs[l];return xe(e,n,e,c,f.className,t),Le(t)}}}function Ms(e,t){return Ts(e,t,"gutterClick",!0)}function Ps(e,t){Gn(e.display,t)||js(e,t)||ke(e,t,"contextmenu")||S||e.display.input.onContextMenu(t)}function js(e,t){return!!Ce(e,"gutterContextMenu")&&Ts(e,t,"gutterContextMenu",!1)}function Rs(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),mr(e)}ws.prototype.compare=function(e,t,n){return this.time+bs>e&&0==ct(t,this.pos)&&n==this.button};var Ns={toString:function(){return"CodeMirror.Init"}},Ds={},Fs={};function Is(e){var t=e.optionHandlers;function n(n,r,i,o){e.defaults[n]=r,i&&(t[n]=o?function(e,t,n){n!=Ns&&i(e,t,n)}:i)}e.defineOption=n,e.Init=Ns,n("value","",(function(e,t){return e.setValue(t)}),!0),n("mode",null,(function(e,t){e.doc.modeOption=t,yo(e)}),!0),n("indentUnit",2,yo,!0),n("indentWithTabs",!1),n("smartIndent",!0),n("tabSize",4,(function(e){bo(e),mr(e),Ur(e)}),!0),n("lineSeparator",null,(function(e,t){if(e.doc.lineSep=t,t){var n=[],r=e.doc.first;e.doc.iter((function(e){for(var i=0;;){var o=e.text.indexOf(t,i);if(-1==o)break;i=o+t.length,n.push(ut(r,o))}r++}));for(var i=n.length-1;i>=0;i--)la(e.doc,t,n[i],ut(n[i].line,n[i].ch+t.length))}})),n("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,(function(e,t,n){e.state.specialChars=new RegExp(t.source+(t.test("\t")?"":"|\t"),"g"),n!=Ns&&e.refresh()})),n("specialCharPlaceholder",wn,(function(e){return e.refresh()}),!0),n("electricChars",!0),n("inputStyle",y?"contenteditable":"textarea",(function(){throw new Error("inputStyle can not (yet) be changed in a running editor")}),!0),n("spellcheck",!1,(function(e,t){return e.getInputField().spellcheck=t}),!0),n("autocorrect",!1,(function(e,t){return e.getInputField().autocorrect=t}),!0),n("autocapitalize",!1,(function(e,t){return e.getInputField().autocapitalize=t}),!0),n("rtlMoveVisually",!_),n("wholeLineUpdateBefore",!0),n("theme","default",(function(e){Rs(e),to(e)}),!0),n("keyMap","default",(function(e,t,n){var r=Ya(t),i=n!=Ns&&Ya(n);i&&i.detach&&i.detach(e,r),r.attach&&r.attach(e,i||null)})),n("extraKeys",null),n("configureMouse",null),n("lineWrapping",!1,Bs,!0),n("gutters",[],(function(e,t){e.display.gutterSpecs=Qi(t,e.options.lineNumbers),to(e)}),!0),n("fixedGutter",!0,(function(e,t){e.display.gutters.style.left=t?Dr(e.display)+"px":"0",e.refresh()}),!0),n("coverGutterNextToScrollbar",!1,(function(e){return xi(e)}),!0),n("scrollbarStyle","native",(function(e){Ci(e),xi(e),e.display.scrollbars.setScrollTop(e.doc.scrollTop),e.display.scrollbars.setScrollLeft(e.doc.scrollLeft)}),!0),n("lineNumbers",!1,(function(e,t){e.display.gutterSpecs=Qi(e.options.gutters,t),to(e)}),!0),n("firstLineNumber",1,to,!0),n("lineNumberFormatter",(function(e){return e}),to,!0),n("showCursorWhenSelecting",!1,Vr,!0),n("resetSelectionOnContextMenu",!0),n("lineWiseCopyCut",!0),n("pasteLinesPerSelection",!0),n("selectionsMayTouch",!1),n("readOnly",!1,(function(e,t){"nocursor"==t&&(ni(e),e.display.input.blur()),e.display.input.readOnlyChanged(t)})),n("screenReaderLabel",null,(function(e,t){t=""===t?null:t,e.display.input.screenReaderLabelChanged(t)})),n("disableInput",!1,(function(e,t){t||e.display.input.reset()}),!0),n("dragDrop",!0,zs),n("allowDropFileTypes",null),n("cursorBlinkRate",530),n("cursorScrollMargin",0),n("cursorHeight",1,Vr,!0),n("singleCursorHeightPerLine",!0,Vr,!0),n("workTime",100),n("workDelay",100),n("flattenSpans",!0,bo,!0),n("addModeClass",!1,bo,!0),n("pollInterval",100),n("undoDepth",200,(function(e,t){return e.doc.history.undoDepth=t})),n("historyEventDelay",1250),n("viewportMargin",10,(function(e){return e.refresh()}),!0),n("maxHighlightLength",1e4,bo,!0),n("moveInputWithCursor",!0,(function(e,t){t||e.display.input.resetPosition()})),n("tabindex",null,(function(e,t){return e.display.input.getField().tabIndex=t||""})),n("autofocus",null),n("direction","ltr",(function(e,t){return e.doc.setDirection(t)}),!0),n("phrases",null)}function zs(e,t,n){var r=n&&n!=Ns;if(!t!=!r){var i=e.display.dragFunctions,o=t?be:_e;o(e.display.scroller,"dragstart",i.start),o(e.display.scroller,"dragenter",i.enter),o(e.display.scroller,"dragover",i.over),o(e.display.scroller,"dragleave",i.leave),o(e.display.scroller,"drop",i.drop)}}function Bs(e){e.options.lineWrapping?(R(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(A(e.display.wrapper,"CodeMirror-wrap"),hn(e)),Ir(e),Ur(e),mr(e),setTimeout((function(){return xi(e)}),100)}function Us(e,t){var n=this;if(!(this instanceof Us))return new Us(e,t);this.options=t=t?$(t):{},$(Ds,t,!1);var r=t.value;"string"==typeof r?r=new Aa(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var i=new Us.inputStyles[t.inputStyle](this),o=this.display=new no(e,r,i,t);for(var u in o.wrapper.CodeMirror=this,Rs(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),Ci(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 W,keySeq:null,specialChars:null},t.autofocus&&!y&&o.input.focus(),a&&s<11&&setTimeout((function(){return n.display.input.reset(!0)}),20),$s(this),Na(),Ai(this),this.curOp.forceUpdate=!0,ko(this,r),t.autofocus&&!y||this.hasFocus()?setTimeout((function(){n.hasFocus()&&!n.state.focused&&ti(n)}),20):ni(this),Fs)Fs.hasOwnProperty(u)&&Fs[u](this,t[u],Ns);Ji(this),t.finishInit&&t.finishInit(this);for(var c=0;c400}be(t.scroller,"touchstart",(function(i){if(!ke(e,i)&&!o(i)&&!Ms(e,i)){t.input.ensurePolled(),clearTimeout(n);var a=+new Date;t.activeTouch={start:a,moved:!1,prev:a-r.end<=300?r:null},1==i.touches.length&&(t.activeTouch.left=i.touches[0].pageX,t.activeTouch.top=i.touches[0].pageY)}})),be(t.scroller,"touchmove",(function(){t.activeTouch&&(t.activeTouch.moved=!0)})),be(t.scroller,"touchend",(function(n){var r=t.activeTouch;if(r&&!Gn(t,n)&&null!=r.left&&!r.moved&&new Date-r.start<300){var o,a=e.coordsChar(t.activeTouch,"page");o=!r.prev||l(r,r.prev)?new uo(a,a):!r.prev.prev||l(r,r.prev.prev)?e.findWordAt(a):new uo(ut(a.line,0),mt(e.doc,ut(a.line+1,0))),e.setSelection(o.anchor,o.head),e.focus(),Ae(n)}i()})),be(t.scroller,"touchcancel",i),be(t.scroller,"scroll",(function(){t.scroller.clientHeight&&(mi(e,t.scroller.scrollTop),yi(e,t.scroller.scrollLeft,!0),xe(e,"scroll",e))})),be(t.scroller,"mousewheel",(function(t){return so(e,t)})),be(t.scroller,"DOMMouseScroll",(function(t){return so(e,t)})),be(t.wrapper,"scroll",(function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0})),t.dragFunctions={enter:function(t){ke(e,t)||Te(t)},over:function(t){ke(e,t)||(Ma(e,t),Te(t))},start:function(t){return Ta(e,t)},drop:Di(e,La),leave:function(t){ke(e,t)||Pa(e)}};var u=t.input.getField();be(u,"keyup",(function(t){return gs.call(e,t)})),be(u,"keydown",Di(e,ds)),be(u,"keypress",Di(e,ms)),be(u,"focus",(function(t){return ti(e,t)})),be(u,"blur",(function(t){return ni(e,t)}))}Us.defaults=Ds,Us.optionHandlers=Fs;var Hs=[];function Ws(e,t,n,r){var i,o=e.doc;null==n&&(n="add"),"smart"==n&&(o.mode.indent?i=kt(e,t).state:n="prev");var a=e.options.tabSize,s=tt(o,t),l=H(s.text,null,a);s.stateAfter&&(s.stateAfter=null);var u,c=s.text.match(/^\s*/)[0];if(r||/\S/.test(s.text)){if("smart"==n&&(u=o.mode.indent(i,s.text.slice(c.length),s.text),u==V||u>150)){if(!r)return;n="prev"}}else u=0,n="not";"prev"==n?u=t>o.first?H(tt(o,t-1).text,null,a):0:"add"==n?u=l+e.options.indentUnit:"subtract"==n?u=l-e.options.indentUnit:"number"==typeof n&&(u=l+n),u=Math.max(0,u);var f="",h=0;if(e.options.indentWithTabs)for(var d=Math.floor(u/a);d;--d)h+=a,f+="\t";if(ha,l=Ie(t),u=null;if(s&&r.ranges.length>1)if(qs&&qs.text.join("\n")==t){if(r.ranges.length%qs.text.length==0){u=[];for(var c=0;c=0;h--){var d=r.ranges[h],p=d.from(),g=d.to();d.empty()&&(n&&n>0?p=ut(p.line,p.ch-n):e.state.overwrite&&!s?g=ut(g.line,Math.min(tt(o,g.line).text.length,g.ch+ee(l).length)):s&&qs&&qs.lineWise&&qs.text.join("\n")==l.join("\n")&&(p=g=ut(p.line,0)));var m={from:p,to:g,text:u?u[h%u.length]:l,origin:i||(s?"paste":e.state.cutIncoming>a?"cut":"+input")};na(e.doc,m),jn(e,"inputRead",e,m)}t&&!s&&Ys(e,t),fi(e),e.curOp.updateInput<2&&(e.curOp.updateInput=f),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function Gs(e,t){var n=e.clipboardData&&e.clipboardData.getData("Text");if(n)return e.preventDefault(),t.isReadOnly()||t.options.disableInput||!t.hasFocus()||Ni(t,(function(){return Vs(t,n,0,null,"paste")})),!0}function Ys(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 o=e.getModeAt(i.head),a=!1;if(o.electricChars){for(var s=0;s-1){a=Ws(e,i.head.line,"smart");break}}else o.electricInput&&o.electricInput.test(tt(e.doc,i.head.line).text.slice(0,i.head.ch))&&(a=Ws(e,i.head.line,"smart"));a&&jn(e,"electricInput",e,i.head.line)}}}function Ks(e){for(var t=[],n=[],r=0;rn&&(Ws(this,i.head.line,e,!0),n=i.head.line,r==this.doc.sel.primIndex&&fi(this));else{var o=i.from(),a=i.to(),s=Math.max(n,o.line);n=Math.min(this.lastLine(),a.line-(a.ch?0:1))+1;for(var l=s;l0&&$o(this.doc,r,new uo(o,u[r].to()),G)}}})),getTokenAt:function(e,t){return Ot(this,e,t)},getLineTokens:function(e,t){return Ot(this,ut(e),t,!0)},getTokenTypeAt:function(e){e=mt(this.doc,e);var t,n=xt(this,tt(this.doc,e.line)),r=0,i=(n.length-1)/2,o=e.ch;if(0==o)t=n[2];else for(;;){var a=r+i>>1;if((a?n[2*a-1]:0)>=o)i=a;else{if(!(n[2*a+1]o&&(e=o,i=!0),r=tt(this.doc,e)}else r=e;return wr(this,r,{top:0,left:0},t||"page",n||i).top+(i?this.doc.height-cn(r):0)},defaultTextHeight:function(){return jr(this.display)},defaultCharWidth:function(){return Rr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(e,t,n,r,i){var o=this.display;e=kr(this,mt(this.doc,e));var a=e.bottom,s=e.left;if(t.style.position="absolute",t.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(t),o.sizer.appendChild(t),"over"==r)a=e.top;else if("above"==r||"near"==r){var l=Math.max(o.wrapper.clientHeight,this.doc.height),u=Math.max(o.sizer.clientWidth,o.lineSpace.clientWidth);("above"==r||e.bottom+t.offsetHeight>l)&&e.top>t.offsetHeight?a=e.top-t.offsetHeight:e.bottom+t.offsetHeight<=l&&(a=e.bottom),s+t.offsetWidth>u&&(s=u-t.offsetWidth)}t.style.top=a+"px",t.style.left=t.style.right="","right"==i?(s=o.sizer.clientWidth-t.offsetWidth,t.style.right="0px"):("left"==i?s=0:"middle"==i&&(s=(o.sizer.clientWidth-t.offsetWidth)/2),t.style.left=s+"px"),n&&li(this,{left:s,top:a,right:s+t.offsetWidth,bottom:a+t.offsetHeight})},triggerOnKeyDown:Fi(ds),triggerOnKeyPress:Fi(ms),triggerOnKeyUp:gs,triggerOnMouseDown:Fi(xs),execCommand:function(e){if(ts.hasOwnProperty(e))return ts[e].call(null,this)},triggerElectric:Fi((function(e){Ys(this,e)})),findPosH:function(e,t,n,r){var i=1;t<0&&(i=-1,t=-t);for(var o=mt(this.doc,e),a=0;a0&&s(n.charAt(r-1)))--r;while(i.5||this.options.lineWrapping)&&Ir(this),xe(this,"refresh",this)})),swapDoc:Fi((function(e){var t=this.doc;return t.cm=null,this.state.selectingText&&this.state.selectingText(),ko(this,e),mr(this),this.display.input.reset(),hi(this,e.scrollLeft,e.scrollTop),this.curOp.forceScroll=!0,jn(this,"swapDoc",this,t),t})),phrase:function(e){var t=this.options.phrases;return t&&Object.prototype.hasOwnProperty.call(t,e)?t[e]:e},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}},Ee(e),e.registerHelper=function(t,r,i){n.hasOwnProperty(t)||(n[t]=e[t]={_global:[]}),n[t][r]=i},e.registerGlobalHelper=function(t,r,i,o){e.registerHelper(t,r,o),n[t]._global.push({pred:i,val:o})}}function el(e,t,n,r,i){var o=t,a=n,s=tt(e,t.line),l=i&&"rtl"==e.direction?-n:n;function u(){var n=t.line+l;return!(n=e.first+e.size)&&(t=new ut(n,t.ch,t.sticky),s=tt(e,n))}function c(o){var a;if("codepoint"==r){var c=s.text.charCodeAt(t.ch+(n>0?0:-1));if(isNaN(c))a=null;else{var f=n>0?c>=55296&&c<56320:c>=56320&&c<57343;a=new ut(t.line,Math.max(0,Math.min(s.text.length,t.ch+n*(f?2:1))),-n)}}else a=i?es(e.cm,s,t,n):Ja(s,t,n);if(null==a){if(o||!u())return!1;t=Qa(i,e.cm,s,t.line,l)}else t=a;return!0}if("char"==r||"codepoint"==r)c();else if("column"==r)c(!0);else if("word"==r||"group"==r)for(var f=null,h="group"==r,d=e.cm&&e.cm.getHelper(t,"wordChars"),p=!0;;p=!1){if(n<0&&!c(!p))break;var g=s.text.charAt(t.ch)||"\n",m=se(g,d)?"w":h&&"\n"==g?"n":!h||/\s/.test(g)?null:"p";if(!h||p||m||(m="s"),f&&f!=m){n<0&&(n=1,c(),t.sticky="after");break}if(m&&(f=m),n>0&&!c(!p))break}var v=Jo(e,t,o,a,!0);return ft(o,v)&&(v.hitSide=!0),v}function tl(e,t,n,r){var i,o,a=e.doc,s=t.left;if("page"==r){var l=Math.min(e.display.wrapper.clientHeight,B(e).innerHeight||a(e).documentElement.clientHeight),u=Math.max(l-.5*jr(e.display),3);i=(n>0?t.bottom:t.top)+n*u}else"line"==r&&(i=n>0?t.bottom+3:t.top-3);for(;;){if(o=Er(e,s,i),!o.outside)break;if(n<0?i<=0:i>=a.height){o.hitSide=!0;break}i+=5*n}return o}var nl=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new W,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};function rl(e,t){var n=or(e,t.line);if(!n||n.hidden)return null;var r=tt(e.doc,t.line),i=nr(n,r,t.line),o=ve(r,e.doc.direction),a="left";if(o){var s=ge(o,t.ch);a=s%2?"right":"left"}var l=cr(i.map,t.ch,a);return l.offset="right"==l.collapse?l.end:l.start,l}function il(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function ol(e,t){return t&&(e.bad=!0),e}function al(e,t,n,r,i){var o="",a=!1,s=e.doc.lineSeparator(),l=!1;function u(e){return function(t){return t.id==e}}function c(){a&&(o+=s,l&&(o+=s),a=l=!1)}function f(e){e&&(c(),o+=e)}function h(t){if(1==t.nodeType){var n=t.getAttribute("cm-text");if(n)return void f(n);var o,d=t.getAttribute("cm-marker");if(d){var p=e.findMarks(ut(r,0),ut(i+1,0),u(+d));return void(p.length&&(o=p[0].find(0))&&f(nt(e.doc,o.from,o.to).join(s)))}if("false"==t.getAttribute("contenteditable"))return;var g=/^(pre|div|p|li|table|br)$/i.test(t.nodeName);if(!/^br$/i.test(t.nodeName)&&0==t.textContent.length)return;g&&c();for(var m=0;m=t.display.viewTo||o.line=t.display.viewFrom&&rl(t,i)||{node:l[0].measure.map[2],offset:0},c=o.liner.firstLine()&&(a=ut(a.line-1,tt(r.doc,a.line-1).length)),s.ch==tt(r.doc,s.line).text.length&&s.linei.viewTo-1)return!1;a.line==i.viewFrom||0==(e=Br(r,a.line))?(t=ot(i.view[0].line),n=i.view[0].node):(t=ot(i.view[e].line),n=i.view[e-1].node.nextSibling);var l,u,c=Br(r,s.line);if(c==i.view.length-1?(l=i.viewTo-1,u=i.lineDiv.lastChild):(l=ot(i.view[c+1].line)-1,u=i.view[c+1].node.previousSibling),!n)return!1;var f=r.doc.splitLines(al(r,n,u,t,l)),h=nt(r.doc,ut(t,0),ut(l,tt(r.doc,l).text.length));while(f.length>1&&h.length>1)if(ee(f)==ee(h))f.pop(),h.pop(),l--;else{if(f[0]!=h[0])break;f.shift(),h.shift(),t++}var d=0,p=0,g=f[0],m=h[0],v=Math.min(g.length,m.length);while(da.ch&&y.charCodeAt(y.length-p-1)==b.charCodeAt(b.length-p-1))d--,p++;f[f.length-1]=y.slice(0,y.length-p).replace(/^\u200b+/,""),f[0]=f[0].slice(d).replace(/\u200b+$/,"");var _=ut(t,d),x=ut(l,h.length?ee(h).length-p:0);return f.length>1||f[0]||ct(_,x)?(la(r.doc,f,_,x,"+input"),!0):void 0},nl.prototype.ensurePolled=function(){this.forceCompositionEnd()},nl.prototype.reset=function(){this.forceCompositionEnd()},nl.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},nl.prototype.readFromDOMSoon=function(){var e=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout((function(){if(e.readDOMTimeout=null,e.composing){if(!e.composing.done)return;e.composing=null}e.updateFromDOM()}),80))},nl.prototype.updateFromDOM=function(){var e=this;!this.cm.isReadOnly()&&this.pollContent()||Ni(this.cm,(function(){return Ur(e.cm)}))},nl.prototype.setUneditable=function(e){e.contentEditable="false"},nl.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||Di(this.cm,Vs)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},nl.prototype.readOnlyChanged=function(e){this.div.contentEditable=String("nocursor"!=e)},nl.prototype.onContextMenu=function(){},nl.prototype.resetPosition=function(){},nl.prototype.needsContentAttribute=!0;var ul=function(e){this.cm=e,this.prevInput="",this.pollingFast=!1,this.polling=new W,this.hasSelection=!1,this.composing=null,this.resetting=!1};function cl(e,t){if(t=t?$(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),null==t.autofocus){var n=j(z(e));t.autofocus=n==e||null!=e.getAttribute("autofocus")&&n==document.body}function r(){e.value=s.getValue()}var i;if(e.form&&(be(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var o=e.form;i=o.submit;try{var a=o.submit=function(){r(),o.submit=i,o.submit(),o.submit=a}}catch(l){}}t.finishInit=function(n){n.save=r,n.getTextArea=function(){return e},n.toTextArea=function(){n.toTextArea=isNaN,r(),e.parentNode.removeChild(n.getWrapperElement()),e.style.display="",e.form&&(_e(e.form,"submit",r),t.leaveSubmitMethodAlone||"function"!=typeof e.form.submit||(e.form.submit=i))}},e.style.display="none";var s=Us((function(t){return e.parentNode.insertBefore(t,e.nextSibling)}),t);return s}function fl(e){e.off=_e,e.on=be,e.wheelEventPixels=ao,e.Doc=Aa,e.splitLines=Ie,e.countColumn=H,e.findColumn=X,e.isWordChar=ae,e.Pass=V,e.signal=xe,e.Line=dn,e.changeEnd=ho,e.scrollbarModel=Si,e.Pos=ut,e.cmpPos=ct,e.modes=He,e.mimeModes=We,e.resolveMode=Ve,e.getMode=Ge,e.modeExtensions=Ye,e.extendMode=Ke,e.copyState=Xe,e.startState=Qe,e.innerMode=Je,e.commands=ts,e.keyMap=$a,e.keyName=Ga,e.isModifierKey=Za,e.lookupKey=qa,e.normalizeKeyMap=Wa,e.StringStream=et,e.SharedTextMarker=_a,e.TextMarker=ba,e.LineWidget=ga,e.e_preventDefault=Ae,e.e_stopPropagation=Oe,e.e_stop=Te,e.addClass=R,e.contains=P,e.rmClass=A,e.keyNames=Ia}ul.prototype.init=function(e){var t=this,n=this,r=this.cm;this.createField(e);var i=this.textarea;function o(e){if(!ke(r,e)){if(r.somethingSelected())Zs({lineWise:!1,text:r.getSelections()});else{if(!r.options.lineWiseCopyCut)return;var t=Ks(r);Zs({lineWise:!0,text:t.text}),"cut"==e.type?r.setSelections(t.ranges,null,G):(n.prevInput="",i.value=t.text.join("\n"),D(i))}"cut"==e.type&&(r.state.cutIncoming=+new Date)}}e.wrapper.insertBefore(this.wrapper,e.wrapper.firstChild),m&&(i.style.width="0px"),be(i,"input",(function(){a&&s>=9&&t.hasSelection&&(t.hasSelection=null),n.poll()})),be(i,"paste",(function(e){ke(r,e)||Gs(e,r)||(r.state.pasteIncoming=+new Date,n.fastPoll())})),be(i,"cut",o),be(i,"copy",o),be(e.scroller,"paste",(function(t){if(!Gn(e,t)&&!ke(r,t)){if(!i.dispatchEvent)return r.state.pasteIncoming=+new Date,void n.focus();var o=new Event("paste");o.clipboardData=t.clipboardData,i.dispatchEvent(o)}})),be(e.lineSpace,"selectstart",(function(t){Gn(e,t)||Ae(t)})),be(i,"compositionstart",(function(){var e=r.getCursor("from");n.composing&&n.composing.range.clear(),n.composing={start:e,range:r.markText(e,r.getCursor("to"),{className:"CodeMirror-composing"})}})),be(i,"compositionend",(function(){n.composing&&(n.poll(),n.composing.range.clear(),n.composing=null)}))},ul.prototype.createField=function(e){this.wrapper=Js(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;Xs(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},ul.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},ul.prototype.prepareSelection=function(){var e=this.cm,t=e.display,n=e.doc,r=Gr(e);if(e.options.moveInputWithCursor){var i=kr(e,n.sel.primary().head,"div"),o=t.wrapper.getBoundingClientRect(),a=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,i.top+a.top-o.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,i.left+a.left-o.left))}return r},ul.prototype.showSelection=function(e){var t=this.cm,n=t.display;L(n.cursorDiv,e.cursors),L(n.selectionDiv,e.selection),null!=e.teTop&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},ul.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&&D(this.textarea),a&&s>=9&&(this.hasSelection=n)}else e||(this.prevInput=this.textarea.value="",a&&s>=9&&(this.hasSelection=null));this.resetting=!1}},ul.prototype.getField=function(){return this.textarea},ul.prototype.supportsTouch=function(){return!1},ul.prototype.focus=function(){if("nocursor"!=this.cm.options.readOnly&&(!y||j(z(this.textarea))!=this.textarea))try{this.textarea.focus()}catch(e){}},ul.prototype.blur=function(){this.textarea.blur()},ul.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},ul.prototype.receivedFocus=function(){this.slowPoll()},ul.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,(function(){e.poll(),e.cm.state.focused&&e.slowPoll()}))},ul.prototype.fastPoll=function(){var e=!1,t=this;function n(){var r=t.poll();r||e?(t.pollingFast=!1,t.slowPoll()):(e=!0,t.polling.set(60,n))}t.pollingFast=!0,t.polling.set(20,n)},ul.prototype.poll=function(){var e=this,t=this.cm,n=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||ze(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(a&&s>=9&&this.hasSelection===i||b&&/[\uf700-\uf7ff]/.test(i))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var o=i.charCodeAt(0);if(8203!=o||r||(r="​"),8666==o)return this.reset(),this.cm.execCommand("undo")}var l=0,u=Math.min(r.length,i.length);while(l1e3||i.indexOf("\n")>-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},ul.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},ul.prototype.onKeyPress=function(){a&&s>=9&&(this.hasSelection=null),this.fastPoll()},ul.prototype.onContextMenu=function(e){var t=this,n=t.cm,r=n.display,i=t.textarea;t.contextMenuPending&&t.contextMenuPending();var o=zr(n,e),u=r.scroller.scrollTop;if(o&&!h){var c=n.options.resetSelectionOnContextMenu;c&&-1==n.doc.sel.contains(o)&&Di(n,Zo)(n.doc,fo(o),G);var f,d=i.style.cssText,p=t.wrapper.style.cssText,g=t.wrapper.offsetParent.getBoundingClientRect();if(t.wrapper.style.cssText="position: static",i.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(e.clientY-g.top-5)+"px; left: "+(e.clientX-g.left-5)+"px;\n z-index: 1000; background: "+(a?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);",l&&(f=i.ownerDocument.defaultView.scrollY),r.input.focus(),l&&i.ownerDocument.defaultView.scrollTo(null,f),r.input.reset(),n.somethingSelected()||(i.value=t.prevInput=" "),t.contextMenuPending=y,r.selForContextMenu=n.doc.sel,clearTimeout(r.detectingSelectAll),a&&s>=9&&v(),S){Te(e);var m=function(){_e(window,"mouseup",m),setTimeout(y,20)};be(window,"mouseup",m)}else setTimeout(y,50)}function v(){if(null!=i.selectionStart){var e=n.somethingSelected(),o="​"+(e?i.value:"");i.value="⇚",i.value=o,t.prevInput=e?"":"​",i.selectionStart=1,i.selectionEnd=o.length,r.selForContextMenu=n.doc.sel}}function y(){if(t.contextMenuPending==y&&(t.contextMenuPending=!1,t.wrapper.style.cssText=p,i.style.cssText=d,a&&s<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=u),null!=i.selectionStart)){(!a||a&&s<9)&&v();var e=0,o=function(){r.selForContextMenu==n.doc.sel&&0==i.selectionStart&&i.selectionEnd>0&&"​"==t.prevInput?Di(n,ea)(n):e++<10?r.detectingSelectAll=setTimeout(o,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(o,200)}}},ul.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled="nocursor"==e,this.textarea.readOnly=!!e},ul.prototype.setUneditable=function(){},ul.prototype.needsContentAttribute=!1,Is(Us),Qs(Us);var hl="iter insert remove copy getEditor constructor".split(" ");for(var dl in Aa.prototype)Aa.prototype.hasOwnProperty(dl)&&q(hl,dl)<0&&(Us.prototype[dl]=function(e){return function(){return e.apply(this.doc,arguments)}}(Aa.prototype[dl]));return Ee(Aa),Us.inputStyles={textarea:ul,contenteditable:nl},Us.defineMode=function(e){Us.defaults.mode||"null"==e||(Us.defaults.mode=e),qe.apply(this,arguments)},Us.defineMIME=Ze,Us.defineMode("null",(function(){return{token:function(e){return e.skipToEnd()}}})),Us.defineMIME("text/plain","null"),Us.defineExtension=function(e,t){Us.prototype[e]=t},Us.defineDocExtension=function(e,t){Aa.prototype[e]=t},Us.fromTextArea=cl,fl(Us),Us.version="5.65.17",Us}))},"56ef":function(e,t,n){"use strict";var r=n("d066"),i=n("e330"),o=n("241c"),a=n("7418"),s=n("825a"),l=i([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=o.f(s(e)),n=a.f;return n?l(t,n(e)):t}},"577e":function(e,t,n){"use strict";var r=n("f5df"),i=String;e.exports=function(e){if("Symbol"===r(e))throw new TypeError("Cannot convert a Symbol value to a string");return i(e)}},"57b9":function(e,t,n){"use strict";var r=n("c65b"),i=n("d066"),o=n("b622"),a=n("cb2d");e.exports=function(){var e=i("Symbol"),t=e&&e.prototype,n=t&&t.valueOf,s=o("toPrimitive");t&&!t[s]&&a(t,s,(function(e){return r(n,this)}),{arity:1})}},"585a":function(e,t,n){(function(t){var n="object"==typeof t&&t&&t.Object===Object&&t;e.exports=n}).call(this,n("c8ba"))},5899:function(e,t,n){"use strict";e.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},"58a8":function(e,t,n){"use strict";var r=n("e330"),i=n("1d80"),o=n("577e"),a=n("5899"),s=r("".replace),l=RegExp("^["+a+"]+"),u=RegExp("(^|[^"+a+"])["+a+"]+$"),c=function(e){return function(t){var n=o(i(t));return 1&e&&(n=s(n,l,"")),2&e&&(n=s(n,u,"$1")),n}};e.exports={start:c(1),end:c(2),trim:c(3)}},5926:function(e,t,n){"use strict";var r=n("b42e");e.exports=function(e){var t=+e;return t!==t||0===t?0:r(t)}},"59ed":function(e,t,n){"use strict";var r=n("1626"),i=n("0d51"),o=TypeError;e.exports=function(e){if(r(e))return e;throw new o(i(e)+" is not a function")}},"5a34":function(e,t,n){"use strict";var r=n("44e7"),i=TypeError;e.exports=function(e){if(r(e))throw new i("The method doesn't accept regular expressions");return e}},"5a47":function(e,t,n){"use strict";var r=n("23e7"),i=n("04f8"),o=n("d039"),a=n("7418"),s=n("7b0b"),l=!i||o((function(){a.f(1)}));r({target:"Object",stat:!0,forced:l},{getOwnPropertySymbols:function(e){var t=a.f;return t?t(s(e)):[]}})},"5c6c":function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"5e1a":function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=n("8707").Buffer,o=n(2);function a(e,t,n){e.copy(t,n)}e.exports=function(){function e(){r(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";var t=this.head,n=""+t.data;while(t=t.next)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return i.alloc(0);var t=i.allocUnsafe(e>>>0),n=this.head,r=0;while(n)a(n.data,t,r),r+=n.data.length,n=n.next;return t},e}(),o&&o.inspect&&o.inspect.custom&&(e.exports.prototype[o.inspect.custom]=function(){var e=o.inspect({length:this.length});return this.constructor.name+" "+e})},"5e77":function(e,t,n){"use strict";var r=n("83ab"),i=n("1a2d"),o=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=i(o,"name"),l=s&&"something"===function(){}.name,u=s&&(!r||r&&a(o,"name").configurable);e.exports={EXISTS:s,PROPER:l,CONFIGURABLE:u}},"5e7e":function(e,t,n){"use strict";var r,i,o,a,s=n("23e7"),l=n("c430"),u=n("605d"),c=n("da84"),f=n("c65b"),h=n("cb2d"),d=n("d2bb"),p=n("d44e"),g=n("2626"),m=n("59ed"),v=n("1626"),y=n("861d"),b=n("19aa"),w=n("4840"),_=n("2cf4").set,x=n("b575"),k=n("44de"),S=n("e667"),C=n("01b4"),E=n("69f3"),A=n("d256"),O=n("4738"),L=n("f069"),T="Promise",M=O.CONSTRUCTOR,P=O.REJECTION_EVENT,j=O.SUBCLASSING,R=E.getterFor(T),N=E.set,D=A&&A.prototype,F=A,I=D,z=c.TypeError,B=c.document,U=c.process,$=L.f,H=$,W=!!(B&&B.createEvent&&c.dispatchEvent),q="unhandledrejection",Z="rejectionhandled",V=0,G=1,Y=2,K=1,X=2,J=function(e){var t;return!(!y(e)||!v(t=e.then))&&t},Q=function(e,t){var n,r,i,o=t.value,a=t.state===G,s=a?e.ok:e.fail,l=e.resolve,u=e.reject,c=e.domain;try{s?(a||(t.rejection===X&&ie(t),t.rejection=K),!0===s?n=o:(c&&c.enter(),n=s(o),c&&(c.exit(),i=!0)),n===e.promise?u(new z("Promise-chain cycle")):(r=J(n))?f(r,n,l,u):l(n)):u(o)}catch(h){c&&!i&&c.exit(),u(h)}},ee=function(e,t){e.notified||(e.notified=!0,x((function(){var n,r=e.reactions;while(n=r.get())Q(n,e);e.notified=!1,t&&!e.rejection&&ne(e)})))},te=function(e,t,n){var r,i;W?(r=B.createEvent("Event"),r.promise=t,r.reason=n,r.initEvent(e,!1,!0),c.dispatchEvent(r)):r={promise:t,reason:n},!P&&(i=c["on"+e])?i(r):e===q&&k("Unhandled promise rejection",n)},ne=function(e){f(_,c,(function(){var t,n=e.facade,r=e.value,i=re(e);if(i&&(t=S((function(){u?U.emit("unhandledRejection",r,n):te(q,n,r)})),e.rejection=u||re(e)?X:K,t.error))throw t.value}))},re=function(e){return e.rejection!==K&&!e.parent},ie=function(e){f(_,c,(function(){var t=e.facade;u?U.emit("rejectionHandled",t):te(Z,t,e.value)}))},oe=function(e,t,n){return function(r){e(t,r,n)}},ae=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=Y,ee(e,!0))},se=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw new z("Promise can't be resolved itself");var r=J(t);r?x((function(){var n={done:!1};try{f(r,t,oe(se,n,e),oe(ae,n,e))}catch(i){ae(n,i,e)}})):(e.value=t,e.state=G,ee(e,!1))}catch(i){ae({done:!1},i,e)}}};if(M&&(F=function(e){b(this,I),m(e),f(r,this);var t=R(this);try{e(oe(se,t),oe(ae,t))}catch(n){ae(t,n)}},I=F.prototype,r=function(e){N(this,{type:T,done:!1,notified:!1,parent:!1,reactions:new C,rejection:!1,state:V,value:void 0})},r.prototype=h(I,"then",(function(e,t){var n=R(this),r=$(w(this,F));return n.parent=!0,r.ok=!v(e)||e,r.fail=v(t)&&t,r.domain=u?U.domain:void 0,n.state===V?n.reactions.add(r):x((function(){Q(r,n)})),r.promise})),i=function(){var e=new r,t=R(e);this.promise=e,this.resolve=oe(se,t),this.reject=oe(ae,t)},L.f=$=function(e){return e===F||e===o?new i(e):H(e)},!l&&v(A)&&D!==Object.prototype)){a=D.then,j||h(D,"then",(function(e,t){var n=this;return new F((function(e,t){f(a,n,e,t)})).then(e,t)}),{unsafe:!0});try{delete D.constructor}catch(le){}d&&d(D,I)}s({global:!0,constructor:!0,wrap:!0,forced:M},{Promise:F}),p(F,T,!1,!0),g(T)},"5eed":function(e,t,n){"use strict";var r=n("d256"),i=n("1c7e"),o=n("4738").CONSTRUCTOR;e.exports=o||!i((function(e){r.all(e).then(void 0,(function(){}))}))},"605d":function(e,t,n){"use strict";var r=n("da84"),i=n("c6b6");e.exports="process"===i(r.process)},6069:function(e,t,n){"use strict";var r=n("6c59"),i=n("605d");e.exports=!r&&!i&&"object"==typeof window&&"object"==typeof document},"60da":function(e,t,n){"use strict";var r=n("83ab"),i=n("e330"),o=n("c65b"),a=n("d039"),s=n("df75"),l=n("7418"),u=n("d1e7"),c=n("7b0b"),f=n("44ad"),h=Object.assign,d=Object.defineProperty,p=i([].concat);e.exports=!h||a((function(){if(r&&1!==h({b:1},h(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol("assign detection"),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!==h({},e)[n]||s(h({},t)).join("")!==i}))?function(e,t){var n=c(e),i=arguments.length,a=1,h=l.f,d=u.f;while(i>a){var g,m=f(arguments[a++]),v=h?p(s(m),h(m)):s(m),y=v.length,b=0;while(y>b)g=v[b++],r&&!o(d,m,g)||(n[g]=m[g])}return n}:h},6374:function(e,t,n){"use strict";var r=n("da84"),i=Object.defineProperty;e.exports=function(e,t){try{i(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},"64b0":function(e,t,n){"use strict";var r=n("71c9"),i=function(){return!!r};i.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=i},6547:function(e,t,n){"use strict";var r=n("e330"),i=n("5926"),o=n("577e"),a=n("1d80"),s=r("".charAt),l=r("".charCodeAt),u=r("".slice),c=function(e){return function(t,n){var r,c,f=o(a(t)),h=i(n),d=f.length;return h<0||h>=d?e?"":void 0:(r=l(f,h),r<55296||r>56319||h+1===d||(c=l(f,h+1))<56320||c>57343?e?s(f,h):r:e?u(f,h,h+2):c-56320+(r-55296<<10)+65536)}};e.exports={codeAt:c(!1),charAt:c(!0)}},"65f0":function(e,t,n){"use strict";var r=n("0b42");e.exports=function(e,t){return new(r(e))(0===t?0:t)}},"67d9":function(e,t,n){"use strict";e.exports=URIError},"67ee":function(e,t,n){"use strict";e.exports=SyntaxError},6853:function(e,t,n){"use strict";var r=n("be7f"),i=15,o=852,a=592,s=0,l=1,u=2,c=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],f=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],h=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],d=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,n,p,g,m,v,y){var b,w,_,x,k,S,C,E,A,O=y.bits,L=0,T=0,M=0,P=0,j=0,R=0,N=0,D=0,F=0,I=0,z=null,B=0,U=new r.Buf16(i+1),$=new r.Buf16(i+1),H=null,W=0;for(L=0;L<=i;L++)U[L]=0;for(T=0;T=1;P--)if(0!==U[P])break;if(j>P&&(j=P),0===P)return g[m++]=20971520,g[m++]=20971520,y.bits=1,0;for(M=1;M0&&(e===s||1!==P))return-1;for($[1]=0,L=1;Lo||e===u&&F>a)return 1;for(;;){C=L-N,v[T]S?(E=H[W+v[T]],A=z[B+v[T]]):(E=96,A=0),b=1<>N)+w]=C<<24|E<<16|A|0}while(0!==w);b=1<>=1;if(0!==b?(I&=b-1,I+=b):I=0,T++,0===--U[L]){if(L===P)break;L=t[n+v[T]]}if(L>j&&(I&x)!==_){0===N&&(N=j),k+=M,R=L-N,D=1<o||e===u&&F>a)return 1;_=I&x,g[_]=j<<24|R<<16|k-m|0}}return 0!==I&&(g[k+I]=L-N<<24|64<<16|0),y.bits=j,0}},"688e":function(e,t,n){"use strict";var r="Function.prototype.bind called on incompatible ",i=Object.prototype.toString,o=Math.max,a="[object Function]",s=function(e,t){for(var n=[],r=0;rt.UNZIP)throw new TypeError("Bad argument");this.dictionary=null,this.err=0,this.flush=0,this.init_done=!1,this.level=0,this.memLevel=0,this.mode=e,this.strategy=0,this.windowBits=0,this.write_in_progress=!1,this.pending_close=!1,this.gzip_id_bytes_read=0}h.prototype.close=function(){this.write_in_progress?this.pending_close=!0:(this.pending_close=!1,i(this.init_done,"close before init"),i(this.mode<=t.UNZIP),this.mode===t.DEFLATE||this.mode===t.GZIP||this.mode===t.DEFLATERAW?a.deflateEnd(this.strm):this.mode!==t.INFLATE&&this.mode!==t.GUNZIP&&this.mode!==t.INFLATERAW&&this.mode!==t.UNZIP||s.inflateEnd(this.strm),this.mode=t.NONE,this.dictionary=null)},h.prototype.write=function(e,t,n,r,i,o,a){return this._write(!0,e,t,n,r,i,o,a)},h.prototype.writeSync=function(e,t,n,r,i,o,a){return this._write(!1,e,t,n,r,i,o,a)},h.prototype._write=function(n,o,a,s,l,u,c,f){if(i.equal(arguments.length,8),i(this.init_done,"write before init"),i(this.mode!==t.NONE,"already finalized"),i.equal(!1,this.write_in_progress,"write already in progress"),i.equal(!1,this.pending_close,"close is pending"),this.write_in_progress=!0,i.equal(!1,void 0===o,"must provide flush value"),this.write_in_progress=!0,o!==t.Z_NO_FLUSH&&o!==t.Z_PARTIAL_FLUSH&&o!==t.Z_SYNC_FLUSH&&o!==t.Z_FULL_FLUSH&&o!==t.Z_FINISH&&o!==t.Z_BLOCK)throw new Error("Invalid flush value");if(null==a&&(a=e.alloc(0),l=0,s=0),this.strm.avail_in=l,this.strm.input=a,this.strm.next_in=s,this.strm.avail_out=f,this.strm.output=u,this.strm.next_out=c,this.flush=o,!n)return this._process(),this._checkError()?this._afterSync():void 0;var h=this;return r.nextTick((function(){h._process(),h._after()})),this},h.prototype._afterSync=function(){var e=this.strm.avail_out,t=this.strm.avail_in;return this.write_in_progress=!1,[t,e]},h.prototype._process=function(){var e=null;switch(this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=a.deflate(this.strm,this.flush);break;case t.UNZIP:switch(this.strm.avail_in>0&&(e=this.strm.next_in),this.gzip_id_bytes_read){case 0:if(null===e)break;if(this.strm.input[e]!==c){this.mode=t.INFLATE;break}if(this.gzip_id_bytes_read=1,e++,1===this.strm.avail_in)break;case 1:if(null===e)break;this.strm.input[e]===f?(this.gzip_id_bytes_read=2,this.mode=t.GUNZIP):this.mode=t.INFLATE;break;default:throw new Error("invalid number of gzip magic number bytes read")}case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:this.err=s.inflate(this.strm,this.flush),this.err===t.Z_NEED_DICT&&this.dictionary&&(this.err=s.inflateSetDictionary(this.strm,this.dictionary),this.err===t.Z_OK?this.err=s.inflate(this.strm,this.flush):this.err===t.Z_DATA_ERROR&&(this.err=t.Z_NEED_DICT));while(this.strm.avail_in>0&&this.mode===t.GUNZIP&&this.err===t.Z_STREAM_END&&0!==this.strm.next_in[0])this.reset(),this.err=s.inflate(this.strm,this.flush);break;default:throw new Error("Unknown mode "+this.mode)}},h.prototype._checkError=function(){switch(this.err){case t.Z_OK:case t.Z_BUF_ERROR:if(0!==this.strm.avail_out&&this.flush===t.Z_FINISH)return this._error("unexpected end of file"),!1;break;case t.Z_STREAM_END:break;case t.Z_NEED_DICT:return null==this.dictionary?this._error("Missing dictionary"):this._error("Bad dictionary"),!1;default:return this._error("Zlib error"),!1}return!0},h.prototype._after=function(){if(this._checkError()){var e=this.strm.avail_out,t=this.strm.avail_in;this.write_in_progress=!1,this.callback(t,e),this.pending_close&&this.close()}},h.prototype._error=function(e){this.strm.msg&&(e=this.strm.msg),this.onerror(e,this.err),this.write_in_progress=!1,this.pending_close&&this.close()},h.prototype.init=function(e,n,r,o,a){i(4===arguments.length||5===arguments.length,"init(windowBits, level, memLevel, strategy, [dictionary])"),i(e>=8&&e<=15,"invalid windowBits"),i(n>=-1&&n<=9,"invalid compression level"),i(r>=1&&r<=9,"invalid memlevel"),i(o===t.Z_FILTERED||o===t.Z_HUFFMAN_ONLY||o===t.Z_RLE||o===t.Z_FIXED||o===t.Z_DEFAULT_STRATEGY,"invalid strategy"),this._init(n,e,r,o,a),this._setDictionary()},h.prototype.params=function(){throw new Error("deflateParams Not supported")},h.prototype.reset=function(){this._reset(),this._setDictionary()},h.prototype._init=function(e,n,r,i,l){switch(this.level=e,this.windowBits=n,this.memLevel=r,this.strategy=i,this.flush=t.Z_NO_FLUSH,this.err=t.Z_OK,this.mode!==t.GZIP&&this.mode!==t.GUNZIP||(this.windowBits+=16),this.mode===t.UNZIP&&(this.windowBits+=32),this.mode!==t.DEFLATERAW&&this.mode!==t.INFLATERAW||(this.windowBits=-1*this.windowBits),this.strm=new o,this.mode){case t.DEFLATE:case t.GZIP:case t.DEFLATERAW:this.err=a.deflateInit2(this.strm,this.level,t.Z_DEFLATED,this.windowBits,this.memLevel,this.strategy);break;case t.INFLATE:case t.GUNZIP:case t.INFLATERAW:case t.UNZIP:this.err=s.inflateInit2(this.strm,this.windowBits);break;default:throw new Error("Unknown mode "+this.mode)}this.err!==t.Z_OK&&this._error("Init error"),this.dictionary=l,this.write_in_progress=!1,this.init_done=!0},h.prototype._setDictionary=function(){if(null!=this.dictionary){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:this.err=a.deflateSetDictionary(this.strm,this.dictionary);break;default:break}this.err!==t.Z_OK&&this._error("Failed to set dictionary")}},h.prototype._reset=function(){switch(this.err=t.Z_OK,this.mode){case t.DEFLATE:case t.DEFLATERAW:case t.GZIP:this.err=a.deflateReset(this.strm);break;case t.INFLATE:case t.INFLATERAW:case t.GUNZIP:this.err=s.inflateReset(this.strm);break;default:break}this.err!==t.Z_OK&&this._error("Failed to reset stream")},t.Zlib=h}).call(this,n("b639").Buffer,n("4362"))},"6c59":function(e,t,n){"use strict";e.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},"6f19":function(e,t,n){"use strict";var r=n("9112"),i=n("0d26"),o=n("b980"),a=Error.captureStackTrace;e.exports=function(e,t,n,s){o&&(a?a(e,t):r(e,"stack",i(n,s)))}},7149:function(e,t,n){"use strict";var r=n("23e7"),i=n("d066"),o=n("c430"),a=n("d256"),s=n("4738").CONSTRUCTOR,l=n("cdf9"),u=i("Promise"),c=o&&!s;r({target:"Promise",stat:!0,forced:o||s},{resolve:function(e){return l(c&&this===u?a:this,e)}})},7156:function(e,t,n){"use strict";var r=n("1626"),i=n("861d"),o=n("d2bb");e.exports=function(e,t,n){var a,s;return o&&r(a=t.constructor)&&a!==n&&i(s=a.prototype)&&s!==n.prototype&&o(e,s),e}},"71c9":function(e,t,n){"use strict";var r=n("00ce"),i=r("%Object.defineProperty%",!0)||!1;if(i)try{i({},"a",{value:1})}catch(o){i=!1}e.exports=i},7234:function(e,t,n){"use strict";e.exports=function(e){return null===e||void 0===e}},7282:function(e,t,n){"use strict";var r=n("e330"),i=n("59ed");e.exports=function(e,t,n){try{return r(i(Object.getOwnPropertyDescriptor(e,t)[n]))}catch(o){}}},7418:function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},"780f":function(e,t,n){"use strict";e.exports=o;var r=n("27bf"),i=Object.create(n("3a7c"));function o(e){if(!(this instanceof o))return new o(e);r.call(this,e)}i.inherits=n("3fb5"),i.inherits(o,r),o.prototype._transform=function(e,t,n){n(null,e)}},7839:function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"785a":function(e,t,n){"use strict";var r=n("cc12"),i=r("span").classList,o=i&&i.constructor&&i.constructor.prototype;e.exports=o===Object.prototype?void 0:o},7992:function(e,t,n){"use strict";var r=n("71c9"),i=n("67ee"),o=n("0d25"),a=n("2aa9");e.exports=function(e,t,n){if(!e||"object"!==typeof e&&"function"!==typeof e)throw new o("`obj` must be an object or a function`");if("string"!==typeof t&&"symbol"!==typeof t)throw new o("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new o("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,u=arguments.length>5?arguments[5]:null,c=arguments.length>6&&arguments[6],f=!!a&&a(e,t);if(r)r(e,t,{configurable:null===u&&f?f.configurable:!u,enumerable:null===s&&f?f.enumerable:!s,value:n,writable:null===l&&f?f.writable:!l});else{if(!c&&(s||l||u))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=n}}},"7a77":function(e,t,n){"use strict";function r(e){this.message=e}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,e.exports=r},"7aac":function(e,t,n){"use strict";var r=n("c532");e.exports=r.isStandardBrowserEnv()?function(){return{write:function(e,t,n,i,o,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},"7b0b":function(e,t,n){"use strict";var r=n("1d80"),i=Object;e.exports=function(e){return i(r(e))}},"7c73":function(e,t,n){"use strict";var r,i=n("825a"),o=n("37e8"),a=n("7839"),s=n("d012"),l=n("1be4"),u=n("cc12"),c=n("f772"),f=">",h="<",d="prototype",p="script",g=c("IE_PROTO"),m=function(){},v=function(e){return h+p+f+e+h+"/"+p+f},y=function(e){e.write(v("")),e.close();var t=e.parentWindow.Object;return e=null,t},b=function(){var e,t=u("iframe"),n="java"+p+":";return t.style.display="none",l.appendChild(t),t.src=String(n),e=t.contentWindow.document,e.open(),e.write(v("document.F=Object")),e.close(),e.F},w=function(){try{r=new ActiveXObject("htmlfile")}catch(t){}w="undefined"!=typeof document?document.domain&&r?y(r):b():y(r);var e=a.length;while(e--)delete w[d][a[e]];return w()};s[g]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(m[d]=i(e),n=new m,m[d]=null,n[g]=e):n=w(),void 0===t?n:o.f(n,t)}},"7d72":function(e,t,n){"use strict";var r=n("8707").Buffer,i=r.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){if(!e)return"utf8";var t;while(1)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function a(e){var t=o(e);if("string"!==typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}function s(e){var t;switch(this.encoding=a(e),this.encoding){case"utf16le":this.text=p,this.end=g,t=4;break;case"utf8":this.fillLast=f,t=4;break;case"base64":this.text=m,this.end=v,t=3;break;default:return this.write=y,void(this.end=b)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function l(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function u(e,t,n){var r=t.length-1;if(r=0?(i>0&&(e.lastNeed=i-1),i):--r=0?(i>0&&(e.lastNeed=i-2),i):--r=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0))}function c(e,t,n){if(128!==(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"�"}}function f(e){var t=this.lastTotal-this.lastNeed,n=c(this,e,t);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function h(e,t){var n=u(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t}function p(e,t){if((e.length-t)%2===0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function g(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function m(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function v(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function y(e){return e.toString(this.encoding)}function b(e){return e&&e.length?this.write(e):""}t.StringDecoder=s,s.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(t=this.fillLast(e),void 0===t)return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n>>24,g>>>=x,m-=x,x=_>>>16&255,0===x)O[s++]=65535&_;else{if(!(16&x)){if(0===(64&x)){_=v[(65535&_)+(g&(1<>>=x,m-=x),m<15&&(g+=A[o++]<>>24,g>>>=x,m-=x,x=_>>>16&255,!(16&x)){if(0===(64&x)){_=y[(65535&_)+(g&(1<c){e.msg="invalid distance too far back",n.mode=r;break e}if(g>>>=x,m-=x,x=s-l,S>x){if(x=S-x,x>h&&n.sane){e.msg="invalid distance too far back",n.mode=r;break e}if(C=0,E=p,0===d){if(C+=f-x,x2)O[s++]=E[C++],O[s++]=E[C++],O[s++]=E[C++],k-=3;k&&(O[s++]=E[C++],k>1&&(O[s++]=E[C++]))}else{C=s-S;do{O[s++]=O[C++],O[s++]=O[C++],O[s++]=O[C++],k-=3}while(k>2);k&&(O[s++]=O[C++],k>1&&(O[s++]=O[C++]))}break}}break}}while(o>3,o-=k,m-=k<<3,g&=(1<"+l+""}},"861d":function(e,t,n){"use strict";var r=n("1626");e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},8707:function(e,t,n){var r=n("b639"),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=a),o(i,a),a.from=function(e,t,n){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!==typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"===typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},8822:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t="CodeMirror-lint-markers",n="CodeMirror-lint-line-";function r(t,n,r){var i=document.createElement("div");function o(t){if(!i.parentNode)return e.off(document,"mousemove",o);var n=Math.max(0,t.clientY-i.offsetHeight-5),r=Math.max(0,Math.min(t.clientX+5,i.ownerDocument.defaultView.innerWidth-i.offsetWidth));i.style.top=n+"px",i.style.left=r+"px"}return i.className="CodeMirror-lint-tooltip cm-s-"+t.options.theme,i.appendChild(r.cloneNode(!0)),t.state.lint.options.selfContain?t.getWrapperElement().appendChild(i):document.body.appendChild(i),e.on(document,"mousemove",o),o(n),null!=i.style.opacity&&(i.style.opacity=1),i}function i(e){e.parentNode&&e.parentNode.removeChild(e)}function o(e){e.parentNode&&(null==e.style.opacity&&i(e),e.style.opacity=0,setTimeout((function(){i(e)}),600))}function a(t,n,i,a){var s=r(t,n,i);function l(){e.off(a,"mouseout",l),s&&(o(s),s=null)}var u=setInterval((function(){if(s)for(var e=a;;e=e.parentNode){if(e&&11==e.nodeType&&(e=e.host),e==document.body)return;if(!e){l();break}}if(!s)return clearInterval(u)}),400);e.on(a,"mouseout",l)}function s(e,t,n){for(var r in this.marked=[],t instanceof Function&&(t={getAnnotations:t}),t&&!0!==t||(t={}),this.options={},this.linterOptions=t.options||{},l)this.options[r]=l[r];for(var r in t)l.hasOwnProperty(r)?null!=t[r]&&(this.options[r]=t[r]):t.options||(this.linterOptions[r]=t[r]);this.timeout=null,this.hasGutter=n,this.onMouseOver=function(t){w(e,t)},this.waitingFor=0}var l={highlightLines:!1,tooltips:!0,delay:500,lintOnChange:!0,getAnnotations:null,async:!1,selfContain:null,formatAnnotation:null,onUpdateLinting:null};function u(e){var n=e.state.lint;n.hasGutter&&e.clearGutter(t),n.options.highlightLines&&c(e);for(var r=0;r1,o.tooltips)),o.highlightLines&&e.addLineClass(s,"wrap",n+c)}}o.onUpdateLinting&&o.onUpdateLinting(r,a,e)}}function y(e){var t=e.state.lint;t&&(clearTimeout(t.timeout),t.timeout=setTimeout((function(){m(e)}),t.options.delay))}function b(e,t,n){for(var r=n.target||n.srcElement,i=document.createDocumentFragment(),o=0;o",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function i(e){return e&&e.bracketRegex||/[(){}[\]]/}function o(e,t,o){var s=e.getLineHandle(t.line),l=t.ch-1,u=o&&o.afterCursor;null==u&&(u=/(^| )cm-fat-cursor($| )/.test(e.getWrapperElement().className));var c=i(o),f=!u&&l>=0&&c.test(s.text.charAt(l))&&r[s.text.charAt(l)]||c.test(s.text.charAt(l+1))&&r[s.text.charAt(++l)];if(!f)return null;var h=">"==f.charAt(1)?1:-1;if(o&&o.strict&&h>0!=(l==t.ch))return null;var d=e.getTokenTypeAt(n(t.line,l+1)),p=a(e,n(t.line,l+(h>0?1:0)),h,d,o);return null==p?null:{from:n(t.line,l),to:p&&p.pos,match:p&&p.ch==f.charAt(0),forward:h>0}}function a(e,t,o,a,s){for(var l=s&&s.maxScanLineLength||1e4,u=s&&s.maxScanLines||1e3,c=[],f=i(s),h=o>0?Math.min(t.line+u,e.lastLine()+1):Math.max(e.firstLine()-1,t.line-u),d=t.line;d!=h;d+=o){var p=e.getLine(d);if(p){var g=o>0?0:p.length-1,m=o>0?p.length:-1;if(!(p.length>l))for(d==t.line&&(g=t.ch-(o<0?1:0));g!=m;g+=o){var v=p.charAt(g);if(f.test(v)&&(void 0===a||(e.getTokenTypeAt(n(d,g+1))||"")==(a||""))){var y=r[v];if(y&&">"==y.charAt(1)==o>0)c.push(v);else{if(!c.length)return{pos:n(d,g),ch:v};c.pop()}}}}}return d-o!=(o>0?e.lastLine():e.firstLine())&&null}function s(e,r,i){for(var a=e.state.matchBrackets.maxHighlightLineLength||1e3,s=i&&i.highlightNonMatching,l=[],u=e.listSelections(),c=0;c=0&&(t=e.slice(r),e=e.slice(0,r));var i=e.indexOf("?");return i>=0&&(n=e.slice(i+1),e=e.slice(0,i)),{path:e,query:n,hash:t}}function L(e){return e.replace(/\/(?:\s*\/)+/g,"/")}var T=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)},M=K,P=F,j=I,R=U,N=Y,D=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function F(e,t){var n,r=[],i=0,o=0,a="",s=t&&t.delimiter||"/";while(null!=(n=D.exec(e))){var l=n[0],u=n[1],c=n.index;if(a+=e.slice(o,c),o=c+l.length,u)a+=u[1];else{var f=e[o],h=n[2],d=n[3],p=n[4],g=n[5],m=n[6],v=n[7];a&&(r.push(a),a="");var y=null!=h&&null!=f&&f!==h,b="+"===m||"*"===m,w="?"===m||"*"===m,_=n[2]||s,x=p||g;r.push({name:d||i++,prefix:h||"",delimiter:_,optional:w,repeat:b,partial:y,asterisk:!!v,pattern:x?H(x):v?".*":"[^"+$(_)+"]+?"})}}return o1||!S.length)return 0===S.length?e():e("span",{},S)}if("a"===this.tag)k.on=x,k.attrs={href:l,"aria-current":y};else{var C=ae(this.$slots.default);if(C){C.isStatic=!1;var E=C.data=r({},C.data);for(var A in E.on=E.on||{},E.on){var O=E.on[A];A in x&&(E.on[A]=Array.isArray(O)?O:[O])}for(var L in x)L in E.on?E.on[L].push(x[L]):E.on[L]=w;var T=C.data.attrs=r({},C.data.attrs);T.href=l,T["aria-current"]=y}else k.on=x}return e(this.tag,k,this.$slots.default)}};function oe(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&(void 0===e.button||0===e.button)){if(e.currentTarget&&e.currentTarget.getAttribute){var t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ae(e){if(e)for(var t,n=0;n-1&&(s.params[f]=n.params[f]);return s.path=J(u.path,s.params,'named route "'+l+'"'),h(u,s,a)}if(s.path){s.params={};for(var d=0;d-1}function Ze(e,t){return qe(e)&&e._isRouter&&(null==t||e.type===t)}function Ve(e,t,n){var r=function(i){i>=e.length?n():e[i]?t(e[i],(function(){r(i+1)})):r(i+1)};r(0)}function Ge(e){return function(t,n,r){var i=!1,o=0,a=null;Ye(e,(function(e,t,n,s){if("function"===typeof e&&void 0===e.cid){i=!0,o++;var l,u=Qe((function(t){Je(t)&&(t=t.default),e.resolved="function"===typeof t?t:ee.extend(t),n.components[s]=t,o--,o<=0&&r()})),c=Qe((function(e){var t="Failed to resolve async component "+s+": "+e;a||(a=qe(e)?e:new Error(t),r(a))}));try{l=e(u,c)}catch(h){c(h)}if(l)if("function"===typeof l.then)l.then(u,c);else{var f=l.component;f&&"function"===typeof f.then&&f.then(u,c)}}})),i||r()}}function Ye(e,t){return Ke(e.map((function(e){return Object.keys(e.components).map((function(n){return t(e.components[n],e.instances[n],e,n)}))})))}function Ke(e){return Array.prototype.concat.apply([],e)}var Xe="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Je(e){return e.__esModule||Xe&&"Module"===e[Symbol.toStringTag]}function Qe(e){var t=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!t)return t=!0,e.apply(this,n)}}var et=function(e,t){this.router=e,this.base=tt(t),this.current=m,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function tt(e){if(!e)if(le){var t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^https?:\/\/[^\/]+/,"")}else e="/";return"/"!==e.charAt(0)&&(e="/"+e),e.replace(/\/$/,"")}function nt(e,t){var n,r=Math.max(e.length,t.length);for(n=0;n0)){var t=this.router,n=t.options.scrollBehavior,r=Re&&n;r&&this.listeners.push(xe());var i=function(){var n=e.current,i=ft(e.base);e.current===m&&i===e._startLocation||e.transitionTo(i,(function(e){r&&ke(t,e,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},t.prototype.go=function(e){window.history.go(e)},t.prototype.push=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){Ne(L(r.base+e.fullPath)),ke(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){De(L(r.base+e.fullPath)),ke(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.ensureURL=function(e){if(ft(this.base)!==this.current.fullPath){var t=L(this.base+this.current.fullPath);e?Ne(t):De(t)}},t.prototype.getCurrentLocation=function(){return ft(this.base)},t}(et);function ft(e){var t=window.location.pathname,n=t.toLowerCase(),r=e.toLowerCase();return!e||n!==r&&0!==n.indexOf(L(r+"/"))||(t=t.slice(e.length)),(t||"/")+window.location.search+window.location.hash}var ht=function(e){function t(t,n,r){e.call(this,t,n),r&&dt(this.base)||pt()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.setupListeners=function(){var e=this;if(!(this.listeners.length>0)){var t=this.router,n=t.options.scrollBehavior,r=Re&&n;r&&this.listeners.push(xe());var i=function(){var t=e.current;pt()&&e.transitionTo(gt(),(function(n){r&&ke(e.router,n,t,!0),Re||yt(n.fullPath)}))},o=Re?"popstate":"hashchange";window.addEventListener(o,i),this.listeners.push((function(){window.removeEventListener(o,i)}))}},t.prototype.push=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){vt(e.fullPath),ke(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this,i=this,o=i.current;this.transitionTo(e,(function(e){yt(e.fullPath),ke(r.router,e,o,!1),t&&t(e)}),n)},t.prototype.go=function(e){window.history.go(e)},t.prototype.ensureURL=function(e){var t=this.current.fullPath;gt()!==t&&(e?vt(t):yt(t))},t.prototype.getCurrentLocation=function(){return gt()},t}(et);function dt(e){var t=ft(e);if(!/^\/#/.test(t))return window.location.replace(L(e+"/#"+t)),!0}function pt(){var e=gt();return"/"===e.charAt(0)||(yt("/"+e),!1)}function gt(){var e=window.location.href,t=e.indexOf("#");return t<0?"":(e=e.slice(t+1),e)}function mt(e){var t=window.location.href,n=t.indexOf("#"),r=n>=0?t.slice(0,n):t;return r+"#"+e}function vt(e){Re?Ne(mt(e)):window.location.hash=e}function yt(e){Re?De(mt(e)):window.location.replace(mt(e))}var bt=function(e){function t(t,n){e.call(this,t,n),this.stack=[],this.index=-1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.push=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index+1).concat(e),r.index++,t&&t(e)}),n)},t.prototype.replace=function(e,t,n){var r=this;this.transitionTo(e,(function(e){r.stack=r.stack.slice(0,r.index).concat(e),t&&t(e)}),n)},t.prototype.go=function(e){var t=this,n=this.index+e;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var e=t.current;t.index=n,t.updateRoute(r),t.router.afterHooks.forEach((function(t){t&&t(r,e)}))}),(function(e){Ze(e,Fe.duplicated)&&(t.index=n)}))}},t.prototype.getCurrentLocation=function(){var e=this.stack[this.stack.length-1];return e?e.fullPath:"/"},t.prototype.ensureURL=function(){},t}(et),wt=function(e){void 0===e&&(e={}),this.app=null,this.apps=[],this.options=e,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=de(e.routes||[],this);var t=e.mode||"hash";switch(this.fallback="history"===t&&!Re&&!1!==e.fallback,this.fallback&&(t="hash"),le||(t="abstract"),this.mode=t,t){case"history":this.history=new ct(this,e.base);break;case"hash":this.history=new ht(this,e.base,this.fallback);break;case"abstract":this.history=new bt(this,e.base);break;default:0}},_t={currentRoute:{configurable:!0}};wt.prototype.match=function(e,t,n){return this.matcher.match(e,t,n)},_t.currentRoute.get=function(){return this.history&&this.history.current},wt.prototype.init=function(e){var t=this;if(this.apps.push(e),e.$once("hook:destroyed",(function(){var n=t.apps.indexOf(e);n>-1&&t.apps.splice(n,1),t.app===e&&(t.app=t.apps[0]||null),t.app||t.history.teardown()})),!this.app){this.app=e;var n=this.history;if(n instanceof ct||n instanceof ht){var r=function(e){var r=n.current,i=t.options.scrollBehavior,o=Re&&i;o&&"fullPath"in e&&ke(t,e,r,!1)},i=function(e){n.setupListeners(),r(e)};n.transitionTo(n.getCurrentLocation(),i,i)}n.listen((function(e){t.apps.forEach((function(t){t._route=e}))}))}},wt.prototype.beforeEach=function(e){return kt(this.beforeHooks,e)},wt.prototype.beforeResolve=function(e){return kt(this.resolveHooks,e)},wt.prototype.afterEach=function(e){return kt(this.afterHooks,e)},wt.prototype.onReady=function(e,t){this.history.onReady(e,t)},wt.prototype.onError=function(e){this.history.onError(e)},wt.prototype.push=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!==typeof Promise)return new Promise((function(t,n){r.history.push(e,t,n)}));this.history.push(e,t,n)},wt.prototype.replace=function(e,t,n){var r=this;if(!t&&!n&&"undefined"!==typeof Promise)return new Promise((function(t,n){r.history.replace(e,t,n)}));this.history.replace(e,t,n)},wt.prototype.go=function(e){this.history.go(e)},wt.prototype.back=function(){this.go(-1)},wt.prototype.forward=function(){this.go(1)},wt.prototype.getMatchedComponents=function(e){var t=e?e.matched?e:this.resolve(e).route:this.currentRoute;return t?[].concat.apply([],t.matched.map((function(e){return Object.keys(e.components).map((function(t){return e.components[t]}))}))):[]},wt.prototype.resolve=function(e,t,n){t=t||this.history.current;var r=Q(e,t,n,this),i=this.match(r,t),o=i.redirectedFrom||i.fullPath,a=this.history.base,s=St(a,o,this.mode);return{location:r,route:i,href:s,normalizedTo:r,resolved:i}},wt.prototype.getRoutes=function(){return this.matcher.getRoutes()},wt.prototype.addRoute=function(e,t){this.matcher.addRoute(e,t),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},wt.prototype.addRoutes=function(e){this.matcher.addRoutes(e),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(wt.prototype,_t);var xt=wt;function kt(e,t){return e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function St(e,t,n){var r="hash"===n?"#"+t:t;return e?L(e+"/"+r):r}wt.install=se,wt.version="3.6.5",wt.isNavigationFailure=Ze,wt.NavigationFailureType=Fe,wt.START_LOCATION=m,le&&window.Vue&&window.Vue.use(wt)},"8d70":function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";function t(t,n){var r=t.getLine(n),i=r.search(/\S/);return-1==i||/\bcomment\b/.test(t.getTokenTypeAt(e.Pos(n,i+1)))?-1:e.countColumn(r,null,t.getOption("tabSize"))}e.registerHelper("fold","indent",(function(n,r){var i=t(n,r.line);if(!(i<0)){for(var o=null,a=r.line+1,s=n.lastLine();a<=s;++a){var l=t(n,a);if(-1==l);else{if(!(l>i))break;o=a}}return o?{from:e.Pos(r.line,n.getLine(r.line).length),to:e.Pos(o,n.getLine(o).length)}:void 0}}))}))},"8d74":function(e,t,n){var r=n("4cef"),i=/^\s+/;function o(e){return e?e.slice(0,r(e)+1).replace(i,""):e}e.exports=o},"8df4":function(e,t,n){"use strict";var r=n("7a77");function i(e){if("function"!==typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;e((function(e){n.reason||(n.reason=new r(e),t(n.reason))}))}i.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},i.source=function(){var e,t=new i((function(t){e=t}));return{token:t,cancel:e}},e.exports=i},"8f94":function(e,t,n){!function(t,r){e.exports=r(n("56b3"))}(0,(function(e){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="/",t(t.s=3)}([function(t,n){t.exports=e},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=function(e){return e&&e.__esModule?e:{default:e}}(r),o=window.CodeMirror||i.default;"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),r=1;r */ +t.read=function(e,t,n,r,i){var o,a,s=8*i-r-1,l=(1<>1,c=-7,f=n?i-1:0,h=n?-1:1,d=e[t+f];for(f+=h,o=d&(1<<-c)-1,d>>=-c,c+=s;c>0;o=256*o+e[t+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=r;c>0;a=256*a+e[t+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=u}return(d?-1:1)*a*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:o-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=c):(a=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-a))<1&&(a--,l*=2),t+=a+f>=1?h/l:h*Math.pow(2,1-f),t*l>=2&&(a++,l/=2),a+f>=c?(s=0,a=c):a+f>=1?(s=(t*l-1)*Math.pow(2,i),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;e[n+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;e[n+d]=255&a,d+=p,a/=256,u-=8);e[n+d-p]|=128*g}},9263:function(e,t,n){"use strict";var r=n("c65b"),i=n("e330"),o=n("577e"),a=n("ad6d"),s=n("9f7f"),l=n("5692"),u=n("7c73"),c=n("69f3").get,f=n("fce3"),h=n("107c"),d=l("native-string-replace",String.prototype.replace),p=RegExp.prototype.exec,g=p,m=i("".charAt),v=i("".indexOf),y=i("".replace),b=i("".slice),w=function(){var e=/a/,t=/b*/g;return r(p,e,"a"),r(p,t,"a"),0!==e.lastIndex||0!==t.lastIndex}(),_=s.BROKEN_CARET,x=void 0!==/()??/.exec("")[1],k=w||x||_||f||h;k&&(g=function(e){var t,n,i,s,l,f,h,k=this,S=c(k),C=o(e),E=S.raw;if(E)return E.lastIndex=k.lastIndex,t=r(g,E,C),k.lastIndex=E.lastIndex,t;var A=S.groups,O=_&&k.sticky,L=r(a,k),T=k.source,M=0,P=C;if(O&&(L=y(L,"y",""),-1===v(L,"g")&&(L+="g"),P=b(C,k.lastIndex),k.lastIndex>0&&(!k.multiline||k.multiline&&"\n"!==m(C,k.lastIndex-1))&&(T="(?: "+T+")",P=" "+P,M++),n=new RegExp("^(?:"+T+")",L)),x&&(n=new RegExp("^"+T+"$(?!\\s)",L)),w&&(i=k.lastIndex),s=r(p,O?n:k,P),O?s?(s.input=b(s.input,M),s[0]=b(s[0],M),s.index=k.lastIndex,k.lastIndex+=s[0].length):k.lastIndex=0:w&&s&&(k.lastIndex=k.global?s.index+s[0].length:i),x&&s&&s.length>1&&r(d,s[0],n,(function(){for(l=1;l` "'(~:]+/,p=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,g=/^\s*\[[^\]]+?\]:.*$/,m=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\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]/,v=" ";function y(e,t,n){return t.f=t.inline=n,n(e,t)}function b(e,t,n){return t.f=t.block=n,n(e,t)}function w(e){return!e||!/\S/.test(e.string)}function _(t){if(t.linkTitle=!1,t.linkHref=!1,t.linkText=!1,t.em=!1,t.strong=!1,t.strikethrough=!1,t.quote=0,t.indentedCode=!1,t.f==k){var n=i;if(!n){var o=e.innerMode(r,t.htmlState);n="xml"==o.mode.name&&null===o.state.tagStart&&!o.state.context&&o.state.tokenize.isInText}n&&(t.f=A,t.block=x,t.htmlState=null)}return t.trailingSpace=0,t.trailingSpaceNewLine=!1,t.prevLine=t.thisLine,t.thisLine={stream:null},null}function x(t,r){var i=t.column()===r.indentation,s=w(r.prevLine.stream),d=r.indentedCode,m=r.prevLine.hr,v=!1!==r.list,b=(r.listStack[r.listStack.length-1]||0)+3;r.indentedCode=!1;var _=r.indentation;if(null===r.indentationDiff&&(r.indentationDiff=r.indentation,v)){r.list=null;while(_=4&&(d||r.prevLine.fencedCodeEnd||r.prevLine.header||s))return t.skipToEnd(),r.indentedCode=!0,a.code;if(t.eatSpace())return null;if(i&&r.indentation<=b&&(E=t.match(f))&&E[1].length<=6)return r.quote=0,r.header=E[1].length,r.thisLine.header=!0,n.highlightFormatting&&(r.formatting="header"),r.f=r.inline,C(r);if(r.indentation<=b&&t.eat(">"))return r.quote=i?1:r.quote+1,n.highlightFormatting&&(r.formatting="quote"),t.eatSpace(),C(r);if(!k&&!r.setext&&i&&r.indentation<=b&&(E=t.match(u))){var A=E[1]?"ol":"ul";return r.indentation=_+t.current().length,r.list=!0,r.quote=0,r.listStack.push(r.indentation),r.em=!1,r.strong=!1,r.code=!1,r.strikethrough=!1,n.taskLists&&t.match(c,!1)&&(r.taskList=!0),r.f=r.inline,n.highlightFormatting&&(r.formatting=["list","list-"+A]),C(r)}return i&&r.indentation<=b&&(E=t.match(p,!0))?(r.quote=0,r.fencedEndRE=new RegExp(E[1]+"+ *$"),r.localMode=n.fencedCodeBlockHighlighting&&o(E[2]||n.fencedCodeBlockDefaultMode),r.localMode&&(r.localState=e.startState(r.localMode)),r.f=r.block=S,n.highlightFormatting&&(r.formatting="code-block"),r.code=-1,C(r)):r.setext||!(x&&v||r.quote||!1!==r.list||r.code||k||g.test(t.string))&&(E=t.lookAhead(1))&&(E=E.match(h))?(r.setext?(r.header=r.setext,r.setext=0,t.skipToEnd(),n.highlightFormatting&&(r.formatting="header")):(r.header="="==E[0].charAt(0)?1:2,r.setext=r.header),r.thisLine.header=!0,r.f=r.inline,C(r)):k?(t.skipToEnd(),r.hr=!0,r.thisLine.hr=!0,a.hr):"["===t.peek()?y(t,r,P):y(t,r,r.inline)}function k(t,n){var o=r.token(t,n.htmlState);if(!i){var a=e.innerMode(r,n.htmlState);("xml"==a.mode.name&&null===a.state.tagStart&&!a.state.context&&a.state.tokenize.isInText||n.md_inside&&t.current().indexOf(">")>-1)&&(n.f=A,n.block=x,n.htmlState=null)}return o}function S(e,t){var r,i=t.listStack[t.listStack.length-1]||0,o=t.indentation=e.quote?t.push(a.formatting+"-"+e.formatting[r]+"-"+e.quote):t.push("error"))}if(e.taskOpen)return t.push("meta"),t.length?t.join(" "):null;if(e.taskClosed)return t.push("property"),t.length?t.join(" "):null;if(e.linkHref?t.push(a.linkHref,"url"):(e.strong&&t.push(a.strong),e.em&&t.push(a.em),e.strikethrough&&t.push(a.strikethrough),e.emoji&&t.push(a.emoji),e.linkText&&t.push(a.linkText),e.code&&t.push(a.code),e.image&&t.push(a.image),e.imageAltText&&t.push(a.imageAltText,"link"),e.imageMarker&&t.push(a.imageMarker)),e.header&&t.push(a.header,a.header+"-"+e.header),e.quote&&(t.push(a.quote),!n.maxBlockquoteDepth||n.maxBlockquoteDepth>=e.quote?t.push(a.quote+"-"+e.quote):t.push(a.quote+"-"+n.maxBlockquoteDepth)),!1!==e.list){var i=(e.listStack.length-1)%3;i?1===i?t.push(a.list2):t.push(a.list3):t.push(a.list1)}return e.trailingSpaceNewLine?t.push("trailing-space-new-line"):e.trailingSpace&&t.push("trailing-space-"+(e.trailingSpace%2?"a":"b")),t.length?t.join(" "):null}function E(e,t){if(e.match(d,!0))return C(t)}function A(t,i){var o=i.text(t,i);if("undefined"!==typeof o)return o;if(i.list)return i.list=null,C(i);if(i.taskList){var s=" "===t.match(c,!0)[1];return s?i.taskOpen=!0:i.taskClosed=!0,n.highlightFormatting&&(i.formatting="task"),i.taskList=!1,C(i)}if(i.taskOpen=!1,i.taskClosed=!1,i.header&&t.match(/^#+$/,!0))return n.highlightFormatting&&(i.formatting="header"),C(i);var l=t.next();if(i.linkTitle){i.linkTitle=!1;var u=l;"("===l&&(u=")"),u=(u+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var f="^\\s*(?:[^"+u+"\\\\]+|\\\\\\\\|\\\\.)"+u;if(t.match(new RegExp(f),!0))return a.linkHref}if("`"===l){var h=i.formatting;n.highlightFormatting&&(i.formatting="code"),t.eatWhile("`");var d=t.current().length;if(0!=i.code||i.quote&&1!=d){if(d==i.code){var p=C(i);return i.code=0,p}return i.formatting=h,C(i)}return i.code=d,C(i)}if(i.code)return C(i);if("\\"===l&&(t.next(),n.highlightFormatting)){var g=C(i),v=a.formatting+"-escape";return g?g+" "+v:v}if("!"===l&&t.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return i.imageMarker=!0,i.image=!0,n.highlightFormatting&&(i.formatting="image"),C(i);if("["===l&&i.imageMarker&&t.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return i.imageMarker=!1,i.imageAltText=!0,n.highlightFormatting&&(i.formatting="image"),C(i);if("]"===l&&i.imageAltText){n.highlightFormatting&&(i.formatting="image");g=C(i);return i.imageAltText=!1,i.image=!1,i.inline=i.f=L,g}if("["===l&&!i.image)return i.linkText&&t.match(/^.*?\]/)||(i.linkText=!0,n.highlightFormatting&&(i.formatting="link")),C(i);if("]"===l&&i.linkText){n.highlightFormatting&&(i.formatting="link");g=C(i);return i.linkText=!1,i.inline=i.f=t.match(/\(.*?\)| ?\[.*?\]/,!1)?L:A,g}if("<"===l&&t.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){i.f=i.inline=O,n.highlightFormatting&&(i.formatting="link");g=C(i);return g?g+=" ":g="",g+a.linkInline}if("<"===l&&t.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){i.f=i.inline=O,n.highlightFormatting&&(i.formatting="link");g=C(i);return g?g+=" ":g="",g+a.linkEmail}if(n.xml&&"<"===l&&t.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var y=t.string.indexOf(">",t.pos);if(-1!=y){var w=t.string.substring(t.start,y);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(w)&&(i.md_inside=!0)}return t.backUp(1),i.htmlState=e.startState(r),b(t,i,k)}if(n.xml&&"<"===l&&t.match(/^\/\w*?>/))return i.md_inside=!1,"tag";if("*"===l||"_"===l){var _=1,x=1==t.pos?" ":t.string.charAt(t.pos-2);while(_<3&&t.eat(l))_++;var S=t.peek()||" ",E=!/\s/.test(S)&&(!m.test(S)||/\s/.test(x)||m.test(x)),T=!/\s/.test(x)&&(!m.test(x)||/\s/.test(S)||m.test(S)),M=null,P=null;if(_%2&&(i.em||!E||"*"!==l&&T&&!m.test(x)?i.em!=l||!T||"*"!==l&&E&&!m.test(S)||(M=!1):M=!0),_>1&&(i.strong||!E||"*"!==l&&T&&!m.test(x)?i.strong!=l||!T||"*"!==l&&E&&!m.test(S)||(P=!1):P=!0),null!=P||null!=M){n.highlightFormatting&&(i.formatting=null==M?"strong":null==P?"em":"strong em"),!0===M&&(i.em=l),!0===P&&(i.strong=l);p=C(i);return!1===M&&(i.em=!1),!1===P&&(i.strong=!1),p}}else if(" "===l&&(t.eat("*")||t.eat("_"))){if(" "===t.peek())return C(i);t.backUp(1)}if(n.strikethrough)if("~"===l&&t.eatWhile(l)){if(i.strikethrough){n.highlightFormatting&&(i.formatting="strikethrough");p=C(i);return i.strikethrough=!1,p}if(t.match(/^[^\s]/,!1))return i.strikethrough=!0,n.highlightFormatting&&(i.formatting="strikethrough"),C(i)}else if(" "===l&&t.match("~~",!0)){if(" "===t.peek())return C(i);t.backUp(2)}if(n.emoji&&":"===l&&t.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){i.emoji=!0,n.highlightFormatting&&(i.formatting="emoji");var j=C(i);return i.emoji=!1,j}return" "===l&&(t.match(/^ +$/,!1)?i.trailingSpace++:i.trailingSpace&&(i.trailingSpaceNewLine=!0)),C(i)}function O(e,t){var r=e.next();if(">"===r){t.f=t.inline=A,n.highlightFormatting&&(t.formatting="link");var i=C(t);return i?i+=" ":i="",i+a.linkInline}return e.match(/^[^>]+/,!0),a.linkInline}function L(e,t){if(e.eatSpace())return null;var r=e.next();return"("===r||"["===r?(t.f=t.inline=M("("===r?")":"]"),n.highlightFormatting&&(t.formatting="link-string"),t.linkHref=!0,C(t)):"error"}var T={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function M(e){return function(t,r){var i=t.next();if(i===e){r.f=r.inline=A,n.highlightFormatting&&(r.formatting="link-string");var o=C(r);return r.linkHref=!1,o}return t.match(T[e]),r.linkHref=!0,C(r)}}function P(e,t){return e.match(/^([^\]\\]|\\.)*\]:/,!1)?(t.f=j,e.next(),n.highlightFormatting&&(t.formatting="link"),t.linkText=!0,C(t)):y(e,t,A)}function j(e,t){if(e.match("]:",!0)){t.f=t.inline=R,n.highlightFormatting&&(t.formatting="link");var r=C(t);return t.linkText=!1,r}return e.match(/^([^\]\\]|\\.)+/,!0),a.linkText}function R(e,t){return e.eatSpace()?null:(e.match(/^[^\s]+/,!0),void 0===e.peek()?t.linkTitle=!0:e.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),t.f=t.inline=A,a.linkHref+" url")}var N={startState:function(){return{f:x,prevLine:{stream:null},thisLine:{stream:null},block:x,htmlState:null,indentation:0,inline:A,text:E,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(t){return{f:t.f,prevLine:t.prevLine,thisLine:t.thisLine,block:t.block,htmlState:t.htmlState&&e.copyState(r,t.htmlState),indentation:t.indentation,localMode:t.localMode,localState:t.localMode?e.copyState(t.localMode,t.localState):null,inline:t.inline,text:t.text,formatting:!1,linkText:t.linkText,linkTitle:t.linkTitle,linkHref:t.linkHref,code:t.code,em:t.em,strong:t.strong,strikethrough:t.strikethrough,emoji:t.emoji,header:t.header,setext:t.setext,hr:t.hr,taskList:t.taskList,list:t.list,listStack:t.listStack.slice(0),quote:t.quote,indentedCode:t.indentedCode,trailingSpace:t.trailingSpace,trailingSpaceNewLine:t.trailingSpaceNewLine,md_inside:t.md_inside,fencedEndRE:t.fencedEndRE}},token:function(e,t){if(t.formatting=!1,e!=t.thisLine.stream){if(t.header=0,t.hr=!1,e.match(/^\s*$/,!0))return _(t),null;if(t.prevLine=t.thisLine,t.thisLine={stream:e},t.taskList=!1,t.trailingSpace=0,t.trailingSpaceNewLine=!1,!t.localState&&(t.f=t.block,t.f!=k)){var n=e.match(/^\s*/,!0)[0].replace(/\t/g,v).length;if(t.indentation=n,t.indentationDiff=null,n>0)return null}}return t.f(e,t)},innerMode:function(e){return e.block==k?{state:e.htmlState,mode:r}:e.localState?{state:e.localState,mode:e.localMode}:{state:e,mode:N}},indent:function(t,n,i){return t.block==k&&r.indent?r.indent(t.htmlState,n,i):t.localState&&t.localMode.indent?t.localMode.indent(t.localState,n,i):e.Pass},blankLine:_,getType:C,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return N}),"xml"),e.defineMIME("text/markdown","markdown"),e.defineMIME("text/x-markdown","markdown")}))},"966d":function(e,t,n){"use strict";(function(t){function n(e,n,r,i){if("function"!==typeof e)throw new TypeError('"callback" argument must be a function');var o,a,s=arguments.length;switch(s){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,i)}));default:o=new Array(s-1),a=0;while(a=51||!i((function(){var e=[];return e[g]=!1,e.concat()[0]!==e})),v=function(e){if(!a(e))return!1;var t=e[g];return void 0!==t?!!t:o(e)},y=!m||!h("concat");r({target:"Array",proto:!0,arity:1,forced:y},{concat:function(e){var t,n,r,i,o,a=s(this),h=f(a,0),d=0;for(t=-1,r=arguments.length;t>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function oe(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function ae(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=x,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(ee),t.distcode=t.distdyn=new r.Buf32(te),t.sane=1,t.back=-1,p):v}function se(e){var t;return e&&e.state?(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,ae(e)):v}function le(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?v:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,se(e))):v}function ue(e,t){var n,r;return e?(r=new oe,e.state=r,r.window=null,n=le(e,t),n!==p&&(e.state=null),n):v}function ce(e){return ue(e,re)}var fe,he,de=!0;function pe(e){if(de){var t;fe=new r.Buf32(512),he=new r.Buf32(32),t=0;while(t<144)e.lens[t++]=8;while(t<256)e.lens[t++]=9;while(t<280)e.lens[t++]=7;while(t<288)e.lens[t++]=8;s(u,e.lens,0,288,fe,0,e.work,{bits:9}),t=0;while(t<32)e.lens[t++]=5;s(c,e.lens,0,32,he,0,e.work,{bits:5}),de=!1}e.lencode=fe,e.lenbits=9,e.distcode=he,e.distbits=5}function ge(e,t,n,i){var o,a=e.state;return null===a.window&&(a.wsize=1<=a.wsize?(r.arraySet(a.window,t,n-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(o=a.wsize-a.wnext,o>i&&(o=i),r.arraySet(a.window,t,n-i,o,a.wnext),i-=o,i?(r.arraySet(a.window,t,n-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=o,a.wnext===a.wsize&&(a.wnext=0),a.whave>>8&255,n.check=o(n.check,Ae,2,0),se=0,le=0,n.mode=k;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",n.mode=X;break}if((15&se)!==_){e.msg="unknown compression method",n.mode=X;break}if(se>>>=4,le-=4,xe=8+(15&se),0===n.wbits)n.wbits=xe;else if(xe>n.wbits){e.msg="invalid window size",n.mode=X;break}n.dmax=1<>8&1),512&n.flags&&(Ae[0]=255&se,Ae[1]=se>>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0,n.mode=S;case S:while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>8&255,Ae[2]=se>>>16&255,Ae[3]=se>>>24&255,n.check=o(n.check,Ae,4,0)),se=0,le=0,n.mode=C;case C:while(le<16){if(0===oe)break e;oe--,se+=ee[ne++]<>8),512&n.flags&&(Ae[0]=255&se,Ae[1]=se>>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0,n.mode=E;case E:if(1024&n.flags){while(le<16){if(0===oe)break e;oe--,se+=ee[ne++]<>>8&255,n.check=o(n.check,Ae,2,0)),se=0,le=0}else n.head&&(n.head.extra=null);n.mode=A;case A:if(1024&n.flags&&(fe=n.length,fe>oe&&(fe=oe),fe&&(n.head&&(xe=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,ee,ne,fe,xe)),512&n.flags&&(n.check=o(n.check,ee,fe,ne)),oe-=fe,ne+=fe,n.length-=fe),n.length))break e;n.length=0,n.mode=O;case O:if(2048&n.flags){if(0===oe)break e;fe=0;do{xe=ee[ne+fe++],n.head&&xe&&n.length<65536&&(n.head.name+=String.fromCharCode(xe))}while(xe&&fe>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=j;break;case M:while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>=7&le,le-=7&le,n.mode=G;break}while(le<3){if(0===oe)break e;oe--,se+=ee[ne++]<>>=1,le-=1,3&se){case 0:n.mode=N;break;case 1:if(pe(n),n.mode=U,t===d){se>>>=2,le-=2;break e}break;case 2:n.mode=I;break;case 3:e.msg="invalid block type",n.mode=X}se>>>=2,le-=2;break;case N:se>>>=7&le,le-=7≤while(le<32){if(0===oe)break e;oe--,se+=ee[ne++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=X;break}if(n.length=65535&se,se=0,le=0,n.mode=D,t===d)break e;case D:n.mode=F;case F:if(fe=n.length,fe){if(fe>oe&&(fe=oe),fe>ae&&(fe=ae),0===fe)break e;r.arraySet(te,ee,ne,fe,re),oe-=fe,ne+=fe,ae-=fe,re+=fe,n.length-=fe;break}n.mode=j;break;case I:while(le<14){if(0===oe)break e;oe--,se+=ee[ne++]<>>=5,le-=5,n.ndist=1+(31&se),se>>>=5,le-=5,n.ncode=4+(15&se),se>>>=4,le-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=X;break}n.have=0,n.mode=z;case z:while(n.have>>=3,le-=3}while(n.have<19)n.lens[Oe[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,Se={bits:n.lenbits},ke=s(l,n.lens,0,19,n.lencode,0,n.work,Se),n.lenbits=Se.bits,ke){e.msg="invalid code lengths set",n.mode=X;break}n.have=0,n.mode=B;case B:while(n.have>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=me,le-=me,n.lens[n.have++]=ye;else{if(16===ye){Ce=me+2;while(le>>=me,le-=me,0===n.have){e.msg="invalid bit length repeat",n.mode=X;break}xe=n.lens[n.have-1],fe=3+(3&se),se>>>=2,le-=2}else if(17===ye){Ce=me+3;while(le>>=me,le-=me,xe=0,fe=3+(7&se),se>>>=3,le-=3}else{Ce=me+7;while(le>>=me,le-=me,xe=0,fe=11+(127&se),se>>>=7,le-=7}if(n.have+fe>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=X;break}while(fe--)n.lens[n.have++]=xe}}if(n.mode===X)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=X;break}if(n.lenbits=9,Se={bits:n.lenbits},ke=s(u,n.lens,0,n.nlen,n.lencode,0,n.work,Se),n.lenbits=Se.bits,ke){e.msg="invalid literal/lengths set",n.mode=X;break}if(n.distbits=6,n.distcode=n.distdyn,Se={bits:n.distbits},ke=s(c,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,Se),n.distbits=Se.bits,ke){e.msg="invalid distances set",n.mode=X;break}if(n.mode=U,t===d)break e;case U:n.mode=$;case $:if(oe>=6&&ae>=258){e.next_out=re,e.avail_out=ae,e.next_in=ne,e.avail_in=oe,n.hold=se,n.bits=le,a(e,ce),re=e.next_out,te=e.output,ae=e.avail_out,ne=e.next_in,ee=e.input,oe=e.avail_in,se=n.hold,le=n.bits,n.mode===j&&(n.back=-1);break}for(n.back=0;;){if(Ee=n.lencode[se&(1<>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>be)],me=Ee>>>24,ve=Ee>>>16&255,ye=65535&Ee,be+me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=be,le-=be,n.back+=be}if(se>>>=me,le-=me,n.back+=me,n.length=ye,0===ve){n.mode=V;break}if(32&ve){n.back=-1,n.mode=j;break}if(64&ve){e.msg="invalid literal/length code",n.mode=X;break}n.extra=15&ve,n.mode=H;case H:if(n.extra){Ce=n.extra;while(le>>=n.extra,le-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=W;case W:for(;;){if(Ee=n.distcode[se&(1<>>24,ve=Ee>>>16&255,ye=65535&Ee,me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>be)],me=Ee>>>24,ve=Ee>>>16&255,ye=65535&Ee,be+me<=le)break;if(0===oe)break e;oe--,se+=ee[ne++]<>>=be,le-=be,n.back+=be}if(se>>>=me,le-=me,n.back+=me,64&ve){e.msg="invalid distance code",n.mode=X;break}n.offset=ye,n.extra=15&ve,n.mode=q;case q:if(n.extra){Ce=n.extra;while(le>>=n.extra,le-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=X;break}n.mode=Z;case Z:if(0===ae)break e;if(fe=ce-ae,n.offset>fe){if(fe=n.offset-fe,fe>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=X;break}fe>n.wnext?(fe-=n.wnext,he=n.wsize-fe):he=n.wnext-fe,fe>n.length&&(fe=n.length),de=n.window}else de=te,he=re-n.offset,fe=n.length;fe>ae&&(fe=ae),ae-=fe,n.length-=fe;do{te[re++]=de[he++]}while(--fe);0===n.length&&(n.mode=$);break;case V:if(0===ae)break e;te[re++]=n.length,ae--,n.mode=$;break;case G:if(n.wrap){while(le<32){if(0===oe)break e;oe--,se|=ee[ne++]<4?9:0)}function te(e){var t=e.length;while(--t>=0)e[t]=0}function ne(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function re(e,t){o._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ne(e.strm)}function ie(e,t){e.pending_buf[e.pending++]=t}function oe(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function ae(e,t,n,r){var o=e.avail_in;return o>r&&(o=r),0===o?0:(e.avail_in-=o,i.arraySet(t,e.input,e.next_in,o,n),1===e.state.wrap?e.adler=a(e.adler,t,o,n):2===e.state.wrap&&(e.adler=s(e.adler,t,o,n)),e.next_in+=o,e.total_in+=o,o)}function se(e,t){var n,r,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-z?e.strstart-(e.w_size-z):0,u=e.window,c=e.w_mask,f=e.prev,h=e.strstart+I,d=u[o+a-1],p=u[o+a];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(n=t,u[n+a]===p&&u[n+a-1]===d&&u[n]===u[o]&&u[++n]===u[o+1]){o+=2,n++;do{}while(u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&oa){if(e.match_start=t,a=r,r>=s)break;d=u[o+a-1],p=u[o+a]}}}while((t=f[t&c])>l&&0!==--i);return a<=e.lookahead?a:e.lookahead}function le(e){var t,n,r,o,a,s=e.w_size;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=s+(s-z)){i.arraySet(e.window,e.window,s,s,0),e.match_start-=s,e.strstart-=s,e.block_start-=s,n=e.hash_size,t=n;do{r=e.head[--t],e.head[t]=r>=s?r-s:0}while(--n);n=s,t=n;do{r=e.prev[--t],e.prev[t]=r>=s?r-s:0}while(--n);o+=s}if(0===e.strm.avail_in)break;if(n=ae(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=n,e.lookahead+e.insert>=F){a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(le(e),0===e.lookahead&&t===u)return G;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,re(e,!1),0===e.strm.avail_out))return G;if(e.strstart-e.block_start>=e.w_size-z&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):(e.strstart>e.block_start&&(re(e,!1),e.strm.avail_out),G)}function ce(e,t){for(var n,r;;){if(e.lookahead=F&&(e.ins_h=(e.ins_h<=F)if(r=o._tr_tally(e,e.strstart-e.match_start,e.match_length-F),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=F){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<=F&&(e.ins_h=(e.ins_h<4096)&&(e.match_length=F-1)),e.prev_length>=F&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-F,r=o._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-F),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<=F&&e.strstart>0&&(i=e.strstart-1,r=s[i],r===s[++i]&&r===s[++i]&&r===s[++i])){a=e.strstart+I;do{}while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=F?(n=o._tr_tally(e,1,e.match_length-F),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):e.last_lit&&(re(e,!1),0===e.strm.avail_out)?G:Y}function de(e,t){for(var n;;){if(0===e.lookahead&&(le(e),0===e.lookahead)){if(t===u)return G;break}if(e.match_length=0,n=o._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(re(e,!1),0===e.strm.avail_out))return G}return e.insert=0,t===h?(re(e,!0),0===e.strm.avail_out?K:X):e.last_lit&&(re(e,!1),0===e.strm.avail_out)?G:Y}function pe(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function ge(e){e.window_size=2*e.w_size,te(e.head),e.max_lazy_match=r[e.level].max_lazy,e.good_match=r[e.level].good_length,e.nice_match=r[e.level].nice_length,e.max_chain_length=r[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=F-1,e.match_available=0,e.ins_h=0}function me(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=E,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*N),this.dyn_dtree=new i.Buf16(2*(2*j+1)),this.bl_tree=new i.Buf16(2*(2*R+1)),te(this.dyn_ltree),te(this.dyn_dtree),te(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(D+1),this.heap=new i.Buf16(2*P+1),te(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*P+1),te(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ve(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=C,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?U:Z,e.adler=2===t.wrap?0:1,t.last_flush=u,o._tr_init(t),p):Q(e,m)}function ye(e){var t=ve(e);return t===p&&ge(e.state),t}function be(e,t){return e&&e.state?2!==e.state.wrap?m:(e.state.gzhead=t,p):m}function we(e,t,n,r,o,a){if(!e)return m;var s=1;if(t===b&&(t=6),r<0?(s=0,r=-r):r>15&&(s=2,r-=16),o<1||o>A||n!==E||r<8||r>15||t<0||t>9||a<0||a>k)return Q(e,m);8===r&&(r=9);var l=new me;return e.state=l,l.strm=e,l.wrap=s,l.gzhead=null,l.w_bits=r,l.w_size=1<d||t<0)return e?Q(e,m):m;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===V&&t!==h)return Q(e,0===e.avail_out?y:m);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===U)if(2===i.wrap)e.adler=0,ie(i,31),ie(i,139),ie(i,8),i.gzhead?(ie(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),ie(i,255&i.gzhead.time),ie(i,i.gzhead.time>>8&255),ie(i,i.gzhead.time>>16&255),ie(i,i.gzhead.time>>24&255),ie(i,9===i.level?2:i.strategy>=_||i.level<2?4:0),ie(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(ie(i,255&i.gzhead.extra.length),ie(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=$):(ie(i,0),ie(i,0),ie(i,0),ie(i,0),ie(i,0),ie(i,9===i.level?2:i.strategy>=_||i.level<2?4:0),ie(i,J),i.status=Z);else{var v=E+(i.w_bits-8<<4)<<8,b=-1;b=i.strategy>=_||i.level<2?0:i.level<6?1:6===i.level?2:3,v|=b<<6,0!==i.strstart&&(v|=B),v+=31-v%31,i.status=Z,oe(i,v),0!==i.strstart&&(oe(i,e.adler>>>16),oe(i,65535&e.adler)),e.adler=1}if(i.status===$)if(i.gzhead.extra){a=i.pending;while(i.gzindex<(65535&i.gzhead.extra.length)){if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size))break;ie(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++}i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=H)}else i.status=H;if(i.status===H)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.gzindex=0,i.status=W)}else i.status=W;if(i.status===W)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),ne(e),a=i.pending,i.pending===i.pending_buf_size)){l=1;break}l=i.gzindexa&&(e.adler=s(e.adler,i.pending_buf,i.pending-a,a)),0===l&&(i.status=q)}else i.status=q;if(i.status===q&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&ne(e),i.pending+2<=i.pending_buf_size&&(ie(i,255&e.adler),ie(i,e.adler>>8&255),e.adler=0,i.status=Z)):i.status=Z),0!==i.pending){if(ne(e),0===e.avail_out)return i.last_flush=-1,p}else if(0===e.avail_in&&ee(t)<=ee(n)&&t!==h)return Q(e,y);if(i.status===V&&0!==e.avail_in)return Q(e,y);if(0!==e.avail_in||0!==i.lookahead||t!==u&&i.status!==V){var w=i.strategy===_?de(i,t):i.strategy===x?he(i,t):r[i.level].func(i,t);if(w!==K&&w!==X||(i.status=V),w===G||w===K)return 0===e.avail_out&&(i.last_flush=-1),p;if(w===Y&&(t===c?o._tr_align(i):t!==d&&(o._tr_stored_block(i,0,0,!1),t===f&&(te(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),ne(e),0===e.avail_out))return i.last_flush=-1,p}return t!==h?p:i.wrap<=0?g:(2===i.wrap?(ie(i,255&e.adler),ie(i,e.adler>>8&255),ie(i,e.adler>>16&255),ie(i,e.adler>>24&255),ie(i,255&e.total_in),ie(i,e.total_in>>8&255),ie(i,e.total_in>>16&255),ie(i,e.total_in>>24&255)):(oe(i,e.adler>>>16),oe(i,65535&e.adler)),ne(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?p:g)}function ke(e){var t;return e&&e.state?(t=e.state.status,t!==U&&t!==$&&t!==H&&t!==W&&t!==q&&t!==Z&&t!==V?Q(e,m):(e.state=null,t===Z?Q(e,v):p)):m}function Se(e,t){var n,r,o,s,l,u,c,f,h=t.length;if(!e||!e.state)return m;if(n=e.state,s=n.wrap,2===s||1===s&&n.status!==U||n.lookahead)return m;1===s&&(e.adler=a(e.adler,t,h,0)),n.wrap=0,h>=n.w_size&&(0===s&&(te(n.head),n.strstart=0,n.block_start=0,n.insert=0),f=new i.Buf8(n.w_size),i.arraySet(f,t,h-n.w_size,n.w_size,0),t=f,h=n.w_size),l=e.avail_in,u=e.next_in,c=e.input,e.avail_in=h,e.next_in=0,e.input=t,le(n);while(n.lookahead>=F){r=n.strstart,o=n.lookahead-(F-1);do{n.ins_h=(n.ins_h<=e.max))return e.ch=0,e.text=e.cm.getLine(++e.line),!0}function u(e){if(!(e.line<=e.min))return e.text=e.cm.getLine(--e.line),e.ch=e.text.length,!0}function c(e){for(;;){var t=e.text.indexOf(">",e.ch);if(-1==t){if(l(e))continue;return}if(s(e,t+1)){var n=e.text.lastIndexOf("/",t),r=n>-1&&!/\S/.test(e.text.slice(n+1,t));return e.ch=t+1,r?"selfClose":"regular"}e.ch=t+1}}function f(e){for(;;){var t=e.ch?e.text.lastIndexOf("<",e.ch-1):-1;if(-1==t){if(u(e))continue;return}if(s(e,t+1)){o.lastIndex=t,e.ch=t;var n=o.exec(e.text);if(n&&n.index==t)return n}else e.ch=t}}function h(e){for(;;){o.lastIndex=e.ch;var t=o.exec(e.text);if(!t){if(l(e))continue;return}if(s(e,t.index+1))return e.ch=t.index+t[0].length,t;e.ch=t.index+1}}function d(e){for(;;){var t=e.ch?e.text.lastIndexOf(">",e.ch-1):-1;if(-1==t){if(u(e))continue;return}if(s(e,t+1)){var n=e.text.lastIndexOf("/",t),r=n>-1&&!/\S/.test(e.text.slice(n+1,t));return e.ch=t+1,r?"selfClose":"regular"}e.ch=t}}function p(e,n){for(var r=[];;){var i,o=h(e),a=e.line,s=e.ch-(o?o[0].length:0);if(!o||!(i=c(e)))return;if("selfClose"!=i)if(o[1]){for(var l=r.length-1;l>=0;--l)if(r[l]==o[2]){r.length=l;break}if(l<0&&(!n||n==o[2]))return{tag:o[2],from:t(a,s),to:t(e.line,e.ch)}}else r.push(o[2])}}function g(e,n){for(var r=[];;){var i=d(e);if(!i)return;if("selfClose"!=i){var o=e.line,a=e.ch,s=f(e);if(!s)return;if(s[1])r.push(s[2]);else{for(var l=r.length-1;l>=0;--l)if(r[l]==s[2]){r.length=l;break}if(l<0&&(!n||n==s[2]))return{tag:s[2],from:t(e.line,e.ch),to:t(o,a)}}}else f(e)}}e.registerHelper("fold","xml",(function(e,r){for(var i=new a(e,r.line,0);;){var o=h(i);if(!o||i.line!=r.line)return;var s=c(i);if(!s)return;if(!o[1]&&"selfClose"!=s){var l=t(i.line,i.ch),u=p(i,o[2]);return u&&n(u.from,l)>0?{from:l,to:u.from}:null}}})),e.findMatchingTag=function(e,r,i){var o=new a(e,r.line,r.ch,i);if(-1!=o.text.indexOf(">")||-1!=o.text.indexOf("<")){var s=c(o),l=s&&t(o.line,o.ch),u=s&&f(o);if(s&&u&&!(n(o,r)>0)){var h={from:t(o.line,o.ch),to:l,tag:u[2]};return"selfClose"==s?{open:h,close:null,at:"open"}:u[1]?{open:g(o,u[2]),close:h,at:"close"}:(o=new a(e,l.line,l.ch,i),{open:h,close:p(o,u[2]),at:"open"})}}},e.findEnclosingTag=function(e,t,n,r){for(var i=new a(e,t.line,t.ch,n);;){var o=g(i,r);if(!o)break;var s=new a(e,t.line,t.ch,n),l=p(s,o.tag);if(l)return{open:o,close:l}}},e.scanForClosingTag=function(e,t,n,r){var i=new a(e,t.line,t.ch,r?{from:0,to:r}:null);return p(i,n)}}))},a4b4:function(e,t,n){"use strict";var r=n("342f");e.exports=/web0s(?!.*chrome)/i.test(r)},a4d3:function(e,t,n){"use strict";n("d9f5"),n("b4f8"),n("c513"),n("e9c4"),n("5a47")},a640:function(e,t,n){"use strict";var r=n("d039");e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){return 1},1)}))}},a645:function(e,t,n){"use strict";e.exports=Error},a79d:function(e,t,n){"use strict";var r=n("23e7"),i=n("c430"),o=n("d256"),a=n("d039"),s=n("d066"),l=n("1626"),u=n("4840"),c=n("cdf9"),f=n("cb2d"),h=o&&o.prototype,d=!!o&&a((function(){h["finally"].call({then:function(){}},(function(){}))}));if(r({target:"Promise",proto:!0,real:!0,forced:d},{finally:function(e){var t=u(this,s("Promise")),n=l(e);return this.then(n?function(n){return c(t,e()).then((function(){return n}))}:e,n?function(n){return c(t,e()).then((function(){throw n}))}:e)}}),!i&&l(o)){var p=s("Promise").prototype["finally"];h["finally"]!==p&&f(h,"finally",p,{unsafe:!0})}},a9e3:function(e,t,n){"use strict";var r=n("23e7"),i=n("c430"),o=n("83ab"),a=n("da84"),s=n("428f"),l=n("e330"),u=n("94ca"),c=n("1a2d"),f=n("7156"),h=n("3a9b"),d=n("d9b5"),p=n("c04e"),g=n("d039"),m=n("241c").f,v=n("06cf").f,y=n("9bf2").f,b=n("408a"),w=n("58a8").trim,_="Number",x=a[_],k=s[_],S=x.prototype,C=a.TypeError,E=l("".slice),A=l("".charCodeAt),O=function(e){var t=p(e,"number");return"bigint"==typeof t?t:L(t)},L=function(e){var t,n,r,i,o,a,s,l,u=p(e,"number");if(d(u))throw new C("Cannot convert a Symbol value to a number");if("string"==typeof u&&u.length>2)if(u=w(u),t=A(u,0),43===t||45===t){if(n=A(u,2),88===n||120===n)return NaN}else if(48===t){switch(A(u,1)){case 66:case 98:r=2,i=49;break;case 79:case 111:r=8,i=55;break;default:return+u}for(o=E(u,2),a=o.length,s=0;si)return NaN;return parseInt(o,r)}return+u},T=u(_,!x(" 0o1")||!x("0b1")||x("+0x1")),M=function(e){return h(S,e)&&g((function(){b(e)}))},P=function(e){var t=arguments.length<1?0:x(O(e));return M(this)?f(Object(t),this,P):t};P.prototype=S,T&&!i&&(S.constructor=P),r({global:!0,constructor:!0,wrap:!0,forced:T},{Number:P});var j=function(e,t){for(var n,r=o?m(t):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),i=0;r.length>i;i++)c(t,n=r[i])&&!c(e,n)&&y(e,n,v(t,n))};i&&k&&j(s[_],k),(T||i)&&j(s[_],x)},aa1f:function(e,t,n){"use strict";var r=n("83ab"),i=n("d039"),o=n("825a"),a=n("e391"),s=Error.prototype.toString,l=i((function(){if(r){var e=Object.create(Object.defineProperty({},"name",{get:function(){return this===e}}));if("true"!==s.call(e))return!0}return"2: 1"!==s.call({message:1,name:2})||"Error"!==s.call({})}));e.exports=l?function(){var e=o(this),t=a(e.name,"Error"),n=a(e.message);return t?n?t+": "+n:t:n}:s},ab13:function(e,t,n){"use strict";var r=n("b622"),i=r("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[i]=!1,"/./"[e](t)}catch(r){}}return!1}},ab36:function(e,t,n){"use strict";var r=n("861d"),i=n("9112");e.exports=function(e,t){r(t)&&"cause"in t&&i(e,"cause",t.cause)}},ac1f:function(e,t,n){"use strict";var r=n("23e7"),i=n("9263");r({target:"RegExp",proto:!0,forced:/./.exec!==i},{exec:i})},ad6d:function(e,t,n){"use strict";var r=n("825a");e.exports=function(){var e=r(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t}},ad71:function(e,t,n){"use strict";(function(t,r){var i=n("966d");e.exports=x;var o,a=n("e3db");x.ReadableState=_;n("faa1").EventEmitter;var s=function(e,t){return e.listeners(t).length},l=n("429b"),u=n("8707").Buffer,c=("undefined"!==typeof t?t:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};function f(e){return u.from(e)}function h(e){return u.isBuffer(e)||e instanceof c}var d=Object.create(n("3a7c"));d.inherits=n("3fb5");var p=n(1),g=void 0;g=p&&p.debuglog?p.debuglog("stream"):function(){};var m,v=n("5e1a"),y=n("4681");d.inherits(x,l);var b=["error","close","destroy","pause","resume"];function w(e,t,n){if("function"===typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}function _(e,t){o=o||n("b19a"),e=e||{};var r=t instanceof o;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,a=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(a||0===a)?a:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new v,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(m||(m=n("7d72").StringDecoder),this.decoder=new m(e.encoding),this.encoding=e.encoding)}function x(e){if(o=o||n("b19a"),!(this instanceof x))return new x(e);this._readableState=new _(e,this),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),l.call(this)}function k(e,t,n,r,i){var o,a=e._readableState;null===t?(a.reading=!1,T(e,a)):(i||(o=C(a,t)),o?e.emit("error",o):a.objectMode||t&&t.length>0?("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=f(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):S(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?S(e,a,t,!1):j(e,a)):S(e,a,t,!1))):r||(a.reading=!1));return E(a)}function S(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&M(e)),j(e,t)}function C(e,t){var n;return h(t)||"string"===typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}function E(e){return!e.ended&&(e.needReadable||e.length=A?e=A:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function L(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=O(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function T(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,M(e)}}function M(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(g("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(P,e):P(e))}function P(e){g("emit readable"),e.emit("readable"),z(e)}function j(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(R,e,t))}function R(e,t){var n=t.length;while(!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=U(e,t.buffer,t.decoder),n);var n}function U(e,t,n){var r;return eo.length?o.length:e;if(a===o.length?i+=o:i+=o.slice(0,e),e-=a,0===e){a===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(a));break}++r}return t.length-=r,i}function H(e,t){var n=u.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;while(r=r.next){var o=r.data,a=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,a),e-=a,0===e){a===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}function W(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(q,t,e))}function q(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function Z(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return g("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?W(this):M(this),null;if(e=L(e,t),0===e&&t.ended)return 0===t.length&&W(this),null;var r,i=t.needReadable;return g("need readable",i),(0===t.length||t.length-e0?B(e,t):null,null===r?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&W(this)),null!==r&&this.emit("data",r),r},x.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},x.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e);break}o.pipesCount+=1,g("pipe count=%d opts=%j",o.pipesCount,t);var a=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr,l=a?c:_;function u(e,t){g("onunpipe"),e===n&&t&&!1===t.hasUnpiped&&(t.hasUnpiped=!0,d())}function c(){g("onend"),e.end()}o.endEmitted?i.nextTick(l):n.once("end",l),e.on("unpipe",u);var f=N(n);e.on("drain",f);var h=!1;function d(){g("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",f),e.removeListener("error",v),e.removeListener("unpipe",u),n.removeListener("end",c),n.removeListener("end",_),n.removeListener("data",m),h=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||f()}var p=!1;function m(t){g("ondata"),p=!1;var r=e.write(t);!1!==r||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==Z(o.pipes,e))&&!h&&(g("false write response, pause",o.awaitDrain),o.awaitDrain++,p=!0),n.pause())}function v(t){g("onerror",t),_(),e.removeListener("error",v),0===s(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),_()}function b(){g("onfinish"),e.removeListener("close",y),_()}function _(){g("unpipe"),n.unpipe(e)}return n.on("data",m),w(e,"error",v),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(g("pipe resume"),n.resume()),e},x.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;ot.lastLine())return null;var r=t.getTokenAt(e.Pos(n,1));if(/\S/.test(r.string)||(r=t.getTokenAt(e.Pos(n,r.end+1))),"keyword"!=r.type||"import"!=r.string)return null;for(var i=n,o=Math.min(t.lastLine(),n+10);i<=o;++i){var a=t.getLine(i),s=a.indexOf(";");if(-1!=s)return{startCh:r.end,end:e.Pos(i,s)}}}var i,o=n.line,a=r(o);if(!a||r(o-1)||(i=r(o-2))&&i.end.line==o-1)return null;for(var s=a.end;;){var l=r(s.line+1);if(null==l)break;s=l.end}return{from:t.clipPos(e.Pos(o,a.startCh+1)),to:s}})),e.registerHelper("fold","include",(function(t,n){function r(n){if(nt.lastLine())return null;var r=t.getTokenAt(e.Pos(n,1));return/\S/.test(r.string)||(r=t.getTokenAt(e.Pos(n,r.end+1))),"meta"==r.type&&"#include"==r.string.slice(0,8)?r.start+8:void 0}var i=n.line,o=r(i);if(null==o||null!=r(i-1))return null;for(var a=i;;){var s=r(a+1);if(null==s)break;++a}return{from:e.Pos(i,o+1),to:t.clipPos(e.Pos(a))}}))}))},af03:function(e,t,n){"use strict";var r=n("d039");e.exports=function(e){return r((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},b041:function(e,t,n){"use strict";var r=n("00ee"),i=n("f5df");e.exports=r?{}.toString:function(){return"[object "+i(this)+"]"}},b047:function(e,t,n){var r=n("1a8c"),i=n("408c"),o=n("b4b0"),a="Expected a function",s=Math.max,l=Math.min;function u(e,t,n){var u,c,f,h,d,p,g=0,m=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=u,r=c;return u=c=void 0,g=t,h=e.apply(r,n),h}function w(e){return g=e,d=setTimeout(k,t),m?b(e):h}function _(e){var n=e-p,r=e-g,i=t-n;return v?l(i,f-r):i}function x(e){var n=e-p,r=e-g;return void 0===p||n>=t||n<0||v&&r>=f}function k(){var e=i();if(x(e))return S(e);d=setTimeout(k,_(e))}function S(e){return d=void 0,y&&u?b(e):(u=c=void 0,h)}function C(){void 0!==d&&clearTimeout(d),g=0,u=p=c=d=void 0}function E(){return void 0===d?h:S(i())}function A(){var e=i(),n=x(e);if(u=arguments,c=this,p=e,n){if(void 0===d)return w(p);if(v)return clearTimeout(d),d=setTimeout(k,t),b(p)}return void 0===d&&(d=setTimeout(k,t)),h}return t=o(t)||0,r(n)&&(m=!!n.leading,v="maxWait"in n,f=v?s(o(n.maxWait)||0,t):f,y="trailing"in n?!!n.trailing:y),A.cancel=C,A.flush=E,A}e.exports=u},b0c0:function(e,t,n){"use strict";var r=n("83ab"),i=n("5e77").EXISTS,o=n("e330"),a=n("edd0"),s=Function.prototype,l=o(s.toString),u=/function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/,c=o(u.exec),f="name";r&&!i&&a(s,f,{configurable:!0,get:function(){try{return c(u,l(this))[1]}catch(e){return""}}})},b189:function(e,t,n){"use strict";var r;if(!Object.keys){var i=Object.prototype.hasOwnProperty,o=Object.prototype.toString,a=n("d4ab"),s=Object.prototype.propertyIsEnumerable,l=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],f=function(e){var t=e.constructor;return t&&t.prototype===e},h={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},d=function(){if("undefined"===typeof window)return!1;for(var e in window)try{if(!h["$"+e]&&i.call(window,e)&&null!==window[e]&&"object"===typeof window[e])try{f(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),p=function(e){if("undefined"===typeof window||!d)return f(e);try{return f(e)}catch(t){return!1}};r=function(e){var t=null!==e&&"object"===typeof e,n="[object Function]"===o.call(e),r=a(e),s=t&&"[object String]"===o.call(e),f=[];if(!t&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var h=u&&n;if(s&&e.length>0&&!i.call(e,0))for(var d=0;d0)for(var g=0;g0?i:r)(t)}},b4b0:function(e,t,n){var r=n("8d74"),i=n("1a8c"),o=n("ffd6"),a=NaN,s=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,u=/^0o[0-7]+$/i,c=parseInt;function f(e){if("number"==typeof e)return e;if(o(e))return a;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=l.test(e);return n||u.test(e)?c(e.slice(2),n?2:8):s.test(e)?a:+e}e.exports=f},b4f8:function(e,t,n){"use strict";var r=n("23e7"),i=n("d066"),o=n("1a2d"),a=n("577e"),s=n("5692"),l=n("0b43"),u=s("string-to-symbol-registry"),c=s("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!l},{for:function(e){var t=a(e);if(o(u,t))return u[t];var n=i("Symbol")(t);return u[t]=n,c[n]=t,n}})},b50d:function(e,t,n){"use strict";var r=n("c532"),i=n("467f"),o=n("7aac"),a=n("30b5"),s=n("83b9"),l=n("c345"),u=n("3934"),c=n("2d83");e.exports=function(e){return new Promise((function(t,n){var f=e.data,h=e.headers;r.isFormData(f)&&delete h["Content-Type"],(r.isBlob(f)||r.isFile(f))&&f.type&&delete h["Content-Type"];var d=new XMLHttpRequest;if(e.auth){var p=e.auth.username||"",g=unescape(encodeURIComponent(e.auth.password))||"";h.Authorization="Basic "+btoa(p+":"+g)}var m=s(e.baseURL,e.url);if(d.open(e.method.toUpperCase(),a(m,e.params,e.paramsSerializer),!0),d.timeout=e.timeout,d.onreadystatechange=function(){if(d&&4===d.readyState&&(0!==d.status||d.responseURL&&0===d.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in d?l(d.getAllResponseHeaders()):null,o=e.responseType&&"text"!==e.responseType?d.response:d.responseText,a={data:o,status:d.status,statusText:d.statusText,headers:r,config:e,request:d};i(t,n,a),d=null}},d.onabort=function(){d&&(n(c("Request aborted",e,"ECONNABORTED",d)),d=null)},d.onerror=function(){n(c("Network Error",e,null,d)),d=null},d.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(c(t,e,"ECONNABORTED",d)),d=null},r.isStandardBrowserEnv()){var v=(e.withCredentials||u(m))&&e.xsrfCookieName?o.read(e.xsrfCookieName):void 0;v&&(h[e.xsrfHeaderName]=v)}if("setRequestHeader"in d&&r.forEach(h,(function(e,t){"undefined"===typeof f&&"content-type"===t.toLowerCase()?delete h[t]:d.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),e.responseType)try{d.responseType=e.responseType}catch(y){if("json"!==e.responseType)throw y}"function"===typeof e.onDownloadProgress&&d.addEventListener("progress",e.onDownloadProgress),"function"===typeof e.onUploadProgress&&d.upload&&d.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){d&&(d.abort(),n(e),d=null)})),f||(f=null),d.send(f)}))}},b575:function(e,t,n){"use strict";var r,i,o,a,s,l=n("da84"),u=n("157a"),c=n("0366"),f=n("2cf4").set,h=n("01b4"),d=n("1cdc"),p=n("d4c3"),g=n("a4b4"),m=n("605d"),v=l.MutationObserver||l.WebKitMutationObserver,y=l.document,b=l.process,w=l.Promise,_=u("queueMicrotask");if(!_){var x=new h,k=function(){var e,t;m&&(e=b.domain)&&e.exit();while(t=x.get())try{t()}catch(n){throw x.head&&r(),n}e&&e.enter()};d||m||g||!v||!y?!p&&w&&w.resolve?(a=w.resolve(void 0),a.constructor=w,s=c(a.then,a),r=function(){s(k)}):m?r=function(){b.nextTick(k)}:(f=c(f,l),r=function(){f(k)}):(i=!0,o=y.createTextNode(""),new v(k).observe(o,{characterData:!0}),r=function(){o.data=i=!i}),_=function(e){x.head||r(),x.add(e)}}e.exports=_},b622:function(e,t,n){"use strict";var r=n("da84"),i=n("5692"),o=n("1a2d"),a=n("90e3"),s=n("04f8"),l=n("fdbf"),u=r.Symbol,c=i("wks"),f=l?u["for"]||u:u&&u.withoutSetter||a;e.exports=function(e){return o(c,e)||(c[e]=s&&o(u,e)?u[e]:f("Symbol."+e)),c[e]}},b639:function(e,t,n){"use strict";(function(e){ /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ -var r=n("1fb5"),i=n("9152"),o=n("e3db");function a(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"===typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(t){return!1}}function s(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function l(e,t){if(s()=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|e}function b(e){return+e!=e&&(e=0),u.alloc(+e)}function w(e,t){if(u.isBuffer(e))return e.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!==typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(e).length;default:if(r)return K(e).length;t=(""+t).toLowerCase(),r=!0}}function _(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,t>>>=0,n<=t)return"";e||(e="utf8");while(1)switch(e){case"hex":return z(this,t,n);case"utf8":case"utf-8":return j(this,t,n);case"ascii":return N(this,t,n);case"latin1":case"binary":return D(this,t,n);case"base64":return M(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function x(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function k(e,t,n,r,i){if(0===e.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:S(e,t,n,r,i);if("number"===typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):S(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function S(e,t,n,r,i){var o,a=1,s=e.length,l=t.length;if(void 0!==r&&(r=String(r).toLowerCase(),"ucs2"===r||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,l/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var c=-1;for(o=n;os&&(n=s-l),o=n;o>=0;o--){for(var f=!0,h=0;hi&&(r=i)):r=i;var o=t.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a239?4:u>223?3:u>191?2:1;if(i+f<=n)switch(f){case 1:u<128&&(c=u);break;case 2:o=e[i+1],128===(192&o)&&(l=(31&u)<<6|63&o,l>127&&(c=l));break;case 3:o=e[i+1],a=e[i+2],128===(192&o)&&128===(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a,l>2047&&(l<55296||l>57343)&&(c=l));break;case 4:o=e[i+1],a=e[i+2],s=e[i+3],128===(192&o)&&128===(192&a)&&128===(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s,l>65535&&l<1114112&&(c=l))}null===c?(c=65533,f=1):c>65535&&(c-=65536,r.push(c>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=f}return R(r)}t.Buffer=u,t.SlowBuffer=b,t.INSPECT_MAX_BYTES=50,u.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:a(),t.kMaxLength=s(),u.poolSize=8192,u._augment=function(e){return e.__proto__=u.prototype,e},u.from=function(e,t,n){return c(null,e,t,n)},u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&u[Symbol.species]===u&&Object.defineProperty(u,Symbol.species,{value:null,configurable:!0})),u.alloc=function(e,t,n){return h(null,e,t,n)},u.allocUnsafe=function(e){return d(null,e)},u.allocUnsafeSlow=function(e){return d(null,e)},u.isBuffer=function(e){return!(null==e||!e._isBuffer)},u.compare=function(e,t){if(!u.isBuffer(e)||!u.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);i0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var o=i-r,a=n-t,s=Math.min(o,a),l=this.slice(r,i),c=e.slice(t,n),f=0;fi)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return C(this,e,t,n);case"utf8":case"utf-8":return E(this,e,t,n);case"ascii":return A(this,e,t,n);case"latin1":case"binary":return L(this,e,t,n);case"base64":return O(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var P=4096;function R(e){var t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);var n="",r=0;while(rr)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,n,r,i,o){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function U(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function H(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function $(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function W(e,t,n,r,o){return o||$(e,t,n,4,34028234663852886e22,-34028234663852886e22),i.write(e,t,n,r,23,4),n+4}function q(e,t,n,r,o){return o||$(e,t,n,8,17976931348623157e292,-17976931348623157e292),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if(e=~~e,t=void 0===t?r:~~t,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),t0&&(i*=256))r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||I(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||I(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||I(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||I(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||I(e,t,this.length);var r=this[e],i=1,o=0;while(++o=i&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||I(e,t,this.length);var r=t,i=1,o=this[e+--r];while(r>0&&(i*=256))o+=this[e+--r]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},u.prototype.readInt8=function(e,t){return t||I(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||I(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||I(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||I(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||I(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||I(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||I(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t|=0,n|=0,!r){var i=Math.pow(2,8*n)-1;B(this,e,t,n,i,0)}var o=1,a=0;this[t]=255&e;while(++a=0&&(a*=256))this[t+o]=e/a&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):H(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):H(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);B(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;this[t]=255&e;while(++o>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);B(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;this[t+o]=255&e;while(--o>=0&&(a*=256))e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):H(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):H(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return W(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return W(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return q(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return q(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"===typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function X(e){for(var t=[],n=0;n>8,i=n%256,o.push(i),o.push(r)}return o}function Q(e){return r.toByteArray(V(e))}function ee(e,t,n,r){for(var i=0;i=t.length||i>=e.length)break;t[i+n]=e[i]}return i}function te(e){return e!==e}}).call(this,n("c8ba"))},b642:function(e,t,n){var r=n("b65a"),i=n("b68d"),o=n("f742"),a=Object.defineProperty,s={},l=function(e){throw e};e.exports=function(e,t){if(o(s,e))return s[e];t||(t={});var n=[][e],u=!!o(t,"ACCESSORS")&&t.ACCESSORS,c=o(t,0)?t[0]:l,f=o(t,1)?t[1]:void 0;return s[e]=!!n&&!i((function(){if(u&&!r)return!0;var e={length:-1};u?a(e,1,{enumerable:!0,get:l}):e[1]=1,n.call(e,c,f)}))}},b64b:function(e,t,n){var r=n("23e7"),i=n("7b0b"),o=n("df75"),a=n("d039"),s=a((function(){o(1)}));r({target:"Object",stat:!0,forced:s},{keys:function(e){return o(i(e))}})},b65a:function(e,t,n){var r=n("b68d");e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},b68d:function(e,t){e.exports=function(e){try{return!!e()}catch(t){return!0}}},b695:function(e,t,n){var r=n("77fd");e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},b727:function(e,t,n){var r=n("0366"),i=n("44ad"),o=n("7b0b"),a=n("50c4"),s=n("65f0"),l=[].push,u=function(e){var t=1==e,n=2==e,u=3==e,c=4==e,f=6==e,h=5==e||f;return function(d,p,g,m){for(var v,y,b=o(d),w=i(b),_=r(p,g,3),x=a(w.length),k=0,S=m||s,C=t?S(d,x):n?S(d,0):void 0;x>k;k++)if((h||k in w)&&(v=w[k],y=_(v,k,b),e))if(t)C[k]=y;else if(y)switch(e){case 3:return!0;case 5:return v;case 6:return k;case 2:l.call(C,v)}else if(c)return!1;return f?-1:u||c?c:C}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},b75b:function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r1?arguments[1]:void 0)}})},be7f:function(e,t,n){"use strict";var r="undefined"!==typeof Uint8Array&&"undefined"!==typeof Uint16Array&&"undefined"!==typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){var t=Array.prototype.slice.call(arguments,1);while(t.length){var n=t.shift();if(n){if("object"!==typeof n)throw new TypeError(n+"must be non-object");for(var r in n)i(n,r)&&(e[r]=n[r])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var o={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var o=0;o1?arguments[1]:void 0)}})},c293:function(e,t,n){"use strict";var r=n("1274"),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,o,a={};return e?(r.forEach(e.split("\n"),(function(e){if(o=e.indexOf(":"),t=r.trim(e.substr(0,o)).toLowerCase(),n=r.trim(e.substr(o+1)),t){if(a[t]&&i.indexOf(t)>=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}})),a):a}},c2ae:function(e,t,n){e.exports=n("e372").PassThrough},c364:function(e,t,n){"use strict";var r=n("21aa"),i=n("abf8"),o=n("b68d"),a=n("0d1a"),s="toString",l=RegExp.prototype,u=l[s],c=o((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),f=u.name!=s;(c||f)&&r(RegExp.prototype,s,(function(){var e=i(this),t=String(e.source),n=e.flags,r=String(void 0===n&&e instanceof RegExp&&!("flags"in l)?a.call(e):n);return"/"+t+"/"+r}),{unsafe:!0})},c3a2:function(e,t,n){"use strict";var r=n("dd9c"),i=n("b68d"),o=n("804c"),a=n("f97c"),s=n("1db9"),l=n("30cb"),u=n("0af7"),c=n("918d"),f=n("d2b8"),h=n("0fc5"),d=n("823b"),p=h("isConcatSpreadable"),g=9007199254740991,m="Maximum allowed index exceeded",v=d>=51||!i((function(){var e=[];return e[p]=!1,e.concat()[0]!==e})),y=f("concat"),b=function(e){if(!a(e))return!1;var t=e[p];return void 0!==t?!!t:o(e)},w=!v||!y;r({target:"Array",proto:!0,forced:w},{concat:function(e){var t,n,r,i,o,a=s(this),f=c(a,0),h=0;for(t=-1,r=arguments.length;tg)throw TypeError(m);for(n=0;n=g)throw TypeError(m);u(f,h++,o)}return f.length=h,f}})},c430:function(e,t){e.exports=!1},c588:function(e,t,n){var r=n("4fdd"),i=n("6bd1"),o=n("1db9"),a=n("30cb"),s=n("918d"),l=[].push,u=function(e){var t=1==e,n=2==e,u=3==e,c=4==e,f=6==e,h=5==e||f;return function(d,p,g,m){for(var v,y,b=o(d),w=i(b),_=r(p,g,3),x=a(w.length),k=0,S=m||s,C=t?S(d,x):n?S(d,0):void 0;x>k;k++)if((h||k in w)&&(v=w[k],y=_(v,k,b),e))if(t)C[k]=y;else if(y)switch(e){case 3:return!0;case 5:return v;case 6:return k;case 2:l.call(C,v)}else if(c)return!1;return f?-1:u||c?c:C}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},c5a4:function(e,t,n){"use strict";var r=n("1274");e.exports=function(e,t){t=t||{};var n={},i=["url","method","data"],o=["headers","auth","proxy","params"],a=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],s=["validateStatus"];function l(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function u(i){r.isUndefined(t[i])?r.isUndefined(e[i])||(n[i]=l(void 0,e[i])):n[i]=l(e[i],t[i])}r.forEach(i,(function(e){r.isUndefined(t[e])||(n[e]=l(void 0,t[e]))})),r.forEach(o,u),r.forEach(a,(function(i){r.isUndefined(t[i])?r.isUndefined(e[i])||(n[i]=l(void 0,e[i])):n[i]=l(void 0,t[i])})),r.forEach(s,(function(r){r in t?n[r]=l(e[r],t[r]):r in e&&(n[r]=l(void 0,e[r]))}));var c=i.concat(o).concat(a).concat(s),f=Object.keys(e).concat(Object.keys(t)).filter((function(e){return-1===c.indexOf(e)}));return r.forEach(f,u),n}},c5b8:function(e,t,n){var r=n("b65a"),i=n("af3e"),o=n("db8f");e.exports=r?function(e,t,n){return i.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},c6b6:function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},c6cd:function(e,t,n){var r=n("da84"),i=n("ce4e"),o="__core-js_shared__",a=r[o]||i(o,{});e.exports=a},c751:function(e,t,n){"use strict";var r=n("e27c");e.exports=function(e,t,n){var i=n.config.validateStatus;n.status&&i&&!i(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},c785:function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},c834:function(e,t,n){"use strict";function r(e,t,n,r){var i=65535&e|0,o=e>>>16&65535|0,a=0;while(0!==n){a=n>2e3?2e3:n,n-=a;do{i=i+t[r++]|0,o=o+i|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}e.exports=r},c8ba:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}e.exports=n},c975:function(e,t,n){"use strict";var r=n("23e7"),i=n("4d64").indexOf,o=n("a640"),a=n("ae40"),s=[].indexOf,l=!!s&&1/[1].indexOf(1,-0)<0,u=o("indexOf"),c=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:l||!u||!c},{indexOf:function(e){return l?s.apply(this,arguments)||0:i(this,e,arguments.length>1?arguments[1]:void 0)}})},ca84:function(e,t,n){var r=n("5135"),i=n("fc6a"),o=n("4d64").indexOf,a=n("d012");e.exports=function(e,t){var n,s=i(e),l=0,u=[];for(n in s)!r(a,n)&&r(s,n)&&u.push(n);while(t.length>l)r(s,n=t[l++])&&(~o(u,n)||u.push(n));return u}},caad:function(e,t,n){"use strict";var r=n("23e7"),i=n("4d64").includes,o=n("44d2"),a=n("ae40"),s=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:!s},{includes:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}}),o("includes")},cbc8:function(e,t,n){(function(e){e(n("56b3"),n("4895"))})((function(e){"use strict";e.defineOption("foldGutter",!1,(function(t,i,o){o&&o!=e.Init&&(t.clearGutter(t.state.foldGutter.options.gutter),t.state.foldGutter=null,t.off("gutterClick",u),t.off("changes",c),t.off("viewportChange",f),t.off("fold",h),t.off("unfold",h),t.off("swapDoc",c)),i&&(t.state.foldGutter=new n(r(i)),l(t),t.on("gutterClick",u),t.on("changes",c),t.on("viewportChange",f),t.on("fold",h),t.on("unfold",h),t.on("swapDoc",c))}));var t=e.Pos;function n(e){this.options=e,this.from=this.to=0}function r(e){return!0===e&&(e={}),null==e.gutter&&(e.gutter="CodeMirror-foldgutter"),null==e.indicatorOpen&&(e.indicatorOpen="CodeMirror-foldgutter-open"),null==e.indicatorFolded&&(e.indicatorFolded="CodeMirror-foldgutter-folded"),e}function i(e,n){for(var r=e.findMarks(t(n,0),t(n+1,0)),i=0;i=u){if(h&&s&&h.test(s.className))return;r=o(a.indicatorOpen)}}(r||s)&&e.setGutterMarker(n,a.gutter,r)}))}function s(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}function l(e){var t=e.getViewport(),n=e.state.foldGutter;n&&(e.operation((function(){a(e,t.from,t.to)})),n.from=t.from,n.to=t.to)}function u(e,n,r){var o=e.state.foldGutter;if(o){var a=o.options;if(r==a.gutter){var s=i(e,n);s?s.clear():e.foldCode(t(n,0),a)}}}function c(e){var t=e.state.foldGutter;if(t){var n=t.options;t.from=t.to=0,clearTimeout(t.changeUpdate),t.changeUpdate=setTimeout((function(){l(e)}),n.foldOnChangeTimeSpan||600)}}function f(e){var t=e.state.foldGutter;if(t){var n=t.options;clearTimeout(t.changeUpdate),t.changeUpdate=setTimeout((function(){var n=e.getViewport();t.from==t.to||n.from-t.to>20||t.from-n.to>20?l(e):e.operation((function(){n.fromt.to&&(a(e,t.to,n.to),t.to=n.to)}))}),n.updateViewportTimeSpan||400)}}function h(e,t){var n=e.state.foldGutter;if(n){var r=t.line;r>=n.from&&r=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|e}function b(e){return+e!=e&&(e=0),u.alloc(+e)}function w(e,t){if(u.isBuffer(e))return e.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!==typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Q(e).length;default:if(r)return K(e).length;t=(""+t).toLowerCase(),r=!0}}function _(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,t>>>=0,n<=t)return"";e||(e="utf8");while(1)switch(e){case"hex":return F(this,t,n);case"utf8":case"utf-8":return P(this,t,n);case"ascii":return N(this,t,n);case"latin1":case"binary":return D(this,t,n);case"base64":return M(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function x(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function k(e,t,n,r,i){if(0===e.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:S(e,t,n,r,i);if("number"===typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):S(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function S(e,t,n,r,i){var o,a=1,s=e.length,l=t.length;if(void 0!==r&&(r=String(r).toLowerCase(),"ucs2"===r||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,l/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var c=-1;for(o=n;os&&(n=s-l),o=n;o>=0;o--){for(var f=!0,h=0;hi&&(r=i)):r=i;var o=t.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a239?4:u>223?3:u>191?2:1;if(i+f<=n)switch(f){case 1:u<128&&(c=u);break;case 2:o=e[i+1],128===(192&o)&&(l=(31&u)<<6|63&o,l>127&&(c=l));break;case 3:o=e[i+1],a=e[i+2],128===(192&o)&&128===(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a,l>2047&&(l<55296||l>57343)&&(c=l));break;case 4:o=e[i+1],a=e[i+2],s=e[i+3],128===(192&o)&&128===(192&a)&&128===(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s,l>65535&&l<1114112&&(c=l))}null===c?(c=65533,f=1):c>65535&&(c-=65536,r.push(c>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=f}return R(r)}t.Buffer=u,t.SlowBuffer=b,t.INSPECT_MAX_BYTES=50,u.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:a(),t.kMaxLength=s(),u.poolSize=8192,u._augment=function(e){return e.__proto__=u.prototype,e},u.from=function(e,t,n){return c(null,e,t,n)},u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,"undefined"!==typeof Symbol&&Symbol.species&&u[Symbol.species]===u&&Object.defineProperty(u,Symbol.species,{value:null,configurable:!0})),u.alloc=function(e,t,n){return h(null,e,t,n)},u.allocUnsafe=function(e){return d(null,e)},u.allocUnsafeSlow=function(e){return d(null,e)},u.isBuffer=function(e){return!(null==e||!e._isBuffer)},u.compare=function(e,t){if(!u.isBuffer(e)||!u.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);i0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var o=i-r,a=n-t,s=Math.min(o,a),l=this.slice(r,i),c=e.slice(t,n),f=0;fi)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return C(this,e,t,n);case"utf8":case"utf-8":return E(this,e,t,n);case"ascii":return A(this,e,t,n);case"latin1":case"binary":return O(this,e,t,n);case"base64":return L(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var j=4096;function R(e){var t=e.length;if(t<=j)return String.fromCharCode.apply(String,e);var n="",r=0;while(rr)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function B(e,t,n,r,i,o){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function U(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function $(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function H(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function W(e,t,n,r,o){return o||H(e,t,n,4,34028234663852886e22,-34028234663852886e22),i.write(e,t,n,r,23,4),n+4}function q(e,t,n,r,o){return o||H(e,t,n,8,17976931348623157e292,-17976931348623157e292),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if(e=~~e,t=void 0===t?r:~~t,e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),t0&&(i*=256))r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||z(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||z(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||z(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||z(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||z(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||z(e,t,this.length);var r=this[e],i=1,o=0;while(++o=i&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||z(e,t,this.length);var r=t,i=1,o=this[e+--r];while(r>0&&(i*=256))o+=this[e+--r]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},u.prototype.readInt8=function(e,t){return t||z(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||z(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||z(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||z(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||z(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||z(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||z(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||z(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||z(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t|=0,n|=0,!r){var i=Math.pow(2,8*n)-1;B(this,e,t,n,i,0)}var o=1,a=0;this[t]=255&e;while(++a=0&&(a*=256))this[t+o]=e/a&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):$(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);B(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;this[t]=255&e;while(++o>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);B(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;this[t+o]=255&e;while(--o>=0&&(a*=256))e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):U(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):U(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):$(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||B(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return W(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return W(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return q(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return q(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"===typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function X(e){for(var t=[],n=0;n>8,i=n%256,o.push(i),o.push(r)}return o}function Q(e){return r.toByteArray(V(e))}function ee(e,t,n,r){for(var i=0;i=t.length||i>=e.length)break;t[i+n]=e[i]}return i}function te(e){return e!==e}}).call(this,n("c8ba"))},b64b:function(e,t,n){"use strict";var r=n("23e7"),i=n("7b0b"),o=n("df75"),a=n("d039"),s=a((function(){o(1)}));r({target:"Object",stat:!0,forced:s},{keys:function(e){return o(i(e))}})},b727:function(e,t,n){"use strict";var r=n("0366"),i=n("e330"),o=n("44ad"),a=n("7b0b"),s=n("07fa"),l=n("65f0"),u=i([].push),c=function(e){var t=1===e,n=2===e,i=3===e,c=4===e,f=6===e,h=7===e,d=5===e||f;return function(p,g,m,v){for(var y,b,w=a(p),_=o(w),x=s(_),k=r(g,m),S=0,C=v||l,E=t?C(p,x):n||h?C(p,0):void 0;x>S;S++)if((d||S in _)&&(y=_[S],b=k(y,S,w),e))if(t)E[S]=b;else if(b)switch(e){case 3:return!0;case 5:return y;case 6:return S;case 2:u(E,y)}else switch(e){case 4:return!1;case 7:u(E,y)}return f?-1:i||c?c:E}};e.exports={forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findIndex:c(6),filterReject:c(7)}},b7d1:function(e,t,n){(function(t){function n(e,t){if(r("noDeprecation"))return e;var n=!1;function i(){if(!n){if(r("throwDeprecation"))throw new Error(t);r("traceDeprecation")?console.trace(t):console.warn(t),n=!0}return e.apply(this,arguments)}return i}function r(e){try{if(!t.localStorage)return!1}catch(r){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=n}).call(this,n("c8ba"))},b980:function(e,t,n){"use strict";var r=n("d039"),i=n("5c6c");e.exports=!r((function(){var e=new Error("a");return!("stack"in e)||(Object.defineProperty(e,"stack",i(1,7)),7!==e.stack)}))},bc3a:function(e,t,n){e.exports=n("cee4")},be7f:function(e,t,n){"use strict";var r="undefined"!==typeof Uint8Array&&"undefined"!==typeof Uint16Array&&"undefined"!==typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){var t=Array.prototype.slice.call(arguments,1);while(t.length){var n=t.shift();if(n){if("object"!==typeof n)throw new TypeError(n+"must be non-object");for(var r in n)i(n,r)&&(e[r]=n[r])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var o={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var o=0;o=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}})),a):a}},c401:function(e,t,n){"use strict";var r=n("c532");e.exports=function(e,t,n){return r.forEach(n,(function(n){e=n(e,t)})),e}},c430:function(e,t,n){"use strict";e.exports=!1},c513:function(e,t,n){"use strict";var r=n("23e7"),i=n("1a2d"),o=n("d9b5"),a=n("0d51"),s=n("5692"),l=n("0b43"),u=s("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!l},{keyFor:function(e){if(!o(e))throw new TypeError(a(e)+" is not a symbol");if(i(u,e))return u[e]}})},c532:function(e,t,n){"use strict";var r=n("1d2b"),i=Object.prototype.toString;function o(e){return"[object Array]"===i.call(e)}function a(e){return"undefined"===typeof e}function s(e){return null!==e&&!a(e)&&null!==e.constructor&&!a(e.constructor)&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function l(e){return"[object ArrayBuffer]"===i.call(e)}function u(e){return"undefined"!==typeof FormData&&e instanceof FormData}function c(e){var t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer,t}function f(e){return"string"===typeof e}function h(e){return"number"===typeof e}function d(e){return null!==e&&"object"===typeof e}function p(e){if("[object Object]"!==i.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function g(e){return"[object Date]"===i.call(e)}function m(e){return"[object File]"===i.call(e)}function v(e){return"[object Blob]"===i.call(e)}function y(e){return"[object Function]"===i.call(e)}function b(e){return d(e)&&y(e.pipe)}function w(e){return"undefined"!==typeof URLSearchParams&&e instanceof URLSearchParams}function _(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")}function x(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)}function k(e,t){if(null!==e&&"undefined"!==typeof e)if("object"!==typeof e&&(e=[e]),o(e))for(var n=0,r=e.length;n>>16&65535|0,a=0;while(0!==n){a=n>2e3?2e3:n,n-=a;do{i=i+t[r++]|0,o=o+i|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}e.exports=r},c8af:function(e,t,n){"use strict";var r=n("c532");e.exports=function(e,t){r.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},c8ba:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"===typeof window&&(n=window)}e.exports=n},c8ba6:function(e,t,n){"use strict";var r=n("16e7"),i=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),n={},r=0;r1?arguments[1]:void 0;return l?s(this,e,t)||0:o(this,e,t)}})},ca84:function(e,t,n){"use strict";var r=n("e330"),i=n("1a2d"),o=n("fc6a"),a=n("4d64").indexOf,s=n("d012"),l=r([].push);e.exports=function(e,t){var n,r=o(e),u=0,c=[];for(n in r)!i(s,n)&&i(r,n)&&l(c,n);while(t.length>u)i(r,n=t[u++])&&(~a(c,n)||l(c,n));return c}},caad:function(e,t,n){"use strict";var r=n("23e7"),i=n("4d64").includes,o=n("d039"),a=n("44d2"),s=o((function(){return!Array(1).includes()}));r({target:"Array",proto:!0,forced:s},{includes:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}}),a("includes")},cb2d:function(e,t,n){"use strict";var r=n("1626"),i=n("9bf2"),o=n("13d2"),a=n("6374");e.exports=function(e,t,n,s){s||(s={});var l=s.enumerable,u=void 0!==s.name?s.name:t;if(r(n)&&o(n,u,s),s.global)l?e[t]=n:a(t,n);else{try{s.unsafe?e[t]&&(l=!0):delete e[t]}catch(c){}l?e[t]=n:i.f(e,t,{value:n,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return e}},cbc8:function(e,t,n){(function(e){e(n("56b3"),n("4895"))})((function(e){"use strict";e.defineOption("foldGutter",!1,(function(t,i,o){o&&o!=e.Init&&(t.clearGutter(t.state.foldGutter.options.gutter),t.state.foldGutter=null,t.off("gutterClick",u),t.off("changes",f),t.off("viewportChange",h),t.off("fold",d),t.off("unfold",d),t.off("swapDoc",f),t.off("optionChange",c)),i&&(t.state.foldGutter=new n(r(i)),l(t),t.on("gutterClick",u),t.on("changes",f),t.on("viewportChange",h),t.on("fold",d),t.on("unfold",d),t.on("swapDoc",f),t.on("optionChange",c))}));var t=e.Pos;function n(e){this.options=e,this.from=this.to=0}function r(e){return!0===e&&(e={}),null==e.gutter&&(e.gutter="CodeMirror-foldgutter"),null==e.indicatorOpen&&(e.indicatorOpen="CodeMirror-foldgutter-open"),null==e.indicatorFolded&&(e.indicatorFolded="CodeMirror-foldgutter-folded"),e}function i(e,n){for(var r=e.findMarks(t(n,0),t(n+1,0)),i=0;i=u){if(h&&s&&h.test(s.className))return;r=o(a.indicatorOpen)}}(r||s)&&e.setGutterMarker(n,a.gutter,r)}))}function s(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}function l(e){var t=e.getViewport(),n=e.state.foldGutter;n&&(e.operation((function(){a(e,t.from,t.to)})),n.from=t.from,n.to=t.to)}function u(e,n,r){var o=e.state.foldGutter;if(o){var a=o.options;if(r==a.gutter){var s=i(e,n);s?s.clear():e.foldCode(t(n,0),a)}}}function c(e,t){"mode"==t&&f(e)}function f(e){var t=e.state.foldGutter;if(t){var n=t.options;t.from=t.to=0,clearTimeout(t.changeUpdate),t.changeUpdate=setTimeout((function(){l(e)}),n.foldOnChangeTimeSpan||600)}}function h(e){var t=e.state.foldGutter;if(t){var n=t.options;clearTimeout(t.changeUpdate),t.changeUpdate=setTimeout((function(){var n=e.getViewport();t.from==t.to||n.from-t.to>20||t.from-n.to>20?l(e):e.operation((function(){n.fromt.to&&(a(e,t.to,n.to),t.to=n.to)}))}),n.updateViewportTimeSpan||400)}}function d(e,t){var n=e.state.foldGutter;if(n){var r=t.line;r>=n.from&&r * Released under the MIT License. */ -!function(t,n){e.exports=n()}(0,(function(){"use strict";function e(t){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(t)}function n(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;arguments.length>t;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?r(Object(i),!0).forEach((function(t){n(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function o(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return a(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);t>n;n++)r[n]=e[n];return r}var s="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof t?t:"undefined"!=typeof self?self:{},l=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){(function(){function t(e){var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,description:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,description:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,description:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,description:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,description:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",description:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,description:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,description:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,description:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,description:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,description:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},completeHTMLDocument:{defaultValue:!1,description:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,description:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,description:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r].defaultValue);return n}var n={},r={},i={},o=t(!0),a="vanilla",s={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:t(!0),allOn:function(){var e=t(!0),n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=!0);return n}()};function l(e,t){var r=t?"Error in "+t+" extension->":"Error in unnamed extension",i={valid:!0,error:""};n.helper.isArray(e)||(e=[e]);for(var o=0;e.length>o;++o){var a=r+" sub-extension "+o+": ",s=e[o];if("object"!=typeof s)return i.valid=!1,i.error=a+"must be an object, but "+typeof s+" given",i;if(!n.helper.isString(s.type))return i.valid=!1,i.error=a+'property "type" must be a string, but '+typeof s.type+" given",i;var l=s.type=s.type.toLowerCase();if("language"===l&&(l=s.type="lang"),"html"===l&&(l=s.type="output"),"lang"!==l&&"output"!==l&&"listener"!==l)return i.valid=!1,i.error=a+"type "+l+' is not recognized. Valid values: "lang/language", "output/html" or "listener"',i;if("listener"===l){if(n.helper.isUndefined(s.listeners))return i.valid=!1,i.error=a+'. Extensions of type "listener" must have a property called "listeners"',i}else if(n.helper.isUndefined(s.filter)&&n.helper.isUndefined(s.regex))return i.valid=!1,i.error=a+l+' extensions must define either a "regex" property or a "filter" method',i;if(s.listeners){if("object"!=typeof s.listeners)return i.valid=!1,i.error=a+'"listeners" property must be an object but '+typeof s.listeners+" given",i;for(var u in s.listeners)if(s.listeners.hasOwnProperty(u)&&"function"!=typeof s.listeners[u])return i.valid=!1,i.error=a+'"listeners" property must be an hash of [event name]: [callback]. listeners.'+u+" must be a function but "+typeof s.listeners[u]+" given",i}if(s.filter){if("function"!=typeof s.filter)return i.valid=!1,i.error=a+'"filter" must be a function, but '+typeof s.filter+" given",i}else if(s.regex){if(n.helper.isString(s.regex)&&(s.regex=RegExp(s.regex,"g")),!(s.regex instanceof RegExp))return i.valid=!1,i.error=a+'"regex" property must either be a string or a RegExp object, but '+typeof s.regex+" given",i;if(n.helper.isUndefined(s.replace))return i.valid=!1,i.error=a+'"regex" extensions must implement a replace string or function',i}}return i}function u(e,t){return"¨E"+t.charCodeAt(0)+"E"}n.helper={},n.extensions={},n.setOption=function(e,t){return o[e]=t,this},n.getOption=function(e){return o[e]},n.getOptions=function(){return o},n.resetOptions=function(){o=t(!0)},n.setFlavor=function(e){if(!s.hasOwnProperty(e))throw Error(e+" flavor was not found");n.resetOptions();var t=s[e];for(var r in a=e,t)t.hasOwnProperty(r)&&(o[r]=t[r])},n.getFlavor=function(){return a},n.getFlavorOptions=function(e){if(s.hasOwnProperty(e))return s[e]},n.getDefaultOptions=function(e){return t(e)},n.subParser=function(e,t){if(n.helper.isString(e)){if(void 0===t){if(r.hasOwnProperty(e))return r[e];throw Error("SubParser named "+e+" not registered!")}r[e]=t}},n.extension=function(e,t){if(!n.helper.isString(e))throw Error("Extension 'name' must be a string");if(e=n.helper.stdExtName(e),n.helper.isUndefined(t)){if(!i.hasOwnProperty(e))throw Error("Extension named "+e+" is not registered!");return i[e]}"function"==typeof t&&(t=t()),n.helper.isArray(t)||(t=[t]);var r=l(t,e);if(!r.valid)throw Error(r.error);i[e]=t},n.getAllExtensions=function(){return i},n.removeExtension=function(e){delete i[e]},n.resetExtensions=function(){i={}},n.validateExtension=function(e){return!!l(e,null).valid},n.hasOwnProperty("helper")||(n.helper={}),n.helper.isString=function(e){return"string"==typeof e||e instanceof String},n.helper.isFunction=function(e){return e&&"[object Function]"==={}.toString.call(e)},n.helper.isArray=function(e){return Array.isArray(e)},n.helper.isUndefined=function(e){return void 0===e},n.helper.forEach=function(e,t){if(n.helper.isUndefined(e))throw Error("obj param is required");if(n.helper.isUndefined(t))throw Error("callback param is required");if(!n.helper.isFunction(t))throw Error("callback param must be a function/closure");if("function"==typeof e.forEach)e.forEach(t);else if(n.helper.isArray(e))for(var r=0;e.length>r;r++)t(e[r],r,e);else{if("object"!=typeof e)throw Error("obj does not seem to be an array or an iterable object");for(var i in e)e.hasOwnProperty(i)&&t(e[i],i,e)}},n.helper.stdExtName=function(e){return e.replace(/[_?*+\/\\.^-]/g,"").replace(/\s/g,"").toLowerCase()},n.helper.escapeCharactersCallback=u,n.helper.escapeCharacters=function(e,t,n){var r="(["+t.replace(/([\[\]\\])/g,"\\$1")+"])";n&&(r="\\\\"+r);var i=RegExp(r,"g");return e.replace(i,u)},n.helper.unescapeHTMLEntities=function(e){return e.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")};var c=function(e,t,n,r){var i,o,a,s,l,u=r||"",c=u.indexOf("g")>-1,f=RegExp(t+"|"+n,"g"+u.replace(/g/g,"")),h=RegExp(t,u.replace(/g/g,"")),d=[];do{for(i=0;a=f.exec(e);)if(h.test(a[0]))i++||(s=(o=f.lastIndex)-a[0].length);else if(i&&!--i&&(d.push({left:{start:s,end:o},match:{start:o,end:a.index},right:{start:a.index,end:l=a.index+a[0].length},wholeMatch:{start:s,end:l}}),!c))return d}while(i&&(f.lastIndex=o));return d};n.helper.matchRecursiveRegExp=function(e,t,n,r){for(var i=c(e,t,n,r),o=[],a=0;i.length>a;++a)o.push([e.slice(i[a].wholeMatch.start,i[a].wholeMatch.end),e.slice(i[a].match.start,i[a].match.end),e.slice(i[a].left.start,i[a].left.end),e.slice(i[a].right.start,i[a].right.end)]);return o},n.helper.replaceRecursiveRegExp=function(e,t,r,i,o){if(!n.helper.isFunction(t)){var a=t;t=function(){return a}}var s=c(e,r,i,o),l=e,u=s.length;if(u>0){var f=[];0!==s[0].wholeMatch.start&&f.push(e.slice(0,s[0].wholeMatch.start));for(var h=0;u>h;++h)f.push(t(e.slice(s[h].wholeMatch.start,s[h].wholeMatch.end),e.slice(s[h].match.start,s[h].match.end),e.slice(s[h].left.start,s[h].left.end),e.slice(s[h].right.start,s[h].right.end))),u-1>h&&f.push(e.slice(s[h].wholeMatch.end,s[h+1].wholeMatch.start));e.length>s[u-1].wholeMatch.end&&f.push(e.slice(s[u-1].wholeMatch.end)),l=f.join("")}return l},n.helper.regexIndexOf=function(e,t,r){if(!n.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";if(t instanceof RegExp==0)throw"InvalidArgumentError: second parameter of showdown.helper.regexIndexOf function must be an instance of RegExp";var i=e.substring(r||0).search(t);return 0>i?i:i+(r||0)},n.helper.splitAtIndex=function(e,t){if(!n.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,t),e.substring(t)]},n.helper.encodeEmailAddress=function(e){var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var n=Math.random();e=n>.9?t[2](e):n>.45?t[1](e):t[0](e)}return e}))},n.helper.padEnd=function(e,t,n){return n=(n||" ")+"",e.length>(t>>=0)?e+"":((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),e+""+n.slice(0,t))},void 0===console&&(console={warn:function(e){alert(e)},log:function(e){alert(e)},error:function(e){throw e}}),n.helper.regexes={asteriskDashAndColon:/([*_:~])/g},n.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},n.Converter=function(e){var t={},r=[],u=[],c={},f=a,h={parsed:{},raw:"",format:""};function d(e,t){if(t=t||null,n.helper.isString(e)){if(t=e=n.helper.stdExtName(e),n.extensions[e])return void function(e,t){"function"==typeof e&&(e=e(new n.Converter)),n.helper.isArray(e)||(e=[e]);var i=l(e,t);if(!i.valid)throw Error(i.error);for(var o=0;e.length>o;++o)switch(e[o].type){case"lang":r.push(e[o]);break;case"output":u.push(e[o]);break;default:throw Error("Extension loader error: Type unrecognized!!!")}}(n.extensions[e],e);if(n.helper.isUndefined(i[e]))throw Error('Extension "'+e+'" could not be loaded. It was either not found or is not a valid extension.');e=i[e]}"function"==typeof e&&(e=e()),n.helper.isArray(e)||(e=[e]);var o=l(e,t);if(!o.valid)throw Error(o.error);for(var a=0;e.length>a;++a){switch(e[a].type){case"lang":r.push(e[a]);break;case"output":u.push(e[a])}if(e[a].hasOwnProperty("listeners"))for(var s in e[a].listeners)e[a].listeners.hasOwnProperty(s)&&p(s,e[a].listeners[s])}}function p(e,t){if(!n.helper.isString(e))throw Error("Invalid argument in converter.listen() method: name must be a string, but "+typeof e+" given");if("function"!=typeof t)throw Error("Invalid argument in converter.listen() method: callback must be a function, but "+typeof t+" given");c.hasOwnProperty(e)||(c[e]=[]),c[e].push(t)}!function(){for(var r in e=e||{},o)o.hasOwnProperty(r)&&(t[r]=o[r]);if("object"!=typeof e)throw Error("Converter expects the passed parameter to be an object, but "+typeof e+" was passed instead.");for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);t.extensions&&n.helper.forEach(t.extensions,d)}(),this._dispatch=function(e,t,n,r){if(c.hasOwnProperty(e))for(var i=0;c[e].length>i;++i){var o=c[e][i](e,t,this,n,r);o&&void 0!==o&&(t=o)}return t},this.listen=function(e,t){return p(e,t),this},this.makeHtml=function(e){if(!e)return e;var i={gHtmlBlocks:[],gHtmlMdBlocks:[],gHtmlSpans:[],gUrls:{},gTitles:{},gDimensions:{},gListLevel:0,hashLinkCounts:{},langExtensions:r,outputModifiers:u,converter:this,ghCodeBlocks:[],metadata:{parsed:{},raw:"",format:""}};return e=(e=(e=(e=(e=e.replace(/¨/g,"¨T")).replace(/\$/g,"¨D")).replace(/\r\n/g,"\n")).replace(/\r/g,"\n")).replace(/\u00A0/g," "),t.smartIndentationFix&&(e=function(e){var t=e.match(/^\s*/)[0].length,n=RegExp("^\\s{0,"+t+"}","gm");return e.replace(n,"")}(e)),e="\n\n"+e+"\n\n",e=(e=n.subParser("detab")(e,t,i)).replace(/^[ \t]+$/gm,""),n.helper.forEach(r,(function(r){e=n.subParser("runExtension")(r,e,t,i)})),e=n.subParser("metadata")(e,t,i),e=n.subParser("hashPreCodeTags")(e,t,i),e=n.subParser("githubCodeBlocks")(e,t,i),e=n.subParser("hashHTMLBlocks")(e,t,i),e=n.subParser("hashCodeTags")(e,t,i),e=n.subParser("stripLinkDefinitions")(e,t,i),e=n.subParser("blockGamut")(e,t,i),e=n.subParser("unhashHTMLSpans")(e,t,i),e=(e=(e=n.subParser("unescapeSpecialChars")(e,t,i)).replace(/¨D/g,"$$")).replace(/¨T/g,"¨"),e=n.subParser("completeHTMLDocument")(e,t,i),n.helper.forEach(u,(function(r){e=n.subParser("runExtension")(r,e,t,i)})),h=i.metadata,e},this.makeMarkdown=this.makeMd=function(e,t){if(e=(e=(e=e.replace(/\r\n/g,"\n")).replace(/\r/g,"\n")).replace(/>[ \t]+¨NBSP;<"),!t){if(!window||!window.document)throw Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");t=window.document}var r=t.createElement("div");r.innerHTML=e;var i={preList:function(e){for(var t=e.querySelectorAll("pre"),r=[],i=0;t.length>i;++i)if(1===t[i].childElementCount&&"code"===t[i].firstChild.tagName.toLowerCase()){var o=t[i].firstChild.innerHTML.trim(),a=t[i].firstChild.getAttribute("data-language")||"";if(""===a)for(var s=t[i].firstChild.className.split(" "),l=0;s.length>l;++l){var u=s[l].match(/^language-(.+)$/);if(null!==u){a=u[1];break}}o=n.helper.unescapeHTMLEntities(o),r.push(o),t[i].outerHTML=''}else r.push(t[i].innerHTML),t[i].innerHTML="",t[i].setAttribute("prenum",""+i);return r}(r)};!function e(t){for(var n=0;t.childNodes.length>n;++n){var r=t.childNodes[n];3===r.nodeType?/\S/.test(r.nodeValue)?(r.nodeValue=r.nodeValue.split("\n").join(" "),r.nodeValue=r.nodeValue.replace(/(\s)+/g,"$1")):(t.removeChild(r),--n):1===r.nodeType&&e(r)}}(r);for(var o=r.childNodes,a="",s=0;o.length>s;s++)a+=n.subParser("makeMarkdown.node")(o[s],i);return a},this.setOption=function(e,n){t[e]=n},this.getOption=function(e){return t[e]},this.getOptions=function(){return t},this.addExtension=function(e,t){d(e,t=t||null)},this.useExtension=function(e){d(e)},this.setFlavor=function(e){if(!s.hasOwnProperty(e))throw Error(e+" flavor was not found");var n=s[e];for(var r in f=e,n)n.hasOwnProperty(r)&&(t[r]=n[r])},this.getFlavor=function(){return f},this.removeExtension=function(e){n.helper.isArray(e)||(e=[e]);for(var t=0;e.length>t;++t){for(var i=e[t],o=0;r.length>o;++o)r[o]===i&&r[o].splice(o,1);for(;u.length>0;++o)u[0]===i&&u[0].splice(o,1)}},this.getAllExtensions=function(){return{language:r,output:u}},this.getMetadata=function(e){return e?h.raw:h.parsed},this.getMetadataFormat=function(){return h.format},this._setMetadataPair=function(e,t){h.parsed[e]=t},this._setMetadataFormat=function(e){h.format=e},this._setMetadataRaw=function(e){h.raw=e}},n.subParser("anchors",(function(e,t,r){var i=function(e,i,o,a,s,l,u){if(n.helper.isUndefined(u)&&(u=""),o=o.toLowerCase(),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)a="";else if(!a){if(o||(o=i.toLowerCase().replace(/ ?\n/g," ")),a="#"+o,n.helper.isUndefined(r.gUrls[o]))return e;a=r.gUrls[o],n.helper.isUndefined(r.gTitles[o])||(u=r.gTitles[o])}var c='
"+i+""};return e=(e=(e=(e=(e=r.converter._dispatch("anchors.before",e,t,r)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[([^\[\]]+)]()()()()()/g,i),t.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,r,i,o,a){if("\\"===i)return r+o;if(!n.helper.isString(t.ghMentionsLink))throw Error("ghMentionsLink option must be a string");var s=t.ghMentionsLink.replace(/\{u}/g,a),l="";return t.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),r+'"+o+""}))),r.converter._dispatch("anchors.after",e,t,r)}));var f=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,d=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,g=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){return function(t,r,i,o,a,s,l){var u=i=i.replace(n.helper.regexes.asteriskDashAndColon,n.helper.escapeCharactersCallback),c="",f="",h=r||"",d=l||"";return/^www\./i.test(i)&&(i=i.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&s&&(c=s),e.openLinksInNewWindow&&(f=' rel="noopener noreferrer" target="¨E95Eblank"'),h+'"+u+""+c+d}},v=function(e,t){return function(r,i,o){var a="mailto:";return i=i||"",o=n.subParser("unescapeSpecialChars")(o,e,t),e.encodeEmails?(a=n.helper.encodeEmailAddress(a+o),o=n.helper.encodeEmailAddress(o)):a+=o,i+''+o+""}};n.subParser("autoLinks",(function(e,t,n){return e=(e=(e=n.converter._dispatch("autoLinks.before",e,t,n)).replace(d,m(t))).replace(g,v(t,n)),n.converter._dispatch("autoLinks.after",e,t,n)})),n.subParser("simplifiedAutoLinks",(function(e,t,n){return t.simplifiedAutoLink?(e=(e=(e=n.converter._dispatch("simplifiedAutoLinks.before",e,t,n)).replace(t.excludeTrailingPunctuationFromURLs?h:f,m(t))).replace(p,v(t,n)),e=n.converter._dispatch("simplifiedAutoLinks.after",e,t,n)):e})),n.subParser("blockGamut",(function(e,t,r){return e=r.converter._dispatch("blockGamut.before",e,t,r),e=n.subParser("blockQuotes")(e,t,r),e=n.subParser("headers")(e,t,r),e=n.subParser("horizontalRule")(e,t,r),e=n.subParser("lists")(e,t,r),e=n.subParser("codeBlocks")(e,t,r),e=n.subParser("tables")(e,t,r),e=n.subParser("hashHTMLBlocks")(e,t,r),e=n.subParser("paragraphs")(e,t,r),r.converter._dispatch("blockGamut.after",e,t,r)})),n.subParser("blockQuotes",(function(e,t,r){e=r.converter._dispatch("blockQuotes.before",e,t,r);var i=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return t.splitAdjacentBlockquotes&&(i=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=(e+="\n\n").replace(i,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=n.subParser("githubCodeBlocks")(e,t,r),e=(e=(e=n.subParser("blockGamut")(e,t,r)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,(function(e,t){var n=t;return(n=n.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),n.subParser("hashBlock")("
\n"+e+"\n
",t,r)})),r.converter._dispatch("blockQuotes.after",e,t,r)})),n.subParser("codeBlocks",(function(e,t,r){return e=r.converter._dispatch("codeBlocks.before",e,t,r),e=(e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,i,o){var a=i,s=o,l="\n";return a=n.subParser("outdent")(a,t,r),a=n.subParser("encodeCode")(a,t,r),a=(a=(a=n.subParser("detab")(a,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""),t.omitExtraWLInCodeBlocks&&(l=""),a="
"+a+l+"
",n.subParser("hashBlock")(a,t,r)+s}))).replace(/¨0/,""),r.converter._dispatch("codeBlocks.after",e,t,r)})),n.subParser("codeSpans",(function(e,t,r){return void 0===(e=r.converter._dispatch("codeSpans.before",e,t,r))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,i,o,a){var s=a;return s=(s=s.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),s=i+""+(s=n.subParser("encodeCode")(s,t,r))+"",n.subParser("hashHTMLSpans")(s,t,r)})),r.converter._dispatch("codeSpans.after",e,t,r)})),n.subParser("completeHTMLDocument",(function(e,t,n){if(!t.completeHTMLDocument)return e;e=n.converter._dispatch("completeHTMLDocument.before",e,t,n);var r="html",i="\n",o="",a='\n',s="",l="";for(var u in void 0!==n.metadata.parsed.doctype&&(i="\n","html"!==(r=(""+n.metadata.parsed.doctype).toLowerCase())&&"html5"!==r||(a='')),n.metadata.parsed)if(n.metadata.parsed.hasOwnProperty(u))switch(u.toLowerCase()){case"doctype":break;case"title":o=""+n.metadata.parsed.title+"\n";break;case"charset":a="html"===r||"html5"===r?'\n':'\n';break;case"language":case"lang":s=' lang="'+n.metadata.parsed[u]+'"',l+='\n';break;default:l+='\n'}return e=i+"\n\n"+o+a+l+"\n\n"+e.trim()+"\n\n",n.converter._dispatch("completeHTMLDocument.after",e,t,n)})),n.subParser("detab",(function(e,t,n){return e=(e=(e=(e=(e=(e=n.converter._dispatch("detab.before",e,t,n)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var n=t,r=4-n.length%4,i=0;r>i;i++)n+=" ";return n}))).replace(/¨A/g," ")).replace(/¨B/g,""),n.converter._dispatch("detab.after",e,t,n)})),n.subParser("ellipsis",(function(e,t,n){return e=(e=n.converter._dispatch("ellipsis.before",e,t,n)).replace(/\.\.\./g,"…"),n.converter._dispatch("ellipsis.after",e,t,n)})),n.subParser("emoji",(function(e,t,r){return t.emoji?(e=(e=r.converter._dispatch("emoji.before",e,t,r)).replace(/:([\S]+?):/g,(function(e,t){return n.helper.emojis.hasOwnProperty(t)?n.helper.emojis[t]:e})),r.converter._dispatch("emoji.after",e,t,r)):e})),n.subParser("encodeAmpsAndAngles",(function(e,t,n){return e=(e=(e=(e=(e=n.converter._dispatch("encodeAmpsAndAngles.before",e,t,n)).replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&")).replace(/<(?![a-z\/?$!])/gi,"<")).replace(//g,">"),n.converter._dispatch("encodeAmpsAndAngles.after",e,t,n)})),n.subParser("encodeBackslashEscapes",(function(e,t,r){return e=(e=(e=r.converter._dispatch("encodeBackslashEscapes.before",e,t,r)).replace(/\\(\\)/g,n.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|-])/g,n.helper.escapeCharactersCallback),r.converter._dispatch("encodeBackslashEscapes.after",e,t,r)})),n.subParser("encodeCode",(function(e,t,r){return e=(e=r.converter._dispatch("encodeCode.before",e,t,r)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,n.helper.escapeCharactersCallback),r.converter._dispatch("encodeCode.after",e,t,r)})),n.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,t,r){return e=(e=(e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,t,r)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,n.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,n.helper.escapeCharactersCallback)})),r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,t,r)})),n.subParser("githubCodeBlocks",(function(e,t,r){return t.ghCodeBlocks?(e=r.converter._dispatch("githubCodeBlocks.before",e,t,r),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,i,o,a){var s=t.omitExtraWLInCodeBlocks?"":"\n";return a=n.subParser("encodeCode")(a,t,r),a="
"+(a=(a=(a=n.subParser("detab")(a,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+s+"
",a=n.subParser("hashBlock")(a,t,r),"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:a})-1)+"G\n\n"}))).replace(/¨0/,""),r.converter._dispatch("githubCodeBlocks.after",e,t,r)):e})),n.subParser("hashBlock",(function(e,t,n){return e=(e=n.converter._dispatch("hashBlock.before",e,t,n)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n",n.converter._dispatch("hashBlock.after",e,t,n)})),n.subParser("hashCodeTags",(function(e,t,r){return e=r.converter._dispatch("hashCodeTags.before",e,t,r),e=n.helper.replaceRecursiveRegExp(e,(function(e,i,o,a){var s=o+n.subParser("encodeCode")(i,t,r)+a;return"¨C"+(r.gHtmlSpans.push(s)-1)+"C"}),"]*>","","gim"),r.converter._dispatch("hashCodeTags.after",e,t,r)})),n.subParser("hashElement",(function(e,t,n){return function(e,t){var r=t;return r=(r=(r=r.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),"\n\n¨K"+(n.gHtmlBlocks.push(r)-1)+"K\n\n"}})),n.subParser("hashHTMLBlocks",(function(e,t,r){e=r.converter._dispatch("hashHTMLBlocks.before",e,t,r);var i=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],o=function(e,t,n,i){var o=e;return-1!==n.search(/\bmarkdown\b/)&&(o=n+r.converter.makeHtml(t)+i),"\n\n¨K"+(r.gHtmlBlocks.push(o)-1)+"K\n\n"};t.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var a=0;34>a;++a)for(var s,l=RegExp("^ {0,3}(<"+i[a]+"\\b[^>]*>)","im"),u="<"+i[a]+"\\b[^>]*>",c="";-1!==(s=n.helper.regexIndexOf(e,l));){var f=n.helper.splitAtIndex(e,s),h=n.helper.replaceRecursiveRegExp(f[1],o,u,c,"im");if(h===f[1])break;e=f[0].concat(h)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(e,t,r)),e=(e=n.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(e,t,r)),r.converter._dispatch("hashHTMLBlocks.after",e,t,r)})),n.subParser("hashHTMLSpans",(function(e,t,n){function r(e){return"¨C"+(n.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=n.converter._dispatch("hashHTMLSpans.before",e,t,n)).replace(/<[^>]+?\/>/gi,(function(e){return r(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<[^>]+?>/gi,(function(e){return r(e)})),n.converter._dispatch("hashHTMLSpans.after",e,t,n)})),n.subParser("unhashHTMLSpans",(function(e,t,n){e=n.converter._dispatch("unhashHTMLSpans.before",e,t,n);for(var r=0;n.gHtmlSpans.length>r;++r){for(var i=n.gHtmlSpans[r],o=0;/¨C(\d+)C/.test(i);){var a=RegExp.$1;if(i=i.replace("¨C"+a+"C",n.gHtmlSpans[a]),10===o)break;++o}e=e.replace("¨C"+r+"C",i)}return n.converter._dispatch("unhashHTMLSpans.after",e,t,n)})),n.subParser("hashPreCodeTags",(function(e,t,r){return e=r.converter._dispatch("hashPreCodeTags.before",e,t,r),e=n.helper.replaceRecursiveRegExp(e,(function(e,i,o,a){var s=o+n.subParser("encodeCode")(i,t,r)+a;return"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:s})-1)+"G\n\n"}),"^ {0,3}]*>\\s*]*>","^ {0,3}\\s*
","gim"),r.converter._dispatch("hashPreCodeTags.after",e,t,r)})),n.subParser("headers",(function(e,t,r){e=r.converter._dispatch("headers.before",e,t,r);var i=isNaN(parseInt(t.headerLevelStart))?1:parseInt(t.headerLevelStart),o=t.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;function a(e){var i,o;if(t.customizedHeaderId){var a=e.match(/\{([^{]+?)}\s*$/);a&&a[1]&&(e=a[1])}return i=e,o=n.helper.isString(t.prefixHeaderId)?t.prefixHeaderId:!0===t.prefixHeaderId?"section-":"",t.rawPrefixHeaderId||(i=o+i),i=t.ghCompatibleHeaderId?i.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():t.rawHeaderId?i.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():i.replace(/[^\w]/g,"").toLowerCase(),t.rawPrefixHeaderId&&(i=o+i),r.hashLinkCounts[i]?i=i+"-"+r.hashLinkCounts[i]++:r.hashLinkCounts[i]=1,i}return e=(e=(e=e.replace(t.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,(function(e,o){var s=n.subParser("spanGamut")(o,t,r),l=t.noHeaderId?"":' id="'+a(o)+'"',u=""+s+"";return n.subParser("hashBlock")(u,t,r)}))).replace(o,(function(e,o){var s=n.subParser("spanGamut")(o,t,r),l=t.noHeaderId?"":' id="'+a(o)+'"',u=i+1,c=""+s+"";return n.subParser("hashBlock")(c,t,r)}))).replace(t.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm,(function(e,o,s){var l=s;t.customizedHeaderId&&(l=s.replace(/\s?\{([^{]+?)}\s*$/,""));var u=n.subParser("spanGamut")(l,t,r),c=t.noHeaderId?"":' id="'+a(s)+'"',f=i-1+o.length,h=""+u+"";return n.subParser("hashBlock")(h,t,r)})),r.converter._dispatch("headers.after",e,t,r)})),n.subParser("horizontalRule",(function(e,t,r){e=r.converter._dispatch("horizontalRule.before",e,t,r);var i=n.subParser("hashBlock")("
",t,r);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,i),r.converter._dispatch("horizontalRule.after",e,t,r)})),n.subParser("images",(function(e,t,r){function i(e,t,i,o,a,s,l,u){var c=r.gUrls,f=r.gTitles,h=r.gDimensions;if(i=i.toLowerCase(),u||(u=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)o="";else if(""===o||null===o){if(""!==i&&null!==i||(i=t.toLowerCase().replace(/ ?\n/g," ")),o="#"+i,n.helper.isUndefined(c[i]))return e;o=c[i],n.helper.isUndefined(f[i])||(u=f[i]),n.helper.isUndefined(h[i])||(a=h[i].width,s=h[i].height)}t=t.replace(/"/g,""").replace(n.helper.regexes.asteriskDashAndColon,n.helper.escapeCharactersCallback);var d=''+t+'"}return e=(e=(e=(e=(e=(e=r.converter._dispatch("images.before",e,t,r)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,n,r,o,a,s,l){return i(e,t,n,r=r.replace(/\s/g,""),o,a,s,l)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,i)).replace(/!\[([^\[\]]+)]()()()()()/g,i),r.converter._dispatch("images.after",e,t,r)})),n.subParser("italicsAndBold",(function(e,t,n){function r(e,t,n){return t+e+n}return e=n.converter._dispatch("italicsAndBold.before",e,t,n),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return r(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return r(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return r(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),n.converter._dispatch("italicsAndBold.after",e,t,n)})),n.subParser("lists",(function(e,t,r){function i(e,i){r.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,a=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return t.disableForced4SpacesIndentedSublists&&(o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(o,(function(e,i,o,s,l,u,c){c=c&&""!==c.trim();var f=n.subParser("outdent")(l,t,r),h="";return u&&t.tasklists&&(h=' class="task-list-item" style="list-style-type: none;"',f=f.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='"}))),f=f.replace(/^([-*+]|\d\.)[ \t]+[\S\n ]*/g,(function(e){return"¨A"+e})),i||f.search(/\n{2,}/)>-1?(f=n.subParser("githubCodeBlocks")(f,t,r),f=n.subParser("blockGamut")(f,t,r)):(f=(f=n.subParser("lists")(f,t,r)).replace(/\n$/,""),f=(f=n.subParser("hashHTMLBlocks")(f,t,r)).replace(/\n\n+/g,"\n\n"),f=a?n.subParser("paragraphs")(f,t,r):n.subParser("spanGamut")(f,t,r)),""+(f=f.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),r.gListLevel--,i&&(e=e.replace(/\s+$/,"")),e}function o(e,t){if("ol"===t){var n=e.match(/^ *(\d+)\./);if(n&&"1"!==n[1])return' start="'+n[1]+'"'}return""}function a(e,n,r){var a=t.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,s=t.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===n?a:s,u="";if(-1!==e.search(l))!function t(c){var f=c.search(l),h=o(e,n);-1!==f?(u+="\n\n<"+n+h+">\n"+i(c.slice(0,f),!!r)+"\n",l="ul"===(n="ul"===n?"ol":"ul")?a:s,t(c.slice(f))):u+="\n\n<"+n+h+">\n"+i(c,!!r)+"\n"}(e);else{var c=o(e,n);u="\n\n<"+n+c+">\n"+i(e,!!r)+"\n"}return u}return e=r.converter._dispatch("lists.before",e,t,r),e+="¨0",e=(e=r.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n){return a(t,n.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n,r){return a(n,r.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),r.converter._dispatch("lists.after",e,t,r)})),n.subParser("metadata",(function(e,t,n){if(!t.metadata)return e;function r(e){n.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,r){return n.metadata.parsed[t]=r,""}))}return e=(e=(e=(e=n.converter._dispatch("metadata.before",e,t,n)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,n){return r(n),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,i){return t&&(n.metadata.format=t),r(i),"¨M"}))).replace(/¨M/g,""),n.converter._dispatch("metadata.after",e,t,n)})),n.subParser("outdent",(function(e,t,n){return e=(e=(e=n.converter._dispatch("outdent.before",e,t,n)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),n.converter._dispatch("outdent.after",e,t,n)})),n.subParser("paragraphs",(function(e,t,r){for(var i=(e=(e=(e=r.converter._dispatch("paragraphs.before",e,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),o=[],a=i.length,s=0;a>s;s++){var l=i[s];0>l.search(/¨(K|G)(\d+)\1/g)?0>l.search(/\S/)||(l=(l=n.subParser("spanGamut")(l,t,r)).replace(/^([ \t]*)/g,"

"),o.push(l+="

")):o.push(l)}for(a=o.length,s=0;a>s;s++){for(var u="",c=o[s],f=!1;/¨(K|G)(\d+)\1/.test(c);){var h=RegExp.$2;u=(u="K"===RegExp.$1?r.gHtmlBlocks[h]:f?n.subParser("encodeCode")(r.ghCodeBlocks[h].text,t,r):r.ghCodeBlocks[h].codeblock).replace(/\$/g,"$$$$"),c=c.replace(/(\n\n)?¨(K|G)\d+\2(\n\n)?/,u),/^]*>\s*]*>/.test(c)&&(f=!0)}o[s]=c}return e=(e=(e=o.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",e,t,r)})),n.subParser("runExtension",(function(e,t,n,r){if(e.filter)t=e.filter(t,r.converter,n);else if(e.regex){var i=e.regex;i instanceof RegExp||(i=RegExp(i,"g")),t=t.replace(i,e.replace)}return t})),n.subParser("spanGamut",(function(e,t,r){return e=r.converter._dispatch("spanGamut.before",e,t,r),e=n.subParser("codeSpans")(e,t,r),e=n.subParser("escapeSpecialCharsWithinTagAttributes")(e,t,r),e=n.subParser("encodeBackslashEscapes")(e,t,r),e=n.subParser("images")(e,t,r),e=n.subParser("anchors")(e,t,r),e=n.subParser("autoLinks")(e,t,r),e=n.subParser("simplifiedAutoLinks")(e,t,r),e=n.subParser("emoji")(e,t,r),e=n.subParser("underline")(e,t,r),e=n.subParser("italicsAndBold")(e,t,r),e=n.subParser("strikethrough")(e,t,r),e=n.subParser("ellipsis")(e,t,r),e=n.subParser("hashHTMLSpans")(e,t,r),e=n.subParser("encodeAmpsAndAngles")(e,t,r),t.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),r.converter._dispatch("spanGamut.after",e,t,r)})),n.subParser("strikethrough",(function(e,t,r){return t.strikethrough&&(e=(e=r.converter._dispatch("strikethrough.before",e,t,r)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,i){return function(e){return t.simplifiedAutoLink&&(e=n.subParser("simplifiedAutoLinks")(e,t,r)),""+e+""}(i)})),e=r.converter._dispatch("strikethrough.after",e,t,r)),e})),n.subParser("stripLinkDefinitions",(function(e,t,r){var i=function(e,i,o,a,s,l,u){return i=i.toLowerCase(),r.gUrls[i]=o.match(/^data:.+?\/.+?;base64,/)?o.replace(/\s/g,""):n.subParser("encodeAmpsAndAngles")(o,t,r),l?l+u:(u&&(r.gTitles[i]=u.replace(/"|'/g,""")),t.parseImgDimensions&&a&&s&&(r.gDimensions[i]={width:a,height:s}),"")};return(e=(e=(e+="¨0").replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,i)).replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,i)).replace(/¨0/,"")})),n.subParser("tables",(function(e,t,r){if(!t.tables)return e;function i(e,i){return""+n.subParser("spanGamut")(e,t,r)+"\n"}function o(e){var o,a=e.split("\n");for(o=0;a.length>o;++o)/^ {0,3}\|/.test(a[o])&&(a[o]=a[o].replace(/^ {0,3}\|/,"")),/\|[ \t]*$/.test(a[o])&&(a[o]=a[o].replace(/\|[ \t]*$/,"")),a[o]=n.subParser("codeSpans")(a[o],t,r);var s,l,u,c,f=a[0].split("|").map((function(e){return e.trim()})),h=a[1].split("|").map((function(e){return e.trim()})),d=[],p=[],g=[],m=[];for(a.shift(),a.shift(),o=0;a.length>o;++o)""!==a[o].trim()&&d.push(a[o].split("|").map((function(e){return e.trim()})));if(h.length>f.length)return e;for(o=0;h.length>o;++o)g.push(/^:[ \t]*--*$/.test(s=h[o])?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(s)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(s)?' style="text-align:center;"':"");for(o=0;f.length>o;++o)n.helper.isUndefined(g[o])&&(g[o]=""),p.push((u=g[o],c=void 0,c="",l=(l=f[o]).trim(),(t.tablesHeaderId||t.tableHeaderId)&&(c=' id="'+l.replace(/ /g,"_").toLowerCase()+'"'),""+(l=n.subParser("spanGamut")(l,t,r))+"\n"));for(o=0;d.length>o;++o){for(var v=[],y=0;p.length>y;++y)n.helper.isUndefined(d[o][y]),v.push(i(d[o][y],g[y]));m.push(v)}return function(e,t){for(var n="\n\n\n",r=e.length,i=0;r>i;++i)n+=e[i];for(n+="\n\n\n",i=0;t.length>i;++i){n+="\n";for(var o=0;r>o;++o)n+=t[i][o];n+="\n"}return n+"\n
\n"}(p,m)}return e=(e=(e=(e=r.converter._dispatch("tables.before",e,t,r)).replace(/\\(\|)/g,n.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,o)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,o),r.converter._dispatch("tables.after",e,t,r)})),n.subParser("underline",(function(e,t,r){return t.underline?(e=r.converter._dispatch("underline.before",e,t,r),e=(e=t.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,n.helper.escapeCharactersCallback),e=r.converter._dispatch("underline.after",e,t,r)):e})),n.subParser("unescapeSpecialChars",(function(e,t,n){return e=(e=n.converter._dispatch("unescapeSpecialChars.before",e,t,n)).replace(/¨E(\d+)E/g,(function(e,t){return String.fromCharCode(parseInt(t))})),n.converter._dispatch("unescapeSpecialChars.after",e,t,n)})),n.subParser("makeMarkdown.blockquote",(function(e,t){var r="";if(e.hasChildNodes())for(var i=e.childNodes,o=i.length,a=0;o>a;++a){var s=n.subParser("makeMarkdown.node")(i[a],t);""!==s&&(r+=s)}return"> "+(r=r.trim()).split("\n").join("\n> ")})),n.subParser("makeMarkdown.codeBlock",(function(e,t){var n=e.getAttribute("language"),r=e.getAttribute("precodenum");return"```"+n+"\n"+t.preList[r]+"\n```"})),n.subParser("makeMarkdown.codeSpan",(function(e){return"`"+e.innerHTML+"`"})),n.subParser("makeMarkdown.emphasis",(function(e,t){var r="";if(e.hasChildNodes()){r+="*";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="*"}return r})),n.subParser("makeMarkdown.header",(function(e,t,r){var i=Array(r+1).join("#"),o="";if(e.hasChildNodes()){o=i+" ";for(var a=e.childNodes,s=a.length,l=0;s>l;++l)o+=n.subParser("makeMarkdown.node")(a[l],t)}return o})),n.subParser("makeMarkdown.hr",(function(){return"---"})),n.subParser("makeMarkdown.image",(function(e){var t="";return e.hasAttribute("src")&&(t+="!["+e.getAttribute("alt")+"](",t+="<"+e.getAttribute("src")+">",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),n.subParser("makeMarkdown.links",(function(e,t){var r="";if(e.hasChildNodes()&&e.hasAttribute("href")){var i=e.childNodes,o=i.length;r="[";for(var a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="](",r+="<"+e.getAttribute("href")+">",e.hasAttribute("title")&&(r+=' "'+e.getAttribute("title")+'"'),r+=")"}return r})),n.subParser("makeMarkdown.list",(function(e,t,r){var i="";if(!e.hasChildNodes())return"";for(var o=e.childNodes,a=o.length,s=e.getAttribute("start")||1,l=0;a>l;++l)void 0!==o[l].tagName&&"li"===o[l].tagName.toLowerCase()&&(i+=("ol"===r?s+". ":"- ")+n.subParser("makeMarkdown.listItem")(o[l],t),++s);return(i+="\n\x3c!-- --\x3e\n").trim()})),n.subParser("makeMarkdown.listItem",(function(e,t){for(var r="",i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);return/\n$/.test(r)?r=r.split("\n").join("\n ").replace(/^ {4}$/gm,"").replace(/\n\n+/g,"\n\n"):r+="\n",r})),n.subParser("makeMarkdown.node",(function(e,t,r){r=r||!1;var i="";if(3===e.nodeType)return n.subParser("makeMarkdown.txt")(e,t);if(8===e.nodeType)return"\x3c!--"+e.data+"--\x3e\n\n";if(1!==e.nodeType)return"";switch(e.tagName.toLowerCase()){case"h1":r||(i=n.subParser("makeMarkdown.header")(e,t,1)+"\n\n");break;case"h2":r||(i=n.subParser("makeMarkdown.header")(e,t,2)+"\n\n");break;case"h3":r||(i=n.subParser("makeMarkdown.header")(e,t,3)+"\n\n");break;case"h4":r||(i=n.subParser("makeMarkdown.header")(e,t,4)+"\n\n");break;case"h5":r||(i=n.subParser("makeMarkdown.header")(e,t,5)+"\n\n");break;case"h6":r||(i=n.subParser("makeMarkdown.header")(e,t,6)+"\n\n");break;case"p":r||(i=n.subParser("makeMarkdown.paragraph")(e,t)+"\n\n");break;case"blockquote":r||(i=n.subParser("makeMarkdown.blockquote")(e,t)+"\n\n");break;case"hr":r||(i=n.subParser("makeMarkdown.hr")(e,t)+"\n\n");break;case"ol":r||(i=n.subParser("makeMarkdown.list")(e,t,"ol")+"\n\n");break;case"ul":r||(i=n.subParser("makeMarkdown.list")(e,t,"ul")+"\n\n");break;case"precode":r||(i=n.subParser("makeMarkdown.codeBlock")(e,t)+"\n\n");break;case"pre":r||(i=n.subParser("makeMarkdown.pre")(e,t)+"\n\n");break;case"table":r||(i=n.subParser("makeMarkdown.table")(e,t)+"\n\n");break;case"code":i=n.subParser("makeMarkdown.codeSpan")(e,t);break;case"em":case"i":i=n.subParser("makeMarkdown.emphasis")(e,t);break;case"strong":case"b":i=n.subParser("makeMarkdown.strong")(e,t);break;case"del":i=n.subParser("makeMarkdown.strikethrough")(e,t);break;case"a":i=n.subParser("makeMarkdown.links")(e,t);break;case"img":i=n.subParser("makeMarkdown.image")(e,t);break;default:i=e.outerHTML+"\n\n"}return i})),n.subParser("makeMarkdown.paragraph",(function(e,t){var r="";if(e.hasChildNodes())for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);return r.trim()})),n.subParser("makeMarkdown.pre",(function(e,t){var n=e.getAttribute("prenum");return"
"+t.preList[n]+"
"})),n.subParser("makeMarkdown.strikethrough",(function(e,t){var r="";if(e.hasChildNodes()){r+="~~";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="~~"}return r})),n.subParser("makeMarkdown.strong",(function(e,t){var r="";if(e.hasChildNodes()){r+="**";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="**"}return r})),n.subParser("makeMarkdown.table",(function(e,t){var r,i,o="",a=[[],[]],s=e.querySelectorAll("thead>tr>th"),l=e.querySelectorAll("tbody>tr");for(r=0;s.length>r;++r){var u=n.subParser("makeMarkdown.tableCell")(s[r],t),c="---";if(s[r].hasAttribute("style"))switch(s[r].getAttribute("style").toLowerCase().replace(/\s/g,"")){case"text-align:left;":c=":---";break;case"text-align:right;":c="---:";break;case"text-align:center;":c=":---:"}a[0][r]=u.trim(),a[1][r]=c}for(r=0;l.length>r;++r){var f=a.push([])-1,h=l[r].getElementsByTagName("td");for(i=0;s.length>i;++i){var d=" ";void 0!==h[i]&&(d=n.subParser("makeMarkdown.tableCell")(h[i],t)),a[f].push(d)}}var p=3;for(r=0;a.length>r;++r)for(i=0;a[r].length>i;++i){var g=a[r][i].length;g>p&&(p=g)}for(r=0;a.length>r;++r){for(i=0;a[r].length>i;++i)a[r][i]=1===r?":"===a[r][i].slice(-1)?n.helper.padEnd(a[r][i].slice(-1),p-1,"-")+":":n.helper.padEnd(a[r][i],p,"-"):n.helper.padEnd(a[r][i],p);o+="| "+a[r].join(" | ")+" |\n"}return o.trim()})),n.subParser("makeMarkdown.tableCell",(function(e,t){var r="";if(!e.hasChildNodes())return"";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t,!0);return r.trim()})),n.subParser("makeMarkdown.txt",(function(e){var t=e.nodeValue;return t=(t=t.replace(/ +/g," ")).replace(/¨NBSP;/g," "),(t=(t=(t=(t=(t=(t=(t=(t=n.helper.unescapeHTMLEntities(t)).replace(/([*_~|`])/g,"\\$1")).replace(/^(\s*)>/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")})),e.exports?e.exports=n:this.showdown=n}).call(s)}));l.ConverterExtObj=function(e,t){var n=[],r=e;function i(e,t){if(t=t||null,l.helper.isString(e)&&(t=l.helper.stdExtName(e),e=l.asyncExtension(t),l.helper.isUndefined(e)))throw Error('Extension "'+t+'" could not be loaded. It was either not found or is not a valid aync extension.');if("function"==typeof e&&(e=e()),l.helper.isArray(e)||(e=[e]),l.validateExtension(e))for(var r=0;e.length>r;++r)switch(e[r].type){case"output":n.push(e[r])}}t&&l.helper.forEach(t,i),this.addAsyncExtension=function(e,t){i(e,t=t||null)},this.removeAsyncExtension=function(e){l.helper.isArray(e)||(e=[e]);for(var t=0;e.length>t;++t)for(var r=e[t],i=0;n.length>i;++i)n[i]===r&&n.splice(i,1)},this.getAsyncExtensions=function(){return n},this.getCurrFlavor=function(){return r},this.setCurrFlavor=function(e){r=e}},l.Converter.prototype.initConvertExtObj=function(t,n){return this.extObj=new l.ConverterExtObj(t,n),this.resetOptions=function(t){t=t||{};var n=l.getOptions(),r=this.getOptions();for(var i in n)n.hasOwnProperty(i)&&(r[i]=n[i]);if("object"===e(t))for(var o in t)t.hasOwnProperty(o)&&(r[o]=t[o])},this.setFlavor=function(e){var t=l.getFlavorOptions(e);if(!l.helper.isUndefined(t)){this.extObj.setCurrFlavor(e);var n=l.getDefaultOptions(!0);for(var r in n)n.hasOwnProperty(r)&&(this.getOptions()[r]=n[r]);for(var r in t)t.hasOwnProperty(r)&&(this.getOptions()[r]=t[r])}},this.getFlavor=function(){return this.extObj.getCurrFlavor()},this.addAsyncExtension=function(e,t){this.extObj.addAsyncExtension(e,t)},this.removeAsyncExtension=function(e){this.extObj.removeAsyncExtension(e)},this.removeExtension=function(e){l.helper.isArray(e)||(e=[e]);for(var t=this.getAllExtensions(),n=t.language,r=t.output,i=0;e.length>i;++i){for(var o=e[i],a=0;n.length>a;++a)n[a]===o&&n.splice(a,1);for(var s=0;r.length>s;++s)r[s]===o&&r.splice(s,1)}},this.asyncMakeHtml=function(e,t){var n=this.makeHtml(e),r=this.extObj.getAsyncExtensions();if(!r.length)return Promise.resolve(n);var i={outputs:r,converter:this},o=(new DOMParser).parseFromString(n,"text/html"),a=void 0!==o.body?o.body:o,s=this.getOptions(),l=Promise.resolve({wrapper:a,options:s,globals:i});return r.forEach((function(e){l=l.then((function(t){var n=e.filter(t);return n||t}))})),l.then((function(e){if("function"==typeof t&&t){var n=t(e);if(n instanceof Promise)return n.then((function(e){return e.wrapper.innerHTML}))}return e.wrapper.innerHTML}))},this},l.subParser("githubCodeBlocks",(function(e,t,n){return t.ghCodeBlocks?(e=n.converter._dispatch("githubCodeBlocks.before",e,t,n),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*?)(?:[ \t]*?)((?:\{[\S\t ]*\}|\[[\S\t ]*\])?)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,r,i,o,a){var s=t.omitExtraWLInCodeBlocks?"":"\n";return a=l.subParser("encodeCode")(a,t,n),a=(a=(a=l.subParser("detab")(a,t,n)).replace(/^\n+/g,"")).replace(/\n+$/g,""),a="
"+a+s+"
",a=l.subParser("hashBlock")(a,t,n),"\n\n¨G"+(n.ghCodeBlocks.push({text:e,codeblock:a})-1)+"G\n\n"}))).replace(/¨0/,""),n.converter._dispatch("githubCodeBlocks.after",e,t,n)):e})),l.subParser("tables",(function(e,t,n){if(!t.tables)return e;function r(e){return/^:[ \t]*--*$/.test(e)?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(e)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(e)?' style="text-align:center;"':""}function i(e,r,i,o,a){if(t.tablesMerge){var s=function(e,n,r,i){if(i){if(!t.tablesRowspan||"^^"!==i||!n)return;for(var o=n-1;o>=0;--o)if(e[o][r]){if("^^"!==e[o][r])return e[o][r]=e[o][r].replace(/rowspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,r){return t+' rowspan="'+(n-o+1)+'"'+r})),i;if(0===o)return e[o][r]='\n',i}else for(var a=r-1;a>=0;-a){if(e[o+1][a]&&"^^"!==e[o+1][a])return;if(e[o][a]){if(!e[o+1][a])return;return e[o][a]=e[o][a].replace(/rowspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,r){return t+' rowspan="'+(n-o+1)+'"'+r})),i}}}else if(r)for(a=r-1;a>=0;--a)if(e[n][a]){if("^^"!==e[n][a])return e[n][a]=e[n][a].replace(/colspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,n){return t+' colspan="'+(r-a+1)+'"'+n})),i;for(o=n-1;o>=0;--o){if(e[o][a+1])return;if("^^"!==e[o][a])return e[o][a]=e[o][a].replace(/colspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,n){return t+' colspan="'+(r-a+1)+'"'+n})),i}}else if(0===a)return e[n][a]='\n',i}(e,r,i,o);if(!l.helper.isUndefined(s))return s}return o=o.trim(),""+l.subParser("spanGamut")(o,t,n)+"\n"}function o(e,o){var a,s=e.split("\n");for(a=0;s.length>a;++a)/^ {0,3}\|/.test(s[a])&&(s[a]=s[a].replace(/^ {0,3}\|/,"")),/\|[ \t]*$/.test(s[a])&&(s[a]=s[a].replace(/\|[ \t]*$/,"")),s[a]=l.subParser("codeSpans")(s[a],t,n);var u,c,f,h=[],d=[],p=[],g=[],m=[];if(o)for(h=s[0].split("|").map((function(e){return e.trim()})),s.shift(),a=0;h.length>a;++a)g.push(r(h[a]));else{var v=s[0].split("|").map((function(e){return e.trim()}));if(h=s[1].split("|").map((function(e){return e.trim()})),s.shift(),s.shift(),h.length>v.length)return e;for(a=0;h.length>a;++a)g.push(r(h[a]));for(a=0;v.length>a;++a)l.helper.isUndefined(g[a])&&(g[a]=""),p.push((c=g[a],f=void 0,f="",u=(u=v[a]).trim(),(t.tablesHeaderId||t.tableHeaderId)&&(f=' id="'+u.replace(/ /g,"_").toLowerCase()+'"'),""+(u=l.subParser("spanGamut")(u,t,n))+"\n"))}for(a=0;s.length>a;++a)""!==s[a].trim()&&d.push(s[a].split("|").map((function(e){var t=e.trim();return""===t&&e.length>0?e:t})));for(a=0;d.length>a;++a){var y=[];m.push(y);for(var b=0;g.length>b;++b)l.helper.isUndefined(d[a][b])&&(d[a][b]=""),y.push(i(m,a,b,d[a][b],g[b]))}return function(e,n,r){var i="\n",o=n.length;if(e.length){i+="\n\n";for(var a=0;e.length>a;++a)i+=e[a];i+="\n\n"}for(i+="\n",a=0;r.length>a;++a){i+="\n";for(var s=0;o>s;++s)t.tablesMerge&&"^^"===r[a][s]||(i+=r[a][s]);i+="\n"}return i+"\n
\n"}(p,g,m)}function a(e){return o(e,!1)}function s(e){return o(e,!0)}return e=(e=(e=(e=n.converter._dispatch("tables.before",e,t,n)).replace(/\\(\|)/g,l.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,a)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,a),t.tablesHeaderless&&(e=(e=e.replace(/^ {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,s)).replace(/^ {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,s)),n.converter._dispatch("tables.after",e,t,n)}));var u="vanilla",c={github:{ghCompatibleHeaderId:!1,underline:!0,rawHeaderId:!0,tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0},ghost:{tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0},allOn:{tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0}},f={};l.asyncExtension=function(e,t){if(!l.helper.isString(e))throw Error("Extension 'name' must be a string");if(e=l.helper.stdExtName(e),l.helper.isUndefined(t)){if(!f.hasOwnProperty(e))throw Error("Async Extension named "+e+" is not registered!");return f[e]}"function"==typeof t&&(t=t()),l.helper.isArray(t)||(t=[t]),l.validateExtension(t)&&(f[e]=t)},l.removeAsyncExtension=function(e){e=l.helper.stdExtName(e),delete f[e]},l.resetAsyncExtensions=function(){f={}},l.removeExtension=function(e){e=l.helper.stdExtName(e),delete l.getAllExtensions[e]};var h=l.setFlavor,d=l.getFlavorOptions;function p(e,t,n,r){r&&(n=n.appendChild(e.ownerDocument.createElement("ul")));var i=n.appendChild(e.ownerDocument.createElement("li")).appendChild(e.ownerDocument.createElement("a"));return i.appendChild(e.ownerDocument.createTextNode(t.textContent)),i.href="#"+t.id,n}function g(e,t,n,r){if(n.headingLevel>=r){for(var i=null;n&&n.headingLevel>=r;)n=(i=n).parentNode,i.parentNode=null,i.toc=null,i.headingLevel=null,i.preLevel=null;return n&&g(e,t,n,r),n}if(r>n.preLevel)n.toc=p(e,t,n.toc,!0),n.preLevel=r;else{for(;n.preLevel>r;)n.toc=n.toc.parentNode,n.preLevel--;p(e,t,n.toc,!1)}return n.parentNode&&g(e,t,n.parentNode,r),n}function m(){var e=new DOMParser;return[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n;return function(e){for(var t=null,n=0,r=null,i=!1,o=e.querySelectorAll("p,h1,h2,h3,h4,h5,h6"),a=0;o.length>a;a++)if("[toc]"==(t=o[a]).textContent.trim().toLowerCase()){var s=e.ownerDocument.createElement("ul");s.className="showdown-toc",t.parentNode.replaceChild(s,t);var l={parentNode:null,toc:s,headingLevel:n,preLevel:0};if(r)if(n>r.headingLevel)l.parentNode=r;else{for(var u=r;u.headingLevel>n;)u=u.parentNode;u&&(l.parentNode=n===u.headingLevel?u.parentNode:u)}r=l,i=!0}else if(t.tagName)switch(t.tagName){case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":n=parseInt(t.tagName.substr(1)),r&&(r.preLevel||(r.preLevel=n),r=g(e,t,r,n))}for(;r;){var c=r;r=c.parentNode,c.parentNode=null,c.toc=null,c.headingLevel=null,c.preLevel=null}return i}(r)?r.innerHTML:t}}]}l.setFlavor=function(e){try{if(h(e),u=e,!c.hasOwnProperty(e))return}catch(t){if(!c.hasOwnProperty(e))return;l.resetOptions(),u=e}var t=c[e];for(var n in t)t.hasOwnProperty(n)&&(l.getOptions()[n]=t[n])},l.getFlavor=function(){return u},l.setFlavorOptions=function(e,t){t&&(c[e]=Object.assign(c[e]||{},t))},l.getFlavorOptions=function(e){var t=d(e);return l.helper.isUndefined(t)?c.hasOwnProperty(e)?c[e]:void 0:c.hasOwnProperty(e)?Object.assign(t,c[e]):t},Date.prototype.Format=function(e){var t={"M+":this.getMonth()+1,"d+":this.getDate(),"h+":this.getHours(),"H+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds(),"q+":Math.floor((this.getMonth()+3)/3),S:this.getMilliseconds()};for(var n in e||(e="yyyy-MM-dd hh:mm:ss.S"),/(y+)/.test(e)&&(e=e.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length))),t)RegExp("("+n+")").test(e)&&(e=e.replace(RegExp.$1,1==RegExp.$1.length?t[n]:("00"+t[n]).substr((""+t[n]).length)));return e};var v="jsdelivr",y="file:"===document.location.protocol?"https://":document.location.protocol+"//",b="",w="",_={local:{Viz:"../node_modules/viz.js/viz.js",VizRender:"../node_modules/viz.js/full.render.js",Raphael:"../node_modules/raphael/raphael.min.js",flowchart:"../dist/diagrams/flowchart/flowchart.min.js",mermaid:"../node_modules/mermaid/dist/mermaid.min.js",katex:"../node_modules/katex/dist/katex.min.js",katexCSS:"../node_modules/katex/dist/katex.min.css",renderMathInElement:"../node_modules/katex/dist/contrib/auto-render.js",railroad:"../node_modules/railroad-diagrams/railroad-diagrams.js",railroadCSS:"../node_modules/railroad-diagrams/railroad-diagrams.css",Snap:"../node_modules/snapsvg/dist/snap.svg-min.js",WebFont:"../node_modules/webfontloader/webfontloader.js",underscore:"../node_modules/underscore/underscore-min.js",sequence:"../node_modules/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:"../node_modules/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:"../node_modules/wavedrom/wavedrom.min.js",WaveDromSkin:{default:"../node_modules/wavedrom/skins/default.js",lowkey:"../node_modules/wavedrom/skins/lowkey.js",narrow:"../node_modules/wavedrom/skins/narrow.js"},vega:"../node_modules/vega/build/vega.min.js",vegaLite:"../node_modules/vega-lite/build/vega-lite.min.js",vegaEmbed:"../node_modules/vega-embed/build/vega-embed.min.js"},cdnjs:{Viz:y+"cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/viz.js",VizRender:y+"cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/full.render.js",Raphael:y+"cdnjs.cloudflare.com/ajax/libs/raphael/2.3.0/raphael.min.js",flowchart:y+"cdnjs.cloudflare.com/ajax/libs/flowchart/1.14.1/flowchart.min.js",mermaid:y+"cdnjs.cloudflare.com/ajax/libs/mermaid/8.8.2/mermaid.min.js",katex:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/katex.min.js",katexCSS:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/katex.min.css",renderMathInElement:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/contrib/auto-render.js",railroad:y+"cdn.jsdelivr.net/npm/railroad-diagrams",railroadCSS:y+"cdn.jsdelivr.net/npm/railroad-diagrams/railroad-diagrams.css",Snap:y+"cdnjs.cloudflare.com/ajax/libs/snap.svg/0.5.1/snap.svg-min.js",WebFont:y+"cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js",underscore:y+"cdnjs.cloudflare.com/ajax/libs/underscore.js/1.11.0/underscore-min.js",sequence:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/wavedrom.min.js",WaveDromSkin:{default:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/default.js",lowkey:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/lowkey.js",narrow:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/narrow.js"},vega:y+"cdnjs.cloudflare.com/ajax/libs/vega/5.15.0/vega.min.js",vegaLite:y+"cdnjs.cloudflare.com/ajax/libs/vega-lite/4.15.0/vega-lite.min.js",vegaEmbed:y+"cdnjs.cloudflare.com/ajax/libs/vega-embed/6.12.2/vega-embed.min.js"},jsdelivr:{Viz:y+"cdn.jsdelivr.net/npm/viz.js",VizRender:y+"cdn.jsdelivr.net/npm/viz.js/full.render.js",Raphael:y+"cdn.jsdelivr.net/npm/raphael/raphael.min.js",flowchart:y+"cdnjs.cloudflare.com/ajax/libs/flowchart/1.14.1/flowchart.min.js",mermaid:y+"cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js",katex:y+"cdn.jsdelivr.net/npm/katex/dist/katex.min.js",katexCSS:y+"cdn.jsdelivr.net/npm/katex/dist/katex.min.css",renderMathInElement:y+"cdn.jsdelivr.net/npm/katex/dist/contrib/auto-render.js",railroad:y+"cdn.jsdelivr.net/npm/railroad-diagrams",railroadCSS:y+"cdn.jsdelivr.net/npm/railroad-diagrams/railroad-diagrams.css",Snap:y+"cdn.jsdelivr.net/npm/snapsvg",WebFont:y+"cdn.jsdelivr.net/npm/webfontloader",underscore:y+"cdn.jsdelivr.net/npm/underscore",sequence:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:y+"cdn.jsdelivr.net/npm/wavedrom/wavedrom.min.js",WaveDromSkin:{default:y+"cdn.jsdelivr.net/npm/wavedrom/skins/default.js",lowkey:y+"cdn.jsdelivr.net/npm/wavedrom/skins/lowkey.js",narrow:y+"cdn.jsdelivr.net/npm/wavedrom/skins/narrow.js"},vega:y+"cdn.jsdelivr.net/npm/vega/build/vega.js",vegaLite:y+"cdn.jsdelivr.net/npm/vega-lite/build/vega-lite.js",vegaEmbed:y+"cdn.jsdelivr.net/npm/vega-embed/build/vega-embed.js"}};function x(t,n){if(_.hasOwnProperty(v)){var r=_[v],i="";if("object"===e(t)){var o=Object.keys(t)[0],a=t[o];r[o]&&"string"==typeof a&&a&&r[o][a]&&(i=r[o][a])}else r[t]&&(i=r[t]);i&&(n=i.substr(0,y.length)===y?i:"../dist/"===i.substr(0,8)?w+i:b+i)}return n}var k={interopDefault:function(t){return t&&"object"===e(t)&&"default"in t?t.default:t},loadScript:function(e,t){return new Promise((function(n,r){e&&"undefined"!=typeof document||r("Args is invaild!"),void 0===t&&(t=e),e=x(t,e);var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("script");o.src=e,o.onload=function(){n(t)},i.appendChild(o)}))},loadStyleSheet:function(e,t){if(!e||"undefined"==typeof document)return"";void 0===t&&(t=e),e=x(t,e);var n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("link");return r.rel="stylesheet",r.href=e,n.appendChild(r),"local"===v?"":e},renderCacheElement:function(e,t,n,r){"undefined"!=typeof window&&window.document&&(e=window.document);var i=e.createElement("div");if(i.id=t,i.className=n,i.style.display="none",e.body.appendChild(i),"function"==typeof r&&r){var o=r(i);if(o instanceof Promise)return o.then((function(t){e.body.removeChild(t),t.style.display=""})),i.outerHTML}return e.body.removeChild(i),i.style.display="",i.outerHTML},setCDN:function(e,t,n){e in _&&(v=e),"string"==typeof t&&t&&(b=t),"string"==typeof n&&n&&(w=n)},getCDN:function(){return v},getSrc:x};if("undefined"==typeof window)throw Error("The showdown viz extension can only be used in browser environment!");if(void 0===S)var S=window.Viz||void 0;var C=["circo","dot","neato","osage","twopi"];function E(){return!(void 0===S||!S||void 0===S.Module||void 0===S.render)}var A=!1;function L(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s="viz-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=s,function e(t,n){if(E()){var r=n.id,i=n.className,o=n.data,a=n.element,s=n.langattr,l="dot";if(s){var u=JSON.parse(s);u&&u.engine&&-1!=C.indexOf(u.engine)&&(l=u.engine)}(new S).renderString(o,{format:"svg",engine:l}).then((function(e){a.parentNode.outerHTML='
').concat(e,"
"),t(!0)}))}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:s,className:a,data:o,langattr:n})}))}function O(e){var t;return t=E(),"undefined"!=typeof window&&(t||A||(A=!0,k.loadScript("Viz").then((function(e){S=k.interopDefault(window[e])})),k.loadScript("VizRender"))),new Promise((function(t){var n=[];e.forEach((function(e){n.push(L(e))})),Promise.all(n).then((function(){t(!0)}))}))}function T(){return[{type:"output",filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.dot.language-dot");return!!n.length&&O(n).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown vega extension can only be used in browser environment!");if(void 0===M)var M=window.vegaEmbed||void 0;function j(){return!(void 0===M||!M)}var P=!1;function R(e,t,n){return new Promise((function(r){var i=e.dataset.lang,o=i?JSON.parse(i):null,a="";if(o){if("boolean"==typeof o.codeblock&&o.codeblock||"string"==typeof o.codeblock&&"true"===o.codeblock.toLowerCase())return r(!1);o.align&&("center"===o.align?a="diagram-center":"right"===o.align&&(a="diagram-right"))}var s=e.textContent.trim(),l=(e.classList.length>0?e.classList[0]:"")+(e.className&&a?" ":"")+a,u="vega-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=u,function e(t,n){if(j()){var r=n.id,i=n.data,o=n.options,a=n.element,s=a.ownerDocument;k.renderCacheElement(s,r,n.className,(function(e){return M(e,JSON.parse(i),o),new Promise((function(n){!function i(){e.childNodes.length>0?(a.parentNode.outerHTML=e.outerHTML,(a=s.getElementById(r))&&(a.style.display=""),t(!0),n(e)):setTimeout(i,50)}()}))}))}else setTimeout((function(){e(t,n)}),50)}(r,{element:e,id:u,className:l,data:s,options:t,isVegaLite:n})}))}function N(e,t,n){var r;return r=j(),"undefined"!=typeof window&&(r||P||(P=!0,k.loadScript("vega").then((function(){return k.loadScript("vegaLite")})).then((function(){return k.loadScript("vegaEmbed")})).then((function(e){M=k.interopDefault(window[e])})))),new Promise((function(r){var i=[];e.forEach((function(e){i.push(R(e,n,!1))})),t.forEach((function(e){i.push(R(e,n,!0))})),Promise.all(i).then((function(){r(!0)}))}))}function D(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({actions:{editor:!1},theme:"vox",tooltip:!1},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.vega.language-vega"),r=t.querySelectorAll("code.vega-lite.language-vega-lite");return!(!n.length&&!r.length)&&N(n,r,this.config).then((function(){return e}))}}]}function z(){var e=new DOMParser;return[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n;return function(e){for(var t=null,n=null,r=!1,i=e.querySelectorAll("p, li, h1, h2, h3, h4, h5, h6, div.paragraph"),o=0;i.length>o;o++)for(n=(t=i[o]).firstChild;n;){if(3===n.nodeType){var a=n.nodeValue.match(/^([\s\S]*?)([:-]-:)(?:[\s]?)([\s\S]*)$/);a&&(":-:"===a[2]?(n.nodeValue=a[3],t.className?t.className+=" align-center":t.className="align-center",r=!0):"--:"===a[2]&&(n.nodeValue=a[3],t.className?t.className+=" align-right":t.className="align-right",r=!0));break}n=n.nextSibling}return r}(r)?r.innerHTML:t}}]}var F=".",I={input:'"',tag:"mtext",output:"mbox",tex:null,ttype:10},B=[{input:"alpha",tag:"mi",output:"α",tex:null,ttype:0},{input:"beta",tag:"mi",output:"β",tex:null,ttype:0},{input:"chi",tag:"mi",output:"χ",tex:null,ttype:0},{input:"delta",tag:"mi",output:"δ",tex:null,ttype:0},{input:"Delta",tag:"mo",output:"Δ",tex:null,ttype:0},{input:"epsi",tag:"mi",output:"ε",tex:"epsilon",ttype:0},{input:"varepsilon",tag:"mi",output:"ɛ",tex:null,ttype:0},{input:"eta",tag:"mi",output:"η",tex:null,ttype:0},{input:"gamma",tag:"mi",output:"γ",tex:null,ttype:0},{input:"Gamma",tag:"mo",output:"Γ",tex:null,ttype:0},{input:"iota",tag:"mi",output:"ι",tex:null,ttype:0},{input:"kappa",tag:"mi",output:"κ",tex:null,ttype:0},{input:"lambda",tag:"mi",output:"λ",tex:null,ttype:0},{input:"Lambda",tag:"mo",output:"Λ",tex:null,ttype:0},{input:"lamda",tag:"mi",output:"lambda",tex:null,ttype:8},{input:"Lamda",tag:"mi",output:"Lambda",tex:null,ttype:8},{input:"mu",tag:"mi",output:"μ",tex:null,ttype:0},{input:"nu",tag:"mi",output:"ν",tex:null,ttype:0},{input:"omega",tag:"mi",output:"ω",tex:null,ttype:0},{input:"Omega",tag:"mo",output:"Ω",tex:null,ttype:0},{input:"phi",tag:"mi",output:"φ",tex:null,ttype:0},{input:"varphi",tag:"mi",output:"ϕ",tex:null,ttype:0},{input:"Phi",tag:"mo",output:"Φ",tex:null,ttype:0},{input:"pi",tag:"mi",output:"π",tex:null,ttype:0},{input:"Pi",tag:"mo",output:"Π",tex:null,ttype:0},{input:"psi",tag:"mi",output:"ψ",tex:null,ttype:0},{input:"Psi",tag:"mi",output:"Ψ",tex:null,ttype:0},{input:"rho",tag:"mi",output:"ρ",tex:null,ttype:0},{input:"sigma",tag:"mi",output:"σ",tex:null,ttype:0},{input:"Sigma",tag:"mo",output:"Σ",tex:null,ttype:0},{input:"tau",tag:"mi",output:"τ",tex:null,ttype:0},{input:"theta",tag:"mi",output:"θ",tex:null,ttype:0},{input:"vartheta",tag:"mi",output:"ϑ",tex:null,ttype:0},{input:"Theta",tag:"mo",output:"Θ",tex:null,ttype:0},{input:"upsilon",tag:"mi",output:"υ",tex:null,ttype:0},{input:"xi",tag:"mi",output:"ξ",tex:null,ttype:0},{input:"Xi",tag:"mo",output:"Ξ",tex:null,ttype:0},{input:"zeta",tag:"mi",output:"ζ",tex:null,ttype:0},{input:"*",tag:"mo",output:"⋅",tex:"cdot",ttype:0},{input:"**",tag:"mo",output:"∗",tex:"ast",ttype:0},{input:"***",tag:"mo",output:"⋆",tex:"star",ttype:0},{input:"//",tag:"mo",output:"/",tex:"/",ttype:0,val:!0,notexcopy:!0},{input:"\\\\",tag:"mo",output:"\\",tex:"backslash",ttype:0},{input:"setminus",tag:"mo",output:"\\",tex:null,ttype:0},{input:"xx",tag:"mo",output:"×",tex:"times",ttype:0},{input:"|><",tag:"mo",output:"⋉",tex:"ltimes",ttype:0},{input:"><|",tag:"mo",output:"⋊",tex:"rtimes",ttype:0},{input:"|><|",tag:"mo",output:"⋈",tex:"bowtie",ttype:0},{input:"-:",tag:"mo",output:"÷",tex:"div",ttype:0},{input:"divide",tag:"mo",output:"-:",tex:null,ttype:8},{input:"@",tag:"mo",output:"∘",tex:"circ",ttype:0},{input:"o+",tag:"mo",output:"⊕",tex:"oplus",ttype:0},{input:"ox",tag:"mo",output:"⊗",tex:"otimes",ttype:0},{input:"o.",tag:"mo",output:"⊙",tex:"odot",ttype:0},{input:"sum",tag:"mo",output:"∑",tex:null,ttype:7},{input:"prod",tag:"mo",output:"∏",tex:null,ttype:7},{input:"^^",tag:"mo",output:"∧",tex:"wedge",ttype:0},{input:"^^^",tag:"mo",output:"⋀",tex:"bigwedge",ttype:7},{input:"vv",tag:"mo",output:"∨",tex:"vee",ttype:0},{input:"vvv",tag:"mo",output:"⋁",tex:"bigvee",ttype:7},{input:"nn",tag:"mo",output:"∩",tex:"cap",ttype:0},{input:"nnn",tag:"mo",output:"⋂",tex:"bigcap",ttype:7},{input:"uu",tag:"mo",output:"∪",tex:"cup",ttype:0},{input:"uuu",tag:"mo",output:"⋃",tex:"bigcup",ttype:7},{input:"overset",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"underset",tag:"munder",output:"stackrel",tex:null,ttype:2},{input:"!=",tag:"mo",output:"≠",tex:"ne",ttype:0},{input:":=",tag:"mo",output:":=",tex:null,ttype:0},{input:"lt",tag:"mo",output:"<",tex:null,ttype:0},{input:"gt",tag:"mo",output:">",tex:null,ttype:0},{input:"<=",tag:"mo",output:"≤",tex:"le",ttype:0},{input:"lt=",tag:"mo",output:"≤",tex:"leq",ttype:0},{input:"gt=",tag:"mo",output:"≥",tex:"geq",ttype:0},{input:">=",tag:"mo",output:"≥",tex:"ge",ttype:0},{input:"-<",tag:"mo",output:"≺",tex:"prec",ttype:0},{input:"-lt",tag:"mo",output:"≺",tex:null,ttype:0},{input:">-",tag:"mo",output:"≻",tex:"succ",ttype:0},{input:"-<=",tag:"mo",output:"⪯",tex:"preceq",ttype:0},{input:">-=",tag:"mo",output:"⪰",tex:"succeq",ttype:0},{input:"in",tag:"mo",output:"∈",tex:null,ttype:0},{input:"!in",tag:"mo",output:"∉",tex:"notin",ttype:0},{input:"sub",tag:"mo",output:"⊂",tex:"subset",ttype:0},{input:"sup",tag:"mo",output:"⊃",tex:"supset",ttype:0},{input:"sube",tag:"mo",output:"⊆",tex:"subseteq",ttype:0},{input:"supe",tag:"mo",output:"⊇",tex:"supseteq",ttype:0},{input:"-=",tag:"mo",output:"≡",tex:"equiv",ttype:0},{input:"~=",tag:"mo",output:"≅",tex:"stackrel{\\sim}{=}",notexcopy:!0,ttype:0},{input:"cong",tag:"mo",output:"~=",tex:null,ttype:8},{input:"~~",tag:"mo",output:"≈",tex:"approx",ttype:0},{input:"prop",tag:"mo",output:"∝",tex:"propto",ttype:0},{input:"and",tag:"mtext",output:"and",tex:null,ttype:6},{input:"or",tag:"mtext",output:"or",tex:null,ttype:6},{input:"not",tag:"mo",output:"¬",tex:"neg",ttype:0},{input:"=>",tag:"mo",output:"⇒",tex:"Rightarrow",ttype:0},{input:"implies",tag:"mo",output:"=>",tex:null,ttype:8},{input:"if",tag:"mo",output:"if",tex:null,ttype:6},{input:"<=>",tag:"mo",output:"⇔",tex:"Leftrightarrow",ttype:0},{input:"iff",tag:"mo",output:"<=>",tex:null,ttype:8},{input:"AA",tag:"mo",output:"∀",tex:"forall",ttype:0},{input:"EE",tag:"mo",output:"∃",tex:"exists",ttype:0},{input:"_|_",tag:"mo",output:"⊥",tex:"bot",ttype:0},{input:"TT",tag:"mo",output:"⊤",tex:"top",ttype:0},{input:"|--",tag:"mo",output:"⊢",tex:"vdash",ttype:0},{input:"|==",tag:"mo",output:"⊨",tex:"models",ttype:0},{input:"(",tag:"mo",output:"(",tex:null,ttype:4,val:!0},{input:")",tag:"mo",output:")",tex:null,ttype:5,val:!0},{input:"[",tag:"mo",output:"[",tex:null,ttype:4,val:!0},{input:"]",tag:"mo",output:"]",tex:null,ttype:5,val:!0},{input:"left(",tag:"mo",output:"(",tex:"(",notexcopy:!0,ttype:4,val:!0},{input:"right)",tag:"mo",output:")",tex:")",notexcopy:!0,ttype:5,val:!0},{input:"left[",tag:"mo",output:"[",tex:"[",notexcopy:!0,ttype:4,val:!0},{input:"right]",tag:"mo",output:"]",tex:"]",notexcopy:!0,ttype:5,val:!0},{input:"{",tag:"mo",output:"{",tex:"lbrace",ttype:4},{input:"}",tag:"mo",output:"}",tex:"rbrace",ttype:5},{input:"|",tag:"mo",output:"|",tex:null,ttype:9,val:!0},{input:"|:",tag:"mo",output:"|",tex:"|",ttype:4,notexcopy:!0,val:!0},{input:":|",tag:"mo",output:"|",tex:"|",ttype:5,notexcopy:!0,val:!0},{input:":|:",tag:"mo",output:"|",tex:"|",ttype:0,notexcopy:!0,val:!0},{input:"(:",tag:"mo",output:"〈",tex:"langle",ttype:4},{input:":)",tag:"mo",output:"〉",tex:"rangle",ttype:5},{input:"<<",tag:"mo",output:"〈",tex:"langle",ttype:4},{input:">>",tag:"mo",output:"〉",tex:"rangle",ttype:5},{input:"{:",tag:"mo",output:"{:",tex:null,ttype:4,invisible:!0},{input:":}",tag:"mo",output:":}",tex:null,ttype:5,invisible:!0},{input:"int",tag:"mo",output:"∫",tex:null,ttype:0},{input:"dx",tag:"mi",output:"{:d x:}",tex:null,ttype:8},{input:"dy",tag:"mi",output:"{:d y:}",tex:null,ttype:8},{input:"dz",tag:"mi",output:"{:d z:}",tex:null,ttype:8},{input:"dt",tag:"mi",output:"{:d t:}",tex:null,ttype:8},{input:"oint",tag:"mo",output:"∮",tex:null,ttype:0},{input:"del",tag:"mo",output:"∂",tex:"partial",ttype:0},{input:"grad",tag:"mo",output:"∇",tex:"nabla",ttype:0},{input:"+-",tag:"mo",output:"±",tex:"pm",ttype:0},{input:"O/",tag:"mo",output:"∅",tex:"emptyset",ttype:0},{input:"oo",tag:"mo",output:"∞",tex:"infty",ttype:0},{input:"aleph",tag:"mo",output:"ℵ",tex:null,ttype:0},{input:"...",tag:"mo",output:"...",tex:"ldots",ttype:0},{input:":.",tag:"mo",output:"∴",tex:"therefore",ttype:0},{input:":'",tag:"mo",output:"∵",tex:"because",ttype:0},{input:"/_",tag:"mo",output:"∠",tex:"angle",ttype:0},{input:"/_\\",tag:"mo",output:"△",tex:"triangle",ttype:0},{input:"\\ ",tag:"mo",output:" ",tex:null,ttype:0,val:!0},{input:"frown",tag:"mo",output:"⌢",tex:null,ttype:0},{input:"%",tag:"mo",output:"%",tex:"%",ttype:0,notexcopy:!0},{input:"quad",tag:"mo",output:"  ",tex:null,ttype:0},{input:"qquad",tag:"mo",output:"    ",tex:null,ttype:0},{input:"cdots",tag:"mo",output:"⋯",tex:null,ttype:0},{input:"vdots",tag:"mo",output:"⋮",tex:null,ttype:0},{input:"ddots",tag:"mo",output:"⋱",tex:null,ttype:0},{input:"diamond",tag:"mo",output:"⋄",tex:null,ttype:0},{input:"square",tag:"mo",output:"□",tex:"boxempty",ttype:0},{input:"|__",tag:"mo",output:"⌊",tex:"lfloor",ttype:0},{input:"__|",tag:"mo",output:"⌋",tex:"rfloor",ttype:0},{input:"|~",tag:"mo",output:"⌈",tex:"lceil",ttype:0},{input:"lceiling",tag:"mo",output:"|~",tex:null,ttype:8},{input:"~|",tag:"mo",output:"⌉",tex:"rceil",ttype:0},{input:"rceiling",tag:"mo",output:"~|",tex:null,ttype:8},{input:"CC",tag:"mo",output:"ℂ",tex:"mathbb{C}",ttype:0,notexcopy:!0},{input:"NN",tag:"mo",output:"ℕ",tex:"mathbb{N}",ttype:0,notexcopy:!0},{input:"QQ",tag:"mo",output:"ℚ",tex:"mathbb{Q}",ttype:0,notexcopy:!0},{input:"RR",tag:"mo",output:"ℝ",tex:"mathbb{R}",ttype:0,notexcopy:!0},{input:"ZZ",tag:"mo",output:"ℤ",tex:"mathbb{Z}",ttype:0,notexcopy:!0},{input:"f",tag:"mi",output:"f",tex:null,ttype:1,func:!0,val:!0},{input:"g",tag:"mi",output:"g",tex:null,ttype:1,func:!0,val:!0},{input:"''",tag:"mo",output:"''",tex:null,val:!0},{input:"'''",tag:"mo",output:"'''",tex:null,val:!0},{input:"''''",tag:"mo",output:"''''",tex:null,val:!0},{input:"lim",tag:"mo",output:"lim",tex:null,ttype:7},{input:"Lim",tag:"mo",output:"Lim",tex:null,ttype:7},{input:"sin",tag:"mo",output:"sin",tex:null,ttype:1,func:!0},{input:"cos",tag:"mo",output:"cos",tex:null,ttype:1,func:!0},{input:"tan",tag:"mo",output:"tan",tex:null,ttype:1,func:!0},{input:"arcsin",tag:"mo",output:"arcsin",tex:null,ttype:1,func:!0},{input:"arccos",tag:"mo",output:"arccos",tex:null,ttype:1,func:!0},{input:"arctan",tag:"mo",output:"arctan",tex:null,ttype:1,func:!0},{input:"sinh",tag:"mo",output:"sinh",tex:null,ttype:1,func:!0},{input:"cosh",tag:"mo",output:"cosh",tex:null,ttype:1,func:!0},{input:"tanh",tag:"mo",output:"tanh",tex:null,ttype:1,func:!0},{input:"cot",tag:"mo",output:"cot",tex:null,ttype:1,func:!0},{input:"coth",tag:"mo",output:"coth",tex:null,ttype:1,func:!0},{input:"sech",tag:"mo",output:"sech",tex:null,ttype:1,func:!0},{input:"csch",tag:"mo",output:"csch",tex:null,ttype:1,func:!0},{input:"sec",tag:"mo",output:"sec",tex:null,ttype:1,func:!0},{input:"csc",tag:"mo",output:"csc",tex:null,ttype:1,func:!0},{input:"log",tag:"mo",output:"log",tex:null,ttype:1,func:!0},{input:"ln",tag:"mo",output:"ln",tex:null,ttype:1,func:!0},{input:"abs",tag:"mo",output:"abs",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["|","|"]},{input:"norm",tag:"mo",output:"norm",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\|","\\|"]},{input:"floor",tag:"mo",output:"floor",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\lfloor","\\rfloor"]},{input:"ceil",tag:"mo",output:"ceil",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\lceil","\\rceil"]},{input:"Sin",tag:"mo",output:"Sin",tex:null,ttype:1,func:!0},{input:"Cos",tag:"mo",output:"Cos",tex:null,ttype:1,func:!0},{input:"Tan",tag:"mo",output:"Tan",tex:null,ttype:1,func:!0},{input:"Arcsin",tag:"mo",output:"Arcsin",tex:null,ttype:1,func:!0},{input:"Arccos",tag:"mo",output:"Arccos",tex:null,ttype:1,func:!0},{input:"Arctan",tag:"mo",output:"Arctan",tex:null,ttype:1,func:!0},{input:"Sinh",tag:"mo",output:"Sinh",tex:null,ttype:1,func:!0},{input:"Cosh",tag:"mo",output:"Cosh",tex:null,ttype:1,func:!0},{input:"Tanh",tag:"mo",output:"Tanh",tex:null,ttype:1,func:!0},{input:"Cot",tag:"mo",output:"Cot",tex:null,ttype:1,func:!0},{input:"Sec",tag:"mo",output:"Sec",tex:null,ttype:1,func:!0},{input:"Csc",tag:"mo",output:"Csc",tex:null,ttype:1,func:!0},{input:"Log",tag:"mo",output:"Log",tex:null,ttype:1,func:!0},{input:"Ln",tag:"mo",output:"Ln",tex:null,ttype:1,func:!0},{input:"Abs",tag:"mo",output:"abs",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["|","|"]},{input:"det",tag:"mo",output:"det",tex:null,ttype:1,func:!0},{input:"exp",tag:"mo",output:"exp",tex:null,ttype:1,func:!0},{input:"dim",tag:"mo",output:"dim",tex:null,ttype:0},{input:"mod",tag:"mo",output:"mod",tex:"text{mod}",ttype:0,notexcopy:!0},{input:"gcd",tag:"mo",output:"gcd",tex:null,ttype:1,func:!0},{input:"lcm",tag:"mo",output:"lcm",tex:"text{lcm}",ttype:1,func:!0,notexcopy:!0},{input:"lub",tag:"mo",output:"lub",tex:null,ttype:0},{input:"glb",tag:"mo",output:"glb",tex:null,ttype:0},{input:"min",tag:"mo",output:"min",tex:null,ttype:7},{input:"max",tag:"mo",output:"max",tex:null,ttype:7},{input:"uarr",tag:"mo",output:"↑",tex:"uparrow",ttype:0},{input:"darr",tag:"mo",output:"↓",tex:"downarrow",ttype:0},{input:"rarr",tag:"mo",output:"→",tex:"rightarrow",ttype:0},{input:"->",tag:"mo",output:"→",tex:"to",ttype:0},{input:">->",tag:"mo",output:"↣",tex:"rightarrowtail",ttype:0},{input:"->>",tag:"mo",output:"↠",tex:"twoheadrightarrow",ttype:0},{input:">->>",tag:"mo",output:"⤖",tex:"twoheadrightarrowtail",ttype:0},{input:"|->",tag:"mo",output:"↦",tex:"mapsto",ttype:0},{input:"larr",tag:"mo",output:"←",tex:"leftarrow",ttype:0},{input:"harr",tag:"mo",output:"↔",tex:"leftrightarrow",ttype:0},{input:"rArr",tag:"mo",output:"⇒",tex:"Rightarrow",ttype:0},{input:"lArr",tag:"mo",output:"⇐",tex:"Leftarrow",ttype:0},{input:"hArr",tag:"mo",output:"⇔",tex:"Leftrightarrow",ttype:0},{input:"sqrt",tag:"msqrt",output:"sqrt",tex:null,ttype:1},{input:"root",tag:"mroot",output:"root",tex:null,ttype:2},{input:"frac",tag:"mfrac",output:"/",tex:null,ttype:2},{input:"/",tag:"mfrac",output:"/",tex:null,ttype:3},{input:"stackrel",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"_",tag:"msub",output:"_",tex:null,ttype:3},{input:"^",tag:"msup",output:"^",tex:null,ttype:3},{input:"cancel",tag:"menclose",output:"cancel",tex:null,ttype:1},{input:"Sqrt",tag:"msqrt",output:"sqrt",tex:null,ttype:1},{input:"hat",tag:"mover",output:"^",tex:null,ttype:1,acc:!0},{input:"bar",tag:"mover",output:"¯",tex:"overline",ttype:1,acc:!0},{input:"vec",tag:"mover",output:"→",tex:null,ttype:1,acc:!0},{input:"tilde",tag:"mover",output:"~",tex:null,ttype:1,acc:!0},{input:"dot",tag:"mover",output:".",tex:null,ttype:1,acc:!0},{input:"ddot",tag:"mover",output:"..",tex:null,ttype:1,acc:!0},{input:"overarc",tag:"mover",output:"⏜",tex:"stackrel{\\frown}",notexcopy:!0,ttype:1,acc:!0},{input:"overparen",tag:"mover",output:"⏜",tex:"stackrel{\\frown}",notexcopy:!0,ttype:1,acc:!0},{input:"ul",tag:"munder",output:"̲",tex:"underline",ttype:1,acc:!0},{input:"ubrace",tag:"munder",output:"⏟",tex:"underbrace",ttype:1,acc:!0},{input:"obrace",tag:"mover",output:"⏞",tex:"overbrace",ttype:1,acc:!0},{input:"text",tag:"mtext",output:"text",tex:null,ttype:10},{input:"mbox",tag:"mtext",output:"mbox",tex:null,ttype:10},I,{input:"color",tag:"mstyle",ttype:2},{input:"bb",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"bb",tex:"mathbf",ttype:1,notexcopy:!0},{input:"mathbf",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"mathbf",tex:null,ttype:1},{input:"sf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"sf",tex:"mathsf",ttype:1,notexcopy:!0},{input:"mathsf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"mathsf",tex:null,ttype:1},{input:"bbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"bbb",tex:"mathbb",ttype:1,notexcopy:!0},{input:"mathbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"mathbb",tex:null,ttype:1},{input:"cc",tag:"mstyle",atname:"mathvariant",atval:"script",output:"cc",tex:"mathcal",ttype:1,notexcopy:!0},{input:"mathcal",tag:"mstyle",atname:"mathvariant",atval:"script",output:"mathcal",tex:null,ttype:1},{input:"tt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"tt",tex:"mathtt",ttype:1,notexcopy:!0},{input:"mathtt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"mathtt",tex:null,ttype:1},{input:"fr",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"fr",tex:"mathfrak",ttype:1,notexcopy:!0},{input:"mathfrak",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"mathfrak",tex:null,ttype:1}];function U(e,t){return e.input>t.input?1:-1}var H,$,W,q=[];function Z(e,t){var n;n="\\"==e.charAt(t)&&"\\"!=e.charAt(t+1)&&" "!=e.charAt(t+1)?e.slice(t+1):e.slice(t);for(var r=0;n.length>r&&32>=n.charCodeAt(r);r+=1);return n.slice(r)}function V(e,t,n){if(0==n){var r,i;for(n=-1,r=e.length;r>n+1;)t>e[i=n+r>>1]?n=i:r=i;return r}for(var o=n;e.length>o&&t>e[o];o++);return o}function G(e){for(var t,n,r,i=0,o="",a=!0,s=1;e.length>=s&&a;s++)n=e.slice(0,s),i=V(q,n,i),q.length>i&&e.slice(0,q[i].length)==q[i]&&(t=i,s=(o=q[i]).length),a=q.length>i&&e.slice(0,q[i].length)>=q[i];if($=W,""!=o)return W=B[t].ttype,B[t];W=0,i=1,n=e.slice(0,1);for(var l=!0;n>="0"&&"9">=n&&e.length>=i;)n=e.slice(i,i+1),i++;if(n==F&&(n=e.slice(i,i+1))>="0"&&"9">=n)for(l=!1,i++;n>="0"&&"9">=n&&e.length>=i;)n=e.slice(i,i+1),i++;return l&&i>1||i>2?(n=e.slice(0,i-1),r="mn"):(i=2,r=("A">(n=e.slice(0,1))||n>"Z")&&("a">n||n>"z")?"mo":"mi"),"-"==n&&3==$?(W=3,{input:n,tag:r,output:n,ttype:1,func:!0,val:!0}):{input:n,tag:r,output:n,ttype:0,val:!0}}function Y(e){var t;if("{"==e.charAt(0)&&"}"==e.charAt(e.length-1)){var n=0;"\\left"==(t=e.substr(1,5))?"("==(t=e.charAt(6))||"["==t||"{"==t?n=7:"\\lbrace"==(t=e.substr(6,7))&&(n=13):"("!=(t=e.charAt(1))&&"["!=t||(n=2),n>0&&("\\right)}"==(t=e.substr(e.length-8))||"\\right]}"==t||"\\right.}"==t?e=(e="{"+e.substr(n)).substr(0,e.length-8)+"}":"\\rbrace}"==t&&(e=(e="{"+e.substr(n)).substr(0,e.length-14)+"}"))}return e}function K(e){var t;return t="boolean"==typeof e.val&&e.val?"":"\\",null==e.tex?t+e.input:t+e.tex}function X(e){var t,n,r,i,o="";if(null==(t=G(e=Z(e,0)))||5==t.ttype&&H>0)return[null,e];switch(8==t.ttype&&(t=G(e=t.output+Z(e,t.input.length))),t.ttype){case 7:case 0:e=Z(e,t.input.length);var a=K(t);return"\\"==a.charAt(0)||"mo"==t.tag?[a,e]:["{"+a+"}",e];case 4:H++,r=Q(e=Z(e,t.input.length),!0),H--;var s=0;return"\\right"==r[0].substr(0,6)&&(")"==(u=r[0].charAt(6))||"]"==u||"}"==u?s=6:"."==u?s=7:"\\rbrace"==(u=r[0].substr(6,7))&&(s=13)),s>0?(r[0]=r[0].substr(s),n="boolean"==typeof t.invisible&&t.invisible?"{"+r[0]+"}":"{"+K(t)+r[0]+"}"):n="boolean"==typeof t.invisible&&t.invisible?"{\\left."+r[0]+"}":"{\\left"+K(t)+r[0]+"}",[n,r[1]];case 10:return t!=I&&(e=Z(e,t.input.length)),-1==(i="{"==e.charAt(0)?e.indexOf("}"):"("==e.charAt(0)?e.indexOf(")"):"["==e.charAt(0)?e.indexOf("]"):t==I?e.slice(1).indexOf('"')+1:0)&&(i=e.length)," "==(u=e.slice(1,i)).charAt(0)&&(o="\\ "),o+="\\text{"+u+"}"," "==u.charAt(u.length-1)&&(o+="\\ "),[o,e=Z(e,i+1)];case 1:return null==(r=X(e=Z(e,t.input.length)))[0]?["{"+K(t)+"}",e]:"boolean"==typeof t.func&&t.func?"^"==(u=e.charAt(0))||"_"==u||"/"==u||"|"==u||","==u||1==t.input.length&&t.input.match(/\w/)&&"("!=u?["{"+K(t)+"}",e]:[n="{"+K(t)+"{"+r[0]+"}}",r[1]]:(r[0]=Y(r[0]),"sqrt"==t.input?["\\sqrt{"+r[0]+"}",r[1]]:"cancel"==t.input?["\\cancel{"+r[0]+"}",r[1]]:void 0!==t.rewriteleftright?["{\\left"+t.rewriteleftright[0]+r[0]+"\\right"+t.rewriteleftright[1]+"}",r[1]]:"boolean"==typeof t.acc&&t.acc?[K(t)+"{"+r[0]+"}",r[1]]:["{"+K(t)+"{"+r[0]+"}}",r[1]]);case 2:if(null==(r=X(e=Z(e,t.input.length)))[0])return["{"+K(t)+"}",e];r[0]=Y(r[0]);var l=X(r[1]);return null==l[0]?["{"+K(t)+"}",e]:(l[0]=Y(l[0]),[o="color"==t.input?"{\\color{"+r[0].replace(/[\{\}]/g,"")+"}"+l[0]+"}":"root"==t.input?"{\\sqrt["+r[0]+"]{"+l[0]+"}}":"{"+K(t)+"{"+r[0]+"}{"+l[0]+"}}",l[1]]);case 3:return e=Z(e,t.input.length),[t.output,e];case 6:return e=Z(e,t.input.length),["{\\quad\\text{"+t.input+"}\\quad}",e];case 9:H++,r=Q(e=Z(e,t.input.length),!1),H--;var u="";return"|"==(u=r[0].charAt(r[0].length-1))&&","!==e.charAt(0)?[n="{\\left|"+r[0]+"}",r[1]]:[n="{\\mid}",e];default:return e=Z(e,t.input.length),["{"+K(t)+"}",e]}}function J(e){var t,n,r,i,o;if(n=G(e=Z(e,0)),i=(o=X(e))[0],3==(t=G(e=o[1])).ttype&&"/"!=t.input){if((o=X(e=Z(e,t.input.length)))[0]=null==o[0]?"{}":Y(o[0]),e=o[1],"_"==t.input)if("^"==(r=G(e)).input){var a=X(e=Z(e,r.input.length));a[0]=Y(a[0]),e=a[1],i="{"+i,i+="_{"+o[0]+"}",i+="^{"+a[0]+"}",i+="}"}else i+="_{"+o[0]+"}";else i=i+"^{"+o[0]+"}";void 0!==n.func&&n.func&&(3==(r=G(e)).ttype||5==r.ttype||1>=n.input.length&&4!=r.ttype||(i="{"+i+(o=J(e))[0]+"}",e=o[1]))}return[i,e]}function Q(e,t){var n,r,i,o,a="",s=!1;do{r=(i=J(e=Z(e,0)))[0],3==(n=G(e=i[1])).ttype&&"/"==n.input?((i=J(e=Z(e,n.input.length)))[0]=null==i[0]?"{}":Y(i[0]),e=i[1],r="\\frac{"+(r=Y(r))+"}",a+=r+="{"+i[0]+"}",n=G(e)):null!=r&&(a+=r)}while((5!=n.ttype&&(9!=n.ttype||t)||0==H)&&null!=n&&""!=n.output);if(5==n.ttype||9==n.ttype){var l=a.length;if(l>2&&"{"==a.charAt(0)&&a.indexOf(",")>0){var u=a.charAt(l-2);if(")"==u||"]"==u){var c=a.charAt(6);if("("==c&&")"==u&&"}"!=n.output||"["==c&&"]"==u){var f="",h=[];h.push(0);var d=!0,p=0,g=[];g[0]=[0];var m=0,v=0,y="";for(o=1;l-1>o;o++)a.charAt(o)==c&&p++,a.charAt(o)==u&&0==--p&&","==a.charAt(o+2)&&"{"==a.charAt(o+3)&&(h.push(o+2),g[m=o+2]=[o+2]),"["!=a.charAt(o)&&"("!=a.charAt(o)&&"{"!=a.charAt(o)||v++,"]"!=a.charAt(o)&&")"!=a.charAt(o)&&"}"!=a.charAt(o)||v--,","==a.charAt(o)&&1==v&&g[m].push(o),0>v&&(m==o+1?o++:d=!1);h.push(l);var b=-1;if(0==p&&h.length>0&&d)for(o=0;h.length-1>o;o++){if(o>0&&(f+="\\\\"),0==o)if(1==g[h[o]].length)var w=[a.substr(h[o]+7,h[o+1]-h[o]-15)];else{w=[a.substring(h[o]+7,g[h[o]][1])];for(var _=2;g[h[o]].length>_;_++)w.push(a.substring(g[h[o]][_-1]+1,g[h[o]][_]));w.push(a.substring(g[h[o]][g[h[o]].length-1]+1,h[o+1]-8))}else if(1==g[h[o]].length)w=[a.substr(h[o]+8,h[o+1]-h[o]-16)];else{for(w=[a.substring(h[o]+8,g[h[o]][1])],_=2;g[h[o]].length>_;_++)w.push(a.substring(g[h[o]][_-1]+1,g[h[o]][_]));w.push(a.substring(g[h[o]][g[h[o]].length-1]+1,h[o+1]-8))}for(_=w.length-1;_>=0;_--)"{\\mid}"==w[_]?(0==o&&(y="|"+y),w.splice(_,1)):0==o&&(y="c"+y);b>0&&w.length!=b?d=!1:-1==b&&(b=w.length),f+=w.join("&")}f="\\begin{array}{"+y+"} "+f+"\\end{array}",d&&(a=f)}}}e=Z(e,n.input.length),"boolean"==typeof n.invisible&&n.invisible?(a+="\\right.",s=!0):(a+=r="\\right"+K(n),s=!0)}return H>0&&!s&&(a+="\\right."),[a,e]}function ee(e){return H=0,null==(e=(e=(e=e.replace(/( |\u00a0| )/g,"")).replace(/>/g,">")).replace(/</g,"<")).match(/\S/)?"":Q(e.replace(/^\s+/g,""),!1)[0]}if(function(){var e,t=B.length;for(e=0;t>e;e++)!B[e].tex||"boolean"==typeof B[e].notexcopy&&B[e].notexcopy||B.push({input:B[e].tex,tag:B[e].tag,output:B[e].output,ttype:B[e].ttype,acc:B[e].acc||!1});!function(){var e;for(B.sort(U),e=0;B.length>e;e++)q[e]=B[e].input}()}(),"undefined"==typeof window)throw Error("The showdown katex extension can only be used in browser environment!");if(void 0===te)var te=window.katex||void 0;if("undefined"==typeof renderMathInElement)var ne=window.renderMathInElement||void 0;var re=0;function ie(){return!(void 0===ne||!ne||void 0===te||!te)}var oe=!1;function ae(e){var t=ie();return"undefined"==typeof window||t||oe?("function"==typeof e&&e&&e(ne),t):(oe=!0,k.loadStyleSheet("katexCSS"),k.loadScript("katex").then((function(e){return te=k.interopDefault(window[e]),k.loadScript("renderMathInElement")})).then((function(t){ne=k.interopDefault(window[t]),"function"==typeof e&&e&&e(ne)})),t)}function se(e,t,n){return new Promise((function(r){var i,o=e.textContent.trim(),a=o.split(/\n[ \f\r\t\v]*\n/);a.length>1?(i=[],a.forEach((function(e){""!==(e=e.trim())&&(e=n?ee(e):e),i.push(e)}))):i=n?ee(o):o;var s=e.dataset.lang,l=s?JSON.parse(s):null,u="";if(l){if("boolean"==typeof l.codeblock&&l.codeblock||"string"==typeof l.codeblock&&"true"===l.codeblock.toLowerCase())return r(!1);l.align&&("center"===l.align?u="diagram-center":"right"===l.align&&(u="diagram-right"))}var c=k.getSrc("katexCSS"),f=(e.classList.length>0?e.classList[0]:"")+(e.className&&u?" ":"")+u,h="katex-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=h,function e(t,n){if(ie()){var r=n.className,i=n.input,o=n.data,a=n.cssLink,s=n.options,l=n.element.ownerDocument,u="";if(o instanceof Array)o.forEach((function(e){if(""===e)u+="
";else{var t=te.renderToString(e,s);u+=a?'
').concat(t,"
"):'
').concat(t,"
")}}));else{var c=te.renderToString(o,s);u=a?'
').concat(c,"
"):'
').concat(c,"
")}n.element.parentNode.outerHTML=u,--re||ne(l.body,s),t(!0)}else setTimeout((function(){e(t,n)}),50)}(r,{element:e,id:h,className:f,input:o,data:i,cssLink:c,options:t})}))}function le(e){return e.replace(/[-[\]/{}()*+?.\\$^|]/g,"\\$&")}function ue(t){var n=0,r=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=i({displayMode:!0,throwOnError:!1,errorColor:"#ff0000"},t);function r(e){return!(!Array.isArray(e)||!e.length)}function o(t,n){return!("object"!==e(t)||!t.hasOwnProperty(n))}function a(e,t,n){return!!(o(e,t)&&o(e[t],n)&&r(e[t][n]))&&(e[t][n].forEach((function(e){e.display="inline"!==n,"asciimath"===t&&(e.asciimath=!0)})),e[t][n])}return Array.isArray(n.delimiters)?n.delimiters.length||(n.delimiters=[{left:"$$",right:"$$",display:!0},{left:"\\[",right:"\\]",display:!0},{left:"\\(",right:"\\)",display:!1},{left:"@@",right:"@@",display:!1,asciimath:!0},{left:"\\~",right:"\\~",display:!0,asciimath:!0}]):n.delimiters=[].concat(a(n.delimiters,"texmath","inline")||[{left:"\\(",right:"\\)",display:!1}]).concat(a(n.delimiters,"texmath","display")||[{left:"$$",right:"$$",display:!0},{left:"\\[",right:"\\]",display:!0}]).concat(a(n.delimiters,"asciimath","inline")||[{left:"@@",right:"@@",display:!1,asciimath:!0}]).concat(a(n.delimiters,"asciimath","display")||[{left:"\\~",right:"\\~",display:!0,asciimath:!0}]),n}(t),a=r.delimiters.map((function(e){var t=e.left,r=e.right,i=e.asciimath;return{test:RegExp("".concat(le(t),"(.*?)").concat(le(r)),"g"),replacer:function(e,o){return++n,i?"".concat(t).concat(ee(o)).concat(r):e}}}));return[{type:"output",config:r,filter:function(e){var t=e.wrapper;if(!t)return!1;a.length&&t.querySelectorAll(":not(code):not(pre)").forEach((function(e){o(e.childNodes).filter((function(e){return"#text"===e.nodeName&&e.nodeValue.trim()})).forEach((function(e){var t=a.reduce((function(e,t){return e.replace(t.test,t.replacer)}),e.nodeValue);e.nodeValue=t}))}));var i=t.querySelectorAll("code.latex.language-latex"),s=t.querySelectorAll("code.asciimath.language-asciimath");if(!i.length&&!s.length){if(n>0){this.config.cssLink=k.getSrc("katexCSS");var l=this;return new Promise((function(e){ae((function(n){!function e(n,r){ie()?(r(t.ownerDocument.body,l.config),n(!0)):setTimeout((function(){e(n,r)}),50)}(e,n)}))})).then((function(){return e}))}return!1}return r.cssLink=k.getSrc("katexCSS"),function(e,t,n){return re=e.length+t.length,ae(),new Promise((function(r){var i=[];e.forEach((function(e){i.push(se(e,n,!1))})),t.forEach((function(e){i.push(se(e,n,!0))})),Promise.all(i).then((function(){r(!0)}))}))}(i,s,this.config).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown mermaid extension can only be used in browser environment!");if(void 0===ce)var ce=window.mermaid||void 0;function fe(){return!(void 0===ce||!ce)}var he=!1;function de(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s="mermaid-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=s,function e(t,n){if(fe()){var r=n.className;ce.render(n.id,n.data,(function(e){n.element.parentNode.outerHTML='
').concat(e,"
"),t(!0)}))}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:s,className:a,data:o,resolve:t})}))}function pe(e,t){return function(e){var t=fe();"undefined"==typeof window||t||he?ce.initialize(e):(he=!0,k.loadScript("mermaid").then((function(t){(ce=k.interopDefault(window[t])).initialize(e)})))}(t),new Promise((function(t){var n=[];e.forEach((function(e){n.push(de(e))})),Promise.all(n).then((function(){t(!0)}))}))}function ge(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({theme:"forest",logLevel:3,startOnLoad:!1,arrowMarkerAbsolute:!1,flowchart:{curve:"basis"},gantt:{axisFormat:"%m/%d/%Y"},sequence:{actorMargin:50}},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.mermaid.language-mermaid");return!!n.length&&pe(n,this.config).then((function(){return e}))}}]}var me="undefined"!=typeof t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},ve=[],ye=[],be="undefined"!=typeof Uint8Array?Uint8Array:Array,we=!1;function _e(){we=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;64>t;++t)ve[t]=e[t],ye[e.charCodeAt(t)]=t;ye[45]=62,ye[95]=63}function xe(e,t,n){for(var r,i=[],o=t;n>o;o+=3)i.push(ve[(r=(e[o]<<16)+(e[o+1]<<8)+e[o+2])>>18&63]+ve[r>>12&63]+ve[r>>6&63]+ve[63&r]);return i.join("")}function ke(e){var t;we||_e();for(var n=e.length,r=n%3,i="",o=[],a=0,s=n-r;s>a;a+=16383)o.push(xe(e,a,a+16383>s?s:a+16383));return 1===r?(i+=ve[(t=e[n-1])>>2],i+=ve[t<<4&63],i+="=="):2===r&&(i+=ve[(t=(e[n-2]<<8)+e[n-1])>>10],i+=ve[t>>4&63],i+=ve[t<<2&63],i+="="),o.push(i),o.join("")}function Se(e,t,n,r,i){var o,a,s=8*i-r-1,l=(1<>1,c=-7,f=n?i-1:0,h=n?-1:1,d=e[t+f];for(f+=h,o=d&(1<<-c)-1,d>>=-c,c+=s;c>0;o=256*o+e[t+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=r;c>0;a=256*a+e[t+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=u}return(d?-1:1)*a*Math.pow(2,o-r)}function Ce(e,t,n,r,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?5.960464477539062e-8:0,d=r?0:o-1,p=r?1:-1,g=0>t||0===t&&0>1/t?1:0;for(isNaN(t=Math.abs(t))||t===1/0?(s=isNaN(t)?1:0,a=c):(1>t*(l=Math.pow(2,-(a=Math.floor(Math.log(t)/Math.LN2))))&&(a--,l*=2),2>(t+=1>a+f?h*Math.pow(2,1-f):h/l)*l||(a++,l/=2),c>a+f?1>a+f?(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0):(s=(t*l-1)*Math.pow(2,i),a+=f):(s=0,a=c));i>=8;e[n+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;e[n+d]=255&a,d+=p,a/=256,u-=8);e[n+d-p]|=128*g}var Ee={}.toString,Ae=Array.isArray||function(e){return"[object Array]"==Ee.call(e)};function Le(){return Te.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Oe(e,t){if(Le()n||n>t.byteLength)throw new RangeError("'offset' is out of bounds");if(n+(r||0)>t.byteLength)throw new RangeError("'length' is out of bounds");return t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r),Te.TYPED_ARRAY_SUPPORT?(e=t).__proto__=Te.prototype:e=Re(e,t),e}(e,t,n,r):"string"==typeof t?function(e,t,n){if("string"==typeof n&&""!==n||(n="utf8"),!Te.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|ze(t,n),i=(e=Oe(e,r)).write(t,n);return i!==r&&(e=e.slice(0,i)),e}(e,t,n):function(e,t){if(De(t)){var n=0|Ne(t.length);return 0===(e=Oe(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(r=t.length)!=r?Oe(e,0):Re(e,t);if("Buffer"===t.type&&Ae(t.data))return Re(e,t.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function je(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(0>e)throw new RangeError('"size" argument must not be negative')}function Pe(e,t){if(je(t),e=Oe(e,0>t?0:0|Ne(t)),!Te.TYPED_ARRAY_SUPPORT)for(var n=0;t>n;++n)e[n]=0;return e}function Re(e,t){var n=0>t.length?0:0|Ne(t.length);e=Oe(e,n);for(var r=0;n>r;r+=1)e[r]=255&t[r];return e}function Ne(e){if(e>=Le())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Le().toString(16)+" bytes");return 0|e}function De(e){return!(null==e||!e._isBuffer)}function ze(e,t){if(De(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return ut(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return ct(e).length;default:if(r)return ut(e).length;t=(""+t).toLowerCase(),r=!0}}function Fe(e,t,n){var r=!1;if((void 0===t||0>t)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),0>=n)return"";if((t>>>=0)>=(n>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return Je(this,t,n);case"utf8":case"utf-8":return Ye(this,t,n);case"ascii":return Ke(this,t,n);case"latin1":case"binary":return Xe(this,t,n);case"base64":return Ge(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Qe(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function Ie(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function Be(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:-2147483648>n&&(n=-2147483648),isNaN(n=+n)&&(n=i?0:e.length-1),0>n&&(n=e.length+n),e.length>n){if(0>n){if(!i)return-1;n=0}}else{if(i)return-1;n=e.length-1}if("string"==typeof t&&(t=Te.from(t,r)),De(t))return 0===t.length?-1:Ue(e,t,n,r,i);if("number"==typeof t)return t&=255,Te.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):Ue(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function Ue(e,t,n,r,i){var o,a=1,s=e.length,l=t.length;if(void 0!==r&&("ucs2"===(r=(r+"").toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(2>e.length||2>t.length)return-1;a=2,s/=2,l/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var c=-1;for(o=n;s>o;o++)if(u(e,o)===u(t,-1===c?0:o-c)){if(-1===c&&(c=o),o-c+1===l)return c*a}else-1!==c&&(o-=o-c),c=-1}else for(n+l>s&&(n=s-l),o=n;o>=0;o--){for(var f=!0,h=0;l>h;h++)if(u(e,o+h)!==u(t,h)){f=!1;break}if(f)return o}return-1}function He(e,t,n,r){var i=e.length-(n=Number(n)||0);r?(r=Number(r))>i&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;r>a;++a){var s=parseInt(t.substr(2*a,2),16);if(isNaN(s))return a;e[n+a]=s}return a}function $e(e,t,n,r){return ft(ut(t,e.length-n),e,n,r)}function We(e,t,n,r){return ft(function(e){for(var t=[],n=0;e.length>n;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function qe(e,t,n,r){return We(e,t,n,r)}function Ze(e,t,n,r){return ft(ct(t),e,n,r)}function Ve(e,t,n,r){return ft(function(e,t){for(var n,r,i=[],o=0;e.length>o&&0<=(t-=2);++o)n=e.charCodeAt(o),r=n>>8,i.push(n%256),i.push(r);return i}(t,e.length-n),e,n,r)}function Ge(e,t,n){return ke(0===t&&n===e.length?e:e.slice(t,n))}function Ye(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;n>i;){var o,a,s,l,u=e[i],c=null,f=u>239?4:u>223?3:u>191?2:1;if(n>=i+f)switch(f){case 1:128>u&&(c=u);break;case 2:128==(192&(o=e[i+1]))&&(l=(31&u)<<6|63&o)>127&&(c=l);break;case 3:a=e[i+2],128==(192&(o=e[i+1]))&&128==(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a)>2047&&(55296>l||l>57343)&&(c=l);break;case 4:a=e[i+2],s=e[i+3],128==(192&(o=e[i+1]))&&128==(192&a)&&128==(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&1114112>l&&(c=l)}null===c?(c=65533,f=1):c>65535&&(r.push((c-=65536)>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=f}return function(e){var t=e.length;if(4096>=t)return String.fromCharCode.apply(String,e);for(var n="",r=0;t>r;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}function Ke(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;n>i;++i)r+=String.fromCharCode(127&e[i]);return r}function Xe(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;n>i;++i)r+=String.fromCharCode(e[i]);return r}function Je(e,t,n){var r=e.length;t&&t>=0||(t=0),(!n||0>n||n>r)&&(n=r);for(var i="",o=t;n>o;++o)i+=lt(e[o]);return i}function Qe(e,t,n){for(var r=e.slice(t,n),i="",o=0;r.length>o;o+=2)i+=String.fromCharCode(r[o]+256*r[o+1]);return i}function et(e,t,n){if(e%1!=0||0>e)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function tt(e,t,n,r,i,o){if(!De(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||o>t)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function nt(e,t,n,r){0>t&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);o>i;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function rt(e,t,n,r){0>t&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);o>i;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function it(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(0>n)throw new RangeError("Index out of range")}function ot(e,t,n,r,i){return i||it(e,0,n,4),Ce(e,t,n,r,23,4),n+4}function at(e,t,n,r,i){return i||it(e,0,n,8),Ce(e,t,n,r,52,8),n+8}Te.TYPED_ARRAY_SUPPORT=void 0===me.TYPED_ARRAY_SUPPORT||me.TYPED_ARRAY_SUPPORT,Te.poolSize=8192,Te._augment=function(e){return e.__proto__=Te.prototype,e},Te.from=function(e,t,n){return Me(null,e,t,n)},Te.TYPED_ARRAY_SUPPORT&&(Te.prototype.__proto__=Uint8Array.prototype,Te.__proto__=Uint8Array),Te.alloc=function(e,t,n){return function(e,t,n,r){return je(t),t>0&&void 0!==n?"string"==typeof r?Oe(e,t).fill(n,r):Oe(e,t).fill(n):Oe(e,t)}(null,e,t,n)},Te.allocUnsafe=function(e){return Pe(null,e)},Te.allocUnsafeSlow=function(e){return Pe(null,e)},Te.isBuffer=ht,Te.compare=function(e,t){if(!De(e)||!De(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);o>i;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return r>n?-1:n>r?1:0},Te.isEncoding=function(e){switch((e+"").toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Te.concat=function(e,t){if(!Ae(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return Te.alloc(0);var n;if(void 0===t)for(t=0,n=0;e.length>n;++n)t+=e[n].length;var r=Te.allocUnsafe(t),i=0;for(n=0;e.length>n;++n){var o=e[n];if(!De(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(r,i),i+=o.length}return r},Te.byteLength=ze,Te.prototype._isBuffer=!0,Te.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;e>t;t+=2)Ie(this,t,t+1);return this},Te.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;e>t;t+=4)Ie(this,t,t+3),Ie(this,t+1,t+2);return this},Te.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;e>t;t+=8)Ie(this,t,t+7),Ie(this,t+1,t+6),Ie(this,t+2,t+5),Ie(this,t+3,t+4);return this},Te.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?Ye(this,0,e):Fe.apply(this,arguments)},Te.prototype.equals=function(e){if(!De(e))throw new TypeError("Argument must be a Buffer");return this===e||0===Te.compare(this,e)},Te.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),""},Te.prototype.compare=function(e,t,n,r,i){if(!De(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),0>t||n>e.length||0>r||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(o,a),l=this.slice(r,i),u=e.slice(t,n),c=0;s>c;++c)if(l[c]!==u[c]){o=l[c],a=u[c];break}return a>o?-1:o>a?1:0},Te.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},Te.prototype.indexOf=function(e,t,n){return Be(this,e,t,n,!0)},Te.prototype.lastIndexOf=function(e,t,n){return Be(this,e,t,n,!1)},Te.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(0>n||0>t)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return He(this,e,t,n);case"utf8":case"utf-8":return $e(this,e,t,n);case"ascii":return We(this,e,t,n);case"latin1":case"binary":return qe(this,e,t,n);case"base64":return Ze(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ve(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},Te.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},Te.prototype.slice=function(e,t){var n,r=this.length;if(0>(e=~~e)?0>(e+=r)&&(e=0):e>r&&(e=r),0>(t=void 0===t?r:~~t)?0>(t+=r)&&(t=0):t>r&&(t=r),e>t&&(t=e),Te.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=Te.prototype;else{var i=t-e;n=new Te(i,void 0);for(var o=0;i>o;++o)n[o]=this[o+e]}return n},Te.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=this[e],i=1,o=0;++o0&&(i*=256);)r+=this[e+--t]*i;return r},Te.prototype.readUInt8=function(e,t){return t||et(e,1,this.length),this[e]},Te.prototype.readUInt16LE=function(e,t){return t||et(e,2,this.length),this[e]|this[e+1]<<8},Te.prototype.readUInt16BE=function(e,t){return t||et(e,2,this.length),this[e]<<8|this[e+1]},Te.prototype.readUInt32LE=function(e,t){return t||et(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Te.prototype.readUInt32BE=function(e,t){return t||et(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Te.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=this[e],i=1,o=0;++or||(r-=Math.pow(2,8*t)),r},Te.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return(i*=128)>o||(o-=Math.pow(2,8*t)),o},Te.prototype.readInt8=function(e,t){return t||et(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Te.prototype.readInt16LE=function(e,t){t||et(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},Te.prototype.readInt16BE=function(e,t){t||et(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},Te.prototype.readInt32LE=function(e,t){return t||et(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Te.prototype.readInt32BE=function(e,t){return t||et(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Te.prototype.readFloatLE=function(e,t){return t||et(e,4,this.length),Se(this,e,!0,23,4)},Te.prototype.readFloatBE=function(e,t){return t||et(e,4,this.length),Se(this,e,!1,23,4)},Te.prototype.readDoubleLE=function(e,t){return t||et(e,8,this.length),Se(this,e,!0,52,8)},Te.prototype.readDoubleBE=function(e,t){return t||et(e,8,this.length),Se(this,e,!1,52,8)},Te.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||tt(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},Te.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,1,255,0),Te.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},Te.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,65535,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):nt(this,e,t,!0),t+2},Te.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,65535,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):nt(this,e,t,!1),t+2},Te.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,4294967295,0),Te.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):rt(this,e,t,!0),t+4},Te.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,4294967295,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):rt(this,e,t,!1),t+4},Te.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);tt(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;for(this[t]=255&e;++oe&&0===s&&0!==this[t+o-1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},Te.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);tt(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)0>e&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},Te.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,1,127,-128),Te.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),0>e&&(e=255+e+1),this[t]=255&e,t+1},Te.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,32767,-32768),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):nt(this,e,t,!0),t+2},Te.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,32767,-32768),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):nt(this,e,t,!1),t+2},Te.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,2147483647,-2147483648),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):rt(this,e,t,!0),t+4},Te.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,2147483647,-2147483648),0>e&&(e=4294967295+e+1),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):rt(this,e,t,!1),t+4},Te.prototype.writeFloatLE=function(e,t,n){return ot(this,e,t,!0,n)},Te.prototype.writeFloatBE=function(e,t,n){return ot(this,e,t,!1,n)},Te.prototype.writeDoubleLE=function(e,t,n){return at(this,e,t,!0,n)},Te.prototype.writeDoubleBE=function(e,t,n){return at(this,e,t,!1,n)},Te.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),e.length>t||(t=e.length),t||(t=0),r>0&&n>r&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(0>t)throw new RangeError("targetStart out of bounds");if(0>n||n>=this.length)throw new RangeError("sourceStart out of bounds");if(0>r)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),r-n>e.length-t&&(r=e.length-t+n);var i,o=r-n;if(this===e&&t>n&&r>t)for(i=o-1;i>=0;--i)e[i+t]=this[i+n];else if(1e3>o||!Te.TYPED_ARRAY_SUPPORT)for(i=0;o>i;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+o),t);return o},Te.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);256>i&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!Te.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(0>t||t>this.length||n>this.length)throw new RangeError("Out of range index");if(t>=n)return this;var o;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;n>o;++o)this[o]=e;else{var a=De(e)?e:ut(""+new Te(e,r)),s=a.length;for(o=0;n-t>o;++o)this[o+t]=a[o%s]}return this};var st=/[^+\/0-9A-Za-z-_]/g;function lt(e){return 16>e?"0"+e.toString(16):e.toString(16)}function ut(e,t){var n;t=t||1/0;for(var r=e.length,i=null,o=[],a=0;r>a;++a){if((n=e.charCodeAt(a))>55295&&57344>n){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(56320>n){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,128>n){if(0>(t-=1))break;o.push(n)}else if(2048>n){if(0>(t-=2))break;o.push(n>>6|192,63&n|128)}else if(65536>n){if(0>(t-=3))break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(n>=1114112)throw Error("Invalid code point");if(0>(t-=4))break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function ct(e){return function(e){var t,n,r,i,o,a;we||_e();var s=e.length;if(s%4>0)throw Error("Invalid string. Length must be a multiple of 4");a=new be(3*s/4-(o="="===e[s-2]?2:"="===e[s-1]?1:0)),r=o>0?s-4:s;var l=0;for(t=0,n=0;r>t;t+=4,n+=3)i=ye[e.charCodeAt(t)]<<18|ye[e.charCodeAt(t+1)]<<12|ye[e.charCodeAt(t+2)]<<6|ye[e.charCodeAt(t+3)],a[l++]=i>>16&255,a[l++]=i>>8&255,a[l++]=255&i;return 2===o?(i=ye[e.charCodeAt(t)]<<2|ye[e.charCodeAt(t+1)]>>4,a[l++]=255&i):1===o&&(i=ye[e.charCodeAt(t)]<<10|ye[e.charCodeAt(t+1)]<<4|ye[e.charCodeAt(t+2)]>>2,a[l++]=i>>8&255,a[l++]=255&i),a}(function(e){if(2>(e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(st,"")).length)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function ft(e,t,n,r){for(var i=0;r>i&&i+n1)for(var n=1;arguments.length>n;n++)t[n-1]=arguments[n];wt.push(new Et(e,t)),1!==wt.length||_t||yt(St)}function Et(e,t){this.fun=e,this.array=t}function At(){}function Lt(){Lt.init.call(this)}function Ot(e){return void 0===e._maxListeners?Lt.defaultMaxListeners:e._maxListeners}function Tt(e,t,n){if(t)e.call(n);else for(var r=e.length,i=Ft(e,r),o=0;r>o;++o)i[o].call(n)}function Mt(e,t,n,r){if(t)e.call(n,r);else for(var i=e.length,o=Ft(e,i),a=0;i>a;++a)o[a].call(n,r)}function jt(e,t,n,r,i){if(t)e.call(n,r,i);else for(var o=e.length,a=Ft(e,o),s=0;o>s;++s)a[s].call(n,r,i)}function Pt(e,t,n,r,i,o){if(t)e.call(n,r,i,o);else for(var a=e.length,s=Ft(e,a),l=0;a>l;++l)s[l].call(n,r,i,o)}function Rt(e,t,n,r){if(t)e.apply(n,r);else for(var i=e.length,o=Ft(e,i),a=0;i>a;++a)o[a].apply(n,r)}function Nt(e,t,n,r){var i,o,a;if("function"!=typeof n)throw new TypeError('"listener" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),a=o[t]):(o=e._events=new At,e._eventsCount=0),a){if("function"==typeof a?a=o[t]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),!a.warned&&(i=Ot(e))&&i>0&&a.length>i){a.warned=!0;var s=Error("Possible EventEmitter memory leak detected. "+a.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length}}else a=o[t]=n,++e._eventsCount;return e}function Dt(e,t,n){var r=!1;function i(){e.removeListener(t,i),r||(r=!0,n.apply(e,arguments))}return i.listener=n,i}function zt(e){var t=this._events;if(t){var n=t[e];if("function"==typeof n)return 1;if(n)return n.length}return 0}function Ft(e,t){for(var n=Array(t);t--;)n[t]=e[t];return n}Et.prototype.run=function(){this.fun.apply(null,this.array)},At.prototype=Object.create(null),Lt.EventEmitter=Lt,Lt.usingDomains=!1,Lt.prototype.domain=void 0,Lt.prototype._events=void 0,Lt.prototype._maxListeners=void 0,Lt.defaultMaxListeners=10,Lt.init=function(){this.domain=null,Lt.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new At,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},Lt.prototype.setMaxListeners=function(e){if("number"!=typeof e||0>e||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},Lt.prototype.getMaxListeners=function(){return Ot(this)},Lt.prototype.emit=function(e){var t,n,r,i,o,a,s,l="error"===e;if(a=this._events)l=l&&null==a.error;else if(!l)return!1;if(s=this.domain,l){if(t=arguments[1],!s){if(t instanceof Error)throw t;var u=Error('Uncaught, unspecified "error" event. ('+t+")");throw u.context=t,u}return t||(t=Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=s,t.domainThrown=!1,s.emit("error",t),!1}if(!(n=a[e]))return!1;var c="function"==typeof n;switch(r=arguments.length){case 1:Tt(n,c,this);break;case 2:Mt(n,c,this,arguments[1]);break;case 3:jt(n,c,this,arguments[1],arguments[2]);break;case 4:Pt(n,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=Array(r-1),o=1;r>o;o++)i[o-1]=arguments[o];Rt(n,c,this,i)}return!0},Lt.prototype.on=Lt.prototype.addListener=function(e,t){return Nt(this,e,t,!1)},Lt.prototype.prependListener=function(e,t){return Nt(this,e,t,!0)},Lt.prototype.once=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.on(e,Dt(this,e,t)),this},Lt.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.prependListener(e,Dt(this,e,t)),this},Lt.prototype.removeListener=function(e,t){var n,r,i,o,a;if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');if(!(r=this._events))return this;if(!(n=r[e]))return this;if(n===t||n.listener&&n.listener===t)0==--this._eventsCount?this._events=new At:(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length;o-- >0;)if(n[o]===t||n[o].listener&&n[o].listener===t){a=n[o].listener,i=o;break}if(0>i)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new At,this;delete r[e]}else!function(e,t){for(var n=t,r=n+1,i=e.length;i>r;n+=1,r+=1)e[n]=e[r];e.pop()}(n,i);r.removeListener&&this.emit("removeListener",e,a||t)}return this},Lt.prototype.removeAllListeners=function(e){var t,n;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=new At,this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=new At:delete n[e]),this;if(0===arguments.length){for(var r,i=Object.keys(n),o=0;i.length>o;++o)"removeListener"!==(r=i[o])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=new At,this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(t)do{this.removeListener(e,t[t.length-1])}while(t[0]);return this},Lt.prototype.listeners=function(e){var t,n=this._events;return n&&(t=n[e])?"function"==typeof t?[t.listener||t]:function(e){for(var t=Array(e.length),n=0;t.length>n;++n)t[n]=e[n].listener||e[n];return t}(t):[]},Lt.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):zt.call(e,t)},Lt.prototype.listenerCount=zt,Lt.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};var It="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},Bt=/%[sdj%]/g;function Ut(e){if(!Qt(e)){for(var t=[],n=0;arguments.length>n;n++)t.push(qt(arguments[n]));return t.join(" ")}n=1;for(var r=arguments,i=r.length,o=(e+"").replace(Bt,(function(e){if("%%"===e)return"%";if(n>=i)return e;switch(e){case"%s":return r[n++]+"";case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),a=r[n];i>n;a=r[++n])Jt(a)||!nn(a)?o+=" "+a:o+=" "+qt(a);return o}function Ht(e,t){if(en(me.process))return function(){return Ht(e,t).apply(this,arguments)};var n=!1;return function(){return n||(n=!0),e.apply(this,arguments)}}var $t,Wt={};function qt(e,t){var n={seen:[],stylize:Vt};return 3>arguments.length||(n.depth=arguments[2]),4>arguments.length||(n.colors=arguments[3]),Xt(t)?n.showHidden=t:t&&ln(n,t),en(n.showHidden)&&(n.showHidden=!1),en(n.depth)&&(n.depth=2),en(n.colors)&&(n.colors=!1),en(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=Zt),Gt(n,e,n.depth)}function Zt(e,t){var n=qt.styles[t];return n?"["+qt.colors[n][0]+"m"+e+"["+qt.colors[n][1]+"m":e}function Vt(e,t){return e}function Gt(e,t,n){if(e.customInspect&&t&&an(t.inspect)&&t.inspect!==qt&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(n,e);return Qt(r)||(r=Gt(e,r,n)),r}var i=function(e,t){if(en(t))return e.stylize("undefined","undefined");if(Qt(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return r=t,"number"==typeof r?e.stylize(""+t,"number"):Xt(t)?e.stylize(""+t,"boolean"):Jt(t)?e.stylize("null","null"):void 0;var r}(e,t);if(i)return i;var o=Object.keys(t),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),on(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return Yt(t);if(0===o.length){if(an(t))return e.stylize("[Function"+(t.name?": "+t.name:"")+"]","special");if(tn(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(rn(t))return e.stylize(Date.prototype.toString.call(t),"date");if(on(t))return Yt(t)}var s,l="",u=!1,c=["{","}"];return Array.isArray(t)&&(u=!0,c=["[","]"]),an(t)&&(l=" [Function"+(t.name?": "+t.name:"")+"]"),tn(t)&&(l=" "+RegExp.prototype.toString.call(t)),rn(t)&&(l=" "+Date.prototype.toUTCString.call(t)),on(t)&&(l=" "+Yt(t)),0!==o.length||u&&0!=t.length?0>n?tn(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),s=u?function(e,t,n,r,i){for(var o=[],a=0,s=t.length;s>a;++a)un(t,a+"")?o.push(Kt(e,t,n,r,a+"",!0)):o.push("");return i.forEach((function(i){i.match(/^\d+$/)||o.push(Kt(e,t,n,r,i,!0))})),o}(e,t,n,a,o):o.map((function(r){return Kt(e,t,n,a,r,u)})),e.seen.pop(),function(e,t,n){return e.reduce((function(e,t){return t.indexOf("\n"),e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}(s,l,c)):c[0]+l+c[1]}function Yt(e){return"["+Error.prototype.toString.call(e)+"]"}function Kt(e,t,n,r,i,o){var a,s,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=e.stylize(l.set?"[Getter/Setter]":"[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),un(r,i)||(a="["+i+"]"),s||(0>e.seen.indexOf(l.value)?(s=Jt(n)?Gt(e,l.value,null):Gt(e,l.value,n-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),en(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function Xt(e){return"boolean"==typeof e}function Jt(e){return null===e}function Qt(e){return"string"==typeof e}function en(e){return void 0===e}function tn(e){return nn(e)&&"[object RegExp]"===sn(e)}function nn(e){return"object"==typeof e&&null!==e}function rn(e){return nn(e)&&"[object Date]"===sn(e)}function on(e){return nn(e)&&("[object Error]"===sn(e)||e instanceof Error)}function an(e){return"function"==typeof e}function sn(e){return Object.prototype.toString.call(e)}function ln(e,t){if(!t||!nn(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}function un(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function cn(){this.head=null,this.tail=null,this.length=0}qt.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},qt.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},cn.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},cn.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},cn.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,e}},cn.prototype.clear=function(){this.head=this.tail=null,this.length=0},cn.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},cn.prototype.concat=function(e){if(0===this.length)return Te.alloc(0);if(1===this.length)return this.head.data;for(var t=Te.allocUnsafe(e>>>0),n=this.head,r=0;n;)n.data.copy(t,r),r+=n.data.length,n=n.next;return t};var fn=Te.isEncoding||function(e){switch(e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function hn(e){switch(this.encoding=(e||"utf8").toLowerCase().replace(/[-_]/,""),function(e){if(e&&!fn(e))throw Error("Unknown encoding: "+e)}(e),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=pn;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=gn;break;default:return void(this.write=dn)}this.charBuffer=new Te(6),this.charReceived=0,this.charLength=0}function dn(e){return e.toString(this.encoding)}function pn(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function gn(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}hn.prototype.write=function(e){for(var t="";this.charLength;){var n=this.charLength-this.charReceived>e.length?e.length:this.charLength-this.charReceived;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charLength>this.charReceived)return"";if(e=e.slice(n,e.length),55296>(r=(t=this.charBuffer.slice(0,this.charLength).toString(this.encoding)).charCodeAt(t.length-1))||r>56319){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r,i=e.length;if(this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),(r=(t+=e.toString(this.encoding,0,i)).charCodeAt(i=t.length-1))>=55296&&56319>=r){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),e.copy(this.charBuffer,0,0,o),t.substring(0,i)}return t},hn.prototype.detectIncompleteChar=function(e){for(var t=3>e.length?e.length:3;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(2>=t&&n>>4==14){this.charLength=3;break}if(3>=t&&n>>3==30){this.charLength=4;break}}this.charReceived=t},hn.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.encoding;t+=this.charBuffer.slice(0,this.charReceived).toString(n)}return t},yn.ReadableState=vn;var mn=function(e){return en($t)&&($t=""),e=e.toUpperCase(),Wt[e]||(RegExp("\\b"+e+"\\b","i").test($t)?Wt[e]=function(){Ut.apply(null,arguments)}:Wt[e]=function(){}),Wt[e]}("stream");function vn(e,t){this.objectMode=!!(e=e||{}).objectMode,t instanceof qn&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var n=e.highWaterMark;this.highWaterMark=n||0===n?n:this.objectMode?16:16384,this.highWaterMark=~~this.highWaterMark,this.buffer=new cn,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.ranOut=!1,this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(this.decoder=new hn(e.encoding),this.encoding=e.encoding)}function yn(e){if(!(this instanceof yn))return new yn(e);this._readableState=new vn(e,this),this.readable=!0,e&&"function"==typeof e.read&&(this._read=e.read),Lt.call(this)}function bn(e,t,n,r,i){var o=function(e,t){var n=null;return ht(t)||"string"==typeof t||null==t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}(t,n);if(o)e.emit("error",o);else if(null===n)t.reading=!1,function(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,_n(e)}}(e,t);else if(t.objectMode||n&&n.length>0)if(t.ended&&!i)e.emit("error",Error("stream.push() after EOF"));else if(t.endEmitted&&i)e.emit("error",Error("stream.unshift() after end event"));else{var a;!t.decoder||i||r||(n=t.decoder.write(n),a=!t.objectMode&&0===n.length),i||(t.reading=!1),a||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,i?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&_n(e))),function(e,t){t.readingMore||(t.readingMore=!0,Ct(kn,e,t))}(e,t)}else i||(t.reading=!1);return function(e){return!e.ended&&(e.needReadable||e.highWaterMark>e.length||0===e.length)}(t)}function wn(e,t){return 0>=e||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return 8388608>e?(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++):e=8388608,e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function _n(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(mn("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?Ct(xn,e):xn(e))}function xn(e){mn("emit readable"),e.emit("readable"),En(e)}function kn(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.highWaterMark>t.length&&(mn("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function Sn(e){mn("readable nexttick read 0"),e.read(0)}function Cn(e,t){t.reading||(mn("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),En(e),t.flowing&&!t.reading&&e.read(0)}function En(e){var t=e._readableState;for(mn("flow",t.flowing);t.flowing&&null!==e.read(););}function An(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():e&&t.length>e?n=function(e,t,n){var r;return t.head.data.length>e?(r=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):r=e===t.head.data.length?t.shift():n?function(e,t){var n=t.head,r=1,i=n.data;for(e-=i.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(i+=a===o.length?o:o.slice(0,e),0===(e-=a)){a===o.length?(++r,t.head=n.next?n.next:t.tail=null):(t.head=n,n.data=o.slice(a));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=Te.allocUnsafe(e),r=t.head,i=1;for(r.data.copy(n),e-=r.data.length;r=r.next;){var o=r.data,a=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,a),0===(e-=a)){a===o.length?(++i,t.head=r.next?r.next:t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}(e,t),r}(e,t.buffer,t.decoder):(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()),n);var n}function Ln(e){var t=e._readableState;if(t.length>0)throw Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,Ct(On,t,e))}function On(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function Tn(e,t){for(var n=0,r=e.length;r>n;n++)if(e[n]===t)return n;return-1}function Mn(){}function jn(e,t,n){this.chunk=e,this.encoding=t,this.callback=n,this.next=null}function Pn(e,t){Object.defineProperty(this,"buffer",{get:Ht((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")}),this.objectMode=!!(e=e||{}).objectMode,t instanceof qn&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var n=e.highWaterMark;this.highWaterMark=n||0===n?n:this.objectMode?16:16384,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.decodeStrings=!(!1===e.decodeStrings),this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?Ct(i,r):i(r),e._writableState.errorEmitted=!0,e.emit("error",r)}(e,n,r,t,i);else{var o=Fn(n);o||n.corked||n.bufferProcessing||!n.bufferedRequest||zn(e,n),r?Ct(Dn,e,n,o,i):Dn(e,n,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new Un(this)}function Rn(e){if(!(this instanceof Rn||this instanceof qn))return new Rn(e);this._writableState=new Pn(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev)),Lt.call(this)}function Nn(e,t,n,r,i,o,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function Dn(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),Bn(e,t)}function zn(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=Array(t.bufferedRequestCount),i=t.corkedRequestsFree;i.entry=n;for(var o=0;n;)r[o]=n,n=n.next,o+=1;Nn(e,t,!0,t.length,r,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new Un(t)}else{for(;n;){var a=n.chunk;if(Nn(e,t,!1,t.objectMode?1:a.length,a,n.encoding,n.callback),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function Fn(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function In(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function Bn(e,t){var n=Fn(t);return n&&(0===t.pendingcb?(In(e,t),t.finished=!0,e.emit("finish")):In(e,t)),n}function Un(e){var t=this;this.next=null,this.entry=null,this.finish=function(n){var r=t.entry;for(t.entry=null;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}It(yn,Lt),yn.prototype.push=function(e,t){var n=this._readableState;return n.objectMode||"string"!=typeof e||(t=t||n.defaultEncoding)!==n.encoding&&(e=Te.from(e,t),t=""),bn(this,n,e,t,!1)},yn.prototype.unshift=function(e){return bn(this,this._readableState,e,"",!0)},yn.prototype.isPaused=function(){return!1===this._readableState.flowing},yn.prototype.setEncoding=function(e){return this._readableState.decoder=new hn(e),this._readableState.encoding=e,this},yn.prototype.read=function(e){mn("read",e);var t=this._readableState,n=e=parseInt(e,10);if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return mn("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?Ln(this):_n(this),null;if(0===(e=wn(e,t))&&t.ended)return 0===t.length&&Ln(this),null;var r,i=t.needReadable;return mn("need readable",i),(0===t.length||t.highWaterMark>t.length-e)&&mn("length less than watermark",i=!0),t.ended||t.reading?mn("reading or ended",i=!1):i&&(mn("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=wn(n,t))),null===(r=e>0?An(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&Ln(this)),null!==r&&this.emit("data",r),r},yn.prototype._read=function(e){this.emit("error",Error("not implemented"))},yn.prototype.pipe=function(e,t){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,mn("pipe count=%d opts=%j",r.pipesCount,t);var i=t&&!1===t.end?u:a;function o(e){mn("onunpipe"),e===n&&u()}function a(){mn("onend"),e.end()}r.endEmitted?Ct(i):n.once("end",i),e.on("unpipe",o);var s=function(e){return function(){var t=e._readableState;mn("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&e.listeners("data").length&&(t.flowing=!0,En(e))}}(n);e.on("drain",s);var l=!1;function u(){mn("cleanup"),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("drain",s),e.removeListener("error",h),e.removeListener("unpipe",o),n.removeListener("end",a),n.removeListener("end",u),n.removeListener("data",f),l=!0,!r.awaitDrain||e._writableState&&!e._writableState.needDrain||s()}var c=!1;function f(t){mn("ondata"),c=!1,!1!==e.write(t)||c||((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==Tn(r.pipes,e))&&!l&&(mn("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,c=!0),n.pause())}function h(t){mn("onerror",t),g(),e.removeListener("error",h),0===e.listeners("error").length&&e.emit("error",t)}function d(){e.removeListener("finish",p),g()}function p(){mn("onfinish"),e.removeListener("close",d),g()}function g(){mn("unpipe"),n.unpipe(e)}return n.on("data",f),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",h),e.once("close",d),e.once("finish",p),e.emit("pipe",n),r.flowing||(mn("pipe resume"),n.resume()),e},yn.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this)),this;if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;r>i;i++)n[i].emit("unpipe",this);return this}var o=Tn(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this)),this},yn.prototype.addListener=yn.prototype.on=function(e,t){var n=Lt.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var r=this._readableState;r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.emittedReadable=!1,r.reading?r.length&&_n(this):Ct(Sn,this))}return n},yn.prototype.resume=function(){var e=this._readableState;return e.flowing||(mn("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,Ct(Cn,e,t))}(this,e)),this},yn.prototype.pause=function(){return mn("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(mn("pause"),this._readableState.flowing=!1,this.emit("pause")),this},yn.prototype.wrap=function(e){var t=this._readableState,n=!1,r=this;for(var i in e.on("end",(function(){if(mn("wrapped end"),t.decoder&&!t.ended){var e=t.decoder.end();e&&e.length&&r.push(e)}r.push(null)})),e.on("data",(function(i){mn("wrapped data"),t.decoder&&(i=t.decoder.write(i)),t.objectMode&&null==i||(t.objectMode||i&&i.length)&&(r.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));return function(e,t){for(var n=0,r=e.length;r>n;n++)t(e[n],n)}(["error","close","destroy","pause","resume"],(function(t){e.on(t,r.emit.bind(r,t))})),r._read=function(t){mn("wrapped _read",t),n&&(n=!1,e.resume())},r},yn._fromList=An,Rn.WritableState=Pn,It(Rn,Lt),Pn.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},Rn.prototype.pipe=function(){this.emit("error",Error("Cannot pipe, not readable"))},Rn.prototype.write=function(e,t,n){var r=this._writableState,i=!1;return"function"==typeof t&&(n=t,t=null),Te.isBuffer(e)?t="buffer":t||(t=r.defaultEncoding),"function"!=typeof n&&(n=Mn),r.ended?function(e,t){var n=Error("write after end");e.emit("error",n),Ct(t,n)}(this,n):function(e,t,n,r){var i=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):Te.isBuffer(n)||"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),Ct(r,o),i=!1),i}(this,r,e,n)&&(r.pendingcb++,i=function(e,t,n,r,i){n=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=Te.from(t,n)),t}(t,n,r),Te.isBuffer(n)&&(r="buffer");var o=t.objectMode?1:n.length;t.length+=o;var a=t.highWaterMark>t.length;if(a||(t.needDrain=!0),t.writing||t.corked){var s=t.lastBufferedRequest;t.lastBufferedRequest=new jn(n,r,i),s?s.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else Nn(e,t,!1,o,n,r,i);return a}(this,r,e,t,n)),i},Rn.prototype.cork=function(){this._writableState.corked++},Rn.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||zn(this,e))},Rn.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())<=-1)throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Rn.prototype._write=function(e,t,n){n(Error("not implemented"))},Rn.prototype._writev=null,Rn.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,Bn(e,t),n&&(t.finished?Ct(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n)},It(qn,yn);for(var Hn=Object.keys(Rn.prototype),$n=0;Hn.length>$n;$n++){var Wn=Hn[$n];qn.prototype[Wn]||(qn.prototype[Wn]=Rn.prototype[Wn])}function qn(e){if(!(this instanceof qn))return new qn(e);yn.call(this,e),Rn.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",Zn)}function Zn(){this.allowHalfOpen||this._writableState.ended||Ct(Vn,this)}function Vn(e){e.end()}function Gn(e){this.afterTransform=function(t,n){return function(e,t,n){var r=e._transformState;r.transforming=!1;var i=r.writecb;if(!i)return e.emit("error",Error("no writecb in Transform class"));r.writechunk=null,r.writecb=null,null!=n&&e.push(n),i(t);var o=e._readableState;o.reading=!1,(o.needReadable||o.highWaterMark>o.length)&&e._read(o.highWaterMark)}(e,t,n)},this.needTransform=!1,this.transforming=!1,this.writecb=null,this.writechunk=null,this.writeencoding=null}function Yn(e){if(!(this instanceof Yn))return new Yn(e);qn.call(this,e),this._transformState=new Gn(this);var t=this;this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.once("prefinish",(function(){"function"==typeof this._flush?this._flush((function(e){Kn(t,e)})):Kn(t)}))}function Kn(e,t){if(t)return e.emit("error",t);var n=e._transformState;if(e._writableState.length)throw Error("Calling transform done when ws.length != 0");if(n.transforming)throw Error("Calling transform done when still transforming");return e.push(null)}function Xn(e){if(!(this instanceof Xn))return new Xn(e);Yn.call(this,e)}function Jn(){Lt.call(this)}It(Yn,qn),Yn.prototype.push=function(e,t){return this._transformState.needTransform=!1,qn.prototype.push.call(this,e,t)},Yn.prototype._transform=function(e,t,n){throw Error("Not implemented")},Yn.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.highWaterMark>i.length)&&this._read(i.highWaterMark)}},Yn.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},It(Xn,Yn),Xn.prototype._transform=function(e,t,n){n(null,e)},It(Jn,Lt),Jn.Readable=yn,Jn.Writable=Rn,Jn.Duplex=qn,Jn.Transform=Yn,Jn.PassThrough=Xn,Jn.Stream=Jn,Jn.prototype.pipe=function(e,t){var n=this;function r(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function i(){n.readable&&n.resume&&n.resume()}n.on("data",r),e.on("drain",i),e._isStdio||t&&!1===t.end||(n.on("end",a),n.on("close",s));var o=!1;function a(){o||(o=!0,e.end())}function s(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){if(u(),0===Lt.listenerCount(this,"error"))throw e}function u(){n.removeListener("data",r),e.removeListener("drain",i),n.removeListener("end",a),n.removeListener("close",s),n.removeListener("error",l),e.removeListener("error",l),n.removeListener("end",u),n.removeListener("close",u),e.removeListener("close",u)}return n.on("error",l),e.on("error",l),n.on("end",u),n.on("close",u),e.on("close",u),e.emit("pipe",n),e};var Qn={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};function er(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function tr(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var o=0;r>o;o++)e[i+o]=t[n+o]}var nr=Uint8Array,rr=Uint16Array,ir=Int32Array;function or(e){for(var t=e.length;--t>=0;)e[t]=0}var ar=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],sr=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],lr=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ur=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],cr=Array(576);or(cr);var fr=Array(60);or(fr);var hr=Array(512);or(hr);var dr=Array(256);or(dr);var pr=Array(29);or(pr);var gr,mr,vr,yr=Array(30);function br(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function wr(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function _r(e){return 256>e?hr[e]:hr[256+(e>>>7)]}function xr(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function kr(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function Er(e,t,n){var r,i,o=Array(16),a=0;for(r=1;15>=r;r++)o[r]=a=a+n[r-1]<<1;for(i=0;t>=i;i++){var s=e[2*i+1];0!==s&&(e[2*i]=Cr(o[s]++,s))}}function Ar(e){var t;for(t=0;286>t;t++)e.dyn_ltree[2*t]=0;for(t=0;30>t;t++)e.dyn_dtree[2*t]=0;for(t=0;19>t;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function Lr(e){e.bi_valid>8?xr(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function Or(e,t,n,r){var i=2*t,o=2*n;return e[o]>e[i]||e[i]===e[o]&&r[n]>=r[t]}function Tr(e,t,n){for(var r=e.heap[n],i=n<<1;e.heap_len>=i&&(e.heap_len>i&&Or(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!Or(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function Mr(e,t,n){var r,i,o,a,s=0;if(0!==e.last_lit)do{r=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===r?Sr(e,i,t):(Sr(e,(o=dr[i])+256+1,t),0!==(a=ar[o])&&kr(e,i-=pr[o],a),Sr(e,o=_r(--r),n),0!==(a=sr[o])&&kr(e,r-=yr[o],a))}while(e.last_lit>s);Sr(e,256,t)}function jr(e,t){var n,r,i,o=t.dyn_tree,a=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.elems,u=-1;for(e.heap_len=0,e.heap_max=573,n=0;l>n;n++)0!==o[2*n]?(e.heap[++e.heap_len]=u=n,e.depth[n]=0):o[2*n+1]=0;for(;2>e.heap_len;)o[2*(i=e.heap[++e.heap_len]=2>u?++u:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=a[2*i+1]);for(t.max_code=u,n=e.heap_len>>1;n>=1;n--)Tr(e,o,n);i=l;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Tr(e,o,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,o[2*i]=o[2*n]+o[2*r],e.depth[i]=(e.depth[r]>e.depth[n]?e.depth[r]:e.depth[n])+1,o[2*n+1]=o[2*r+1]=i,e.heap[1]=i++,Tr(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,o,a,s,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,f=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,g=0;for(o=0;15>=o;o++)e.bl_count[o]=0;for(l[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;573>n;n++)(o=l[2*l[2*(r=e.heap[n])+1]+1]+1)>p&&(o=p,g++),l[2*r+1]=o,r>u||(e.bl_count[o]++,a=0,d>r||(a=h[r-d]),e.opt_len+=(s=l[2*r])*(o+a),f&&(e.static_len+=s*(c[2*r+1]+a)));if(0!==g){do{for(o=p-1;0===e.bl_count[o];)o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,g-=2}while(g>0);for(o=p;0!==o;o--)for(r=e.bl_count[o];0!==r;)u<(i=e.heap[--n])||(l[2*i+1]!==o&&(e.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),r--)}}(e,t),Er(o,u,e.bl_count)}function Pr(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),t[2*(n+1)+1]=65535,r=0;n>=r;r++)i=a,a=t[2*(r+1)+1],++ss?e.bl_tree[2*i]+=s:0!==i?(i!==o&&e.bl_tree[2*i]++,e.bl_tree[32]++):s>10?e.bl_tree[36]++:e.bl_tree[34]++,s=0,o=i,0===a?(l=138,u=3):i===a?(l=6,u=3):(l=7,u=4))}function Rr(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),r=0;n>=r;r++)if(i=a,a=t[2*(r+1)+1],++s>=l||i!==a){if(u>s)do{Sr(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==o&&(Sr(e,i,e.bl_tree),s--),Sr(e,16,e.bl_tree),kr(e,s-3,2)):s>10?(Sr(e,18,e.bl_tree),kr(e,s-11,7)):(Sr(e,17,e.bl_tree),kr(e,s-3,3));s=0,o=i,0===a?(l=138,u=3):i===a?(l=6,u=3):(l=7,u=4)}}or(yr);var Nr=!1;function Dr(e){Nr||(function(){var e,t,n,r,i,o=Array(16);for(n=0,r=0;28>r;r++)for(pr[r]=n,e=0;1<e;e++)dr[n++]=r;for(dr[n-1]=r,i=0,r=0;16>r;r++)for(yr[r]=i,e=0;1<e;e++)hr[i++]=r;for(i>>=7;30>r;r++)for(yr[r]=i<<7,e=0;1<e;e++)hr[256+i++]=r;for(t=0;15>=t;t++)o[t]=0;for(e=0;143>=e;)cr[2*e+1]=8,e++,o[8]++;for(;255>=e;)cr[2*e+1]=9,e++,o[9]++;for(;279>=e;)cr[2*e+1]=7,e++,o[7]++;for(;287>=e;)cr[2*e+1]=8,e++,o[8]++;for(Er(cr,287,o),e=0;30>e;e++)fr[2*e+1]=5,fr[2*e]=Cr(e,5);gr=new br(cr,ar,257,286,15),mr=new br(fr,sr,0,30,15),vr=new br([],lr,0,19,7)}(),Nr=!0),e.l_desc=new wr(e.dyn_ltree,gr),e.d_desc=new wr(e.dyn_dtree,mr),e.bl_desc=new wr(e.bl_tree,vr),e.bi_buf=0,e.bi_valid=0,Ar(e)}function zr(e,t,n,r){kr(e,0+(r?1:0),3),function(e,t,n,r){Lr(e),r&&(xr(e,n),xr(e,~n)),tr(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}function Fr(e){kr(e,2,3),Sr(e,256,cr),function(e){16===e.bi_valid?(xr(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8>e.bi_valid||(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}function Ir(e,t,n,r){var i,o,a=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;31>=t;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;256>t;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),jr(e,e.l_desc),jr(e,e.d_desc),a=function(e){var t;for(Pr(e,e.dyn_ltree,e.l_desc.max_code),Pr(e,e.dyn_dtree,e.d_desc.max_code),jr(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*ur[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),(o=e.static_len+3+7>>>3)>(i=e.opt_len+3+7>>>3)||(i=o)):i=o=n+5,n+4>i||-1===t?4===e.strategy||o===i?(kr(e,2+(r?1:0),3),Mr(e,cr,fr)):(kr(e,4+(r?1:0),3),function(e,t,n,r){var i;for(kr(e,t-257,5),kr(e,n-1,5),kr(e,r-4,4),i=0;r>i;i++)kr(e,e.bl_tree[2*ur[i]+1],3);Rr(e,e.dyn_ltree,t-1),Rr(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),Mr(e,e.dyn_ltree,e.dyn_dtree)):zr(e,t,n,r),Ar(e),r&&Lr(e)}function Br(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(dr[n]+256+1)]++,e.dyn_dtree[2*_r(t)]++),e.last_lit===e.lit_bufsize-1}function Ur(e,t,n,r){for(var i=65535&e|0,o=e>>>16&65535|0,a=0;0!==n;){n-=a=n>2e3?2e3:n;do{o=o+(i=i+t[r++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}var Hr,$r=function(){for(var e,t=[],n=0;256>n;n++){e=n;for(var r=0;8>r;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();function Wr(e,t,n,r){var i=$r,o=r+n;e^=-1;for(var a=r;o>a;a++)e=e>>>8^i[255&(e^t[a])];return-1^e}function qr(e,t){return e.msg=Qn[t],t}function Zr(e){return(e<<1)-(e>4?9:0)}function Vr(e){for(var t=e.length;--t>=0;)e[t]=0}function Gr(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(tr(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function Yr(e,t){Ir(e,0>e.block_start?-1:e.block_start,e.strstart-e.block_start,t),e.block_start=e.strstart,Gr(e.strm)}function Kr(e,t){e.pending_buf[e.pending++]=t}function Xr(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function Jr(e,t){var n,r,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,u=e.window,c=e.w_mask,f=e.prev,h=e.strstart+258,d=u[o+a-1],p=u[o+a];e.good_match>e.prev_length||(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(u[(n=t)+a]===p&&u[n+a-1]===d&&u[n]===u[o]&&u[++n]===u[o+1]){o+=2,n++;do{}while(u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&h>o);if(r=258-(h-o),o=h-258,r>a){if(e.match_start=t,a=r,r>=s)break;d=u[o+a-1],p=u[o+a]}}}while((t=f[t&c])>l&&0!=--i);return a>e.lookahead?e.lookahead:a}function Qr(e){var t,n,r,i,o,a,s,l,u,c,f=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-262)){tr(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=f>r?0:r-f}while(--n);t=n=f;do{r=e.prev[--t],e.prev[t]=f>r?0:r-f}while(--n);i+=f}if(0===e.strm.avail_in)break;if(s=e.window,l=e.strstart+e.lookahead,c=void 0,(c=(a=e.strm).avail_in)>(u=i)&&(c=u),n=0===c?0:(a.avail_in-=c,tr(s,a.input,a.next_in,c,l),1===a.state.wrap?a.adler=Ur(a.adler,s,c,l):2===a.state.wrap&&(a.adler=Wr(a.adler,s,c,l)),a.next_in+=c,a.total_in+=c,c),e.lookahead+=n,e.lookahead+e.insert>=3)for(e.ins_h=e.window[o=e.strstart-e.insert],e.ins_h=(e.ins_h<=3););}while(262>e.lookahead&&0!==e.strm.avail_in)}function ei(e,t){for(var n,r;;){if(262>e.lookahead){if(Qr(e),262>e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(n=0,3>e.lookahead||(e.ins_h=(e.ins_h<e.w_size-262||(e.match_length=Jr(e,n)),3>e.match_length)r=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;else if(r=Br(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length>e.max_lazy_match||3>e.lookahead)e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<e.strstart?e.strstart:2,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}function ti(e,t){for(var n,r,i;;){if(262>e.lookahead){if(Qr(e),262>e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(n=0,3>e.lookahead||(e.ins_h=(e.ins_h<e.prev_length&&e.w_size-262>=e.strstart-n&&(e.match_length=Jr(e,n),5>=e.match_length&&(1===e.strategy||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),3>e.prev_length||e.match_length>e.prev_length)if(e.match_available){if((r=Br(e,0,e.window[e.strstart-1]))&&Yr(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--;else{i=e.strstart+e.lookahead-3,r=Br(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart>i||(e.ins_h=(e.ins_h<e.strstart?e.strstart:2,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}function ni(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function ri(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new rr(1146),this.dyn_dtree=new rr(122),this.bl_tree=new rr(78),Vr(this.dyn_ltree),Vr(this.dyn_dtree),Vr(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new rr(16),this.heap=new rr(573),Vr(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new rr(573),Vr(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ii(e){var t,n=function(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,0>t.wrap&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=2===t.wrap?0:1,t.last_flush=0,Dr(t),0):qr(e,-2)}(e);return 0===n&&((t=e.state).window_size=2*t.w_size,Vr(t.head),t.max_lazy_match=Hr[t.level].max_lazy,t.good_match=Hr[t.level].good_length,t.nice_match=Hr[t.level].nice_length,t.max_chain_length=Hr[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),n}function oi(e,t){var n,r,i,o;if(!e||!e.state||t>5||0>t)return e?qr(e,-2):-2;if(r=e.state,!e.output||!e.input&&0!==e.avail_in||666===r.status&&4!==t)return qr(e,0===e.avail_out?-5:-2);if(r.strm=e,n=r.last_flush,r.last_flush=t,42===r.status)if(2===r.wrap)e.adler=0,Kr(r,31),Kr(r,139),Kr(r,8),r.gzhead?(Kr(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Kr(r,255&r.gzhead.time),Kr(r,r.gzhead.time>>8&255),Kr(r,r.gzhead.time>>16&255),Kr(r,r.gzhead.time>>24&255),Kr(r,9===r.level?2:r.strategy>=2||2>r.level?4:0),Kr(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(Kr(r,255&r.gzhead.extra.length),Kr(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Wr(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69):(Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,9===r.level?2:r.strategy>=2||2>r.level?4:0),Kr(r,3),r.status=113);else{var a=8+(r.w_bits-8<<4)<<8;a|=(r.strategy>=2||2>r.level?0:6>r.level?1:6===r.level?2:3)<<6,0!==r.strstart&&(a|=32),a+=31-a%31,r.status=113,Xr(r,a),0!==r.strstart&&(Xr(r,e.adler>>>16),Xr(r,65535&e.adler)),e.adler=1}if(69===r.status)if(r.gzhead.extra){for(i=r.pending;(65535&r.gzhead.extra.length)>r.gzindex&&(r.pending!==r.pending_buf_size||(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending!==r.pending_buf_size));)Kr(r,255&r.gzhead.extra[r.gzindex]),r.gzindex++;r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=73)}else r.status=73;if(73===r.status)if(r.gzhead.name){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending===r.pending_buf_size)){o=1;break}o=r.gzhead.name.length>r.gzindex?255&r.gzhead.name.charCodeAt(r.gzindex++):0,Kr(r,o)}while(0!==o);r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),0===o&&(r.gzindex=0,r.status=91)}else r.status=91;if(91===r.status)if(r.gzhead.comment){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending===r.pending_buf_size)){o=1;break}o=r.gzhead.comment.length>r.gzindex?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,Kr(r,o)}while(0!==o);r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),0===o&&(r.status=103)}else r.status=103;if(103===r.status&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&Gr(e),r.pending+2>r.pending_buf_size||(Kr(r,255&e.adler),Kr(r,e.adler>>8&255),e.adler=0,r.status=113)):r.status=113),0!==r.pending){if(Gr(e),0===e.avail_out)return r.last_flush=-1,0}else if(0===e.avail_in&&Zr(t)<=Zr(n)&&4!==t)return qr(e,-5);if(666===r.status&&0!==e.avail_in)return qr(e,-5);if(0!==e.avail_in||0!==r.lookahead||0!==t&&666!==r.status){var s=2===r.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(Qr(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}(r,t):3===r.strategy?function(e,t){for(var n,r,i,o,a=e.window;;){if(258>=e.lookahead){if(Qr(e),258>=e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(r=a[i=e.strstart-1])===a[++i]&&r===a[++i]&&r===a[++i]){o=e.strstart+258;do{}while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&o>i);e.match_length=258-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(3>e.match_length?(n=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++):(n=Br(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0),n&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}(r,t):Hr[r.level].func(r,t);if(3!==s&&4!==s||(r.status=666),1===s||3===s)return 0===e.avail_out&&(r.last_flush=-1),0;if(2===s&&(1===t?Fr(r):5!==t&&(zr(r,0,0,!1),3===t&&(Vr(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),Gr(e),0===e.avail_out))return r.last_flush=-1,0}return 4!==t?0:r.wrap>0?(2===r.wrap?(Kr(r,255&e.adler),Kr(r,e.adler>>8&255),Kr(r,e.adler>>16&255),Kr(r,e.adler>>24&255),Kr(r,255&e.total_in),Kr(r,e.total_in>>8&255),Kr(r,e.total_in>>16&255),Kr(r,e.total_in>>24&255)):(Xr(r,e.adler>>>16),Xr(r,65535&e.adler)),Gr(e),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?0:1):1}function ai(e,t){var n,r,i,o,a,s,l,u,c,f,h,d,p,g,m,v,y,b,w,_,x,k,S,C,E;C=e.input,i=(r=e.next_in)+(e.avail_in-5),E=e.output,a=(o=e.next_out)-(t-e.avail_out),s=o+(e.avail_out-257),l=(n=e.state).dmax,u=n.wsize,c=n.whave,f=n.wnext,h=n.window,d=n.hold,p=n.bits,g=n.lencode,m=n.distcode,v=(1<p&&(d+=C[r++]<>>=w=b>>>24,p-=w,0===(w=b>>>16&255))E[o++]=65535&b;else{if(!(16&w)){if(0==(64&w)){b=g[(65535&b)+(d&(1<p&&(d+=C[r++]<>>=w,p-=w),15>p&&(d+=C[r++]<>>=w=b>>>24,p-=w,!(16&(w=b>>>16&255))){if(0==(64&w)){b=m[(65535&b)+(d&(1<p&&(d+=C[r++]<(p+=8)&&(d+=C[r++]<l){e.msg="invalid distance too far back",n.mode=30;break e}if(d>>>=w,p-=w,x>(w=o-a)){if((w=x-w)>c&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(k=0,S=h,0===f){if(k+=u-w,_>w){_-=w;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}}else if(w>f){if(k+=u+f-w,_>(w-=f)){_-=w;do{E[o++]=h[k++]}while(--w);if(k=0,_>f){_-=w=f;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}}}else if(k+=f-w,_>w){_-=w;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}for(;_>2;)E[o++]=S[k++],E[o++]=S[k++],E[o++]=S[k++],_-=3;_&&(E[o++]=S[k++],_>1&&(E[o++]=S[k++]))}else{k=o-x;do{E[o++]=E[k++],E[o++]=E[k++],E[o++]=E[k++],_-=3}while(_>2);_&&(E[o++]=E[k++],_>1&&(E[o++]=E[k++]))}break}}break}}while(i>r&&s>o);d&=(1<<(p-=(_=p>>3)<<3))-1,e.next_in=r-=_,e.next_out=o,e.avail_in=i>r?i-r+5:5-(r-i),e.avail_out=s>o?s-o+257:257-(o-s),n.hold=d,n.bits=p}Hr=[new ni(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(1>=e.lookahead){if(Qr(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,Yr(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-262&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&Yr(e,!1),1)})),new ni(4,4,8,4,ei),new ni(4,5,16,8,ei),new ni(4,6,32,32,ei),new ni(4,4,16,16,ti),new ni(8,16,32,32,ti),new ni(8,16,128,128,ti),new ni(8,32,128,256,ti),new ni(32,128,258,1024,ti),new ni(32,258,258,4096,ti)];var si=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],li=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],ui=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],ci=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];function fi(e,t,n,r,i,o,a,s){var l,u,c,f,h,d,p,g,m,v=s.bits,y=0,b=0,w=0,_=0,x=0,k=0,S=0,C=0,E=0,A=0,L=null,O=0,T=new rr(16),M=new rr(16),j=null,P=0;for(y=0;15>=y;y++)T[y]=0;for(b=0;r>b;b++)T[t[n+b]]++;for(x=v,_=15;_>=1&&0===T[_];_--);if(x>_&&(x=_),0===_)return i[o++]=20971520,i[o++]=20971520,s.bits=1,0;for(w=1;_>w&&0===T[w];w++);for(w>x&&(x=w),C=1,y=1;15>=y;y++)if(C<<=1,0>(C-=T[y]))return-1;if(C>0&&(0===e||1!==_))return-1;for(M[1]=0,y=1;15>y;y++)M[y+1]=M[y]+T[y];for(b=0;r>b;b++)0!==t[n+b]&&(a[M[t[n+b]]++]=b);if(0===e?(L=j=a,d=19):1===e?(L=si,O-=257,j=li,P-=257,d=256):(L=ui,j=ci,d=-1),A=0,b=0,y=w,h=o,k=x,S=0,c=-1,f=(E=1<852||2===e&&E>592)return 1;for(;;){p=y-S,d>a[b]?(g=0,m=a[b]):a[b]>d?(g=j[P+a[b]],m=L[O+a[b]]):(g=96,m=0),l=1<>S)+(u-=l)]=p<<24|g<<16|m|0}while(0!==u);for(l=1<>=1;if(0!==l?(A&=l-1,A+=l):A=0,b++,0==--T[y]){if(y===_)break;y=t[n+a[b]]}if(y>x&&(A&f)!==c){for(0===S&&(S=x),h+=w,C=1<<(k=y-S);_>k+S&&(C-=T[k+S])>0;)k++,C<<=1;if(E+=1<852||2===e&&E>592)return 1;i[c=A&f]=x<<24|k<<16|h-o|0}}return 0!==A&&(i[h+A]=y-S<<24|64<<16|0),s.bits=x,0}function hi(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function di(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new rr(320),this.work=new rr(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function pi(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,function(e){var t;return e&&e.state?(e.total_in=e.total_out=(t=e.state).total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new ir(852),t.distcode=t.distdyn=new ir(592),t.sane=1,t.back=-1,0):-2}(e)):-2}function gi(e,t){var n,r;return e?(r=new di,e.state=r,r.window=null,0!==(n=function(e,t){var n,r;return e&&e.state?(0>t?(n=0,t=-t):(n=1+(t>>4),48>t&&(t&=15)),t&&(8>t||t>15)?-2:(null!==(r=e.state).window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,pi(e))):-2}(e,t))&&(e.state=null),n):-2}var mi,vi,yi,bi=!0;function wi(e){if(bi){var t;for(mi=new ir(512),vi=new ir(32),t=0;144>t;)e.lens[t++]=8;for(;256>t;)e.lens[t++]=9;for(;280>t;)e.lens[t++]=7;for(;288>t;)e.lens[t++]=8;for(fi(1,e.lens,0,288,mi,0,e.work,{bits:9}),t=0;32>t;)e.lens[t++]=5;fi(2,e.lens,0,32,vi,0,e.work,{bits:5}),bi=!1}e.lencode=mi,e.lenbits=9,e.distcode=vi,e.distbits=5}function _i(e,t){var n,r,i,o,a,s,l,u,c,f,h,d,p,g,m,v,y,b,w,_,x,k,S,C,E=0,A=new nr(4),L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return-2;12===(n=e.state).mode&&(n.mode=13),a=e.next_out,i=e.output,o=e.next_in,r=e.input,u=n.hold,c=n.bits,f=s=e.avail_in,h=l=e.avail_out,k=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,n.check=Wr(n.check,A,2,0),u=0,c=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&u)){e.msg="unknown compression method",n.mode=30;break}if(c-=4,x=8+(15&(u>>>=4)),0===n.wbits)n.wbits=x;else if(x>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<c;){if(0===s)break e;s--,u+=r[o++]<>8&1),512&n.flags&&(A[0]=255&u,A[1]=u>>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0,n.mode=3;case 3:for(;32>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,A[2]=u>>>16&255,A[3]=u>>>24&255,n.check=Wr(n.check,A,4,0)),u=0,c=0,n.mode=4;case 4:for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>8),512&n.flags&&(A[0]=255&u,A[1]=u>>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0,n.mode=5;case 5:if(1024&n.flags){for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((d=n.length)>s&&(d=s),d&&(n.head&&(x=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),tr(n.head.extra,r,o,d,x)),512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,n.length-=d),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===s)break e;d=0;do{x=r[o+d++],n.head&&x&&65536>n.length&&(n.head.name+=String.fromCharCode(x))}while(x&&s>d);if(512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,x)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===s)break e;d=0;do{x=r[o+d++],n.head&&x&&65536>n.length&&(n.head.comment+=String.fromCharCode(x))}while(x&&s>d);if(512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,x)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;32>c;){if(0===s)break e;s--,u+=r[o++]<>>=7&c,c-=7&c,n.mode=27;break}for(;3>c;){if(0===s)break e;s--,u+=r[o++]<>>=1)){case 0:n.mode=14;break;case 1:if(wi(n),n.mode=20,6===t){u>>>=2,c-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}u>>>=2,c-=2;break;case 14:for(u>>>=7&c,c-=7&c;32>c;){if(0===s)break e;s--,u+=r[o++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&u,u=0,c=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(d=n.length){if(d>s&&(d=s),d>l&&(d=l),0===d)break e;tr(i,r,o,d,a),s-=d,o+=d,l-=d,a+=d,n.length-=d;break}n.mode=12;break;case 17:for(;14>c;){if(0===s)break e;s--,u+=r[o++]<>>=5)),c-=5,n.ncode=4+(15&(u>>>=5)),u>>>=4,c-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.ncode>n.have;){for(;3>c;){if(0===s)break e;s--,u+=r[o++]<>>=3,c-=3}for(;19>n.have;)n.lens[L[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,k=fi(0,n.lens,0,19,n.lencode,0,n.work,S={bits:n.lenbits}),n.lenbits=S.bits,k){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.nlen+n.ndist>n.have;){for(;v=(E=n.lencode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<y)u>>>=m,c-=m,n.lens[n.have++]=y;else{if(16===y){for(C=m+2;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m,c-=m,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}x=n.lens[n.have-1],d=3+(3&u),u>>>=2,c-=2}else if(17===y){for(C=m+3;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m)),u>>>=3,c-=3}else{for(C=m+7;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m)),u>>>=7,c-=7}if(n.have+d>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;d--;)n.lens[n.have++]=x}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,k=fi(1,n.lens,0,n.nlen,n.lencode,0,n.work,S={bits:n.lenbits}),n.lenbits=S.bits,k){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,k=fi(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,S={bits:n.distbits}),n.distbits=S.bits,k){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(s>=6&&l>=258){e.next_out=a,e.avail_out=l,e.next_in=o,e.avail_in=s,n.hold=u,n.bits=c,ai(e,h),a=e.next_out,i=e.output,l=e.avail_out,o=e.next_in,r=e.input,s=e.avail_in,u=n.hold,c=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;v=(E=n.lencode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<>b)])>>>16&255,y=65535&E,c>>24);){if(0===s)break e;s--,u+=r[o++]<>>=b,c-=b,n.back+=b}if(u>>>=m,c-=m,n.back+=m,n.length=y,0===v){n.mode=26;break}if(32&v){n.back=-1,n.mode=12;break}if(64&v){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&v,n.mode=22;case 22:if(n.extra){for(C=n.extra;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=n.extra,c-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;v=(E=n.distcode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<>b)])>>>16&255,y=65535&E,c>>24);){if(0===s)break e;s--,u+=r[o++]<>>=b,c-=b,n.back+=b}if(u>>>=m,c-=m,n.back+=m,64&v){e.msg="invalid distance code",n.mode=30;break}n.offset=y,n.extra=15&v,n.mode=24;case 24:if(n.extra){for(C=n.extra;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=n.extra,c-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===l)break e;if(n.offset>(d=h-l)){if((d=n.offset-d)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}p=d>n.wnext?n.wsize-(d-=n.wnext):n.wnext-d,d>n.length&&(d=n.length),g=n.window}else g=i,p=a-n.offset,d=n.length;d>l&&(d=l),l-=d,n.length-=d;do{i[a++]=g[p++]}while(--d);0===n.length&&(n.mode=21);break;case 26:if(0===l)break e;i[a++]=n.length,l--,n.mode=21;break;case 27:if(n.wrap){for(;32>c;){if(0===s)break e;s--,u|=r[o++]<c;){if(0===s)break e;s--,u+=r[o++]<n.mode&&(27>n.mode||4!==t))&&function(e,t,n,r){var i,o=e.state;null===o.window&&(o.wsize=1<r?((i=o.wsize-o.wnext)>r&&(i=r),tr(o.window,t,n-r,i,o.wnext),(r-=i)?(tr(o.window,t,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.wsize>o.whave&&(o.whave+=i))):(tr(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize)}(e,e.output,e.next_out,h-e.avail_out),h-=e.avail_out,e.total_in+=f-=e.avail_in,e.total_out+=h,n.total+=h,n.wrap&&h&&(e.adler=n.check=n.flags?Wr(n.check,i,h,e.next_out-h):Ur(n.check,i,h,e.next_out-h)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0===f&&0===h||4===t)&&0===k&&(k=-5),k}function xi(e){if(1>e||e>7)throw new TypeError("Bad argument");this.mode=e,this.init_done=!1,this.write_in_progress=!1,this.pending_close=!1,this.windowBits=0,this.level=0,this.memLevel=0,this.strategy=0,this.dictionary=null}function ki(e,t){for(var n=0;e.length>n;n++)this[t+n]=e[n]}xi.prototype.init=function(e,t,n,r,i){var o;switch(this.windowBits=e,this.level=t,this.memLevel=n,this.strategy=r,3!==this.mode&&4!==this.mode||(this.windowBits+=16),7===this.mode&&(this.windowBits+=32),5!==this.mode&&6!==this.mode||(this.windowBits=-this.windowBits),this.strm=new er,this.mode){case 1:case 3:case 5:o=function(e,t,n,r,i,o){if(!e)return-2;var a=1;if(-1===t&&(t=6),0>r?(a=0,r=-r):r>15&&(a=2,r-=16),1>i||i>9||8!==n||8>r||r>15||0>t||t>9||0>o||o>4)return qr(e,-2);8===r&&(r=9);var s=new ri;return e.state=s,s.strm=e,s.wrap=a,s.gzhead=null,s.w_bits=r,s.w_size=1<e.chunkSize||e.chunkSize>Ci.Z_MAX_CHUNK))throw Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(Ci.Z_MIN_WINDOWBITS>e.windowBits||e.windowBits>Ci.Z_MAX_WINDOWBITS))throw Error("Invalid windowBits: "+e.windowBits);if(e.level&&(Ci.Z_MIN_LEVEL>e.level||e.level>Ci.Z_MAX_LEVEL))throw Error("Invalid compression level: "+e.level);if(e.memLevel&&(Ci.Z_MIN_MEMLEVEL>e.memLevel||e.memLevel>Ci.Z_MAX_MEMLEVEL))throw Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=Ci.Z_FILTERED&&e.strategy!=Ci.Z_HUFFMAN_ONLY&&e.strategy!=Ci.Z_RLE&&e.strategy!=Ci.Z_FIXED&&e.strategy!=Ci.Z_DEFAULT_STRATEGY)throw Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!ht(e.dictionary))throw Error("Invalid dictionary: it should be a Buffer instance");this._binding=new Ci.Zlib(t);var n=this;this._hadError=!1,this._binding.onerror=function(e,t){n._binding=null,n._hadError=!0;var r=Error(e);r.errno=t,r.code=Ci.codes[t],n.emit("error",r)};var r=Ci.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(r=e.level);var i=Ci.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(i=e.strategy),this._binding.init(e.windowBits||Ci.Z_DEFAULT_WINDOWBITS,r,e.memLevel||Ci.Z_DEFAULT_MEMLEVEL,i,e.dictionary),this._buffer=new Te(this._chunkSize),this._offset=0,this._closed=!1,this._level=r,this._strategy=i,this.once("end",this.close)}Object.keys(Ei).forEach((function(e){Ei[Ei[e]]=e})),It(Di,Yn),Di.prototype.params=function(e,t,n){if(Ci.Z_MIN_LEVEL>e||e>Ci.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(t!=Ci.Z_FILTERED&&t!=Ci.Z_HUFFMAN_ONLY&&t!=Ci.Z_RLE&&t!=Ci.Z_FIXED&&t!=Ci.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+t);if(this._level!==e||this._strategy!==t){var r=this;this.flush(Ci.Z_SYNC_FLUSH,(function(){r._binding.params(e,t),r._hadError||(r._level=e,r._strategy=t,n&&n())}))}else Ct(n)},Di.prototype.reset=function(){return this._binding.reset()},Di.prototype._flush=function(e){this._transform(new Te(0),"",e)},Di.prototype.flush=function(e,t){var n=this._writableState;if(("function"==typeof e||void 0===e&&!t)&&(t=e,e=Ci.Z_FULL_FLUSH),n.ended)t&&Ct(t);else if(n.ending)t&&this.once("end",t);else if(n.needDrain){var r=this;this.once("drain",(function(){r.flush(t)}))}else this._flushFlag=e,this.write(new Te(0),"",t)},Di.prototype.close=function(e){if(e&&Ct(e),!this._closed){this._closed=!0,this._binding.close();var t=this;Ct((function(){t.emit("close")}))}},Di.prototype._transform=function(e,t,n){var r,i=this._writableState,o=(i.ending||i.ended)&&(!e||i.length===e.length);if(null===!e&&!ht(e))return n(Error("invalid input"));o?r=Ci.Z_FINISH:(r=this._flushFlag,i.length>e.length||(this._flushFlag=this._opts.flush||Ci.Z_NO_FLUSH)),this._processChunk(e,r,n)},Di.prototype._processChunk=function(e,t,n){var r=e&&e.length,i=this._chunkSize-this._offset,o=0,a=this,s="function"==typeof n;if(!s){var l,u=[],c=0;this.on("error",(function(e){l=e}));do{var f=this._binding.writeSync(t,e,o,r,this._buffer,this._offset,i)}while(!this._hadError&&p(f[0],f[1]));if(this._hadError)throw l;var h=Te.concat(u,c);return this.close(),h}var d=this._binding.write(t,e,o,r,this._buffer,this._offset,i);function p(l,f){if(!a._hadError){var h=i-f;if(function(e,t){if(!e)throw Error(t)}(h>=0,"have should not go down"),h>0){var d=a._buffer.slice(a._offset,a._offset+h);a._offset+=h,s?a.push(d):(u.push(d),c+=d.length)}if(0!==f&&a._chunkSize>a._offset||(i=a._chunkSize,a._offset=0,a._buffer=new Te(a._chunkSize)),0===f){if(o+=r-l,r=l,!s)return!0;var g=a._binding.write(t,e,o,r,a._buffer,a._offset,a._chunkSize);return g.callback=p,void(g.buffer=e)}if(!s)return!1;n()}}d.buffer=e,d.callback=p},It(Oi,Di),It(Ti,Di),It(Mi,Di),It(ji,Di),It(Pi,Di),It(Ri,Di),It(Ni,Di);var zi={codes:Ei,createDeflate:function(e){return new Oi(e)},createInflate:function(e){return new Ti(e)},createDeflateRaw:function(e){return new Pi(e)},createInflateRaw:function(e){return new Ri(e)},createGzip:function(e){return new Mi(e)},createGunzip:function(e){return new ji(e)},createUnzip:function(e){return new Ni(e)},deflate:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Oi(t),e,n)},deflateSync:function(e,t){return Li(new Oi(t),e)},gzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Mi(t),e,n)},gzipSync:function(e,t){return Li(new Mi(t),e)},deflateRaw:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Pi(t),e,n)},deflateRawSync:function(e,t){return Li(new Pi(t),e)},unzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ni(t),e,n)},unzipSync:function(e,t){return Li(new Ni(t),e)},inflate:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ti(t),e,n)},inflateSync:function(e,t){return Li(new Ti(t),e)},gunzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new ji(t),e,n)},gunzipSync:function(e,t){return Li(new ji(t),e)},inflateRaw:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ri(t),e,n)},inflateRawSync:function(e,t){return Li(new Ri(t),e)},Deflate:Oi,Inflate:Ti,Gzip:Mi,Gunzip:ji,DeflateRaw:Pi,InflateRaw:Ri,Unzip:Ni,Zlib:Di};function Fi(e,t,n){var r=(3&e)<<4|t>>4,i=(15&t)<<2|n>>6,o=63&n,a="";return a+=Ii(63&e>>2),a+=Ii(63&r),a+=Ii(63&i),a+Ii(63&o)}function Ii(e){return 10>e?String.fromCharCode(48+e):26>(e-=10)?String.fromCharCode(65+e):26>(e-=26)?String.fromCharCode(97+e):0==(e-=26)?"-":1==e?"_":"?"}function Bi(e){var t=e.charCodeAt(0);return"_"===e?63:"-"===e?62:97>t?65>t?48>t?"?":t-48:t-55:t-61}function Ui(e){var t=Bi(e[0]),n=Bi(e[1]),r=Bi(e[2]);return[t<<2|n>>4&63,n<<4&240|r>>2&15,r<<6&192|63&Bi(e[3])]}function Hi(e){return function(e){for(var t="",n=0;e.length>n;n+=3)t+=n+2==e.length?Fi(e.charCodeAt(n),e.charCodeAt(n+1),0):n+1==e.length?Fi(e.charCodeAt(n),0,0):Fi(e.charCodeAt(n),e.charCodeAt(n+1),e.charCodeAt(n+2));return t}(zi.deflateRawSync(e,{level:9}).toString("binary"))}function $i(e){return""+zi.inflateRawSync(Te.from(function(e){var t="",n=0;for(n=0;e.length>n;n+=4){var r=Ui(e.substring(n,n+4));t+=String.fromCharCode(r[0]),t+=String.fromCharCode(r[1]),t+=String.fromCharCode(r[2])}return t}(e),"binary"))}var Wi={encodeuml:function(e){return Hi("".concat("@startuml").concat((e.split("@startuml")[1]+"").split("@enduml")[0]||"").concat("@enduml"))},decodeuml:function(e){return $i(e)}},qi=0;function Zi(e,t){return qi=e.length,new Promise((function(n){var r=[];e.forEach((function(e){r.push(function(e,t){return new Promise((function(n){var r=e.dataset.lang,i=r?JSON.parse(r):null,o="";if(i){if("boolean"==typeof i.codeblock&&i.codeblock||"string"==typeof i.codeblock&&"true"===i.codeblock.toLowerCase())return n(!1);i.align&&("center"===i.align?o="diagram-center":"right"===i.align&&(o="diagram-right"))}var a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&o?" ":"")+o,l=t.imageFormat;if("svg"!==l){var u=window&&window.location.protocol,c=("http:"===u||"https:"===u?"//":"https://")+t.umlWebSite,f="img"!==l?".".concat(l):"",h=Wi.encodeuml(a),d="".concat(c,"/").concat(l,"/").concat(h).concat(f);return e.parentNode.outerHTML='
"),n(!0)}var p="plantuml-"+Date.now()+"-"+Math.floor(1e4*Math.random());if("function"==typeof t.svgRender&&t.svgRender)t.svgRender(p,s,a,qi).then((function(t){e.parentNode.outerHTML='
').concat(t,"
"),n(!0)}));else if("undefined"!=typeof window&&window.fetch&&window.dispatchEvent){var g=window&&window.location.protocol,m=("http:"===g||"https:"===g?"//":"https://")+t.umlWebSite,v="img"!==l?".".concat(l):"",y=Wi.encodeuml(a),b="".concat(m,"/").concat(l,"/").concat(y).concat(v);window.fetch(b).then((function(e){if(e.ok)return e.text()})).then((function(t){e.parentNode.outerHTML='
').concat(t,"
"),n(!0)}))}}))}(e,t))})),Promise.all(r).then((function(){n(!0)}))}))}function Vi(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({umlWebSite:"www.plantuml.com/plantuml",imageFormat:"img",svgRender:null},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.plantuml.language-plantuml");return!!n.length&&Zi(n,this.config).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown railroad extension can only be used in browser environment!");var Gi=!1;function Yi(){return Gi}var Ki,Xi=!1;function Ji(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=k.getSrc("railroadCSS"),a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,l="railroad-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,function e(t,n){if(Yi()){var r=n.id,i=n.className,o=n.cssLink,a=window.eval(n.data).format(),s=n.element.ownerDocument;n.element.parentNode.outerHTML=o?'
'):'
'),a.addTo(s.getElementById(r)),t(!0)}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:l,className:s,data:a,cssLink:o})}))}function Qi(e){var t;return t=Yi(),"undefined"!=typeof window&&(t||Xi||(Xi=!0,k.loadStyleSheet("railroadCSS"),k.loadScript("railroad").then((function(){Gi=!0})))),new Promise((function(t){var n=[];e.forEach((function(e){n.push(Ji(e))})),Promise.all(n).then((function(){t(!0)}))}))}function eo(){return[{type:"output",filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.railroad.language-railroad");return!!n.length&&(this.config={cssLink:k.getSrc("railroadCSS")},Qi(n).then((function(){return e})))}}]}if("undefined"==typeof window)throw Error("The showdown sequence extension can only be used in browser environment!");if("undefined"!=typeof window&&window.Diagram&&(Ki=window.Diagram,window.Diagram.Signal))var to=window.Diagram;var no=["simple","hand"];function ro(){return!!to}void 0===to&&"undefined"!=typeof window&&(to=window.SequenceJS);var io=!1;function oo(e){var t=e.dataset.lang,n=t?JSON.parse(t):null,r="";if(n){if("boolean"==typeof n.codeblock&&n.codeblock||"string"==typeof n.codeblock&&"true"===n.codeblock.toLowerCase())return;n.align&&("center"===n.align?r="diagram-center":"right"===n.align&&(r="diagram-right"))}var i=function(){var e=ro();return"undefined"!=typeof window&&(e||io||(io=!0,k.loadStyleSheet("sequenceCSS"),k.loadScript("WebFont").then((function(){return k.loadScript("Snap")})).then((function(){return k.loadScript("underscore")})).then((function(){return!Ki&&window.Diagram&&(Ki=window.Diagram),k.loadScript("sequence")})).then((function(){to=window.Diagram,window.SequenceJS=to,Ki&&(window.Diagram=Ki)})))),e}(),o=k.getSrc("sequenceCSS"),a=e.textContent.trim(),s="js-sequence"+(r?" ":"")+r,l="sequence-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,o&&(e.className=e.className+(e.className?" ":"")+"css-sequence",e.dataset.css=o),!i&&"undefined"!=typeof window&&window.dispatchEvent?Promise.resolve(l).then((function(e){window.dispatchEvent(new CustomEvent("sequence",{detail:{id:e,className:s,data:a,langattr:t,cssLink:o}}))})):"undefined"!=typeof window&&window.dispatchEvent&&window.dispatchEvent(new CustomEvent("sequence",{detail:{id:l,className:s,data:a,langattr:t,cssLink:o}}))}function ao(){var e=new DOMParser;return"undefined"!=typeof window&&window.dispatchEvent&&window.addEventListener("sequence",(function(e){e.detail&&function e(t){if(ro()){var n=t.id,r=t.className,i=t.data,o=t.cssLink,a="hand",s=t.langattr;if(s){var l=JSON.parse(s);l&&l.theme&&-1!=no.indexOf(l.theme)&&(a=l.theme)}var u=window.document.getElementById(n);if(u)return u.parentNode.outerHTML=o?'
'):'
'),u=window.document.getElementById(n),void to.parse(i).drawSVG(u||n,{theme:a})}setTimeout((function(){e(t)}),50)}(e.detail)})),[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n,i=r.querySelectorAll("code.sequence.language-sequence");return i.length&&(this.config={cssLink:k.getSrc("sequenceCSS")}),function(e){return!!e.length&&(e.forEach((function(e){oo(e)})),!0)}(i)?r.innerHTML:t}}]}if("undefined"==typeof window)throw Error("The showdown wavedrom extension can only be used in browser environment!");if(void 0===so)var so=window.WaveDrom||void 0;var lo=0,uo=0;function co(){return!!so}var fo=!1;function ho(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return;r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s=uo;++uo,--lo||(uo=0);var l="WaveDrom_Display_";e.id=l+s,function e(t,n){if(co()){var r=n.index,i=n.id,o=n.data,a=n.element;a.parentNode.outerHTML=k.renderCacheElement(a.ownerDocument,i+r,n.className,(function(e){var t=window.eval("(".concat(o,")"));so.RenderWaveForm(r,t,i);var n=document.getElementById("WaveDrom_Display_"+r);if(e!=n)for(;n.childNodes.length;)e.appendChild(n.removeChild(n.childNodes[0]))})),t(!0)}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,index:s,id:l,className:a,data:o})}))}function po(e,t){return function(e){var t=co();t||fo||(fo=!0,"undefined"!=typeof window&&k.loadScript({WaveDromSkin:e}).then((function(){return k.loadScript("WaveDrom")})).then((function(e){so=k.interopDefault(window[e])})))}(t),new Promise((function(t){var n=[];lo=e.length,e.forEach((function(e){n.push(ho(e))})),Promise.all(n).then((function(){t(!0)}))}))}function go(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({skin:"default"},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.wavedrom.language-wavedrom");return!!n.length&&po(n,this.config.skin).then((function(){return e}))}}]}function mo(){return[{type:"lang",filter:function(e,t){return e.replace(/^\[\^([\d\w]+)\]:\s*((\n+(\s{2,4}|\t).+)+)$/gm,(function(e,n,r,i,o){var a=t.makeHtml(r.replace(RegExp("^".concat(o),"gm"),""));return'
[').concat(n,"]:").concat(a,"
")}))}},{type:"lang",filter:function(e){return e.replace(/^\[\^([\d\w]+)\]:( |\n)((.+\n)*.+)$/gm,(function(e,t,n,r){return'[').concat(t,"]: ").concat(r,"")}))}},{type:"lang",filter:function(e){return e.replace(/\[\^([\d\w]+)\]/m,(function(e,t){return'[').concat(t,"]")}))}}]}function vo(){return[{type:"lang",filter:function(e,t){return e.replace(/(?:^|\n)(?: {0,3})(:::+)(?: *)([\S]+)(?:[ \t]*)([^\s][\S\t ]*)?\n([\s\S]*?)\n(?: {0,3})\1(?:[ \t]*)\n/g,(function(e,n,r,i,o){if(r){var a=r.split("-");a.length>1?a.forEach((function(e,t,n){t>0&&(n[t]=n[t-1]+"-"+e)})):a.unshift("container"),r=a.join(" ")}return o&&(o=t.makeHtml(o)),i=i?'

'.concat(i,"

"):"",'
').concat(i).concat(o,"
")}))}}]}if("undefined"==typeof window)throw Error("The showdown flowchart extension can only be used in browser environment!");if(void 0===yo)var yo=window.Raphael||void 0;if(void 0===bo)var bo=window.flowchart||void 0;function wo(){return!(void 0===yo||!yo||void 0===bo||!bo)}var _o=!1;function xo(e,t){return new Promise((function(n){var r=e.dataset.lang,i=r?JSON.parse(r):null,o="";if(i){if("boolean"==typeof i.codeblock&&i.codeblock||"string"==typeof i.codeblock&&"true"===i.codeblock.toLowerCase())return n(!1);i.align&&("center"===i.align?o="diagram-center":"right"===i.align&&(o="diagram-right"))}var a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&o?" ":"")+o,l="flowchart-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,function e(t,n){if(wo()){var r=n.data,i=n.options;n.element.parentNode.outerHTML=k.renderCacheElement(n.element.ownerDocument,n.id,n.className,(function(e){bo.parse(r).drawSVG(e,i)})),t(!0)}else setTimeout((function(){e(t,n)}),50)}(n,{element:e,id:l,className:s,data:a,options:t})}))}function ko(e,t,n){var r;return r=wo(),"undefined"!=typeof window&&(r||_o||(_o=!0,k.loadScript("Raphael").then((function(e){return yo=k.interopDefault(window[e]),k.loadScript("flowchart")})).then((function(e){bo=k.interopDefault(window[e])})))),new Promise((function(r){var i=[];e.forEach((function(e){i.push(xo(e,n))})),t.forEach((function(e){i.push(xo(e,n))})),Promise.all(i).then((function(){r(!0)}))}))}function So(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({"line-width":3,maxWidth:3,"line-length":50,"text-margin":10,"font-size":14,font:"normal","font-family":"Helvetica","font-weight":"normal","font-color":"black","line-color":"black","element-color":"black",fill:"white","yes-text":"yes","no-text":"no","arrow-end":"block",scale:1,symbols:{start:{"font-color":"red","element-color":"green",fill:"yellow"},end:{class:"end-element"}},flowstate:{past:{fill:"#CCCCCC","font-size":12},current:{fill:"yellow","font-color":"red","font-weight":"bold"},future:{fill:"#FFFF99"},request:{fill:"blue"},invalid:{fill:"#444444"},approved:{fill:"#58C4A3","font-size":12,"yes-text":"APPROVED","no-text":"n/a"},rejected:{fill:"#C45879","font-size":12,"yes-text":"n/a","no-text":"REJECTED"}}},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.flowchart.language-flowchart"),r=t.querySelectorAll("code.flow.language-flow");return!(!n.length&&!r.length)&&ko(n,r,this.config).then((function(){return e}))}}]}var Co=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({flavor:"github"},e)},Eo=["github","ghost","vanilla","original","allon"],Ao=["default","forest","dark","neutral"],Lo=["excel","ggplot2","quartz","vox","dark"],Oo=["canvas","svg"],To=["svg","png","jpg"];return{showdown:l,converter:null,defaultOptions:{showdown:Co(),plantuml:{imageFormat:"svg"},mermaid:{theme:"default"},katex:{},vega:{theme:"vox"}},defaultExtensions:{},defaultAsyncExtensions:{},markdownDecodeFilter:function(e){return""},initDefaultOptions:function(){this.defaultOptions||(this.defaultOptions={showdown:{},plantuml:{},mermaid:{},katex:{},vega:{}})},setFlavor:function(e){this.showdown.setFlavor(e),this.converter&&this.converter.setFlavor(e)},addOptions:function(e){for(var t in e)"flavor"!==t&&(this.showdown.setOption(t,e[t]),this.converter&&this.converter.setOption(t,e[t]))},addExtension:function(e,t){if(this.removeExtension(e),"string"==typeof e)try{l.extension(e,t),this.converter&&this.converter.addExtension(e)}catch(e){}},removeExtension:function(e){if("string"==typeof e){if(this.converter){var t=null;try{t=l.extension(e)}catch(e){}if(!t)return;this.converter.removeExtension(t)}l.removeExtension(e)}},addAsyncExtension:function(e,t){if(this.removeAsyncExtension(e),"string"==typeof e)try{l.asyncExtension(e,t),this.converter&&this.converter.addAsyncExtension(e)}catch(e){}},removeAsyncExtension:function(e){if("string"==typeof e){if(this.converter){var t=null;try{t=l.asyncExtension(e)}catch(e){}if(!t)return;this.converter.removeAsyncExtension(t)}l.removeAsyncExtension(e)}},setCDN:function(e,t,n){"string"==typeof e&&e&&k.setCDN(e,t,n)},setShowdownFlavor:function(e){this.initDefaultOptions(),e&&(-1===Eo.indexOf(e)&&(e="github"),this.defaultOptions.showdown.flavor=e,this.setFlavor(e))},setShowdownOptions:function(t){return this.initDefaultOptions(),"object"===e(t)&&t||(t={}),this.defaultOptions.showdown=Object.assign(this.defaultOptions.showdown||{},t),this.setShowdownFlavor(this.defaultOptions.showdown.flavor),this.addOptions(this.defaultOptions.showdown),this.defaultOptions.showdown},setPlantumlOptions:function(t){this.initDefaultOptions(),"object"===e(t)&&t||(t={}),this.defaultOptions.plantuml=Object.assign(this.defaultOptions.plantuml||{},t);var n=this.defaultOptions.plantuml.imageFormat;return n&&-1===To.indexOf(n)&&(this.defaultOptions.plantuml.imageFormat="png"),this.converter&&this.addAsyncExtension("showdown-plantuml",Vi(this.defaultOptions.plantuml)),this.defaultOptions.plantuml},setMermaidOptions:function(t){this.initDefaultOptions(),"object"===e(t)&&t||(t={}),this.defaultOptions.mermaid=Object.assign(this.defaultOptions.mermaid||{},t);var n=this.defaultOptions.mermaid.theme;return n&&-1===Ao.indexOf(n)&&(this.defaultOptions.mermaid.theme="default"),this.converter&&this.addAsyncExtension("showdown-mermaid",ge(this.defaultOptions.mermaid)),this.defaultOptions.mermaid},setKatexOptions:function(t){return this.initDefaultOptions(),"object"===e(t)&&t||(t={}),this.defaultOptions.katex=Object.assign(this.defaultOptions.katex||{},t),this.converter&&this.addAsyncExtension("showdown-katex",ue(this.defaultOptions.katex)),this.defaultOptions.katex},setVegaOptions:function(t){this.initDefaultOptions(),"object"===e(t)&&t||(t={}),this.defaultOptions.vega=Object.assign(this.defaultOptions.vega||{},t);var n=this.defaultOptions.vega.theme;n&&-1===Lo.indexOf(n)&&(this.defaultOptions.vega.theme="vox");var r=this.defaultOptions.vega.renderer;return r&&-1===Oo.indexOf(r)&&(this.defaultOptions.vega.renderer="canvas"),this.converter&&this.addAsyncExtension("showdown-vega",D(this.defaultOptions.vega)),this.defaultOptions.vega},init:function(t){if(this.converter){var n={};if("object"===e(n="boolean"==typeof t&&t?{option:!0,extension:!0}:t)){if(n.hasOwnProperty("option")&&n.option){var r=Co(this.defaultOptions&&this.defaultOptions.showdown||{});this.addOptions(r)}n.hasOwnProperty("extension")&&n.extension&&(this.addAsyncExtension("showdown-plantuml",Vi(this.defaultOptions.plantuml)),this.addAsyncExtension("showdown-mermaid",ge(this.defaultOptions.mermaid)),this.addAsyncExtension("showdown-vega",D(this.defaultOptions.vega)))}}else{var o=Co(this.defaultOptions&&this.defaultOptions.showdown||{}),a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=i({"showdown-toc":m,"showdown-align":z,"showdown-footnotes":mo,"showdown-container":vo,"showdown-sequence":ao},t),r=[];for(var o in n)n.hasOwnProperty(o)&&(l.extension(o,n[o]),r.push(o));return r}(this.defaultOptions,this.defaultExtensions),s=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e&&e.mermaid||{},r=e&&e.plantuml||{},o=e&&e.katex||{},a=e&&e.vega||{},s=i({"showdown-plantuml":Vi(r),"showdown-mermaid":ge(n),"showdown-katex":ue(o),"showdown-flowchart":So,"showdown-viz":T,"showdown-vega":D(a),"showdown-wavedrom":go,"showdown-railroad":eo},t),u=[];for(var c in s)s.hasOwnProperty(c)&&(l.asyncExtension(c,s[c]),u.push(c));return u}(this.defaultOptions,this.defaultAsyncExtensions);this.setFlavor(o.flavor),this.converter=new l.Converter({extensions:a}).initConvertExtObj(o.flavor,s),this.addOptions(o)}return this},makeHtml:function(t,n){var r="";if("object"===e(t)){if("string"==typeof t.content)if("string"==typeof t.type)switch(t.type){case"zip":r=this.zDecode(t.content);break;default:r=this.markdownDecodeFilter(t)||t.content}else r=t.content}else r=t;if(this.converter&&r){var i=function(t,n,r){var i=t.querySelector(n),o="";if(i)o=i.dataset.css;else{var a;try{a=l.extension(r)}catch(e){}if(!a)try{a=l.asyncExtension(r)}catch(e){}if(a)if(Array.isArray(a)){for(var s=0;a.length>s;++s)if(a[s].hasOwnProperty("config")&&a[s].config.hasOwnProperty("cssLink")){o=a[s].config.cssLink;break}}else"object"===e(a)&&a.hasOwnProperty("config")&&a.config.hasOwnProperty("cssLink")&&(o=a.config.cssLink)}return o};return this.converter.asyncMakeHtml(r,(function(e){var t=e.wrapper;return!!t&&new Promise((function(r){var o=i(t,".css-katex","showdown-katex"),a=i(t,".css-sequence","showdown-sequence"),s=i(t,".css-railroad","showdown-railroad");return e.cssTypes={hasKatex:!!o,hasSequence:!!a,hasRailroad:!!s,css:{katex:o,sequence:a,railroad:s}},"function"==typeof n&&n&&n(e.cssTypes),r(e)}))})).then((function(e){return r="
".concat(e,"
")}))}return Promise.reject(r?"Converter is invaild.":"Content is empty.")},zDecode:function(e){return""+zi.inflateRawSync(Te.from(e,"base64"))},zEncode:function(e){return zi.deflateRawSync(e,{level:9}).toString("base64")}}}))}).call(this,n("c8ba"))},ce4e:function(e,t,n){var r=n("da84"),i=n("9112");e.exports=function(e,t){try{i(r,e,t)}catch(n){r[e]=t}return t}},d012:function(e,t){e.exports={}},d039:function(e,t){e.exports=function(e){try{return!!e()}catch(t){return!0}}},d066:function(e,t,n){var r=n("428f"),i=n("da84"),o=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e])||o(i[e]):r[e]&&r[e][t]||i[e]&&i[e][t]}},d17b:function(e,t,n){e.exports=n("e372").Transform},d1e7:function(e,t,n){"use strict";var r={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,o=i&&!r.call({1:2},1);t.f=o?function(e){var t=i(this,e);return!!t&&t.enumerable}:r},d28b:function(e,t,n){var r=n("746f");r("iterator")},d2b8:function(e,t,n){var r=n("b68d"),i=n("0fc5"),o=n("823b"),a=i("species");e.exports=function(e){return o>=51||!r((function(){var t=[],n=t.constructor={};return n[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},d2bb:function(e,t,n){var r=n("825a"),i=n("3bbe");e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{e=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,e.call(n,[]),t=n instanceof Array}catch(o){}return function(n,o){return r(n),i(o),t?e.call(n,o):n.__proto__=o,n}}():void 0)},d3a2:function(e,t,n){var r=n("52c9"),i=n("f97c"),o=r.document,a=i(o)&&i(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},d3b7:function(e,t,n){var r=n("00ee"),i=n("6eeb"),o=n("b041");r||i(Object.prototype,"toString",o,{unsafe:!0})},d44e:function(e,t,n){var r=n("9bf2").f,i=n("5135"),o=n("b622"),a=o("toStringTag");e.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,a)&&r(e,a,{configurable:!0,value:t})}},d485:function(e,t,n){e.exports=o;var r=n("faa1").EventEmitter,i=n("3fb5");function o(){r.call(this)}i(o,r),o.Readable=n("e372"),o.Writable=n("2c63"),o.Duplex=n("0960"),o.Transform=n("d17b"),o.PassThrough=n("c2ae"),o.Stream=o,o.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(n.on("end",s),n.on("close",l));var a=!1;function s(){a||(a=!0,e.end())}function l(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function u(e){if(c(),0===r.listenerCount(this,"error"))throw e}function c(){n.removeListener("data",i),e.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",l),n.removeListener("error",u),e.removeListener("error",u),n.removeListener("end",c),n.removeListener("close",c),e.removeListener("close",c)}return n.on("error",u),e.on("error",u),n.on("end",c),n.on("close",c),e.on("close",c),e.emit("pipe",n),e}},d5e0:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t={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},n={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};e.defineMode("xml",(function(r,i){var o,a,s=r.indentUnit,l={},u=i.htmlMode?t:n;for(var c in u)l[c]=u[c];for(var c in i)l[c]=i[c];function f(e,t){function n(n){return t.tokenize=n,n(e,t)}var r,i=e.next();return"<"==i?e.eat("!")?e.eat("[")?e.match("CDATA[")?n(p("atom","]]>")):null:e.match("--")?n(p("comment","--\x3e")):e.match("DOCTYPE",!0,!0)?(e.eatWhile(/[\w\._\-]/),n(g(1))):null:e.eat("?")?(e.eatWhile(/[\w\._\-]/),t.tokenize=p("meta","?>"),"meta"):(o=e.eat("/")?"closeTag":"openTag",t.tokenize=h,"tag bracket"):"&"==i?(r=e.eat("#")?e.eat("x")?e.eatWhile(/[a-fA-F\d]/)&&e.eat(";"):e.eatWhile(/[\d]/)&&e.eat(";"):e.eatWhile(/[\w\.\-:]/)&&e.eat(";"),r?"atom":"error"):(e.eatWhile(/[^&<]/),null)}function h(e,t){var n=e.next();if(">"==n||"/"==n&&e.eat(">"))return t.tokenize=f,o=">"==n?"endTag":"selfcloseTag","tag bracket";if("="==n)return o="equals",null;if("<"==n){t.tokenize=f,t.state=b,t.tagName=t.tagStart=null;var r=t.tokenize(e,t);return r?r+" tag error":"tag error"}return/[\'\"]/.test(n)?(t.tokenize=d(n),t.stringStartCol=e.column(),t.tokenize(e,t)):(e.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function d(e){var t=function(t,n){while(!t.eol())if(t.next()==e){n.tokenize=h;break}return"string"};return t.isInAttribute=!0,t}function p(e,t){return function(n,r){while(!n.eol()){if(n.match(t)){r.tokenize=f;break}n.next()}return e}}function g(e){return function(t,n){var r;while(null!=(r=t.next())){if("<"==r)return n.tokenize=g(e+1),n.tokenize(t,n);if(">"==r){if(1==e){n.tokenize=f;break}return n.tokenize=g(e-1),n.tokenize(t,n)}}return"meta"}}function m(e,t,n){this.prev=e.context,this.tagName=t,this.indent=e.indented,this.startOfLine=n,(l.doNotIndent.hasOwnProperty(t)||e.context&&e.context.noIndent)&&(this.noIndent=!0)}function v(e){e.context&&(e.context=e.context.prev)}function y(e,t){var n;while(1){if(!e.context)return;if(n=e.context.tagName,!l.contextGrabbers.hasOwnProperty(n)||!l.contextGrabbers[n].hasOwnProperty(t))return;v(e)}}function b(e,t,n){return"openTag"==e?(n.tagStart=t.column(),w):"closeTag"==e?_:b}function w(e,t,n){return"word"==e?(n.tagName=t.current(),a="tag",S):l.allowMissingTagName&&"endTag"==e?(a="tag bracket",S(e,t,n)):(a="error",w)}function _(e,t,n){if("word"==e){var r=t.current();return n.context&&n.context.tagName!=r&&l.implicitlyClosed.hasOwnProperty(n.context.tagName)&&v(n),n.context&&n.context.tagName==r||!1===l.matchClosing?(a="tag",x):(a="tag error",k)}return l.allowMissingTagName&&"endTag"==e?(a="tag bracket",x(e,t,n)):(a="error",k)}function x(e,t,n){return"endTag"!=e?(a="error",x):(v(n),b)}function k(e,t,n){return a="error",x(e,t,n)}function S(e,t,n){if("word"==e)return a="attribute",C;if("endTag"==e||"selfcloseTag"==e){var r=n.tagName,i=n.tagStart;return n.tagName=n.tagStart=null,"selfcloseTag"==e||l.autoSelfClosers.hasOwnProperty(r)?y(n,r):(y(n,r),n.context=new m(n,r,i==n.indented)),b}return a="error",S}function C(e,t,n){return"equals"==e?E:(l.allowMissing||(a="error"),S(e,t,n))}function E(e,t,n){return"string"==e?A:"word"==e&&l.allowUnquoted?(a="string",S):(a="error",S(e,t,n))}function A(e,t,n){return"string"==e?A:S(e,t,n)}return f.isInText=!0,{startState:function(e){var t={tokenize:f,state:b,indented:e||0,tagName:null,tagStart:null,context:null};return null!=e&&(t.baseIndent=e),t},token:function(e,t){if(!t.tagName&&e.sol()&&(t.indented=e.indentation()),e.eatSpace())return null;o=null;var n=t.tokenize(e,t);return(n||o)&&"comment"!=n&&(a=null,t.state=t.state(o||n,e,t),a&&(n="error"==a?n+" error":a)),n},indent:function(t,n,r){var i=t.context;if(t.tokenize.isInAttribute)return t.tagStart==t.indented?t.stringStartCol+1:t.indented+s;if(i&&i.noIndent)return e.Pass;if(t.tokenize!=h&&t.tokenize!=f)return r?r.match(/^(\s*)/)[0].length:0;if(t.tagName)return!1!==l.multilineTagIndentPastTag?t.tagStart+t.tagName.length+2:t.tagStart+s*(l.multilineTagIndentFactor||1);if(l.alignCDATA&&/$/,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",configuration:l.htmlMode?"html":"xml",helperType:l.htmlMode?"html":"xml",skipAttribute:function(e){e.state==E&&(e.state=S)},xmlCurrentTag:function(e){return e.tagName?{name:e.tagName,close:"closeTag"==e.type}:null},xmlCurrentContext:function(e){for(var t=[],n=e.context;n;n=n.prev)n.tagName&&t.push(n.tagName);return t.reverse()}}})),e.defineMIME("text/xml","xml"),e.defineMIME("application/xml","xml"),e.mimeModes.hasOwnProperty("text/html")||e.defineMIME("text/html",{name:"xml",htmlMode:!0})}))},d60a:function(e,t){e.exports=function(e){return e&&"object"===typeof e&&"function"===typeof e.copy&&"function"===typeof e.fill&&"function"===typeof e.readUInt8}},d784:function(e,t,n){"use strict";n("ac1f");var r=n("6eeb"),i=n("d039"),o=n("b622"),a=n("9263"),s=n("9112"),l=o("species"),u=!i((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),c=function(){return"$0"==="a".replace(/./,"$0")}(),f=o("replace"),h=function(){return!!/./[f]&&""===/./[f]("a","$0")}(),d=!i((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,f){var p=o(e),g=!i((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),m=g&&!i((function(){var t=!1,n=/a/;return"split"===e&&(n={},n.constructor={},n.constructor[l]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!g||!m||"replace"===e&&(!u||!c||h)||"split"===e&&!d){var v=/./[p],y=n(p,""[e],(function(e,t,n,r,i){return t.exec===a?g&&!i?{done:!0,value:v.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:c,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:h}),b=y[0],w=y[1];r(String.prototype,e,b),r(RegExp.prototype,p,2==t?function(e,t){return w.call(e,this,t)}:function(e){return w.call(e,this)})}f&&s(RegExp.prototype[p],"sham",!0)}},d817:function(e,t,n){var r,i,o,a=n("a450"),s=n("52c9"),l=n("f97c"),u=n("c5b8"),c=n("f742"),f=n("155d"),h=n("7620"),d=s.WeakMap,p=function(e){return o(e)?i(e):r(e,{})},g=function(e){return function(t){var n;if(!l(t)||(n=i(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(a){var m=new d,v=m.get,y=m.has,b=m.set;r=function(e,t){return b.call(m,e,t),t},i=function(e){return v.call(m,e)||{}},o=function(e){return y.call(m,e)}}else{var w=f("state");h[w]=!0,r=function(e,t){return u(e,w,t),t},i=function(e){return c(e,w)?e[w]:{}},o=function(e){return c(e,w)}}e.exports={set:r,get:i,has:o,enforce:p,getterFor:g}},d81d:function(e,t,n){"use strict";var r=n("23e7"),i=n("b727").map,o=n("1dde"),a=n("ae40"),s=o("map"),l=a("map");r({target:"Array",proto:!0,forced:!s||!l},{map:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}})},d847:function(e,t,n){"use strict";(function(e){ -/*! - * vuex v3.5.1 - * (c) 2020 Evan You - * @license MIT - */ -function n(e){var t=Number(e.version.split(".")[0]);if(t>=2)e.mixin({beforeCreate:r});else{var n=e.prototype._init;e.prototype._init=function(e){void 0===e&&(e={}),e.init=e.init?[r].concat(e.init):r,n.call(this,e)}}function r(){var e=this.$options;e.store?this.$store="function"===typeof e.store?e.store():e.store:e.parent&&e.parent.$store&&(this.$store=e.parent.$store)}}var r="undefined"!==typeof window?window:"undefined"!==typeof e?e:{},i=r.__VUE_DEVTOOLS_GLOBAL_HOOK__;function o(e){i&&(e._devtoolHook=i,i.emit("vuex:init",e),i.on("vuex:travel-to-state",(function(t){e.replaceState(t)})),e.subscribe((function(e,t){i.emit("vuex:mutation",e,t)}),{prepend:!0}),e.subscribeAction((function(e,t){i.emit("vuex:action",e,t)}),{prepend:!0}))}function a(e,t){return e.filter(t)[0]}function s(e,t){if(void 0===t&&(t=[]),null===e||"object"!==typeof e)return e;var n=a(t,(function(t){return t.original===e}));if(n)return n.copy;var r=Array.isArray(e)?[]:{};return t.push({original:e,copy:r}),Object.keys(e).forEach((function(n){r[n]=s(e[n],t)})),r}function l(e,t){Object.keys(e).forEach((function(n){return t(e[n],n)}))}function u(e){return null!==e&&"object"===typeof e}function c(e){return e&&"function"===typeof e.then}function f(e,t){return function(){return e(t)}}var h=function(e,t){this.runtime=t,this._children=Object.create(null),this._rawModule=e;var n=e.state;this.state=("function"===typeof n?n():n)||{}},d={namespaced:{configurable:!0}};d.namespaced.get=function(){return!!this._rawModule.namespaced},h.prototype.addChild=function(e,t){this._children[e]=t},h.prototype.removeChild=function(e){delete this._children[e]},h.prototype.getChild=function(e){return this._children[e]},h.prototype.hasChild=function(e){return e in this._children},h.prototype.update=function(e){this._rawModule.namespaced=e.namespaced,e.actions&&(this._rawModule.actions=e.actions),e.mutations&&(this._rawModule.mutations=e.mutations),e.getters&&(this._rawModule.getters=e.getters)},h.prototype.forEachChild=function(e){l(this._children,e)},h.prototype.forEachGetter=function(e){this._rawModule.getters&&l(this._rawModule.getters,e)},h.prototype.forEachAction=function(e){this._rawModule.actions&&l(this._rawModule.actions,e)},h.prototype.forEachMutation=function(e){this._rawModule.mutations&&l(this._rawModule.mutations,e)},Object.defineProperties(h.prototype,d);var p=function(e){this.register([],e,!1)};function g(e,t,n){if(t.update(n),n.modules)for(var r in n.modules){if(!t.getChild(r))return void 0;g(e.concat(r),t.getChild(r),n.modules[r])}}p.prototype.get=function(e){return e.reduce((function(e,t){return e.getChild(t)}),this.root)},p.prototype.getNamespace=function(e){var t=this.root;return e.reduce((function(e,n){return t=t.getChild(n),e+(t.namespaced?n+"/":"")}),"")},p.prototype.update=function(e){g([],this.root,e)},p.prototype.register=function(e,t,n){var r=this;void 0===n&&(n=!0);var i=new h(t,n);if(0===e.length)this.root=i;else{var o=this.get(e.slice(0,-1));o.addChild(e[e.length-1],i)}t.modules&&l(t.modules,(function(t,i){r.register(e.concat(i),t,n)}))},p.prototype.unregister=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1],r=t.getChild(n);r&&r.runtime&&t.removeChild(n)},p.prototype.isRegistered=function(e){var t=this.get(e.slice(0,-1)),n=e[e.length-1];return t.hasChild(n)};var m;var v=function(e){var t=this;void 0===e&&(e={}),!m&&"undefined"!==typeof window&&window.Vue&&M(window.Vue);var n=e.plugins;void 0===n&&(n=[]);var r=e.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new p(e),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new m,this._makeLocalGettersCache=Object.create(null);var i=this,a=this,s=a.dispatch,l=a.commit;this.dispatch=function(e,t){return s.call(i,e,t)},this.commit=function(e,t,n){return l.call(i,e,t,n)},this.strict=r;var u=this._modules.root.state;x(this,u,[],this._modules.root),_(this,u),n.forEach((function(e){return e(t)}));var c=void 0!==e.devtools?e.devtools:m.config.devtools;c&&o(this)},y={state:{configurable:!0}};function b(e,t,n){return t.indexOf(e)<0&&(n&&n.prepend?t.unshift(e):t.push(e)),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function w(e,t){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var n=e.state;x(e,n,[],e._modules.root,!0),_(e,n,t)}function _(e,t,n){var r=e._vm;e.getters={},e._makeLocalGettersCache=Object.create(null);var i=e._wrappedGetters,o={};l(i,(function(t,n){o[n]=f(t,e),Object.defineProperty(e.getters,n,{get:function(){return e._vm[n]},enumerable:!0})}));var a=m.config.silent;m.config.silent=!0,e._vm=new m({data:{$$state:t},computed:o}),m.config.silent=a,e.strict&&L(e),r&&(n&&e._withCommit((function(){r._data.$$state=null})),m.nextTick((function(){return r.$destroy()})))}function x(e,t,n,r,i){var o=!n.length,a=e._modules.getNamespace(n);if(r.namespaced&&(e._modulesNamespaceMap[a],e._modulesNamespaceMap[a]=r),!o&&!i){var s=O(t,n.slice(0,-1)),l=n[n.length-1];e._withCommit((function(){m.set(s,l,r.state)}))}var u=r.context=k(e,a,n);r.forEachMutation((function(t,n){var r=a+n;C(e,r,t,u)})),r.forEachAction((function(t,n){var r=t.root?n:a+n,i=t.handler||t;E(e,r,i,u)})),r.forEachGetter((function(t,n){var r=a+n;A(e,r,t,u)})),r.forEachChild((function(r,o){x(e,t,n.concat(o),r,i)}))}function k(e,t,n){var r=""===t,i={dispatch:r?e.dispatch:function(n,r,i){var o=T(n,r,i),a=o.payload,s=o.options,l=o.type;return s&&s.root||(l=t+l),e.dispatch(l,a)},commit:r?e.commit:function(n,r,i){var o=T(n,r,i),a=o.payload,s=o.options,l=o.type;s&&s.root||(l=t+l),e.commit(l,a,s)}};return Object.defineProperties(i,{getters:{get:r?function(){return e.getters}:function(){return S(e,t)}},state:{get:function(){return O(e.state,n)}}}),i}function S(e,t){if(!e._makeLocalGettersCache[t]){var n={},r=t.length;Object.keys(e.getters).forEach((function(i){if(i.slice(0,r)===t){var o=i.slice(r);Object.defineProperty(n,o,{get:function(){return e.getters[i]},enumerable:!0})}})),e._makeLocalGettersCache[t]=n}return e._makeLocalGettersCache[t]}function C(e,t,n,r){var i=e._mutations[t]||(e._mutations[t]=[]);i.push((function(t){n.call(e,r.state,t)}))}function E(e,t,n,r){var i=e._actions[t]||(e._actions[t]=[]);i.push((function(t){var i=n.call(e,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:e.getters,rootState:e.state},t);return c(i)||(i=Promise.resolve(i)),e._devtoolHook?i.catch((function(t){throw e._devtoolHook.emit("vuex:error",t),t})):i}))}function A(e,t,n,r){e._wrappedGetters[t]||(e._wrappedGetters[t]=function(e){return n(r.state,r.getters,e.state,e.getters)})}function L(e){e._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}function O(e,t){return t.reduce((function(e,t){return e[t]}),e)}function T(e,t,n){return u(e)&&e.type&&(n=t,t=e,e=e.type),{type:e,payload:t,options:n}}function M(e){m&&e===m||(m=e,n(m))}y.state.get=function(){return this._vm._data.$$state},y.state.set=function(e){0},v.prototype.commit=function(e,t,n){var r=this,i=T(e,t,n),o=i.type,a=i.payload,s=(i.options,{type:o,payload:a}),l=this._mutations[o];l&&(this._withCommit((function(){l.forEach((function(e){e(a)}))})),this._subscribers.slice().forEach((function(e){return e(s,r.state)})))},v.prototype.dispatch=function(e,t){var n=this,r=T(e,t),i=r.type,o=r.payload,a={type:i,payload:o},s=this._actions[i];if(s){try{this._actionSubscribers.slice().filter((function(e){return e.before})).forEach((function(e){return e.before(a,n.state)}))}catch(u){0}var l=s.length>1?Promise.all(s.map((function(e){return e(o)}))):s[0](o);return new Promise((function(e,t){l.then((function(t){try{n._actionSubscribers.filter((function(e){return e.after})).forEach((function(e){return e.after(a,n.state)}))}catch(u){0}e(t)}),(function(e){try{n._actionSubscribers.filter((function(e){return e.error})).forEach((function(t){return t.error(a,n.state,e)}))}catch(u){0}t(e)}))}))}},v.prototype.subscribe=function(e,t){return b(e,this._subscribers,t)},v.prototype.subscribeAction=function(e,t){var n="function"===typeof e?{before:e}:e;return b(n,this._actionSubscribers,t)},v.prototype.watch=function(e,t,n){var r=this;return this._watcherVM.$watch((function(){return e(r.state,r.getters)}),t,n)},v.prototype.replaceState=function(e){var t=this;this._withCommit((function(){t._vm._data.$$state=e}))},v.prototype.registerModule=function(e,t,n){void 0===n&&(n={}),"string"===typeof e&&(e=[e]),this._modules.register(e,t),x(this,this.state,e,this._modules.get(e),n.preserveState),_(this,this.state)},v.prototype.unregisterModule=function(e){var t=this;"string"===typeof e&&(e=[e]),this._modules.unregister(e),this._withCommit((function(){var n=O(t.state,e.slice(0,-1));m.delete(n,e[e.length-1])})),w(this)},v.prototype.hasModule=function(e){return"string"===typeof e&&(e=[e]),this._modules.isRegistered(e)},v.prototype.hotUpdate=function(e){this._modules.update(e),w(this,!0)},v.prototype._withCommit=function(e){var t=this._committing;this._committing=!0,e(),this._committing=t},Object.defineProperties(v.prototype,y);var j=I((function(e,t){var n={};return z(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=this.$store.state,n=this.$store.getters;if(e){var r=B(this.$store,"mapState",e);if(!r)return;t=r.context.state,n=r.context.getters}return"function"===typeof i?i.call(this,t,n):t[i]},n[r].vuex=!0})),n})),P=I((function(e,t){var n={};return z(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=[],n=arguments.length;while(n--)t[n]=arguments[n];var r=this.$store.commit;if(e){var o=B(this.$store,"mapMutations",e);if(!o)return;r=o.context.commit}return"function"===typeof i?i.apply(this,[r].concat(t)):r.apply(this.$store,[i].concat(t))}})),n})),R=I((function(e,t){var n={};return z(t).forEach((function(t){var r=t.key,i=t.val;i=e+i,n[r]=function(){if(!e||B(this.$store,"mapGetters",e))return this.$store.getters[i]},n[r].vuex=!0})),n})),N=I((function(e,t){var n={};return z(t).forEach((function(t){var r=t.key,i=t.val;n[r]=function(){var t=[],n=arguments.length;while(n--)t[n]=arguments[n];var r=this.$store.dispatch;if(e){var o=B(this.$store,"mapActions",e);if(!o)return;r=o.context.dispatch}return"function"===typeof i?i.apply(this,[r].concat(t)):r.apply(this.$store,[i].concat(t))}})),n})),D=function(e){return{mapState:j.bind(null,e),mapGetters:R.bind(null,e),mapMutations:P.bind(null,e),mapActions:N.bind(null,e)}};function z(e){return F(e)?Array.isArray(e)?e.map((function(e){return{key:e,val:e}})):Object.keys(e).map((function(t){return{key:t,val:e[t]}})):[]}function F(e){return Array.isArray(e)||u(e)}function I(e){return function(t,n){return"string"!==typeof t?(n=t,t=""):"/"!==t.charAt(t.length-1)&&(t+="/"),e(t,n)}}function B(e,t,n){var r=e._modulesNamespaceMap[n];return r}function U(e){void 0===e&&(e={});var t=e.collapsed;void 0===t&&(t=!0);var n=e.filter;void 0===n&&(n=function(e,t,n){return!0});var r=e.transformer;void 0===r&&(r=function(e){return e});var i=e.mutationTransformer;void 0===i&&(i=function(e){return e});var o=e.actionFilter;void 0===o&&(o=function(e,t){return!0});var a=e.actionTransformer;void 0===a&&(a=function(e){return e});var l=e.logMutations;void 0===l&&(l=!0);var u=e.logActions;void 0===u&&(u=!0);var c=e.logger;return void 0===c&&(c=console),function(e){var f=s(e.state);"undefined"!==typeof c&&(l&&e.subscribe((function(e,o){var a=s(o);if(n(e,f,a)){var l=W(),u=i(e),h="mutation "+e.type+l;H(c,h,t),c.log("%c prev state","color: #9E9E9E; font-weight: bold",r(f)),c.log("%c mutation","color: #03A9F4; font-weight: bold",u),c.log("%c next state","color: #4CAF50; font-weight: bold",r(a)),$(c)}f=a})),u&&e.subscribeAction((function(e,n){if(o(e,n)){var r=W(),i=a(e),s="action "+e.type+r;H(c,s,t),c.log("%c action","color: #03A9F4; font-weight: bold",i),$(c)}})))}}function H(e,t,n){var r=n?e.groupCollapsed:e.group;try{r.call(e,t)}catch(i){e.log(t)}}function $(e){try{e.groupEnd()}catch(t){e.log("—— log end ——")}}function W(){var e=new Date;return" @ "+Z(e.getHours(),2)+":"+Z(e.getMinutes(),2)+":"+Z(e.getSeconds(),2)+"."+Z(e.getMilliseconds(),3)}function q(e,t){return new Array(t+1).join(e)}function Z(e,t){return q("0",t-e.toString().length)+e}var V={Store:v,install:M,version:"3.5.1",mapState:j,mapMutations:P,mapGetters:R,mapActions:N,createNamespacedHelpers:D,createLogger:U};t["a"]=V}).call(this,n("c8ba"))},da84:function(e,t,n){(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n("c8ba"))},db8f:function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},dbb4:function(e,t,n){var r=n("23e7"),i=n("83ab"),o=n("56ef"),a=n("fc6a"),s=n("06cf"),l=n("8418");r({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(e){var t,n,r=a(e),i=s.f,u=o(r),c={},f=0;while(u.length>f)n=i(r,t=u[f++]),void 0!==n&&l(c,t,n);return c}})},dbe8:function(e,t,n){"use strict";var r=n("1274"),i=n("b75b"),o=n("7bd6"),a=n("c5a4"),s=n("a0cc");function l(e){var t=new o(e),n=i(o.prototype.request,t);return r.extend(n,o.prototype,t),r.extend(n,t),n}var u=l(s);u.Axios=o,u.create=function(e){return l(a(u.defaults,e))},u.Cancel=n("2e6d"),u.CancelToken=n("652b"),u.isCancel=n("2946"),u.all=function(e){return Promise.all(e)},u.spread=n("f810"),e.exports=u,e.exports.default=u},dc14:function(e,t,n){"use strict";(function(t,r){var i=n("966d");function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){D(t,e)}}e.exports=b;var a,s=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?setImmediate:i.nextTick;b.WritableState=y;var l=Object.create(n("3a7c"));l.inherits=n("3fb5");var u={deprecate:n("b7d1")},c=n("429b"),f=n("8707").Buffer,h=r.Uint8Array||function(){};function d(e){return f.from(e)}function p(e){return f.isBuffer(e)||e instanceof h}var g,m=n("4681");function v(){}function y(e,t){a=a||n("b19a"),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,s=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var u=!1===e.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){A(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function b(e){if(a=a||n("b19a"),!g.call(b,this)&&!(this instanceof a))return new b(e);this._writableState=new y(e,this),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),c.call(this)}function w(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}function _(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"===typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}function x(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=f.from(t,n)),t}function k(e,t,n,r,i,o){if(!n){var a=x(t,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var l=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"===typeof e?(n=e,e=null,t=null):"function"===typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||N(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n("4362"),n("c8ba"))},dd40:function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},dd9c:function(e,t,n){var r=n("52c9"),i=n("7238").f,o=n("c5b8"),a=n("21aa"),s=n("eed0"),l=n("b4a4"),u=n("6e25");e.exports=function(e,t){var n,c,f,h,d,p,g=e.target,m=e.global,v=e.stat;if(c=m?r:v?r[g]||s(g,{}):(r[g]||{}).prototype,c)for(f in t){if(d=t[f],e.noTargetGet?(p=i(c,f),h=p&&p.value):h=c[f],n=u(m?f:g+(v?".":"#")+f,e.forced),!n&&void 0!==h){if(typeof d===typeof h)continue;l(d,h)}(e.sham||h&&h.sham)&&o(d,"sham",!0),a(c,f,d,e)}}},ddb0:function(e,t,n){var r=n("da84"),i=n("fdbc"),o=n("e260"),a=n("9112"),s=n("b622"),l=s("iterator"),u=s("toStringTag"),c=o.values;for(var f in i){var h=r[f],d=h&&h.prototype;if(d){if(d[l]!==c)try{a(d,l,c)}catch(g){d[l]=c}if(d[u]||a(d,u,f),i[f])for(var p in o)if(d[p]!==o[p])try{a(d,p,o[p])}catch(g){d[p]=o[p]}}}},df75:function(e,t,n){var r=n("ca84"),i=n("7839");e.exports=Object.keys||function(e){return r(e,i)}},df7c:function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e){"string"!==typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}function i(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!r;o--){var a=o>=0?arguments[o]:e.cwd();if("string"!==typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,r="/"===a.charAt(0))}return t=n(i(t.split("/"),(function(e){return!!e})),!r).join("/"),(r?"/":"")+t||"."},t.normalize=function(e){var r=t.isAbsolute(e),a="/"===o(e,-1);return e=n(i(e.split("/"),(function(e){return!!e})),!r).join("/"),e||r||(e="."),e&&a&&(e+="/"),(r?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(i(e,(function(e,t){if("string"!==typeof e)throw new TypeError("Arguments to path.join must be strings");return e})).join("/"))},t.relative=function(e,n){function r(e){for(var t=0;t=0;n--)if(""!==e[n])break;return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),a=Math.min(i.length,o.length),s=a,l=0;l=1;--o)if(t=e.charCodeAt(o),47===t){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=r(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!==typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,a=e.length-1;a>=0;--a){var s=e.charCodeAt(a);if(47!==s)-1===r&&(i=!1,r=a+1),46===s?-1===t?t=a:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=a+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var o="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n("4362"))},e01a:function(e,t,n){"use strict";var r=n("23e7"),i=n("83ab"),o=n("da84"),a=n("5135"),s=n("861d"),l=n("9bf2").f,u=n("e893"),c=o.Symbol;if(i&&"function"==typeof c&&(!("description"in c.prototype)||void 0!==c().description)){var f={},h=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),t=this instanceof h?new c(e):void 0===e?c():c(e);return""===e&&(f[t]=!0),t};u(h,c);var d=h.prototype=c.prototype;d.constructor=h;var p=d.toString,g="Symbol(test)"==String(c("test")),m=/^Symbol\((.*)\)[^)]+$/;l(d,"description",{configurable:!0,get:function(){var e=s(this)?this.valueOf():this,t=p.call(e);if(a(f,e))return"";var n=g?t.slice(7,-1):t.replace(m,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:h})}},e06d:function(e,t,n){var r=n("679d");e.exports=r("navigator","userAgent")||""},e163:function(e,t,n){var r=n("5135"),i=n("7b0b"),o=n("f772"),a=n("e177"),s=o("IE_PROTO"),l=Object.prototype;e.exports=a?Object.getPrototypeOf:function(e){return e=i(e),r(e,s)?e[s]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},e177:function(e,t,n){var r=n("d039");e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},e17e:function(e,t,n){e.exports=n("dbe8")},e260:function(e,t,n){"use strict";var r=n("fc6a"),i=n("44d2"),o=n("3f8c"),a=n("69f3"),s=n("7dd0"),l="Array Iterator",u=a.set,c=a.getterFor(l);e.exports=s(Array,"Array",(function(e,t){u(this,{type:l,target:r(e),index:0,kind:t})}),(function(){var e=c(this),t=e.target,n=e.kind,r=e.index++;return!t||r>=t.length?(e.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:t[r],done:!1}:{value:[r,t[r]],done:!1}}),"values"),o.Arguments=o.Array,i("keys"),i("values"),i("entries")},e27c:function(e,t,n){"use strict";var r=n("9343");e.exports=function(e,t,n,i,o){var a=new Error(e);return r(a,t,n,i,o)}},e2cc:function(e,t,n){var r=n("6eeb");e.exports=function(e,t,n){for(var i in t)r(e,i,t[i],n);return e}},e372:function(e,t,n){t=e.exports=n("ad71"),t.Stream=t,t.Readable=t,t.Writable=n("dc14"),t.Duplex=n("b19a"),t.Transform=n("27bf"),t.PassThrough=n("780f")},e3db:function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},e439:function(e,t,n){var r=n("23e7"),i=n("d039"),o=n("fc6a"),a=n("06cf").f,s=n("83ab"),l=i((function(){a(1)})),u=!s||l;r({target:"Object",stat:!0,forced:u,sham:!s},{getOwnPropertyDescriptor:function(e,t){return a(o(e),t)}})},e538:function(e,t,n){var r=n("b622");t.f=r},e667:function(e,t){e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},e6cf:function(e,t,n){"use strict";var r,i,o,a,s=n("23e7"),l=n("c430"),u=n("da84"),c=n("d066"),f=n("fea9"),h=n("6eeb"),d=n("e2cc"),p=n("d44e"),g=n("2626"),m=n("861d"),v=n("1c0b"),y=n("19aa"),b=n("c6b6"),w=n("8925"),_=n("2266"),x=n("1c7e"),k=n("4840"),S=n("2cf4").set,C=n("b575"),E=n("cdf9"),A=n("44de"),L=n("f069"),O=n("e667"),T=n("69f3"),M=n("94ca"),j=n("b622"),P=n("2d00"),R=j("species"),N="Promise",D=T.get,z=T.set,F=T.getterFor(N),I=f,B=u.TypeError,U=u.document,H=u.process,$=c("fetch"),W=L.f,q=W,Z="process"==b(H),V=!!(U&&U.createEvent&&u.dispatchEvent),G="unhandledrejection",Y="rejectionhandled",K=0,X=1,J=2,Q=1,ee=2,te=M(N,(function(){var e=w(I)!==String(I);if(!e){if(66===P)return!0;if(!Z&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!I.prototype["finally"])return!0;if(P>=51&&/native code/.test(I))return!1;var t=I.resolve(1),n=function(e){e((function(){}),(function(){}))},r=t.constructor={};return r[R]=n,!(t.then((function(){}))instanceof n)})),ne=te||!x((function(e){I.all(e)["catch"]((function(){}))})),re=function(e){var t;return!(!m(e)||"function"!=typeof(t=e.then))&&t},ie=function(e,t,n){if(!t.notified){t.notified=!0;var r=t.reactions;C((function(){var i=t.value,o=t.state==X,a=0;while(r.length>a){var s,l,u,c=r[a++],f=o?c.ok:c.fail,h=c.resolve,d=c.reject,p=c.domain;try{f?(o||(t.rejection===ee&&le(e,t),t.rejection=Q),!0===f?s=i:(p&&p.enter(),s=f(i),p&&(p.exit(),u=!0)),s===c.promise?d(B("Promise-chain cycle")):(l=re(s))?l.call(s,h,d):h(s)):d(i)}catch(g){p&&!u&&p.exit(),d(g)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&ae(e,t)}))}},oe=function(e,t,n){var r,i;V?(r=U.createEvent("Event"),r.promise=t,r.reason=n,r.initEvent(e,!1,!0),u.dispatchEvent(r)):r={promise:t,reason:n},(i=u["on"+e])?i(r):e===G&&A("Unhandled promise rejection",n)},ae=function(e,t){S.call(u,(function(){var n,r=t.value,i=se(t);if(i&&(n=O((function(){Z?H.emit("unhandledRejection",r,e):oe(G,e,r)})),t.rejection=Z||se(t)?ee:Q,n.error))throw n.value}))},se=function(e){return e.rejection!==Q&&!e.parent},le=function(e,t){S.call(u,(function(){Z?H.emit("rejectionHandled",e):oe(Y,e,t.value)}))},ue=function(e,t,n,r){return function(i){e(t,n,i,r)}},ce=function(e,t,n,r){t.done||(t.done=!0,r&&(t=r),t.value=n,t.state=J,ie(e,t,!0))},fe=function(e,t,n,r){if(!t.done){t.done=!0,r&&(t=r);try{if(e===n)throw B("Promise can't be resolved itself");var i=re(n);i?C((function(){var r={done:!1};try{i.call(n,ue(fe,e,r,t),ue(ce,e,r,t))}catch(o){ce(e,r,o,t)}})):(t.value=n,t.state=X,ie(e,t,!1))}catch(o){ce(e,{done:!1},o,t)}}};te&&(I=function(e){y(this,I,N),v(e),r.call(this);var t=D(this);try{e(ue(fe,this,t),ue(ce,this,t))}catch(n){ce(this,t,n)}},r=function(e){z(this,{type:N,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:K,value:void 0})},r.prototype=d(I.prototype,{then:function(e,t){var n=F(this),r=W(k(this,I));return r.ok="function"!=typeof e||e,r.fail="function"==typeof t&&t,r.domain=Z?H.domain:void 0,n.parent=!0,n.reactions.push(r),n.state!=K&&ie(this,n,!1),r.promise},catch:function(e){return this.then(void 0,e)}}),i=function(){var e=new r,t=D(e);this.promise=e,this.resolve=ue(fe,e,t),this.reject=ue(ce,e,t)},L.f=W=function(e){return e===I||e===o?new i(e):q(e)},l||"function"!=typeof f||(a=f.prototype.then,h(f.prototype,"then",(function(e,t){var n=this;return new I((function(e,t){a.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof $&&s({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return E(I,$.apply(u,arguments))}}))),s({global:!0,wrap:!0,forced:te},{Promise:I}),p(I,N,!1,!0),g(N),o=c(N),s({target:N,stat:!0,forced:te},{reject:function(e){var t=W(this);return t.reject.call(void 0,e),t.promise}}),s({target:N,stat:!0,forced:l||te},{resolve:function(e){return E(l&&this===o?I:this,e)}}),s({target:N,stat:!0,forced:ne},{all:function(e){var t=this,n=W(t),r=n.resolve,i=n.reject,o=O((function(){var n=v(t.resolve),o=[],a=0,s=1;_(e,(function(e){var l=a++,u=!1;o.push(void 0),s++,n.call(t,e).then((function(e){u||(u=!0,o[l]=e,--s||r(o))}),i)})),--s||r(o)}));return o.error&&i(o.value),n.promise},race:function(e){var t=this,n=W(t),r=n.reject,i=O((function(){var i=v(t.resolve);_(e,(function(e){i.call(t,e).then(n.resolve,r)}))}));return i.error&&r(i.value),n.promise}})},e6fd:function(e,t,n){var r=n("0fc5"),i=r("toStringTag"),o={};o[i]="z",e.exports="[object z]"===String(o)},e893:function(e,t,n){var r=n("5135"),i=n("56ef"),o=n("06cf"),a=n("9bf2");e.exports=function(e,t){for(var n=i(t),s=a.f,l=o.f,u=0;u>>1:e>>>1;t[n]=e}return t}var i=r();function o(e,t,n,r){var o=i,a=r+n;e^=-1;for(var s=r;s>>8^o[255&(e^t[s])];return-1^e}e.exports=o},eefc:function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},f040:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";e.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"]},{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"]},{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"]}];for(var t=0;t-1&&t.substring(i+1,t.length);if(o)return e.findModeByExtension(o)},e.findModeByName=function(t){t=t.toLowerCase();for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=Array(t);t>n;n++)r[n]=e[n];return r}function n(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;arguments.length>t;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?r(Object(i),!0).forEach((function(t){n(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function o(t){return function(t){if(Array.isArray(t))return e(t)}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(t,n){if(t){if("string"==typeof t)return e(t,n);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var s="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof t?t:"undefined"!=typeof self?self:{},l=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){(function(){function t(e){var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,description:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,description:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,description:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,description:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,description:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",description:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,description:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,description:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,description:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,description:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,description:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},completeHTMLDocument:{defaultValue:!1,description:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,description:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,description:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r].defaultValue);return n}var n={},r={},i={},o=t(!0),a="vanilla",s={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:t(!0),allOn:function(){var e=t(!0),n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=!0);return n}()};function l(e,t){var r=t?"Error in "+t+" extension->":"Error in unnamed extension",i={valid:!0,error:""};n.helper.isArray(e)||(e=[e]);for(var o=0;e.length>o;++o){var a=r+" sub-extension "+o+": ",s=e[o];if("object"!=typeof s)return i.valid=!1,i.error=a+"must be an object, but "+typeof s+" given",i;if(!n.helper.isString(s.type))return i.valid=!1,i.error=a+'property "type" must be a string, but '+typeof s.type+" given",i;var l=s.type=s.type.toLowerCase();if("language"===l&&(l=s.type="lang"),"html"===l&&(l=s.type="output"),"lang"!==l&&"output"!==l&&"listener"!==l)return i.valid=!1,i.error=a+"type "+l+' is not recognized. Valid values: "lang/language", "output/html" or "listener"',i;if("listener"===l){if(n.helper.isUndefined(s.listeners))return i.valid=!1,i.error=a+'. Extensions of type "listener" must have a property called "listeners"',i}else if(n.helper.isUndefined(s.filter)&&n.helper.isUndefined(s.regex))return i.valid=!1,i.error=a+l+' extensions must define either a "regex" property or a "filter" method',i;if(s.listeners){if("object"!=typeof s.listeners)return i.valid=!1,i.error=a+'"listeners" property must be an object but '+typeof s.listeners+" given",i;for(var u in s.listeners)if(s.listeners.hasOwnProperty(u)&&"function"!=typeof s.listeners[u])return i.valid=!1,i.error=a+'"listeners" property must be an hash of [event name]: [callback]. listeners.'+u+" must be a function but "+typeof s.listeners[u]+" given",i}if(s.filter){if("function"!=typeof s.filter)return i.valid=!1,i.error=a+'"filter" must be a function, but '+typeof s.filter+" given",i}else if(s.regex){if(n.helper.isString(s.regex)&&(s.regex=RegExp(s.regex,"g")),!(s.regex instanceof RegExp))return i.valid=!1,i.error=a+'"regex" property must either be a string or a RegExp object, but '+typeof s.regex+" given",i;if(n.helper.isUndefined(s.replace))return i.valid=!1,i.error=a+'"regex" extensions must implement a replace string or function',i}}return i}function u(e,t){return"¨E"+t.charCodeAt(0)+"E"}n.helper={},n.extensions={},n.setOption=function(e,t){return o[e]=t,this},n.getOption=function(e){return o[e]},n.getOptions=function(){return o},n.resetOptions=function(){o=t(!0)},n.setFlavor=function(e){if(!s.hasOwnProperty(e))throw Error(e+" flavor was not found");n.resetOptions();var t=s[e];for(var r in a=e,t)t.hasOwnProperty(r)&&(o[r]=t[r])},n.getFlavor=function(){return a},n.getFlavorOptions=function(e){if(s.hasOwnProperty(e))return s[e]},n.getDefaultOptions=function(e){return t(e)},n.subParser=function(e,t){if(n.helper.isString(e)){if(void 0===t){if(r.hasOwnProperty(e))return r[e];throw Error("SubParser named "+e+" not registered!")}r[e]=t}},n.extension=function(e,t){if(!n.helper.isString(e))throw Error("Extension 'name' must be a string");if(e=n.helper.stdExtName(e),n.helper.isUndefined(t)){if(!i.hasOwnProperty(e))throw Error("Extension named "+e+" is not registered!");return i[e]}"function"==typeof t&&(t=t()),n.helper.isArray(t)||(t=[t]);var r=l(t,e);if(!r.valid)throw Error(r.error);i[e]=t},n.getAllExtensions=function(){return i},n.removeExtension=function(e){delete i[e]},n.resetExtensions=function(){i={}},n.validateExtension=function(e){return!!l(e,null).valid},n.hasOwnProperty("helper")||(n.helper={}),n.helper.isString=function(e){return"string"==typeof e||e instanceof String},n.helper.isFunction=function(e){return e&&"[object Function]"==={}.toString.call(e)},n.helper.isArray=function(e){return Array.isArray(e)},n.helper.isUndefined=function(e){return void 0===e},n.helper.forEach=function(e,t){if(n.helper.isUndefined(e))throw Error("obj param is required");if(n.helper.isUndefined(t))throw Error("callback param is required");if(!n.helper.isFunction(t))throw Error("callback param must be a function/closure");if("function"==typeof e.forEach)e.forEach(t);else if(n.helper.isArray(e))for(var r=0;e.length>r;r++)t(e[r],r,e);else{if("object"!=typeof e)throw Error("obj does not seem to be an array or an iterable object");for(var i in e)e.hasOwnProperty(i)&&t(e[i],i,e)}},n.helper.stdExtName=function(e){return e.replace(/[_?*+\/\\.^-]/g,"").replace(/\s/g,"").toLowerCase()},n.helper.escapeCharactersCallback=u,n.helper.escapeCharacters=function(e,t,n){var r="(["+t.replace(/([\[\]\\])/g,"\\$1")+"])";n&&(r="\\\\"+r);var i=RegExp(r,"g");return e.replace(i,u)},n.helper.unescapeHTMLEntities=function(e){return e.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")};var c=function(e,t,n,r){var i,o,a,s,l,u=r||"",c=u.indexOf("g")>-1,f=RegExp(t+"|"+n,"g"+u.replace(/g/g,"")),h=RegExp(t,u.replace(/g/g,"")),d=[];do{for(i=0;a=f.exec(e);)if(h.test(a[0]))i++||(s=(o=f.lastIndex)-a[0].length);else if(i&&!--i&&(d.push({left:{start:s,end:o},match:{start:o,end:a.index},right:{start:a.index,end:l=a.index+a[0].length},wholeMatch:{start:s,end:l}}),!c))return d}while(i&&(f.lastIndex=o));return d};n.helper.matchRecursiveRegExp=function(e,t,n,r){for(var i=c(e,t,n,r),o=[],a=0;i.length>a;++a)o.push([e.slice(i[a].wholeMatch.start,i[a].wholeMatch.end),e.slice(i[a].match.start,i[a].match.end),e.slice(i[a].left.start,i[a].left.end),e.slice(i[a].right.start,i[a].right.end)]);return o},n.helper.replaceRecursiveRegExp=function(e,t,r,i,o){if(!n.helper.isFunction(t)){var a=t;t=function(){return a}}var s=c(e,r,i,o),l=e,u=s.length;if(u>0){var f=[];0!==s[0].wholeMatch.start&&f.push(e.slice(0,s[0].wholeMatch.start));for(var h=0;u>h;++h)f.push(t(e.slice(s[h].wholeMatch.start,s[h].wholeMatch.end),e.slice(s[h].match.start,s[h].match.end),e.slice(s[h].left.start,s[h].left.end),e.slice(s[h].right.start,s[h].right.end))),u-1>h&&f.push(e.slice(s[h].wholeMatch.end,s[h+1].wholeMatch.start));e.length>s[u-1].wholeMatch.end&&f.push(e.slice(s[u-1].wholeMatch.end)),l=f.join("")}return l},n.helper.regexIndexOf=function(e,t,r){if(!n.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";if(t instanceof RegExp==0)throw"InvalidArgumentError: second parameter of showdown.helper.regexIndexOf function must be an instance of RegExp";var i=e.substring(r||0).search(t);return 0>i?i:i+(r||0)},n.helper.splitAtIndex=function(e,t){if(!n.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,t),e.substring(t)]},n.helper.encodeEmailAddress=function(e){var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var n=Math.random();e=n>.9?t[2](e):n>.45?t[1](e):t[0](e)}return e}))},n.helper.padEnd=function(e,t,n){return n=(n||" ")+"",e.length>(t>>=0)?e+"":((t-=e.length)>n.length&&(n+=n.repeat(t/n.length)),e+""+n.slice(0,t))},void 0===console&&(console={warn:function(e){alert(e)},log:function(e){alert(e)},error:function(e){throw e}}),n.helper.regexes={asteriskDashAndColon:/([*_:~])/g},n.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},n.Converter=function(e){var t={},r=[],u=[],c={},f=a,h={parsed:{},raw:"",format:""};function d(e,t){if(t=t||null,n.helper.isString(e)){if(t=e=n.helper.stdExtName(e),n.extensions[e])return void function(e,t){"function"==typeof e&&(e=e(new n.Converter)),n.helper.isArray(e)||(e=[e]);var i=l(e,t);if(!i.valid)throw Error(i.error);for(var o=0;e.length>o;++o)switch(e[o].type){case"lang":r.push(e[o]);break;case"output":u.push(e[o]);break;default:throw Error("Extension loader error: Type unrecognized!!!")}}(n.extensions[e],e);if(n.helper.isUndefined(i[e]))throw Error('Extension "'+e+'" could not be loaded. It was either not found or is not a valid extension.');e=i[e]}"function"==typeof e&&(e=e()),n.helper.isArray(e)||(e=[e]);var o=l(e,t);if(!o.valid)throw Error(o.error);for(var a=0;e.length>a;++a){switch(e[a].type){case"lang":r.push(e[a]);break;case"output":u.push(e[a])}if(e[a].hasOwnProperty("listeners"))for(var s in e[a].listeners)e[a].listeners.hasOwnProperty(s)&&p(s,e[a].listeners[s])}}function p(e,t){if(!n.helper.isString(e))throw Error("Invalid argument in converter.listen() method: name must be a string, but "+typeof e+" given");if("function"!=typeof t)throw Error("Invalid argument in converter.listen() method: callback must be a function, but "+typeof t+" given");c.hasOwnProperty(e)||(c[e]=[]),c[e].push(t)}!function(){for(var r in e=e||{},o)o.hasOwnProperty(r)&&(t[r]=o[r]);if("object"!=typeof e)throw Error("Converter expects the passed parameter to be an object, but "+typeof e+" was passed instead.");for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);t.extensions&&n.helper.forEach(t.extensions,d)}(),this._dispatch=function(e,t,n,r){if(c.hasOwnProperty(e))for(var i=0;c[e].length>i;++i){var o=c[e][i](e,t,this,n,r);o&&void 0!==o&&(t=o)}return t},this.listen=function(e,t){return p(e,t),this},this.makeHtml=function(e){if(!e)return e;var i={gHtmlBlocks:[],gHtmlMdBlocks:[],gHtmlSpans:[],gUrls:{},gTitles:{},gDimensions:{},gListLevel:0,hashLinkCounts:{},langExtensions:r,outputModifiers:u,converter:this,ghCodeBlocks:[],metadata:{parsed:{},raw:"",format:""}};return e=(e=(e=(e=(e=e.replace(/¨/g,"¨T")).replace(/\$/g,"¨D")).replace(/\r\n/g,"\n")).replace(/\r/g,"\n")).replace(/\u00A0/g," "),t.smartIndentationFix&&(e=function(e){var t=e.match(/^\s*/)[0].length,n=RegExp("^\\s{0,"+t+"}","gm");return e.replace(n,"")}(e)),e="\n\n"+e+"\n\n",e=(e=n.subParser("detab")(e,t,i)).replace(/^[ \t]+$/gm,""),n.helper.forEach(r,(function(r){e=n.subParser("runExtension")(r,e,t,i)})),e=n.subParser("metadata")(e,t,i),e=n.subParser("hashPreCodeTags")(e,t,i),e=n.subParser("githubCodeBlocks")(e,t,i),e=n.subParser("hashHTMLBlocks")(e,t,i),e=n.subParser("hashCodeTags")(e,t,i),e=n.subParser("stripLinkDefinitions")(e,t,i),e=n.subParser("blockGamut")(e,t,i),e=n.subParser("unhashHTMLSpans")(e,t,i),e=(e=(e=n.subParser("unescapeSpecialChars")(e,t,i)).replace(/¨D/g,"$$")).replace(/¨T/g,"¨"),e=n.subParser("completeHTMLDocument")(e,t,i),n.helper.forEach(u,(function(r){e=n.subParser("runExtension")(r,e,t,i)})),h=i.metadata,e},this.makeMarkdown=this.makeMd=function(e,t){if(e=(e=(e=e.replace(/\r\n/g,"\n")).replace(/\r/g,"\n")).replace(/>[ \t]+¨NBSP;<"),!t){if(!window||!window.document)throw Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");t=window.document}var r=t.createElement("div");r.innerHTML=e;var i={preList:function(e){for(var t=e.querySelectorAll("pre"),r=[],i=0;t.length>i;++i)if(1===t[i].childElementCount&&"code"===t[i].firstChild.tagName.toLowerCase()){var o=t[i].firstChild.innerHTML.trim(),a=t[i].firstChild.getAttribute("data-language")||"";if(""===a)for(var s=t[i].firstChild.className.split(" "),l=0;s.length>l;++l){var u=s[l].match(/^language-(.+)$/);if(null!==u){a=u[1];break}}o=n.helper.unescapeHTMLEntities(o),r.push(o),t[i].outerHTML=''}else r.push(t[i].innerHTML),t[i].innerHTML="",t[i].setAttribute("prenum",""+i);return r}(r)};!function e(t){for(var n=0;t.childNodes.length>n;++n){var r=t.childNodes[n];3===r.nodeType?/\S/.test(r.nodeValue)?(r.nodeValue=r.nodeValue.split("\n").join(" "),r.nodeValue=r.nodeValue.replace(/(\s)+/g,"$1")):(t.removeChild(r),--n):1===r.nodeType&&e(r)}}(r);for(var o=r.childNodes,a="",s=0;o.length>s;s++)a+=n.subParser("makeMarkdown.node")(o[s],i);return a},this.setOption=function(e,n){t[e]=n},this.getOption=function(e){return t[e]},this.getOptions=function(){return t},this.addExtension=function(e,t){d(e,t=t||null)},this.useExtension=function(e){d(e)},this.setFlavor=function(e){if(!s.hasOwnProperty(e))throw Error(e+" flavor was not found");var n=s[e];for(var r in f=e,n)n.hasOwnProperty(r)&&(t[r]=n[r])},this.getFlavor=function(){return f},this.removeExtension=function(e){n.helper.isArray(e)||(e=[e]);for(var t=0;e.length>t;++t){for(var i=e[t],o=0;r.length>o;++o)r[o]===i&&r[o].splice(o,1);for(;u.length>0;++o)u[0]===i&&u[0].splice(o,1)}},this.getAllExtensions=function(){return{language:r,output:u}},this.getMetadata=function(e){return e?h.raw:h.parsed},this.getMetadataFormat=function(){return h.format},this._setMetadataPair=function(e,t){h.parsed[e]=t},this._setMetadataFormat=function(e){h.format=e},this._setMetadataRaw=function(e){h.raw=e}},n.subParser("anchors",(function(e,t,r){var i=function(e,i,o,a,s,l,u){if(n.helper.isUndefined(u)&&(u=""),o=o.toLowerCase(),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)a="";else if(!a){if(o||(o=i.toLowerCase().replace(/ ?\n/g," ")),a="#"+o,n.helper.isUndefined(r.gUrls[o]))return e;a=r.gUrls[o],n.helper.isUndefined(r.gTitles[o])||(u=r.gTitles[o])}var c='
"+i+""};return e=(e=(e=(e=(e=r.converter._dispatch("anchors.before",e,t,r)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,i)).replace(/\[([^\[\]]+)]()()()()()/g,i),t.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,r,i,o,a){if("\\"===i)return r+o;if(!n.helper.isString(t.ghMentionsLink))throw Error("ghMentionsLink option must be a string");var s=t.ghMentionsLink.replace(/\{u}/g,a),l="";return t.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),r+'"+o+""}))),r.converter._dispatch("anchors.after",e,t,r)}));var f=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,d=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,g=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){return function(t,r,i,o,a,s,l){var u=i=i.replace(n.helper.regexes.asteriskDashAndColon,n.helper.escapeCharactersCallback),c="",f="",h=r||"",d=l||"";return/^www\./i.test(i)&&(i=i.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&s&&(c=s),e.openLinksInNewWindow&&(f=' rel="noopener noreferrer" target="¨E95Eblank"'),h+'"+u+""+c+d}},v=function(e,t){return function(r,i,o){var a="mailto:";return i=i||"",o=n.subParser("unescapeSpecialChars")(o,e,t),e.encodeEmails?(a=n.helper.encodeEmailAddress(a+o),o=n.helper.encodeEmailAddress(o)):a+=o,i+''+o+""}};n.subParser("autoLinks",(function(e,t,n){return e=(e=(e=n.converter._dispatch("autoLinks.before",e,t,n)).replace(d,m(t))).replace(g,v(t,n)),n.converter._dispatch("autoLinks.after",e,t,n)})),n.subParser("simplifiedAutoLinks",(function(e,t,n){return t.simplifiedAutoLink?(e=(e=(e=n.converter._dispatch("simplifiedAutoLinks.before",e,t,n)).replace(t.excludeTrailingPunctuationFromURLs?h:f,m(t))).replace(p,v(t,n)),e=n.converter._dispatch("simplifiedAutoLinks.after",e,t,n)):e})),n.subParser("blockGamut",(function(e,t,r){return e=r.converter._dispatch("blockGamut.before",e,t,r),e=n.subParser("blockQuotes")(e,t,r),e=n.subParser("headers")(e,t,r),e=n.subParser("horizontalRule")(e,t,r),e=n.subParser("lists")(e,t,r),e=n.subParser("codeBlocks")(e,t,r),e=n.subParser("tables")(e,t,r),e=n.subParser("hashHTMLBlocks")(e,t,r),e=n.subParser("paragraphs")(e,t,r),r.converter._dispatch("blockGamut.after",e,t,r)})),n.subParser("blockQuotes",(function(e,t,r){e=r.converter._dispatch("blockQuotes.before",e,t,r);var i=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return t.splitAdjacentBlockquotes&&(i=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=(e+="\n\n").replace(i,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=n.subParser("githubCodeBlocks")(e,t,r),e=(e=(e=n.subParser("blockGamut")(e,t,r)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,(function(e,t){var n=t;return(n=n.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),n.subParser("hashBlock")("
\n"+e+"\n
",t,r)})),r.converter._dispatch("blockQuotes.after",e,t,r)})),n.subParser("codeBlocks",(function(e,t,r){return e=r.converter._dispatch("codeBlocks.before",e,t,r),e=(e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,i,o){var a=i,s=o,l="\n";return a=n.subParser("outdent")(a,t,r),a=n.subParser("encodeCode")(a,t,r),a=(a=(a=n.subParser("detab")(a,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""),t.omitExtraWLInCodeBlocks&&(l=""),a="
"+a+l+"
",n.subParser("hashBlock")(a,t,r)+s}))).replace(/¨0/,""),r.converter._dispatch("codeBlocks.after",e,t,r)})),n.subParser("codeSpans",(function(e,t,r){return void 0===(e=r.converter._dispatch("codeSpans.before",e,t,r))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,i,o,a){var s=a;return s=(s=s.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),s=i+""+(s=n.subParser("encodeCode")(s,t,r))+"",n.subParser("hashHTMLSpans")(s,t,r)})),r.converter._dispatch("codeSpans.after",e,t,r)})),n.subParser("completeHTMLDocument",(function(e,t,n){if(!t.completeHTMLDocument)return e;e=n.converter._dispatch("completeHTMLDocument.before",e,t,n);var r="html",i="\n",o="",a='\n',s="",l="";for(var u in void 0!==n.metadata.parsed.doctype&&(i="\n","html"!==(r=(""+n.metadata.parsed.doctype).toLowerCase())&&"html5"!==r||(a='')),n.metadata.parsed)if(n.metadata.parsed.hasOwnProperty(u))switch(u.toLowerCase()){case"doctype":break;case"title":o=""+n.metadata.parsed.title+"\n";break;case"charset":a="html"===r||"html5"===r?'\n':'\n';break;case"language":case"lang":s=' lang="'+n.metadata.parsed[u]+'"',l+='\n';break;default:l+='\n'}return e=i+"\n\n"+o+a+l+"\n\n"+e.trim()+"\n\n",n.converter._dispatch("completeHTMLDocument.after",e,t,n)})),n.subParser("detab",(function(e,t,n){return e=(e=(e=(e=(e=(e=n.converter._dispatch("detab.before",e,t,n)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var n=t,r=4-n.length%4,i=0;r>i;i++)n+=" ";return n}))).replace(/¨A/g," ")).replace(/¨B/g,""),n.converter._dispatch("detab.after",e,t,n)})),n.subParser("ellipsis",(function(e,t,n){return e=(e=n.converter._dispatch("ellipsis.before",e,t,n)).replace(/\.\.\./g,"…"),n.converter._dispatch("ellipsis.after",e,t,n)})),n.subParser("emoji",(function(e,t,r){return t.emoji?(e=(e=r.converter._dispatch("emoji.before",e,t,r)).replace(/:([\S]+?):/g,(function(e,t){return n.helper.emojis.hasOwnProperty(t)?n.helper.emojis[t]:e})),r.converter._dispatch("emoji.after",e,t,r)):e})),n.subParser("encodeAmpsAndAngles",(function(e,t,n){return e=(e=(e=(e=(e=n.converter._dispatch("encodeAmpsAndAngles.before",e,t,n)).replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&")).replace(/<(?![a-z\/?$!])/gi,"<")).replace(//g,">"),n.converter._dispatch("encodeAmpsAndAngles.after",e,t,n)})),n.subParser("encodeBackslashEscapes",(function(e,t,r){return e=(e=(e=r.converter._dispatch("encodeBackslashEscapes.before",e,t,r)).replace(/\\(\\)/g,n.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|-])/g,n.helper.escapeCharactersCallback),r.converter._dispatch("encodeBackslashEscapes.after",e,t,r)})),n.subParser("encodeCode",(function(e,t,r){return e=(e=r.converter._dispatch("encodeCode.before",e,t,r)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,n.helper.escapeCharactersCallback),r.converter._dispatch("encodeCode.after",e,t,r)})),n.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,t,r){return e=(e=(e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,t,r)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,n.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,n.helper.escapeCharactersCallback)})),r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,t,r)})),n.subParser("githubCodeBlocks",(function(e,t,r){return t.ghCodeBlocks?(e=r.converter._dispatch("githubCodeBlocks.before",e,t,r),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,i,o,a){var s=t.omitExtraWLInCodeBlocks?"":"\n";return a=n.subParser("encodeCode")(a,t,r),a="
"+(a=(a=(a=n.subParser("detab")(a,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+s+"
",a=n.subParser("hashBlock")(a,t,r),"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:a})-1)+"G\n\n"}))).replace(/¨0/,""),r.converter._dispatch("githubCodeBlocks.after",e,t,r)):e})),n.subParser("hashBlock",(function(e,t,n){return e=(e=n.converter._dispatch("hashBlock.before",e,t,n)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(n.gHtmlBlocks.push(e)-1)+"K\n\n",n.converter._dispatch("hashBlock.after",e,t,n)})),n.subParser("hashCodeTags",(function(e,t,r){return e=r.converter._dispatch("hashCodeTags.before",e,t,r),e=n.helper.replaceRecursiveRegExp(e,(function(e,i,o,a){var s=o+n.subParser("encodeCode")(i,t,r)+a;return"¨C"+(r.gHtmlSpans.push(s)-1)+"C"}),"]*>","","gim"),r.converter._dispatch("hashCodeTags.after",e,t,r)})),n.subParser("hashElement",(function(e,t,n){return function(e,t){var r=t;return r=(r=(r=r.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),"\n\n¨K"+(n.gHtmlBlocks.push(r)-1)+"K\n\n"}})),n.subParser("hashHTMLBlocks",(function(e,t,r){e=r.converter._dispatch("hashHTMLBlocks.before",e,t,r);var i=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],o=function(e,t,n,i){var o=e;return-1!==n.search(/\bmarkdown\b/)&&(o=n+r.converter.makeHtml(t)+i),"\n\n¨K"+(r.gHtmlBlocks.push(o)-1)+"K\n\n"};t.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var a=0;34>a;++a)for(var s,l=RegExp("^ {0,3}(<"+i[a]+"\\b[^>]*>)","im"),u="<"+i[a]+"\\b[^>]*>",c="";-1!==(s=n.helper.regexIndexOf(e,l));){var f=n.helper.splitAtIndex(e,s),h=n.helper.replaceRecursiveRegExp(f[1],o,u,c,"im");if(h===f[1])break;e=f[0].concat(h)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(e,t,r)),e=(e=n.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,n.subParser("hashElement")(e,t,r)),r.converter._dispatch("hashHTMLBlocks.after",e,t,r)})),n.subParser("hashHTMLSpans",(function(e,t,n){function r(e){return"¨C"+(n.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=n.converter._dispatch("hashHTMLSpans.before",e,t,n)).replace(/<[^>]+?\/>/gi,(function(e){return r(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<[^>]+?>/gi,(function(e){return r(e)})),n.converter._dispatch("hashHTMLSpans.after",e,t,n)})),n.subParser("unhashHTMLSpans",(function(e,t,n){e=n.converter._dispatch("unhashHTMLSpans.before",e,t,n);for(var r=0;n.gHtmlSpans.length>r;++r){for(var i=n.gHtmlSpans[r],o=0;/¨C(\d+)C/.test(i);){var a=RegExp.$1;if(i=i.replace("¨C"+a+"C",n.gHtmlSpans[a]),10===o)break;++o}e=e.replace("¨C"+r+"C",i)}return n.converter._dispatch("unhashHTMLSpans.after",e,t,n)})),n.subParser("hashPreCodeTags",(function(e,t,r){return e=r.converter._dispatch("hashPreCodeTags.before",e,t,r),e=n.helper.replaceRecursiveRegExp(e,(function(e,i,o,a){var s=o+n.subParser("encodeCode")(i,t,r)+a;return"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:s})-1)+"G\n\n"}),"^ {0,3}]*>\\s*]*>","^ {0,3}\\s*
","gim"),r.converter._dispatch("hashPreCodeTags.after",e,t,r)})),n.subParser("headers",(function(e,t,r){e=r.converter._dispatch("headers.before",e,t,r);var i=isNaN(parseInt(t.headerLevelStart))?1:parseInt(t.headerLevelStart),o=t.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;function a(e){var i,o;if(t.customizedHeaderId){var a=e.match(/\{([^{]+?)}\s*$/);a&&a[1]&&(e=a[1])}return i=e,o=n.helper.isString(t.prefixHeaderId)?t.prefixHeaderId:!0===t.prefixHeaderId?"section-":"",t.rawPrefixHeaderId||(i=o+i),i=t.ghCompatibleHeaderId?i.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():t.rawHeaderId?i.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():i.replace(/[^\w]/g,"").toLowerCase(),t.rawPrefixHeaderId&&(i=o+i),r.hashLinkCounts[i]?i=i+"-"+r.hashLinkCounts[i]++:r.hashLinkCounts[i]=1,i}return e=(e=(e=e.replace(t.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,(function(e,o){var s=n.subParser("spanGamut")(o,t,r),l=t.noHeaderId?"":' id="'+a(o)+'"',u=""+s+"";return n.subParser("hashBlock")(u,t,r)}))).replace(o,(function(e,o){var s=n.subParser("spanGamut")(o,t,r),l=t.noHeaderId?"":' id="'+a(o)+'"',u=i+1,c=""+s+"";return n.subParser("hashBlock")(c,t,r)}))).replace(t.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm,(function(e,o,s){var l=s;t.customizedHeaderId&&(l=s.replace(/\s?\{([^{]+?)}\s*$/,""));var u=n.subParser("spanGamut")(l,t,r),c=t.noHeaderId?"":' id="'+a(s)+'"',f=i-1+o.length,h=""+u+"";return n.subParser("hashBlock")(h,t,r)})),r.converter._dispatch("headers.after",e,t,r)})),n.subParser("horizontalRule",(function(e,t,r){e=r.converter._dispatch("horizontalRule.before",e,t,r);var i=n.subParser("hashBlock")("
",t,r);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,i)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,i),r.converter._dispatch("horizontalRule.after",e,t,r)})),n.subParser("images",(function(e,t,r){function i(e,t,i,o,a,s,l,u){var c=r.gUrls,f=r.gTitles,h=r.gDimensions;if(i=i.toLowerCase(),u||(u=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)o="";else if(""===o||null===o){if(""!==i&&null!==i||(i=t.toLowerCase().replace(/ ?\n/g," ")),o="#"+i,n.helper.isUndefined(c[i]))return e;o=c[i],n.helper.isUndefined(f[i])||(u=f[i]),n.helper.isUndefined(h[i])||(a=h[i].width,s=h[i].height)}t=t.replace(/"/g,""").replace(n.helper.regexes.asteriskDashAndColon,n.helper.escapeCharactersCallback);var d=''+t+'"}return e=(e=(e=(e=(e=(e=r.converter._dispatch("images.before",e,t,r)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,n,r,o,a,s,l){return i(e,t,n,r=r.replace(/\s/g,""),o,a,s,l)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,i)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,i)).replace(/!\[([^\[\]]+)]()()()()()/g,i),r.converter._dispatch("images.after",e,t,r)})),n.subParser("italicsAndBold",(function(e,t,n){function r(e,t,n){return t+e+n}return e=n.converter._dispatch("italicsAndBold.before",e,t,n),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return r(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return r(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return r(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,n){return r(n,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),n.converter._dispatch("italicsAndBold.after",e,t,n)})),n.subParser("lists",(function(e,t,r){function i(e,i){r.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,a=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return t.disableForced4SpacesIndentedSublists&&(o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(o,(function(e,i,o,s,l,u,c){c=c&&""!==c.trim();var f=n.subParser("outdent")(l,t,r),h="";return u&&t.tasklists&&(h=' class="task-list-item" style="list-style-type: none;"',f=f.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='"}))),f=f.replace(/^([-*+]|\d\.)[ \t]+[\S\n ]*/g,(function(e){return"¨A"+e})),i||f.search(/\n{2,}/)>-1?(f=n.subParser("githubCodeBlocks")(f,t,r),f=n.subParser("blockGamut")(f,t,r)):(f=(f=n.subParser("lists")(f,t,r)).replace(/\n$/,""),f=(f=n.subParser("hashHTMLBlocks")(f,t,r)).replace(/\n\n+/g,"\n\n"),f=a?n.subParser("paragraphs")(f,t,r):n.subParser("spanGamut")(f,t,r)),""+(f=f.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),r.gListLevel--,i&&(e=e.replace(/\s+$/,"")),e}function o(e,t){if("ol"===t){var n=e.match(/^ *(\d+)\./);if(n&&"1"!==n[1])return' start="'+n[1]+'"'}return""}function a(e,n,r){var a=t.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,s=t.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===n?a:s,u="";if(-1!==e.search(l))!function t(c){var f=c.search(l),h=o(e,n);-1!==f?(u+="\n\n<"+n+h+">\n"+i(c.slice(0,f),!!r)+"\n",l="ul"===(n="ul"===n?"ol":"ul")?a:s,t(c.slice(f))):u+="\n\n<"+n+h+">\n"+i(c,!!r)+"\n"}(e);else{var c=o(e,n);u="\n\n<"+n+c+">\n"+i(e,!!r)+"\n"}return u}return e=r.converter._dispatch("lists.before",e,t,r),e+="¨0",e=(e=r.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n){return a(t,n.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,n,r){return a(n,r.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),r.converter._dispatch("lists.after",e,t,r)})),n.subParser("metadata",(function(e,t,n){if(!t.metadata)return e;function r(e){n.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,r){return n.metadata.parsed[t]=r,""}))}return e=(e=(e=(e=n.converter._dispatch("metadata.before",e,t,n)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,n){return r(n),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,i){return t&&(n.metadata.format=t),r(i),"¨M"}))).replace(/¨M/g,""),n.converter._dispatch("metadata.after",e,t,n)})),n.subParser("outdent",(function(e,t,n){return e=(e=(e=n.converter._dispatch("outdent.before",e,t,n)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),n.converter._dispatch("outdent.after",e,t,n)})),n.subParser("paragraphs",(function(e,t,r){for(var i=(e=(e=(e=r.converter._dispatch("paragraphs.before",e,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),o=[],a=i.length,s=0;a>s;s++){var l=i[s];0>l.search(/¨(K|G)(\d+)\1/g)?0>l.search(/\S/)||(l=(l=n.subParser("spanGamut")(l,t,r)).replace(/^([ \t]*)/g,"

"),o.push(l+="

")):o.push(l)}for(a=o.length,s=0;a>s;s++){for(var u="",c=o[s],f=!1;/¨(K|G)(\d+)\1/.test(c);){var h=RegExp.$2;u=(u="K"===RegExp.$1?r.gHtmlBlocks[h]:f?n.subParser("encodeCode")(r.ghCodeBlocks[h].text,t,r):r.ghCodeBlocks[h].codeblock).replace(/\$/g,"$$$$"),c=c.replace(/(\n\n)?¨(K|G)\d+\2(\n\n)?/,u),/^]*>\s*]*>/.test(c)&&(f=!0)}o[s]=c}return e=(e=(e=o.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",e,t,r)})),n.subParser("runExtension",(function(e,t,n,r){if(e.filter)t=e.filter(t,r.converter,n);else if(e.regex){var i=e.regex;i instanceof RegExp||(i=RegExp(i,"g")),t=t.replace(i,e.replace)}return t})),n.subParser("spanGamut",(function(e,t,r){return e=r.converter._dispatch("spanGamut.before",e,t,r),e=n.subParser("codeSpans")(e,t,r),e=n.subParser("escapeSpecialCharsWithinTagAttributes")(e,t,r),e=n.subParser("encodeBackslashEscapes")(e,t,r),e=n.subParser("images")(e,t,r),e=n.subParser("anchors")(e,t,r),e=n.subParser("autoLinks")(e,t,r),e=n.subParser("simplifiedAutoLinks")(e,t,r),e=n.subParser("emoji")(e,t,r),e=n.subParser("underline")(e,t,r),e=n.subParser("italicsAndBold")(e,t,r),e=n.subParser("strikethrough")(e,t,r),e=n.subParser("ellipsis")(e,t,r),e=n.subParser("hashHTMLSpans")(e,t,r),e=n.subParser("encodeAmpsAndAngles")(e,t,r),t.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),r.converter._dispatch("spanGamut.after",e,t,r)})),n.subParser("strikethrough",(function(e,t,r){return t.strikethrough&&(e=(e=r.converter._dispatch("strikethrough.before",e,t,r)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,i){return function(e){return t.simplifiedAutoLink&&(e=n.subParser("simplifiedAutoLinks")(e,t,r)),""+e+""}(i)})),e=r.converter._dispatch("strikethrough.after",e,t,r)),e})),n.subParser("stripLinkDefinitions",(function(e,t,r){var i=function(e,i,o,a,s,l,u){return i=i.toLowerCase(),r.gUrls[i]=o.match(/^data:.+?\/.+?;base64,/)?o.replace(/\s/g,""):n.subParser("encodeAmpsAndAngles")(o,t,r),l?l+u:(u&&(r.gTitles[i]=u.replace(/"|'/g,""")),t.parseImgDimensions&&a&&s&&(r.gDimensions[i]={width:a,height:s}),"")};return(e=(e=(e+="¨0").replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,i)).replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,i)).replace(/¨0/,"")})),n.subParser("tables",(function(e,t,r){if(!t.tables)return e;function i(e,i){return""+n.subParser("spanGamut")(e,t,r)+"\n"}function o(e){var o,a=e.split("\n");for(o=0;a.length>o;++o)/^ {0,3}\|/.test(a[o])&&(a[o]=a[o].replace(/^ {0,3}\|/,"")),/\|[ \t]*$/.test(a[o])&&(a[o]=a[o].replace(/\|[ \t]*$/,"")),a[o]=n.subParser("codeSpans")(a[o],t,r);var s,l,u,c,f=a[0].split("|").map((function(e){return e.trim()})),h=a[1].split("|").map((function(e){return e.trim()})),d=[],p=[],g=[],m=[];for(a.shift(),a.shift(),o=0;a.length>o;++o)""!==a[o].trim()&&d.push(a[o].split("|").map((function(e){return e.trim()})));if(h.length>f.length)return e;for(o=0;h.length>o;++o)g.push(/^:[ \t]*--*$/.test(s=h[o])?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(s)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(s)?' style="text-align:center;"':"");for(o=0;f.length>o;++o)n.helper.isUndefined(g[o])&&(g[o]=""),p.push((u=g[o],c=void 0,c="",l=(l=f[o]).trim(),(t.tablesHeaderId||t.tableHeaderId)&&(c=' id="'+l.replace(/ /g,"_").toLowerCase()+'"'),""+(l=n.subParser("spanGamut")(l,t,r))+"\n"));for(o=0;d.length>o;++o){for(var v=[],y=0;p.length>y;++y)n.helper.isUndefined(d[o][y]),v.push(i(d[o][y],g[y]));m.push(v)}return function(e,t){for(var n="\n\n\n",r=e.length,i=0;r>i;++i)n+=e[i];for(n+="\n\n\n",i=0;t.length>i;++i){n+="\n";for(var o=0;r>o;++o)n+=t[i][o];n+="\n"}return n+"\n
\n"}(p,m)}return e=(e=(e=(e=r.converter._dispatch("tables.before",e,t,r)).replace(/\\(\|)/g,n.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,o)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,o),r.converter._dispatch("tables.after",e,t,r)})),n.subParser("underline",(function(e,t,r){return t.underline?(e=r.converter._dispatch("underline.before",e,t,r),e=(e=t.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,n.helper.escapeCharactersCallback),e=r.converter._dispatch("underline.after",e,t,r)):e})),n.subParser("unescapeSpecialChars",(function(e,t,n){return e=(e=n.converter._dispatch("unescapeSpecialChars.before",e,t,n)).replace(/¨E(\d+)E/g,(function(e,t){return String.fromCharCode(parseInt(t))})),n.converter._dispatch("unescapeSpecialChars.after",e,t,n)})),n.subParser("makeMarkdown.blockquote",(function(e,t){var r="";if(e.hasChildNodes())for(var i=e.childNodes,o=i.length,a=0;o>a;++a){var s=n.subParser("makeMarkdown.node")(i[a],t);""!==s&&(r+=s)}return"> "+(r=r.trim()).split("\n").join("\n> ")})),n.subParser("makeMarkdown.codeBlock",(function(e,t){var n=e.getAttribute("language"),r=e.getAttribute("precodenum");return"```"+n+"\n"+t.preList[r]+"\n```"})),n.subParser("makeMarkdown.codeSpan",(function(e){return"`"+e.innerHTML+"`"})),n.subParser("makeMarkdown.emphasis",(function(e,t){var r="";if(e.hasChildNodes()){r+="*";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="*"}return r})),n.subParser("makeMarkdown.header",(function(e,t,r){var i=Array(r+1).join("#"),o="";if(e.hasChildNodes()){o=i+" ";for(var a=e.childNodes,s=a.length,l=0;s>l;++l)o+=n.subParser("makeMarkdown.node")(a[l],t)}return o})),n.subParser("makeMarkdown.hr",(function(){return"---"})),n.subParser("makeMarkdown.image",(function(e){var t="";return e.hasAttribute("src")&&(t+="!["+e.getAttribute("alt")+"](",t+="<"+e.getAttribute("src")+">",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),n.subParser("makeMarkdown.links",(function(e,t){var r="";if(e.hasChildNodes()&&e.hasAttribute("href")){var i=e.childNodes,o=i.length;r="[";for(var a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="](",r+="<"+e.getAttribute("href")+">",e.hasAttribute("title")&&(r+=' "'+e.getAttribute("title")+'"'),r+=")"}return r})),n.subParser("makeMarkdown.list",(function(e,t,r){var i="";if(!e.hasChildNodes())return"";for(var o=e.childNodes,a=o.length,s=e.getAttribute("start")||1,l=0;a>l;++l)void 0!==o[l].tagName&&"li"===o[l].tagName.toLowerCase()&&(i+=("ol"===r?s+". ":"- ")+n.subParser("makeMarkdown.listItem")(o[l],t),++s);return(i+="\n\x3c!-- --\x3e\n").trim()})),n.subParser("makeMarkdown.listItem",(function(e,t){for(var r="",i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);return/\n$/.test(r)?r=r.split("\n").join("\n ").replace(/^ {4}$/gm,"").replace(/\n\n+/g,"\n\n"):r+="\n",r})),n.subParser("makeMarkdown.node",(function(e,t,r){r=r||!1;var i="";if(3===e.nodeType)return n.subParser("makeMarkdown.txt")(e,t);if(8===e.nodeType)return"\x3c!--"+e.data+"--\x3e\n\n";if(1!==e.nodeType)return"";switch(e.tagName.toLowerCase()){case"h1":r||(i=n.subParser("makeMarkdown.header")(e,t,1)+"\n\n");break;case"h2":r||(i=n.subParser("makeMarkdown.header")(e,t,2)+"\n\n");break;case"h3":r||(i=n.subParser("makeMarkdown.header")(e,t,3)+"\n\n");break;case"h4":r||(i=n.subParser("makeMarkdown.header")(e,t,4)+"\n\n");break;case"h5":r||(i=n.subParser("makeMarkdown.header")(e,t,5)+"\n\n");break;case"h6":r||(i=n.subParser("makeMarkdown.header")(e,t,6)+"\n\n");break;case"p":r||(i=n.subParser("makeMarkdown.paragraph")(e,t)+"\n\n");break;case"blockquote":r||(i=n.subParser("makeMarkdown.blockquote")(e,t)+"\n\n");break;case"hr":r||(i=n.subParser("makeMarkdown.hr")(e,t)+"\n\n");break;case"ol":r||(i=n.subParser("makeMarkdown.list")(e,t,"ol")+"\n\n");break;case"ul":r||(i=n.subParser("makeMarkdown.list")(e,t,"ul")+"\n\n");break;case"precode":r||(i=n.subParser("makeMarkdown.codeBlock")(e,t)+"\n\n");break;case"pre":r||(i=n.subParser("makeMarkdown.pre")(e,t)+"\n\n");break;case"table":r||(i=n.subParser("makeMarkdown.table")(e,t)+"\n\n");break;case"code":i=n.subParser("makeMarkdown.codeSpan")(e,t);break;case"em":case"i":i=n.subParser("makeMarkdown.emphasis")(e,t);break;case"strong":case"b":i=n.subParser("makeMarkdown.strong")(e,t);break;case"del":i=n.subParser("makeMarkdown.strikethrough")(e,t);break;case"a":i=n.subParser("makeMarkdown.links")(e,t);break;case"img":i=n.subParser("makeMarkdown.image")(e,t);break;default:i=e.outerHTML+"\n\n"}return i})),n.subParser("makeMarkdown.paragraph",(function(e,t){var r="";if(e.hasChildNodes())for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);return r.trim()})),n.subParser("makeMarkdown.pre",(function(e,t){var n=e.getAttribute("prenum");return"
"+t.preList[n]+"
"})),n.subParser("makeMarkdown.strikethrough",(function(e,t){var r="";if(e.hasChildNodes()){r+="~~";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="~~"}return r})),n.subParser("makeMarkdown.strong",(function(e,t){var r="";if(e.hasChildNodes()){r+="**";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t);r+="**"}return r})),n.subParser("makeMarkdown.table",(function(e,t){var r,i,o="",a=[[],[]],s=e.querySelectorAll("thead>tr>th"),l=e.querySelectorAll("tbody>tr");for(r=0;s.length>r;++r){var u=n.subParser("makeMarkdown.tableCell")(s[r],t),c="---";if(s[r].hasAttribute("style"))switch(s[r].getAttribute("style").toLowerCase().replace(/\s/g,"")){case"text-align:left;":c=":---";break;case"text-align:right;":c="---:";break;case"text-align:center;":c=":---:"}a[0][r]=u.trim(),a[1][r]=c}for(r=0;l.length>r;++r){var f=a.push([])-1,h=l[r].getElementsByTagName("td");for(i=0;s.length>i;++i){var d=" ";void 0!==h[i]&&(d=n.subParser("makeMarkdown.tableCell")(h[i],t)),a[f].push(d)}}var p=3;for(r=0;a.length>r;++r)for(i=0;a[r].length>i;++i){var g=a[r][i].length;g>p&&(p=g)}for(r=0;a.length>r;++r){for(i=0;a[r].length>i;++i)a[r][i]=1===r?":"===a[r][i].slice(-1)?n.helper.padEnd(a[r][i].slice(-1),p-1,"-")+":":n.helper.padEnd(a[r][i],p,"-"):n.helper.padEnd(a[r][i],p);o+="| "+a[r].join(" | ")+" |\n"}return o.trim()})),n.subParser("makeMarkdown.tableCell",(function(e,t){var r="";if(!e.hasChildNodes())return"";for(var i=e.childNodes,o=i.length,a=0;o>a;++a)r+=n.subParser("makeMarkdown.node")(i[a],t,!0);return r.trim()})),n.subParser("makeMarkdown.txt",(function(e){var t=e.nodeValue;return t=(t=t.replace(/ +/g," ")).replace(/¨NBSP;/g," "),(t=(t=(t=(t=(t=(t=(t=(t=n.helper.unescapeHTMLEntities(t)).replace(/([*_~|`])/g,"\\$1")).replace(/^(\s*)>/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")})),e.exports?e.exports=n:this.showdown=n}).call(s)}));l.ConverterExtObj=function(e,t){var n=[],r=e;function i(e,t){if(t=t||null,l.helper.isString(e)&&(t=l.helper.stdExtName(e),e=l.asyncExtension(t),l.helper.isUndefined(e)))throw Error('Extension "'+t+'" could not be loaded. It was either not found or is not a valid aync extension.');if("function"==typeof e&&(e=e()),l.helper.isArray(e)||(e=[e]),l.validateExtension(e))for(var r=0;e.length>r;++r)switch(e[r].type){case"output":n.push(e[r])}}t&&l.helper.forEach(t,i),this.addAsyncExtension=function(e,t){i(e,t=t||null)},this.removeAsyncExtension=function(e){l.helper.isArray(e)||(e=[e]);for(var t=0;e.length>t;++t)for(var r=e[t],i=0;n.length>i;++i)n[i]===r&&n.splice(i,1)},this.getAsyncExtensions=function(){return n},this.getCurrFlavor=function(){return r},this.setCurrFlavor=function(e){r=e}},l.Converter.prototype.initConvertExtObj=function(e,t){return this.extObj=new l.ConverterExtObj(e,t),this.resetOptions=function(e){e=e||{};var t=l.getOptions(),n=this.getOptions();for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);if("object"===a(e))for(var i in e)e.hasOwnProperty(i)&&(n[i]=e[i])},this.setFlavor=function(e){var t=l.getFlavorOptions(e);if(!l.helper.isUndefined(t)){this.extObj.setCurrFlavor(e);var n=l.getDefaultOptions(!0);for(var r in n)n.hasOwnProperty(r)&&(this.getOptions()[r]=n[r]);for(var r in t)t.hasOwnProperty(r)&&(this.getOptions()[r]=t[r])}},this.getFlavor=function(){return this.extObj.getCurrFlavor()},this.addAsyncExtension=function(e,t){this.extObj.addAsyncExtension(e,t)},this.removeAsyncExtension=function(e){this.extObj.removeAsyncExtension(e)},this.removeExtension=function(e){l.helper.isArray(e)||(e=[e]);for(var t=this.getAllExtensions(),n=t.language,r=t.output,i=0;e.length>i;++i){for(var o=e[i],a=0;n.length>a;++a)n[a]===o&&n.splice(a,1);for(var s=0;r.length>s;++s)r[s]===o&&r.splice(s,1)}},this.asyncMakeHtml=function(e,t){var n=this.makeHtml(e),r=this.extObj.getAsyncExtensions();if(!r.length)return Promise.resolve(n);var i={outputs:r,converter:this},o=(new DOMParser).parseFromString(n,"text/html"),a=void 0!==o.body?o.body:o,s=this.getOptions(),l=Promise.resolve({wrapper:a,options:s,globals:i});return r.forEach((function(e){l=l.then((function(t){var n=e.filter(t);return n||t}))})),l.then((function(e){if("function"==typeof t&&t){var n=t(e);if(n instanceof Promise)return n.then((function(e){return e.wrapper.innerHTML}))}return e.wrapper.innerHTML}))},this},l.subParser("githubCodeBlocks",(function(e,t,n){return t.ghCodeBlocks?(e=n.converter._dispatch("githubCodeBlocks.before",e,t,n),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*?)(?:[ \t]*?)((?:\{[\S\t ]*\}|\[[\S\t ]*\])?)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,r,i,o,a){var s=t.omitExtraWLInCodeBlocks?"":"\n";return a=l.subParser("encodeCode")(a,t,n),a=(a=(a=l.subParser("detab")(a,t,n)).replace(/^\n+/g,"")).replace(/\n+$/g,""),a="
"+a+s+"
",a=l.subParser("hashBlock")(a,t,n),"\n\n¨G"+(n.ghCodeBlocks.push({text:e,codeblock:a})-1)+"G\n\n"}))).replace(/¨0/,""),n.converter._dispatch("githubCodeBlocks.after",e,t,n)):e})),l.subParser("tables",(function(e,t,n){if(!t.tables)return e;function r(e){return/^:[ \t]*--*$/.test(e)?' style="text-align:left;"':/^--*[ \t]*:[ \t]*$/.test(e)?' style="text-align:right;"':/^:[ \t]*--*[ \t]*:$/.test(e)?' style="text-align:center;"':""}function i(e,r,i,o,a){if(t.tablesMerge){var s=function(e,n,r,i){if(i){if(!t.tablesRowspan||"^^"!==i||!n)return;for(var o=n-1;o>=0;--o)if(e[o][r]){if("^^"!==e[o][r])return e[o][r]=e[o][r].replace(/rowspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,r){return t+' rowspan="'+(n-o+1)+'"'+r})),i;if(0===o)return e[o][r]='\n',i}else for(var a=r-1;a>=0;-a){if(e[o+1][a]&&"^^"!==e[o+1][a])return;if(e[o][a]){if(!e[o+1][a])return;return e[o][a]=e[o][a].replace(/rowspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,r){return t+' rowspan="'+(n-o+1)+'"'+r})),i}}}else if(r)for(a=r-1;a>=0;--a)if(e[n][a]){if("^^"!==e[n][a])return e[n][a]=e[n][a].replace(/colspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,n){return t+' colspan="'+(r-a+1)+'"'+n})),i;for(o=n-1;o>=0;--o){if(e[o][a+1])return;if("^^"!==e[o][a])return e[o][a]=e[o][a].replace(/colspan="[0-9]*"/g,"").replace(/^(\n\r]*?)(>.*<\/td>\n)/,(function(e,t,n){return t+' colspan="'+(r-a+1)+'"'+n})),i}}else if(0===a)return e[n][a]='\n',i}(e,r,i,o);if(!l.helper.isUndefined(s))return s}return o=o.trim(),""+l.subParser("spanGamut")(o,t,n)+"\n"}function o(e,o){var a,s=e.split("\n");for(a=0;s.length>a;++a)/^ {0,3}\|/.test(s[a])&&(s[a]=s[a].replace(/^ {0,3}\|/,"")),/\|[ \t]*$/.test(s[a])&&(s[a]=s[a].replace(/\|[ \t]*$/,"")),s[a]=l.subParser("codeSpans")(s[a],t,n);var u,c,f,h=[],d=[],p=[],g=[],m=[];if(o)for(h=s[0].split("|").map((function(e){return e.trim()})),s.shift(),a=0;h.length>a;++a)g.push(r(h[a]));else{var v=s[0].split("|").map((function(e){return e.trim()}));if(h=s[1].split("|").map((function(e){return e.trim()})),s.shift(),s.shift(),h.length>v.length)return e;for(a=0;h.length>a;++a)g.push(r(h[a]));for(a=0;v.length>a;++a)l.helper.isUndefined(g[a])&&(g[a]=""),p.push((c=g[a],f=void 0,f="",u=(u=v[a]).trim(),(t.tablesHeaderId||t.tableHeaderId)&&(f=' id="'+u.replace(/ /g,"_").toLowerCase()+'"'),""+(u=l.subParser("spanGamut")(u,t,n))+"\n"))}for(a=0;s.length>a;++a)""!==s[a].trim()&&d.push(s[a].split("|").map((function(e){var t=e.trim();return""===t&&e.length>0?e:t})));for(a=0;d.length>a;++a){var y=[];m.push(y);for(var b=0;g.length>b;++b)l.helper.isUndefined(d[a][b])&&(d[a][b]=""),y.push(i(m,a,b,d[a][b],g[b]))}return function(e,n,r){var i="\n",o=n.length;if(e.length){i+="\n\n";for(var a=0;e.length>a;++a)i+=e[a];i+="\n\n"}for(i+="\n",a=0;r.length>a;++a){i+="\n";for(var s=0;o>s;++s)t.tablesMerge&&"^^"===r[a][s]||(i+=r[a][s]);i+="\n"}return i+"\n
\n"}(p,g,m)}function a(e){return o(e,!1)}function s(e){return o(e,!0)}return e=(e=(e=(e=n.converter._dispatch("tables.before",e,t,n)).replace(/\\(\|)/g,l.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,a)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,a),t.tablesHeaderless&&(e=(e=e.replace(/^ {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,s)).replace(/^ {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,s)),n.converter._dispatch("tables.after",e,t,n)}));var u="vanilla",c={github:{ghCompatibleHeaderId:!1,underline:!0,rawHeaderId:!0,tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0},ghost:{tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0},allOn:{tablesHeaderless:!0,tablesMerge:!0,tablesRowspan:!0}},f={};l.asyncExtension=function(e,t){if(!l.helper.isString(e))throw Error("Extension 'name' must be a string");if(e=l.helper.stdExtName(e),l.helper.isUndefined(t)){if(!f.hasOwnProperty(e))throw Error("Async Extension named "+e+" is not registered!");return f[e]}"function"==typeof t&&(t=t()),l.helper.isArray(t)||(t=[t]),l.validateExtension(t)&&(f[e]=t)},l.removeAsyncExtension=function(e){e=l.helper.stdExtName(e),delete f[e]},l.resetAsyncExtensions=function(){f={}},l.removeExtension=function(e){e=l.helper.stdExtName(e),delete l.getAllExtensions[e]};var h=l.setFlavor,d=l.getFlavorOptions;function p(e,t,n,r){try{r&&(n=n.appendChild(e.ownerDocument.createElement("ul")));var i=n.appendChild(e.ownerDocument.createElement("li")).appendChild(e.ownerDocument.createElement("a"));t&&(i.appendChild(e.ownerDocument.createTextNode(t.textContent)),i.href="#"+t.id)}catch(e){}return n}function g(e,t,n,r){if(n.headingLevel>=r){for(var i=null;n&&n.headingLevel>=r;)n=(i=n).parentNode,i.parentNode=null,i.toc=null,i.headingLevel=null,i.preLevel=null;return n&&g(e,t,n,r),n}if(r>n.preLevel){for(n.preLevel++;r>n.preLevel;)n.toc=p(e,null,n.toc,!0),n.preLevel++;n.toc=p(e,t,n.toc,!0)}else{for(;n.preLevel>r;)n.toc=n.toc.parentNode,n.preLevel--;p(e,t,n.toc,!1)}return n.parentNode&&g(e,t,n.parentNode,r),n}function m(){var e=new DOMParser;return[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n;return function(e){for(var t=null,n=0,r=null,i=!1,o=e.querySelectorAll("p,h1,h2,h3,h4,h5,h6"),a=0;o.length>a;a++)if("[toc]"==(t=o[a]).textContent.trim().toLowerCase()){var s=e.ownerDocument.createElement("ul");s.className="showdown-toc",t.parentNode.replaceChild(s,t);var l={parentNode:null,toc:s,headingLevel:n,preLevel:0};if(r)if(n>r.headingLevel)l.parentNode=r;else{for(var u=r;u.headingLevel>n;)u=u.parentNode;u&&(l.parentNode=n===u.headingLevel?u.parentNode:u)}r=l,i=!0}else if(t.tagName)switch(t.tagName){case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":n=parseInt(t.tagName.substr(1)),r&&(r.preLevel||(r.preLevel=n),r=g(e,t,r,n))}for(;r;){var c=r;r=c.parentNode,c.parentNode=null,c.toc=null,c.headingLevel=null,c.preLevel=null}return i}(r)?r.innerHTML:t}}]}l.setFlavor=function(e){try{if(h(e),u=e,!c.hasOwnProperty(e))return}catch(t){if(!c.hasOwnProperty(e))return;l.resetOptions(),u=e}var t=c[e];for(var n in t)t.hasOwnProperty(n)&&(l.getOptions()[n]=t[n])},l.getFlavor=function(){return u},l.setFlavorOptions=function(e,t){t&&(c[e]=Object.assign(c[e]||{},t))},l.getFlavorOptions=function(e){var t=d(e);return l.helper.isUndefined(t)?c.hasOwnProperty(e)?c[e]:void 0:c.hasOwnProperty(e)?Object.assign(t,c[e]):t},Date.prototype.Format=function(e){var t={"M+":this.getMonth()+1,"d+":this.getDate(),"h+":this.getHours(),"H+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds(),"q+":Math.floor((this.getMonth()+3)/3),S:this.getMilliseconds()};for(var n in e||(e="yyyy-MM-dd hh:mm:ss.S"),/(y+)/.test(e)&&(e=e.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length))),t)RegExp("("+n+")").test(e)&&(e=e.replace(RegExp.$1,1==RegExp.$1.length?t[n]:("00"+t[n]).substr((""+t[n]).length)));return e};var v="jsdelivr",y="file:"===document.location.protocol?"https://":document.location.protocol+"//",b="",w="",_={local:{Viz:"../node_modules/viz.js/viz.js",VizRender:"../node_modules/viz.js/full.render.js",Raphael:"../node_modules/raphael/raphael.min.js",flowchart:"../dist/diagrams/flowchart/flowchart.min.js",mermaid:"../node_modules/mermaid/dist/mermaid.min.js",katex:"../node_modules/katex/dist/katex.min.js",katexCSS:"../node_modules/katex/dist/katex.min.css",renderMathInElement:"../node_modules/katex/dist/contrib/auto-render.js",railroad:"../node_modules/railroad-diagrams/railroad-diagrams.js",railroadCSS:"../node_modules/railroad-diagrams/railroad-diagrams.css",Snap:"../node_modules/snapsvg/dist/snap.svg-min.js",WebFont:"../node_modules/webfontloader/webfontloader.js",underscore:"../node_modules/underscore/underscore-min.js",sequence:"../node_modules/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:"../node_modules/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:"../node_modules/wavedrom/wavedrom.min.js",WaveDromSkin:{default:"../node_modules/wavedrom/skins/default.js",lowkey:"../node_modules/wavedrom/skins/lowkey.js",narrow:"../node_modules/wavedrom/skins/narrow.js"},vega:"../node_modules/vega/build/vega.min.js",vegaLite:"../node_modules/vega-lite/build/vega-lite.min.js",vegaEmbed:"../node_modules/vega-embed/build/vega-embed.min.js"},cdnjs:{Viz:y+"cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/viz.js",VizRender:y+"cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/full.render.js",Raphael:y+"cdnjs.cloudflare.com/ajax/libs/raphael/2.3.0/raphael.min.js",flowchart:y+"cdnjs.cloudflare.com/ajax/libs/flowchart/1.14.1/flowchart.min.js",mermaid:y+"cdnjs.cloudflare.com/ajax/libs/mermaid/8.8.2/mermaid.min.js",katex:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/katex.min.js",katexCSS:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/katex.min.css",renderMathInElement:y+"cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/contrib/auto-render.js",railroad:y+"cdn.jsdelivr.net/npm/railroad-diagrams",railroadCSS:y+"cdn.jsdelivr.net/npm/railroad-diagrams/railroad-diagrams.css",Snap:y+"cdnjs.cloudflare.com/ajax/libs/snap.svg/0.5.1/snap.svg-min.js",WebFont:y+"cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js",underscore:y+"cdnjs.cloudflare.com/ajax/libs/underscore.js/1.11.0/underscore-min.js",sequence:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/wavedrom.min.js",WaveDromSkin:{default:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/default.js",lowkey:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/lowkey.js",narrow:y+"cdnjs.cloudflare.com/ajax/libs/wavedrom/2.6.8/skins/narrow.js"},vega:y+"cdnjs.cloudflare.com/ajax/libs/vega/5.15.0/vega.min.js",vegaLite:y+"cdnjs.cloudflare.com/ajax/libs/vega-lite/4.15.0/vega-lite.min.js",vegaEmbed:y+"cdnjs.cloudflare.com/ajax/libs/vega-embed/6.12.2/vega-embed.min.js"},jsdelivr:{Viz:y+"cdn.jsdelivr.net/npm/viz.js",VizRender:y+"cdn.jsdelivr.net/npm/viz.js/full.render.js",Raphael:y+"cdn.jsdelivr.net/npm/raphael/raphael.min.js",flowchart:y+"cdnjs.cloudflare.com/ajax/libs/flowchart/1.14.1/flowchart.min.js",mermaid:y+"cdn.jsdelivr.net/npm/mermaid@8/dist/mermaid.min.js",katex:y+"cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.js",katexCSS:y+"cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.css",renderMathInElement:y+"cdn.jsdelivr.net/npm/katex@0.12.0/dist/contrib/auto-render.js",railroad:y+"cdn.jsdelivr.net/npm/railroad-diagrams",railroadCSS:y+"cdn.jsdelivr.net/npm/railroad-diagrams/railroad-diagrams.css",Snap:y+"cdn.jsdelivr.net/npm/snapsvg",WebFont:y+"cdn.jsdelivr.net/npm/webfontloader",underscore:y+"cdn.jsdelivr.net/npm/underscore",sequence:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.js",sequenceCSS:y+"cdn.jsdelivr.net/npm/@rokt33r/js-sequence-diagrams/dist/sequence-diagram-min.css",WaveDrom:y+"cdn.jsdelivr.net/npm/wavedrom/wavedrom.min.js",WaveDromSkin:{default:y+"cdn.jsdelivr.net/npm/wavedrom/skins/default.js",lowkey:y+"cdn.jsdelivr.net/npm/wavedrom/skins/lowkey.js",narrow:y+"cdn.jsdelivr.net/npm/wavedrom/skins/narrow.js"},vega:y+"cdn.jsdelivr.net/npm/vega@5/build/vega.js",vegaLite:y+"cdn.jsdelivr.net/npm/vega-lite@4/build/vega-lite.js",vegaEmbed:y+"cdn.jsdelivr.net/npm/vega-embed@6/build/vega-embed.js"}};function x(e,t){if(_.hasOwnProperty(v)){var n=_[v],r="";if("object"===a(e)){var i=Object.keys(e)[0],o=e[i];n[i]&&"string"==typeof o&&o&&n[i][o]&&(r=n[i][o])}else n[e]&&(r=n[e]);r&&(t=r.substr(0,y.length)===y?r:"../dist/"===r.substr(0,8)?w+r:b+r)}return t}var k={interopDefault:function(e){return e&&"object"===a(e)&&"default"in e?e.default:e},loadScript:function(e,t){return new Promise((function(n,r){e&&"undefined"!=typeof document||r("Args is invaild!"),void 0===t&&(t=e),e=x(t,e);var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("script");o.src=e,o.onload=function(){n(t)},i.appendChild(o)}))},loadStyleSheet:function(e,t){if(!e||"undefined"==typeof document)return"";void 0===t&&(t=e),e=x(t,e);var n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("link");return r.rel="stylesheet",r.href=e,n.appendChild(r),"local"===v?"":e},renderCacheElement:function(e,t,n,r){"undefined"!=typeof window&&window.document&&(e=window.document);var i=e.createElement("div");if(i.id=t,i.className=n,i.style.display="none",e.body.appendChild(i),"function"==typeof r&&r){var o=r(i);if(o instanceof Promise)return o.then((function(t){e.body.removeChild(t),t.style.display=""})),i.outerHTML}return e.body.removeChild(i),i.style.display="",i.outerHTML},setCDN:function(e,t,n){e in _&&(v=e),"string"==typeof t&&t&&(b=t),"string"==typeof n&&n&&(w=n)},getCDN:function(){return v},getSrc:x};if("undefined"==typeof window)throw Error("The showdown viz extension can only be used in browser environment!");if(void 0===S)var S=window.Viz||void 0;var C=["circo","dot","neato","osage","twopi"];function E(){return!(void 0===S||!S||void 0===S.Module||void 0===S.render)}var A=!1;function O(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s="viz-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=s,function e(t,n){if(E()){var r=n.id,i=n.className,o=n.data,a=n.element,s=n.langattr,l="dot";if(s){var u=JSON.parse(s);u&&u.engine&&-1!=C.indexOf(u.engine)&&(l=u.engine)}(new S).renderString(o,{format:"svg",engine:l}).then((function(e){a.parentNode.outerHTML='
').concat(e,"
"),t(!0)}))}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:s,className:a,data:o,langattr:n})}))}function L(e){var t;return t=E(),"undefined"!=typeof window&&(t||A||(A=!0,k.loadScript("Viz").then((function(e){S=k.interopDefault(window[e])})),k.loadScript("VizRender"))),new Promise((function(t){var n=[];e.forEach((function(e){n.push(O(e))})),Promise.all(n).then((function(){t(!0)}))}))}function T(){return[{type:"output",filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.dot.language-dot");return!!n.length&&L(n).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown vega extension can only be used in browser environment!");if(void 0===M)var M=window.vegaEmbed||void 0;function P(){return!(void 0===M||!M)}var j=!1;function R(e,t,n){return new Promise((function(r){var i=e.dataset.lang,o=i?JSON.parse(i):null,a="";if(o){if("boolean"==typeof o.codeblock&&o.codeblock||"string"==typeof o.codeblock&&"true"===o.codeblock.toLowerCase())return r(!1);o.align&&("center"===o.align?a="diagram-center":"right"===o.align&&(a="diagram-right"))}var s=e.textContent.trim(),l=(e.classList.length>0?e.classList[0]:"")+(e.className&&a?" ":"")+a,u="vega-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=u,function e(t,n){if(P()){var r=n.id,i=n.data,o=n.options,a=n.element,s=a.ownerDocument;k.renderCacheElement(s,r,n.className,(function(e){return M(e,JSON.parse(i),o),new Promise((function(n){!function i(){e.childNodes.length>0?(a.parentNode.outerHTML=e.outerHTML,(a=s.getElementById(r))&&(a.style.display=""),t(!0),n(e)):setTimeout(i,50)}()}))}))}else setTimeout((function(){e(t,n)}),50)}(r,{element:e,id:u,className:l,data:s,options:t,isVegaLite:n})}))}function N(e,t,n){var r;return r=P(),"undefined"!=typeof window&&(r||j||(j=!0,k.loadScript("vega").then((function(){return k.loadScript("vegaLite")})).then((function(){return k.loadScript("vegaEmbed")})).then((function(e){M=k.interopDefault(window[e])})))),new Promise((function(r){var i=[];e.forEach((function(e){i.push(R(e,n,!1))})),t.forEach((function(e){i.push(R(e,n,!0))})),Promise.all(i).then((function(){r(!0)}))}))}function D(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({actions:{editor:!1},theme:"vox",tooltip:!1},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.vega.language-vega"),r=t.querySelectorAll("code.vega-lite.language-vega-lite");return!(!n.length&&!r.length)&&N(n,r,this.config).then((function(){return e}))}}]}function F(){var e=new DOMParser;return[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n;return function(e){for(var t=null,n=null,r=!1,i=e.querySelectorAll("p, li, h1, h2, h3, h4, h5, h6, div.paragraph"),o=0;i.length>o;o++)for(n=(t=i[o]).firstChild;n;){if(3===n.nodeType){var a=n.nodeValue.match(/^([\s\S]*?)([:-]-:)(?:[\s]?)([\s\S]*)$/);a&&(":-:"===a[2]?(n.nodeValue=a[3],t.className?t.className+=" align-center":t.className="align-center",r=!0):"--:"===a[2]&&(n.nodeValue=a[3],t.className?t.className+=" align-right":t.className="align-right",r=!0));break}n=n.nextSibling}return r}(r)?r.innerHTML:t}}]}var I=".",z={input:'"',tag:"mtext",output:"mbox",tex:null,ttype:10},B=[{input:"alpha",tag:"mi",output:"α",tex:null,ttype:0},{input:"beta",tag:"mi",output:"β",tex:null,ttype:0},{input:"chi",tag:"mi",output:"χ",tex:null,ttype:0},{input:"delta",tag:"mi",output:"δ",tex:null,ttype:0},{input:"Delta",tag:"mo",output:"Δ",tex:null,ttype:0},{input:"epsi",tag:"mi",output:"ε",tex:"epsilon",ttype:0},{input:"varepsilon",tag:"mi",output:"ɛ",tex:null,ttype:0},{input:"eta",tag:"mi",output:"η",tex:null,ttype:0},{input:"gamma",tag:"mi",output:"γ",tex:null,ttype:0},{input:"Gamma",tag:"mo",output:"Γ",tex:null,ttype:0},{input:"iota",tag:"mi",output:"ι",tex:null,ttype:0},{input:"kappa",tag:"mi",output:"κ",tex:null,ttype:0},{input:"lambda",tag:"mi",output:"λ",tex:null,ttype:0},{input:"Lambda",tag:"mo",output:"Λ",tex:null,ttype:0},{input:"lamda",tag:"mi",output:"lambda",tex:null,ttype:8},{input:"Lamda",tag:"mi",output:"Lambda",tex:null,ttype:8},{input:"mu",tag:"mi",output:"μ",tex:null,ttype:0},{input:"nu",tag:"mi",output:"ν",tex:null,ttype:0},{input:"omega",tag:"mi",output:"ω",tex:null,ttype:0},{input:"Omega",tag:"mo",output:"Ω",tex:null,ttype:0},{input:"phi",tag:"mi",output:"φ",tex:null,ttype:0},{input:"varphi",tag:"mi",output:"ϕ",tex:null,ttype:0},{input:"Phi",tag:"mo",output:"Φ",tex:null,ttype:0},{input:"pi",tag:"mi",output:"π",tex:null,ttype:0},{input:"Pi",tag:"mo",output:"Π",tex:null,ttype:0},{input:"psi",tag:"mi",output:"ψ",tex:null,ttype:0},{input:"Psi",tag:"mi",output:"Ψ",tex:null,ttype:0},{input:"rho",tag:"mi",output:"ρ",tex:null,ttype:0},{input:"sigma",tag:"mi",output:"σ",tex:null,ttype:0},{input:"Sigma",tag:"mo",output:"Σ",tex:null,ttype:0},{input:"tau",tag:"mi",output:"τ",tex:null,ttype:0},{input:"theta",tag:"mi",output:"θ",tex:null,ttype:0},{input:"vartheta",tag:"mi",output:"ϑ",tex:null,ttype:0},{input:"Theta",tag:"mo",output:"Θ",tex:null,ttype:0},{input:"upsilon",tag:"mi",output:"υ",tex:null,ttype:0},{input:"xi",tag:"mi",output:"ξ",tex:null,ttype:0},{input:"Xi",tag:"mo",output:"Ξ",tex:null,ttype:0},{input:"zeta",tag:"mi",output:"ζ",tex:null,ttype:0},{input:"*",tag:"mo",output:"⋅",tex:"cdot",ttype:0},{input:"**",tag:"mo",output:"∗",tex:"ast",ttype:0},{input:"***",tag:"mo",output:"⋆",tex:"star",ttype:0},{input:"//",tag:"mo",output:"/",tex:"/",ttype:0,val:!0,notexcopy:!0},{input:"\\\\",tag:"mo",output:"\\",tex:"backslash",ttype:0},{input:"setminus",tag:"mo",output:"\\",tex:null,ttype:0},{input:"xx",tag:"mo",output:"×",tex:"times",ttype:0},{input:"|><",tag:"mo",output:"⋉",tex:"ltimes",ttype:0},{input:"><|",tag:"mo",output:"⋊",tex:"rtimes",ttype:0},{input:"|><|",tag:"mo",output:"⋈",tex:"bowtie",ttype:0},{input:"-:",tag:"mo",output:"÷",tex:"div",ttype:0},{input:"divide",tag:"mo",output:"-:",tex:null,ttype:8},{input:"@",tag:"mo",output:"∘",tex:"circ",ttype:0},{input:"o+",tag:"mo",output:"⊕",tex:"oplus",ttype:0},{input:"ox",tag:"mo",output:"⊗",tex:"otimes",ttype:0},{input:"o.",tag:"mo",output:"⊙",tex:"odot",ttype:0},{input:"sum",tag:"mo",output:"∑",tex:null,ttype:7},{input:"prod",tag:"mo",output:"∏",tex:null,ttype:7},{input:"^^",tag:"mo",output:"∧",tex:"wedge",ttype:0},{input:"^^^",tag:"mo",output:"⋀",tex:"bigwedge",ttype:7},{input:"vv",tag:"mo",output:"∨",tex:"vee",ttype:0},{input:"vvv",tag:"mo",output:"⋁",tex:"bigvee",ttype:7},{input:"nn",tag:"mo",output:"∩",tex:"cap",ttype:0},{input:"nnn",tag:"mo",output:"⋂",tex:"bigcap",ttype:7},{input:"uu",tag:"mo",output:"∪",tex:"cup",ttype:0},{input:"uuu",tag:"mo",output:"⋃",tex:"bigcup",ttype:7},{input:"overset",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"underset",tag:"munder",output:"stackrel",tex:null,ttype:2},{input:"!=",tag:"mo",output:"≠",tex:"ne",ttype:0},{input:":=",tag:"mo",output:":=",tex:null,ttype:0},{input:"lt",tag:"mo",output:"<",tex:null,ttype:0},{input:"gt",tag:"mo",output:">",tex:null,ttype:0},{input:"<=",tag:"mo",output:"≤",tex:"le",ttype:0},{input:"lt=",tag:"mo",output:"≤",tex:"leq",ttype:0},{input:"gt=",tag:"mo",output:"≥",tex:"geq",ttype:0},{input:">=",tag:"mo",output:"≥",tex:"ge",ttype:0},{input:"-<",tag:"mo",output:"≺",tex:"prec",ttype:0},{input:"-lt",tag:"mo",output:"≺",tex:null,ttype:0},{input:">-",tag:"mo",output:"≻",tex:"succ",ttype:0},{input:"-<=",tag:"mo",output:"⪯",tex:"preceq",ttype:0},{input:">-=",tag:"mo",output:"⪰",tex:"succeq",ttype:0},{input:"in",tag:"mo",output:"∈",tex:null,ttype:0},{input:"!in",tag:"mo",output:"∉",tex:"notin",ttype:0},{input:"sub",tag:"mo",output:"⊂",tex:"subset",ttype:0},{input:"sup",tag:"mo",output:"⊃",tex:"supset",ttype:0},{input:"sube",tag:"mo",output:"⊆",tex:"subseteq",ttype:0},{input:"supe",tag:"mo",output:"⊇",tex:"supseteq",ttype:0},{input:"-=",tag:"mo",output:"≡",tex:"equiv",ttype:0},{input:"~=",tag:"mo",output:"≅",tex:"stackrel{\\sim}{=}",notexcopy:!0,ttype:0},{input:"cong",tag:"mo",output:"~=",tex:null,ttype:8},{input:"~~",tag:"mo",output:"≈",tex:"approx",ttype:0},{input:"prop",tag:"mo",output:"∝",tex:"propto",ttype:0},{input:"and",tag:"mtext",output:"and",tex:null,ttype:6},{input:"or",tag:"mtext",output:"or",tex:null,ttype:6},{input:"not",tag:"mo",output:"¬",tex:"neg",ttype:0},{input:"=>",tag:"mo",output:"⇒",tex:"Rightarrow",ttype:0},{input:"implies",tag:"mo",output:"=>",tex:null,ttype:8},{input:"if",tag:"mo",output:"if",tex:null,ttype:6},{input:"<=>",tag:"mo",output:"⇔",tex:"Leftrightarrow",ttype:0},{input:"iff",tag:"mo",output:"<=>",tex:null,ttype:8},{input:"AA",tag:"mo",output:"∀",tex:"forall",ttype:0},{input:"EE",tag:"mo",output:"∃",tex:"exists",ttype:0},{input:"_|_",tag:"mo",output:"⊥",tex:"bot",ttype:0},{input:"TT",tag:"mo",output:"⊤",tex:"top",ttype:0},{input:"|--",tag:"mo",output:"⊢",tex:"vdash",ttype:0},{input:"|==",tag:"mo",output:"⊨",tex:"models",ttype:0},{input:"(",tag:"mo",output:"(",tex:null,ttype:4,val:!0},{input:")",tag:"mo",output:")",tex:null,ttype:5,val:!0},{input:"[",tag:"mo",output:"[",tex:null,ttype:4,val:!0},{input:"]",tag:"mo",output:"]",tex:null,ttype:5,val:!0},{input:"left(",tag:"mo",output:"(",tex:"(",notexcopy:!0,ttype:4,val:!0},{input:"right)",tag:"mo",output:")",tex:")",notexcopy:!0,ttype:5,val:!0},{input:"left[",tag:"mo",output:"[",tex:"[",notexcopy:!0,ttype:4,val:!0},{input:"right]",tag:"mo",output:"]",tex:"]",notexcopy:!0,ttype:5,val:!0},{input:"{",tag:"mo",output:"{",tex:"lbrace",ttype:4},{input:"}",tag:"mo",output:"}",tex:"rbrace",ttype:5},{input:"|",tag:"mo",output:"|",tex:null,ttype:9,val:!0},{input:"|:",tag:"mo",output:"|",tex:"|",ttype:4,notexcopy:!0,val:!0},{input:":|",tag:"mo",output:"|",tex:"|",ttype:5,notexcopy:!0,val:!0},{input:":|:",tag:"mo",output:"|",tex:"|",ttype:0,notexcopy:!0,val:!0},{input:"(:",tag:"mo",output:"〈",tex:"langle",ttype:4},{input:":)",tag:"mo",output:"〉",tex:"rangle",ttype:5},{input:"<<",tag:"mo",output:"〈",tex:"langle",ttype:4},{input:">>",tag:"mo",output:"〉",tex:"rangle",ttype:5},{input:"{:",tag:"mo",output:"{:",tex:null,ttype:4,invisible:!0},{input:":}",tag:"mo",output:":}",tex:null,ttype:5,invisible:!0},{input:"int",tag:"mo",output:"∫",tex:null,ttype:0},{input:"dx",tag:"mi",output:"{:d x:}",tex:null,ttype:8},{input:"dy",tag:"mi",output:"{:d y:}",tex:null,ttype:8},{input:"dz",tag:"mi",output:"{:d z:}",tex:null,ttype:8},{input:"dt",tag:"mi",output:"{:d t:}",tex:null,ttype:8},{input:"oint",tag:"mo",output:"∮",tex:null,ttype:0},{input:"del",tag:"mo",output:"∂",tex:"partial",ttype:0},{input:"grad",tag:"mo",output:"∇",tex:"nabla",ttype:0},{input:"+-",tag:"mo",output:"±",tex:"pm",ttype:0},{input:"O/",tag:"mo",output:"∅",tex:"emptyset",ttype:0},{input:"oo",tag:"mo",output:"∞",tex:"infty",ttype:0},{input:"aleph",tag:"mo",output:"ℵ",tex:null,ttype:0},{input:"...",tag:"mo",output:"...",tex:"ldots",ttype:0},{input:":.",tag:"mo",output:"∴",tex:"therefore",ttype:0},{input:":'",tag:"mo",output:"∵",tex:"because",ttype:0},{input:"/_",tag:"mo",output:"∠",tex:"angle",ttype:0},{input:"/_\\",tag:"mo",output:"△",tex:"triangle",ttype:0},{input:"\\ ",tag:"mo",output:" ",tex:null,ttype:0,val:!0},{input:"frown",tag:"mo",output:"⌢",tex:null,ttype:0},{input:"%",tag:"mo",output:"%",tex:"%",ttype:0,notexcopy:!0},{input:"quad",tag:"mo",output:"  ",tex:null,ttype:0},{input:"qquad",tag:"mo",output:"    ",tex:null,ttype:0},{input:"cdots",tag:"mo",output:"⋯",tex:null,ttype:0},{input:"vdots",tag:"mo",output:"⋮",tex:null,ttype:0},{input:"ddots",tag:"mo",output:"⋱",tex:null,ttype:0},{input:"diamond",tag:"mo",output:"⋄",tex:null,ttype:0},{input:"square",tag:"mo",output:"□",tex:"boxempty",ttype:0},{input:"|__",tag:"mo",output:"⌊",tex:"lfloor",ttype:0},{input:"__|",tag:"mo",output:"⌋",tex:"rfloor",ttype:0},{input:"|~",tag:"mo",output:"⌈",tex:"lceil",ttype:0},{input:"lceiling",tag:"mo",output:"|~",tex:null,ttype:8},{input:"~|",tag:"mo",output:"⌉",tex:"rceil",ttype:0},{input:"rceiling",tag:"mo",output:"~|",tex:null,ttype:8},{input:"CC",tag:"mo",output:"ℂ",tex:"mathbb{C}",ttype:0,notexcopy:!0},{input:"NN",tag:"mo",output:"ℕ",tex:"mathbb{N}",ttype:0,notexcopy:!0},{input:"QQ",tag:"mo",output:"ℚ",tex:"mathbb{Q}",ttype:0,notexcopy:!0},{input:"RR",tag:"mo",output:"ℝ",tex:"mathbb{R}",ttype:0,notexcopy:!0},{input:"ZZ",tag:"mo",output:"ℤ",tex:"mathbb{Z}",ttype:0,notexcopy:!0},{input:"f",tag:"mi",output:"f",tex:null,ttype:1,func:!0,val:!0},{input:"g",tag:"mi",output:"g",tex:null,ttype:1,func:!0,val:!0},{input:"''",tag:"mo",output:"''",tex:null,val:!0},{input:"'''",tag:"mo",output:"'''",tex:null,val:!0},{input:"''''",tag:"mo",output:"''''",tex:null,val:!0},{input:"lim",tag:"mo",output:"lim",tex:null,ttype:7},{input:"Lim",tag:"mo",output:"Lim",tex:null,ttype:7},{input:"sin",tag:"mo",output:"sin",tex:null,ttype:1,func:!0},{input:"cos",tag:"mo",output:"cos",tex:null,ttype:1,func:!0},{input:"tan",tag:"mo",output:"tan",tex:null,ttype:1,func:!0},{input:"arcsin",tag:"mo",output:"arcsin",tex:null,ttype:1,func:!0},{input:"arccos",tag:"mo",output:"arccos",tex:null,ttype:1,func:!0},{input:"arctan",tag:"mo",output:"arctan",tex:null,ttype:1,func:!0},{input:"sinh",tag:"mo",output:"sinh",tex:null,ttype:1,func:!0},{input:"cosh",tag:"mo",output:"cosh",tex:null,ttype:1,func:!0},{input:"tanh",tag:"mo",output:"tanh",tex:null,ttype:1,func:!0},{input:"cot",tag:"mo",output:"cot",tex:null,ttype:1,func:!0},{input:"coth",tag:"mo",output:"coth",tex:null,ttype:1,func:!0},{input:"sech",tag:"mo",output:"sech",tex:null,ttype:1,func:!0},{input:"csch",tag:"mo",output:"csch",tex:null,ttype:1,func:!0},{input:"sec",tag:"mo",output:"sec",tex:null,ttype:1,func:!0},{input:"csc",tag:"mo",output:"csc",tex:null,ttype:1,func:!0},{input:"log",tag:"mo",output:"log",tex:null,ttype:1,func:!0},{input:"ln",tag:"mo",output:"ln",tex:null,ttype:1,func:!0},{input:"abs",tag:"mo",output:"abs",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["|","|"]},{input:"norm",tag:"mo",output:"norm",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\|","\\|"]},{input:"floor",tag:"mo",output:"floor",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\lfloor","\\rfloor"]},{input:"ceil",tag:"mo",output:"ceil",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["\\lceil","\\rceil"]},{input:"Sin",tag:"mo",output:"Sin",tex:null,ttype:1,func:!0},{input:"Cos",tag:"mo",output:"Cos",tex:null,ttype:1,func:!0},{input:"Tan",tag:"mo",output:"Tan",tex:null,ttype:1,func:!0},{input:"Arcsin",tag:"mo",output:"Arcsin",tex:null,ttype:1,func:!0},{input:"Arccos",tag:"mo",output:"Arccos",tex:null,ttype:1,func:!0},{input:"Arctan",tag:"mo",output:"Arctan",tex:null,ttype:1,func:!0},{input:"Sinh",tag:"mo",output:"Sinh",tex:null,ttype:1,func:!0},{input:"Cosh",tag:"mo",output:"Cosh",tex:null,ttype:1,func:!0},{input:"Tanh",tag:"mo",output:"Tanh",tex:null,ttype:1,func:!0},{input:"Cot",tag:"mo",output:"Cot",tex:null,ttype:1,func:!0},{input:"Sec",tag:"mo",output:"Sec",tex:null,ttype:1,func:!0},{input:"Csc",tag:"mo",output:"Csc",tex:null,ttype:1,func:!0},{input:"Log",tag:"mo",output:"Log",tex:null,ttype:1,func:!0},{input:"Ln",tag:"mo",output:"Ln",tex:null,ttype:1,func:!0},{input:"Abs",tag:"mo",output:"abs",tex:null,ttype:1,notexcopy:!0,rewriteleftright:["|","|"]},{input:"det",tag:"mo",output:"det",tex:null,ttype:1,func:!0},{input:"exp",tag:"mo",output:"exp",tex:null,ttype:1,func:!0},{input:"dim",tag:"mo",output:"dim",tex:null,ttype:0},{input:"mod",tag:"mo",output:"mod",tex:"text{mod}",ttype:0,notexcopy:!0},{input:"gcd",tag:"mo",output:"gcd",tex:null,ttype:1,func:!0},{input:"lcm",tag:"mo",output:"lcm",tex:"text{lcm}",ttype:1,func:!0,notexcopy:!0},{input:"lub",tag:"mo",output:"lub",tex:null,ttype:0},{input:"glb",tag:"mo",output:"glb",tex:null,ttype:0},{input:"min",tag:"mo",output:"min",tex:null,ttype:7},{input:"max",tag:"mo",output:"max",tex:null,ttype:7},{input:"uarr",tag:"mo",output:"↑",tex:"uparrow",ttype:0},{input:"darr",tag:"mo",output:"↓",tex:"downarrow",ttype:0},{input:"rarr",tag:"mo",output:"→",tex:"rightarrow",ttype:0},{input:"->",tag:"mo",output:"→",tex:"to",ttype:0},{input:">->",tag:"mo",output:"↣",tex:"rightarrowtail",ttype:0},{input:"->>",tag:"mo",output:"↠",tex:"twoheadrightarrow",ttype:0},{input:">->>",tag:"mo",output:"⤖",tex:"twoheadrightarrowtail",ttype:0},{input:"|->",tag:"mo",output:"↦",tex:"mapsto",ttype:0},{input:"larr",tag:"mo",output:"←",tex:"leftarrow",ttype:0},{input:"harr",tag:"mo",output:"↔",tex:"leftrightarrow",ttype:0},{input:"rArr",tag:"mo",output:"⇒",tex:"Rightarrow",ttype:0},{input:"lArr",tag:"mo",output:"⇐",tex:"Leftarrow",ttype:0},{input:"hArr",tag:"mo",output:"⇔",tex:"Leftrightarrow",ttype:0},{input:"sqrt",tag:"msqrt",output:"sqrt",tex:null,ttype:1},{input:"root",tag:"mroot",output:"root",tex:null,ttype:2},{input:"frac",tag:"mfrac",output:"/",tex:null,ttype:2},{input:"/",tag:"mfrac",output:"/",tex:null,ttype:3},{input:"stackrel",tag:"mover",output:"stackrel",tex:null,ttype:2},{input:"_",tag:"msub",output:"_",tex:null,ttype:3},{input:"^",tag:"msup",output:"^",tex:null,ttype:3},{input:"cancel",tag:"menclose",output:"cancel",tex:null,ttype:1},{input:"Sqrt",tag:"msqrt",output:"sqrt",tex:null,ttype:1},{input:"hat",tag:"mover",output:"^",tex:null,ttype:1,acc:!0},{input:"bar",tag:"mover",output:"¯",tex:"overline",ttype:1,acc:!0},{input:"vec",tag:"mover",output:"→",tex:null,ttype:1,acc:!0},{input:"tilde",tag:"mover",output:"~",tex:null,ttype:1,acc:!0},{input:"dot",tag:"mover",output:".",tex:null,ttype:1,acc:!0},{input:"ddot",tag:"mover",output:"..",tex:null,ttype:1,acc:!0},{input:"overarc",tag:"mover",output:"⏜",tex:"stackrel{\\frown}",notexcopy:!0,ttype:1,acc:!0},{input:"overparen",tag:"mover",output:"⏜",tex:"stackrel{\\frown}",notexcopy:!0,ttype:1,acc:!0},{input:"ul",tag:"munder",output:"̲",tex:"underline",ttype:1,acc:!0},{input:"ubrace",tag:"munder",output:"⏟",tex:"underbrace",ttype:1,acc:!0},{input:"obrace",tag:"mover",output:"⏞",tex:"overbrace",ttype:1,acc:!0},{input:"text",tag:"mtext",output:"text",tex:null,ttype:10},{input:"mbox",tag:"mtext",output:"mbox",tex:null,ttype:10},z,{input:"color",tag:"mstyle",ttype:2},{input:"bb",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"bb",tex:"mathbf",ttype:1,notexcopy:!0},{input:"mathbf",tag:"mstyle",atname:"mathvariant",atval:"bold",output:"mathbf",tex:null,ttype:1},{input:"sf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"sf",tex:"mathsf",ttype:1,notexcopy:!0},{input:"mathsf",tag:"mstyle",atname:"mathvariant",atval:"sans-serif",output:"mathsf",tex:null,ttype:1},{input:"bbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"bbb",tex:"mathbb",ttype:1,notexcopy:!0},{input:"mathbb",tag:"mstyle",atname:"mathvariant",atval:"double-struck",output:"mathbb",tex:null,ttype:1},{input:"cc",tag:"mstyle",atname:"mathvariant",atval:"script",output:"cc",tex:"mathcal",ttype:1,notexcopy:!0},{input:"mathcal",tag:"mstyle",atname:"mathvariant",atval:"script",output:"mathcal",tex:null,ttype:1},{input:"tt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"tt",tex:"mathtt",ttype:1,notexcopy:!0},{input:"mathtt",tag:"mstyle",atname:"mathvariant",atval:"monospace",output:"mathtt",tex:null,ttype:1},{input:"fr",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"fr",tex:"mathfrak",ttype:1,notexcopy:!0},{input:"mathfrak",tag:"mstyle",atname:"mathvariant",atval:"fraktur",output:"mathfrak",tex:null,ttype:1}];function U(e,t){return e.input>t.input?1:-1}var $,H,W,q=[];function Z(e,t){var n;n="\\"==e.charAt(t)&&"\\"!=e.charAt(t+1)&&" "!=e.charAt(t+1)?e.slice(t+1):e.slice(t);for(var r=0;n.length>r&&32>=n.charCodeAt(r);r+=1);return n.slice(r)}function V(e,t,n){if(0==n){var r,i;for(n=-1,r=e.length;r>n+1;)t>e[i=n+r>>1]?n=i:r=i;return r}for(var o=n;e.length>o&&t>e[o];o++);return o}function G(e){for(var t,n,r,i=0,o="",a=!0,s=1;e.length>=s&&a;s++)n=e.slice(0,s),i=V(q,n,i),q.length>i&&e.slice(0,q[i].length)==q[i]&&(t=i,s=(o=q[i]).length),a=q.length>i&&e.slice(0,q[i].length)>=q[i];if(H=W,""!=o)return W=B[t].ttype,B[t];W=0,i=1,n=e.slice(0,1);for(var l=!0;n>="0"&&"9">=n&&e.length>=i;)n=e.slice(i,i+1),i++;if(n==I&&(n=e.slice(i,i+1))>="0"&&"9">=n)for(l=!1,i++;n>="0"&&"9">=n&&e.length>=i;)n=e.slice(i,i+1),i++;return l&&i>1||i>2?(n=e.slice(0,i-1),r="mn"):(i=2,r=("A">(n=e.slice(0,1))||n>"Z")&&("a">n||n>"z")?"mo":"mi"),"-"==n&&3==H?(W=3,{input:n,tag:r,output:n,ttype:1,func:!0,val:!0}):{input:n,tag:r,output:n,ttype:0,val:!0}}function Y(e){var t;if("{"==e.charAt(0)&&"}"==e.charAt(e.length-1)){var n=0;"\\left"==(t=e.substr(1,5))?"("==(t=e.charAt(6))||"["==t||"{"==t?n=7:"\\lbrace"==(t=e.substr(6,7))&&(n=13):"("!=(t=e.charAt(1))&&"["!=t||(n=2),n>0&&("\\right)}"==(t=e.substr(e.length-8))||"\\right]}"==t||"\\right.}"==t?e=(e="{"+e.substr(n)).substr(0,e.length-8)+"}":"\\rbrace}"==t&&(e=(e="{"+e.substr(n)).substr(0,e.length-14)+"}"))}return e}function K(e){var t;return t="boolean"==typeof e.val&&e.val?"":"\\",null==e.tex?t+e.input:t+e.tex}function X(e){var t,n,r,i,o="";if(null==(t=G(e=Z(e,0)))||5==t.ttype&&$>0)return[null,e];switch(8==t.ttype&&(t=G(e=t.output+Z(e,t.input.length))),t.ttype){case 7:case 0:e=Z(e,t.input.length);var a=K(t);return"\\"==a.charAt(0)||"mo"==t.tag?[a,e]:["{"+a+"}",e];case 4:$++,r=Q(e=Z(e,t.input.length),!0),$--;var s=0;return"\\right"==r[0].substr(0,6)&&(")"==(u=r[0].charAt(6))||"]"==u||"}"==u?s=6:"."==u?s=7:"\\rbrace"==(u=r[0].substr(6,7))&&(s=13)),s>0?(r[0]=r[0].substr(s),n="boolean"==typeof t.invisible&&t.invisible?"{"+r[0]+"}":"{"+K(t)+r[0]+"}"):n="boolean"==typeof t.invisible&&t.invisible?"{\\left."+r[0]+"}":"{\\left"+K(t)+r[0]+"}",[n,r[1]];case 10:return t!=z&&(e=Z(e,t.input.length)),-1==(i="{"==e.charAt(0)?e.indexOf("}"):"("==e.charAt(0)?e.indexOf(")"):"["==e.charAt(0)?e.indexOf("]"):t==z?e.slice(1).indexOf('"')+1:0)&&(i=e.length)," "==(u=e.slice(1,i)).charAt(0)&&(o="\\ "),o+="\\text{"+u+"}"," "==u.charAt(u.length-1)&&(o+="\\ "),[o,e=Z(e,i+1)];case 1:return null==(r=X(e=Z(e,t.input.length)))[0]?["{"+K(t)+"}",e]:"boolean"==typeof t.func&&t.func?"^"==(u=e.charAt(0))||"_"==u||"/"==u||"|"==u||","==u||1==t.input.length&&t.input.match(/\w/)&&"("!=u?["{"+K(t)+"}",e]:[n="{"+K(t)+"{"+r[0]+"}}",r[1]]:(r[0]=Y(r[0]),"sqrt"==t.input?["\\sqrt{"+r[0]+"}",r[1]]:"cancel"==t.input?["\\cancel{"+r[0]+"}",r[1]]:void 0!==t.rewriteleftright?["{\\left"+t.rewriteleftright[0]+r[0]+"\\right"+t.rewriteleftright[1]+"}",r[1]]:"boolean"==typeof t.acc&&t.acc?[K(t)+"{"+r[0]+"}",r[1]]:["{"+K(t)+"{"+r[0]+"}}",r[1]]);case 2:if(null==(r=X(e=Z(e,t.input.length)))[0])return["{"+K(t)+"}",e];r[0]=Y(r[0]);var l=X(r[1]);return null==l[0]?["{"+K(t)+"}",e]:(l[0]=Y(l[0]),[o="color"==t.input?"{\\color{"+r[0].replace(/[\{\}]/g,"")+"}"+l[0]+"}":"root"==t.input?"{\\sqrt["+r[0]+"]{"+l[0]+"}}":"{"+K(t)+"{"+r[0]+"}{"+l[0]+"}}",l[1]]);case 3:return e=Z(e,t.input.length),[t.output,e];case 6:return e=Z(e,t.input.length),["{\\quad\\text{"+t.input+"}\\quad}",e];case 9:$++,r=Q(e=Z(e,t.input.length),!1),$--;var u="";return"|"==(u=r[0].charAt(r[0].length-1))&&","!==e.charAt(0)?[n="{\\left|"+r[0]+"}",r[1]]:[n="{\\mid}",e];default:return e=Z(e,t.input.length),["{"+K(t)+"}",e]}}function J(e){var t,n,r,i,o;if(n=G(e=Z(e,0)),i=(o=X(e))[0],3==(t=G(e=o[1])).ttype&&"/"!=t.input){if((o=X(e=Z(e,t.input.length)))[0]=null==o[0]?"{}":Y(o[0]),e=o[1],"_"==t.input)if("^"==(r=G(e)).input){var a=X(e=Z(e,r.input.length));a[0]=Y(a[0]),e=a[1],i="{"+i,i+="_{"+o[0]+"}",i+="^{"+a[0]+"}",i+="}"}else i+="_{"+o[0]+"}";else i=i+"^{"+o[0]+"}";void 0!==n.func&&n.func&&(3==(r=G(e)).ttype||5==r.ttype||1>=n.input.length&&4!=r.ttype||(i="{"+i+(o=J(e))[0]+"}",e=o[1]))}return[i,e]}function Q(e,t){var n,r,i,o,a="",s=!1;do{r=(i=J(e=Z(e,0)))[0],3==(n=G(e=i[1])).ttype&&"/"==n.input?((i=J(e=Z(e,n.input.length)))[0]=null==i[0]?"{}":Y(i[0]),e=i[1],r="\\frac{"+(r=Y(r))+"}",a+=r+="{"+i[0]+"}",n=G(e)):null!=r&&(a+=r)}while((5!=n.ttype&&(9!=n.ttype||t)||0==$)&&null!=n&&""!=n.output);if(5==n.ttype||9==n.ttype){var l=a.length;if(l>2&&"{"==a.charAt(0)&&a.indexOf(",")>0){var u=a.charAt(l-2);if(")"==u||"]"==u){var c=a.charAt(6);if("("==c&&")"==u&&"}"!=n.output||"["==c&&"]"==u){var f="",h=[];h.push(0);var d=!0,p=0,g=[];g[0]=[0];var m=0,v=0,y="";for(o=1;l-1>o;o++)a.charAt(o)==c&&p++,a.charAt(o)==u&&0==--p&&","==a.charAt(o+2)&&"{"==a.charAt(o+3)&&(h.push(o+2),g[m=o+2]=[o+2]),"["!=a.charAt(o)&&"("!=a.charAt(o)&&"{"!=a.charAt(o)||v++,"]"!=a.charAt(o)&&")"!=a.charAt(o)&&"}"!=a.charAt(o)||v--,","==a.charAt(o)&&1==v&&g[m].push(o),0>v&&(m==o+1?o++:d=!1);h.push(l);var b=-1;if(0==p&&h.length>0&&d)for(o=0;h.length-1>o;o++){if(o>0&&(f+="\\\\"),0==o)if(1==g[h[o]].length)var w=[a.substr(h[o]+7,h[o+1]-h[o]-15)];else{w=[a.substring(h[o]+7,g[h[o]][1])];for(var _=2;g[h[o]].length>_;_++)w.push(a.substring(g[h[o]][_-1]+1,g[h[o]][_]));w.push(a.substring(g[h[o]][g[h[o]].length-1]+1,h[o+1]-8))}else if(1==g[h[o]].length)w=[a.substr(h[o]+8,h[o+1]-h[o]-16)];else{for(w=[a.substring(h[o]+8,g[h[o]][1])],_=2;g[h[o]].length>_;_++)w.push(a.substring(g[h[o]][_-1]+1,g[h[o]][_]));w.push(a.substring(g[h[o]][g[h[o]].length-1]+1,h[o+1]-8))}for(_=w.length-1;_>=0;_--)"{\\mid}"==w[_]?(0==o&&(y="|"+y),w.splice(_,1)):0==o&&(y="c"+y);b>0&&w.length!=b?d=!1:-1==b&&(b=w.length),f+=w.join("&")}f="\\begin{array}{"+y+"} "+f+"\\end{array}",d&&(a=f)}}}e=Z(e,n.input.length),"boolean"==typeof n.invisible&&n.invisible?(a+="\\right.",s=!0):(a+=r="\\right"+K(n),s=!0)}return $>0&&!s&&(a+="\\right."),[a,e]}function ee(e){return $=0,null==(e=(e=(e=e.replace(/( |\u00a0| )/g,"")).replace(/>/g,">")).replace(/</g,"<")).match(/\S/)?"":Q(e.replace(/^\s+/g,""),!1)[0]}if(function(){var e,t=B.length;for(e=0;t>e;e++)!B[e].tex||"boolean"==typeof B[e].notexcopy&&B[e].notexcopy||B.push({input:B[e].tex,tag:B[e].tag,output:B[e].output,ttype:B[e].ttype,acc:B[e].acc||!1});!function(){var e;for(B.sort(U),e=0;B.length>e;e++)q[e]=B[e].input}()}(),"undefined"==typeof window)throw Error("The showdown katex extension can only be used in browser environment!");if(void 0===te)var te=window.katex||void 0;if("undefined"==typeof renderMathInElement)var ne=window.renderMathInElement||void 0;var re=0;function ie(){return!(void 0===ne||!ne||void 0===te||!te)}var oe=!1;function ae(e){var t=ie();return"undefined"==typeof window||t||oe?("function"==typeof e&&e&&e(ne),t):(oe=!0,k.loadStyleSheet("katexCSS"),k.loadScript("katex").then((function(e){return te=k.interopDefault(window[e]),k.loadScript("renderMathInElement")})).then((function(t){ne=k.interopDefault(window[t]),"function"==typeof e&&e&&e(ne)})),t)}function se(e,t,n){return new Promise((function(r){var i,o=e.textContent.trim(),a=o.split(/\n[ \f\r\t\v]*\n/);a.length>1?(i=[],a.forEach((function(e){""!==(e=e.trim())&&(e=n?ee(e):e),i.push(e)}))):i=n?ee(o):o;var s=e.dataset.lang,l=s?JSON.parse(s):null,u="";if(l){if("boolean"==typeof l.codeblock&&l.codeblock||"string"==typeof l.codeblock&&"true"===l.codeblock.toLowerCase())return r(!1);l.align&&("center"===l.align?u="diagram-center":"right"===l.align&&(u="diagram-right"))}var c=k.getSrc("katexCSS"),f=(e.classList.length>0?e.classList[0]:"")+(e.className&&u?" ":"")+u,h="katex-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=h,function e(t,n){if(ie()){var r=n.className,i=n.input,o=n.data,a=n.cssLink,s=n.options,l=n.element.ownerDocument,u="";if(o instanceof Array)o.forEach((function(e){if(""===e)u+="
";else{var t=te.renderToString(e,s);u+=a?'
').concat(t,"
"):'
').concat(t,"
")}}));else{var c=te.renderToString(o,s);u=a?'
').concat(c,"
"):'
').concat(c,"
")}n.element.parentNode.outerHTML=u,--re||ne(l.body,s),t(!0)}else setTimeout((function(){e(t,n)}),50)}(r,{element:e,id:h,className:f,input:o,data:i,cssLink:c,options:t})}))}function le(e){return e.replace(/[-[\]/{}()*+?.\\$^|]/g,"\\$&")}function ue(e){var t=0,n=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=i({displayMode:!0,throwOnError:!1,errorColor:"#ff0000",delimiters:[{left:"\\[",right:"\\]",display:!0},{left:"\\(",right:"\\)",display:!1}]},e);function n(e){return!(!Array.isArray(e)||!e.length)}function r(e,t){return!("object"!==a(e)||!e.hasOwnProperty(t))}function o(e,t,i){return!!(r(e,t)&&r(e[t],i)&&n(e[t][i]))&&(e[t][i].forEach((function(e){e.display="inline"!==i,"asciimath"===t&&(e.asciimath=!0)})),e[t][i])}return Array.isArray(t.mathDelimiters)?t.mathDelimiters.length||(t.mathDelimiters=[{left:"$$",right:"$$",display:!0},{left:"\\[",right:"\\]",display:!0},{left:"$",right:"$)",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"@@",right:"@@",display:!0,asciimath:!0},{left:"@ ",right:" @",display:!1,asciimath:!0},{left:"~ ",right:" ~",display:!1,asciimath:!0}]):t.mathDelimiters=[].concat(o(t.mathDelimiters,"texmath","display")||[{left:"$$",right:"$$",display:!0},{left:"\\[",right:"\\]",display:!0}]).concat(o(t.mathDelimiters,"texmath","inline")||[{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1}]).concat(o(t.mathDelimiters,"asciimath","display")||[{left:"@@",right:"@@",display:!0,asciimath:!0}]).concat(o(t.mathDelimiters,"asciimath","inline")||[{left:"@ ",right:" @",display:!1,asciimath:!0},{left:"~ ",right:" ~",display:!1,asciimath:!0}]),t}(e),r=n.mathDelimiters.map((function(e){var n=e.right,r=e.display,i=e.asciimath;return{test:RegExp("".concat(le(e.left),"(.+?)").concat(le(n)),"g"),replacer:function(e,n){return++t,i&&(n=ee(n)),r?"\\[".concat(n,"\\]"):"\\(".concat(n,"\\)")}}}));return[{type:"output",config:n,filter:function(e){var i=e.wrapper;if(!i)return!1;r.length&&i.querySelectorAll(":not(code):not(pre)").forEach((function(e){o(e.childNodes).filter((function(e){return"#text"===e.nodeName&&e.nodeValue.trim()})).forEach((function(e){var t=r.reduce((function(e,t){return e.replace(t.test,t.replacer)}),e.nodeValue);e.nodeValue=t}))}));var a=i.querySelectorAll("code.latex.language-latex"),s=i.querySelectorAll("code.asciimath.language-asciimath");if(!a.length&&!s.length){if(t>0){this.config.cssLink=k.getSrc("katexCSS");var l=this;return new Promise((function(e){ae((function(t){!function e(t,n){ie()?(n(i.ownerDocument.body,l.config),t(!0)):setTimeout((function(){e(t,n)}),50)}(e,t)}))})).then((function(){return e}))}return!1}return n.cssLink=k.getSrc("katexCSS"),function(e,t,n){return re=e.length+t.length,ae(),new Promise((function(r){var i=[];e.forEach((function(e){i.push(se(e,n,!1))})),t.forEach((function(e){i.push(se(e,n,!0))})),Promise.all(i).then((function(){r(!0)}))}))}(a,s,this.config).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown mermaid extension can only be used in browser environment!");if(void 0===ce)var ce=window.mermaid||void 0;function fe(){return!(void 0===ce||!ce)}var he=!1;function de(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s="mermaid-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=s,function e(t,n){if(fe()){var r=n.className;ce.render(n.id,n.data,(function(e){n.element.parentNode.outerHTML='
').concat(e,"
"),t(!0)}))}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:s,className:a,data:o,resolve:t})}))}function pe(e,t){return function(e){var t=fe();"undefined"==typeof window||t||he?ce.initialize(e):(he=!0,k.loadScript("mermaid").then((function(t){(ce=k.interopDefault(window[t])).initialize(e)})))}(t),new Promise((function(t){var n=[];e.forEach((function(e){n.push(de(e))})),Promise.all(n).then((function(){t(!0)}))}))}function ge(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({theme:"forest",logLevel:3,startOnLoad:!1,arrowMarkerAbsolute:!1,flowchart:{curve:"basis"},gantt:{axisFormat:"%m/%d/%Y"},sequence:{actorMargin:50}},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.mermaid.language-mermaid");return!!n.length&&pe(n,this.config).then((function(){return e}))}}]}var me="undefined"!=typeof t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},ve=[],ye=[],be="undefined"!=typeof Uint8Array?Uint8Array:Array,we=!1;function _e(){we=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;64>t;++t)ve[t]=e[t],ye[e.charCodeAt(t)]=t;ye[45]=62,ye[95]=63}function xe(e,t,n){for(var r,i=[],o=t;n>o;o+=3)i.push(ve[(r=(e[o]<<16)+(e[o+1]<<8)+e[o+2])>>18&63]+ve[r>>12&63]+ve[r>>6&63]+ve[63&r]);return i.join("")}function ke(e){var t;we||_e();for(var n=e.length,r=n%3,i="",o=[],a=0,s=n-r;s>a;a+=16383)o.push(xe(e,a,a+16383>s?s:a+16383));return 1===r?(i+=ve[(t=e[n-1])>>2],i+=ve[t<<4&63],i+="=="):2===r&&(i+=ve[(t=(e[n-2]<<8)+e[n-1])>>10],i+=ve[t>>4&63],i+=ve[t<<2&63],i+="="),o.push(i),o.join("")}function Se(e,t,n,r,i){var o,a,s=8*i-r-1,l=(1<>1,c=-7,f=n?i-1:0,h=n?-1:1,d=e[t+f];for(f+=h,o=d&(1<<-c)-1,d>>=-c,c+=s;c>0;o=256*o+e[t+f],f+=h,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=r;c>0;a=256*a+e[t+f],f+=h,c-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=u}return(d?-1:1)*a*Math.pow(2,o-r)}function Ce(e,t,n,r,i,o){var a,s,l,u=8*o-i-1,c=(1<>1,h=23===i?5.960464477539062e-8:0,d=r?0:o-1,p=r?1:-1,g=0>t||0===t&&0>1/t?1:0;for(isNaN(t=Math.abs(t))||t===1/0?(s=isNaN(t)?1:0,a=c):(1>t*(l=Math.pow(2,-(a=Math.floor(Math.log(t)/Math.LN2))))&&(a--,l*=2),2>(t+=1>a+f?h*Math.pow(2,1-f):h/l)*l||(a++,l/=2),c>a+f?1>a+f?(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0):(s=(t*l-1)*Math.pow(2,i),a+=f):(s=0,a=c));i>=8;e[n+d]=255&s,d+=p,s/=256,i-=8);for(a=a<0;e[n+d]=255&a,d+=p,a/=256,u-=8);e[n+d-p]|=128*g}var Ee={}.toString,Ae=Array.isArray||function(e){return"[object Array]"==Ee.call(e)};function Oe(){return Te.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Le(e,t){if(Oe()n||n>t.byteLength)throw new RangeError("'offset' is out of bounds");if(n+(r||0)>t.byteLength)throw new RangeError("'length' is out of bounds");return t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r),Te.TYPED_ARRAY_SUPPORT?(e=t).__proto__=Te.prototype:e=Re(e,t),e}(e,t,n,r):"string"==typeof t?function(e,t,n){if("string"==typeof n&&""!==n||(n="utf8"),!Te.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|Fe(t,n),i=(e=Le(e,r)).write(t,n);return i!==r&&(e=e.slice(0,i)),e}(e,t,n):function(e,t){if(De(t)){var n=0|Ne(t.length);return 0===(e=Le(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(r=t.length)!=r?Le(e,0):Re(e,t);if("Buffer"===t.type&&Ae(t.data))return Re(e,t.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function Pe(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(0>e)throw new RangeError('"size" argument must not be negative')}function je(e,t){if(Pe(t),e=Le(e,0>t?0:0|Ne(t)),!Te.TYPED_ARRAY_SUPPORT)for(var n=0;t>n;++n)e[n]=0;return e}function Re(e,t){var n=0>t.length?0:0|Ne(t.length);e=Le(e,n);for(var r=0;n>r;r+=1)e[r]=255&t[r];return e}function Ne(e){if(e>=Oe())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Oe().toString(16)+" bytes");return 0|e}function De(e){return!(null==e||!e._isBuffer)}function Fe(e,t){if(De(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return ut(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return ct(e).length;default:if(r)return ut(e).length;t=(""+t).toLowerCase(),r=!0}}function Ie(e,t,n){var r=!1;if((void 0===t||0>t)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),0>=n)return"";if((t>>>=0)>=(n>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return Je(this,t,n);case"utf8":case"utf-8":return Ye(this,t,n);case"ascii":return Ke(this,t,n);case"latin1":case"binary":return Xe(this,t,n);case"base64":return Ge(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Qe(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function ze(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function Be(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:-2147483648>n&&(n=-2147483648),isNaN(n=+n)&&(n=i?0:e.length-1),0>n&&(n=e.length+n),e.length>n){if(0>n){if(!i)return-1;n=0}}else{if(i)return-1;n=e.length-1}if("string"==typeof t&&(t=Te.from(t,r)),De(t))return 0===t.length?-1:Ue(e,t,n,r,i);if("number"==typeof t)return t&=255,Te.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):Ue(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function Ue(e,t,n,r,i){var o,a=1,s=e.length,l=t.length;if(void 0!==r&&("ucs2"===(r=(r+"").toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(2>e.length||2>t.length)return-1;a=2,s/=2,l/=2,n/=2}function u(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var c=-1;for(o=n;s>o;o++)if(u(e,o)===u(t,-1===c?0:o-c)){if(-1===c&&(c=o),o-c+1===l)return c*a}else-1!==c&&(o-=o-c),c=-1}else for(n+l>s&&(n=s-l),o=n;o>=0;o--){for(var f=!0,h=0;l>h;h++)if(u(e,o+h)!==u(t,h)){f=!1;break}if(f)return o}return-1}function $e(e,t,n,r){var i=e.length-(n=Number(n)||0);r?(r=Number(r))>i&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;r>a;++a){var s=parseInt(t.substr(2*a,2),16);if(isNaN(s))return a;e[n+a]=s}return a}function He(e,t,n,r){return ft(ut(t,e.length-n),e,n,r)}function We(e,t,n,r){return ft(function(e){for(var t=[],n=0;e.length>n;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function qe(e,t,n,r){return We(e,t,n,r)}function Ze(e,t,n,r){return ft(ct(t),e,n,r)}function Ve(e,t,n,r){return ft(function(e,t){for(var n,r,i=[],o=0;e.length>o&&0<=(t-=2);++o)n=e.charCodeAt(o),r=n>>8,i.push(n%256),i.push(r);return i}(t,e.length-n),e,n,r)}function Ge(e,t,n){return ke(0===t&&n===e.length?e:e.slice(t,n))}function Ye(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;n>i;){var o,a,s,l,u=e[i],c=null,f=u>239?4:u>223?3:u>191?2:1;if(n>=i+f)switch(f){case 1:128>u&&(c=u);break;case 2:128==(192&(o=e[i+1]))&&(l=(31&u)<<6|63&o)>127&&(c=l);break;case 3:a=e[i+2],128==(192&(o=e[i+1]))&&128==(192&a)&&(l=(15&u)<<12|(63&o)<<6|63&a)>2047&&(55296>l||l>57343)&&(c=l);break;case 4:a=e[i+2],s=e[i+3],128==(192&(o=e[i+1]))&&128==(192&a)&&128==(192&s)&&(l=(15&u)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&1114112>l&&(c=l)}null===c?(c=65533,f=1):c>65535&&(r.push((c-=65536)>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=f}return function(e){var t=e.length;if(4096>=t)return String.fromCharCode.apply(String,e);for(var n="",r=0;t>r;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}function Ke(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;n>i;++i)r+=String.fromCharCode(127&e[i]);return r}function Xe(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;n>i;++i)r+=String.fromCharCode(e[i]);return r}function Je(e,t,n){var r=e.length;t&&t>=0||(t=0),(!n||0>n||n>r)&&(n=r);for(var i="",o=t;n>o;++o)i+=lt(e[o]);return i}function Qe(e,t,n){for(var r=e.slice(t,n),i="",o=0;r.length>o;o+=2)i+=String.fromCharCode(r[o]+256*r[o+1]);return i}function et(e,t,n){if(e%1!=0||0>e)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function tt(e,t,n,r,i,o){if(!De(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||o>t)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function nt(e,t,n,r){0>t&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);o>i;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function rt(e,t,n,r){0>t&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);o>i;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function it(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(0>n)throw new RangeError("Index out of range")}function ot(e,t,n,r,i){return i||it(e,0,n,4),Ce(e,t,n,r,23,4),n+4}function at(e,t,n,r,i){return i||it(e,0,n,8),Ce(e,t,n,r,52,8),n+8}Te.TYPED_ARRAY_SUPPORT=void 0===me.TYPED_ARRAY_SUPPORT||me.TYPED_ARRAY_SUPPORT,Te.poolSize=8192,Te._augment=function(e){return e.__proto__=Te.prototype,e},Te.from=function(e,t,n){return Me(null,e,t,n)},Te.TYPED_ARRAY_SUPPORT&&(Te.prototype.__proto__=Uint8Array.prototype,Te.__proto__=Uint8Array),Te.alloc=function(e,t,n){return function(e,t,n,r){return Pe(t),t>0&&void 0!==n?"string"==typeof r?Le(e,t).fill(n,r):Le(e,t).fill(n):Le(e,t)}(null,e,t,n)},Te.allocUnsafe=function(e){return je(null,e)},Te.allocUnsafeSlow=function(e){return je(null,e)},Te.isBuffer=ht,Te.compare=function(e,t){if(!De(e)||!De(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);o>i;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return r>n?-1:n>r?1:0},Te.isEncoding=function(e){switch((e+"").toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Te.concat=function(e,t){if(!Ae(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return Te.alloc(0);var n;if(void 0===t)for(t=0,n=0;e.length>n;++n)t+=e[n].length;var r=Te.allocUnsafe(t),i=0;for(n=0;e.length>n;++n){var o=e[n];if(!De(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(r,i),i+=o.length}return r},Te.byteLength=Fe,Te.prototype._isBuffer=!0,Te.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;e>t;t+=2)ze(this,t,t+1);return this},Te.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;e>t;t+=4)ze(this,t,t+3),ze(this,t+1,t+2);return this},Te.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;e>t;t+=8)ze(this,t,t+7),ze(this,t+1,t+6),ze(this,t+2,t+5),ze(this,t+3,t+4);return this},Te.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?Ye(this,0,e):Ie.apply(this,arguments)},Te.prototype.equals=function(e){if(!De(e))throw new TypeError("Argument must be a Buffer");return this===e||0===Te.compare(this,e)},Te.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),""},Te.prototype.compare=function(e,t,n,r,i){if(!De(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),0>t||n>e.length||0>r||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(o,a),l=this.slice(r,i),u=e.slice(t,n),c=0;s>c;++c)if(l[c]!==u[c]){o=l[c],a=u[c];break}return a>o?-1:o>a?1:0},Te.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},Te.prototype.indexOf=function(e,t,n){return Be(this,e,t,n,!0)},Te.prototype.lastIndexOf=function(e,t,n){return Be(this,e,t,n,!1)},Te.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(0>n||0>t)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return $e(this,e,t,n);case"utf8":case"utf-8":return He(this,e,t,n);case"ascii":return We(this,e,t,n);case"latin1":case"binary":return qe(this,e,t,n);case"base64":return Ze(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ve(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},Te.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},Te.prototype.slice=function(e,t){var n,r=this.length;if(0>(e=~~e)?0>(e+=r)&&(e=0):e>r&&(e=r),0>(t=void 0===t?r:~~t)?0>(t+=r)&&(t=0):t>r&&(t=r),e>t&&(t=e),Te.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=Te.prototype;else{var i=t-e;n=new Te(i,void 0);for(var o=0;i>o;++o)n[o]=this[o+e]}return n},Te.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=this[e],i=1,o=0;++o0&&(i*=256);)r+=this[e+--t]*i;return r},Te.prototype.readUInt8=function(e,t){return t||et(e,1,this.length),this[e]},Te.prototype.readUInt16LE=function(e,t){return t||et(e,2,this.length),this[e]|this[e+1]<<8},Te.prototype.readUInt16BE=function(e,t){return t||et(e,2,this.length),this[e]<<8|this[e+1]},Te.prototype.readUInt32LE=function(e,t){return t||et(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Te.prototype.readUInt32BE=function(e,t){return t||et(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Te.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=this[e],i=1,o=0;++or||(r-=Math.pow(2,8*t)),r},Te.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||et(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return(i*=128)>o||(o-=Math.pow(2,8*t)),o},Te.prototype.readInt8=function(e,t){return t||et(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Te.prototype.readInt16LE=function(e,t){t||et(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},Te.prototype.readInt16BE=function(e,t){t||et(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},Te.prototype.readInt32LE=function(e,t){return t||et(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Te.prototype.readInt32BE=function(e,t){return t||et(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Te.prototype.readFloatLE=function(e,t){return t||et(e,4,this.length),Se(this,e,!0,23,4)},Te.prototype.readFloatBE=function(e,t){return t||et(e,4,this.length),Se(this,e,!1,23,4)},Te.prototype.readDoubleLE=function(e,t){return t||et(e,8,this.length),Se(this,e,!0,52,8)},Te.prototype.readDoubleBE=function(e,t){return t||et(e,8,this.length),Se(this,e,!1,52,8)},Te.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||tt(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},Te.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,1,255,0),Te.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},Te.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,65535,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):nt(this,e,t,!0),t+2},Te.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,65535,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):nt(this,e,t,!1),t+2},Te.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,4294967295,0),Te.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):rt(this,e,t,!0),t+4},Te.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,4294967295,0),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):rt(this,e,t,!1),t+4},Te.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);tt(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;for(this[t]=255&e;++oe&&0===s&&0!==this[t+o-1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},Te.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);tt(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)0>e&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},Te.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,1,127,-128),Te.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),0>e&&(e=255+e+1),this[t]=255&e,t+1},Te.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,32767,-32768),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):nt(this,e,t,!0),t+2},Te.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,2,32767,-32768),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):nt(this,e,t,!1),t+2},Te.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,2147483647,-2147483648),Te.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):rt(this,e,t,!0),t+4},Te.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||tt(this,e,t,4,2147483647,-2147483648),0>e&&(e=4294967295+e+1),Te.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):rt(this,e,t,!1),t+4},Te.prototype.writeFloatLE=function(e,t,n){return ot(this,e,t,!0,n)},Te.prototype.writeFloatBE=function(e,t,n){return ot(this,e,t,!1,n)},Te.prototype.writeDoubleLE=function(e,t,n){return at(this,e,t,!0,n)},Te.prototype.writeDoubleBE=function(e,t,n){return at(this,e,t,!1,n)},Te.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),e.length>t||(t=e.length),t||(t=0),r>0&&n>r&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(0>t)throw new RangeError("targetStart out of bounds");if(0>n||n>=this.length)throw new RangeError("sourceStart out of bounds");if(0>r)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),r-n>e.length-t&&(r=e.length-t+n);var i,o=r-n;if(this===e&&t>n&&r>t)for(i=o-1;i>=0;--i)e[i+t]=this[i+n];else if(1e3>o||!Te.TYPED_ARRAY_SUPPORT)for(i=0;o>i;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+o),t);return o},Te.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);256>i&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!Te.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(0>t||t>this.length||n>this.length)throw new RangeError("Out of range index");if(t>=n)return this;var o;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;n>o;++o)this[o]=e;else{var a=De(e)?e:ut(""+new Te(e,r)),s=a.length;for(o=0;n-t>o;++o)this[o+t]=a[o%s]}return this};var st=/[^+\/0-9A-Za-z-_]/g;function lt(e){return 16>e?"0"+e.toString(16):e.toString(16)}function ut(e,t){var n;t=t||1/0;for(var r=e.length,i=null,o=[],a=0;r>a;++a){if((n=e.charCodeAt(a))>55295&&57344>n){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(56320>n){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,128>n){if(0>(t-=1))break;o.push(n)}else if(2048>n){if(0>(t-=2))break;o.push(n>>6|192,63&n|128)}else if(65536>n){if(0>(t-=3))break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(n>=1114112)throw Error("Invalid code point");if(0>(t-=4))break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function ct(e){return function(e){var t,n,r,i,o,a;we||_e();var s=e.length;if(s%4>0)throw Error("Invalid string. Length must be a multiple of 4");a=new be(3*s/4-(o="="===e[s-2]?2:"="===e[s-1]?1:0)),r=o>0?s-4:s;var l=0;for(t=0,n=0;r>t;t+=4,n+=3)i=ye[e.charCodeAt(t)]<<18|ye[e.charCodeAt(t+1)]<<12|ye[e.charCodeAt(t+2)]<<6|ye[e.charCodeAt(t+3)],a[l++]=i>>16&255,a[l++]=i>>8&255,a[l++]=255&i;return 2===o?(i=ye[e.charCodeAt(t)]<<2|ye[e.charCodeAt(t+1)]>>4,a[l++]=255&i):1===o&&(i=ye[e.charCodeAt(t)]<<10|ye[e.charCodeAt(t+1)]<<4|ye[e.charCodeAt(t+2)]>>2,a[l++]=i>>8&255,a[l++]=255&i),a}(function(e){if(2>(e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(st,"")).length)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function ft(e,t,n,r){for(var i=0;r>i&&i+n1)for(var n=1;arguments.length>n;n++)t[n-1]=arguments[n];wt.push(new Et(e,t)),1!==wt.length||_t||yt(St)}function Et(e,t){this.fun=e,this.array=t}function At(){}function Ot(){Ot.init.call(this)}function Lt(e){return void 0===e._maxListeners?Ot.defaultMaxListeners:e._maxListeners}function Tt(e,t,n){if(t)e.call(n);else for(var r=e.length,i=It(e,r),o=0;r>o;++o)i[o].call(n)}function Mt(e,t,n,r){if(t)e.call(n,r);else for(var i=e.length,o=It(e,i),a=0;i>a;++a)o[a].call(n,r)}function Pt(e,t,n,r,i){if(t)e.call(n,r,i);else for(var o=e.length,a=It(e,o),s=0;o>s;++s)a[s].call(n,r,i)}function jt(e,t,n,r,i,o){if(t)e.call(n,r,i,o);else for(var a=e.length,s=It(e,a),l=0;a>l;++l)s[l].call(n,r,i,o)}function Rt(e,t,n,r){if(t)e.apply(n,r);else for(var i=e.length,o=It(e,i),a=0;i>a;++a)o[a].apply(n,r)}function Nt(e,t,n,r){var i,o,a;if("function"!=typeof n)throw new TypeError('"listener" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),a=o[t]):(o=e._events=new At,e._eventsCount=0),a){if("function"==typeof a?a=o[t]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),!a.warned&&(i=Lt(e))&&i>0&&a.length>i){a.warned=!0;var s=Error("Possible EventEmitter memory leak detected. "+a.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length}}else a=o[t]=n,++e._eventsCount;return e}function Dt(e,t,n){var r=!1;function i(){e.removeListener(t,i),r||(r=!0,n.apply(e,arguments))}return i.listener=n,i}function Ft(e){var t=this._events;if(t){var n=t[e];if("function"==typeof n)return 1;if(n)return n.length}return 0}function It(e,t){for(var n=Array(t);t--;)n[t]=e[t];return n}Et.prototype.run=function(){this.fun.apply(null,this.array)},At.prototype=Object.create(null),Ot.EventEmitter=Ot,Ot.usingDomains=!1,Ot.prototype.domain=void 0,Ot.prototype._events=void 0,Ot.prototype._maxListeners=void 0,Ot.defaultMaxListeners=10,Ot.init=function(){this.domain=null,Ot.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new At,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},Ot.prototype.setMaxListeners=function(e){if("number"!=typeof e||0>e||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},Ot.prototype.getMaxListeners=function(){return Lt(this)},Ot.prototype.emit=function(e){var t,n,r,i,o,a,s,l="error"===e;if(a=this._events)l=l&&null==a.error;else if(!l)return!1;if(s=this.domain,l){if(t=arguments[1],!s){if(t instanceof Error)throw t;var u=Error('Uncaught, unspecified "error" event. ('+t+")");throw u.context=t,u}return t||(t=Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=s,t.domainThrown=!1,s.emit("error",t),!1}if(!(n=a[e]))return!1;var c="function"==typeof n;switch(r=arguments.length){case 1:Tt(n,c,this);break;case 2:Mt(n,c,this,arguments[1]);break;case 3:Pt(n,c,this,arguments[1],arguments[2]);break;case 4:jt(n,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(i=Array(r-1),o=1;r>o;o++)i[o-1]=arguments[o];Rt(n,c,this,i)}return!0},Ot.prototype.on=Ot.prototype.addListener=function(e,t){return Nt(this,e,t,!1)},Ot.prototype.prependListener=function(e,t){return Nt(this,e,t,!0)},Ot.prototype.once=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.on(e,Dt(this,e,t)),this},Ot.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');return this.prependListener(e,Dt(this,e,t)),this},Ot.prototype.removeListener=function(e,t){var n,r,i,o,a;if("function"!=typeof t)throw new TypeError('"listener" argument must be a function');if(!(r=this._events))return this;if(!(n=r[e]))return this;if(n===t||n.listener&&n.listener===t)0==--this._eventsCount?this._events=new At:(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length;o-- >0;)if(n[o]===t||n[o].listener&&n[o].listener===t){a=n[o].listener,i=o;break}if(0>i)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new At,this;delete r[e]}else!function(e,t){for(var n=t,r=n+1,i=e.length;i>r;n+=1,r+=1)e[n]=e[r];e.pop()}(n,i);r.removeListener&&this.emit("removeListener",e,a||t)}return this},Ot.prototype.removeAllListeners=function(e){var t,n;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=new At,this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=new At:delete n[e]),this;if(0===arguments.length){for(var r,i=Object.keys(n),o=0;i.length>o;++o)"removeListener"!==(r=i[o])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=new At,this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(t)do{this.removeListener(e,t[t.length-1])}while(t[0]);return this},Ot.prototype.listeners=function(e){var t,n=this._events;return n&&(t=n[e])?"function"==typeof t?[t.listener||t]:function(e){for(var t=Array(e.length),n=0;t.length>n;++n)t[n]=e[n].listener||e[n];return t}(t):[]},Ot.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):Ft.call(e,t)},Ot.prototype.listenerCount=Ft,Ot.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};var zt="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},Bt=/%[sdj%]/g;function Ut(e){if(!Qt(e)){for(var t=[],n=0;arguments.length>n;n++)t.push(qt(arguments[n]));return t.join(" ")}n=1;for(var r=arguments,i=r.length,o=(e+"").replace(Bt,(function(e){if("%%"===e)return"%";if(n>=i)return e;switch(e){case"%s":return r[n++]+"";case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),a=r[n];i>n;a=r[++n])Jt(a)||!nn(a)?o+=" "+a:o+=" "+qt(a);return o}function $t(e,t){if(en(me.process))return function(){return $t(e,t).apply(this,arguments)};var n=!1;return function(){return n||(n=!0),e.apply(this,arguments)}}var Ht,Wt={};function qt(e,t){var n={seen:[],stylize:Vt};return 3>arguments.length||(n.depth=arguments[2]),4>arguments.length||(n.colors=arguments[3]),Xt(t)?n.showHidden=t:t&&ln(n,t),en(n.showHidden)&&(n.showHidden=!1),en(n.depth)&&(n.depth=2),en(n.colors)&&(n.colors=!1),en(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=Zt),Gt(n,e,n.depth)}function Zt(e,t){var n=qt.styles[t];return n?"["+qt.colors[n][0]+"m"+e+"["+qt.colors[n][1]+"m":e}function Vt(e,t){return e}function Gt(e,t,n){if(e.customInspect&&t&&an(t.inspect)&&t.inspect!==qt&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(n,e);return Qt(r)||(r=Gt(e,r,n)),r}var i=function(e,t){if(en(t))return e.stylize("undefined","undefined");if(Qt(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return r=t,"number"==typeof r?e.stylize(""+t,"number"):Xt(t)?e.stylize(""+t,"boolean"):Jt(t)?e.stylize("null","null"):void 0;var r}(e,t);if(i)return i;var o=Object.keys(t),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),on(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return Yt(t);if(0===o.length){if(an(t))return e.stylize("[Function"+(t.name?": "+t.name:"")+"]","special");if(tn(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(rn(t))return e.stylize(Date.prototype.toString.call(t),"date");if(on(t))return Yt(t)}var s,l="",u=!1,c=["{","}"];return Array.isArray(t)&&(u=!0,c=["[","]"]),an(t)&&(l=" [Function"+(t.name?": "+t.name:"")+"]"),tn(t)&&(l=" "+RegExp.prototype.toString.call(t)),rn(t)&&(l=" "+Date.prototype.toUTCString.call(t)),on(t)&&(l=" "+Yt(t)),0!==o.length||u&&0!=t.length?0>n?tn(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),s=u?function(e,t,n,r,i){for(var o=[],a=0,s=t.length;s>a;++a)un(t,a+"")?o.push(Kt(e,t,n,r,a+"",!0)):o.push("");return i.forEach((function(i){i.match(/^\d+$/)||o.push(Kt(e,t,n,r,i,!0))})),o}(e,t,n,a,o):o.map((function(r){return Kt(e,t,n,a,r,u)})),e.seen.pop(),function(e,t,n){return e.reduce((function(e,t){return t.indexOf("\n"),e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}(s,l,c)):c[0]+l+c[1]}function Yt(e){return"["+Error.prototype.toString.call(e)+"]"}function Kt(e,t,n,r,i,o){var a,s,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?s=e.stylize(l.set?"[Getter/Setter]":"[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),un(r,i)||(a="["+i+"]"),s||(0>e.seen.indexOf(l.value)?(s=Jt(n)?Gt(e,l.value,null):Gt(e,l.value,n-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),en(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function Xt(e){return"boolean"==typeof e}function Jt(e){return null===e}function Qt(e){return"string"==typeof e}function en(e){return void 0===e}function tn(e){return nn(e)&&"[object RegExp]"===sn(e)}function nn(e){return"object"==typeof e&&null!==e}function rn(e){return nn(e)&&"[object Date]"===sn(e)}function on(e){return nn(e)&&("[object Error]"===sn(e)||e instanceof Error)}function an(e){return"function"==typeof e}function sn(e){return Object.prototype.toString.call(e)}function ln(e,t){if(!t||!nn(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}function un(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function cn(){this.head=null,this.tail=null,this.length=0}qt.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},qt.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},cn.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},cn.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},cn.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,e}},cn.prototype.clear=function(){this.head=this.tail=null,this.length=0},cn.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},cn.prototype.concat=function(e){if(0===this.length)return Te.alloc(0);if(1===this.length)return this.head.data;for(var t=Te.allocUnsafe(e>>>0),n=this.head,r=0;n;)n.data.copy(t,r),r+=n.data.length,n=n.next;return t};var fn=Te.isEncoding||function(e){switch(e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function hn(e){switch(this.encoding=(e||"utf8").toLowerCase().replace(/[-_]/,""),function(e){if(e&&!fn(e))throw Error("Unknown encoding: "+e)}(e),this.encoding){case"utf8":this.surrogateSize=3;break;case"ucs2":case"utf16le":this.surrogateSize=2,this.detectIncompleteChar=pn;break;case"base64":this.surrogateSize=3,this.detectIncompleteChar=gn;break;default:return void(this.write=dn)}this.charBuffer=new Te(6),this.charReceived=0,this.charLength=0}function dn(e){return e.toString(this.encoding)}function pn(e){this.charReceived=e.length%2,this.charLength=this.charReceived?2:0}function gn(e){this.charReceived=e.length%3,this.charLength=this.charReceived?3:0}hn.prototype.write=function(e){for(var t="";this.charLength;){var n=this.charLength-this.charReceived>e.length?e.length:this.charLength-this.charReceived;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charLength>this.charReceived)return"";if(e=e.slice(n,e.length),55296>(r=(t=this.charBuffer.slice(0,this.charLength).toString(this.encoding)).charCodeAt(t.length-1))||r>56319){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r,i=e.length;if(this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),(r=(t+=e.toString(this.encoding,0,i)).charCodeAt(i=t.length-1))>=55296&&56319>=r){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),e.copy(this.charBuffer,0,0,o),t.substring(0,i)}return t},hn.prototype.detectIncompleteChar=function(e){for(var t=3>e.length?e.length:3;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(2>=t&&n>>4==14){this.charLength=3;break}if(3>=t&&n>>3==30){this.charLength=4;break}}this.charReceived=t},hn.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.encoding;t+=this.charBuffer.slice(0,this.charReceived).toString(n)}return t},yn.ReadableState=vn;var mn=function(e){return en(Ht)&&(Ht=""),e=e.toUpperCase(),Wt[e]||(RegExp("\\b"+e+"\\b","i").test(Ht)?Wt[e]=function(){Ut.apply(null,arguments)}:Wt[e]=function(){}),Wt[e]}("stream");function vn(e,t){this.objectMode=!!(e=e||{}).objectMode,t instanceof qn&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var n=e.highWaterMark;this.highWaterMark=n||0===n?n:this.objectMode?16:16384,this.highWaterMark=~~this.highWaterMark,this.buffer=new cn,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.ranOut=!1,this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(this.decoder=new hn(e.encoding),this.encoding=e.encoding)}function yn(e){if(!(this instanceof yn))return new yn(e);this._readableState=new vn(e,this),this.readable=!0,e&&"function"==typeof e.read&&(this._read=e.read),Ot.call(this)}function bn(e,t,n,r,i){var o=function(e,t){var n=null;return ht(t)||"string"==typeof t||null==t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}(t,n);if(o)e.emit("error",o);else if(null===n)t.reading=!1,function(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,_n(e)}}(e,t);else if(t.objectMode||n&&n.length>0)if(t.ended&&!i)e.emit("error",Error("stream.push() after EOF"));else if(t.endEmitted&&i)e.emit("error",Error("stream.unshift() after end event"));else{var a;!t.decoder||i||r||(n=t.decoder.write(n),a=!t.objectMode&&0===n.length),i||(t.reading=!1),a||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,i?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&_n(e))),function(e,t){t.readingMore||(t.readingMore=!0,Ct(kn,e,t))}(e,t)}else i||(t.reading=!1);return function(e){return!e.ended&&(e.needReadable||e.highWaterMark>e.length||0===e.length)}(t)}function wn(e,t){return 0>=e||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return 8388608>e?(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++):e=8388608,e}(e)),e>t.length?t.ended?t.length:(t.needReadable=!0,0):e)}function _n(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(mn("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?Ct(xn,e):xn(e))}function xn(e){mn("emit readable"),e.emit("readable"),En(e)}function kn(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.highWaterMark>t.length&&(mn("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function Sn(e){mn("readable nexttick read 0"),e.read(0)}function Cn(e,t){t.reading||(mn("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),En(e),t.flowing&&!t.reading&&e.read(0)}function En(e){var t=e._readableState;for(mn("flow",t.flowing);t.flowing&&null!==e.read(););}function An(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():e&&t.length>e?n=function(e,t,n){var r;return t.head.data.length>e?(r=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):r=e===t.head.data.length?t.shift():n?function(e,t){var n=t.head,r=1,i=n.data;for(e-=i.length;n=n.next;){var o=n.data,a=e>o.length?o.length:e;if(i+=a===o.length?o:o.slice(0,e),0===(e-=a)){a===o.length?(++r,t.head=n.next?n.next:t.tail=null):(t.head=n,n.data=o.slice(a));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=Te.allocUnsafe(e),r=t.head,i=1;for(r.data.copy(n),e-=r.data.length;r=r.next;){var o=r.data,a=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,a),0===(e-=a)){a===o.length?(++i,t.head=r.next?r.next:t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}(e,t),r}(e,t.buffer,t.decoder):(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()),n);var n}function On(e){var t=e._readableState;if(t.length>0)throw Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,Ct(Ln,t,e))}function Ln(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function Tn(e,t){for(var n=0,r=e.length;r>n;n++)if(e[n]===t)return n;return-1}function Mn(){}function Pn(e,t,n){this.chunk=e,this.encoding=t,this.callback=n,this.next=null}function jn(e,t){Object.defineProperty(this,"buffer",{get:$t((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")}),this.objectMode=!!(e=e||{}).objectMode,t instanceof qn&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var n=e.highWaterMark;this.highWaterMark=n||0===n?n:this.objectMode?16:16384,this.highWaterMark=~~this.highWaterMark,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.decodeStrings=!(!1===e.decodeStrings),this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?Ct(i,r):i(r),e._writableState.errorEmitted=!0,e.emit("error",r)}(e,n,r,t,i);else{var o=In(n);o||n.corked||n.bufferProcessing||!n.bufferedRequest||Fn(e,n),r?Ct(Dn,e,n,o,i):Dn(e,n,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new Un(this)}function Rn(e){if(!(this instanceof Rn||this instanceof qn))return new Rn(e);this._writableState=new jn(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev)),Ot.call(this)}function Nn(e,t,n,r,i,o,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function Dn(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),Bn(e,t)}function Fn(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=Array(t.bufferedRequestCount),i=t.corkedRequestsFree;i.entry=n;for(var o=0;n;)r[o]=n,n=n.next,o+=1;Nn(e,t,!0,t.length,r,"",i.finish),t.pendingcb++,t.lastBufferedRequest=null,i.next?(t.corkedRequestsFree=i.next,i.next=null):t.corkedRequestsFree=new Un(t)}else{for(;n;){var a=n.chunk;if(Nn(e,t,!1,t.objectMode?1:a.length,a,n.encoding,n.callback),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function In(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function zn(e,t){t.prefinished||(t.prefinished=!0,e.emit("prefinish"))}function Bn(e,t){var n=In(t);return n&&(0===t.pendingcb?(zn(e,t),t.finished=!0,e.emit("finish")):zn(e,t)),n}function Un(e){var t=this;this.next=null,this.entry=null,this.finish=function(n){var r=t.entry;for(t.entry=null;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}}zt(yn,Ot),yn.prototype.push=function(e,t){var n=this._readableState;return n.objectMode||"string"!=typeof e||(t=t||n.defaultEncoding)!==n.encoding&&(e=Te.from(e,t),t=""),bn(this,n,e,t,!1)},yn.prototype.unshift=function(e){return bn(this,this._readableState,e,"",!0)},yn.prototype.isPaused=function(){return!1===this._readableState.flowing},yn.prototype.setEncoding=function(e){return this._readableState.decoder=new hn(e),this._readableState.encoding=e,this},yn.prototype.read=function(e){mn("read",e);var t=this._readableState,n=e=parseInt(e,10);if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return mn("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?On(this):_n(this),null;if(0===(e=wn(e,t))&&t.ended)return 0===t.length&&On(this),null;var r,i=t.needReadable;return mn("need readable",i),(0===t.length||t.highWaterMark>t.length-e)&&mn("length less than watermark",i=!0),t.ended||t.reading?mn("reading or ended",i=!1):i&&(mn("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=wn(n,t))),null===(r=e>0?An(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&On(this)),null!==r&&this.emit("data",r),r},yn.prototype._read=function(e){this.emit("error",Error("not implemented"))},yn.prototype.pipe=function(e,t){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,mn("pipe count=%d opts=%j",r.pipesCount,t);var i=t&&!1===t.end?u:a;function o(e){mn("onunpipe"),e===n&&u()}function a(){mn("onend"),e.end()}r.endEmitted?Ct(i):n.once("end",i),e.on("unpipe",o);var s=function(e){return function(){var t=e._readableState;mn("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&e.listeners("data").length&&(t.flowing=!0,En(e))}}(n);e.on("drain",s);var l=!1;function u(){mn("cleanup"),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("drain",s),e.removeListener("error",h),e.removeListener("unpipe",o),n.removeListener("end",a),n.removeListener("end",u),n.removeListener("data",f),l=!0,!r.awaitDrain||e._writableState&&!e._writableState.needDrain||s()}var c=!1;function f(t){mn("ondata"),c=!1,!1!==e.write(t)||c||((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==Tn(r.pipes,e))&&!l&&(mn("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,c=!0),n.pause())}function h(t){mn("onerror",t),g(),e.removeListener("error",h),0===e.listeners("error").length&&e.emit("error",t)}function d(){e.removeListener("finish",p),g()}function p(){mn("onfinish"),e.removeListener("close",d),g()}function g(){mn("unpipe"),n.unpipe(e)}return n.on("data",f),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",h),e.once("close",d),e.once("finish",p),e.emit("pipe",n),r.flowing||(mn("pipe resume"),n.resume()),e},yn.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this)),this;if(!e){var n=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;r>i;i++)n[i].emit("unpipe",this);return this}var o=Tn(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this)),this},yn.prototype.addListener=yn.prototype.on=function(e,t){var n=Ot.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var r=this._readableState;r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.emittedReadable=!1,r.reading?r.length&&_n(this):Ct(Sn,this))}return n},yn.prototype.resume=function(){var e=this._readableState;return e.flowing||(mn("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,Ct(Cn,e,t))}(this,e)),this},yn.prototype.pause=function(){return mn("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(mn("pause"),this._readableState.flowing=!1,this.emit("pause")),this},yn.prototype.wrap=function(e){var t=this._readableState,n=!1,r=this;for(var i in e.on("end",(function(){if(mn("wrapped end"),t.decoder&&!t.ended){var e=t.decoder.end();e&&e.length&&r.push(e)}r.push(null)})),e.on("data",(function(i){mn("wrapped data"),t.decoder&&(i=t.decoder.write(i)),t.objectMode&&null==i||(t.objectMode||i&&i.length)&&(r.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));return function(e,t){for(var n=0,r=e.length;r>n;n++)t(e[n],n)}(["error","close","destroy","pause","resume"],(function(t){e.on(t,r.emit.bind(r,t))})),r._read=function(t){mn("wrapped _read",t),n&&(n=!1,e.resume())},r},yn._fromList=An,Rn.WritableState=jn,zt(Rn,Ot),jn.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},Rn.prototype.pipe=function(){this.emit("error",Error("Cannot pipe, not readable"))},Rn.prototype.write=function(e,t,n){var r=this._writableState,i=!1;return"function"==typeof t&&(n=t,t=null),Te.isBuffer(e)?t="buffer":t||(t=r.defaultEncoding),"function"!=typeof n&&(n=Mn),r.ended?function(e,t){var n=Error("write after end");e.emit("error",n),Ct(t,n)}(this,n):function(e,t,n,r){var i=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):Te.isBuffer(n)||"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),Ct(r,o),i=!1),i}(this,r,e,n)&&(r.pendingcb++,i=function(e,t,n,r,i){n=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=Te.from(t,n)),t}(t,n,r),Te.isBuffer(n)&&(r="buffer");var o=t.objectMode?1:n.length;t.length+=o;var a=t.highWaterMark>t.length;if(a||(t.needDrain=!0),t.writing||t.corked){var s=t.lastBufferedRequest;t.lastBufferedRequest=new Pn(n,r,i),s?s.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else Nn(e,t,!1,o,n,r,i);return a}(this,r,e,t,n)),i},Rn.prototype.cork=function(){this._writableState.corked++},Rn.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||Fn(this,e))},Rn.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())<=-1)throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Rn.prototype._write=function(e,t,n){n(Error("not implemented"))},Rn.prototype._writev=null,Rn.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,Bn(e,t),n&&(t.finished?Ct(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n)},zt(qn,yn);for(var $n=Object.keys(Rn.prototype),Hn=0;$n.length>Hn;Hn++){var Wn=$n[Hn];qn.prototype[Wn]||(qn.prototype[Wn]=Rn.prototype[Wn])}function qn(e){if(!(this instanceof qn))return new qn(e);yn.call(this,e),Rn.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",Zn)}function Zn(){this.allowHalfOpen||this._writableState.ended||Ct(Vn,this)}function Vn(e){e.end()}function Gn(e){this.afterTransform=function(t,n){return function(e,t,n){var r=e._transformState;r.transforming=!1;var i=r.writecb;if(!i)return e.emit("error",Error("no writecb in Transform class"));r.writechunk=null,r.writecb=null,null!=n&&e.push(n),i(t);var o=e._readableState;o.reading=!1,(o.needReadable||o.highWaterMark>o.length)&&e._read(o.highWaterMark)}(e,t,n)},this.needTransform=!1,this.transforming=!1,this.writecb=null,this.writechunk=null,this.writeencoding=null}function Yn(e){if(!(this instanceof Yn))return new Yn(e);qn.call(this,e),this._transformState=new Gn(this);var t=this;this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.once("prefinish",(function(){"function"==typeof this._flush?this._flush((function(e){Kn(t,e)})):Kn(t)}))}function Kn(e,t){if(t)return e.emit("error",t);var n=e._transformState;if(e._writableState.length)throw Error("Calling transform done when ws.length != 0");if(n.transforming)throw Error("Calling transform done when still transforming");return e.push(null)}function Xn(e){if(!(this instanceof Xn))return new Xn(e);Yn.call(this,e)}function Jn(){Ot.call(this)}zt(Yn,qn),Yn.prototype.push=function(e,t){return this._transformState.needTransform=!1,qn.prototype.push.call(this,e,t)},Yn.prototype._transform=function(e,t,n){throw Error("Not implemented")},Yn.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.highWaterMark>i.length)&&this._read(i.highWaterMark)}},Yn.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},zt(Xn,Yn),Xn.prototype._transform=function(e,t,n){n(null,e)},zt(Jn,Ot),Jn.Readable=yn,Jn.Writable=Rn,Jn.Duplex=qn,Jn.Transform=Yn,Jn.PassThrough=Xn,Jn.Stream=Jn,Jn.prototype.pipe=function(e,t){var n=this;function r(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function i(){n.readable&&n.resume&&n.resume()}n.on("data",r),e.on("drain",i),e._isStdio||t&&!1===t.end||(n.on("end",a),n.on("close",s));var o=!1;function a(){o||(o=!0,e.end())}function s(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){if(u(),0===Ot.listenerCount(this,"error"))throw e}function u(){n.removeListener("data",r),e.removeListener("drain",i),n.removeListener("end",a),n.removeListener("close",s),n.removeListener("error",l),e.removeListener("error",l),n.removeListener("end",u),n.removeListener("close",u),e.removeListener("close",u)}return n.on("error",l),e.on("error",l),n.on("end",u),n.on("close",u),e.on("close",u),e.emit("pipe",n),e};var Qn={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};function er(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function tr(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var o=0;r>o;o++)e[i+o]=t[n+o]}var nr=Uint8Array,rr=Uint16Array,ir=Int32Array;function or(e){for(var t=e.length;--t>=0;)e[t]=0}var ar=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],sr=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],lr=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ur=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],cr=Array(576);or(cr);var fr=Array(60);or(fr);var hr=Array(512);or(hr);var dr=Array(256);or(dr);var pr=Array(29);or(pr);var gr,mr,vr,yr=Array(30);function br(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function wr(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function _r(e){return 256>e?hr[e]:hr[256+(e>>>7)]}function xr(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function kr(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<>>=1,n<<=1}while(--t>0);return n>>>1}function Er(e,t,n){var r,i,o=Array(16),a=0;for(r=1;15>=r;r++)o[r]=a=a+n[r-1]<<1;for(i=0;t>=i;i++){var s=e[2*i+1];0!==s&&(e[2*i]=Cr(o[s]++,s))}}function Ar(e){var t;for(t=0;286>t;t++)e.dyn_ltree[2*t]=0;for(t=0;30>t;t++)e.dyn_dtree[2*t]=0;for(t=0;19>t;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function Or(e){e.bi_valid>8?xr(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function Lr(e,t,n,r){var i=2*t,o=2*n;return e[o]>e[i]||e[i]===e[o]&&r[n]>=r[t]}function Tr(e,t,n){for(var r=e.heap[n],i=n<<1;e.heap_len>=i&&(e.heap_len>i&&Lr(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!Lr(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function Mr(e,t,n){var r,i,o,a,s=0;if(0!==e.last_lit)do{r=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===r?Sr(e,i,t):(Sr(e,(o=dr[i])+256+1,t),0!==(a=ar[o])&&kr(e,i-=pr[o],a),Sr(e,o=_r(--r),n),0!==(a=sr[o])&&kr(e,r-=yr[o],a))}while(e.last_lit>s);Sr(e,256,t)}function Pr(e,t){var n,r,i,o=t.dyn_tree,a=t.stat_desc.static_tree,s=t.stat_desc.has_stree,l=t.stat_desc.elems,u=-1;for(e.heap_len=0,e.heap_max=573,n=0;l>n;n++)0!==o[2*n]?(e.heap[++e.heap_len]=u=n,e.depth[n]=0):o[2*n+1]=0;for(;2>e.heap_len;)o[2*(i=e.heap[++e.heap_len]=2>u?++u:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=a[2*i+1]);for(t.max_code=u,n=e.heap_len>>1;n>=1;n--)Tr(e,o,n);i=l;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Tr(e,o,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,o[2*i]=o[2*n]+o[2*r],e.depth[i]=(e.depth[r]>e.depth[n]?e.depth[r]:e.depth[n])+1,o[2*n+1]=o[2*r+1]=i,e.heap[1]=i++,Tr(e,o,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,o,a,s,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,f=t.stat_desc.has_stree,h=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,g=0;for(o=0;15>=o;o++)e.bl_count[o]=0;for(l[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;573>n;n++)(o=l[2*l[2*(r=e.heap[n])+1]+1]+1)>p&&(o=p,g++),l[2*r+1]=o,r>u||(e.bl_count[o]++,a=0,d>r||(a=h[r-d]),e.opt_len+=(s=l[2*r])*(o+a),f&&(e.static_len+=s*(c[2*r+1]+a)));if(0!==g){do{for(o=p-1;0===e.bl_count[o];)o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,g-=2}while(g>0);for(o=p;0!==o;o--)for(r=e.bl_count[o];0!==r;)u<(i=e.heap[--n])||(l[2*i+1]!==o&&(e.opt_len+=(o-l[2*i+1])*l[2*i],l[2*i+1]=o),r--)}}(e,t),Er(o,u,e.bl_count)}function jr(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),t[2*(n+1)+1]=65535,r=0;n>=r;r++)i=a,a=t[2*(r+1)+1],++ss?e.bl_tree[2*i]+=s:0!==i?(i!==o&&e.bl_tree[2*i]++,e.bl_tree[32]++):s>10?e.bl_tree[36]++:e.bl_tree[34]++,s=0,o=i,0===a?(l=138,u=3):i===a?(l=6,u=3):(l=7,u=4))}function Rr(e,t,n){var r,i,o=-1,a=t[1],s=0,l=7,u=4;for(0===a&&(l=138,u=3),r=0;n>=r;r++)if(i=a,a=t[2*(r+1)+1],++s>=l||i!==a){if(u>s)do{Sr(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==o&&(Sr(e,i,e.bl_tree),s--),Sr(e,16,e.bl_tree),kr(e,s-3,2)):s>10?(Sr(e,18,e.bl_tree),kr(e,s-11,7)):(Sr(e,17,e.bl_tree),kr(e,s-3,3));s=0,o=i,0===a?(l=138,u=3):i===a?(l=6,u=3):(l=7,u=4)}}or(yr);var Nr=!1;function Dr(e){Nr||(function(){var e,t,n,r,i,o=Array(16);for(n=0,r=0;28>r;r++)for(pr[r]=n,e=0;1<e;e++)dr[n++]=r;for(dr[n-1]=r,i=0,r=0;16>r;r++)for(yr[r]=i,e=0;1<e;e++)hr[i++]=r;for(i>>=7;30>r;r++)for(yr[r]=i<<7,e=0;1<e;e++)hr[256+i++]=r;for(t=0;15>=t;t++)o[t]=0;for(e=0;143>=e;)cr[2*e+1]=8,e++,o[8]++;for(;255>=e;)cr[2*e+1]=9,e++,o[9]++;for(;279>=e;)cr[2*e+1]=7,e++,o[7]++;for(;287>=e;)cr[2*e+1]=8,e++,o[8]++;for(Er(cr,287,o),e=0;30>e;e++)fr[2*e+1]=5,fr[2*e]=Cr(e,5);gr=new br(cr,ar,257,286,15),mr=new br(fr,sr,0,30,15),vr=new br([],lr,0,19,7)}(),Nr=!0),e.l_desc=new wr(e.dyn_ltree,gr),e.d_desc=new wr(e.dyn_dtree,mr),e.bl_desc=new wr(e.bl_tree,vr),e.bi_buf=0,e.bi_valid=0,Ar(e)}function Fr(e,t,n,r){kr(e,0+(r?1:0),3),function(e,t,n,r){Or(e),r&&(xr(e,n),xr(e,~n)),tr(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}function Ir(e){kr(e,2,3),Sr(e,256,cr),function(e){16===e.bi_valid?(xr(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8>e.bi_valid||(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}function zr(e,t,n,r){var i,o,a=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;31>=t;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;256>t;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),Pr(e,e.l_desc),Pr(e,e.d_desc),a=function(e){var t;for(jr(e,e.dyn_ltree,e.l_desc.max_code),jr(e,e.dyn_dtree,e.d_desc.max_code),Pr(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*ur[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),(o=e.static_len+3+7>>>3)>(i=e.opt_len+3+7>>>3)||(i=o)):i=o=n+5,n+4>i||-1===t?4===e.strategy||o===i?(kr(e,2+(r?1:0),3),Mr(e,cr,fr)):(kr(e,4+(r?1:0),3),function(e,t,n,r){var i;for(kr(e,t-257,5),kr(e,n-1,5),kr(e,r-4,4),i=0;r>i;i++)kr(e,e.bl_tree[2*ur[i]+1],3);Rr(e,e.dyn_ltree,t-1),Rr(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),Mr(e,e.dyn_ltree,e.dyn_dtree)):Fr(e,t,n,r),Ar(e),r&&Or(e)}function Br(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(dr[n]+256+1)]++,e.dyn_dtree[2*_r(t)]++),e.last_lit===e.lit_bufsize-1}function Ur(e,t,n,r){for(var i=65535&e|0,o=e>>>16&65535|0,a=0;0!==n;){n-=a=n>2e3?2e3:n;do{o=o+(i=i+t[r++]|0)|0}while(--a);i%=65521,o%=65521}return i|o<<16|0}var $r,Hr=function(){for(var e,t=[],n=0;256>n;n++){e=n;for(var r=0;8>r;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();function Wr(e,t,n,r){var i=Hr,o=r+n;e^=-1;for(var a=r;o>a;a++)e=e>>>8^i[255&(e^t[a])];return-1^e}function qr(e,t){return e.msg=Qn[t],t}function Zr(e){return(e<<1)-(e>4?9:0)}function Vr(e){for(var t=e.length;--t>=0;)e[t]=0}function Gr(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(tr(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function Yr(e,t){zr(e,0>e.block_start?-1:e.block_start,e.strstart-e.block_start,t),e.block_start=e.strstart,Gr(e.strm)}function Kr(e,t){e.pending_buf[e.pending++]=t}function Xr(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function Jr(e,t){var n,r,i=e.max_chain_length,o=e.strstart,a=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,u=e.window,c=e.w_mask,f=e.prev,h=e.strstart+258,d=u[o+a-1],p=u[o+a];e.good_match>e.prev_length||(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(u[(n=t)+a]===p&&u[n+a-1]===d&&u[n]===u[o]&&u[++n]===u[o+1]){o+=2,n++;do{}while(u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&u[++o]===u[++n]&&h>o);if(r=258-(h-o),o=h-258,r>a){if(e.match_start=t,a=r,r>=s)break;d=u[o+a-1],p=u[o+a]}}}while((t=f[t&c])>l&&0!=--i);return a>e.lookahead?e.lookahead:a}function Qr(e){var t,n,r,i,o,a,s,l,u,c,f=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-262)){tr(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=f>r?0:r-f}while(--n);t=n=f;do{r=e.prev[--t],e.prev[t]=f>r?0:r-f}while(--n);i+=f}if(0===e.strm.avail_in)break;if(s=e.window,l=e.strstart+e.lookahead,c=void 0,(c=(a=e.strm).avail_in)>(u=i)&&(c=u),n=0===c?0:(a.avail_in-=c,tr(s,a.input,a.next_in,c,l),1===a.state.wrap?a.adler=Ur(a.adler,s,c,l):2===a.state.wrap&&(a.adler=Wr(a.adler,s,c,l)),a.next_in+=c,a.total_in+=c,c),e.lookahead+=n,e.lookahead+e.insert>=3)for(e.ins_h=e.window[o=e.strstart-e.insert],e.ins_h=(e.ins_h<=3););}while(262>e.lookahead&&0!==e.strm.avail_in)}function ei(e,t){for(var n,r;;){if(262>e.lookahead){if(Qr(e),262>e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(n=0,3>e.lookahead||(e.ins_h=(e.ins_h<e.w_size-262||(e.match_length=Jr(e,n)),3>e.match_length)r=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;else if(r=Br(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length>e.max_lazy_match||3>e.lookahead)e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<e.strstart?e.strstart:2,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}function ti(e,t){for(var n,r,i;;){if(262>e.lookahead){if(Qr(e),262>e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(n=0,3>e.lookahead||(e.ins_h=(e.ins_h<e.prev_length&&e.w_size-262>=e.strstart-n&&(e.match_length=Jr(e,n),5>=e.match_length&&(1===e.strategy||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),3>e.prev_length||e.match_length>e.prev_length)if(e.match_available){if((r=Br(e,0,e.window[e.strstart-1]))&&Yr(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--;else{i=e.strstart+e.lookahead-3,r=Br(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart>i||(e.ins_h=(e.ins_h<e.strstart?e.strstart:2,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}function ni(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function ri(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new rr(1146),this.dyn_dtree=new rr(122),this.bl_tree=new rr(78),Vr(this.dyn_ltree),Vr(this.dyn_dtree),Vr(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new rr(16),this.heap=new rr(573),Vr(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new rr(573),Vr(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ii(e){var t,n=function(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,0>t.wrap&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=2===t.wrap?0:1,t.last_flush=0,Dr(t),0):qr(e,-2)}(e);return 0===n&&((t=e.state).window_size=2*t.w_size,Vr(t.head),t.max_lazy_match=$r[t.level].max_lazy,t.good_match=$r[t.level].good_length,t.nice_match=$r[t.level].nice_length,t.max_chain_length=$r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),n}function oi(e,t){var n,r,i,o;if(!e||!e.state||t>5||0>t)return e?qr(e,-2):-2;if(r=e.state,!e.output||!e.input&&0!==e.avail_in||666===r.status&&4!==t)return qr(e,0===e.avail_out?-5:-2);if(r.strm=e,n=r.last_flush,r.last_flush=t,42===r.status)if(2===r.wrap)e.adler=0,Kr(r,31),Kr(r,139),Kr(r,8),r.gzhead?(Kr(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Kr(r,255&r.gzhead.time),Kr(r,r.gzhead.time>>8&255),Kr(r,r.gzhead.time>>16&255),Kr(r,r.gzhead.time>>24&255),Kr(r,9===r.level?2:r.strategy>=2||2>r.level?4:0),Kr(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(Kr(r,255&r.gzhead.extra.length),Kr(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Wr(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69):(Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,0),Kr(r,9===r.level?2:r.strategy>=2||2>r.level?4:0),Kr(r,3),r.status=113);else{var a=8+(r.w_bits-8<<4)<<8;a|=(r.strategy>=2||2>r.level?0:6>r.level?1:6===r.level?2:3)<<6,0!==r.strstart&&(a|=32),a+=31-a%31,r.status=113,Xr(r,a),0!==r.strstart&&(Xr(r,e.adler>>>16),Xr(r,65535&e.adler)),e.adler=1}if(69===r.status)if(r.gzhead.extra){for(i=r.pending;(65535&r.gzhead.extra.length)>r.gzindex&&(r.pending!==r.pending_buf_size||(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending!==r.pending_buf_size));)Kr(r,255&r.gzhead.extra[r.gzindex]),r.gzindex++;r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=73)}else r.status=73;if(73===r.status)if(r.gzhead.name){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending===r.pending_buf_size)){o=1;break}o=r.gzhead.name.length>r.gzindex?255&r.gzhead.name.charCodeAt(r.gzindex++):0,Kr(r,o)}while(0!==o);r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),0===o&&(r.gzindex=0,r.status=91)}else r.status=91;if(91===r.status)if(r.gzhead.comment){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),Gr(e),i=r.pending,r.pending===r.pending_buf_size)){o=1;break}o=r.gzhead.comment.length>r.gzindex?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,Kr(r,o)}while(0!==o);r.gzhead.hcrc&&r.pending>i&&(e.adler=Wr(e.adler,r.pending_buf,r.pending-i,i)),0===o&&(r.status=103)}else r.status=103;if(103===r.status&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&Gr(e),r.pending+2>r.pending_buf_size||(Kr(r,255&e.adler),Kr(r,e.adler>>8&255),e.adler=0,r.status=113)):r.status=113),0!==r.pending){if(Gr(e),0===e.avail_out)return r.last_flush=-1,0}else if(0===e.avail_in&&Zr(t)<=Zr(n)&&4!==t)return qr(e,-5);if(666===r.status&&0!==e.avail_in)return qr(e,-5);if(0!==e.avail_in||0!==r.lookahead||0!==t&&666!==r.status){var s=2===r.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(Qr(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}(r,t):3===r.strategy?function(e,t){for(var n,r,i,o,a=e.window;;){if(258>=e.lookahead){if(Qr(e),258>=e.lookahead&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(r=a[i=e.strstart-1])===a[++i]&&r===a[++i]&&r===a[++i]){o=e.strstart+258;do{}while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&o>i);e.match_length=258-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(3>e.match_length?(n=Br(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++):(n=Br(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0),n&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(Yr(e,!1),0===e.strm.avail_out)?1:2}(r,t):$r[r.level].func(r,t);if(3!==s&&4!==s||(r.status=666),1===s||3===s)return 0===e.avail_out&&(r.last_flush=-1),0;if(2===s&&(1===t?Ir(r):5!==t&&(Fr(r,0,0,!1),3===t&&(Vr(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),Gr(e),0===e.avail_out))return r.last_flush=-1,0}return 4!==t?0:r.wrap>0?(2===r.wrap?(Kr(r,255&e.adler),Kr(r,e.adler>>8&255),Kr(r,e.adler>>16&255),Kr(r,e.adler>>24&255),Kr(r,255&e.total_in),Kr(r,e.total_in>>8&255),Kr(r,e.total_in>>16&255),Kr(r,e.total_in>>24&255)):(Xr(r,e.adler>>>16),Xr(r,65535&e.adler)),Gr(e),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?0:1):1}function ai(e,t){var n,r,i,o,a,s,l,u,c,f,h,d,p,g,m,v,y,b,w,_,x,k,S,C,E;C=e.input,i=(r=e.next_in)+(e.avail_in-5),E=e.output,a=(o=e.next_out)-(t-e.avail_out),s=o+(e.avail_out-257),l=(n=e.state).dmax,u=n.wsize,c=n.whave,f=n.wnext,h=n.window,d=n.hold,p=n.bits,g=n.lencode,m=n.distcode,v=(1<p&&(d+=C[r++]<>>=w=b>>>24,p-=w,0===(w=b>>>16&255))E[o++]=65535&b;else{if(!(16&w)){if(0==(64&w)){b=g[(65535&b)+(d&(1<p&&(d+=C[r++]<>>=w,p-=w),15>p&&(d+=C[r++]<>>=w=b>>>24,p-=w,!(16&(w=b>>>16&255))){if(0==(64&w)){b=m[(65535&b)+(d&(1<p&&(d+=C[r++]<(p+=8)&&(d+=C[r++]<l){e.msg="invalid distance too far back",n.mode=30;break e}if(d>>>=w,p-=w,x>(w=o-a)){if((w=x-w)>c&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(k=0,S=h,0===f){if(k+=u-w,_>w){_-=w;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}}else if(w>f){if(k+=u+f-w,_>(w-=f)){_-=w;do{E[o++]=h[k++]}while(--w);if(k=0,_>f){_-=w=f;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}}}else if(k+=f-w,_>w){_-=w;do{E[o++]=h[k++]}while(--w);k=o-x,S=E}for(;_>2;)E[o++]=S[k++],E[o++]=S[k++],E[o++]=S[k++],_-=3;_&&(E[o++]=S[k++],_>1&&(E[o++]=S[k++]))}else{k=o-x;do{E[o++]=E[k++],E[o++]=E[k++],E[o++]=E[k++],_-=3}while(_>2);_&&(E[o++]=E[k++],_>1&&(E[o++]=E[k++]))}break}}break}}while(i>r&&s>o);d&=(1<<(p-=(_=p>>3)<<3))-1,e.next_in=r-=_,e.next_out=o,e.avail_in=i>r?i-r+5:5-(r-i),e.avail_out=s>o?s-o+257:257-(o-s),n.hold=d,n.bits=p}$r=[new ni(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(1>=e.lookahead){if(Qr(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,Yr(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-262&&(Yr(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(Yr(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&Yr(e,!1),1)})),new ni(4,4,8,4,ei),new ni(4,5,16,8,ei),new ni(4,6,32,32,ei),new ni(4,4,16,16,ti),new ni(8,16,32,32,ti),new ni(8,16,128,128,ti),new ni(8,32,128,256,ti),new ni(32,128,258,1024,ti),new ni(32,258,258,4096,ti)];var si=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],li=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],ui=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],ci=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];function fi(e,t,n,r,i,o,a,s){var l,u,c,f,h,d,p,g,m,v=s.bits,y=0,b=0,w=0,_=0,x=0,k=0,S=0,C=0,E=0,A=0,O=null,L=0,T=new rr(16),M=new rr(16),P=null,j=0;for(y=0;15>=y;y++)T[y]=0;for(b=0;r>b;b++)T[t[n+b]]++;for(x=v,_=15;_>=1&&0===T[_];_--);if(x>_&&(x=_),0===_)return i[o++]=20971520,i[o++]=20971520,s.bits=1,0;for(w=1;_>w&&0===T[w];w++);for(w>x&&(x=w),C=1,y=1;15>=y;y++)if(C<<=1,0>(C-=T[y]))return-1;if(C>0&&(0===e||1!==_))return-1;for(M[1]=0,y=1;15>y;y++)M[y+1]=M[y]+T[y];for(b=0;r>b;b++)0!==t[n+b]&&(a[M[t[n+b]]++]=b);if(0===e?(O=P=a,d=19):1===e?(O=si,L-=257,P=li,j-=257,d=256):(O=ui,P=ci,d=-1),A=0,b=0,y=w,h=o,k=x,S=0,c=-1,f=(E=1<852||2===e&&E>592)return 1;for(;;){p=y-S,d>a[b]?(g=0,m=a[b]):a[b]>d?(g=P[j+a[b]],m=O[L+a[b]]):(g=96,m=0),l=1<>S)+(u-=l)]=p<<24|g<<16|m|0}while(0!==u);for(l=1<>=1;if(0!==l?(A&=l-1,A+=l):A=0,b++,0==--T[y]){if(y===_)break;y=t[n+a[b]]}if(y>x&&(A&f)!==c){for(0===S&&(S=x),h+=w,C=1<<(k=y-S);_>k+S&&(C-=T[k+S])>0;)k++,C<<=1;if(E+=1<852||2===e&&E>592)return 1;i[c=A&f]=x<<24|k<<16|h-o|0}}return 0!==A&&(i[h+A]=y-S<<24|64<<16|0),s.bits=x,0}function hi(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function di(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new rr(320),this.work=new rr(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function pi(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,function(e){var t;return e&&e.state?(e.total_in=e.total_out=(t=e.state).total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new ir(852),t.distcode=t.distdyn=new ir(592),t.sane=1,t.back=-1,0):-2}(e)):-2}function gi(e,t){var n,r;return e?(r=new di,e.state=r,r.window=null,0!==(n=function(e,t){var n,r;return e&&e.state?(0>t?(n=0,t=-t):(n=1+(t>>4),48>t&&(t&=15)),t&&(8>t||t>15)?-2:(null!==(r=e.state).window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,pi(e))):-2}(e,t))&&(e.state=null),n):-2}var mi,vi,yi,bi=!0;function wi(e){if(bi){var t;for(mi=new ir(512),vi=new ir(32),t=0;144>t;)e.lens[t++]=8;for(;256>t;)e.lens[t++]=9;for(;280>t;)e.lens[t++]=7;for(;288>t;)e.lens[t++]=8;for(fi(1,e.lens,0,288,mi,0,e.work,{bits:9}),t=0;32>t;)e.lens[t++]=5;fi(2,e.lens,0,32,vi,0,e.work,{bits:5}),bi=!1}e.lencode=mi,e.lenbits=9,e.distcode=vi,e.distbits=5}function _i(e,t){var n,r,i,o,a,s,l,u,c,f,h,d,p,g,m,v,y,b,w,_,x,k,S,C,E=0,A=new nr(4),O=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return-2;12===(n=e.state).mode&&(n.mode=13),a=e.next_out,i=e.output,o=e.next_in,r=e.input,u=n.hold,c=n.bits,f=s=e.avail_in,h=l=e.avail_out,k=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,n.check=Wr(n.check,A,2,0),u=0,c=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&u)){e.msg="unknown compression method",n.mode=30;break}if(c-=4,x=8+(15&(u>>>=4)),0===n.wbits)n.wbits=x;else if(x>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<c;){if(0===s)break e;s--,u+=r[o++]<>8&1),512&n.flags&&(A[0]=255&u,A[1]=u>>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0,n.mode=3;case 3:for(;32>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,A[2]=u>>>16&255,A[3]=u>>>24&255,n.check=Wr(n.check,A,4,0)),u=0,c=0,n.mode=4;case 4:for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>8),512&n.flags&&(A[0]=255&u,A[1]=u>>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0,n.mode=5;case 5:if(1024&n.flags){for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>>8&255,n.check=Wr(n.check,A,2,0)),u=0,c=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((d=n.length)>s&&(d=s),d&&(n.head&&(x=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),tr(n.head.extra,r,o,d,x)),512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,n.length-=d),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===s)break e;d=0;do{x=r[o+d++],n.head&&x&&65536>n.length&&(n.head.name+=String.fromCharCode(x))}while(x&&s>d);if(512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,x)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===s)break e;d=0;do{x=r[o+d++],n.head&&x&&65536>n.length&&(n.head.comment+=String.fromCharCode(x))}while(x&&s>d);if(512&n.flags&&(n.check=Wr(n.check,r,d,o)),s-=d,o+=d,x)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;16>c;){if(0===s)break e;s--,u+=r[o++]<>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;32>c;){if(0===s)break e;s--,u+=r[o++]<>>=7&c,c-=7&c,n.mode=27;break}for(;3>c;){if(0===s)break e;s--,u+=r[o++]<>>=1)){case 0:n.mode=14;break;case 1:if(wi(n),n.mode=20,6===t){u>>>=2,c-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}u>>>=2,c-=2;break;case 14:for(u>>>=7&c,c-=7&c;32>c;){if(0===s)break e;s--,u+=r[o++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&u,u=0,c=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(d=n.length){if(d>s&&(d=s),d>l&&(d=l),0===d)break e;tr(i,r,o,d,a),s-=d,o+=d,l-=d,a+=d,n.length-=d;break}n.mode=12;break;case 17:for(;14>c;){if(0===s)break e;s--,u+=r[o++]<>>=5)),c-=5,n.ncode=4+(15&(u>>>=5)),u>>>=4,c-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.ncode>n.have;){for(;3>c;){if(0===s)break e;s--,u+=r[o++]<>>=3,c-=3}for(;19>n.have;)n.lens[O[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,k=fi(0,n.lens,0,19,n.lencode,0,n.work,S={bits:n.lenbits}),n.lenbits=S.bits,k){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.nlen+n.ndist>n.have;){for(;v=(E=n.lencode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<y)u>>>=m,c-=m,n.lens[n.have++]=y;else{if(16===y){for(C=m+2;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m,c-=m,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}x=n.lens[n.have-1],d=3+(3&u),u>>>=2,c-=2}else if(17===y){for(C=m+3;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m)),u>>>=3,c-=3}else{for(C=m+7;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=m)),u>>>=7,c-=7}if(n.have+d>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;d--;)n.lens[n.have++]=x}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,k=fi(1,n.lens,0,n.nlen,n.lencode,0,n.work,S={bits:n.lenbits}),n.lenbits=S.bits,k){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,k=fi(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,S={bits:n.distbits}),n.distbits=S.bits,k){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(s>=6&&l>=258){e.next_out=a,e.avail_out=l,e.next_in=o,e.avail_in=s,n.hold=u,n.bits=c,ai(e,h),a=e.next_out,i=e.output,l=e.avail_out,o=e.next_in,r=e.input,s=e.avail_in,u=n.hold,c=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;v=(E=n.lencode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<>b)])>>>16&255,y=65535&E,c>>24);){if(0===s)break e;s--,u+=r[o++]<>>=b,c-=b,n.back+=b}if(u>>>=m,c-=m,n.back+=m,n.length=y,0===v){n.mode=26;break}if(32&v){n.back=-1,n.mode=12;break}if(64&v){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&v,n.mode=22;case 22:if(n.extra){for(C=n.extra;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=n.extra,c-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;v=(E=n.distcode[u&(1<>>16&255,y=65535&E,c<(m=E>>>24);){if(0===s)break e;s--,u+=r[o++]<>b)])>>>16&255,y=65535&E,c>>24);){if(0===s)break e;s--,u+=r[o++]<>>=b,c-=b,n.back+=b}if(u>>>=m,c-=m,n.back+=m,64&v){e.msg="invalid distance code",n.mode=30;break}n.offset=y,n.extra=15&v,n.mode=24;case 24:if(n.extra){for(C=n.extra;C>c;){if(0===s)break e;s--,u+=r[o++]<>>=n.extra,c-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===l)break e;if(n.offset>(d=h-l)){if((d=n.offset-d)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}p=d>n.wnext?n.wsize-(d-=n.wnext):n.wnext-d,d>n.length&&(d=n.length),g=n.window}else g=i,p=a-n.offset,d=n.length;d>l&&(d=l),l-=d,n.length-=d;do{i[a++]=g[p++]}while(--d);0===n.length&&(n.mode=21);break;case 26:if(0===l)break e;i[a++]=n.length,l--,n.mode=21;break;case 27:if(n.wrap){for(;32>c;){if(0===s)break e;s--,u|=r[o++]<c;){if(0===s)break e;s--,u+=r[o++]<n.mode&&(27>n.mode||4!==t))&&function(e,t,n,r){var i,o=e.state;null===o.window&&(o.wsize=1<r?((i=o.wsize-o.wnext)>r&&(i=r),tr(o.window,t,n-r,i,o.wnext),(r-=i)?(tr(o.window,t,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.wsize>o.whave&&(o.whave+=i))):(tr(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize)}(e,e.output,e.next_out,h-e.avail_out),h-=e.avail_out,e.total_in+=f-=e.avail_in,e.total_out+=h,n.total+=h,n.wrap&&h&&(e.adler=n.check=n.flags?Wr(n.check,i,h,e.next_out-h):Ur(n.check,i,h,e.next_out-h)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0===f&&0===h||4===t)&&0===k&&(k=-5),k}function xi(e){if(1>e||e>7)throw new TypeError("Bad argument");this.mode=e,this.init_done=!1,this.write_in_progress=!1,this.pending_close=!1,this.windowBits=0,this.level=0,this.memLevel=0,this.strategy=0,this.dictionary=null}function ki(e,t){for(var n=0;e.length>n;n++)this[t+n]=e[n]}xi.prototype.init=function(e,t,n,r,i){var o;switch(this.windowBits=e,this.level=t,this.memLevel=n,this.strategy=r,3!==this.mode&&4!==this.mode||(this.windowBits+=16),7===this.mode&&(this.windowBits+=32),5!==this.mode&&6!==this.mode||(this.windowBits=-this.windowBits),this.strm=new er,this.mode){case 1:case 3:case 5:o=function(e,t,n,r,i,o){if(!e)return-2;var a=1;if(-1===t&&(t=6),0>r?(a=0,r=-r):r>15&&(a=2,r-=16),1>i||i>9||8!==n||8>r||r>15||0>t||t>9||0>o||o>4)return qr(e,-2);8===r&&(r=9);var s=new ri;return e.state=s,s.strm=e,s.wrap=a,s.gzhead=null,s.w_bits=r,s.w_size=1<e.chunkSize||e.chunkSize>Ci.Z_MAX_CHUNK))throw Error("Invalid chunk size: "+e.chunkSize);if(e.windowBits&&(Ci.Z_MIN_WINDOWBITS>e.windowBits||e.windowBits>Ci.Z_MAX_WINDOWBITS))throw Error("Invalid windowBits: "+e.windowBits);if(e.level&&(Ci.Z_MIN_LEVEL>e.level||e.level>Ci.Z_MAX_LEVEL))throw Error("Invalid compression level: "+e.level);if(e.memLevel&&(Ci.Z_MIN_MEMLEVEL>e.memLevel||e.memLevel>Ci.Z_MAX_MEMLEVEL))throw Error("Invalid memLevel: "+e.memLevel);if(e.strategy&&e.strategy!=Ci.Z_FILTERED&&e.strategy!=Ci.Z_HUFFMAN_ONLY&&e.strategy!=Ci.Z_RLE&&e.strategy!=Ci.Z_FIXED&&e.strategy!=Ci.Z_DEFAULT_STRATEGY)throw Error("Invalid strategy: "+e.strategy);if(e.dictionary&&!ht(e.dictionary))throw Error("Invalid dictionary: it should be a Buffer instance");this._binding=new Ci.Zlib(t);var n=this;this._hadError=!1,this._binding.onerror=function(e,t){n._binding=null,n._hadError=!0;var r=Error(e);r.errno=t,r.code=Ci.codes[t],n.emit("error",r)};var r=Ci.Z_DEFAULT_COMPRESSION;"number"==typeof e.level&&(r=e.level);var i=Ci.Z_DEFAULT_STRATEGY;"number"==typeof e.strategy&&(i=e.strategy),this._binding.init(e.windowBits||Ci.Z_DEFAULT_WINDOWBITS,r,e.memLevel||Ci.Z_DEFAULT_MEMLEVEL,i,e.dictionary),this._buffer=new Te(this._chunkSize),this._offset=0,this._closed=!1,this._level=r,this._strategy=i,this.once("end",this.close)}Object.keys(Ei).forEach((function(e){Ei[Ei[e]]=e})),zt(Di,Yn),Di.prototype.params=function(e,t,n){if(Ci.Z_MIN_LEVEL>e||e>Ci.Z_MAX_LEVEL)throw new RangeError("Invalid compression level: "+e);if(t!=Ci.Z_FILTERED&&t!=Ci.Z_HUFFMAN_ONLY&&t!=Ci.Z_RLE&&t!=Ci.Z_FIXED&&t!=Ci.Z_DEFAULT_STRATEGY)throw new TypeError("Invalid strategy: "+t);if(this._level!==e||this._strategy!==t){var r=this;this.flush(Ci.Z_SYNC_FLUSH,(function(){r._binding.params(e,t),r._hadError||(r._level=e,r._strategy=t,n&&n())}))}else Ct(n)},Di.prototype.reset=function(){return this._binding.reset()},Di.prototype._flush=function(e){this._transform(new Te(0),"",e)},Di.prototype.flush=function(e,t){var n=this._writableState;if(("function"==typeof e||void 0===e&&!t)&&(t=e,e=Ci.Z_FULL_FLUSH),n.ended)t&&Ct(t);else if(n.ending)t&&this.once("end",t);else if(n.needDrain){var r=this;this.once("drain",(function(){r.flush(t)}))}else this._flushFlag=e,this.write(new Te(0),"",t)},Di.prototype.close=function(e){if(e&&Ct(e),!this._closed){this._closed=!0,this._binding.close();var t=this;Ct((function(){t.emit("close")}))}},Di.prototype._transform=function(e,t,n){var r,i=this._writableState,o=(i.ending||i.ended)&&(!e||i.length===e.length);if(null===!e&&!ht(e))return n(Error("invalid input"));o?r=Ci.Z_FINISH:(r=this._flushFlag,i.length>e.length||(this._flushFlag=this._opts.flush||Ci.Z_NO_FLUSH)),this._processChunk(e,r,n)},Di.prototype._processChunk=function(e,t,n){var r=e&&e.length,i=this._chunkSize-this._offset,o=0,a=this,s="function"==typeof n;if(!s){var l,u=[],c=0;this.on("error",(function(e){l=e}));do{var f=this._binding.writeSync(t,e,o,r,this._buffer,this._offset,i)}while(!this._hadError&&p(f[0],f[1]));if(this._hadError)throw l;var h=Te.concat(u,c);return this.close(),h}var d=this._binding.write(t,e,o,r,this._buffer,this._offset,i);function p(l,f){if(!a._hadError){var h=i-f;if(function(e,t){if(!e)throw Error(t)}(h>=0,"have should not go down"),h>0){var d=a._buffer.slice(a._offset,a._offset+h);a._offset+=h,s?a.push(d):(u.push(d),c+=d.length)}if(0!==f&&a._chunkSize>a._offset||(i=a._chunkSize,a._offset=0,a._buffer=new Te(a._chunkSize)),0===f){if(o+=r-l,r=l,!s)return!0;var g=a._binding.write(t,e,o,r,a._buffer,a._offset,a._chunkSize);return g.callback=p,void(g.buffer=e)}if(!s)return!1;n()}}d.buffer=e,d.callback=p},zt(Li,Di),zt(Ti,Di),zt(Mi,Di),zt(Pi,Di),zt(ji,Di),zt(Ri,Di),zt(Ni,Di);var Fi={codes:Ei,createDeflate:function(e){return new Li(e)},createInflate:function(e){return new Ti(e)},createDeflateRaw:function(e){return new ji(e)},createInflateRaw:function(e){return new Ri(e)},createGzip:function(e){return new Mi(e)},createGunzip:function(e){return new Pi(e)},createUnzip:function(e){return new Ni(e)},deflate:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Li(t),e,n)},deflateSync:function(e,t){return Oi(new Li(t),e)},gzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Mi(t),e,n)},gzipSync:function(e,t){return Oi(new Mi(t),e)},deflateRaw:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new ji(t),e,n)},deflateRawSync:function(e,t){return Oi(new ji(t),e)},unzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ni(t),e,n)},unzipSync:function(e,t){return Oi(new Ni(t),e)},inflate:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ti(t),e,n)},inflateSync:function(e,t){return Oi(new Ti(t),e)},gunzip:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Pi(t),e,n)},gunzipSync:function(e,t){return Oi(new Pi(t),e)},inflateRaw:function(e,t,n){return"function"==typeof t&&(n=t,t={}),Ai(new Ri(t),e,n)},inflateRawSync:function(e,t){return Oi(new Ri(t),e)},Deflate:Li,Inflate:Ti,Gzip:Mi,Gunzip:Pi,DeflateRaw:ji,InflateRaw:Ri,Unzip:Ni,Zlib:Di};function Ii(e,t,n){var r=(3&e)<<4|t>>4,i=(15&t)<<2|n>>6,o=63&n,a="";return a+=zi(63&e>>2),a+=zi(63&r),a+=zi(63&i),a+zi(63&o)}function zi(e){return 10>e?String.fromCharCode(48+e):26>(e-=10)?String.fromCharCode(65+e):26>(e-=26)?String.fromCharCode(97+e):0==(e-=26)?"-":1==e?"_":"?"}function Bi(e){var t=e.charCodeAt(0);return"_"===e?63:"-"===e?62:97>t?65>t?48>t?"?":t-48:t-55:t-61}function Ui(e){var t=Bi(e[0]),n=Bi(e[1]),r=Bi(e[2]);return[t<<2|n>>4&63,n<<4&240|r>>2&15,r<<6&192|63&Bi(e[3])]}function $i(e){return function(e){for(var t="",n=0;e.length>n;n+=3)t+=n+2==e.length?Ii(e.charCodeAt(n),e.charCodeAt(n+1),0):n+1==e.length?Ii(e.charCodeAt(n),0,0):Ii(e.charCodeAt(n),e.charCodeAt(n+1),e.charCodeAt(n+2));return t}(Fi.deflateRawSync(e,{level:9}).toString("binary"))}function Hi(e){return""+Fi.inflateRawSync(Te.from(function(e){var t="",n=0;for(n=0;e.length>n;n+=4){var r=Ui(e.substring(n,n+4));t+=String.fromCharCode(r[0]),t+=String.fromCharCode(r[1]),t+=String.fromCharCode(r[2])}return t}(e),"binary"))}var Wi={encodeuml:function(e){return $i("".concat("@startuml").concat((e.split("@startuml")[1]+"").split("@enduml")[0]||"").concat("@enduml"))},decodeuml:function(e){return Hi(e)}},qi=0;function Zi(e,t){return qi=e.length,new Promise((function(n){var r=[];e.forEach((function(e){r.push(function(e,t){return new Promise((function(n){var r=e.dataset.lang,i=r?JSON.parse(r):null,o="";if(i){if("boolean"==typeof i.codeblock&&i.codeblock||"string"==typeof i.codeblock&&"true"===i.codeblock.toLowerCase())return n(!1);i.align&&("center"===i.align?o="diagram-center":"right"===i.align&&(o="diagram-right"))}var a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&o?" ":"")+o,l=t.imageFormat;if("svg"!==l){var u=window&&window.location.protocol,c=("http:"===u||"https:"===u?"//":"https://")+t.umlWebSite,f="img"!==l?".".concat(l):"",h=Wi.encodeuml(a),d="".concat(c,"/").concat(l,"/").concat(h).concat(f);return e.parentNode.outerHTML='
"),n(!0)}var p="plantuml-"+Date.now()+"-"+Math.floor(1e4*Math.random());if("function"==typeof t.svgRender&&t.svgRender)t.svgRender(p,s,a,qi).then((function(t){e.parentNode.outerHTML='
').concat(t,"
"),n(!0)}));else if("undefined"!=typeof window&&window.fetch&&window.dispatchEvent){var g=window&&window.location.protocol,m=("http:"===g||"https:"===g?"//":"https://")+t.umlWebSite,v="img"!==l?".".concat(l):"",y=Wi.encodeuml(a),b="".concat(m,"/").concat(l,"/").concat(y).concat(v);window.fetch(b).then((function(e){if(e.ok)return e.text()})).then((function(t){e.parentNode.outerHTML='
').concat(t,"
"),n(!0)}))}}))}(e,t))})),Promise.all(r).then((function(){n(!0)}))}))}function Vi(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({umlWebSite:"www.plantuml.com/plantuml",imageFormat:"img",svgRender:null},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.plantuml.language-plantuml");return!!n.length&&Zi(n,this.config).then((function(){return e}))}}]}if("undefined"==typeof window)throw Error("The showdown railroad extension can only be used in browser environment!");var Gi=!1;function Yi(){return Gi}var Ki,Xi=!1;function Ji(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return t(!1);r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=k.getSrc("railroadCSS"),a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,l="railroad-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,function e(t,n){if(Yi()){var r=n.id,i=n.className,o=n.cssLink,a=window.eval(n.data).format(),s=n.element.ownerDocument;n.element.parentNode.outerHTML=o?'
'):'
'),a.addTo(s.getElementById(r)),t(!0)}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,id:l,className:s,data:a,cssLink:o})}))}function Qi(e){var t;return t=Yi(),"undefined"!=typeof window&&(t||Xi||(Xi=!0,k.loadStyleSheet("railroadCSS"),k.loadScript("railroad").then((function(){Gi=!0})))),new Promise((function(t){var n=[];e.forEach((function(e){n.push(Ji(e))})),Promise.all(n).then((function(){t(!0)}))}))}function eo(){return[{type:"output",filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.railroad.language-railroad");return!!n.length&&(this.config={cssLink:k.getSrc("railroadCSS")},Qi(n).then((function(){return e})))}}]}if("undefined"==typeof window)throw Error("The showdown sequence extension can only be used in browser environment!");if("undefined"!=typeof window&&window.Diagram&&(Ki=window.Diagram,window.Diagram.Signal))var to=window.Diagram;var no=["simple","hand"];function ro(){return!!to}void 0===to&&"undefined"!=typeof window&&(to=window.SequenceJS);var io=!1;function oo(e){var t=e.dataset.lang,n=t?JSON.parse(t):null,r="";if(n){if("boolean"==typeof n.codeblock&&n.codeblock||"string"==typeof n.codeblock&&"true"===n.codeblock.toLowerCase())return;n.align&&("center"===n.align?r="diagram-center":"right"===n.align&&(r="diagram-right"))}var i=function(){var e=ro();return"undefined"!=typeof window&&(e||io||(io=!0,k.loadStyleSheet("sequenceCSS"),k.loadScript("WebFont").then((function(){return k.loadScript("Snap")})).then((function(){return k.loadScript("underscore")})).then((function(){return!Ki&&window.Diagram&&(Ki=window.Diagram),k.loadScript("sequence")})).then((function(){to=window.Diagram,window.SequenceJS=to,Ki&&(window.Diagram=Ki)})))),e}(),o=k.getSrc("sequenceCSS"),a=e.textContent.trim(),s="js-sequence"+(r?" ":"")+r,l="sequence-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,o&&(e.className=e.className+(e.className?" ":"")+"css-sequence",e.dataset.css=o),!i&&"undefined"!=typeof window&&window.dispatchEvent?Promise.resolve(l).then((function(e){window.dispatchEvent(new CustomEvent("sequence",{detail:{id:e,className:s,data:a,langattr:t,cssLink:o}}))})):"undefined"!=typeof window&&window.dispatchEvent&&window.dispatchEvent(new CustomEvent("sequence",{detail:{id:l,className:s,data:a,langattr:t,cssLink:o}}))}function ao(){var e=new DOMParser;return"undefined"!=typeof window&&window.dispatchEvent&&window.addEventListener("sequence",(function(e){e.detail&&function e(t){if(ro()){var n=t.id,r=t.className,i=t.data,o=t.cssLink,a="hand",s=t.langattr;if(s){var l=JSON.parse(s);l&&l.theme&&-1!=no.indexOf(l.theme)&&(a=l.theme)}var u=window.document.getElementById(n);if(u)return u.parentNode.outerHTML=o?'
'):'
'),u=window.document.getElementById(n),void to.parse(i).drawSVG(u||n,{theme:a})}setTimeout((function(){e(t)}),50)}(e.detail)})),[{type:"output",filter:function(t){var n=e.parseFromString(t,"text/html"),r=void 0!==n.body?n.body:n,i=r.querySelectorAll("code.sequence.language-sequence");return i.length&&(this.config={cssLink:k.getSrc("sequenceCSS")}),function(e){return!!e.length&&(e.forEach((function(e){oo(e)})),!0)}(i)?r.innerHTML:t}}]}if("undefined"==typeof window)throw Error("The showdown wavedrom extension can only be used in browser environment!");if(void 0===so)var so=window.WaveDrom||void 0;var lo=0,uo=0;function co(){return!!so}var fo=!1;function ho(e){return new Promise((function(t){var n=e.dataset.lang,r=n?JSON.parse(n):null,i="";if(r){if("boolean"==typeof r.codeblock&&r.codeblock||"string"==typeof r.codeblock&&"true"===r.codeblock.toLowerCase())return;r.align&&("center"===r.align?i="diagram-center":"right"===r.align&&(i="diagram-right"))}var o=e.textContent.trim(),a=(e.classList.length>0?e.classList[0]:"")+(e.className&&i?" ":"")+i,s=uo;++uo,--lo||(uo=0);var l="WaveDrom_Display_";e.id=l+s,function e(t,n){if(co()){var r=n.index,i=n.id,o=n.data,a=n.element;a.parentNode.outerHTML=k.renderCacheElement(a.ownerDocument,i+r,n.className,(function(e){var t=window.eval("(".concat(o,")"));so.RenderWaveForm(r,t,i);var n=document.getElementById("WaveDrom_Display_"+r);if(e!=n)for(;n.childNodes.length;)e.appendChild(n.removeChild(n.childNodes[0]))})),t(!0)}else setTimeout((function(){e(t,n)}),50)}(t,{element:e,index:s,id:l,className:a,data:o})}))}function po(e,t){return function(e){var t=co();t||fo||(fo=!0,"undefined"!=typeof window&&k.loadScript({WaveDromSkin:e}).then((function(){return k.loadScript("WaveDrom")})).then((function(e){so=k.interopDefault(window[e])})))}(t),new Promise((function(t){var n=[];lo=e.length,e.forEach((function(e){n.push(ho(e))})),Promise.all(n).then((function(){t(!0)}))}))}function go(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({skin:"default"},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.wavedrom.language-wavedrom");return!!n.length&&po(n,this.config.skin).then((function(){return e}))}}]}function mo(){return[{type:"lang",filter:function(e,t){return e.replace(/^\[\^([\d\w]+)\]:\s*((\n+(\s{2,4}|\t).+)+)$/gm,(function(e,n,r,i,o){var a=t.makeHtml(r.replace(RegExp("^".concat(o),"gm"),""));return'
[').concat(n,"]:").concat(a,"
")}))}},{type:"lang",filter:function(e){return e.replace(/^\[\^([\d\w]+)\]:( |\n)((.+\n)*.+)$/gm,(function(e,t,n,r){return'[').concat(t,"]: ").concat(r,"")}))}},{type:"lang",filter:function(e){return e.replace(/\[\^([\d\w]+)\]/m,(function(e,t){return'[').concat(t,"]")}))}}]}function vo(){return[{type:"lang",filter:function(e,t){return e.replace(/(?:^|\n)(?: {0,3})(:::+)(?: *)([\S]+)(?:[ \t]*)([^\s][\S\t ]*)?\n([\s\S]*?)\n(?: {0,3})\1(?:[ \t]*)\n/g,(function(e,n,r,i,o){if(r){var a=r.split("-");a.length>1?a.forEach((function(e,t,n){t>0&&(n[t]=n[t-1]+"-"+e)})):a.unshift("container"),r=a.join(" ")}return o&&(o=t.makeHtml(o)),i=i?'

'.concat(i,"

"):"",'
').concat(i).concat(o,"
")}))}}]}if("undefined"==typeof window)throw Error("The showdown flowchart extension can only be used in browser environment!");if(void 0===yo)var yo=window.Raphael||void 0;if(void 0===bo)var bo=window.flowchart||void 0;function wo(){return!(void 0===yo||!yo||void 0===bo||!bo)}var _o=!1;function xo(e,t){return new Promise((function(n){var r=e.dataset.lang,i=r?JSON.parse(r):null,o="";if(i){if("boolean"==typeof i.codeblock&&i.codeblock||"string"==typeof i.codeblock&&"true"===i.codeblock.toLowerCase())return n(!1);i.align&&("center"===i.align?o="diagram-center":"right"===i.align&&(o="diagram-right"))}var a=e.textContent.trim(),s=(e.classList.length>0?e.classList[0]:"")+(e.className&&o?" ":"")+o,l="flowchart-"+Date.now()+"-"+Math.floor(1e4*Math.random());e.id=l,function e(t,n){if(wo()){var r=n.data,i=n.options;n.element.parentNode.outerHTML=k.renderCacheElement(n.element.ownerDocument,n.id,n.className,(function(e){bo.parse(r).drawSVG(e,i)})),t(!0)}else setTimeout((function(){e(t,n)}),50)}(n,{element:e,id:l,className:s,data:a,options:t})}))}function ko(e,t,n){var r;return r=wo(),"undefined"!=typeof window&&(r||_o||(_o=!0,k.loadScript("Raphael").then((function(e){return yo=k.interopDefault(window[e]),k.loadScript("flowchart")})).then((function(e){bo=k.interopDefault(window[e])})))),new Promise((function(r){var i=[];e.forEach((function(e){i.push(xo(e,n))})),t.forEach((function(e){i.push(xo(e,n))})),Promise.all(i).then((function(){r(!0)}))}))}function So(e){return[{type:"output",config:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({"line-width":3,maxWidth:3,"line-length":50,"text-margin":10,"font-size":14,font:"normal","font-family":"Helvetica","font-weight":"normal","font-color":"black","line-color":"black","element-color":"black",fill:"white","yes-text":"yes","no-text":"no","arrow-end":"block",scale:1,symbols:{start:{"font-color":"red","element-color":"green",fill:"yellow"},end:{class:"end-element"}},flowstate:{past:{fill:"#CCCCCC","font-size":12},current:{fill:"yellow","font-color":"red","font-weight":"bold"},future:{fill:"#FFFF99"},request:{fill:"blue"},invalid:{fill:"#444444"},approved:{fill:"#58C4A3","font-size":12,"yes-text":"APPROVED","no-text":"n/a"},rejected:{fill:"#C45879","font-size":12,"yes-text":"n/a","no-text":"REJECTED"}}},e)}(e),filter:function(e){var t=e.wrapper;if(!t)return!1;var n=t.querySelectorAll("code.flowchart.language-flowchart"),r=t.querySelectorAll("code.flow.language-flow");return!(!n.length&&!r.length)&&ko(n,r,this.config).then((function(){return e}))}}]}var Co=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i({flavor:"github"},e)},Eo=["github","ghost","vanilla","original","allon"],Ao=["default","forest","dark","neutral"],Oo=["excel","ggplot2","quartz","vox","dark"],Lo=["canvas","svg"],To=["svg","png","jpg"];return{showdown:l,converter:null,defaultOptions:{showdown:Co(),plantuml:{imageFormat:"svg"},mermaid:{theme:"default"},katex:{},vega:{theme:"vox"}},defaultExtensions:{},defaultAsyncExtensions:{},markdownDecodeFilter:function(e){return""},initDefaultOptions:function(){this.defaultOptions||(this.defaultOptions={showdown:{},plantuml:{},mermaid:{},katex:{},vega:{}})},setFlavor:function(e){this.showdown.setFlavor(e),this.converter&&this.converter.setFlavor(e)},addOptions:function(e){for(var t in e)"flavor"!==t&&(this.showdown.setOption(t,e[t]),this.converter&&this.converter.setOption(t,e[t]))},addExtension:function(e,t){if(this.removeExtension(e),"string"==typeof e)try{l.extension(e,t),this.converter&&this.converter.addExtension(e)}catch(e){}},removeExtension:function(e){if("string"==typeof e){if(this.converter){var t=null;try{t=l.extension(e)}catch(e){}if(!t)return;this.converter.removeExtension(t)}l.removeExtension(e)}},addAsyncExtension:function(e,t){if(this.removeAsyncExtension(e),"string"==typeof e)try{l.asyncExtension(e,t),this.converter&&this.converter.addAsyncExtension(e)}catch(e){}},removeAsyncExtension:function(e){if("string"==typeof e){if(this.converter){var t=null;try{t=l.asyncExtension(e)}catch(e){}if(!t)return;this.converter.removeAsyncExtension(t)}l.removeAsyncExtension(e)}},setCDN:function(e,t,n){"string"==typeof e&&e&&k.setCDN(e,t,n)},setShowdownFlavor:function(e){this.initDefaultOptions(),e&&(-1===Eo.indexOf(e)&&(e="github"),this.defaultOptions.showdown.flavor=e,this.setFlavor(e))},setShowdownOptions:function(e){return this.initDefaultOptions(),"object"===a(e)&&e||(e={}),this.defaultOptions.showdown=Object.assign(this.defaultOptions.showdown||{},e),this.setShowdownFlavor(this.defaultOptions.showdown.flavor),this.addOptions(this.defaultOptions.showdown),this.defaultOptions.showdown},setPlantumlOptions:function(e){this.initDefaultOptions(),"object"===a(e)&&e||(e={}),this.defaultOptions.plantuml=Object.assign(this.defaultOptions.plantuml||{},e);var t=this.defaultOptions.plantuml.imageFormat;return t&&-1===To.indexOf(t)&&(this.defaultOptions.plantuml.imageFormat="png"),this.converter&&this.addAsyncExtension("showdown-plantuml",Vi(this.defaultOptions.plantuml)),this.defaultOptions.plantuml},setMermaidOptions:function(e){this.initDefaultOptions(),"object"===a(e)&&e||(e={}),this.defaultOptions.mermaid=Object.assign(this.defaultOptions.mermaid||{},e);var t=this.defaultOptions.mermaid.theme;return t&&-1===Ao.indexOf(t)&&(this.defaultOptions.mermaid.theme="default"),this.converter&&this.addAsyncExtension("showdown-mermaid",ge(this.defaultOptions.mermaid)),this.defaultOptions.mermaid},setKatexOptions:function(e){return this.initDefaultOptions(),"object"===a(e)&&e||(e={}),this.defaultOptions.katex=Object.assign(this.defaultOptions.katex||{},e),this.converter&&this.addAsyncExtension("showdown-katex",ue(this.defaultOptions.katex)),this.defaultOptions.katex},setVegaOptions:function(e){this.initDefaultOptions(),"object"===a(e)&&e||(e={}),this.defaultOptions.vega=Object.assign(this.defaultOptions.vega||{},e);var t=this.defaultOptions.vega.theme;t&&-1===Oo.indexOf(t)&&(this.defaultOptions.vega.theme="vox");var n=this.defaultOptions.vega.renderer;return n&&-1===Lo.indexOf(n)&&(this.defaultOptions.vega.renderer="canvas"),this.converter&&this.addAsyncExtension("showdown-vega",D(this.defaultOptions.vega)),this.defaultOptions.vega},init:function(e){if(this.converter){var t={};if("object"===a(t="boolean"==typeof e&&e?{option:!0,extension:!0}:e)){if(t.hasOwnProperty("option")&&t.option){var n=Co(this.defaultOptions&&this.defaultOptions.showdown||{});this.addOptions(n)}t.hasOwnProperty("extension")&&t.extension&&(this.addAsyncExtension("showdown-plantuml",Vi(this.defaultOptions.plantuml)),this.addAsyncExtension("showdown-mermaid",ge(this.defaultOptions.mermaid)),this.addAsyncExtension("showdown-vega",D(this.defaultOptions.vega)))}}else{var r=Co(this.defaultOptions&&this.defaultOptions.showdown||{}),o=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=i({"showdown-toc":m,"showdown-align":F,"showdown-footnotes":mo,"showdown-container":vo,"showdown-sequence":ao},t),r=[];for(var o in n)n.hasOwnProperty(o)&&(l.extension(o,n[o]),r.push(o));return r}(this.defaultOptions,this.defaultExtensions),s=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e&&e.mermaid||{},r=e&&e.plantuml||{},o=e&&e.katex||{},a=e&&e.vega||{},s=i({"showdown-plantuml":Vi(r),"showdown-mermaid":ge(n),"showdown-katex":ue(o),"showdown-flowchart":So,"showdown-viz":T,"showdown-vega":D(a),"showdown-wavedrom":go,"showdown-railroad":eo},t),u=[];for(var c in s)s.hasOwnProperty(c)&&(l.asyncExtension(c,s[c]),u.push(c));return u}(this.defaultOptions,this.defaultAsyncExtensions);this.setFlavor(r.flavor),this.converter=new l.Converter({extensions:o}).initConvertExtObj(r.flavor,s),this.addOptions(r)}return this},makeHtml:function(e,t){var n="";if("object"===a(e)){if("string"==typeof e.content)if("string"==typeof e.type)switch(e.type){case"zip":n=this.zDecode(e.content);break;default:n=this.markdownDecodeFilter(e)||e.content}else n=e.content}else n=e;if(this.converter&&n){var r=function(e,t,n){var r=e.querySelector(t),i="";if(r)i=r.dataset.css;else{var o;try{o=l.extension(n)}catch(e){}if(!o)try{o=l.asyncExtension(n)}catch(e){}if(o)if(Array.isArray(o)){for(var s=0;o.length>s;++s)if(o[s].hasOwnProperty("config")&&o[s].config.hasOwnProperty("cssLink")){i=o[s].config.cssLink;break}}else"object"===a(o)&&o.hasOwnProperty("config")&&o.config.hasOwnProperty("cssLink")&&(i=o.config.cssLink)}return i};return this.converter.asyncMakeHtml(n,(function(e){var n=e.wrapper;return!!n&&new Promise((function(i){var o=r(n,".css-katex","showdown-katex"),a=r(n,".css-sequence","showdown-sequence"),s=r(n,".css-railroad","showdown-railroad");return e.cssTypes={hasKatex:!!o,hasSequence:!!a,hasRailroad:!!s,css:{katex:o,sequence:a,railroad:s}},"function"==typeof t&&t&&t(e.cssTypes),i(e)}))})).then((function(e){return n="
".concat(e,"
")}))}return Promise.reject(n?"Converter is invaild.":"Content is empty.")},zDecode:function(e){return""+Fi.inflateRawSync(Te.from(e,"base64"))},zEncode:function(e){return Fi.deflateRawSync(e,{level:9}).toString("base64")}}}))}).call(this,n("c8ba"))},cee4:function(e,t,n){"use strict";var r=n("c532"),i=n("1d2b"),o=n("0a06"),a=n("4a7b"),s=n("2444");function l(e){var t=new o(e),n=i(o.prototype.request,t);return r.extend(n,o.prototype,t),r.extend(n,t),n}var u=l(s);u.Axios=o,u.create=function(e){return l(a(u.defaults,e))},u.Cancel=n("7a77"),u.CancelToken=n("8df4"),u.isCancel=n("2e67"),u.all=function(e){return Promise.all(e)},u.spread=n("0df6"),e.exports=u,e.exports.default=u},d009:function(e,t,n){"use strict";var r=n("00ce"),i=n("7992"),o=n("64b0")(),a=n("2aa9"),s=n("0d25"),l=r("%Math.floor%");e.exports=function(e,t){if("function"!==typeof e)throw new s("`fn` is not a function");if("number"!==typeof t||t<0||t>4294967295||l(t)!==t)throw new s("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],r=!0,u=!0;if("length"in e&&a){var c=a(e,"length");c&&!c.configurable&&(r=!1),c&&!c.writable&&(u=!1)}return(r||u||!n)&&(o?i(e,"length",t,!0,!0):i(e,"length",t)),e}},d012:function(e,t,n){"use strict";e.exports={}},d039:function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},d066:function(e,t,n){"use strict";var r=n("da84"),i=n("1626"),o=function(e){return i(e)?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e]):r[e]&&r[e][t]}},d17b:function(e,t,n){e.exports=n("e372").Transform},d1e7:function(e,t,n){"use strict";var r={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,o=i&&!r.call({1:2},1);t.f=o?function(e){var t=i(this,e);return!!t&&t.enumerable}:r},d256:function(e,t,n){"use strict";var r=n("da84");e.exports=r.Promise},d28b:function(e,t,n){"use strict";var r=n("e065");r("iterator")},d2bb:function(e,t,n){"use strict";var r=n("7282"),i=n("861d"),o=n("1d80"),a=n("3bbe");e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{e=r(Object.prototype,"__proto__","set"),e(n,[]),t=n instanceof Array}catch(s){}return function(n,r){return o(n),a(r),i(n)?(t?e(n,r):n.__proto__=r,n):n}}():void 0)},d3b7:function(e,t,n){"use strict";var r=n("00ee"),i=n("cb2d"),o=n("b041");r||i(Object.prototype,"toString",o,{unsafe:!0})},d401:function(e,t,n){"use strict";var r=n("cb2d"),i=n("aa1f"),o=Error.prototype;o.toString!==i&&r(o,"toString",i)},d44e:function(e,t,n){"use strict";var r=n("9bf2").f,i=n("1a2d"),o=n("b622"),a=o("toStringTag");e.exports=function(e,t,n){e&&!n&&(e=e.prototype),e&&!i(e,a)&&r(e,a,{configurable:!0,value:t})}},d485:function(e,t,n){e.exports=o;var r=n("faa1").EventEmitter,i=n("3fb5");function o(){r.call(this)}i(o,r),o.Readable=n("e372"),o.Writable=n("2c63"),o.Duplex=n("0960"),o.Transform=n("d17b"),o.PassThrough=n("c2ae"),o.Stream=o,o.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(n.on("end",s),n.on("close",l));var a=!1;function s(){a||(a=!0,e.end())}function l(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function u(e){if(c(),0===r.listenerCount(this,"error"))throw e}function c(){n.removeListener("data",i),e.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",l),n.removeListener("error",u),e.removeListener("error",u),n.removeListener("end",c),n.removeListener("close",c),e.removeListener("close",c)}return n.on("error",u),e.on("error",u),n.on("end",c),n.on("close",c),e.on("close",c),e.emit("pipe",n),e}},d4ab:function(e,t,n){"use strict";var r=Object.prototype.toString;e.exports=function(e){var t=r.call(e),n="[object Arguments]"===t;return n||(n="[object Array]"!==t&&null!==e&&"object"===typeof e&&"number"===typeof e.length&&e.length>=0&&"[object Function]"===r.call(e.callee)),n}},d4c3:function(e,t,n){"use strict";var r=n("342f");e.exports=/ipad|iphone|ipod/i.test(r)&&"undefined"!=typeof Pebble},d5e0:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";var t={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},n={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};e.defineMode("xml",(function(r,i){var o,a,s=r.indentUnit,l={},u=i.htmlMode?t:n;for(var c in u)l[c]=u[c];for(var c in i)l[c]=i[c];function f(e,t){function n(n){return t.tokenize=n,n(e,t)}var r,i=e.next();return"<"==i?e.eat("!")?e.eat("[")?e.match("CDATA[")?n(p("atom","]]>")):null:e.match("--")?n(p("comment","--\x3e")):e.match("DOCTYPE",!0,!0)?(e.eatWhile(/[\w\._\-]/),n(g(1))):null:e.eat("?")?(e.eatWhile(/[\w\._\-]/),t.tokenize=p("meta","?>"),"meta"):(o=e.eat("/")?"closeTag":"openTag",t.tokenize=h,"tag bracket"):"&"==i?(r=e.eat("#")?e.eat("x")?e.eatWhile(/[a-fA-F\d]/)&&e.eat(";"):e.eatWhile(/[\d]/)&&e.eat(";"):e.eatWhile(/[\w\.\-:]/)&&e.eat(";"),r?"atom":"error"):(e.eatWhile(/[^&<]/),null)}function h(e,t){var n=e.next();if(">"==n||"/"==n&&e.eat(">"))return t.tokenize=f,o=">"==n?"endTag":"selfcloseTag","tag bracket";if("="==n)return o="equals",null;if("<"==n){t.tokenize=f,t.state=w,t.tagName=t.tagStart=null;var r=t.tokenize(e,t);return r?r+" tag error":"tag error"}return/[\'\"]/.test(n)?(t.tokenize=d(n),t.stringStartCol=e.column(),t.tokenize(e,t)):(e.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function d(e){var t=function(t,n){while(!t.eol())if(t.next()==e){n.tokenize=h;break}return"string"};return t.isInAttribute=!0,t}function p(e,t){return function(n,r){while(!n.eol()){if(n.match(t)){r.tokenize=f;break}n.next()}return e}}function g(e){return function(t,n){var r;while(null!=(r=t.next())){if("<"==r)return n.tokenize=g(e+1),n.tokenize(t,n);if(">"==r){if(1==e){n.tokenize=f;break}return n.tokenize=g(e-1),n.tokenize(t,n)}}return"meta"}}function m(e){return e&&e.toLowerCase()}function v(e,t,n){this.prev=e.context,this.tagName=t||"",this.indent=e.indented,this.startOfLine=n,(l.doNotIndent.hasOwnProperty(t)||e.context&&e.context.noIndent)&&(this.noIndent=!0)}function y(e){e.context&&(e.context=e.context.prev)}function b(e,t){var n;while(1){if(!e.context)return;if(n=e.context.tagName,!l.contextGrabbers.hasOwnProperty(m(n))||!l.contextGrabbers[m(n)].hasOwnProperty(m(t)))return;y(e)}}function w(e,t,n){return"openTag"==e?(n.tagStart=t.column(),_):"closeTag"==e?x:w}function _(e,t,n){return"word"==e?(n.tagName=t.current(),a="tag",C):l.allowMissingTagName&&"endTag"==e?(a="tag bracket",C(e,t,n)):(a="error",_)}function x(e,t,n){if("word"==e){var r=t.current();return n.context&&n.context.tagName!=r&&l.implicitlyClosed.hasOwnProperty(m(n.context.tagName))&&y(n),n.context&&n.context.tagName==r||!1===l.matchClosing?(a="tag",k):(a="tag error",S)}return l.allowMissingTagName&&"endTag"==e?(a="tag bracket",k(e,t,n)):(a="error",S)}function k(e,t,n){return"endTag"!=e?(a="error",k):(y(n),w)}function S(e,t,n){return a="error",k(e,t,n)}function C(e,t,n){if("word"==e)return a="attribute",E;if("endTag"==e||"selfcloseTag"==e){var r=n.tagName,i=n.tagStart;return n.tagName=n.tagStart=null,"selfcloseTag"==e||l.autoSelfClosers.hasOwnProperty(m(r))?b(n,r):(b(n,r),n.context=new v(n,r,i==n.indented)),w}return a="error",C}function E(e,t,n){return"equals"==e?A:(l.allowMissing||(a="error"),C(e,t,n))}function A(e,t,n){return"string"==e?O:"word"==e&&l.allowUnquoted?(a="string",C):(a="error",C(e,t,n))}function O(e,t,n){return"string"==e?O:C(e,t,n)}return f.isInText=!0,{startState:function(e){var t={tokenize:f,state:w,indented:e||0,tagName:null,tagStart:null,context:null};return null!=e&&(t.baseIndent=e),t},token:function(e,t){if(!t.tagName&&e.sol()&&(t.indented=e.indentation()),e.eatSpace())return null;o=null;var n=t.tokenize(e,t);return(n||o)&&"comment"!=n&&(a=null,t.state=t.state(o||n,e,t),a&&(n="error"==a?n+" error":a)),n},indent:function(t,n,r){var i=t.context;if(t.tokenize.isInAttribute)return t.tagStart==t.indented?t.stringStartCol+1:t.indented+s;if(i&&i.noIndent)return e.Pass;if(t.tokenize!=h&&t.tokenize!=f)return r?r.match(/^(\s*)/)[0].length:0;if(t.tagName)return!1!==l.multilineTagIndentPastTag?t.tagStart+t.tagName.length+2:t.tagStart+s*(l.multilineTagIndentFactor||1);if(l.alignCDATA&&/$/,blockCommentStart:"\x3c!--",blockCommentEnd:"--\x3e",configuration:l.htmlMode?"html":"xml",helperType:l.htmlMode?"html":"xml",skipAttribute:function(e){e.state==A&&(e.state=C)},xmlCurrentTag:function(e){return e.tagName?{name:e.tagName,close:"closeTag"==e.type}:null},xmlCurrentContext:function(e){for(var t=[],n=e.context;n;n=n.prev)t.push(n.tagName);return t.reverse()}}})),e.defineMIME("text/xml","xml"),e.defineMIME("application/xml","xml"),e.mimeModes.hasOwnProperty("text/html")||e.defineMIME("text/html",{name:"xml",htmlMode:!0})}))},d60a:function(e,t){e.exports=function(e){return e&&"object"===typeof e&&"function"===typeof e.copy&&"function"===typeof e.fill&&"function"===typeof e.readUInt8}},d6c7:function(e,t,n){"use strict";var r=Array.prototype.slice,i=n("d4ab"),o=Object.keys,a=o?function(e){return o(e)}:n("b189"),s=Object.keys;a.shim=function(){if(Object.keys){var e=function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2);e||(Object.keys=function(e){return i(e)?s(r.call(e)):s(e)})}else Object.keys=a;return Object.keys||a},e.exports=a},d6d6:function(e,t,n){"use strict";var r=TypeError;e.exports=function(e,t){if(e1?arguments[1]:void 0)}})},d925:function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},d9b5:function(e,t,n){"use strict";var r=n("d066"),i=n("1626"),o=n("3a9b"),a=n("fdbf"),s=Object;e.exports=a?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return i(t)&&o(t.prototype,s(e))}},d9e2:function(e,t,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("2ba4"),a=n("e5cb"),s="WebAssembly",l=i[s],u=7!==new Error("e",{cause:7}).cause,c=function(e,t){var n={};n[e]=a(e,t,u),r({global:!0,constructor:!0,arity:1,forced:u},n)},f=function(e,t){if(l&&l[e]){var n={};n[e]=a(s+"."+e,t,u),r({target:s,stat:!0,constructor:!0,arity:1,forced:u},n)}};c("Error",(function(e){return function(t){return o(e,this,arguments)}})),c("EvalError",(function(e){return function(t){return o(e,this,arguments)}})),c("RangeError",(function(e){return function(t){return o(e,this,arguments)}})),c("ReferenceError",(function(e){return function(t){return o(e,this,arguments)}})),c("SyntaxError",(function(e){return function(t){return o(e,this,arguments)}})),c("TypeError",(function(e){return function(t){return o(e,this,arguments)}})),c("URIError",(function(e){return function(t){return o(e,this,arguments)}})),f("CompileError",(function(e){return function(t){return o(e,this,arguments)}})),f("LinkError",(function(e){return function(t){return o(e,this,arguments)}})),f("RuntimeError",(function(e){return function(t){return o(e,this,arguments)}}))},d9f5:function(e,t,n){"use strict";var r=n("23e7"),i=n("da84"),o=n("c65b"),a=n("e330"),s=n("c430"),l=n("83ab"),u=n("04f8"),c=n("d039"),f=n("1a2d"),h=n("3a9b"),d=n("825a"),p=n("fc6a"),g=n("a04b"),m=n("577e"),v=n("5c6c"),y=n("7c73"),b=n("df75"),w=n("241c"),_=n("057f"),x=n("7418"),k=n("06cf"),S=n("9bf2"),C=n("37e8"),E=n("d1e7"),A=n("cb2d"),O=n("edd0"),L=n("5692"),T=n("f772"),M=n("d012"),P=n("90e3"),j=n("b622"),R=n("e538"),N=n("e065"),D=n("57b9"),F=n("d44e"),I=n("69f3"),z=n("b727").forEach,B=T("hidden"),U="Symbol",$="prototype",H=I.set,W=I.getterFor(U),q=Object[$],Z=i.Symbol,V=Z&&Z[$],G=i.RangeError,Y=i.TypeError,K=i.QObject,X=k.f,J=S.f,Q=_.f,ee=E.f,te=a([].push),ne=L("symbols"),re=L("op-symbols"),ie=L("wks"),oe=!K||!K[$]||!K[$].findChild,ae=function(e,t,n){var r=X(q,t);r&&delete q[t],J(e,t,n),r&&e!==q&&J(q,t,r)},se=l&&c((function(){return 7!==y(J({},"a",{get:function(){return J(this,"a",{value:7}).a}})).a}))?ae:J,le=function(e,t){var n=ne[e]=y(V);return H(n,{type:U,tag:e,description:t}),l||(n.description=t),n},ue=function(e,t,n){e===q&&ue(re,t,n),d(e);var r=g(t);return d(n),f(ne,r)?(n.enumerable?(f(e,B)&&e[B][r]&&(e[B][r]=!1),n=y(n,{enumerable:v(0,!1)})):(f(e,B)||J(e,B,v(1,y(null))),e[B][r]=!0),se(e,r,n)):J(e,r,n)},ce=function(e,t){d(e);var n=p(t),r=b(n).concat(ge(n));return z(r,(function(t){l&&!o(he,n,t)||ue(e,t,n[t])})),e},fe=function(e,t){return void 0===t?y(e):ce(y(e),t)},he=function(e){var t=g(e),n=o(ee,this,t);return!(this===q&&f(ne,t)&&!f(re,t))&&(!(n||!f(this,t)||!f(ne,t)||f(this,B)&&this[B][t])||n)},de=function(e,t){var n=p(e),r=g(t);if(n!==q||!f(ne,r)||f(re,r)){var i=X(n,r);return!i||!f(ne,r)||f(n,B)&&n[B][r]||(i.enumerable=!0),i}},pe=function(e){var t=Q(p(e)),n=[];return z(t,(function(e){f(ne,e)||f(M,e)||te(n,e)})),n},ge=function(e){var t=e===q,n=Q(t?re:p(e)),r=[];return z(n,(function(e){!f(ne,e)||t&&!f(q,e)||te(r,ne[e])})),r};u||(Z=function(){if(h(V,this))throw new Y("Symbol is not a constructor");var e=arguments.length&&void 0!==arguments[0]?m(arguments[0]):void 0,t=P(e),n=function(e){var r=void 0===this?i:this;r===q&&o(n,re,e),f(r,B)&&f(r[B],t)&&(r[B][t]=!1);var a=v(1,e);try{se(r,t,a)}catch(s){if(!(s instanceof G))throw s;ae(r,t,a)}};return l&&oe&&se(q,t,{configurable:!0,set:n}),le(t,e)},V=Z[$],A(V,"toString",(function(){return W(this).tag})),A(Z,"withoutSetter",(function(e){return le(P(e),e)})),E.f=he,S.f=ue,C.f=ce,k.f=de,w.f=_.f=pe,x.f=ge,R.f=function(e){return le(j(e),e)},l&&(O(V,"description",{configurable:!0,get:function(){return W(this).description}}),s||A(q,"propertyIsEnumerable",he,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!u,sham:!u},{Symbol:Z}),z(b(ie),(function(e){N(e)})),r({target:U,stat:!0,forced:!u},{useSetter:function(){oe=!0},useSimple:function(){oe=!1}}),r({target:"Object",stat:!0,forced:!u,sham:!l},{create:fe,defineProperty:ue,defineProperties:ce,getOwnPropertyDescriptor:de}),r({target:"Object",stat:!0,forced:!u},{getOwnPropertyNames:pe}),D(),F(Z,U),M[B]=!0},da84:function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math===Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()}).call(this,n("c8ba"))},dbb4:function(e,t,n){"use strict";var r=n("23e7"),i=n("83ab"),o=n("56ef"),a=n("fc6a"),s=n("06cf"),l=n("8418");r({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(e){var t,n,r=a(e),i=s.f,u=o(r),c={},f=0;while(u.length>f)n=i(r,t=u[f++]),void 0!==n&&l(c,t,n);return c}})},dc14:function(e,t,n){"use strict";(function(t,r){var i=n("966d");function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){D(t,e)}}e.exports=b;var a,s=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?setImmediate:i.nextTick;b.WritableState=y;var l=Object.create(n("3a7c"));l.inherits=n("3fb5");var u={deprecate:n("b7d1")},c=n("429b"),f=n("8707").Buffer,h=("undefined"!==typeof r?r:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};function d(e){return f.from(e)}function p(e){return f.isBuffer(e)||e instanceof h}var g,m=n("4681");function v(){}function y(e,t){a=a||n("b19a"),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,s=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var u=!1===e.decodeStrings;this.decodeStrings=!u,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){A(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function b(e){if(a=a||n("b19a"),!g.call(b,this)&&!(this instanceof a))return new b(e);this._writableState=new y(e,this),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),c.call(this)}function w(e,t){var n=new Error("write after end");e.emit("error",n),i.nextTick(t,n)}function _(e,t,n,r){var o=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"===typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),i.nextTick(r,a),o=!1),o}function x(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=f.from(t,n)),t}function k(e,t,n,r,i,o){if(!n){var a=x(t,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var l=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"===typeof e?(n=e,e=null,t=null):"function"===typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||N(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n("4362"),n("c8ba"))},dc4a:function(e,t,n){"use strict";var r=n("59ed"),i=n("7234");e.exports=function(e,t){var n=e[t];return i(n)?void 0:r(n)}},dc99:function(e,t,n){"use strict";e.exports=RangeError},dcc3:function(e,t,n){"use strict";var r=n("ae93").IteratorPrototype,i=n("7c73"),o=n("5c6c"),a=n("d44e"),s=n("3f8c"),l=function(){return this};e.exports=function(e,t,n,u){var c=t+" Iterator";return e.prototype=i(r,{next:o(+!u,n)}),a(e,c,!1,!0),s[c]=l,e}},dd40:function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},ddb0:function(e,t,n){"use strict";var r=n("da84"),i=n("fdbc"),o=n("785a"),a=n("e260"),s=n("9112"),l=n("d44e"),u=n("b622"),c=u("iterator"),f=a.values,h=function(e,t){if(e){if(e[c]!==f)try{s(e,c,f)}catch(r){e[c]=f}if(l(e,t,!0),i[t])for(var n in a)if(e[n]!==a[n])try{s(e,n,a[n])}catch(r){e[n]=a[n]}}};for(var d in i)h(r[d]&&r[d].prototype,d);h(o,"DOMTokenList")},df75:function(e,t,n){"use strict";var r=n("ca84"),i=n("7839");e.exports=Object.keys||function(e){return r(e,i)}},df7c:function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e){"string"!==typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}function i(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!r;o--){var a=o>=0?arguments[o]:e.cwd();if("string"!==typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,r="/"===a.charAt(0))}return t=n(i(t.split("/"),(function(e){return!!e})),!r).join("/"),(r?"/":"")+t||"."},t.normalize=function(e){var r=t.isAbsolute(e),a="/"===o(e,-1);return e=n(i(e.split("/"),(function(e){return!!e})),!r).join("/"),e||r||(e="."),e&&a&&(e+="/"),(r?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(i(e,(function(e,t){if("string"!==typeof e)throw new TypeError("Arguments to path.join must be strings");return e})).join("/"))},t.relative=function(e,n){function r(e){for(var t=0;t=0;n--)if(""!==e[n])break;return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),a=Math.min(i.length,o.length),s=a,l=0;l=1;--o)if(t=e.charCodeAt(o),47===t){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=r(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!==typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,a=e.length-1;a>=0;--a){var s=e.charCodeAt(a);if(47!==s)-1===r&&(i=!1,r=a+1),46===s?-1===t?t=a:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=a+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var o="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n("4362"))},e01a:function(e,t,n){"use strict";var r=n("23e7"),i=n("83ab"),o=n("da84"),a=n("e330"),s=n("1a2d"),l=n("1626"),u=n("3a9b"),c=n("577e"),f=n("edd0"),h=n("e893"),d=o.Symbol,p=d&&d.prototype;if(i&&l(d)&&(!("description"in p)||void 0!==d().description)){var g={},m=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:c(arguments[0]),t=u(p,this)?new d(e):void 0===e?d():d(e);return""===e&&(g[t]=!0),t};h(m,d),m.prototype=p,p.constructor=m;var v="Symbol(description detection)"===String(d("description detection")),y=a(p.valueOf),b=a(p.toString),w=/^Symbol\((.*)\)[^)]+$/,_=a("".replace),x=a("".slice);f(p,"description",{configurable:!0,get:function(){var e=y(this);if(s(g,e))return"";var t=b(e),n=v?x(t,7,-1):_(t,w,"$1");return""===n?void 0:n}}),r({global:!0,constructor:!0,forced:!0},{Symbol:m})}},e065:function(e,t,n){"use strict";var r=n("428f"),i=n("1a2d"),o=n("e538"),a=n("9bf2").f;e.exports=function(e){var t=r.Symbol||(r.Symbol={});i(t,e)||a(t,e,{value:o.f(e)})}},e163:function(e,t,n){"use strict";var r=n("1a2d"),i=n("1626"),o=n("7b0b"),a=n("f772"),s=n("e177"),l=a("IE_PROTO"),u=Object,c=u.prototype;e.exports=s?u.getPrototypeOf:function(e){var t=o(e);if(r(t,l))return t[l];var n=t.constructor;return i(n)&&t instanceof n?n.prototype:t instanceof u?c:null}},e177:function(e,t,n){"use strict";var r=n("d039");e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},e260:function(e,t,n){"use strict";var r=n("fc6a"),i=n("44d2"),o=n("3f8c"),a=n("69f3"),s=n("9bf2").f,l=n("c6d2"),u=n("4754"),c=n("c430"),f=n("83ab"),h="Array Iterator",d=a.set,p=a.getterFor(h);e.exports=l(Array,"Array",(function(e,t){d(this,{type:h,target:r(e),index:0,kind:t})}),(function(){var e=p(this),t=e.target,n=e.index++;if(!t||n>=t.length)return e.target=void 0,u(void 0,!0);switch(e.kind){case"keys":return u(n,!1);case"values":return u(t[n],!1)}return u([n,t[n]],!1)}),"values");var g=o.Arguments=o.Array;if(i("keys"),i("values"),i("entries"),!c&&f&&"values"!==g.name)try{s(g,"name",{value:"values"})}catch(m){}},e267:function(e,t,n){"use strict";var r=n("e330"),i=n("e8b5"),o=n("1626"),a=n("c6b6"),s=n("577e"),l=r([].push);e.exports=function(e){if(o(e))return e;if(i(e)){for(var t=e.length,n=[],r=0;ry&&h(r,arguments[y]),r}));if(S.prototype=x,"Error"!==w?s?s(S,k):l(S,k,{name:!0}):p&&v in _&&(u(S,_,v),u(S,_,"prepareStackTrace")),l(S,_),!g)try{x.name!==w&&o(x,"name",w),x.constructor=S}catch(C){}return S}}},e667:function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},e683:function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},e6cf:function(e,t,n){"use strict";n("5e7e"),n("14e5"),n("cc98"),n("3529"),n("f22b"),n("7149")},e893:function(e,t,n){"use strict";var r=n("1a2d"),i=n("56ef"),o=n("06cf"),a=n("9bf2");e.exports=function(e,t,n){for(var s=i(t),l=a.f,u=o.f,c=0;c>>1:e>>>1;t[n]=e}return t}var i=r();function o(e,t,n,r){var o=i,a=r+n;e^=-1;for(var s=r;s>>8^o[255&(e^t[s])];return-1^e}e.exports=o},efec:function(e,t,n){"use strict";var r=n("1a2d"),i=n("cb2d"),o=n("51eb"),a=n("b622"),s=a("toPrimitive"),l=Date.prototype;r(l,s)||i(l,s,o)},f040:function(e,t,n){(function(e){e(n("56b3"))})((function(e){"use strict";e.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 t=0;t-1&&t.substring(i+1,t.length);if(o)return e.findModeByExtension(o)},e.findModeByName=function(t){t=t.toLowerCase();for(var n=0;n * @license MIT - */function i(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);i=0;u--)if(c[u]!==f[u])return!1;for(u=c.length-1;u>=0;u--)if(s=c[u],!w(e[s],t[s],n,r))return!1;return!0}function k(e,t,n){w(e,t,!0)&&y(e,t,n,"notDeepStrictEqual",k)}function S(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(n){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function C(e){var t;try{e()}catch(n){t=n}return t}function E(e,t,n,r){var i;if("function"!==typeof t)throw new TypeError('"block" argument must be a function');"string"===typeof n&&(r=n,n=null),i=C(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!i&&y(i,n,"Missing expected exception"+r);var o="string"===typeof r,s=!e&&a.isError(i),l=!e&&i&&!n;if((s&&o&&S(i,n)||l)&&y(i,n,"Got unwanted exception"+r),e&&i&&n&&!S(i,n)||!e&&i)throw i}function A(e,t){e||y(e,!0,t,"==",A)}h.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=v(this),this.generatedMessage=!0);var t=e.stackStartFunction||y;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,i=p(t),o=r.indexOf("\n"+i);if(o>=0){var a=r.indexOf("\n",o+1);r=r.substring(a+1)}this.stack=r}}},a.inherits(h.AssertionError,Error),h.fail=y,h.ok=b,h.equal=function(e,t,n){e!=t&&y(e,t,n,"==",h.equal)},h.notEqual=function(e,t,n){e==t&&y(e,t,n,"!=",h.notEqual)},h.deepEqual=function(e,t,n){w(e,t,!1)||y(e,t,n,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,n){w(e,t,!0)||y(e,t,n,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,n){w(e,t,!1)&&y(e,t,n,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=k,h.strictEqual=function(e,t,n){e!==t&&y(e,t,n,"===",h.strictEqual)},h.notStrictEqual=function(e,t,n){e===t&&y(e,t,n,"!==",h.notStrictEqual)},h.throws=function(e,t,n){E(!0,e,t,n)},h.doesNotThrow=function(e,t,n){E(!1,e,t,n)},h.ifError=function(e){if(e)throw e},h.strict=r(A,h,{equal:h.strictEqual,deepEqual:h.deepStrictEqual,notEqual:h.notStrictEqual,notDeepEqual:h.notDeepStrictEqual}),h.strict.strict=h.strict;var L=Object.keys||function(e){var t=[];for(var n in e)s.call(e,n)&&t.push(n);return t}}).call(this,n("c8ba"))},f6a7:function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},f742:function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},f772:function(e,t,n){var r=n("5692"),i=n("90e3"),o=r("keys");e.exports=function(e){return o[e]||(o[e]=i(e))}},f810:function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},f97c:function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},f9a6:function(e,t,n){var r=n("e6fd"),i=n("6c01"),o=n("0fc5"),a=o("toStringTag"),s="Arguments"==i(function(){return arguments}()),l=function(e,t){try{return e[t]}catch(n){}};e.exports=r?i:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=l(t=Object(e),a))?n:s?i(t):"Object"==(r=i(t))&&"function"==typeof t.callee?"Arguments":r}},faa1:function(e,t,n){"use strict";var r,i="object"===typeof Reflect?Reflect:null,o=i&&"function"===typeof i.apply?i.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};function a(e){console&&console.warn&&console.warn(e)}r=i&&"function"===typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!==e};function l(){l.init.call(this)}e.exports=l,e.exports.once=w,l.EventEmitter=l,l.prototype._events=void 0,l.prototype._eventsCount=0,l.prototype._maxListeners=void 0;var u=10;function c(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function f(e){return void 0===e._maxListeners?l.defaultMaxListeners:e._maxListeners}function h(e,t,n,r){var i,o,s;if(c(n),o=e._events,void 0===o?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),s=o[t]),void 0===s)s=o[t]=n,++e._eventsCount;else if("function"===typeof s?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),i=f(e),i>0&&s.length>i&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,a(l)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=d.bind(r);return i.listener=n,r.wrapFn=i,i}function g(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"===typeof i?n?[i.listener||i]:[i]:n?b(i):v(i,i.length)}function m(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"===typeof n)return 1;if(void 0!==n)return n.length}return 0}function v(e,t){for(var n=new Array(t),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var l=i[e];if(void 0===l)return!1;if("function"===typeof l)o(l,this,t);else{var u=l.length,c=v(l,u);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():y(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,a||t)}return this},l.prototype.off=l.prototype.removeListener,l.prototype.removeAllListeners=function(e){var t,n,r;if(n=this._events,void 0===n)return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r=0;r--)this.removeListener(e,t[r]);return this},l.prototype.listeners=function(e){return g(this,e,!0)},l.prototype.rawListeners=function(e){return g(this,e,!1)},l.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},l.prototype.listenerCount=m,l.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},fb6a:function(e,t,n){"use strict";var r=n("23e7"),i=n("861d"),o=n("e8b5"),a=n("23cb"),s=n("50c4"),l=n("fc6a"),u=n("8418"),c=n("b622"),f=n("1dde"),h=n("ae40"),d=f("slice"),p=h("slice",{ACCESSORS:!0,0:0,1:2}),g=c("species"),m=[].slice,v=Math.max;r({target:"Array",proto:!0,forced:!d||!p},{slice:function(e,t){var n,r,c,f=l(this),h=s(f.length),d=a(e,h),p=a(void 0===t?h:t,h);if(o(f)&&(n=f.constructor,"function"!=typeof n||n!==Array&&!o(n.prototype)?i(n)&&(n=n[g],null===n&&(n=void 0)):n=void 0,n===Array||void 0===n))return m.call(f,d,p);for(r=new(void 0===n?Array:n)(v(p-d,0)),c=0;dl)r(s,n=t[l++])&&(~o(u,n)||u.push(n));return u}},fc6a:function(e,t,n){var r=n("44ad"),i=n("1d80");e.exports=function(e){return r(i(e))}},fc9e:function(e,t,n){"use strict";var r=n("1274");e.exports=r.isStandardBrowserEnv()?function(){return{write:function(e,t,n,i,o,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(i)&&s.push("path="+i),r.isString(o)&&s.push("domain="+o),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},fdbc:function(e,t){e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},fdbf:function(e,t,n){var r=n("4930");e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},fea9:function(e,t,n){var r=n("da84");e.exports=r.Promise},ffd6:function(e,t,n){var r=n("3729"),i=n("1310"),o="[object Symbol]";function a(e){return"symbol"==typeof e||i(e)&&r(e)==o}e.exports=a}}]); + */function i(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,i=0,o=Math.min(n,r);i=0;u--)if(c[u]!==f[u])return!1;for(u=c.length-1;u>=0;u--)if(s=c[u],!w(e[s],t[s],n,r))return!1;return!0}function k(e,t,n){w(e,t,!0)&&y(e,t,n,"notDeepStrictEqual",k)}function S(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(n){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function C(e){var t;try{e()}catch(n){t=n}return t}function E(e,t,n,r){var i;if("function"!==typeof t)throw new TypeError('"block" argument must be a function');"string"===typeof n&&(r=n,n=null),i=C(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!i&&y(i,n,"Missing expected exception"+r);var o="string"===typeof r,s=!e&&a.isError(i),l=!e&&i&&!n;if((s&&o&&S(i,n)||l)&&y(i,n,"Got unwanted exception"+r),e&&i&&n&&!S(i,n)||!e&&i)throw i}function A(e,t){e||y(e,!0,t,"==",A)}h.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=v(this),this.generatedMessage=!0);var t=e.stackStartFunction||y;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var n=new Error;if(n.stack){var r=n.stack,i=p(t),o=r.indexOf("\n"+i);if(o>=0){var a=r.indexOf("\n",o+1);r=r.substring(a+1)}this.stack=r}}},a.inherits(h.AssertionError,Error),h.fail=y,h.ok=b,h.equal=function(e,t,n){e!=t&&y(e,t,n,"==",h.equal)},h.notEqual=function(e,t,n){e==t&&y(e,t,n,"!=",h.notEqual)},h.deepEqual=function(e,t,n){w(e,t,!1)||y(e,t,n,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,n){w(e,t,!0)||y(e,t,n,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,n){w(e,t,!1)&&y(e,t,n,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=k,h.strictEqual=function(e,t,n){e!==t&&y(e,t,n,"===",h.strictEqual)},h.notStrictEqual=function(e,t,n){e===t&&y(e,t,n,"!==",h.notStrictEqual)},h.throws=function(e,t,n){E(!0,e,t,n)},h.doesNotThrow=function(e,t,n){E(!1,e,t,n)},h.ifError=function(e){if(e)throw e},h.strict=r(A,h,{equal:h.strictEqual,deepEqual:h.deepStrictEqual,notEqual:h.notStrictEqual,notDeepEqual:h.notDeepStrictEqual}),h.strict.strict=h.strict;var O=Object.keys||function(e){var t=[];for(var n in e)s.call(e,n)&&t.push(n);return t}}).call(this,n("c8ba"))},f6b4:function(e,t,n){"use strict";var r=n("c532");function i(){this.handlers=[]}i.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},i.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},i.prototype.forEach=function(e){r.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=i},f772:function(e,t,n){"use strict";var r=n("5692"),i=n("90e3"),o=r("keys");e.exports=function(e){return o[e]||(o[e]=i(e))}},faa1:function(e,t,n){"use strict";var r,i="object"===typeof Reflect?Reflect:null,o=i&&"function"===typeof i.apply?i.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};function a(e){console&&console.warn&&console.warn(e)}r=i&&"function"===typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!==e};function l(){l.init.call(this)}e.exports=l,e.exports.once=w,l.EventEmitter=l,l.prototype._events=void 0,l.prototype._eventsCount=0,l.prototype._maxListeners=void 0;var u=10;function c(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function f(e){return void 0===e._maxListeners?l.defaultMaxListeners:e._maxListeners}function h(e,t,n,r){var i,o,s;if(c(n),o=e._events,void 0===o?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),s=o[t]),void 0===s)s=o[t]=n,++e._eventsCount;else if("function"===typeof s?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),i=f(e),i>0&&s.length>i&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,a(l)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=d.bind(r);return i.listener=n,r.wrapFn=i,i}function g(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"===typeof i?n?[i.listener||i]:[i]:n?b(i):v(i,i.length)}function m(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"===typeof n)return 1;if(void 0!==n)return n.length}return 0}function v(e,t){for(var n=new Array(t),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var l=i[e];if(void 0===l)return!1;if("function"===typeof l)o(l,this,t);else{var u=l.length,c=v(l,u);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():y(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,a||t)}return this},l.prototype.off=l.prototype.removeListener,l.prototype.removeAllListeners=function(e){var t,n,r;if(n=this._events,void 0===n)return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r=0;r--)this.removeListener(e,t[r]);return this},l.prototype.listeners=function(e){return g(this,e,!0)},l.prototype.rawListeners=function(e){return g(this,e,!1)},l.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},l.prototype.listenerCount=m,l.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},fb6a:function(e,t,n){"use strict";var r=n("23e7"),i=n("e8b5"),o=n("68ee"),a=n("861d"),s=n("23cb"),l=n("07fa"),u=n("fc6a"),c=n("8418"),f=n("b622"),h=n("1dde"),d=n("f36a"),p=h("slice"),g=f("species"),m=Array,v=Math.max;r({target:"Array",proto:!0,forced:!p},{slice:function(e,t){var n,r,f,h=u(this),p=l(h),y=s(e,p),b=s(void 0===t?p:t,p);if(i(h)&&(n=h.constructor,o(n)&&(n===m||i(n.prototype))?n=void 0:a(n)&&(n=n[g],null===n&&(n=void 0)),n===m||void 0===n))return d(h,y,b);for(r=new(void 0===n?m:n)(v(b-y,0)),f=0;y' of an opening\n * tag is typed.\n * `dontCloseTags` (default is empty tags for HTML, none for XML)\n * An array of tag names that should not be autoclosed.\n * `indentTags` (default is block tags for HTML, none for XML)\n * An array of tag names that should, when opened, cause a\n * blank line to be added inside the tag, and the blank line and\n * closing line to be indented.\n * `emptyTags` (default is none)\n * An array of XML tag names that should be autoclosed with '/>'.\n *\n * See demos/closetag.html for a usage example.\n */\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"), require(\"../fold/xml-fold\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\", \"../fold/xml-fold\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n CodeMirror.defineOption(\"autoCloseTags\", false, function(cm, val, old) {\n if (old != CodeMirror.Init && old)\n cm.removeKeyMap(\"autoCloseTags\");\n if (!val) return;\n var map = {name: \"autoCloseTags\"};\n if (typeof val != \"object\" || val.whenClosing !== false)\n map[\"'/'\"] = function(cm) { return autoCloseSlash(cm); };\n if (typeof val != \"object\" || val.whenOpening !== false)\n map[\"'>'\"] = function(cm) { return autoCloseGT(cm); };\n cm.addKeyMap(map);\n });\n\n var htmlDontClose = [\"area\", \"base\", \"br\", \"col\", \"command\", \"embed\", \"hr\", \"img\", \"input\", \"keygen\", \"link\", \"meta\", \"param\",\n \"source\", \"track\", \"wbr\"];\n var htmlIndent = [\"applet\", \"blockquote\", \"body\", \"button\", \"div\", \"dl\", \"fieldset\", \"form\", \"frameset\", \"h1\", \"h2\", \"h3\", \"h4\",\n \"h5\", \"h6\", \"head\", \"html\", \"iframe\", \"layer\", \"legend\", \"object\", \"ol\", \"p\", \"select\", \"table\", \"ul\"];\n\n function autoCloseGT(cm) {\n if (cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n var ranges = cm.listSelections(), replacements = [];\n var opt = cm.getOption(\"autoCloseTags\");\n for (var i = 0; i < ranges.length; i++) {\n if (!ranges[i].empty()) return CodeMirror.Pass;\n var pos = ranges[i].head, tok = cm.getTokenAt(pos);\n var inner = CodeMirror.innerMode(cm.getMode(), tok.state), state = inner.state;\n var tagInfo = inner.mode.xmlCurrentTag && inner.mode.xmlCurrentTag(state)\n var tagName = tagInfo && tagInfo.name\n if (!tagName) return CodeMirror.Pass\n\n var html = inner.mode.configuration == \"html\";\n var dontCloseTags = (typeof opt == \"object\" && opt.dontCloseTags) || (html && htmlDontClose);\n var indentTags = (typeof opt == \"object\" && opt.indentTags) || (html && htmlIndent);\n\n if (tok.end > pos.ch) tagName = tagName.slice(0, tagName.length - tok.end + pos.ch);\n var lowerTagName = tagName.toLowerCase();\n // Don't process the '>' at the end of an end-tag or self-closing tag\n if (!tagName ||\n tok.type == \"string\" && (tok.end != pos.ch || !/[\\\"\\']/.test(tok.string.charAt(tok.string.length - 1)) || tok.string.length == 1) ||\n tok.type == \"tag\" && tagInfo.close ||\n tok.string.indexOf(\"/\") == (pos.ch - tok.start - 1) || // match something like \n dontCloseTags && indexOf(dontCloseTags, lowerTagName) > -1 ||\n closingTagExists(cm, inner.mode.xmlCurrentContext && inner.mode.xmlCurrentContext(state) || [], tagName, pos, true))\n return CodeMirror.Pass;\n\n var emptyTags = typeof opt == \"object\" && opt.emptyTags;\n if (emptyTags && indexOf(emptyTags, tagName) > -1) {\n replacements[i] = { text: \"/>\", newPos: CodeMirror.Pos(pos.line, pos.ch + 2) };\n continue;\n }\n\n var indent = indentTags && indexOf(indentTags, lowerTagName) > -1;\n replacements[i] = {indent: indent,\n text: \">\" + (indent ? \"\\n\\n\" : \"\") + \"\",\n newPos: indent ? CodeMirror.Pos(pos.line + 1, 0) : CodeMirror.Pos(pos.line, pos.ch + 1)};\n }\n\n var dontIndentOnAutoClose = (typeof opt == \"object\" && opt.dontIndentOnAutoClose);\n for (var i = ranges.length - 1; i >= 0; i--) {\n var info = replacements[i];\n cm.replaceRange(info.text, ranges[i].head, ranges[i].anchor, \"+insert\");\n var sel = cm.listSelections().slice(0);\n sel[i] = {head: info.newPos, anchor: info.newPos};\n cm.setSelections(sel);\n if (!dontIndentOnAutoClose && info.indent) {\n cm.indentLine(info.newPos.line, null, true);\n cm.indentLine(info.newPos.line + 1, null, true);\n }\n }\n }\n\n function autoCloseCurrent(cm, typingSlash) {\n var ranges = cm.listSelections(), replacements = [];\n var head = typingSlash ? \"/\" : \"\") replacement += \">\";\n replacements[i] = replacement;\n }\n cm.replaceSelections(replacements);\n ranges = cm.listSelections();\n if (!dontIndentOnAutoClose) {\n for (var i = 0; i < ranges.length; i++)\n if (i == ranges.length - 1 || ranges[i].head.line < ranges[i + 1].head.line)\n cm.indentLine(ranges[i].head.line);\n }\n }\n\n function autoCloseSlash(cm) {\n if (cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n return autoCloseCurrent(cm, true);\n }\n\n CodeMirror.commands.closeTag = function(cm) { return autoCloseCurrent(cm); };\n\n function indexOf(collection, elt) {\n if (collection.indexOf) return collection.indexOf(elt);\n for (var i = 0, e = collection.length; i < e; ++i)\n if (collection[i] == elt) return i;\n return -1;\n }\n\n // If xml-fold is loaded, we use its functionality to try and verify\n // whether a given tag is actually unclosed.\n function closingTagExists(cm, context, tagName, pos, newTag) {\n if (!CodeMirror.scanForClosingTag) return false;\n var end = Math.min(cm.lastLine() + 1, pos.line + 500);\n var nextClose = CodeMirror.scanForClosingTag(cm, pos, null, end);\n if (!nextClose || nextClose.tag != tagName) return false;\n // If the immediate wrapping context contains onCx instances of\n // the same tag, a closing tag only exists if there are at least\n // that many closing tags of that type following.\n var onCx = newTag ? 1 : 0\n for (var i = context.length - 1; i >= 0; i--) {\n if (context[i] == tagName) ++onCx\n else break\n }\n pos = nextClose.to;\n for (var i = 1; i < onCx; i++) {\n var next = CodeMirror.scanForClosingTag(cm, pos, null, end);\n if (!next || next.tag != tagName) return false;\n pos = next.to;\n }\n return true;\n }\n});\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n/* eslint-disable space-unary-ops */\n\nvar utils = require('../utils/common');\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n//var Z_FILTERED = 1;\n//var Z_HUFFMAN_ONLY = 2;\n//var Z_RLE = 3;\nvar Z_FIXED = 4;\n//var Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\nvar Z_BINARY = 0;\nvar Z_TEXT = 1;\n//var Z_ASCII = 1; // = Z_TEXT\nvar Z_UNKNOWN = 2;\n\n/*============================================================================*/\n\n\nfunction zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n// From zutil.h\n\nvar STORED_BLOCK = 0;\nvar STATIC_TREES = 1;\nvar DYN_TREES = 2;\n/* The three kinds of block type */\n\nvar MIN_MATCH = 3;\nvar MAX_MATCH = 258;\n/* The minimum and maximum match lengths */\n\n// From deflate.h\n/* ===========================================================================\n * Internal compression state.\n */\n\nvar LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\n\nvar LITERALS = 256;\n/* number of literal bytes 0..255 */\n\nvar L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\n\nvar D_CODES = 30;\n/* number of distance codes */\n\nvar BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\n\nvar HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\n\nvar MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nvar Buf_size = 16;\n/* size of bit buffer in bi_buf */\n\n\n/* ===========================================================================\n * Constants\n */\n\nvar MAX_BL_BITS = 7;\n/* Bit length codes must not exceed MAX_BL_BITS bits */\n\nvar END_BLOCK = 256;\n/* end of block literal code */\n\nvar REP_3_6 = 16;\n/* repeat previous bit length 3-6 times (2 bits of repeat count) */\n\nvar REPZ_3_10 = 17;\n/* repeat a zero length 3-10 times (3 bits of repeat count) */\n\nvar REPZ_11_138 = 18;\n/* repeat a zero length 11-138 times (7 bits of repeat count) */\n\n/* eslint-disable comma-spacing,array-bracket-spacing */\nvar extra_lbits = /* extra bits for each length code */\n [0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];\n\nvar extra_dbits = /* extra bits for each distance code */\n [0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];\n\nvar extra_blbits = /* extra bits for each bit length code */\n [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];\n\nvar bl_order =\n [16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];\n/* eslint-enable comma-spacing,array-bracket-spacing */\n\n/* The lengths of the bit length codes are sent in order of decreasing\n * probability, to avoid transmitting the lengths for unused bit length codes.\n */\n\n/* ===========================================================================\n * Local data. These are initialized only once.\n */\n\n// We pre-fill arrays with 0 to avoid uninitialized gaps\n\nvar DIST_CODE_LEN = 512; /* see definition of array dist_code below */\n\n// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1\nvar static_ltree = new Array((L_CODES + 2) * 2);\nzero(static_ltree);\n/* The static literal tree. Since the bit lengths are imposed, there is no\n * need for the L_CODES extra codes used during heap construction. However\n * The codes 286 and 287 are needed to build a canonical tree (see _tr_init\n * below).\n */\n\nvar static_dtree = new Array(D_CODES * 2);\nzero(static_dtree);\n/* The static distance tree. (Actually a trivial tree since all codes use\n * 5 bits.)\n */\n\nvar _dist_code = new Array(DIST_CODE_LEN);\nzero(_dist_code);\n/* Distance codes. The first 256 values correspond to the distances\n * 3 .. 258, the last 256 values correspond to the top 8 bits of\n * the 15 bit distances.\n */\n\nvar _length_code = new Array(MAX_MATCH - MIN_MATCH + 1);\nzero(_length_code);\n/* length code for each normalized match length (0 == MIN_MATCH) */\n\nvar base_length = new Array(LENGTH_CODES);\nzero(base_length);\n/* First normalized length for each code (0 = MIN_MATCH) */\n\nvar base_dist = new Array(D_CODES);\nzero(base_dist);\n/* First normalized distance for each code (0 = distance of 1) */\n\n\nfunction StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {\n\n this.static_tree = static_tree; /* static tree or NULL */\n this.extra_bits = extra_bits; /* extra bits for each code or NULL */\n this.extra_base = extra_base; /* base index for extra_bits */\n this.elems = elems; /* max number of elements in the tree */\n this.max_length = max_length; /* max bit length for the codes */\n\n // show if `static_tree` has data or dummy - needed for monomorphic objects\n this.has_stree = static_tree && static_tree.length;\n}\n\n\nvar static_l_desc;\nvar static_d_desc;\nvar static_bl_desc;\n\n\nfunction TreeDesc(dyn_tree, stat_desc) {\n this.dyn_tree = dyn_tree; /* the dynamic tree */\n this.max_code = 0; /* largest code with non zero frequency */\n this.stat_desc = stat_desc; /* the corresponding static tree */\n}\n\n\n\nfunction d_code(dist) {\n return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];\n}\n\n\n/* ===========================================================================\n * Output a short LSB first on the stream.\n * IN assertion: there is enough room in pendingBuf.\n */\nfunction put_short(s, w) {\n// put_byte(s, (uch)((w) & 0xff));\n// put_byte(s, (uch)((ush)(w) >> 8));\n s.pending_buf[s.pending++] = (w) & 0xff;\n s.pending_buf[s.pending++] = (w >>> 8) & 0xff;\n}\n\n\n/* ===========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\nfunction send_bits(s, value, length) {\n if (s.bi_valid > (Buf_size - length)) {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n put_short(s, s.bi_buf);\n s.bi_buf = value >> (Buf_size - s.bi_valid);\n s.bi_valid += length - Buf_size;\n } else {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n s.bi_valid += length;\n }\n}\n\n\nfunction send_code(s, c, tree) {\n send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);\n}\n\n\n/* ===========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\nfunction bi_reverse(code, len) {\n var res = 0;\n do {\n res |= code & 1;\n code >>>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >>> 1;\n}\n\n\n/* ===========================================================================\n * Flush the bit buffer, keeping at most 7 bits in it.\n */\nfunction bi_flush(s) {\n if (s.bi_valid === 16) {\n put_short(s, s.bi_buf);\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n } else if (s.bi_valid >= 8) {\n s.pending_buf[s.pending++] = s.bi_buf & 0xff;\n s.bi_buf >>= 8;\n s.bi_valid -= 8;\n }\n}\n\n\n/* ===========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\nfunction gen_bitlen(s, desc)\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n{\n var tree = desc.dyn_tree;\n var max_code = desc.max_code;\n var stree = desc.stat_desc.static_tree;\n var has_stree = desc.stat_desc.has_stree;\n var extra = desc.stat_desc.extra_bits;\n var base = desc.stat_desc.extra_base;\n var max_length = desc.stat_desc.max_length;\n var h; /* heap index */\n var n, m; /* iterate over the tree elements */\n var bits; /* bit length */\n var xbits; /* extra bits */\n var f; /* frequency */\n var overflow = 0; /* number of elements with bit length too large */\n\n for (bits = 0; bits <= MAX_BITS; bits++) {\n s.bl_count[bits] = 0;\n }\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */\n\n for (h = s.heap_max + 1; h < HEAP_SIZE; h++) {\n n = s.heap[h];\n bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n * 2 + 1]/*.Len*/ = bits;\n /* We overwrite tree[n].Dad which is no longer needed */\n\n if (n > max_code) { continue; } /* not a leaf node */\n\n s.bl_count[bits]++;\n xbits = 0;\n if (n >= base) {\n xbits = extra[n - base];\n }\n f = tree[n * 2]/*.Freq*/;\n s.opt_len += f * (bits + xbits);\n if (has_stree) {\n s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);\n }\n }\n if (overflow === 0) { return; }\n\n // Trace((stderr,\"\\nbit length overflow\\n\"));\n /* This happens for example on obj2 and pic of the Calgary corpus */\n\n /* Find the first bit length which could increase: */\n do {\n bits = max_length - 1;\n while (s.bl_count[bits] === 0) { bits--; }\n s.bl_count[bits]--; /* move one leaf down the tree */\n s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */\n s.bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits !== 0; bits--) {\n n = s.bl_count[bits];\n while (n !== 0) {\n m = s.heap[--h];\n if (m > max_code) { continue; }\n if (tree[m * 2 + 1]/*.Len*/ !== bits) {\n // Trace((stderr,\"code %d bits %d->%d\\n\", m, tree[m].Len, bits));\n s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;\n tree[m * 2 + 1]/*.Len*/ = bits;\n }\n n--;\n }\n }\n}\n\n\n/* ===========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\nfunction gen_codes(tree, max_code, bl_count)\n// ct_data *tree; /* the tree to decorate */\n// int max_code; /* largest code with non zero frequency */\n// ushf *bl_count; /* number of codes at each bit length */\n{\n var next_code = new Array(MAX_BITS + 1); /* next code value for each bit length */\n var code = 0; /* running code value */\n var bits; /* bit index */\n var n; /* code index */\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= MAX_BITS; bits++) {\n next_code[bits] = code = (code + bl_count[bits - 1]) << 1;\n }\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n //Assert (code + bl_count[MAX_BITS]-1 == (1< length code (0..28) */\n length = 0;\n for (code = 0; code < LENGTH_CODES - 1; code++) {\n base_length[code] = length;\n for (n = 0; n < (1 << extra_lbits[code]); n++) {\n _length_code[length++] = code;\n }\n }\n //Assert (length == 256, \"tr_static_init: length != 256\");\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n _length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n base_dist[code] = dist;\n for (n = 0; n < (1 << extra_dbits[code]); n++) {\n _dist_code[dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: dist != 256\");\n dist >>= 7; /* from now on, all distances are divided by 128 */\n for (; code < D_CODES; code++) {\n base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {\n _dist_code[256 + dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: 256+dist != 512\");\n\n /* Construct the codes of the static literal tree */\n for (bits = 0; bits <= MAX_BITS; bits++) {\n bl_count[bits] = 0;\n }\n\n n = 0;\n while (n <= 143) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n while (n <= 255) {\n static_ltree[n * 2 + 1]/*.Len*/ = 9;\n n++;\n bl_count[9]++;\n }\n while (n <= 279) {\n static_ltree[n * 2 + 1]/*.Len*/ = 7;\n n++;\n bl_count[7]++;\n }\n while (n <= 287) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n gen_codes(static_ltree, L_CODES + 1, bl_count);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < D_CODES; n++) {\n static_dtree[n * 2 + 1]/*.Len*/ = 5;\n static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);\n }\n\n // Now data ready and we can init static trees\n static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS + 1, L_CODES, MAX_BITS);\n static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS);\n static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS);\n\n //static_init_done = true;\n}\n\n\n/* ===========================================================================\n * Initialize a new block.\n */\nfunction init_block(s) {\n var n; /* iterates over tree elements */\n\n /* Initialize the trees. */\n for (n = 0; n < L_CODES; n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < D_CODES; n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < BL_CODES; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }\n\n s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;\n s.opt_len = s.static_len = 0;\n s.last_lit = s.matches = 0;\n}\n\n\n/* ===========================================================================\n * Flush the bit buffer and align the output on a byte boundary\n */\nfunction bi_windup(s)\n{\n if (s.bi_valid > 8) {\n put_short(s, s.bi_buf);\n } else if (s.bi_valid > 0) {\n //put_byte(s, (Byte)s->bi_buf);\n s.pending_buf[s.pending++] = s.bi_buf;\n }\n s.bi_buf = 0;\n s.bi_valid = 0;\n}\n\n/* ===========================================================================\n * Copy a stored block, storing first the length and its\n * one's complement if requested.\n */\nfunction copy_block(s, buf, len, header)\n//DeflateState *s;\n//charf *buf; /* the input data */\n//unsigned len; /* its length */\n//int header; /* true if block header must be written */\n{\n bi_windup(s); /* align on byte boundary */\n\n if (header) {\n put_short(s, len);\n put_short(s, ~len);\n }\n// while (len--) {\n// put_byte(s, *buf++);\n// }\n utils.arraySet(s.pending_buf, s.window, buf, len, s.pending);\n s.pending += len;\n}\n\n/* ===========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\nfunction smaller(tree, n, m, depth) {\n var _n2 = n * 2;\n var _m2 = m * 2;\n return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||\n (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));\n}\n\n/* ===========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\nfunction pqdownheap(s, tree, k)\n// deflate_state *s;\n// ct_data *tree; /* the tree to restore */\n// int k; /* node to move down */\n{\n var v = s.heap[k];\n var j = k << 1; /* left son of k */\n while (j <= s.heap_len) {\n /* Set j to the smallest of the two sons: */\n if (j < s.heap_len &&\n smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {\n j++;\n }\n /* Exit if v is smaller than both sons */\n if (smaller(tree, v, s.heap[j], s.depth)) { break; }\n\n /* Exchange v with the smallest son */\n s.heap[k] = s.heap[j];\n k = j;\n\n /* And continue down the tree, setting j to the left son of k */\n j <<= 1;\n }\n s.heap[k] = v;\n}\n\n\n// inlined manually\n// var SMALLEST = 1;\n\n/* ===========================================================================\n * Send the block data compressed using the given Huffman trees\n */\nfunction compress_block(s, ltree, dtree)\n// deflate_state *s;\n// const ct_data *ltree; /* literal tree */\n// const ct_data *dtree; /* distance tree */\n{\n var dist; /* distance of matched string */\n var lc; /* match length or unmatched char (if dist == 0) */\n var lx = 0; /* running index in l_buf */\n var code; /* the code to send */\n var extra; /* number of extra bits to send */\n\n if (s.last_lit !== 0) {\n do {\n dist = (s.pending_buf[s.d_buf + lx * 2] << 8) | (s.pending_buf[s.d_buf + lx * 2 + 1]);\n lc = s.pending_buf[s.l_buf + lx];\n lx++;\n\n if (dist === 0) {\n send_code(s, lc, ltree); /* send a literal byte */\n //Tracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n /* Here, lc is the match length - MIN_MATCH */\n code = _length_code[lc];\n send_code(s, code + LITERALS + 1, ltree); /* send the length code */\n extra = extra_lbits[code];\n if (extra !== 0) {\n lc -= base_length[code];\n send_bits(s, lc, extra); /* send the extra length bits */\n }\n dist--; /* dist is now the match distance - 1 */\n code = d_code(dist);\n //Assert (code < D_CODES, \"bad d_code\");\n\n send_code(s, code, dtree); /* send the distance code */\n extra = extra_dbits[code];\n if (extra !== 0) {\n dist -= base_dist[code];\n send_bits(s, dist, extra); /* send the extra distance bits */\n }\n } /* literal or match pair ? */\n\n /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */\n //Assert((uInt)(s->pending) < s->lit_bufsize + 2*lx,\n // \"pendingBuf overflow\");\n\n } while (lx < s.last_lit);\n }\n\n send_code(s, END_BLOCK, ltree);\n}\n\n\n/* ===========================================================================\n * Construct one Huffman tree and assigns the code bit strings and lengths.\n * Update the total bit length for the current block.\n * IN assertion: the field freq is set for all tree elements.\n * OUT assertions: the fields len and code are set to the optimal bit length\n * and corresponding code. The length opt_len is updated; static_len is\n * also updated if stree is not null. The field max_code is set.\n */\nfunction build_tree(s, desc)\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n{\n var tree = desc.dyn_tree;\n var stree = desc.stat_desc.static_tree;\n var has_stree = desc.stat_desc.has_stree;\n var elems = desc.stat_desc.elems;\n var n, m; /* iterate over heap elements */\n var max_code = -1; /* largest code with non zero frequency */\n var node; /* new node being created */\n\n /* Construct the initial heap, with least frequent element in\n * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].\n * heap[0] is not used.\n */\n s.heap_len = 0;\n s.heap_max = HEAP_SIZE;\n\n for (n = 0; n < elems; n++) {\n if (tree[n * 2]/*.Freq*/ !== 0) {\n s.heap[++s.heap_len] = max_code = n;\n s.depth[n] = 0;\n\n } else {\n tree[n * 2 + 1]/*.Len*/ = 0;\n }\n }\n\n /* The pkzip format requires that at least one distance code exists,\n * and that at least one bit should be sent even if there is only one\n * possible code. So to avoid special checks later on we force at least\n * two codes of non zero frequency.\n */\n while (s.heap_len < 2) {\n node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);\n tree[node * 2]/*.Freq*/ = 1;\n s.depth[node] = 0;\n s.opt_len--;\n\n if (has_stree) {\n s.static_len -= stree[node * 2 + 1]/*.Len*/;\n }\n /* node is 0 or 1 so it does not have extra bits */\n }\n desc.max_code = max_code;\n\n /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,\n * establish sub-heaps of increasing lengths:\n */\n for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n node = elems; /* next internal node of the tree */\n do {\n //pqremove(s, tree, n); /* n = node of least frequency */\n /*** pqremove ***/\n n = s.heap[1/*SMALLEST*/];\n s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];\n pqdownheap(s, tree, 1/*SMALLEST*/);\n /***/\n\n m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */\n\n s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */\n s.heap[--s.heap_max] = m;\n\n /* Create a new node father of n and m */\n tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;\n s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;\n tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;\n\n /* and insert the new node in the heap */\n s.heap[1/*SMALLEST*/] = node++;\n pqdownheap(s, tree, 1/*SMALLEST*/);\n\n } while (s.heap_len >= 2);\n\n s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n gen_bitlen(s, desc);\n\n /* The field len is now set, we can generate the bit codes */\n gen_codes(tree, max_code, s.bl_count);\n}\n\n\n/* ===========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree.\n */\nfunction scan_tree(s, tree, max_code)\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n{\n var n; /* iterates over all tree elements */\n var prevlen = -1; /* last emitted length */\n var curlen; /* length of current code */\n\n var nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n var count = 0; /* repeat count of the current code */\n var max_count = 7; /* max repeat count */\n var min_count = 4; /* min repeat count */\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n s.bl_tree[curlen * 2]/*.Freq*/ += count;\n\n } else if (curlen !== 0) {\n\n if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }\n s.bl_tree[REP_3_6 * 2]/*.Freq*/++;\n\n } else if (count <= 10) {\n s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;\n\n } else {\n s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;\n }\n\n count = 0;\n prevlen = curlen;\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n}\n\n\n/* ===========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\nfunction send_tree(s, tree, max_code)\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n{\n var n; /* iterates over all tree elements */\n var prevlen = -1; /* last emitted length */\n var curlen; /* length of current code */\n\n var nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n var count = 0; /* repeat count of the current code */\n var max_count = 7; /* max repeat count */\n var min_count = 4; /* min repeat count */\n\n /* tree[max_code+1].Len = -1; */ /* guard already set */\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);\n\n } else if (curlen !== 0) {\n if (curlen !== prevlen) {\n send_code(s, curlen, s.bl_tree);\n count--;\n }\n //Assert(count >= 3 && count <= 6, \" 3_6?\");\n send_code(s, REP_3_6, s.bl_tree);\n send_bits(s, count - 3, 2);\n\n } else if (count <= 10) {\n send_code(s, REPZ_3_10, s.bl_tree);\n send_bits(s, count - 3, 3);\n\n } else {\n send_code(s, REPZ_11_138, s.bl_tree);\n send_bits(s, count - 11, 7);\n }\n\n count = 0;\n prevlen = curlen;\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n}\n\n\n/* ===========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\nfunction build_bl_tree(s) {\n var max_blindex; /* index of last bit length code of non zero freq */\n\n /* Determine the bit length frequencies for literal and distance trees */\n scan_tree(s, s.dyn_ltree, s.l_desc.max_code);\n scan_tree(s, s.dyn_dtree, s.d_desc.max_code);\n\n /* Build the bit length tree: */\n build_tree(s, s.bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = BL_CODES - 1; max_blindex >= 3; max_blindex--) {\n if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {\n break;\n }\n }\n /* Update opt_len to include the bit length tree and counts */\n s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n //Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n // s->opt_len, s->static_len));\n\n return max_blindex;\n}\n\n\n/* ===========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\nfunction send_all_trees(s, lcodes, dcodes, blcodes)\n// deflate_state *s;\n// int lcodes, dcodes, blcodes; /* number of codes for each tree */\n{\n var rank; /* index in bl_order */\n\n //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n // \"too many codes\");\n //Tracev((stderr, \"\\nbl counts: \"));\n send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */\n send_bits(s, dcodes - 1, 5);\n send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */\n for (rank = 0; rank < blcodes; rank++) {\n //Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);\n }\n //Tracev((stderr, \"\\nbl tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */\n //Tracev((stderr, \"\\nlit tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */\n //Tracev((stderr, \"\\ndist tree: sent %ld\", s->bits_sent));\n}\n\n\n/* ===========================================================================\n * Check if the data type is TEXT or BINARY, using the following algorithm:\n * - TEXT if the two conditions below are satisfied:\n * a) There are no non-portable control characters belonging to the\n * \"black list\" (0..6, 14..25, 28..31).\n * b) There is at least one printable character belonging to the\n * \"white list\" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).\n * - BINARY otherwise.\n * - The following partially-portable control characters form a\n * \"gray list\" that is ignored in this detection algorithm:\n * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).\n * IN assertion: the fields Freq of dyn_ltree are set.\n */\nfunction detect_data_type(s) {\n /* black_mask is the bit mask of black-listed bytes\n * set bits 0..6, 14..25, and 28..31\n * 0xf3ffc07f = binary 11110011111111111100000001111111\n */\n var black_mask = 0xf3ffc07f;\n var n;\n\n /* Check for non-textual (\"black-listed\") bytes. */\n for (n = 0; n <= 31; n++, black_mask >>>= 1) {\n if ((black_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {\n return Z_BINARY;\n }\n }\n\n /* Check for textual (\"white-listed\") bytes. */\n if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||\n s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n for (n = 32; n < LITERALS; n++) {\n if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n }\n\n /* There are no \"black-listed\" or \"white-listed\" bytes:\n * this stream either is empty or has tolerated (\"gray-listed\") bytes only.\n */\n return Z_BINARY;\n}\n\n\nvar static_init_done = false;\n\n/* ===========================================================================\n * Initialize the tree data structures for a new zlib stream.\n */\nfunction _tr_init(s)\n{\n\n if (!static_init_done) {\n tr_static_init();\n static_init_done = true;\n }\n\n s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc);\n s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc);\n s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);\n\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n /* Initialize the first block of the first file: */\n init_block(s);\n}\n\n\n/* ===========================================================================\n * Send a stored block\n */\nfunction _tr_stored_block(s, buf, stored_len, last)\n//DeflateState *s;\n//charf *buf; /* input block */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n{\n send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); /* send block type */\n copy_block(s, buf, stored_len, true); /* with header */\n}\n\n\n/* ===========================================================================\n * Send one empty static block to give enough lookahead for inflate.\n * This takes 10 bits, of which 7 may remain in the bit buffer.\n */\nfunction _tr_align(s) {\n send_bits(s, STATIC_TREES << 1, 3);\n send_code(s, END_BLOCK, static_ltree);\n bi_flush(s);\n}\n\n\n/* ===========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and output the encoded block to the zip file.\n */\nfunction _tr_flush_block(s, buf, stored_len, last)\n//DeflateState *s;\n//charf *buf; /* input block, or NULL if too old */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n{\n var opt_lenb, static_lenb; /* opt_len and static_len in bytes */\n var max_blindex = 0; /* index of last bit length code of non zero freq */\n\n /* Build the Huffman trees unless a stored block is forced */\n if (s.level > 0) {\n\n /* Check if the file is binary or text */\n if (s.strm.data_type === Z_UNKNOWN) {\n s.strm.data_type = detect_data_type(s);\n }\n\n /* Construct the literal and distance trees */\n build_tree(s, s.l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n\n build_tree(s, s.d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = build_bl_tree(s);\n\n /* Determine the best encoding. Compute the block lengths in bytes. */\n opt_lenb = (s.opt_len + 3 + 7) >>> 3;\n static_lenb = (s.static_len + 3 + 7) >>> 3;\n\n // Tracev((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u \",\n // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,\n // s->last_lit));\n\n if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }\n\n } else {\n // Assert(buf != (char*)0, \"lost buf\");\n opt_lenb = static_lenb = stored_len + 5; /* force a stored block */\n }\n\n if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {\n /* 4: two words for the lengths */\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n _tr_stored_block(s, buf, stored_len, last);\n\n } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) {\n\n send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);\n compress_block(s, static_ltree, static_dtree);\n\n } else {\n send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);\n send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);\n compress_block(s, s.dyn_ltree, s.dyn_dtree);\n }\n // Assert (s->compressed_len == s->bits_sent, \"bad compressed size\");\n /* The above check is made mod 2^32, for files larger than 512 MB\n * and uLong implemented on 32 bits.\n */\n init_block(s);\n\n if (last) {\n bi_windup(s);\n }\n // Tracev((stderr,\"\\ncomprlen %lu(%lu) \", s->compressed_len>>3,\n // s->compressed_len-7*last));\n}\n\n/* ===========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\nfunction _tr_tally(s, dist, lc)\n// deflate_state *s;\n// unsigned dist; /* distance of matched string */\n// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */\n{\n //var out_length, in_length, dcode;\n\n s.pending_buf[s.d_buf + s.last_lit * 2] = (dist >>> 8) & 0xff;\n s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 0xff;\n\n s.pending_buf[s.l_buf + s.last_lit] = lc & 0xff;\n s.last_lit++;\n\n if (dist === 0) {\n /* lc is the unmatched char */\n s.dyn_ltree[lc * 2]/*.Freq*/++;\n } else {\n s.matches++;\n /* Here, lc is the match length - MIN_MATCH */\n dist--; /* dist = match distance - 1 */\n //Assert((ush)dist < (ush)MAX_DIST(s) &&\n // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n // (ush)d_code(dist) < (ush)D_CODES, \"_tr_tally: bad match\");\n\n s.dyn_ltree[(_length_code[lc] + LITERALS + 1) * 2]/*.Freq*/++;\n s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n\n//#ifdef TRUNCATE_BLOCK\n// /* Try to guess if it is profitable to stop the current block here */\n// if ((s.last_lit & 0x1fff) === 0 && s.level > 2) {\n// /* Compute an upper bound for the compressed length */\n// out_length = s.last_lit*8;\n// in_length = s.strstart - s.block_start;\n//\n// for (dcode = 0; dcode < D_CODES; dcode++) {\n// out_length += s.dyn_dtree[dcode*2]/*.Freq*/ * (5 + extra_dbits[dcode]);\n// }\n// out_length >>>= 3;\n// //Tracev((stderr,\"\\nlast_lit %u, in %ld, out ~%ld(%ld%%) \",\n// // s->last_lit, in_length, out_length,\n// // 100L - out_length*100L/in_length));\n// if (s.matches < (s.last_lit>>1)/*int /2*/ && out_length < (in_length>>1)/*int /2*/) {\n// return true;\n// }\n// }\n//#endif\n\n return (s.last_lit === s.lit_bufsize - 1);\n /* We avoid equality with lit_bufsize because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n}\n\nexports._tr_init = _tr_init;\nexports._tr_stored_block = _tr_stored_block;\nexports._tr_flush_block = _tr_flush_block;\nexports._tr_tally = _tr_tally;\nexports._tr_align = _tr_align;\n","module.exports = require('./lib/_stream_duplex.js');\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n var defaults = {\n pairs: \"()[]{}''\\\"\\\"\",\n closeBefore: \")]}'\\\":;>\",\n triples: \"\",\n explode: \"[]{}\"\n };\n\n var Pos = CodeMirror.Pos;\n\n CodeMirror.defineOption(\"autoCloseBrackets\", false, function(cm, val, old) {\n if (old && old != CodeMirror.Init) {\n cm.removeKeyMap(keyMap);\n cm.state.closeBrackets = null;\n }\n if (val) {\n ensureBound(getOption(val, \"pairs\"))\n cm.state.closeBrackets = val;\n cm.addKeyMap(keyMap);\n }\n });\n\n function getOption(conf, name) {\n if (name == \"pairs\" && typeof conf == \"string\") return conf;\n if (typeof conf == \"object\" && conf[name] != null) return conf[name];\n return defaults[name];\n }\n\n var keyMap = {Backspace: handleBackspace, Enter: handleEnter};\n function ensureBound(chars) {\n for (var i = 0; i < chars.length; i++) {\n var ch = chars.charAt(i), key = \"'\" + ch + \"'\"\n if (!keyMap[key]) keyMap[key] = handler(ch)\n }\n }\n ensureBound(defaults.pairs + \"`\")\n\n function handler(ch) {\n return function(cm) { return handleChar(cm, ch); };\n }\n\n function getConfig(cm) {\n var deflt = cm.state.closeBrackets;\n if (!deflt || deflt.override) return deflt;\n var mode = cm.getModeAt(cm.getCursor());\n return mode.closeBrackets || deflt;\n }\n\n function handleBackspace(cm) {\n var conf = getConfig(cm);\n if (!conf || cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n\n var pairs = getOption(conf, \"pairs\");\n var ranges = cm.listSelections();\n for (var i = 0; i < ranges.length; i++) {\n if (!ranges[i].empty()) return CodeMirror.Pass;\n var around = charsAround(cm, ranges[i].head);\n if (!around || pairs.indexOf(around) % 2 != 0) return CodeMirror.Pass;\n }\n for (var i = ranges.length - 1; i >= 0; i--) {\n var cur = ranges[i].head;\n cm.replaceRange(\"\", Pos(cur.line, cur.ch - 1), Pos(cur.line, cur.ch + 1), \"+delete\");\n }\n }\n\n function handleEnter(cm) {\n var conf = getConfig(cm);\n var explode = conf && getOption(conf, \"explode\");\n if (!explode || cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n\n var ranges = cm.listSelections();\n for (var i = 0; i < ranges.length; i++) {\n if (!ranges[i].empty()) return CodeMirror.Pass;\n var around = charsAround(cm, ranges[i].head);\n if (!around || explode.indexOf(around) % 2 != 0) return CodeMirror.Pass;\n }\n cm.operation(function() {\n var linesep = cm.lineSeparator() || \"\\n\";\n cm.replaceSelection(linesep + linesep, null);\n cm.execCommand(\"goCharLeft\");\n ranges = cm.listSelections();\n for (var i = 0; i < ranges.length; i++) {\n var line = ranges[i].head.line;\n cm.indentLine(line, null, true);\n cm.indentLine(line + 1, null, true);\n }\n });\n }\n\n function contractSelection(sel) {\n var inverted = CodeMirror.cmpPos(sel.anchor, sel.head) > 0;\n return {anchor: new Pos(sel.anchor.line, sel.anchor.ch + (inverted ? -1 : 1)),\n head: new Pos(sel.head.line, sel.head.ch + (inverted ? 1 : -1))};\n }\n\n function handleChar(cm, ch) {\n var conf = getConfig(cm);\n if (!conf || cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n\n var pairs = getOption(conf, \"pairs\");\n var pos = pairs.indexOf(ch);\n if (pos == -1) return CodeMirror.Pass;\n\n var closeBefore = getOption(conf,\"closeBefore\");\n\n var triples = getOption(conf, \"triples\");\n\n var identical = pairs.charAt(pos + 1) == ch;\n var ranges = cm.listSelections();\n var opening = pos % 2 == 0;\n\n var type;\n for (var i = 0; i < ranges.length; i++) {\n var range = ranges[i], cur = range.head, curType;\n var next = cm.getRange(cur, Pos(cur.line, cur.ch + 1));\n if (opening && !range.empty()) {\n curType = \"surround\";\n } else if ((identical || !opening) && next == ch) {\n if (identical && stringStartsAfter(cm, cur))\n curType = \"both\";\n else if (triples.indexOf(ch) >= 0 && cm.getRange(cur, Pos(cur.line, cur.ch + 3)) == ch + ch + ch)\n curType = \"skipThree\";\n else\n curType = \"skip\";\n } else if (identical && cur.ch > 1 && triples.indexOf(ch) >= 0 &&\n cm.getRange(Pos(cur.line, cur.ch - 2), cur) == ch + ch) {\n if (cur.ch > 2 && /\\bstring/.test(cm.getTokenTypeAt(Pos(cur.line, cur.ch - 2)))) return CodeMirror.Pass;\n curType = \"addFour\";\n } else if (identical) {\n var prev = cur.ch == 0 ? \" \" : cm.getRange(Pos(cur.line, cur.ch - 1), cur)\n if (!CodeMirror.isWordChar(next) && prev != ch && !CodeMirror.isWordChar(prev)) curType = \"both\";\n else return CodeMirror.Pass;\n } else if (opening && (next.length === 0 || /\\s/.test(next) || closeBefore.indexOf(next) > -1)) {\n curType = \"both\";\n } else {\n return CodeMirror.Pass;\n }\n if (!type) type = curType;\n else if (type != curType) return CodeMirror.Pass;\n }\n\n var left = pos % 2 ? pairs.charAt(pos - 1) : ch;\n var right = pos % 2 ? ch : pairs.charAt(pos + 1);\n cm.operation(function() {\n if (type == \"skip\") {\n cm.execCommand(\"goCharRight\");\n } else if (type == \"skipThree\") {\n for (var i = 0; i < 3; i++)\n cm.execCommand(\"goCharRight\");\n } else if (type == \"surround\") {\n var sels = cm.getSelections();\n for (var i = 0; i < sels.length; i++)\n sels[i] = left + sels[i] + right;\n cm.replaceSelections(sels, \"around\");\n sels = cm.listSelections().slice();\n for (var i = 0; i < sels.length; i++)\n sels[i] = contractSelection(sels[i]);\n cm.setSelections(sels);\n } else if (type == \"both\") {\n cm.replaceSelection(left + right, null);\n cm.triggerElectric(left + right);\n cm.execCommand(\"goCharLeft\");\n } else if (type == \"addFour\") {\n cm.replaceSelection(left + left + left + left, \"before\");\n cm.execCommand(\"goCharRight\");\n }\n });\n }\n\n function charsAround(cm, pos) {\n var str = cm.getRange(Pos(pos.line, pos.ch - 1),\n Pos(pos.line, pos.ch + 1));\n return str.length == 2 ? str : null;\n }\n\n function stringStartsAfter(cm, pos) {\n var token = cm.getTokenAt(Pos(pos.line, pos.ch + 1))\n return /\\bstring/.test(token.type) && token.start == pos.ch &&\n (pos.ch == 0 || !/\\bstring/.test(cm.getTokenTypeAt(pos)))\n }\n});\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nCodeMirror.registerGlobalHelper(\"fold\", \"comment\", function(mode) {\n return mode.blockCommentStart && mode.blockCommentEnd;\n}, function(cm, start) {\n var mode = cm.getModeAt(start), startToken = mode.blockCommentStart, endToken = mode.blockCommentEnd;\n if (!startToken || !endToken) return;\n var line = start.line, lineText = cm.getLine(line);\n\n var startCh;\n for (var at = start.ch, pass = 0;;) {\n var found = at <= 0 ? -1 : lineText.lastIndexOf(startToken, at - 1);\n if (found == -1) {\n if (pass == 1) return;\n pass = 1;\n at = lineText.length;\n continue;\n }\n if (pass == 1 && found < start.ch) return;\n if (/comment/.test(cm.getTokenTypeAt(CodeMirror.Pos(line, found + 1))) &&\n (found == 0 || lineText.slice(found - endToken.length, found) == endToken ||\n !/comment/.test(cm.getTokenTypeAt(CodeMirror.Pos(line, found))))) {\n startCh = found + startToken.length;\n break;\n }\n at = found - 1;\n }\n\n var depth = 1, lastLine = cm.lastLine(), end, endCh;\n outer: for (var i = line; i <= lastLine; ++i) {\n var text = cm.getLine(i), pos = i == line ? startCh : 0;\n for (;;) {\n var nextOpen = text.indexOf(startToken, pos), nextClose = text.indexOf(endToken, pos);\n if (nextOpen < 0) nextOpen = text.length;\n if (nextClose < 0) nextClose = text.length;\n pos = Math.min(nextOpen, nextClose);\n if (pos == text.length) break;\n if (pos == nextOpen) ++depth;\n else if (!--depth) { end = i; endCh = pos; break outer; }\n ++pos;\n }\n }\n if (end == null || line == end && endCh == startCh) return;\n return {from: CodeMirror.Pos(line, startCh),\n to: CodeMirror.Pos(end, endCh)};\n});\n\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n \"use strict\";\n\n var listRE = /^(\\s*)(>[> ]*|[*+-] \\[[x ]\\]\\s|[*+-]\\s|(\\d+)([.)]))(\\s*)/,\n emptyListRE = /^(\\s*)(>[> ]*|[*+-] \\[[x ]\\]|[*+-]|(\\d+)[.)])(\\s*)$/,\n unorderedListRE = /[*+-]\\s/;\n\n CodeMirror.commands.newlineAndIndentContinueMarkdownList = function(cm) {\n if (cm.getOption(\"disableInput\")) return CodeMirror.Pass;\n var ranges = cm.listSelections(), replacements = [];\n for (var i = 0; i < ranges.length; i++) {\n var pos = ranges[i].head;\n\n // If we're not in Markdown mode, fall back to normal newlineAndIndent\n var eolState = cm.getStateAfter(pos.line);\n var inner = CodeMirror.innerMode(cm.getMode(), eolState);\n if (inner.mode.name !== \"markdown\") {\n cm.execCommand(\"newlineAndIndent\");\n return;\n } else {\n eolState = inner.state;\n }\n\n var inList = eolState.list !== false;\n var inQuote = eolState.quote !== 0;\n\n var line = cm.getLine(pos.line), match = listRE.exec(line);\n var cursorBeforeBullet = /^\\s*$/.test(line.slice(0, pos.ch));\n if (!ranges[i].empty() || (!inList && !inQuote) || !match || cursorBeforeBullet) {\n cm.execCommand(\"newlineAndIndent\");\n return;\n }\n if (emptyListRE.test(line)) {\n var endOfQuote = inQuote && />\\s*$/.test(line)\n var endOfList = !/>\\s*$/.test(line)\n if (endOfQuote || endOfList) cm.replaceRange(\"\", {\n line: pos.line, ch: 0\n }, {\n line: pos.line, ch: pos.ch + 1\n });\n replacements[i] = \"\\n\";\n } else {\n var indent = match[1], after = match[5];\n var numbered = !(unorderedListRE.test(match[2]) || match[2].indexOf(\">\") >= 0);\n var bullet = numbered ? (parseInt(match[3], 10) + 1) + match[4] : match[2].replace(\"x\", \" \");\n replacements[i] = \"\\n\" + indent + bullet + after;\n\n if (numbered) incrementRemainingMarkdownListNumbers(cm, pos);\n }\n }\n\n cm.replaceSelections(replacements);\n };\n\n // Auto-updating Markdown list numbers when a new item is added to the\n // middle of a list\n function incrementRemainingMarkdownListNumbers(cm, pos) {\n var startLine = pos.line, lookAhead = 0, skipCount = 0;\n var startItem = listRE.exec(cm.getLine(startLine)), startIndent = startItem[1];\n\n do {\n lookAhead += 1;\n var nextLineNumber = startLine + lookAhead;\n var nextLine = cm.getLine(nextLineNumber), nextItem = listRE.exec(nextLine);\n\n if (nextItem) {\n var nextIndent = nextItem[1];\n var newNumber = (parseInt(startItem[3], 10) + lookAhead - skipCount);\n var nextNumber = (parseInt(nextItem[3], 10)), itemNumber = nextNumber;\n\n if (startIndent === nextIndent && !isNaN(nextNumber)) {\n if (newNumber === nextNumber) itemNumber = nextNumber + 1;\n if (newNumber > nextNumber) itemNumber = newNumber + 1;\n cm.replaceRange(\n nextLine.replace(listRE, nextIndent + itemNumber + nextItem[4] + nextItem[5]),\n {\n line: nextLineNumber, ch: 0\n }, {\n line: nextLineNumber, ch: nextLine.length\n });\n } else {\n if (startIndent.length > nextIndent.length) return;\n // This doesn't run if the next line immediatley indents, as it is\n // not clear of the users intention (new indented item or same level)\n if ((startIndent.length < nextIndent.length) && (lookAhead === 1)) return;\n skipCount += 1;\n }\n }\n } while (nextItem);\n }\n});\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(\n uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)\n ))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {\n var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, next, step;\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = AS_ENTRIES\n ? boundFunction(anObject(step = iterable[index])[0], step[1])\n : boundFunction(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n\niterate.stop = function (result) {\n return new Result(true, result);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\n\nvar Duplex = require('./_stream_duplex');\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\nutil.inherits(Transform, Duplex);\n\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n\n var cb = ts.writecb;\n\n if (!cb) {\n return this.emit('error', new Error('write callback called multiple times'));\n }\n\n ts.writechunk = null;\n ts.writecb = null;\n\n if (data != null) // single equals check for both `null` and `undefined`\n this.push(data);\n\n cb(er);\n\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\n\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n\n Duplex.call(this, options);\n\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\n\nfunction prefinish() {\n var _this = this;\n\n if (typeof this._flush === 'function') {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\n\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n throw new Error('_transform() is not implemented');\n};\n\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n\n if (ts.writechunk !== null && ts.writecb && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\n\nTransform.prototype._destroy = function (err, cb) {\n var _this2 = this;\n\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n _this2.emit('close');\n });\n};\n\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n\n if (data != null) // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0');\n\n if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming');\n\n return stream.push(null);\n}","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","module.exports = require('./lib/_stream_writable.js');\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n\n /* Allowed flush values; see deflate() and inflate() below for details */\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n\n /* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n //Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n //Z_VERSION_ERROR: -6,\n\n /* compression levels */\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n\n\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n\n /* Possible values of the data_type field (though see inflate()) */\n Z_BINARY: 0,\n Z_TEXT: 1,\n //Z_ASCII: 1, // = Z_TEXT (deprecated)\n Z_UNKNOWN: 2,\n\n /* The deflate compression method */\n Z_DEFLATED: 8\n //Z_NULL: null // Use -1 or null inline, depending on var type\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n if (\n (utils.isBlob(requestData) || utils.isFile(requestData)) &&\n requestData.type\n ) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = unescape(encodeURIComponent(config.auth.password)) || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb, null, ret) },\n function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n \"use strict\";\n var WRAP_CLASS = \"CodeMirror-activeline\";\n var BACK_CLASS = \"CodeMirror-activeline-background\";\n var GUTT_CLASS = \"CodeMirror-activeline-gutter\";\n\n CodeMirror.defineOption(\"styleActiveLine\", false, function(cm, val, old) {\n var prev = old == CodeMirror.Init ? false : old;\n if (val == prev) return\n if (prev) {\n cm.off(\"beforeSelectionChange\", selectionChange);\n clearActiveLines(cm);\n delete cm.state.activeLines;\n }\n if (val) {\n cm.state.activeLines = [];\n updateActiveLines(cm, cm.listSelections());\n cm.on(\"beforeSelectionChange\", selectionChange);\n }\n });\n\n function clearActiveLines(cm) {\n for (var i = 0; i < cm.state.activeLines.length; i++) {\n cm.removeLineClass(cm.state.activeLines[i], \"wrap\", WRAP_CLASS);\n cm.removeLineClass(cm.state.activeLines[i], \"background\", BACK_CLASS);\n cm.removeLineClass(cm.state.activeLines[i], \"gutter\", GUTT_CLASS);\n }\n }\n\n function sameArray(a, b) {\n if (a.length != b.length) return false;\n for (var i = 0; i < a.length; i++)\n if (a[i] != b[i]) return false;\n return true;\n }\n\n function updateActiveLines(cm, ranges) {\n var active = [];\n for (var i = 0; i < ranges.length; i++) {\n var range = ranges[i];\n var option = cm.getOption(\"styleActiveLine\");\n if (typeof option == \"object\" && option.nonEmpty ? range.anchor.line != range.head.line : !range.empty())\n continue\n var line = cm.getLineHandleVisualStart(range.head.line);\n if (active[active.length - 1] != line) active.push(line);\n }\n if (sameArray(cm.state.activeLines, active)) return;\n cm.operation(function() {\n clearActiveLines(cm);\n for (var i = 0; i < active.length; i++) {\n cm.addLineClass(active[i], \"wrap\", WRAP_CLASS);\n cm.addLineClass(active[i], \"background\", BACK_CLASS);\n cm.addLineClass(active[i], \"gutter\", GUTT_CLASS);\n }\n cm.state.activeLines = active;\n });\n }\n\n function selectionChange(cm, sel) {\n updateActiveLines(cm, sel.ranges);\n }\n});\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\n\nfunction isArray(arg) {\n if (Array.isArray) {\n return Array.isArray(arg);\n }\n return objectToString(arg) === '[object Array]';\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = Buffer.isBuffer;\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","module.exports = {};\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","exports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","module.exports = require('events').EventEmitter;\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","exports.nextTick = function nextTick(fn) {\n var args = Array.prototype.slice.call(arguments);\n args.shift();\n setTimeout(function () {\n fn.apply(null, args);\n }, 0);\n};\n\nexports.platform = exports.arch = \nexports.execPath = exports.title = 'browser';\nexports.pid = 1;\nexports.browser = true;\nexports.env = {};\nexports.argv = [];\n\nexports.binding = function (name) {\n\tthrow new Error('No such module. (Possibly not yet loaded)')\n};\n\n(function () {\n var cwd = '/';\n var path;\n exports.cwd = function () { return cwd };\n exports.chdir = function (dir) {\n if (!path) path = require('path');\n cwd = path.resolve(dir, cwd);\n };\n})();\n\nexports.exit = exports.kill = \nexports.umask = exports.dlopen = \nexports.uptime = exports.memoryUsage = \nexports.uvCounters = function() {};\nexports.features = {};\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"), require(\"../markdown/markdown\"), require(\"../../addon/mode/overlay\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\", \"../markdown/markdown\", \"../../addon/mode/overlay\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nvar urlRE = /^((?:(?: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\n\nCodeMirror.defineMode(\"gfm\", function(config, modeConfig) {\n var codeDepth = 0;\n function blankLine(state) {\n state.code = false;\n return null;\n }\n var gfmOverlay = {\n startState: function() {\n return {\n code: false,\n codeBlock: false,\n ateSpace: false\n };\n },\n copyState: function(s) {\n return {\n code: s.code,\n codeBlock: s.codeBlock,\n ateSpace: s.ateSpace\n };\n },\n token: function(stream, state) {\n state.combineTokens = null;\n\n // Hack to prevent formatting override inside code blocks (block and inline)\n if (state.codeBlock) {\n if (stream.match(/^```+/)) {\n state.codeBlock = false;\n return null;\n }\n stream.skipToEnd();\n return null;\n }\n if (stream.sol()) {\n state.code = false;\n }\n if (stream.sol() && stream.match(/^```+/)) {\n stream.skipToEnd();\n state.codeBlock = true;\n return null;\n }\n // If this block is changed, it may need to be updated in Markdown mode\n if (stream.peek() === '`') {\n stream.next();\n var before = stream.pos;\n stream.eatWhile('`');\n var difference = 1 + stream.pos - before;\n if (!state.code) {\n codeDepth = difference;\n state.code = true;\n } else {\n if (difference === codeDepth) { // Must be exact\n state.code = false;\n }\n }\n return null;\n } else if (state.code) {\n stream.next();\n return null;\n }\n // Check if space. If so, links can be formatted later on\n if (stream.eatSpace()) {\n state.ateSpace = true;\n return null;\n }\n if (stream.sol() || state.ateSpace) {\n state.ateSpace = false;\n if (modeConfig.gitHubSpice !== false) {\n if(stream.match(/^(?:[a-zA-Z0-9\\-_]+\\/)?(?:[a-zA-Z0-9\\-_]+@)?(?=.{0,6}\\d)(?:[a-f0-9]{7,40}\\b)/)) {\n // User/Project@SHA\n // User@SHA\n // SHA\n state.combineTokens = true;\n return \"link\";\n } else if (stream.match(/^(?:[a-zA-Z0-9\\-_]+\\/)?(?:[a-zA-Z0-9\\-_]+)?#[0-9]+\\b/)) {\n // User/Project#Num\n // User#Num\n // #Num\n state.combineTokens = true;\n return \"link\";\n }\n }\n }\n if (stream.match(urlRE) &&\n stream.string.slice(stream.start - 2, stream.start) != \"](\" &&\n (stream.start == 0 || /\\W/.test(stream.string.charAt(stream.start - 1)))) {\n // URLs\n // Taken from http://daringfireball.net/2010/07/improved_regex_for_matching_urls\n // And then (issue #1160) simplified to make it not crash the Chrome Regexp engine\n // And then limited url schemes to the CommonMark list, so foo:bar isn't matched as a URL\n state.combineTokens = true;\n return \"link\";\n }\n stream.next();\n return null;\n },\n blankLine: blankLine\n };\n\n var markdownConfig = {\n taskLists: true,\n strikethrough: true,\n emoji: true\n };\n for (var attr in modeConfig) {\n markdownConfig[attr] = modeConfig[attr];\n }\n markdownConfig.name = \"markdown\";\n return CodeMirror.overlayMode(CodeMirror.getMode(config, markdownConfig), gfmOverlay);\n\n}, \"markdown\");\n\n CodeMirror.defineMIME(\"text/x-gfm\", \"gfm\");\n});\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\n\n/**/\n\nvar pna = require('process-nextick-args');\n/**/\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err && (!this._writableState || !this._writableState.errorEmitted)) {\n pna.nextTick(emitErrorNT, this, err);\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n pna.nextTick(emitErrorNT, _this, err);\n if (_this._writableState) {\n _this._writableState.errorEmitted = true;\n }\n } else if (cb) {\n cb(err);\n }\n });\n\n return this;\n}\n\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\n\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\n\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy\n};","'use strict';\n\nvar Buffer = require('buffer').Buffer;\nvar Transform = require('stream').Transform;\nvar binding = require('./binding');\nvar util = require('util');\nvar assert = require('assert').ok;\nvar kMaxLength = require('buffer').kMaxLength;\nvar kRangeErrorMessage = 'Cannot create final Buffer. It would be larger ' + 'than 0x' + kMaxLength.toString(16) + ' bytes';\n\n// zlib doesn't provide these, so kludge them in following the same\n// const naming scheme zlib uses.\nbinding.Z_MIN_WINDOWBITS = 8;\nbinding.Z_MAX_WINDOWBITS = 15;\nbinding.Z_DEFAULT_WINDOWBITS = 15;\n\n// fewer than 64 bytes per chunk is stupid.\n// technically it could work with as few as 8, but even 64 bytes\n// is absurdly low. Usually a MB or more is best.\nbinding.Z_MIN_CHUNK = 64;\nbinding.Z_MAX_CHUNK = Infinity;\nbinding.Z_DEFAULT_CHUNK = 16 * 1024;\n\nbinding.Z_MIN_MEMLEVEL = 1;\nbinding.Z_MAX_MEMLEVEL = 9;\nbinding.Z_DEFAULT_MEMLEVEL = 8;\n\nbinding.Z_MIN_LEVEL = -1;\nbinding.Z_MAX_LEVEL = 9;\nbinding.Z_DEFAULT_LEVEL = binding.Z_DEFAULT_COMPRESSION;\n\n// expose all the zlib constants\nvar bkeys = Object.keys(binding);\nfor (var bk = 0; bk < bkeys.length; bk++) {\n var bkey = bkeys[bk];\n if (bkey.match(/^Z/)) {\n Object.defineProperty(exports, bkey, {\n enumerable: true, value: binding[bkey], writable: false\n });\n }\n}\n\n// translation table for return codes.\nvar codes = {\n Z_OK: binding.Z_OK,\n Z_STREAM_END: binding.Z_STREAM_END,\n Z_NEED_DICT: binding.Z_NEED_DICT,\n Z_ERRNO: binding.Z_ERRNO,\n Z_STREAM_ERROR: binding.Z_STREAM_ERROR,\n Z_DATA_ERROR: binding.Z_DATA_ERROR,\n Z_MEM_ERROR: binding.Z_MEM_ERROR,\n Z_BUF_ERROR: binding.Z_BUF_ERROR,\n Z_VERSION_ERROR: binding.Z_VERSION_ERROR\n};\n\nvar ckeys = Object.keys(codes);\nfor (var ck = 0; ck < ckeys.length; ck++) {\n var ckey = ckeys[ck];\n codes[codes[ckey]] = ckey;\n}\n\nObject.defineProperty(exports, 'codes', {\n enumerable: true, value: Object.freeze(codes), writable: false\n});\n\nexports.Deflate = Deflate;\nexports.Inflate = Inflate;\nexports.Gzip = Gzip;\nexports.Gunzip = Gunzip;\nexports.DeflateRaw = DeflateRaw;\nexports.InflateRaw = InflateRaw;\nexports.Unzip = Unzip;\n\nexports.createDeflate = function (o) {\n return new Deflate(o);\n};\n\nexports.createInflate = function (o) {\n return new Inflate(o);\n};\n\nexports.createDeflateRaw = function (o) {\n return new DeflateRaw(o);\n};\n\nexports.createInflateRaw = function (o) {\n return new InflateRaw(o);\n};\n\nexports.createGzip = function (o) {\n return new Gzip(o);\n};\n\nexports.createGunzip = function (o) {\n return new Gunzip(o);\n};\n\nexports.createUnzip = function (o) {\n return new Unzip(o);\n};\n\n// Convenience methods.\n// compress/decompress a string or buffer in one step.\nexports.deflate = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new Deflate(opts), buffer, callback);\n};\n\nexports.deflateSync = function (buffer, opts) {\n return zlibBufferSync(new Deflate(opts), buffer);\n};\n\nexports.gzip = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new Gzip(opts), buffer, callback);\n};\n\nexports.gzipSync = function (buffer, opts) {\n return zlibBufferSync(new Gzip(opts), buffer);\n};\n\nexports.deflateRaw = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new DeflateRaw(opts), buffer, callback);\n};\n\nexports.deflateRawSync = function (buffer, opts) {\n return zlibBufferSync(new DeflateRaw(opts), buffer);\n};\n\nexports.unzip = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new Unzip(opts), buffer, callback);\n};\n\nexports.unzipSync = function (buffer, opts) {\n return zlibBufferSync(new Unzip(opts), buffer);\n};\n\nexports.inflate = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new Inflate(opts), buffer, callback);\n};\n\nexports.inflateSync = function (buffer, opts) {\n return zlibBufferSync(new Inflate(opts), buffer);\n};\n\nexports.gunzip = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new Gunzip(opts), buffer, callback);\n};\n\nexports.gunzipSync = function (buffer, opts) {\n return zlibBufferSync(new Gunzip(opts), buffer);\n};\n\nexports.inflateRaw = function (buffer, opts, callback) {\n if (typeof opts === 'function') {\n callback = opts;\n opts = {};\n }\n return zlibBuffer(new InflateRaw(opts), buffer, callback);\n};\n\nexports.inflateRawSync = function (buffer, opts) {\n return zlibBufferSync(new InflateRaw(opts), buffer);\n};\n\nfunction zlibBuffer(engine, buffer, callback) {\n var buffers = [];\n var nread = 0;\n\n engine.on('error', onError);\n engine.on('end', onEnd);\n\n engine.end(buffer);\n flow();\n\n function flow() {\n var chunk;\n while (null !== (chunk = engine.read())) {\n buffers.push(chunk);\n nread += chunk.length;\n }\n engine.once('readable', flow);\n }\n\n function onError(err) {\n engine.removeListener('end', onEnd);\n engine.removeListener('readable', flow);\n callback(err);\n }\n\n function onEnd() {\n var buf;\n var err = null;\n\n if (nread >= kMaxLength) {\n err = new RangeError(kRangeErrorMessage);\n } else {\n buf = Buffer.concat(buffers, nread);\n }\n\n buffers = [];\n engine.close();\n callback(err, buf);\n }\n}\n\nfunction zlibBufferSync(engine, buffer) {\n if (typeof buffer === 'string') buffer = Buffer.from(buffer);\n\n if (!Buffer.isBuffer(buffer)) throw new TypeError('Not a string or buffer');\n\n var flushFlag = engine._finishFlushFlag;\n\n return engine._processChunk(buffer, flushFlag);\n}\n\n// generic zlib\n// minimal 2-byte header\nfunction Deflate(opts) {\n if (!(this instanceof Deflate)) return new Deflate(opts);\n Zlib.call(this, opts, binding.DEFLATE);\n}\n\nfunction Inflate(opts) {\n if (!(this instanceof Inflate)) return new Inflate(opts);\n Zlib.call(this, opts, binding.INFLATE);\n}\n\n// gzip - bigger header, same deflate compression\nfunction Gzip(opts) {\n if (!(this instanceof Gzip)) return new Gzip(opts);\n Zlib.call(this, opts, binding.GZIP);\n}\n\nfunction Gunzip(opts) {\n if (!(this instanceof Gunzip)) return new Gunzip(opts);\n Zlib.call(this, opts, binding.GUNZIP);\n}\n\n// raw - no header\nfunction DeflateRaw(opts) {\n if (!(this instanceof DeflateRaw)) return new DeflateRaw(opts);\n Zlib.call(this, opts, binding.DEFLATERAW);\n}\n\nfunction InflateRaw(opts) {\n if (!(this instanceof InflateRaw)) return new InflateRaw(opts);\n Zlib.call(this, opts, binding.INFLATERAW);\n}\n\n// auto-detect header.\nfunction Unzip(opts) {\n if (!(this instanceof Unzip)) return new Unzip(opts);\n Zlib.call(this, opts, binding.UNZIP);\n}\n\nfunction isValidFlushFlag(flag) {\n return flag === binding.Z_NO_FLUSH || flag === binding.Z_PARTIAL_FLUSH || flag === binding.Z_SYNC_FLUSH || flag === binding.Z_FULL_FLUSH || flag === binding.Z_FINISH || flag === binding.Z_BLOCK;\n}\n\n// the Zlib class they all inherit from\n// This thing manages the queue of requests, and returns\n// true or false if there is anything in the queue when\n// you call the .write() method.\n\nfunction Zlib(opts, mode) {\n var _this = this;\n\n this._opts = opts = opts || {};\n this._chunkSize = opts.chunkSize || exports.Z_DEFAULT_CHUNK;\n\n Transform.call(this, opts);\n\n if (opts.flush && !isValidFlushFlag(opts.flush)) {\n throw new Error('Invalid flush flag: ' + opts.flush);\n }\n if (opts.finishFlush && !isValidFlushFlag(opts.finishFlush)) {\n throw new Error('Invalid flush flag: ' + opts.finishFlush);\n }\n\n this._flushFlag = opts.flush || binding.Z_NO_FLUSH;\n this._finishFlushFlag = typeof opts.finishFlush !== 'undefined' ? opts.finishFlush : binding.Z_FINISH;\n\n if (opts.chunkSize) {\n if (opts.chunkSize < exports.Z_MIN_CHUNK || opts.chunkSize > exports.Z_MAX_CHUNK) {\n throw new Error('Invalid chunk size: ' + opts.chunkSize);\n }\n }\n\n if (opts.windowBits) {\n if (opts.windowBits < exports.Z_MIN_WINDOWBITS || opts.windowBits > exports.Z_MAX_WINDOWBITS) {\n throw new Error('Invalid windowBits: ' + opts.windowBits);\n }\n }\n\n if (opts.level) {\n if (opts.level < exports.Z_MIN_LEVEL || opts.level > exports.Z_MAX_LEVEL) {\n throw new Error('Invalid compression level: ' + opts.level);\n }\n }\n\n if (opts.memLevel) {\n if (opts.memLevel < exports.Z_MIN_MEMLEVEL || opts.memLevel > exports.Z_MAX_MEMLEVEL) {\n throw new Error('Invalid memLevel: ' + opts.memLevel);\n }\n }\n\n if (opts.strategy) {\n if (opts.strategy != exports.Z_FILTERED && opts.strategy != exports.Z_HUFFMAN_ONLY && opts.strategy != exports.Z_RLE && opts.strategy != exports.Z_FIXED && opts.strategy != exports.Z_DEFAULT_STRATEGY) {\n throw new Error('Invalid strategy: ' + opts.strategy);\n }\n }\n\n if (opts.dictionary) {\n if (!Buffer.isBuffer(opts.dictionary)) {\n throw new Error('Invalid dictionary: it should be a Buffer instance');\n }\n }\n\n this._handle = new binding.Zlib(mode);\n\n var self = this;\n this._hadError = false;\n this._handle.onerror = function (message, errno) {\n // there is no way to cleanly recover.\n // continuing only obscures problems.\n _close(self);\n self._hadError = true;\n\n var error = new Error(message);\n error.errno = errno;\n error.code = exports.codes[errno];\n self.emit('error', error);\n };\n\n var level = exports.Z_DEFAULT_COMPRESSION;\n if (typeof opts.level === 'number') level = opts.level;\n\n var strategy = exports.Z_DEFAULT_STRATEGY;\n if (typeof opts.strategy === 'number') strategy = opts.strategy;\n\n this._handle.init(opts.windowBits || exports.Z_DEFAULT_WINDOWBITS, level, opts.memLevel || exports.Z_DEFAULT_MEMLEVEL, strategy, opts.dictionary);\n\n this._buffer = Buffer.allocUnsafe(this._chunkSize);\n this._offset = 0;\n this._level = level;\n this._strategy = strategy;\n\n this.once('end', this.close);\n\n Object.defineProperty(this, '_closed', {\n get: function () {\n return !_this._handle;\n },\n configurable: true,\n enumerable: true\n });\n}\n\nutil.inherits(Zlib, Transform);\n\nZlib.prototype.params = function (level, strategy, callback) {\n if (level < exports.Z_MIN_LEVEL || level > exports.Z_MAX_LEVEL) {\n throw new RangeError('Invalid compression level: ' + level);\n }\n if (strategy != exports.Z_FILTERED && strategy != exports.Z_HUFFMAN_ONLY && strategy != exports.Z_RLE && strategy != exports.Z_FIXED && strategy != exports.Z_DEFAULT_STRATEGY) {\n throw new TypeError('Invalid strategy: ' + strategy);\n }\n\n if (this._level !== level || this._strategy !== strategy) {\n var self = this;\n this.flush(binding.Z_SYNC_FLUSH, function () {\n assert(self._handle, 'zlib binding closed');\n self._handle.params(level, strategy);\n if (!self._hadError) {\n self._level = level;\n self._strategy = strategy;\n if (callback) callback();\n }\n });\n } else {\n process.nextTick(callback);\n }\n};\n\nZlib.prototype.reset = function () {\n assert(this._handle, 'zlib binding closed');\n return this._handle.reset();\n};\n\n// This is the _flush function called by the transform class,\n// internally, when the last chunk has been written.\nZlib.prototype._flush = function (callback) {\n this._transform(Buffer.alloc(0), '', callback);\n};\n\nZlib.prototype.flush = function (kind, callback) {\n var _this2 = this;\n\n var ws = this._writableState;\n\n if (typeof kind === 'function' || kind === undefined && !callback) {\n callback = kind;\n kind = binding.Z_FULL_FLUSH;\n }\n\n if (ws.ended) {\n if (callback) process.nextTick(callback);\n } else if (ws.ending) {\n if (callback) this.once('end', callback);\n } else if (ws.needDrain) {\n if (callback) {\n this.once('drain', function () {\n return _this2.flush(kind, callback);\n });\n }\n } else {\n this._flushFlag = kind;\n this.write(Buffer.alloc(0), '', callback);\n }\n};\n\nZlib.prototype.close = function (callback) {\n _close(this, callback);\n process.nextTick(emitCloseNT, this);\n};\n\nfunction _close(engine, callback) {\n if (callback) process.nextTick(callback);\n\n // Caller may invoke .close after a zlib error (which will null _handle).\n if (!engine._handle) return;\n\n engine._handle.close();\n engine._handle = null;\n}\n\nfunction emitCloseNT(self) {\n self.emit('close');\n}\n\nZlib.prototype._transform = function (chunk, encoding, cb) {\n var flushFlag;\n var ws = this._writableState;\n var ending = ws.ending || ws.ended;\n var last = ending && (!chunk || ws.length === chunk.length);\n\n if (chunk !== null && !Buffer.isBuffer(chunk)) return cb(new Error('invalid input'));\n\n if (!this._handle) return cb(new Error('zlib binding closed'));\n\n // If it's the last chunk, or a final flush, we use the Z_FINISH flush flag\n // (or whatever flag was provided using opts.finishFlush).\n // If it's explicitly flushing at some other time, then we use\n // Z_FULL_FLUSH. Otherwise, use Z_NO_FLUSH for maximum compression\n // goodness.\n if (last) flushFlag = this._finishFlushFlag;else {\n flushFlag = this._flushFlag;\n // once we've flushed the last of the queue, stop flushing and\n // go back to the normal behavior.\n if (chunk.length >= ws.length) {\n this._flushFlag = this._opts.flush || binding.Z_NO_FLUSH;\n }\n }\n\n this._processChunk(chunk, flushFlag, cb);\n};\n\nZlib.prototype._processChunk = function (chunk, flushFlag, cb) {\n var availInBefore = chunk && chunk.length;\n var availOutBefore = this._chunkSize - this._offset;\n var inOff = 0;\n\n var self = this;\n\n var async = typeof cb === 'function';\n\n if (!async) {\n var buffers = [];\n var nread = 0;\n\n var error;\n this.on('error', function (er) {\n error = er;\n });\n\n assert(this._handle, 'zlib binding closed');\n do {\n var res = this._handle.writeSync(flushFlag, chunk, // in\n inOff, // in_off\n availInBefore, // in_len\n this._buffer, // out\n this._offset, //out_off\n availOutBefore); // out_len\n } while (!this._hadError && callback(res[0], res[1]));\n\n if (this._hadError) {\n throw error;\n }\n\n if (nread >= kMaxLength) {\n _close(this);\n throw new RangeError(kRangeErrorMessage);\n }\n\n var buf = Buffer.concat(buffers, nread);\n _close(this);\n\n return buf;\n }\n\n assert(this._handle, 'zlib binding closed');\n var req = this._handle.write(flushFlag, chunk, // in\n inOff, // in_off\n availInBefore, // in_len\n this._buffer, // out\n this._offset, //out_off\n availOutBefore); // out_len\n\n req.buffer = chunk;\n req.callback = callback;\n\n function callback(availInAfter, availOutAfter) {\n // When the callback is used in an async write, the callback's\n // context is the `req` object that was created. The req object\n // is === this._handle, and that's why it's important to null\n // out the values after they are done being used. `this._handle`\n // can stay in memory longer than the callback and buffer are needed.\n if (this) {\n this.buffer = null;\n this.callback = null;\n }\n\n if (self._hadError) return;\n\n var have = availOutBefore - availOutAfter;\n assert(have >= 0, 'have should not go down');\n\n if (have > 0) {\n var out = self._buffer.slice(self._offset, self._offset + have);\n self._offset += have;\n // serve some output to the consumer.\n if (async) {\n self.push(out);\n } else {\n buffers.push(out);\n nread += out.length;\n }\n }\n\n // exhausted the output buffer, or used all the input create a new one.\n if (availOutAfter === 0 || self._offset >= self._chunkSize) {\n availOutBefore = self._chunkSize;\n self._offset = 0;\n self._buffer = Buffer.allocUnsafe(self._chunkSize);\n }\n\n if (availOutAfter === 0) {\n // Not actually done. Need to reprocess.\n // Also, update the availInBefore to the availInAfter value,\n // so that if we have to hit it a third (fourth, etc.) time,\n // it'll have the correct byte counts.\n inOff += availInBefore - availInAfter;\n availInBefore = availInAfter;\n\n if (!async) return true;\n\n var newReq = self._handle.write(flushFlag, chunk, inOff, availInBefore, self._buffer, self._offset, self._chunkSize);\n newReq.callback = callback; // this same function\n newReq.buffer = chunk;\n return;\n }\n\n if (!async) return false;\n\n // finished with the chunk.\n cb();\n }\n};\n\nutil.inherits(Deflate, Zlib);\nutil.inherits(Inflate, Zlib);\nutil.inherits(Gzip, Zlib);\nutil.inherits(Gunzip, Zlib);\nutil.inherits(DeflateRaw, Zlib);\nutil.inherits(InflateRaw, Zlib);\nutil.inherits(Unzip, Zlib);","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n(function(mod) {\n if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n mod(require(\"../../lib/codemirror\"));\n else if (typeof define == \"function\" && define.amd) // AMD\n define([\"../../lib/codemirror\"], mod);\n else // Plain browser env\n mod(CodeMirror);\n})(function(CodeMirror) {\n \"use strict\";\n\n function doFold(cm, pos, options, force) {\n if (options && options.call) {\n var finder = options;\n options = null;\n } else {\n var finder = getOption(cm, options, \"rangeFinder\");\n }\n if (typeof pos == \"number\") pos = CodeMirror.Pos(pos, 0);\n var minSize = getOption(cm, options, \"minFoldSize\");\n\n function getRange(allowFolded) {\n var range = finder(cm, pos);\n if (!range || range.to.line - range.from.line < minSize) return null;\n var marks = cm.findMarksAt(range.from);\n for (var i = 0; i < marks.length; ++i) {\n if (marks[i].__isFold && force !== \"fold\") {\n if (!allowFolded) return null;\n range.cleared = true;\n marks[i].clear();\n }\n }\n return range;\n }\n\n var range = getRange(true);\n if (getOption(cm, options, \"scanUp\")) while (!range && pos.line > cm.firstLine()) {\n pos = CodeMirror.Pos(pos.line - 1, 0);\n range = getRange(false);\n }\n if (!range || range.cleared || force === \"unfold\") return;\n\n var myWidget = makeWidget(cm, options, range);\n CodeMirror.on(myWidget, \"mousedown\", function(e) {\n myRange.clear();\n CodeMirror.e_preventDefault(e);\n });\n var myRange = cm.markText(range.from, range.to, {\n replacedWith: myWidget,\n clearOnEnter: getOption(cm, options, \"clearOnEnter\"),\n __isFold: true\n });\n myRange.on(\"clear\", function(from, to) {\n CodeMirror.signal(cm, \"unfold\", cm, from, to);\n });\n CodeMirror.signal(cm, \"fold\", cm, range.from, range.to);\n }\n\n function makeWidget(cm, options, range) {\n var widget = getOption(cm, options, \"widget\");\n\n if (typeof widget == \"function\") {\n widget = widget(range.from, range.to);\n }\n\n if (typeof widget == \"string\") {\n var text = document.createTextNode(widget);\n widget = document.createElement(\"span\");\n widget.appendChild(text);\n widget.className = \"CodeMirror-foldmarker\";\n } else if (widget) {\n widget = widget.cloneNode(true)\n }\n return widget;\n }\n\n // Clumsy backwards-compatible interface\n CodeMirror.newFoldFunction = function(rangeFinder, widget) {\n return function(cm, pos) { doFold(cm, pos, {rangeFinder: rangeFinder, widget: widget}); };\n };\n\n // New-style interface\n CodeMirror.defineExtension(\"foldCode\", function(pos, options, force) {\n doFold(this, pos, options, force);\n });\n\n CodeMirror.defineExtension(\"isFolded\", function(pos) {\n var marks = this.findMarksAt(pos);\n for (var i = 0; i < marks.length; ++i)\n if (marks[i].__isFold) return true;\n });\n\n CodeMirror.commands.toggleFold = function(cm) {\n cm.foldCode(cm.getCursor());\n };\n CodeMirror.commands.fold = function(cm) {\n cm.foldCode(cm.getCursor(), null, \"fold\");\n };\n CodeMirror.commands.unfold = function(cm) {\n cm.foldCode(cm.getCursor(), null, \"unfold\");\n };\n CodeMirror.commands.foldAll = function(cm) {\n cm.operation(function() {\n for (var i = cm.firstLine(), e = cm.lastLine(); i <= e; i++)\n cm.foldCode(CodeMirror.Pos(i, 0), null, \"fold\");\n });\n };\n CodeMirror.commands.unfoldAll = function(cm) {\n cm.operation(function() {\n for (var i = cm.firstLine(), e = cm.lastLine(); i <= e; i++)\n cm.foldCode(CodeMirror.Pos(i, 0), null, \"unfold\");\n });\n };\n\n CodeMirror.registerHelper(\"fold\", \"combine\", function() {\n var funcs = Array.prototype.slice.call(arguments, 0);\n return function(cm, start) {\n for (var i = 0; i < funcs.length; ++i) {\n var found = funcs[i](cm, start);\n if (found) return found;\n }\n };\n });\n\n CodeMirror.registerHelper(\"fold\", \"auto\", function(cm, start) {\n var helpers = cm.getHelpers(start, \"fold\");\n for (var i = 0; i < helpers.length; i++) {\n var cur = helpers[i](cm, start);\n if (cur) return cur;\n }\n });\n\n var defaultOptions = {\n rangeFinder: CodeMirror.fold.auto,\n widget: \"\\u2194\",\n minFoldSize: 0,\n scanUp: false,\n clearOnEnter: true\n };\n\n CodeMirror.defineOption(\"foldOptions\", null);\n\n function getOption(cm, options, name) {\n if (options && options[name] !== undefined)\n return options[name];\n var editorOptions = cm.options.foldOptions;\n if (editorOptions && editorOptions[name] !== undefined)\n return editorOptions[name];\n return defaultOptions[name];\n }\n\n CodeMirror.defineExtension(\"foldOption\", function(options, name) {\n return getOption(this, options, name);\n });\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n 2: 'need dictionary', /* Z_NEED_DICT 2 */\n 1: 'stream end', /* Z_STREAM_END 1 */\n 0: '', /* Z_OK 0 */\n '-1': 'file error', /* Z_ERRNO (-1) */\n '-2': 'stream error', /* Z_STREAM_ERROR (-2) */\n '-3': 'data error', /* Z_DATA_ERROR (-3) */\n '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */\n '-5': 'buffer error', /* Z_BUF_ERROR (-5) */\n '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n\n// This is CodeMirror (https://codemirror.net), a code editor\n// implemented in JavaScript on top of the browser's DOM.\n//\n// You can find some technical background for some of the code below\n// at http://marijnhaverbeke.nl/blog/#cm-internals .\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = global || self, global.CodeMirror = factory());\n}(this, (function () { 'use strict';\n\n // Kludges for bugs and behavior differences that can't be feature\n // detected are enabled based on userAgent etc sniffing.\n var userAgent = navigator.userAgent;\n var platform = navigator.platform;\n\n var gecko = /gecko\\/\\d/i.test(userAgent);\n var ie_upto10 = /MSIE \\d/.test(userAgent);\n var ie_11up = /Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(userAgent);\n var edge = /Edge\\/(\\d+)/.exec(userAgent);\n var ie = ie_upto10 || ie_11up || edge;\n var ie_version = ie && (ie_upto10 ? document.documentMode || 6 : +(edge || ie_11up)[1]);\n var webkit = !edge && /WebKit\\//.test(userAgent);\n var qtwebkit = webkit && /Qt\\/\\d+\\.\\d+/.test(userAgent);\n var chrome = !edge && /Chrome\\//.test(userAgent);\n var presto = /Opera\\//.test(userAgent);\n var safari = /Apple Computer/.test(navigator.vendor);\n var mac_geMountainLion = /Mac OS X 1\\d\\D([8-9]|\\d\\d)\\D/.test(userAgent);\n var phantom = /PhantomJS/.test(userAgent);\n\n var ios = !edge && /AppleWebKit/.test(userAgent) && /Mobile\\/\\w+/.test(userAgent);\n var android = /Android/.test(userAgent);\n // This is woefully incomplete. Suggestions for alternative methods welcome.\n var mobile = ios || android || /webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(userAgent);\n var mac = ios || /Mac/.test(platform);\n var chromeOS = /\\bCrOS\\b/.test(userAgent);\n var windows = /win/i.test(platform);\n\n var presto_version = presto && userAgent.match(/Version\\/(\\d*\\.\\d*)/);\n if (presto_version) { presto_version = Number(presto_version[1]); }\n if (presto_version && presto_version >= 15) { presto = false; webkit = true; }\n // Some browsers use the wrong event properties to signal cmd/ctrl on OS X\n var flipCtrlCmd = mac && (qtwebkit || presto && (presto_version == null || presto_version < 12.11));\n var captureRightClick = gecko || (ie && ie_version >= 9);\n\n function classTest(cls) { return new RegExp(\"(^|\\\\s)\" + cls + \"(?:$|\\\\s)\\\\s*\") }\n\n var rmClass = function(node, cls) {\n var current = node.className;\n var match = classTest(cls).exec(current);\n if (match) {\n var after = current.slice(match.index + match[0].length);\n node.className = current.slice(0, match.index) + (after ? match[1] + after : \"\");\n }\n };\n\n function removeChildren(e) {\n for (var count = e.childNodes.length; count > 0; --count)\n { e.removeChild(e.firstChild); }\n return e\n }\n\n function removeChildrenAndAdd(parent, e) {\n return removeChildren(parent).appendChild(e)\n }\n\n function elt(tag, content, className, style) {\n var e = document.createElement(tag);\n if (className) { e.className = className; }\n if (style) { e.style.cssText = style; }\n if (typeof content == \"string\") { e.appendChild(document.createTextNode(content)); }\n else if (content) { for (var i = 0; i < content.length; ++i) { e.appendChild(content[i]); } }\n return e\n }\n // wrapper for elt, which removes the elt from the accessibility tree\n function eltP(tag, content, className, style) {\n var e = elt(tag, content, className, style);\n e.setAttribute(\"role\", \"presentation\");\n return e\n }\n\n var range;\n if (document.createRange) { range = function(node, start, end, endNode) {\n var r = document.createRange();\n r.setEnd(endNode || node, end);\n r.setStart(node, start);\n return r\n }; }\n else { range = function(node, start, end) {\n var r = document.body.createTextRange();\n try { r.moveToElementText(node.parentNode); }\n catch(e) { return r }\n r.collapse(true);\n r.moveEnd(\"character\", end);\n r.moveStart(\"character\", start);\n return r\n }; }\n\n function contains(parent, child) {\n if (child.nodeType == 3) // Android browser always returns false when child is a textnode\n { child = child.parentNode; }\n if (parent.contains)\n { return parent.contains(child) }\n do {\n if (child.nodeType == 11) { child = child.host; }\n if (child == parent) { return true }\n } while (child = child.parentNode)\n }\n\n function activeElt() {\n // IE and Edge may throw an \"Unspecified Error\" when accessing document.activeElement.\n // IE < 10 will throw when accessed while the page is loading or in an iframe.\n // IE > 9 and Edge will throw when accessed in an iframe if document.body is unavailable.\n var activeElement;\n try {\n activeElement = document.activeElement;\n } catch(e) {\n activeElement = document.body || null;\n }\n while (activeElement && activeElement.shadowRoot && activeElement.shadowRoot.activeElement)\n { activeElement = activeElement.shadowRoot.activeElement; }\n return activeElement\n }\n\n function addClass(node, cls) {\n var current = node.className;\n if (!classTest(cls).test(current)) { node.className += (current ? \" \" : \"\") + cls; }\n }\n function joinClasses(a, b) {\n var as = a.split(\" \");\n for (var i = 0; i < as.length; i++)\n { if (as[i] && !classTest(as[i]).test(b)) { b += \" \" + as[i]; } }\n return b\n }\n\n var selectInput = function(node) { node.select(); };\n if (ios) // Mobile Safari apparently has a bug where select() is broken.\n { selectInput = function(node) { node.selectionStart = 0; node.selectionEnd = node.value.length; }; }\n else if (ie) // Suppress mysterious IE10 errors\n { selectInput = function(node) { try { node.select(); } catch(_e) {} }; }\n\n function bind(f) {\n var args = Array.prototype.slice.call(arguments, 1);\n return function(){return f.apply(null, args)}\n }\n\n function copyObj(obj, target, overwrite) {\n if (!target) { target = {}; }\n for (var prop in obj)\n { if (obj.hasOwnProperty(prop) && (overwrite !== false || !target.hasOwnProperty(prop)))\n { target[prop] = obj[prop]; } }\n return target\n }\n\n // Counts the column offset in a string, taking tabs into account.\n // Used mostly to find indentation.\n function countColumn(string, end, tabSize, startIndex, startValue) {\n if (end == null) {\n end = string.search(/[^\\s\\u00a0]/);\n if (end == -1) { end = string.length; }\n }\n for (var i = startIndex || 0, n = startValue || 0;;) {\n var nextTab = string.indexOf(\"\\t\", i);\n if (nextTab < 0 || nextTab >= end)\n { return n + (end - i) }\n n += nextTab - i;\n n += tabSize - (n % tabSize);\n i = nextTab + 1;\n }\n }\n\n var Delayed = function() {\n this.id = null;\n this.f = null;\n this.time = 0;\n this.handler = bind(this.onTimeout, this);\n };\n Delayed.prototype.onTimeout = function (self) {\n self.id = 0;\n if (self.time <= +new Date) {\n self.f();\n } else {\n setTimeout(self.handler, self.time - +new Date);\n }\n };\n Delayed.prototype.set = function (ms, f) {\n this.f = f;\n var time = +new Date + ms;\n if (!this.id || time < this.time) {\n clearTimeout(this.id);\n this.id = setTimeout(this.handler, ms);\n this.time = time;\n }\n };\n\n function indexOf(array, elt) {\n for (var i = 0; i < array.length; ++i)\n { if (array[i] == elt) { return i } }\n return -1\n }\n\n // Number of pixels added to scroller and sizer to hide scrollbar\n var scrollerGap = 50;\n\n // Returned or thrown by various protocols to signal 'I'm not\n // handling this'.\n var Pass = {toString: function(){return \"CodeMirror.Pass\"}};\n\n // Reused option objects for setSelection & friends\n var sel_dontScroll = {scroll: false}, sel_mouse = {origin: \"*mouse\"}, sel_move = {origin: \"+move\"};\n\n // The inverse of countColumn -- find the offset that corresponds to\n // a particular column.\n function findColumn(string, goal, tabSize) {\n for (var pos = 0, col = 0;;) {\n var nextTab = string.indexOf(\"\\t\", pos);\n if (nextTab == -1) { nextTab = string.length; }\n var skipped = nextTab - pos;\n if (nextTab == string.length || col + skipped >= goal)\n { return pos + Math.min(skipped, goal - col) }\n col += nextTab - pos;\n col += tabSize - (col % tabSize);\n pos = nextTab + 1;\n if (col >= goal) { return pos }\n }\n }\n\n var spaceStrs = [\"\"];\n function spaceStr(n) {\n while (spaceStrs.length <= n)\n { spaceStrs.push(lst(spaceStrs) + \" \"); }\n return spaceStrs[n]\n }\n\n function lst(arr) { return arr[arr.length-1] }\n\n function map(array, f) {\n var out = [];\n for (var i = 0; i < array.length; i++) { out[i] = f(array[i], i); }\n return out\n }\n\n function insertSorted(array, value, score) {\n var pos = 0, priority = score(value);\n while (pos < array.length && score(array[pos]) <= priority) { pos++; }\n array.splice(pos, 0, value);\n }\n\n function nothing() {}\n\n function createObj(base, props) {\n var inst;\n if (Object.create) {\n inst = Object.create(base);\n } else {\n nothing.prototype = base;\n inst = new nothing();\n }\n if (props) { copyObj(props, inst); }\n return inst\n }\n\n var nonASCIISingleCaseWordChar = /[\\u00df\\u0587\\u0590-\\u05f4\\u0600-\\u06ff\\u3040-\\u309f\\u30a0-\\u30ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\uac00-\\ud7af]/;\n function isWordCharBasic(ch) {\n return /\\w/.test(ch) || ch > \"\\x80\" &&\n (ch.toUpperCase() != ch.toLowerCase() || nonASCIISingleCaseWordChar.test(ch))\n }\n function isWordChar(ch, helper) {\n if (!helper) { return isWordCharBasic(ch) }\n if (helper.source.indexOf(\"\\\\w\") > -1 && isWordCharBasic(ch)) { return true }\n return helper.test(ch)\n }\n\n function isEmpty(obj) {\n for (var n in obj) { if (obj.hasOwnProperty(n) && obj[n]) { return false } }\n return true\n }\n\n // Extending unicode characters. A series of a non-extending char +\n // any number of extending chars is treated as a single unit as far\n // as editing and measuring is concerned. This is not fully correct,\n // since some scripts/fonts/browsers also treat other configurations\n // of code points as a group.\n var extendingChars = /[\\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]/;\n function isExtendingChar(ch) { return ch.charCodeAt(0) >= 768 && extendingChars.test(ch) }\n\n // Returns a number from the range [`0`; `str.length`] unless `pos` is outside that range.\n function skipExtendingChars(str, pos, dir) {\n while ((dir < 0 ? pos > 0 : pos < str.length) && isExtendingChar(str.charAt(pos))) { pos += dir; }\n return pos\n }\n\n // Returns the value from the range [`from`; `to`] that satisfies\n // `pred` and is closest to `from`. Assumes that at least `to`\n // satisfies `pred`. Supports `from` being greater than `to`.\n function findFirst(pred, from, to) {\n // At any point we are certain `to` satisfies `pred`, don't know\n // whether `from` does.\n var dir = from > to ? -1 : 1;\n for (;;) {\n if (from == to) { return from }\n var midF = (from + to) / 2, mid = dir < 0 ? Math.ceil(midF) : Math.floor(midF);\n if (mid == from) { return pred(mid) ? from : to }\n if (pred(mid)) { to = mid; }\n else { from = mid + dir; }\n }\n }\n\n // BIDI HELPERS\n\n function iterateBidiSections(order, from, to, f) {\n if (!order) { return f(from, to, \"ltr\", 0) }\n var found = false;\n for (var i = 0; i < order.length; ++i) {\n var part = order[i];\n if (part.from < to && part.to > from || from == to && part.to == from) {\n f(Math.max(part.from, from), Math.min(part.to, to), part.level == 1 ? \"rtl\" : \"ltr\", i);\n found = true;\n }\n }\n if (!found) { f(from, to, \"ltr\"); }\n }\n\n var bidiOther = null;\n function getBidiPartAt(order, ch, sticky) {\n var found;\n bidiOther = null;\n for (var i = 0; i < order.length; ++i) {\n var cur = order[i];\n if (cur.from < ch && cur.to > ch) { return i }\n if (cur.to == ch) {\n if (cur.from != cur.to && sticky == \"before\") { found = i; }\n else { bidiOther = i; }\n }\n if (cur.from == ch) {\n if (cur.from != cur.to && sticky != \"before\") { found = i; }\n else { bidiOther = i; }\n }\n }\n return found != null ? found : bidiOther\n }\n\n // Bidirectional ordering algorithm\n // See http://unicode.org/reports/tr9/tr9-13.html for the algorithm\n // that this (partially) implements.\n\n // One-char codes used for character types:\n // L (L): Left-to-Right\n // R (R): Right-to-Left\n // r (AL): Right-to-Left Arabic\n // 1 (EN): European Number\n // + (ES): European Number Separator\n // % (ET): European Number Terminator\n // n (AN): Arabic Number\n // , (CS): Common Number Separator\n // m (NSM): Non-Spacing Mark\n // b (BN): Boundary Neutral\n // s (B): Paragraph Separator\n // t (S): Segment Separator\n // w (WS): Whitespace\n // N (ON): Other Neutrals\n\n // Returns null if characters are ordered as they appear\n // (left-to-right), or an array of sections ({from, to, level}\n // objects) in the order in which they occur visually.\n var bidiOrdering = (function() {\n // Character types for codepoints 0 to 0xff\n var lowTypes = \"bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN\";\n // Character types for codepoints 0x600 to 0x6f9\n var arabicTypes = \"nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111\";\n function charType(code) {\n if (code <= 0xf7) { return lowTypes.charAt(code) }\n else if (0x590 <= code && code <= 0x5f4) { return \"R\" }\n else if (0x600 <= code && code <= 0x6f9) { return arabicTypes.charAt(code - 0x600) }\n else if (0x6ee <= code && code <= 0x8ac) { return \"r\" }\n else if (0x2000 <= code && code <= 0x200b) { return \"w\" }\n else if (code == 0x200c) { return \"b\" }\n else { return \"L\" }\n }\n\n var bidiRE = /[\\u0590-\\u05f4\\u0600-\\u06ff\\u0700-\\u08ac]/;\n var isNeutral = /[stwN]/, isStrong = /[LRr]/, countsAsLeft = /[Lb1n]/, countsAsNum = /[1n]/;\n\n function BidiSpan(level, from, to) {\n this.level = level;\n this.from = from; this.to = to;\n }\n\n return function(str, direction) {\n var outerType = direction == \"ltr\" ? \"L\" : \"R\";\n\n if (str.length == 0 || direction == \"ltr\" && !bidiRE.test(str)) { return false }\n var len = str.length, types = [];\n for (var i = 0; i < len; ++i)\n { types.push(charType(str.charCodeAt(i))); }\n\n // W1. Examine each non-spacing mark (NSM) in the level run, and\n // change the type of the NSM to the type of the previous\n // character. If the NSM is at the start of the level run, it will\n // get the type of sor.\n for (var i$1 = 0, prev = outerType; i$1 < len; ++i$1) {\n var type = types[i$1];\n if (type == \"m\") { types[i$1] = prev; }\n else { prev = type; }\n }\n\n // W2. Search backwards from each instance of a European number\n // until the first strong type (R, L, AL, or sor) is found. If an\n // AL is found, change the type of the European number to Arabic\n // number.\n // W3. Change all ALs to R.\n for (var i$2 = 0, cur = outerType; i$2 < len; ++i$2) {\n var type$1 = types[i$2];\n if (type$1 == \"1\" && cur == \"r\") { types[i$2] = \"n\"; }\n else if (isStrong.test(type$1)) { cur = type$1; if (type$1 == \"r\") { types[i$2] = \"R\"; } }\n }\n\n // W4. A single European separator between two European numbers\n // changes to a European number. A single common separator between\n // two numbers of the same type changes to that type.\n for (var i$3 = 1, prev$1 = types[0]; i$3 < len - 1; ++i$3) {\n var type$2 = types[i$3];\n if (type$2 == \"+\" && prev$1 == \"1\" && types[i$3+1] == \"1\") { types[i$3] = \"1\"; }\n else if (type$2 == \",\" && prev$1 == types[i$3+1] &&\n (prev$1 == \"1\" || prev$1 == \"n\")) { types[i$3] = prev$1; }\n prev$1 = type$2;\n }\n\n // W5. A sequence of European terminators adjacent to European\n // numbers changes to all European numbers.\n // W6. Otherwise, separators and terminators change to Other\n // Neutral.\n for (var i$4 = 0; i$4 < len; ++i$4) {\n var type$3 = types[i$4];\n if (type$3 == \",\") { types[i$4] = \"N\"; }\n else if (type$3 == \"%\") {\n var end = (void 0);\n for (end = i$4 + 1; end < len && types[end] == \"%\"; ++end) {}\n var replace = (i$4 && types[i$4-1] == \"!\") || (end < len && types[end] == \"1\") ? \"1\" : \"N\";\n for (var j = i$4; j < end; ++j) { types[j] = replace; }\n i$4 = end - 1;\n }\n }\n\n // W7. Search backwards from each instance of a European number\n // until the first strong type (R, L, or sor) is found. If an L is\n // found, then change the type of the European number to L.\n for (var i$5 = 0, cur$1 = outerType; i$5 < len; ++i$5) {\n var type$4 = types[i$5];\n if (cur$1 == \"L\" && type$4 == \"1\") { types[i$5] = \"L\"; }\n else if (isStrong.test(type$4)) { cur$1 = type$4; }\n }\n\n // N1. A sequence of neutrals takes the direction of the\n // surrounding strong text if the text on both sides has the same\n // direction. European and Arabic numbers act as if they were R in\n // terms of their influence on neutrals. Start-of-level-run (sor)\n // and end-of-level-run (eor) are used at level run boundaries.\n // N2. Any remaining neutrals take the embedding direction.\n for (var i$6 = 0; i$6 < len; ++i$6) {\n if (isNeutral.test(types[i$6])) {\n var end$1 = (void 0);\n for (end$1 = i$6 + 1; end$1 < len && isNeutral.test(types[end$1]); ++end$1) {}\n var before = (i$6 ? types[i$6-1] : outerType) == \"L\";\n var after = (end$1 < len ? types[end$1] : outerType) == \"L\";\n var replace$1 = before == after ? (before ? \"L\" : \"R\") : outerType;\n for (var j$1 = i$6; j$1 < end$1; ++j$1) { types[j$1] = replace$1; }\n i$6 = end$1 - 1;\n }\n }\n\n // Here we depart from the documented algorithm, in order to avoid\n // building up an actual levels array. Since there are only three\n // levels (0, 1, 2) in an implementation that doesn't take\n // explicit embedding into account, we can build up the order on\n // the fly, without following the level-based algorithm.\n var order = [], m;\n for (var i$7 = 0; i$7 < len;) {\n if (countsAsLeft.test(types[i$7])) {\n var start = i$7;\n for (++i$7; i$7 < len && countsAsLeft.test(types[i$7]); ++i$7) {}\n order.push(new BidiSpan(0, start, i$7));\n } else {\n var pos = i$7, at = order.length, isRTL = direction == \"rtl\" ? 1 : 0;\n for (++i$7; i$7 < len && types[i$7] != \"L\"; ++i$7) {}\n for (var j$2 = pos; j$2 < i$7;) {\n if (countsAsNum.test(types[j$2])) {\n if (pos < j$2) { order.splice(at, 0, new BidiSpan(1, pos, j$2)); at += isRTL; }\n var nstart = j$2;\n for (++j$2; j$2 < i$7 && countsAsNum.test(types[j$2]); ++j$2) {}\n order.splice(at, 0, new BidiSpan(2, nstart, j$2));\n at += isRTL;\n pos = j$2;\n } else { ++j$2; }\n }\n if (pos < i$7) { order.splice(at, 0, new BidiSpan(1, pos, i$7)); }\n }\n }\n if (direction == \"ltr\") {\n if (order[0].level == 1 && (m = str.match(/^\\s+/))) {\n order[0].from = m[0].length;\n order.unshift(new BidiSpan(0, 0, m[0].length));\n }\n if (lst(order).level == 1 && (m = str.match(/\\s+$/))) {\n lst(order).to -= m[0].length;\n order.push(new BidiSpan(0, len - m[0].length, len));\n }\n }\n\n return direction == \"rtl\" ? order.reverse() : order\n }\n })();\n\n // Get the bidi ordering for the given line (and cache it). Returns\n // false for lines that are fully left-to-right, and an array of\n // BidiSpan objects otherwise.\n function getOrder(line, direction) {\n var order = line.order;\n if (order == null) { order = line.order = bidiOrdering(line.text, direction); }\n return order\n }\n\n // EVENT HANDLING\n\n // Lightweight event framework. on/off also work on DOM nodes,\n // registering native DOM handlers.\n\n var noHandlers = [];\n\n var on = function(emitter, type, f) {\n if (emitter.addEventListener) {\n emitter.addEventListener(type, f, false);\n } else if (emitter.attachEvent) {\n emitter.attachEvent(\"on\" + type, f);\n } else {\n var map = emitter._handlers || (emitter._handlers = {});\n map[type] = (map[type] || noHandlers).concat(f);\n }\n };\n\n function getHandlers(emitter, type) {\n return emitter._handlers && emitter._handlers[type] || noHandlers\n }\n\n function off(emitter, type, f) {\n if (emitter.removeEventListener) {\n emitter.removeEventListener(type, f, false);\n } else if (emitter.detachEvent) {\n emitter.detachEvent(\"on\" + type, f);\n } else {\n var map = emitter._handlers, arr = map && map[type];\n if (arr) {\n var index = indexOf(arr, f);\n if (index > -1)\n { map[type] = arr.slice(0, index).concat(arr.slice(index + 1)); }\n }\n }\n }\n\n function signal(emitter, type /*, values...*/) {\n var handlers = getHandlers(emitter, type);\n if (!handlers.length) { return }\n var args = Array.prototype.slice.call(arguments, 2);\n for (var i = 0; i < handlers.length; ++i) { handlers[i].apply(null, args); }\n }\n\n // The DOM events that CodeMirror handles can be overridden by\n // registering a (non-DOM) handler on the editor for the event name,\n // and preventDefault-ing the event in that handler.\n function signalDOMEvent(cm, e, override) {\n if (typeof e == \"string\")\n { e = {type: e, preventDefault: function() { this.defaultPrevented = true; }}; }\n signal(cm, override || e.type, cm, e);\n return e_defaultPrevented(e) || e.codemirrorIgnore\n }\n\n function signalCursorActivity(cm) {\n var arr = cm._handlers && cm._handlers.cursorActivity;\n if (!arr) { return }\n var set = cm.curOp.cursorActivityHandlers || (cm.curOp.cursorActivityHandlers = []);\n for (var i = 0; i < arr.length; ++i) { if (indexOf(set, arr[i]) == -1)\n { set.push(arr[i]); } }\n }\n\n function hasHandler(emitter, type) {\n return getHandlers(emitter, type).length > 0\n }\n\n // Add on and off methods to a constructor's prototype, to make\n // registering events on such objects more convenient.\n function eventMixin(ctor) {\n ctor.prototype.on = function(type, f) {on(this, type, f);};\n ctor.prototype.off = function(type, f) {off(this, type, f);};\n }\n\n // Due to the fact that we still support jurassic IE versions, some\n // compatibility wrappers are needed.\n\n function e_preventDefault(e) {\n if (e.preventDefault) { e.preventDefault(); }\n else { e.returnValue = false; }\n }\n function e_stopPropagation(e) {\n if (e.stopPropagation) { e.stopPropagation(); }\n else { e.cancelBubble = true; }\n }\n function e_defaultPrevented(e) {\n return e.defaultPrevented != null ? e.defaultPrevented : e.returnValue == false\n }\n function e_stop(e) {e_preventDefault(e); e_stopPropagation(e);}\n\n function e_target(e) {return e.target || e.srcElement}\n function e_button(e) {\n var b = e.which;\n if (b == null) {\n if (e.button & 1) { b = 1; }\n else if (e.button & 2) { b = 3; }\n else if (e.button & 4) { b = 2; }\n }\n if (mac && e.ctrlKey && b == 1) { b = 3; }\n return b\n }\n\n // Detect drag-and-drop\n var dragAndDrop = function() {\n // There is *some* kind of drag-and-drop support in IE6-8, but I\n // couldn't get it to work yet.\n if (ie && ie_version < 9) { return false }\n var div = elt('div');\n return \"draggable\" in div || \"dragDrop\" in div\n }();\n\n var zwspSupported;\n function zeroWidthElement(measure) {\n if (zwspSupported == null) {\n var test = elt(\"span\", \"\\u200b\");\n removeChildrenAndAdd(measure, elt(\"span\", [test, document.createTextNode(\"x\")]));\n if (measure.firstChild.offsetHeight != 0)\n { zwspSupported = test.offsetWidth <= 1 && test.offsetHeight > 2 && !(ie && ie_version < 8); }\n }\n var node = zwspSupported ? elt(\"span\", \"\\u200b\") :\n elt(\"span\", \"\\u00a0\", null, \"display: inline-block; width: 1px; margin-right: -1px\");\n node.setAttribute(\"cm-text\", \"\");\n return node\n }\n\n // Feature-detect IE's crummy client rect reporting for bidi text\n var badBidiRects;\n function hasBadBidiRects(measure) {\n if (badBidiRects != null) { return badBidiRects }\n var txt = removeChildrenAndAdd(measure, document.createTextNode(\"A\\u062eA\"));\n var r0 = range(txt, 0, 1).getBoundingClientRect();\n var r1 = range(txt, 1, 2).getBoundingClientRect();\n removeChildren(measure);\n if (!r0 || r0.left == r0.right) { return false } // Safari returns null in some cases (#2780)\n return badBidiRects = (r1.right - r0.right < 3)\n }\n\n // See if \"\".split is the broken IE version, if so, provide an\n // alternative way to split lines.\n var splitLinesAuto = \"\\n\\nb\".split(/\\n/).length != 3 ? function (string) {\n var pos = 0, result = [], l = string.length;\n while (pos <= l) {\n var nl = string.indexOf(\"\\n\", pos);\n if (nl == -1) { nl = string.length; }\n var line = string.slice(pos, string.charAt(nl - 1) == \"\\r\" ? nl - 1 : nl);\n var rt = line.indexOf(\"\\r\");\n if (rt != -1) {\n result.push(line.slice(0, rt));\n pos += rt + 1;\n } else {\n result.push(line);\n pos = nl + 1;\n }\n }\n return result\n } : function (string) { return string.split(/\\r\\n?|\\n/); };\n\n var hasSelection = window.getSelection ? function (te) {\n try { return te.selectionStart != te.selectionEnd }\n catch(e) { return false }\n } : function (te) {\n var range;\n try {range = te.ownerDocument.selection.createRange();}\n catch(e) {}\n if (!range || range.parentElement() != te) { return false }\n return range.compareEndPoints(\"StartToEnd\", range) != 0\n };\n\n var hasCopyEvent = (function () {\n var e = elt(\"div\");\n if (\"oncopy\" in e) { return true }\n e.setAttribute(\"oncopy\", \"return;\");\n return typeof e.oncopy == \"function\"\n })();\n\n var badZoomedRects = null;\n function hasBadZoomedRects(measure) {\n if (badZoomedRects != null) { return badZoomedRects }\n var node = removeChildrenAndAdd(measure, elt(\"span\", \"x\"));\n var normal = node.getBoundingClientRect();\n var fromRange = range(node, 0, 1).getBoundingClientRect();\n return badZoomedRects = Math.abs(normal.left - fromRange.left) > 1\n }\n\n // Known modes, by name and by MIME\n var modes = {}, mimeModes = {};\n\n // Extra arguments are stored as the mode's dependencies, which is\n // used by (legacy) mechanisms like loadmode.js to automatically\n // load a mode. (Preferred mechanism is the require/define calls.)\n function defineMode(name, mode) {\n if (arguments.length > 2)\n { mode.dependencies = Array.prototype.slice.call(arguments, 2); }\n modes[name] = mode;\n }\n\n function defineMIME(mime, spec) {\n mimeModes[mime] = spec;\n }\n\n // Given a MIME type, a {name, ...options} config object, or a name\n // string, return a mode config object.\n function resolveMode(spec) {\n if (typeof spec == \"string\" && mimeModes.hasOwnProperty(spec)) {\n spec = mimeModes[spec];\n } else if (spec && typeof spec.name == \"string\" && mimeModes.hasOwnProperty(spec.name)) {\n var found = mimeModes[spec.name];\n if (typeof found == \"string\") { found = {name: found}; }\n spec = createObj(found, spec);\n spec.name = found.name;\n } else if (typeof spec == \"string\" && /^[\\w\\-]+\\/[\\w\\-]+\\+xml$/.test(spec)) {\n return resolveMode(\"application/xml\")\n } else if (typeof spec == \"string\" && /^[\\w\\-]+\\/[\\w\\-]+\\+json$/.test(spec)) {\n return resolveMode(\"application/json\")\n }\n if (typeof spec == \"string\") { return {name: spec} }\n else { return spec || {name: \"null\"} }\n }\n\n // Given a mode spec (anything that resolveMode accepts), find and\n // initialize an actual mode object.\n function getMode(options, spec) {\n spec = resolveMode(spec);\n var mfactory = modes[spec.name];\n if (!mfactory) { return getMode(options, \"text/plain\") }\n var modeObj = mfactory(options, spec);\n if (modeExtensions.hasOwnProperty(spec.name)) {\n var exts = modeExtensions[spec.name];\n for (var prop in exts) {\n if (!exts.hasOwnProperty(prop)) { continue }\n if (modeObj.hasOwnProperty(prop)) { modeObj[\"_\" + prop] = modeObj[prop]; }\n modeObj[prop] = exts[prop];\n }\n }\n modeObj.name = spec.name;\n if (spec.helperType) { modeObj.helperType = spec.helperType; }\n if (spec.modeProps) { for (var prop$1 in spec.modeProps)\n { modeObj[prop$1] = spec.modeProps[prop$1]; } }\n\n return modeObj\n }\n\n // This can be used to attach properties to mode objects from\n // outside the actual mode definition.\n var modeExtensions = {};\n function extendMode(mode, properties) {\n var exts = modeExtensions.hasOwnProperty(mode) ? modeExtensions[mode] : (modeExtensions[mode] = {});\n copyObj(properties, exts);\n }\n\n function copyState(mode, state) {\n if (state === true) { return state }\n if (mode.copyState) { return mode.copyState(state) }\n var nstate = {};\n for (var n in state) {\n var val = state[n];\n if (val instanceof Array) { val = val.concat([]); }\n nstate[n] = val;\n }\n return nstate\n }\n\n // Given a mode and a state (for that mode), find the inner mode and\n // state at the position that the state refers to.\n function innerMode(mode, state) {\n var info;\n while (mode.innerMode) {\n info = mode.innerMode(state);\n if (!info || info.mode == mode) { break }\n state = info.state;\n mode = info.mode;\n }\n return info || {mode: mode, state: state}\n }\n\n function startState(mode, a1, a2) {\n return mode.startState ? mode.startState(a1, a2) : true\n }\n\n // STRING STREAM\n\n // Fed to the mode parsers, provides helper functions to make\n // parsers more succinct.\n\n var StringStream = function(string, tabSize, lineOracle) {\n this.pos = this.start = 0;\n this.string = string;\n this.tabSize = tabSize || 8;\n this.lastColumnPos = this.lastColumnValue = 0;\n this.lineStart = 0;\n this.lineOracle = lineOracle;\n };\n\n StringStream.prototype.eol = function () {return this.pos >= this.string.length};\n StringStream.prototype.sol = function () {return this.pos == this.lineStart};\n StringStream.prototype.peek = function () {return this.string.charAt(this.pos) || undefined};\n StringStream.prototype.next = function () {\n if (this.pos < this.string.length)\n { return this.string.charAt(this.pos++) }\n };\n StringStream.prototype.eat = function (match) {\n var ch = this.string.charAt(this.pos);\n var ok;\n if (typeof match == \"string\") { ok = ch == match; }\n else { ok = ch && (match.test ? match.test(ch) : match(ch)); }\n if (ok) {++this.pos; return ch}\n };\n StringStream.prototype.eatWhile = function (match) {\n var start = this.pos;\n while (this.eat(match)){}\n return this.pos > start\n };\n StringStream.prototype.eatSpace = function () {\n var start = this.pos;\n while (/[\\s\\u00a0]/.test(this.string.charAt(this.pos))) { ++this.pos; }\n return this.pos > start\n };\n StringStream.prototype.skipToEnd = function () {this.pos = this.string.length;};\n StringStream.prototype.skipTo = function (ch) {\n var found = this.string.indexOf(ch, this.pos);\n if (found > -1) {this.pos = found; return true}\n };\n StringStream.prototype.backUp = function (n) {this.pos -= n;};\n StringStream.prototype.column = function () {\n if (this.lastColumnPos < this.start) {\n this.lastColumnValue = countColumn(this.string, this.start, this.tabSize, this.lastColumnPos, this.lastColumnValue);\n this.lastColumnPos = this.start;\n }\n return this.lastColumnValue - (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0)\n };\n StringStream.prototype.indentation = function () {\n return countColumn(this.string, null, this.tabSize) -\n (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0)\n };\n StringStream.prototype.match = function (pattern, consume, caseInsensitive) {\n if (typeof pattern == \"string\") {\n var cased = function (str) { return caseInsensitive ? str.toLowerCase() : str; };\n var substr = this.string.substr(this.pos, pattern.length);\n if (cased(substr) == cased(pattern)) {\n if (consume !== false) { this.pos += pattern.length; }\n return true\n }\n } else {\n var match = this.string.slice(this.pos).match(pattern);\n if (match && match.index > 0) { return null }\n if (match && consume !== false) { this.pos += match[0].length; }\n return match\n }\n };\n StringStream.prototype.current = function (){return this.string.slice(this.start, this.pos)};\n StringStream.prototype.hideFirstChars = function (n, inner) {\n this.lineStart += n;\n try { return inner() }\n finally { this.lineStart -= n; }\n };\n StringStream.prototype.lookAhead = function (n) {\n var oracle = this.lineOracle;\n return oracle && oracle.lookAhead(n)\n };\n StringStream.prototype.baseToken = function () {\n var oracle = this.lineOracle;\n return oracle && oracle.baseToken(this.pos)\n };\n\n // Find the line object corresponding to the given line number.\n function getLine(doc, n) {\n n -= doc.first;\n if (n < 0 || n >= doc.size) { throw new Error(\"There is no line \" + (n + doc.first) + \" in the document.\") }\n var chunk = doc;\n while (!chunk.lines) {\n for (var i = 0;; ++i) {\n var child = chunk.children[i], sz = child.chunkSize();\n if (n < sz) { chunk = child; break }\n n -= sz;\n }\n }\n return chunk.lines[n]\n }\n\n // Get the part of a document between two positions, as an array of\n // strings.\n function getBetween(doc, start, end) {\n var out = [], n = start.line;\n doc.iter(start.line, end.line + 1, function (line) {\n var text = line.text;\n if (n == end.line) { text = text.slice(0, end.ch); }\n if (n == start.line) { text = text.slice(start.ch); }\n out.push(text);\n ++n;\n });\n return out\n }\n // Get the lines between from and to, as array of strings.\n function getLines(doc, from, to) {\n var out = [];\n doc.iter(from, to, function (line) { out.push(line.text); }); // iter aborts when callback returns truthy value\n return out\n }\n\n // Update the height of a line, propagating the height change\n // upwards to parent nodes.\n function updateLineHeight(line, height) {\n var diff = height - line.height;\n if (diff) { for (var n = line; n; n = n.parent) { n.height += diff; } }\n }\n\n // Given a line object, find its line number by walking up through\n // its parent links.\n function lineNo(line) {\n if (line.parent == null) { return null }\n var cur = line.parent, no = indexOf(cur.lines, line);\n for (var chunk = cur.parent; chunk; cur = chunk, chunk = chunk.parent) {\n for (var i = 0;; ++i) {\n if (chunk.children[i] == cur) { break }\n no += chunk.children[i].chunkSize();\n }\n }\n return no + cur.first\n }\n\n // Find the line at the given vertical position, using the height\n // information in the document tree.\n function lineAtHeight(chunk, h) {\n var n = chunk.first;\n outer: do {\n for (var i$1 = 0; i$1 < chunk.children.length; ++i$1) {\n var child = chunk.children[i$1], ch = child.height;\n if (h < ch) { chunk = child; continue outer }\n h -= ch;\n n += child.chunkSize();\n }\n return n\n } while (!chunk.lines)\n var i = 0;\n for (; i < chunk.lines.length; ++i) {\n var line = chunk.lines[i], lh = line.height;\n if (h < lh) { break }\n h -= lh;\n }\n return n + i\n }\n\n function isLine(doc, l) {return l >= doc.first && l < doc.first + doc.size}\n\n function lineNumberFor(options, i) {\n return String(options.lineNumberFormatter(i + options.firstLineNumber))\n }\n\n // A Pos instance represents a position within the text.\n function Pos(line, ch, sticky) {\n if ( sticky === void 0 ) sticky = null;\n\n if (!(this instanceof Pos)) { return new Pos(line, ch, sticky) }\n this.line = line;\n this.ch = ch;\n this.sticky = sticky;\n }\n\n // Compare two positions, return 0 if they are the same, a negative\n // number when a is less, and a positive number otherwise.\n function cmp(a, b) { return a.line - b.line || a.ch - b.ch }\n\n function equalCursorPos(a, b) { return a.sticky == b.sticky && cmp(a, b) == 0 }\n\n function copyPos(x) {return Pos(x.line, x.ch)}\n function maxPos(a, b) { return cmp(a, b) < 0 ? b : a }\n function minPos(a, b) { return cmp(a, b) < 0 ? a : b }\n\n // Most of the external API clips given positions to make sure they\n // actually exist within the document.\n function clipLine(doc, n) {return Math.max(doc.first, Math.min(n, doc.first + doc.size - 1))}\n function clipPos(doc, pos) {\n if (pos.line < doc.first) { return Pos(doc.first, 0) }\n var last = doc.first + doc.size - 1;\n if (pos.line > last) { return Pos(last, getLine(doc, last).text.length) }\n return clipToLen(pos, getLine(doc, pos.line).text.length)\n }\n function clipToLen(pos, linelen) {\n var ch = pos.ch;\n if (ch == null || ch > linelen) { return Pos(pos.line, linelen) }\n else if (ch < 0) { return Pos(pos.line, 0) }\n else { return pos }\n }\n function clipPosArray(doc, array) {\n var out = [];\n for (var i = 0; i < array.length; i++) { out[i] = clipPos(doc, array[i]); }\n return out\n }\n\n var SavedContext = function(state, lookAhead) {\n this.state = state;\n this.lookAhead = lookAhead;\n };\n\n var Context = function(doc, state, line, lookAhead) {\n this.state = state;\n this.doc = doc;\n this.line = line;\n this.maxLookAhead = lookAhead || 0;\n this.baseTokens = null;\n this.baseTokenPos = 1;\n };\n\n Context.prototype.lookAhead = function (n) {\n var line = this.doc.getLine(this.line + n);\n if (line != null && n > this.maxLookAhead) { this.maxLookAhead = n; }\n return line\n };\n\n Context.prototype.baseToken = function (n) {\n if (!this.baseTokens) { return null }\n while (this.baseTokens[this.baseTokenPos] <= n)\n { this.baseTokenPos += 2; }\n var type = this.baseTokens[this.baseTokenPos + 1];\n return {type: type && type.replace(/( |^)overlay .*/, \"\"),\n size: this.baseTokens[this.baseTokenPos] - n}\n };\n\n Context.prototype.nextLine = function () {\n this.line++;\n if (this.maxLookAhead > 0) { this.maxLookAhead--; }\n };\n\n Context.fromSaved = function (doc, saved, line) {\n if (saved instanceof SavedContext)\n { return new Context(doc, copyState(doc.mode, saved.state), line, saved.lookAhead) }\n else\n { return new Context(doc, copyState(doc.mode, saved), line) }\n };\n\n Context.prototype.save = function (copy) {\n var state = copy !== false ? copyState(this.doc.mode, this.state) : this.state;\n return this.maxLookAhead > 0 ? new SavedContext(state, this.maxLookAhead) : state\n };\n\n\n // Compute a style array (an array starting with a mode generation\n // -- for invalidation -- followed by pairs of end positions and\n // style strings), which is used to highlight the tokens on the\n // line.\n function highlightLine(cm, line, context, forceToEnd) {\n // A styles array always starts with a number identifying the\n // mode/overlays that it is based on (for easy invalidation).\n var st = [cm.state.modeGen], lineClasses = {};\n // Compute the base array of styles\n runMode(cm, line.text, cm.doc.mode, context, function (end, style) { return st.push(end, style); },\n lineClasses, forceToEnd);\n var state = context.state;\n\n // Run overlays, adjust style array.\n var loop = function ( o ) {\n context.baseTokens = st;\n var overlay = cm.state.overlays[o], i = 1, at = 0;\n context.state = true;\n runMode(cm, line.text, overlay.mode, context, function (end, style) {\n var start = i;\n // Ensure there's a token end at the current position, and that i points at it\n while (at < end) {\n var i_end = st[i];\n if (i_end > end)\n { st.splice(i, 1, end, st[i+1], i_end); }\n i += 2;\n at = Math.min(end, i_end);\n }\n if (!style) { return }\n if (overlay.opaque) {\n st.splice(start, i - start, end, \"overlay \" + style);\n i = start + 2;\n } else {\n for (; start < i; start += 2) {\n var cur = st[start+1];\n st[start+1] = (cur ? cur + \" \" : \"\") + \"overlay \" + style;\n }\n }\n }, lineClasses);\n context.state = state;\n context.baseTokens = null;\n context.baseTokenPos = 1;\n };\n\n for (var o = 0; o < cm.state.overlays.length; ++o) loop( o );\n\n return {styles: st, classes: lineClasses.bgClass || lineClasses.textClass ? lineClasses : null}\n }\n\n function getLineStyles(cm, line, updateFrontier) {\n if (!line.styles || line.styles[0] != cm.state.modeGen) {\n var context = getContextBefore(cm, lineNo(line));\n var resetState = line.text.length > cm.options.maxHighlightLength && copyState(cm.doc.mode, context.state);\n var result = highlightLine(cm, line, context);\n if (resetState) { context.state = resetState; }\n line.stateAfter = context.save(!resetState);\n line.styles = result.styles;\n if (result.classes) { line.styleClasses = result.classes; }\n else if (line.styleClasses) { line.styleClasses = null; }\n if (updateFrontier === cm.doc.highlightFrontier)\n { cm.doc.modeFrontier = Math.max(cm.doc.modeFrontier, ++cm.doc.highlightFrontier); }\n }\n return line.styles\n }\n\n function getContextBefore(cm, n, precise) {\n var doc = cm.doc, display = cm.display;\n if (!doc.mode.startState) { return new Context(doc, true, n) }\n var start = findStartLine(cm, n, precise);\n var saved = start > doc.first && getLine(doc, start - 1).stateAfter;\n var context = saved ? Context.fromSaved(doc, saved, start) : new Context(doc, startState(doc.mode), start);\n\n doc.iter(start, n, function (line) {\n processLine(cm, line.text, context);\n var pos = context.line;\n line.stateAfter = pos == n - 1 || pos % 5 == 0 || pos >= display.viewFrom && pos < display.viewTo ? context.save() : null;\n context.nextLine();\n });\n if (precise) { doc.modeFrontier = context.line; }\n return context\n }\n\n // Lightweight form of highlight -- proceed over this line and\n // update state, but don't save a style array. Used for lines that\n // aren't currently visible.\n function processLine(cm, text, context, startAt) {\n var mode = cm.doc.mode;\n var stream = new StringStream(text, cm.options.tabSize, context);\n stream.start = stream.pos = startAt || 0;\n if (text == \"\") { callBlankLine(mode, context.state); }\n while (!stream.eol()) {\n readToken(mode, stream, context.state);\n stream.start = stream.pos;\n }\n }\n\n function callBlankLine(mode, state) {\n if (mode.blankLine) { return mode.blankLine(state) }\n if (!mode.innerMode) { return }\n var inner = innerMode(mode, state);\n if (inner.mode.blankLine) { return inner.mode.blankLine(inner.state) }\n }\n\n function readToken(mode, stream, state, inner) {\n for (var i = 0; i < 10; i++) {\n if (inner) { inner[0] = innerMode(mode, state).mode; }\n var style = mode.token(stream, state);\n if (stream.pos > stream.start) { return style }\n }\n throw new Error(\"Mode \" + mode.name + \" failed to advance stream.\")\n }\n\n var Token = function(stream, type, state) {\n this.start = stream.start; this.end = stream.pos;\n this.string = stream.current();\n this.type = type || null;\n this.state = state;\n };\n\n // Utility for getTokenAt and getLineTokens\n function takeToken(cm, pos, precise, asArray) {\n var doc = cm.doc, mode = doc.mode, style;\n pos = clipPos(doc, pos);\n var line = getLine(doc, pos.line), context = getContextBefore(cm, pos.line, precise);\n var stream = new StringStream(line.text, cm.options.tabSize, context), tokens;\n if (asArray) { tokens = []; }\n while ((asArray || stream.pos < pos.ch) && !stream.eol()) {\n stream.start = stream.pos;\n style = readToken(mode, stream, context.state);\n if (asArray) { tokens.push(new Token(stream, style, copyState(doc.mode, context.state))); }\n }\n return asArray ? tokens : new Token(stream, style, context.state)\n }\n\n function extractLineClasses(type, output) {\n if (type) { for (;;) {\n var lineClass = type.match(/(?:^|\\s+)line-(background-)?(\\S+)/);\n if (!lineClass) { break }\n type = type.slice(0, lineClass.index) + type.slice(lineClass.index + lineClass[0].length);\n var prop = lineClass[1] ? \"bgClass\" : \"textClass\";\n if (output[prop] == null)\n { output[prop] = lineClass[2]; }\n else if (!(new RegExp(\"(?:^|\\\\s)\" + lineClass[2] + \"(?:$|\\\\s)\")).test(output[prop]))\n { output[prop] += \" \" + lineClass[2]; }\n } }\n return type\n }\n\n // Run the given mode's parser over a line, calling f for each token.\n function runMode(cm, text, mode, context, f, lineClasses, forceToEnd) {\n var flattenSpans = mode.flattenSpans;\n if (flattenSpans == null) { flattenSpans = cm.options.flattenSpans; }\n var curStart = 0, curStyle = null;\n var stream = new StringStream(text, cm.options.tabSize, context), style;\n var inner = cm.options.addModeClass && [null];\n if (text == \"\") { extractLineClasses(callBlankLine(mode, context.state), lineClasses); }\n while (!stream.eol()) {\n if (stream.pos > cm.options.maxHighlightLength) {\n flattenSpans = false;\n if (forceToEnd) { processLine(cm, text, context, stream.pos); }\n stream.pos = text.length;\n style = null;\n } else {\n style = extractLineClasses(readToken(mode, stream, context.state, inner), lineClasses);\n }\n if (inner) {\n var mName = inner[0].name;\n if (mName) { style = \"m-\" + (style ? mName + \" \" + style : mName); }\n }\n if (!flattenSpans || curStyle != style) {\n while (curStart < stream.start) {\n curStart = Math.min(stream.start, curStart + 5000);\n f(curStart, curStyle);\n }\n curStyle = style;\n }\n stream.start = stream.pos;\n }\n while (curStart < stream.pos) {\n // Webkit seems to refuse to render text nodes longer than 57444\n // characters, and returns inaccurate measurements in nodes\n // starting around 5000 chars.\n var pos = Math.min(stream.pos, curStart + 5000);\n f(pos, curStyle);\n curStart = pos;\n }\n }\n\n // Finds the line to start with when starting a parse. Tries to\n // find a line with a stateAfter, so that it can start with a\n // valid state. If that fails, it returns the line with the\n // smallest indentation, which tends to need the least context to\n // parse correctly.\n function findStartLine(cm, n, precise) {\n var minindent, minline, doc = cm.doc;\n var lim = precise ? -1 : n - (cm.doc.mode.innerMode ? 1000 : 100);\n for (var search = n; search > lim; --search) {\n if (search <= doc.first) { return doc.first }\n var line = getLine(doc, search - 1), after = line.stateAfter;\n if (after && (!precise || search + (after instanceof SavedContext ? after.lookAhead : 0) <= doc.modeFrontier))\n { return search }\n var indented = countColumn(line.text, null, cm.options.tabSize);\n if (minline == null || minindent > indented) {\n minline = search - 1;\n minindent = indented;\n }\n }\n return minline\n }\n\n function retreatFrontier(doc, n) {\n doc.modeFrontier = Math.min(doc.modeFrontier, n);\n if (doc.highlightFrontier < n - 10) { return }\n var start = doc.first;\n for (var line = n - 1; line > start; line--) {\n var saved = getLine(doc, line).stateAfter;\n // change is on 3\n // state on line 1 looked ahead 2 -- so saw 3\n // test 1 + 2 < 3 should cover this\n if (saved && (!(saved instanceof SavedContext) || line + saved.lookAhead < n)) {\n start = line + 1;\n break\n }\n }\n doc.highlightFrontier = Math.min(doc.highlightFrontier, start);\n }\n\n // Optimize some code when these features are not used.\n var sawReadOnlySpans = false, sawCollapsedSpans = false;\n\n function seeReadOnlySpans() {\n sawReadOnlySpans = true;\n }\n\n function seeCollapsedSpans() {\n sawCollapsedSpans = true;\n }\n\n // TEXTMARKER SPANS\n\n function MarkedSpan(marker, from, to) {\n this.marker = marker;\n this.from = from; this.to = to;\n }\n\n // Search an array of spans for a span matching the given marker.\n function getMarkedSpanFor(spans, marker) {\n if (spans) { for (var i = 0; i < spans.length; ++i) {\n var span = spans[i];\n if (span.marker == marker) { return span }\n } }\n }\n // Remove a span from an array, returning undefined if no spans are\n // left (we don't store arrays for lines without spans).\n function removeMarkedSpan(spans, span) {\n var r;\n for (var i = 0; i < spans.length; ++i)\n { if (spans[i] != span) { (r || (r = [])).push(spans[i]); } }\n return r\n }\n // Add a span to a line.\n function addMarkedSpan(line, span) {\n line.markedSpans = line.markedSpans ? line.markedSpans.concat([span]) : [span];\n span.marker.attachLine(line);\n }\n\n // Used for the algorithm that adjusts markers for a change in the\n // document. These functions cut an array of spans at a given\n // character position, returning an array of remaining chunks (or\n // undefined if nothing remains).\n function markedSpansBefore(old, startCh, isInsert) {\n var nw;\n if (old) { for (var i = 0; i < old.length; ++i) {\n var span = old[i], marker = span.marker;\n var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= startCh : span.from < startCh);\n if (startsBefore || span.from == startCh && marker.type == \"bookmark\" && (!isInsert || !span.marker.insertLeft)) {\n var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= startCh : span.to > startCh)\n ;(nw || (nw = [])).push(new MarkedSpan(marker, span.from, endsAfter ? null : span.to));\n }\n } }\n return nw\n }\n function markedSpansAfter(old, endCh, isInsert) {\n var nw;\n if (old) { for (var i = 0; i < old.length; ++i) {\n var span = old[i], marker = span.marker;\n var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= endCh : span.to > endCh);\n if (endsAfter || span.from == endCh && marker.type == \"bookmark\" && (!isInsert || span.marker.insertLeft)) {\n var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= endCh : span.from < endCh)\n ;(nw || (nw = [])).push(new MarkedSpan(marker, startsBefore ? null : span.from - endCh,\n span.to == null ? null : span.to - endCh));\n }\n } }\n return nw\n }\n\n // Given a change object, compute the new set of marker spans that\n // cover the line in which the change took place. Removes spans\n // entirely within the change, reconnects spans belonging to the\n // same marker that appear on both sides of the change, and cuts off\n // spans partially within the change. Returns an array of span\n // arrays with one element for each line in (after) the change.\n function stretchSpansOverChange(doc, change) {\n if (change.full) { return null }\n var oldFirst = isLine(doc, change.from.line) && getLine(doc, change.from.line).markedSpans;\n var oldLast = isLine(doc, change.to.line) && getLine(doc, change.to.line).markedSpans;\n if (!oldFirst && !oldLast) { return null }\n\n var startCh = change.from.ch, endCh = change.to.ch, isInsert = cmp(change.from, change.to) == 0;\n // Get the spans that 'stick out' on both sides\n var first = markedSpansBefore(oldFirst, startCh, isInsert);\n var last = markedSpansAfter(oldLast, endCh, isInsert);\n\n // Next, merge those two ends\n var sameLine = change.text.length == 1, offset = lst(change.text).length + (sameLine ? startCh : 0);\n if (first) {\n // Fix up .to properties of first\n for (var i = 0; i < first.length; ++i) {\n var span = first[i];\n if (span.to == null) {\n var found = getMarkedSpanFor(last, span.marker);\n if (!found) { span.to = startCh; }\n else if (sameLine) { span.to = found.to == null ? null : found.to + offset; }\n }\n }\n }\n if (last) {\n // Fix up .from in last (or move them into first in case of sameLine)\n for (var i$1 = 0; i$1 < last.length; ++i$1) {\n var span$1 = last[i$1];\n if (span$1.to != null) { span$1.to += offset; }\n if (span$1.from == null) {\n var found$1 = getMarkedSpanFor(first, span$1.marker);\n if (!found$1) {\n span$1.from = offset;\n if (sameLine) { (first || (first = [])).push(span$1); }\n }\n } else {\n span$1.from += offset;\n if (sameLine) { (first || (first = [])).push(span$1); }\n }\n }\n }\n // Make sure we didn't create any zero-length spans\n if (first) { first = clearEmptySpans(first); }\n if (last && last != first) { last = clearEmptySpans(last); }\n\n var newMarkers = [first];\n if (!sameLine) {\n // Fill gap with whole-line-spans\n var gap = change.text.length - 2, gapMarkers;\n if (gap > 0 && first)\n { for (var i$2 = 0; i$2 < first.length; ++i$2)\n { if (first[i$2].to == null)\n { (gapMarkers || (gapMarkers = [])).push(new MarkedSpan(first[i$2].marker, null, null)); } } }\n for (var i$3 = 0; i$3 < gap; ++i$3)\n { newMarkers.push(gapMarkers); }\n newMarkers.push(last);\n }\n return newMarkers\n }\n\n // Remove spans that are empty and don't have a clearWhenEmpty\n // option of false.\n function clearEmptySpans(spans) {\n for (var i = 0; i < spans.length; ++i) {\n var span = spans[i];\n if (span.from != null && span.from == span.to && span.marker.clearWhenEmpty !== false)\n { spans.splice(i--, 1); }\n }\n if (!spans.length) { return null }\n return spans\n }\n\n // Used to 'clip' out readOnly ranges when making a change.\n function removeReadOnlyRanges(doc, from, to) {\n var markers = null;\n doc.iter(from.line, to.line + 1, function (line) {\n if (line.markedSpans) { for (var i = 0; i < line.markedSpans.length; ++i) {\n var mark = line.markedSpans[i].marker;\n if (mark.readOnly && (!markers || indexOf(markers, mark) == -1))\n { (markers || (markers = [])).push(mark); }\n } }\n });\n if (!markers) { return null }\n var parts = [{from: from, to: to}];\n for (var i = 0; i < markers.length; ++i) {\n var mk = markers[i], m = mk.find(0);\n for (var j = 0; j < parts.length; ++j) {\n var p = parts[j];\n if (cmp(p.to, m.from) < 0 || cmp(p.from, m.to) > 0) { continue }\n var newParts = [j, 1], dfrom = cmp(p.from, m.from), dto = cmp(p.to, m.to);\n if (dfrom < 0 || !mk.inclusiveLeft && !dfrom)\n { newParts.push({from: p.from, to: m.from}); }\n if (dto > 0 || !mk.inclusiveRight && !dto)\n { newParts.push({from: m.to, to: p.to}); }\n parts.splice.apply(parts, newParts);\n j += newParts.length - 3;\n }\n }\n return parts\n }\n\n // Connect or disconnect spans from a line.\n function detachMarkedSpans(line) {\n var spans = line.markedSpans;\n if (!spans) { return }\n for (var i = 0; i < spans.length; ++i)\n { spans[i].marker.detachLine(line); }\n line.markedSpans = null;\n }\n function attachMarkedSpans(line, spans) {\n if (!spans) { return }\n for (var i = 0; i < spans.length; ++i)\n { spans[i].marker.attachLine(line); }\n line.markedSpans = spans;\n }\n\n // Helpers used when computing which overlapping collapsed span\n // counts as the larger one.\n function extraLeft(marker) { return marker.inclusiveLeft ? -1 : 0 }\n function extraRight(marker) { return marker.inclusiveRight ? 1 : 0 }\n\n // Returns a number indicating which of two overlapping collapsed\n // spans is larger (and thus includes the other). Falls back to\n // comparing ids when the spans cover exactly the same range.\n function compareCollapsedMarkers(a, b) {\n var lenDiff = a.lines.length - b.lines.length;\n if (lenDiff != 0) { return lenDiff }\n var aPos = a.find(), bPos = b.find();\n var fromCmp = cmp(aPos.from, bPos.from) || extraLeft(a) - extraLeft(b);\n if (fromCmp) { return -fromCmp }\n var toCmp = cmp(aPos.to, bPos.to) || extraRight(a) - extraRight(b);\n if (toCmp) { return toCmp }\n return b.id - a.id\n }\n\n // Find out whether a line ends or starts in a collapsed span. If\n // so, return the marker for that span.\n function collapsedSpanAtSide(line, start) {\n var sps = sawCollapsedSpans && line.markedSpans, found;\n if (sps) { for (var sp = (void 0), i = 0; i < sps.length; ++i) {\n sp = sps[i];\n if (sp.marker.collapsed && (start ? sp.from : sp.to) == null &&\n (!found || compareCollapsedMarkers(found, sp.marker) < 0))\n { found = sp.marker; }\n } }\n return found\n }\n function collapsedSpanAtStart(line) { return collapsedSpanAtSide(line, true) }\n function collapsedSpanAtEnd(line) { return collapsedSpanAtSide(line, false) }\n\n function collapsedSpanAround(line, ch) {\n var sps = sawCollapsedSpans && line.markedSpans, found;\n if (sps) { for (var i = 0; i < sps.length; ++i) {\n var sp = sps[i];\n if (sp.marker.collapsed && (sp.from == null || sp.from < ch) && (sp.to == null || sp.to > ch) &&\n (!found || compareCollapsedMarkers(found, sp.marker) < 0)) { found = sp.marker; }\n } }\n return found\n }\n\n // Test whether there exists a collapsed span that partially\n // overlaps (covers the start or end, but not both) of a new span.\n // Such overlap is not allowed.\n function conflictingCollapsedRange(doc, lineNo, from, to, marker) {\n var line = getLine(doc, lineNo);\n var sps = sawCollapsedSpans && line.markedSpans;\n if (sps) { for (var i = 0; i < sps.length; ++i) {\n var sp = sps[i];\n if (!sp.marker.collapsed) { continue }\n var found = sp.marker.find(0);\n var fromCmp = cmp(found.from, from) || extraLeft(sp.marker) - extraLeft(marker);\n var toCmp = cmp(found.to, to) || extraRight(sp.marker) - extraRight(marker);\n if (fromCmp >= 0 && toCmp <= 0 || fromCmp <= 0 && toCmp >= 0) { continue }\n if (fromCmp <= 0 && (sp.marker.inclusiveRight && marker.inclusiveLeft ? cmp(found.to, from) >= 0 : cmp(found.to, from) > 0) ||\n fromCmp >= 0 && (sp.marker.inclusiveRight && marker.inclusiveLeft ? cmp(found.from, to) <= 0 : cmp(found.from, to) < 0))\n { return true }\n } }\n }\n\n // A visual line is a line as drawn on the screen. Folding, for\n // example, can cause multiple logical lines to appear on the same\n // visual line. This finds the start of the visual line that the\n // given line is part of (usually that is the line itself).\n function visualLine(line) {\n var merged;\n while (merged = collapsedSpanAtStart(line))\n { line = merged.find(-1, true).line; }\n return line\n }\n\n function visualLineEnd(line) {\n var merged;\n while (merged = collapsedSpanAtEnd(line))\n { line = merged.find(1, true).line; }\n return line\n }\n\n // Returns an array of logical lines that continue the visual line\n // started by the argument, or undefined if there are no such lines.\n function visualLineContinued(line) {\n var merged, lines;\n while (merged = collapsedSpanAtEnd(line)) {\n line = merged.find(1, true).line\n ;(lines || (lines = [])).push(line);\n }\n return lines\n }\n\n // Get the line number of the start of the visual line that the\n // given line number is part of.\n function visualLineNo(doc, lineN) {\n var line = getLine(doc, lineN), vis = visualLine(line);\n if (line == vis) { return lineN }\n return lineNo(vis)\n }\n\n // Get the line number of the start of the next visual line after\n // the given line.\n function visualLineEndNo(doc, lineN) {\n if (lineN > doc.lastLine()) { return lineN }\n var line = getLine(doc, lineN), merged;\n if (!lineIsHidden(doc, line)) { return lineN }\n while (merged = collapsedSpanAtEnd(line))\n { line = merged.find(1, true).line; }\n return lineNo(line) + 1\n }\n\n // Compute whether a line is hidden. Lines count as hidden when they\n // are part of a visual line that starts with another line, or when\n // they are entirely covered by collapsed, non-widget span.\n function lineIsHidden(doc, line) {\n var sps = sawCollapsedSpans && line.markedSpans;\n if (sps) { for (var sp = (void 0), i = 0; i < sps.length; ++i) {\n sp = sps[i];\n if (!sp.marker.collapsed) { continue }\n if (sp.from == null) { return true }\n if (sp.marker.widgetNode) { continue }\n if (sp.from == 0 && sp.marker.inclusiveLeft && lineIsHiddenInner(doc, line, sp))\n { return true }\n } }\n }\n function lineIsHiddenInner(doc, line, span) {\n if (span.to == null) {\n var end = span.marker.find(1, true);\n return lineIsHiddenInner(doc, end.line, getMarkedSpanFor(end.line.markedSpans, span.marker))\n }\n if (span.marker.inclusiveRight && span.to == line.text.length)\n { return true }\n for (var sp = (void 0), i = 0; i < line.markedSpans.length; ++i) {\n sp = line.markedSpans[i];\n if (sp.marker.collapsed && !sp.marker.widgetNode && sp.from == span.to &&\n (sp.to == null || sp.to != span.from) &&\n (sp.marker.inclusiveLeft || span.marker.inclusiveRight) &&\n lineIsHiddenInner(doc, line, sp)) { return true }\n }\n }\n\n // Find the height above the given line.\n function heightAtLine(lineObj) {\n lineObj = visualLine(lineObj);\n\n var h = 0, chunk = lineObj.parent;\n for (var i = 0; i < chunk.lines.length; ++i) {\n var line = chunk.lines[i];\n if (line == lineObj) { break }\n else { h += line.height; }\n }\n for (var p = chunk.parent; p; chunk = p, p = chunk.parent) {\n for (var i$1 = 0; i$1 < p.children.length; ++i$1) {\n var cur = p.children[i$1];\n if (cur == chunk) { break }\n else { h += cur.height; }\n }\n }\n return h\n }\n\n // Compute the character length of a line, taking into account\n // collapsed ranges (see markText) that might hide parts, and join\n // other lines onto it.\n function lineLength(line) {\n if (line.height == 0) { return 0 }\n var len = line.text.length, merged, cur = line;\n while (merged = collapsedSpanAtStart(cur)) {\n var found = merged.find(0, true);\n cur = found.from.line;\n len += found.from.ch - found.to.ch;\n }\n cur = line;\n while (merged = collapsedSpanAtEnd(cur)) {\n var found$1 = merged.find(0, true);\n len -= cur.text.length - found$1.from.ch;\n cur = found$1.to.line;\n len += cur.text.length - found$1.to.ch;\n }\n return len\n }\n\n // Find the longest line in the document.\n function findMaxLine(cm) {\n var d = cm.display, doc = cm.doc;\n d.maxLine = getLine(doc, doc.first);\n d.maxLineLength = lineLength(d.maxLine);\n d.maxLineChanged = true;\n doc.iter(function (line) {\n var len = lineLength(line);\n if (len > d.maxLineLength) {\n d.maxLineLength = len;\n d.maxLine = line;\n }\n });\n }\n\n // LINE DATA STRUCTURE\n\n // Line objects. These hold state related to a line, including\n // highlighting info (the styles array).\n var Line = function(text, markedSpans, estimateHeight) {\n this.text = text;\n attachMarkedSpans(this, markedSpans);\n this.height = estimateHeight ? estimateHeight(this) : 1;\n };\n\n Line.prototype.lineNo = function () { return lineNo(this) };\n eventMixin(Line);\n\n // Change the content (text, markers) of a line. Automatically\n // invalidates cached information and tries to re-estimate the\n // line's height.\n function updateLine(line, text, markedSpans, estimateHeight) {\n line.text = text;\n if (line.stateAfter) { line.stateAfter = null; }\n if (line.styles) { line.styles = null; }\n if (line.order != null) { line.order = null; }\n detachMarkedSpans(line);\n attachMarkedSpans(line, markedSpans);\n var estHeight = estimateHeight ? estimateHeight(line) : 1;\n if (estHeight != line.height) { updateLineHeight(line, estHeight); }\n }\n\n // Detach a line from the document tree and its markers.\n function cleanUpLine(line) {\n line.parent = null;\n detachMarkedSpans(line);\n }\n\n // Convert a style as returned by a mode (either null, or a string\n // containing one or more styles) to a CSS style. This is cached,\n // and also looks for line-wide styles.\n var styleToClassCache = {}, styleToClassCacheWithMode = {};\n function interpretTokenStyle(style, options) {\n if (!style || /^\\s*$/.test(style)) { return null }\n var cache = options.addModeClass ? styleToClassCacheWithMode : styleToClassCache;\n return cache[style] ||\n (cache[style] = style.replace(/\\S+/g, \"cm-$&\"))\n }\n\n // Render the DOM representation of the text of a line. Also builds\n // up a 'line map', which points at the DOM nodes that represent\n // specific stretches of text, and is used by the measuring code.\n // The returned object contains the DOM node, this map, and\n // information about line-wide styles that were set by the mode.\n function buildLineContent(cm, lineView) {\n // The padding-right forces the element to have a 'border', which\n // is needed on Webkit to be able to get line-level bounding\n // rectangles for it (in measureChar).\n var content = eltP(\"span\", null, null, webkit ? \"padding-right: .1px\" : null);\n var builder = {pre: eltP(\"pre\", [content], \"CodeMirror-line\"), content: content,\n col: 0, pos: 0, cm: cm,\n trailingSpace: false,\n splitSpaces: cm.getOption(\"lineWrapping\")};\n lineView.measure = {};\n\n // Iterate over the logical lines that make up this visual line.\n for (var i = 0; i <= (lineView.rest ? lineView.rest.length : 0); i++) {\n var line = i ? lineView.rest[i - 1] : lineView.line, order = (void 0);\n builder.pos = 0;\n builder.addToken = buildToken;\n // Optionally wire in some hacks into the token-rendering\n // algorithm, to deal with browser quirks.\n if (hasBadBidiRects(cm.display.measure) && (order = getOrder(line, cm.doc.direction)))\n { builder.addToken = buildTokenBadBidi(builder.addToken, order); }\n builder.map = [];\n var allowFrontierUpdate = lineView != cm.display.externalMeasured && lineNo(line);\n insertLineContent(line, builder, getLineStyles(cm, line, allowFrontierUpdate));\n if (line.styleClasses) {\n if (line.styleClasses.bgClass)\n { builder.bgClass = joinClasses(line.styleClasses.bgClass, builder.bgClass || \"\"); }\n if (line.styleClasses.textClass)\n { builder.textClass = joinClasses(line.styleClasses.textClass, builder.textClass || \"\"); }\n }\n\n // Ensure at least a single node is present, for measuring.\n if (builder.map.length == 0)\n { builder.map.push(0, 0, builder.content.appendChild(zeroWidthElement(cm.display.measure))); }\n\n // Store the map and a cache object for the current logical line\n if (i == 0) {\n lineView.measure.map = builder.map;\n lineView.measure.cache = {};\n } else {\n (lineView.measure.maps || (lineView.measure.maps = [])).push(builder.map)\n ;(lineView.measure.caches || (lineView.measure.caches = [])).push({});\n }\n }\n\n // See issue #2901\n if (webkit) {\n var last = builder.content.lastChild;\n if (/\\bcm-tab\\b/.test(last.className) || (last.querySelector && last.querySelector(\".cm-tab\")))\n { builder.content.className = \"cm-tab-wrap-hack\"; }\n }\n\n signal(cm, \"renderLine\", cm, lineView.line, builder.pre);\n if (builder.pre.className)\n { builder.textClass = joinClasses(builder.pre.className, builder.textClass || \"\"); }\n\n return builder\n }\n\n function defaultSpecialCharPlaceholder(ch) {\n var token = elt(\"span\", \"\\u2022\", \"cm-invalidchar\");\n token.title = \"\\\\u\" + ch.charCodeAt(0).toString(16);\n token.setAttribute(\"aria-label\", token.title);\n return token\n }\n\n // Build up the DOM representation for a single token, and add it to\n // the line map. Takes care to render special characters separately.\n function buildToken(builder, text, style, startStyle, endStyle, css, attributes) {\n if (!text) { return }\n var displayText = builder.splitSpaces ? splitSpaces(text, builder.trailingSpace) : text;\n var special = builder.cm.state.specialChars, mustWrap = false;\n var content;\n if (!special.test(text)) {\n builder.col += text.length;\n content = document.createTextNode(displayText);\n builder.map.push(builder.pos, builder.pos + text.length, content);\n if (ie && ie_version < 9) { mustWrap = true; }\n builder.pos += text.length;\n } else {\n content = document.createDocumentFragment();\n var pos = 0;\n while (true) {\n special.lastIndex = pos;\n var m = special.exec(text);\n var skipped = m ? m.index - pos : text.length - pos;\n if (skipped) {\n var txt = document.createTextNode(displayText.slice(pos, pos + skipped));\n if (ie && ie_version < 9) { content.appendChild(elt(\"span\", [txt])); }\n else { content.appendChild(txt); }\n builder.map.push(builder.pos, builder.pos + skipped, txt);\n builder.col += skipped;\n builder.pos += skipped;\n }\n if (!m) { break }\n pos += skipped + 1;\n var txt$1 = (void 0);\n if (m[0] == \"\\t\") {\n var tabSize = builder.cm.options.tabSize, tabWidth = tabSize - builder.col % tabSize;\n txt$1 = content.appendChild(elt(\"span\", spaceStr(tabWidth), \"cm-tab\"));\n txt$1.setAttribute(\"role\", \"presentation\");\n txt$1.setAttribute(\"cm-text\", \"\\t\");\n builder.col += tabWidth;\n } else if (m[0] == \"\\r\" || m[0] == \"\\n\") {\n txt$1 = content.appendChild(elt(\"span\", m[0] == \"\\r\" ? \"\\u240d\" : \"\\u2424\", \"cm-invalidchar\"));\n txt$1.setAttribute(\"cm-text\", m[0]);\n builder.col += 1;\n } else {\n txt$1 = builder.cm.options.specialCharPlaceholder(m[0]);\n txt$1.setAttribute(\"cm-text\", m[0]);\n if (ie && ie_version < 9) { content.appendChild(elt(\"span\", [txt$1])); }\n else { content.appendChild(txt$1); }\n builder.col += 1;\n }\n builder.map.push(builder.pos, builder.pos + 1, txt$1);\n builder.pos++;\n }\n }\n builder.trailingSpace = displayText.charCodeAt(text.length - 1) == 32;\n if (style || startStyle || endStyle || mustWrap || css || attributes) {\n var fullStyle = style || \"\";\n if (startStyle) { fullStyle += startStyle; }\n if (endStyle) { fullStyle += endStyle; }\n var token = elt(\"span\", [content], fullStyle, css);\n if (attributes) {\n for (var attr in attributes) { if (attributes.hasOwnProperty(attr) && attr != \"style\" && attr != \"class\")\n { token.setAttribute(attr, attributes[attr]); } }\n }\n return builder.content.appendChild(token)\n }\n builder.content.appendChild(content);\n }\n\n // Change some spaces to NBSP to prevent the browser from collapsing\n // trailing spaces at the end of a line when rendering text (issue #1362).\n function splitSpaces(text, trailingBefore) {\n if (text.length > 1 && !/ /.test(text)) { return text }\n var spaceBefore = trailingBefore, result = \"\";\n for (var i = 0; i < text.length; i++) {\n var ch = text.charAt(i);\n if (ch == \" \" && spaceBefore && (i == text.length - 1 || text.charCodeAt(i + 1) == 32))\n { ch = \"\\u00a0\"; }\n result += ch;\n spaceBefore = ch == \" \";\n }\n return result\n }\n\n // Work around nonsense dimensions being reported for stretches of\n // right-to-left text.\n function buildTokenBadBidi(inner, order) {\n return function (builder, text, style, startStyle, endStyle, css, attributes) {\n style = style ? style + \" cm-force-border\" : \"cm-force-border\";\n var start = builder.pos, end = start + text.length;\n for (;;) {\n // Find the part that overlaps with the start of this text\n var part = (void 0);\n for (var i = 0; i < order.length; i++) {\n part = order[i];\n if (part.to > start && part.from <= start) { break }\n }\n if (part.to >= end) { return inner(builder, text, style, startStyle, endStyle, css, attributes) }\n inner(builder, text.slice(0, part.to - start), style, startStyle, null, css, attributes);\n startStyle = null;\n text = text.slice(part.to - start);\n start = part.to;\n }\n }\n }\n\n function buildCollapsedSpan(builder, size, marker, ignoreWidget) {\n var widget = !ignoreWidget && marker.widgetNode;\n if (widget) { builder.map.push(builder.pos, builder.pos + size, widget); }\n if (!ignoreWidget && builder.cm.display.input.needsContentAttribute) {\n if (!widget)\n { widget = builder.content.appendChild(document.createElement(\"span\")); }\n widget.setAttribute(\"cm-marker\", marker.id);\n }\n if (widget) {\n builder.cm.display.input.setUneditable(widget);\n builder.content.appendChild(widget);\n }\n builder.pos += size;\n builder.trailingSpace = false;\n }\n\n // Outputs a number of spans to make up a line, taking highlighting\n // and marked text into account.\n function insertLineContent(line, builder, styles) {\n var spans = line.markedSpans, allText = line.text, at = 0;\n if (!spans) {\n for (var i$1 = 1; i$1 < styles.length; i$1+=2)\n { builder.addToken(builder, allText.slice(at, at = styles[i$1]), interpretTokenStyle(styles[i$1+1], builder.cm.options)); }\n return\n }\n\n var len = allText.length, pos = 0, i = 1, text = \"\", style, css;\n var nextChange = 0, spanStyle, spanEndStyle, spanStartStyle, collapsed, attributes;\n for (;;) {\n if (nextChange == pos) { // Update current marker set\n spanStyle = spanEndStyle = spanStartStyle = css = \"\";\n attributes = null;\n collapsed = null; nextChange = Infinity;\n var foundBookmarks = [], endStyles = (void 0);\n for (var j = 0; j < spans.length; ++j) {\n var sp = spans[j], m = sp.marker;\n if (m.type == \"bookmark\" && sp.from == pos && m.widgetNode) {\n foundBookmarks.push(m);\n } else if (sp.from <= pos && (sp.to == null || sp.to > pos || m.collapsed && sp.to == pos && sp.from == pos)) {\n if (sp.to != null && sp.to != pos && nextChange > sp.to) {\n nextChange = sp.to;\n spanEndStyle = \"\";\n }\n if (m.className) { spanStyle += \" \" + m.className; }\n if (m.css) { css = (css ? css + \";\" : \"\") + m.css; }\n if (m.startStyle && sp.from == pos) { spanStartStyle += \" \" + m.startStyle; }\n if (m.endStyle && sp.to == nextChange) { (endStyles || (endStyles = [])).push(m.endStyle, sp.to); }\n // support for the old title property\n // https://github.com/codemirror/CodeMirror/pull/5673\n if (m.title) { (attributes || (attributes = {})).title = m.title; }\n if (m.attributes) {\n for (var attr in m.attributes)\n { (attributes || (attributes = {}))[attr] = m.attributes[attr]; }\n }\n if (m.collapsed && (!collapsed || compareCollapsedMarkers(collapsed.marker, m) < 0))\n { collapsed = sp; }\n } else if (sp.from > pos && nextChange > sp.from) {\n nextChange = sp.from;\n }\n }\n if (endStyles) { for (var j$1 = 0; j$1 < endStyles.length; j$1 += 2)\n { if (endStyles[j$1 + 1] == nextChange) { spanEndStyle += \" \" + endStyles[j$1]; } } }\n\n if (!collapsed || collapsed.from == pos) { for (var j$2 = 0; j$2 < foundBookmarks.length; ++j$2)\n { buildCollapsedSpan(builder, 0, foundBookmarks[j$2]); } }\n if (collapsed && (collapsed.from || 0) == pos) {\n buildCollapsedSpan(builder, (collapsed.to == null ? len + 1 : collapsed.to) - pos,\n collapsed.marker, collapsed.from == null);\n if (collapsed.to == null) { return }\n if (collapsed.to == pos) { collapsed = false; }\n }\n }\n if (pos >= len) { break }\n\n var upto = Math.min(len, nextChange);\n while (true) {\n if (text) {\n var end = pos + text.length;\n if (!collapsed) {\n var tokenText = end > upto ? text.slice(0, upto - pos) : text;\n builder.addToken(builder, tokenText, style ? style + spanStyle : spanStyle,\n spanStartStyle, pos + tokenText.length == nextChange ? spanEndStyle : \"\", css, attributes);\n }\n if (end >= upto) {text = text.slice(upto - pos); pos = upto; break}\n pos = end;\n spanStartStyle = \"\";\n }\n text = allText.slice(at, at = styles[i++]);\n style = interpretTokenStyle(styles[i++], builder.cm.options);\n }\n }\n }\n\n\n // These objects are used to represent the visible (currently drawn)\n // part of the document. A LineView may correspond to multiple\n // logical lines, if those are connected by collapsed ranges.\n function LineView(doc, line, lineN) {\n // The starting line\n this.line = line;\n // Continuing lines, if any\n this.rest = visualLineContinued(line);\n // Number of logical lines in this visual line\n this.size = this.rest ? lineNo(lst(this.rest)) - lineN + 1 : 1;\n this.node = this.text = null;\n this.hidden = lineIsHidden(doc, line);\n }\n\n // Create a range of LineView objects for the given lines.\n function buildViewArray(cm, from, to) {\n var array = [], nextPos;\n for (var pos = from; pos < to; pos = nextPos) {\n var view = new LineView(cm.doc, getLine(cm.doc, pos), pos);\n nextPos = pos + view.size;\n array.push(view);\n }\n return array\n }\n\n var operationGroup = null;\n\n function pushOperation(op) {\n if (operationGroup) {\n operationGroup.ops.push(op);\n } else {\n op.ownsGroup = operationGroup = {\n ops: [op],\n delayedCallbacks: []\n };\n }\n }\n\n function fireCallbacksForOps(group) {\n // Calls delayed callbacks and cursorActivity handlers until no\n // new ones appear\n var callbacks = group.delayedCallbacks, i = 0;\n do {\n for (; i < callbacks.length; i++)\n { callbacks[i].call(null); }\n for (var j = 0; j < group.ops.length; j++) {\n var op = group.ops[j];\n if (op.cursorActivityHandlers)\n { while (op.cursorActivityCalled < op.cursorActivityHandlers.length)\n { op.cursorActivityHandlers[op.cursorActivityCalled++].call(null, op.cm); } }\n }\n } while (i < callbacks.length)\n }\n\n function finishOperation(op, endCb) {\n var group = op.ownsGroup;\n if (!group) { return }\n\n try { fireCallbacksForOps(group); }\n finally {\n operationGroup = null;\n endCb(group);\n }\n }\n\n var orphanDelayedCallbacks = null;\n\n // Often, we want to signal events at a point where we are in the\n // middle of some work, but don't want the handler to start calling\n // other methods on the editor, which might be in an inconsistent\n // state or simply not expect any other events to happen.\n // signalLater looks whether there are any handlers, and schedules\n // them to be executed when the last operation ends, or, if no\n // operation is active, when a timeout fires.\n function signalLater(emitter, type /*, values...*/) {\n var arr = getHandlers(emitter, type);\n if (!arr.length) { return }\n var args = Array.prototype.slice.call(arguments, 2), list;\n if (operationGroup) {\n list = operationGroup.delayedCallbacks;\n } else if (orphanDelayedCallbacks) {\n list = orphanDelayedCallbacks;\n } else {\n list = orphanDelayedCallbacks = [];\n setTimeout(fireOrphanDelayed, 0);\n }\n var loop = function ( i ) {\n list.push(function () { return arr[i].apply(null, args); });\n };\n\n for (var i = 0; i < arr.length; ++i)\n loop( i );\n }\n\n function fireOrphanDelayed() {\n var delayed = orphanDelayedCallbacks;\n orphanDelayedCallbacks = null;\n for (var i = 0; i < delayed.length; ++i) { delayed[i](); }\n }\n\n // When an aspect of a line changes, a string is added to\n // lineView.changes. This updates the relevant part of the line's\n // DOM structure.\n function updateLineForChanges(cm, lineView, lineN, dims) {\n for (var j = 0; j < lineView.changes.length; j++) {\n var type = lineView.changes[j];\n if (type == \"text\") { updateLineText(cm, lineView); }\n else if (type == \"gutter\") { updateLineGutter(cm, lineView, lineN, dims); }\n else if (type == \"class\") { updateLineClasses(cm, lineView); }\n else if (type == \"widget\") { updateLineWidgets(cm, lineView, dims); }\n }\n lineView.changes = null;\n }\n\n // Lines with gutter elements, widgets or a background class need to\n // be wrapped, and have the extra elements added to the wrapper div\n function ensureLineWrapped(lineView) {\n if (lineView.node == lineView.text) {\n lineView.node = elt(\"div\", null, null, \"position: relative\");\n if (lineView.text.parentNode)\n { lineView.text.parentNode.replaceChild(lineView.node, lineView.text); }\n lineView.node.appendChild(lineView.text);\n if (ie && ie_version < 8) { lineView.node.style.zIndex = 2; }\n }\n return lineView.node\n }\n\n function updateLineBackground(cm, lineView) {\n var cls = lineView.bgClass ? lineView.bgClass + \" \" + (lineView.line.bgClass || \"\") : lineView.line.bgClass;\n if (cls) { cls += \" CodeMirror-linebackground\"; }\n if (lineView.background) {\n if (cls) { lineView.background.className = cls; }\n else { lineView.background.parentNode.removeChild(lineView.background); lineView.background = null; }\n } else if (cls) {\n var wrap = ensureLineWrapped(lineView);\n lineView.background = wrap.insertBefore(elt(\"div\", null, cls), wrap.firstChild);\n cm.display.input.setUneditable(lineView.background);\n }\n }\n\n // Wrapper around buildLineContent which will reuse the structure\n // in display.externalMeasured when possible.\n function getLineContent(cm, lineView) {\n var ext = cm.display.externalMeasured;\n if (ext && ext.line == lineView.line) {\n cm.display.externalMeasured = null;\n lineView.measure = ext.measure;\n return ext.built\n }\n return buildLineContent(cm, lineView)\n }\n\n // Redraw the line's text. Interacts with the background and text\n // classes because the mode may output tokens that influence these\n // classes.\n function updateLineText(cm, lineView) {\n var cls = lineView.text.className;\n var built = getLineContent(cm, lineView);\n if (lineView.text == lineView.node) { lineView.node = built.pre; }\n lineView.text.parentNode.replaceChild(built.pre, lineView.text);\n lineView.text = built.pre;\n if (built.bgClass != lineView.bgClass || built.textClass != lineView.textClass) {\n lineView.bgClass = built.bgClass;\n lineView.textClass = built.textClass;\n updateLineClasses(cm, lineView);\n } else if (cls) {\n lineView.text.className = cls;\n }\n }\n\n function updateLineClasses(cm, lineView) {\n updateLineBackground(cm, lineView);\n if (lineView.line.wrapClass)\n { ensureLineWrapped(lineView).className = lineView.line.wrapClass; }\n else if (lineView.node != lineView.text)\n { lineView.node.className = \"\"; }\n var textClass = lineView.textClass ? lineView.textClass + \" \" + (lineView.line.textClass || \"\") : lineView.line.textClass;\n lineView.text.className = textClass || \"\";\n }\n\n function updateLineGutter(cm, lineView, lineN, dims) {\n if (lineView.gutter) {\n lineView.node.removeChild(lineView.gutter);\n lineView.gutter = null;\n }\n if (lineView.gutterBackground) {\n lineView.node.removeChild(lineView.gutterBackground);\n lineView.gutterBackground = null;\n }\n if (lineView.line.gutterClass) {\n var wrap = ensureLineWrapped(lineView);\n lineView.gutterBackground = elt(\"div\", null, \"CodeMirror-gutter-background \" + lineView.line.gutterClass,\n (\"left: \" + (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + \"px; width: \" + (dims.gutterTotalWidth) + \"px\"));\n cm.display.input.setUneditable(lineView.gutterBackground);\n wrap.insertBefore(lineView.gutterBackground, lineView.text);\n }\n var markers = lineView.line.gutterMarkers;\n if (cm.options.lineNumbers || markers) {\n var wrap$1 = ensureLineWrapped(lineView);\n var gutterWrap = lineView.gutter = elt(\"div\", null, \"CodeMirror-gutter-wrapper\", (\"left: \" + (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + \"px\"));\n cm.display.input.setUneditable(gutterWrap);\n wrap$1.insertBefore(gutterWrap, lineView.text);\n if (lineView.line.gutterClass)\n { gutterWrap.className += \" \" + lineView.line.gutterClass; }\n if (cm.options.lineNumbers && (!markers || !markers[\"CodeMirror-linenumbers\"]))\n { lineView.lineNumber = gutterWrap.appendChild(\n elt(\"div\", lineNumberFor(cm.options, lineN),\n \"CodeMirror-linenumber CodeMirror-gutter-elt\",\n (\"left: \" + (dims.gutterLeft[\"CodeMirror-linenumbers\"]) + \"px; width: \" + (cm.display.lineNumInnerWidth) + \"px\"))); }\n if (markers) { for (var k = 0; k < cm.display.gutterSpecs.length; ++k) {\n var id = cm.display.gutterSpecs[k].className, found = markers.hasOwnProperty(id) && markers[id];\n if (found)\n { gutterWrap.appendChild(elt(\"div\", [found], \"CodeMirror-gutter-elt\",\n (\"left: \" + (dims.gutterLeft[id]) + \"px; width: \" + (dims.gutterWidth[id]) + \"px\"))); }\n } }\n }\n }\n\n function updateLineWidgets(cm, lineView, dims) {\n if (lineView.alignable) { lineView.alignable = null; }\n var isWidget = classTest(\"CodeMirror-linewidget\");\n for (var node = lineView.node.firstChild, next = (void 0); node; node = next) {\n next = node.nextSibling;\n if (isWidget.test(node.className)) { lineView.node.removeChild(node); }\n }\n insertLineWidgets(cm, lineView, dims);\n }\n\n // Build a line's DOM representation from scratch\n function buildLineElement(cm, lineView, lineN, dims) {\n var built = getLineContent(cm, lineView);\n lineView.text = lineView.node = built.pre;\n if (built.bgClass) { lineView.bgClass = built.bgClass; }\n if (built.textClass) { lineView.textClass = built.textClass; }\n\n updateLineClasses(cm, lineView);\n updateLineGutter(cm, lineView, lineN, dims);\n insertLineWidgets(cm, lineView, dims);\n return lineView.node\n }\n\n // A lineView may contain multiple logical lines (when merged by\n // collapsed spans). The widgets for all of them need to be drawn.\n function insertLineWidgets(cm, lineView, dims) {\n insertLineWidgetsFor(cm, lineView.line, lineView, dims, true);\n if (lineView.rest) { for (var i = 0; i < lineView.rest.length; i++)\n { insertLineWidgetsFor(cm, lineView.rest[i], lineView, dims, false); } }\n }\n\n function insertLineWidgetsFor(cm, line, lineView, dims, allowAbove) {\n if (!line.widgets) { return }\n var wrap = ensureLineWrapped(lineView);\n for (var i = 0, ws = line.widgets; i < ws.length; ++i) {\n var widget = ws[i], node = elt(\"div\", [widget.node], \"CodeMirror-linewidget\" + (widget.className ? \" \" + widget.className : \"\"));\n if (!widget.handleMouseEvents) { node.setAttribute(\"cm-ignore-events\", \"true\"); }\n positionLineWidget(widget, node, lineView, dims);\n cm.display.input.setUneditable(node);\n if (allowAbove && widget.above)\n { wrap.insertBefore(node, lineView.gutter || lineView.text); }\n else\n { wrap.appendChild(node); }\n signalLater(widget, \"redraw\");\n }\n }\n\n function positionLineWidget(widget, node, lineView, dims) {\n if (widget.noHScroll) {\n (lineView.alignable || (lineView.alignable = [])).push(node);\n var width = dims.wrapperWidth;\n node.style.left = dims.fixedPos + \"px\";\n if (!widget.coverGutter) {\n width -= dims.gutterTotalWidth;\n node.style.paddingLeft = dims.gutterTotalWidth + \"px\";\n }\n node.style.width = width + \"px\";\n }\n if (widget.coverGutter) {\n node.style.zIndex = 5;\n node.style.position = \"relative\";\n if (!widget.noHScroll) { node.style.marginLeft = -dims.gutterTotalWidth + \"px\"; }\n }\n }\n\n function widgetHeight(widget) {\n if (widget.height != null) { return widget.height }\n var cm = widget.doc.cm;\n if (!cm) { return 0 }\n if (!contains(document.body, widget.node)) {\n var parentStyle = \"position: relative;\";\n if (widget.coverGutter)\n { parentStyle += \"margin-left: -\" + cm.display.gutters.offsetWidth + \"px;\"; }\n if (widget.noHScroll)\n { parentStyle += \"width: \" + cm.display.wrapper.clientWidth + \"px;\"; }\n removeChildrenAndAdd(cm.display.measure, elt(\"div\", [widget.node], null, parentStyle));\n }\n return widget.height = widget.node.parentNode.offsetHeight\n }\n\n // Return true when the given mouse event happened in a widget\n function eventInWidget(display, e) {\n for (var n = e_target(e); n != display.wrapper; n = n.parentNode) {\n if (!n || (n.nodeType == 1 && n.getAttribute(\"cm-ignore-events\") == \"true\") ||\n (n.parentNode == display.sizer && n != display.mover))\n { return true }\n }\n }\n\n // POSITION MEASUREMENT\n\n function paddingTop(display) {return display.lineSpace.offsetTop}\n function paddingVert(display) {return display.mover.offsetHeight - display.lineSpace.offsetHeight}\n function paddingH(display) {\n if (display.cachedPaddingH) { return display.cachedPaddingH }\n var e = removeChildrenAndAdd(display.measure, elt(\"pre\", \"x\", \"CodeMirror-line-like\"));\n var style = window.getComputedStyle ? window.getComputedStyle(e) : e.currentStyle;\n var data = {left: parseInt(style.paddingLeft), right: parseInt(style.paddingRight)};\n if (!isNaN(data.left) && !isNaN(data.right)) { display.cachedPaddingH = data; }\n return data\n }\n\n function scrollGap(cm) { return scrollerGap - cm.display.nativeBarWidth }\n function displayWidth(cm) {\n return cm.display.scroller.clientWidth - scrollGap(cm) - cm.display.barWidth\n }\n function displayHeight(cm) {\n return cm.display.scroller.clientHeight - scrollGap(cm) - cm.display.barHeight\n }\n\n // Ensure the lineView.wrapping.heights array is populated. This is\n // an array of bottom offsets for the lines that make up a drawn\n // line. When lineWrapping is on, there might be more than one\n // height.\n function ensureLineHeights(cm, lineView, rect) {\n var wrapping = cm.options.lineWrapping;\n var curWidth = wrapping && displayWidth(cm);\n if (!lineView.measure.heights || wrapping && lineView.measure.width != curWidth) {\n var heights = lineView.measure.heights = [];\n if (wrapping) {\n lineView.measure.width = curWidth;\n var rects = lineView.text.firstChild.getClientRects();\n for (var i = 0; i < rects.length - 1; i++) {\n var cur = rects[i], next = rects[i + 1];\n if (Math.abs(cur.bottom - next.bottom) > 2)\n { heights.push((cur.bottom + next.top) / 2 - rect.top); }\n }\n }\n heights.push(rect.bottom - rect.top);\n }\n }\n\n // Find a line map (mapping character offsets to text nodes) and a\n // measurement cache for the given line number. (A line view might\n // contain multiple lines when collapsed ranges are present.)\n function mapFromLineView(lineView, line, lineN) {\n if (lineView.line == line)\n { return {map: lineView.measure.map, cache: lineView.measure.cache} }\n for (var i = 0; i < lineView.rest.length; i++)\n { if (lineView.rest[i] == line)\n { return {map: lineView.measure.maps[i], cache: lineView.measure.caches[i]} } }\n for (var i$1 = 0; i$1 < lineView.rest.length; i$1++)\n { if (lineNo(lineView.rest[i$1]) > lineN)\n { return {map: lineView.measure.maps[i$1], cache: lineView.measure.caches[i$1], before: true} } }\n }\n\n // Render a line into the hidden node display.externalMeasured. Used\n // when measurement is needed for a line that's not in the viewport.\n function updateExternalMeasurement(cm, line) {\n line = visualLine(line);\n var lineN = lineNo(line);\n var view = cm.display.externalMeasured = new LineView(cm.doc, line, lineN);\n view.lineN = lineN;\n var built = view.built = buildLineContent(cm, view);\n view.text = built.pre;\n removeChildrenAndAdd(cm.display.lineMeasure, built.pre);\n return view\n }\n\n // Get a {top, bottom, left, right} box (in line-local coordinates)\n // for a given character.\n function measureChar(cm, line, ch, bias) {\n return measureCharPrepared(cm, prepareMeasureForLine(cm, line), ch, bias)\n }\n\n // Find a line view that corresponds to the given line number.\n function findViewForLine(cm, lineN) {\n if (lineN >= cm.display.viewFrom && lineN < cm.display.viewTo)\n { return cm.display.view[findViewIndex(cm, lineN)] }\n var ext = cm.display.externalMeasured;\n if (ext && lineN >= ext.lineN && lineN < ext.lineN + ext.size)\n { return ext }\n }\n\n // Measurement can be split in two steps, the set-up work that\n // applies to the whole line, and the measurement of the actual\n // character. Functions like coordsChar, that need to do a lot of\n // measurements in a row, can thus ensure that the set-up work is\n // only done once.\n function prepareMeasureForLine(cm, line) {\n var lineN = lineNo(line);\n var view = findViewForLine(cm, lineN);\n if (view && !view.text) {\n view = null;\n } else if (view && view.changes) {\n updateLineForChanges(cm, view, lineN, getDimensions(cm));\n cm.curOp.forceUpdate = true;\n }\n if (!view)\n { view = updateExternalMeasurement(cm, line); }\n\n var info = mapFromLineView(view, line, lineN);\n return {\n line: line, view: view, rect: null,\n map: info.map, cache: info.cache, before: info.before,\n hasHeights: false\n }\n }\n\n // Given a prepared measurement object, measures the position of an\n // actual character (or fetches it from the cache).\n function measureCharPrepared(cm, prepared, ch, bias, varHeight) {\n if (prepared.before) { ch = -1; }\n var key = ch + (bias || \"\"), found;\n if (prepared.cache.hasOwnProperty(key)) {\n found = prepared.cache[key];\n } else {\n if (!prepared.rect)\n { prepared.rect = prepared.view.text.getBoundingClientRect(); }\n if (!prepared.hasHeights) {\n ensureLineHeights(cm, prepared.view, prepared.rect);\n prepared.hasHeights = true;\n }\n found = measureCharInner(cm, prepared, ch, bias);\n if (!found.bogus) { prepared.cache[key] = found; }\n }\n return {left: found.left, right: found.right,\n top: varHeight ? found.rtop : found.top,\n bottom: varHeight ? found.rbottom : found.bottom}\n }\n\n var nullRect = {left: 0, right: 0, top: 0, bottom: 0};\n\n function nodeAndOffsetInLineMap(map, ch, bias) {\n var node, start, end, collapse, mStart, mEnd;\n // First, search the line map for the text node corresponding to,\n // or closest to, the target character.\n for (var i = 0; i < map.length; i += 3) {\n mStart = map[i];\n mEnd = map[i + 1];\n if (ch < mStart) {\n start = 0; end = 1;\n collapse = \"left\";\n } else if (ch < mEnd) {\n start = ch - mStart;\n end = start + 1;\n } else if (i == map.length - 3 || ch == mEnd && map[i + 3] > ch) {\n end = mEnd - mStart;\n start = end - 1;\n if (ch >= mEnd) { collapse = \"right\"; }\n }\n if (start != null) {\n node = map[i + 2];\n if (mStart == mEnd && bias == (node.insertLeft ? \"left\" : \"right\"))\n { collapse = bias; }\n if (bias == \"left\" && start == 0)\n { while (i && map[i - 2] == map[i - 3] && map[i - 1].insertLeft) {\n node = map[(i -= 3) + 2];\n collapse = \"left\";\n } }\n if (bias == \"right\" && start == mEnd - mStart)\n { while (i < map.length - 3 && map[i + 3] == map[i + 4] && !map[i + 5].insertLeft) {\n node = map[(i += 3) + 2];\n collapse = \"right\";\n } }\n break\n }\n }\n return {node: node, start: start, end: end, collapse: collapse, coverStart: mStart, coverEnd: mEnd}\n }\n\n function getUsefulRect(rects, bias) {\n var rect = nullRect;\n if (bias == \"left\") { for (var i = 0; i < rects.length; i++) {\n if ((rect = rects[i]).left != rect.right) { break }\n } } else { for (var i$1 = rects.length - 1; i$1 >= 0; i$1--) {\n if ((rect = rects[i$1]).left != rect.right) { break }\n } }\n return rect\n }\n\n function measureCharInner(cm, prepared, ch, bias) {\n var place = nodeAndOffsetInLineMap(prepared.map, ch, bias);\n var node = place.node, start = place.start, end = place.end, collapse = place.collapse;\n\n var rect;\n if (node.nodeType == 3) { // If it is a text node, use a range to retrieve the coordinates.\n for (var i$1 = 0; i$1 < 4; i$1++) { // Retry a maximum of 4 times when nonsense rectangles are returned\n while (start && isExtendingChar(prepared.line.text.charAt(place.coverStart + start))) { --start; }\n while (place.coverStart + end < place.coverEnd && isExtendingChar(prepared.line.text.charAt(place.coverStart + end))) { ++end; }\n if (ie && ie_version < 9 && start == 0 && end == place.coverEnd - place.coverStart)\n { rect = node.parentNode.getBoundingClientRect(); }\n else\n { rect = getUsefulRect(range(node, start, end).getClientRects(), bias); }\n if (rect.left || rect.right || start == 0) { break }\n end = start;\n start = start - 1;\n collapse = \"right\";\n }\n if (ie && ie_version < 11) { rect = maybeUpdateRectForZooming(cm.display.measure, rect); }\n } else { // If it is a widget, simply get the box for the whole widget.\n if (start > 0) { collapse = bias = \"right\"; }\n var rects;\n if (cm.options.lineWrapping && (rects = node.getClientRects()).length > 1)\n { rect = rects[bias == \"right\" ? rects.length - 1 : 0]; }\n else\n { rect = node.getBoundingClientRect(); }\n }\n if (ie && ie_version < 9 && !start && (!rect || !rect.left && !rect.right)) {\n var rSpan = node.parentNode.getClientRects()[0];\n if (rSpan)\n { rect = {left: rSpan.left, right: rSpan.left + charWidth(cm.display), top: rSpan.top, bottom: rSpan.bottom}; }\n else\n { rect = nullRect; }\n }\n\n var rtop = rect.top - prepared.rect.top, rbot = rect.bottom - prepared.rect.top;\n var mid = (rtop + rbot) / 2;\n var heights = prepared.view.measure.heights;\n var i = 0;\n for (; i < heights.length - 1; i++)\n { if (mid < heights[i]) { break } }\n var top = i ? heights[i - 1] : 0, bot = heights[i];\n var result = {left: (collapse == \"right\" ? rect.right : rect.left) - prepared.rect.left,\n right: (collapse == \"left\" ? rect.left : rect.right) - prepared.rect.left,\n top: top, bottom: bot};\n if (!rect.left && !rect.right) { result.bogus = true; }\n if (!cm.options.singleCursorHeightPerLine) { result.rtop = rtop; result.rbottom = rbot; }\n\n return result\n }\n\n // Work around problem with bounding client rects on ranges being\n // returned incorrectly when zoomed on IE10 and below.\n function maybeUpdateRectForZooming(measure, rect) {\n if (!window.screen || screen.logicalXDPI == null ||\n screen.logicalXDPI == screen.deviceXDPI || !hasBadZoomedRects(measure))\n { return rect }\n var scaleX = screen.logicalXDPI / screen.deviceXDPI;\n var scaleY = screen.logicalYDPI / screen.deviceYDPI;\n return {left: rect.left * scaleX, right: rect.right * scaleX,\n top: rect.top * scaleY, bottom: rect.bottom * scaleY}\n }\n\n function clearLineMeasurementCacheFor(lineView) {\n if (lineView.measure) {\n lineView.measure.cache = {};\n lineView.measure.heights = null;\n if (lineView.rest) { for (var i = 0; i < lineView.rest.length; i++)\n { lineView.measure.caches[i] = {}; } }\n }\n }\n\n function clearLineMeasurementCache(cm) {\n cm.display.externalMeasure = null;\n removeChildren(cm.display.lineMeasure);\n for (var i = 0; i < cm.display.view.length; i++)\n { clearLineMeasurementCacheFor(cm.display.view[i]); }\n }\n\n function clearCaches(cm) {\n clearLineMeasurementCache(cm);\n cm.display.cachedCharWidth = cm.display.cachedTextHeight = cm.display.cachedPaddingH = null;\n if (!cm.options.lineWrapping) { cm.display.maxLineChanged = true; }\n cm.display.lineNumChars = null;\n }\n\n function pageScrollX() {\n // Work around https://bugs.chromium.org/p/chromium/issues/detail?id=489206\n // which causes page_Offset and bounding client rects to use\n // different reference viewports and invalidate our calculations.\n if (chrome && android) { return -(document.body.getBoundingClientRect().left - parseInt(getComputedStyle(document.body).marginLeft)) }\n return window.pageXOffset || (document.documentElement || document.body).scrollLeft\n }\n function pageScrollY() {\n if (chrome && android) { return -(document.body.getBoundingClientRect().top - parseInt(getComputedStyle(document.body).marginTop)) }\n return window.pageYOffset || (document.documentElement || document.body).scrollTop\n }\n\n function widgetTopHeight(lineObj) {\n var height = 0;\n if (lineObj.widgets) { for (var i = 0; i < lineObj.widgets.length; ++i) { if (lineObj.widgets[i].above)\n { height += widgetHeight(lineObj.widgets[i]); } } }\n return height\n }\n\n // Converts a {top, bottom, left, right} box from line-local\n // coordinates into another coordinate system. Context may be one of\n // \"line\", \"div\" (display.lineDiv), \"local\"./null (editor), \"window\",\n // or \"page\".\n function intoCoordSystem(cm, lineObj, rect, context, includeWidgets) {\n if (!includeWidgets) {\n var height = widgetTopHeight(lineObj);\n rect.top += height; rect.bottom += height;\n }\n if (context == \"line\") { return rect }\n if (!context) { context = \"local\"; }\n var yOff = heightAtLine(lineObj);\n if (context == \"local\") { yOff += paddingTop(cm.display); }\n else { yOff -= cm.display.viewOffset; }\n if (context == \"page\" || context == \"window\") {\n var lOff = cm.display.lineSpace.getBoundingClientRect();\n yOff += lOff.top + (context == \"window\" ? 0 : pageScrollY());\n var xOff = lOff.left + (context == \"window\" ? 0 : pageScrollX());\n rect.left += xOff; rect.right += xOff;\n }\n rect.top += yOff; rect.bottom += yOff;\n return rect\n }\n\n // Coverts a box from \"div\" coords to another coordinate system.\n // Context may be \"window\", \"page\", \"div\", or \"local\"./null.\n function fromCoordSystem(cm, coords, context) {\n if (context == \"div\") { return coords }\n var left = coords.left, top = coords.top;\n // First move into \"page\" coordinate system\n if (context == \"page\") {\n left -= pageScrollX();\n top -= pageScrollY();\n } else if (context == \"local\" || !context) {\n var localBox = cm.display.sizer.getBoundingClientRect();\n left += localBox.left;\n top += localBox.top;\n }\n\n var lineSpaceBox = cm.display.lineSpace.getBoundingClientRect();\n return {left: left - lineSpaceBox.left, top: top - lineSpaceBox.top}\n }\n\n function charCoords(cm, pos, context, lineObj, bias) {\n if (!lineObj) { lineObj = getLine(cm.doc, pos.line); }\n return intoCoordSystem(cm, lineObj, measureChar(cm, lineObj, pos.ch, bias), context)\n }\n\n // Returns a box for a given cursor position, which may have an\n // 'other' property containing the position of the secondary cursor\n // on a bidi boundary.\n // A cursor Pos(line, char, \"before\") is on the same visual line as `char - 1`\n // and after `char - 1` in writing order of `char - 1`\n // A cursor Pos(line, char, \"after\") is on the same visual line as `char`\n // and before `char` in writing order of `char`\n // Examples (upper-case letters are RTL, lower-case are LTR):\n // Pos(0, 1, ...)\n // before after\n // ab a|b a|b\n // aB a|B aB|\n // Ab |Ab A|b\n // AB B|A B|A\n // Every position after the last character on a line is considered to stick\n // to the last character on the line.\n function cursorCoords(cm, pos, context, lineObj, preparedMeasure, varHeight) {\n lineObj = lineObj || getLine(cm.doc, pos.line);\n if (!preparedMeasure) { preparedMeasure = prepareMeasureForLine(cm, lineObj); }\n function get(ch, right) {\n var m = measureCharPrepared(cm, preparedMeasure, ch, right ? \"right\" : \"left\", varHeight);\n if (right) { m.left = m.right; } else { m.right = m.left; }\n return intoCoordSystem(cm, lineObj, m, context)\n }\n var order = getOrder(lineObj, cm.doc.direction), ch = pos.ch, sticky = pos.sticky;\n if (ch >= lineObj.text.length) {\n ch = lineObj.text.length;\n sticky = \"before\";\n } else if (ch <= 0) {\n ch = 0;\n sticky = \"after\";\n }\n if (!order) { return get(sticky == \"before\" ? ch - 1 : ch, sticky == \"before\") }\n\n function getBidi(ch, partPos, invert) {\n var part = order[partPos], right = part.level == 1;\n return get(invert ? ch - 1 : ch, right != invert)\n }\n var partPos = getBidiPartAt(order, ch, sticky);\n var other = bidiOther;\n var val = getBidi(ch, partPos, sticky == \"before\");\n if (other != null) { val.other = getBidi(ch, other, sticky != \"before\"); }\n return val\n }\n\n // Used to cheaply estimate the coordinates for a position. Used for\n // intermediate scroll updates.\n function estimateCoords(cm, pos) {\n var left = 0;\n pos = clipPos(cm.doc, pos);\n if (!cm.options.lineWrapping) { left = charWidth(cm.display) * pos.ch; }\n var lineObj = getLine(cm.doc, pos.line);\n var top = heightAtLine(lineObj) + paddingTop(cm.display);\n return {left: left, right: left, top: top, bottom: top + lineObj.height}\n }\n\n // Positions returned by coordsChar contain some extra information.\n // xRel is the relative x position of the input coordinates compared\n // to the found position (so xRel > 0 means the coordinates are to\n // the right of the character position, for example). When outside\n // is true, that means the coordinates lie outside the line's\n // vertical range.\n function PosWithInfo(line, ch, sticky, outside, xRel) {\n var pos = Pos(line, ch, sticky);\n pos.xRel = xRel;\n if (outside) { pos.outside = outside; }\n return pos\n }\n\n // Compute the character position closest to the given coordinates.\n // Input must be lineSpace-local (\"div\" coordinate system).\n function coordsChar(cm, x, y) {\n var doc = cm.doc;\n y += cm.display.viewOffset;\n if (y < 0) { return PosWithInfo(doc.first, 0, null, -1, -1) }\n var lineN = lineAtHeight(doc, y), last = doc.first + doc.size - 1;\n if (lineN > last)\n { return PosWithInfo(doc.first + doc.size - 1, getLine(doc, last).text.length, null, 1, 1) }\n if (x < 0) { x = 0; }\n\n var lineObj = getLine(doc, lineN);\n for (;;) {\n var found = coordsCharInner(cm, lineObj, lineN, x, y);\n var collapsed = collapsedSpanAround(lineObj, found.ch + (found.xRel > 0 || found.outside > 0 ? 1 : 0));\n if (!collapsed) { return found }\n var rangeEnd = collapsed.find(1);\n if (rangeEnd.line == lineN) { return rangeEnd }\n lineObj = getLine(doc, lineN = rangeEnd.line);\n }\n }\n\n function wrappedLineExtent(cm, lineObj, preparedMeasure, y) {\n y -= widgetTopHeight(lineObj);\n var end = lineObj.text.length;\n var begin = findFirst(function (ch) { return measureCharPrepared(cm, preparedMeasure, ch - 1).bottom <= y; }, end, 0);\n end = findFirst(function (ch) { return measureCharPrepared(cm, preparedMeasure, ch).top > y; }, begin, end);\n return {begin: begin, end: end}\n }\n\n function wrappedLineExtentChar(cm, lineObj, preparedMeasure, target) {\n if (!preparedMeasure) { preparedMeasure = prepareMeasureForLine(cm, lineObj); }\n var targetTop = intoCoordSystem(cm, lineObj, measureCharPrepared(cm, preparedMeasure, target), \"line\").top;\n return wrappedLineExtent(cm, lineObj, preparedMeasure, targetTop)\n }\n\n // Returns true if the given side of a box is after the given\n // coordinates, in top-to-bottom, left-to-right order.\n function boxIsAfter(box, x, y, left) {\n return box.bottom <= y ? false : box.top > y ? true : (left ? box.left : box.right) > x\n }\n\n function coordsCharInner(cm, lineObj, lineNo, x, y) {\n // Move y into line-local coordinate space\n y -= heightAtLine(lineObj);\n var preparedMeasure = prepareMeasureForLine(cm, lineObj);\n // When directly calling `measureCharPrepared`, we have to adjust\n // for the widgets at this line.\n var widgetHeight = widgetTopHeight(lineObj);\n var begin = 0, end = lineObj.text.length, ltr = true;\n\n var order = getOrder(lineObj, cm.doc.direction);\n // If the line isn't plain left-to-right text, first figure out\n // which bidi section the coordinates fall into.\n if (order) {\n var part = (cm.options.lineWrapping ? coordsBidiPartWrapped : coordsBidiPart)\n (cm, lineObj, lineNo, preparedMeasure, order, x, y);\n ltr = part.level != 1;\n // The awkward -1 offsets are needed because findFirst (called\n // on these below) will treat its first bound as inclusive,\n // second as exclusive, but we want to actually address the\n // characters in the part's range\n begin = ltr ? part.from : part.to - 1;\n end = ltr ? part.to : part.from - 1;\n }\n\n // A binary search to find the first character whose bounding box\n // starts after the coordinates. If we run across any whose box wrap\n // the coordinates, store that.\n var chAround = null, boxAround = null;\n var ch = findFirst(function (ch) {\n var box = measureCharPrepared(cm, preparedMeasure, ch);\n box.top += widgetHeight; box.bottom += widgetHeight;\n if (!boxIsAfter(box, x, y, false)) { return false }\n if (box.top <= y && box.left <= x) {\n chAround = ch;\n boxAround = box;\n }\n return true\n }, begin, end);\n\n var baseX, sticky, outside = false;\n // If a box around the coordinates was found, use that\n if (boxAround) {\n // Distinguish coordinates nearer to the left or right side of the box\n var atLeft = x - boxAround.left < boxAround.right - x, atStart = atLeft == ltr;\n ch = chAround + (atStart ? 0 : 1);\n sticky = atStart ? \"after\" : \"before\";\n baseX = atLeft ? boxAround.left : boxAround.right;\n } else {\n // (Adjust for extended bound, if necessary.)\n if (!ltr && (ch == end || ch == begin)) { ch++; }\n // To determine which side to associate with, get the box to the\n // left of the character and compare it's vertical position to the\n // coordinates\n sticky = ch == 0 ? \"after\" : ch == lineObj.text.length ? \"before\" :\n (measureCharPrepared(cm, preparedMeasure, ch - (ltr ? 1 : 0)).bottom + widgetHeight <= y) == ltr ?\n \"after\" : \"before\";\n // Now get accurate coordinates for this place, in order to get a\n // base X position\n var coords = cursorCoords(cm, Pos(lineNo, ch, sticky), \"line\", lineObj, preparedMeasure);\n baseX = coords.left;\n outside = y < coords.top ? -1 : y >= coords.bottom ? 1 : 0;\n }\n\n ch = skipExtendingChars(lineObj.text, ch, 1);\n return PosWithInfo(lineNo, ch, sticky, outside, x - baseX)\n }\n\n function coordsBidiPart(cm, lineObj, lineNo, preparedMeasure, order, x, y) {\n // Bidi parts are sorted left-to-right, and in a non-line-wrapping\n // situation, we can take this ordering to correspond to the visual\n // ordering. This finds the first part whose end is after the given\n // coordinates.\n var index = findFirst(function (i) {\n var part = order[i], ltr = part.level != 1;\n return boxIsAfter(cursorCoords(cm, Pos(lineNo, ltr ? part.to : part.from, ltr ? \"before\" : \"after\"),\n \"line\", lineObj, preparedMeasure), x, y, true)\n }, 0, order.length - 1);\n var part = order[index];\n // If this isn't the first part, the part's start is also after\n // the coordinates, and the coordinates aren't on the same line as\n // that start, move one part back.\n if (index > 0) {\n var ltr = part.level != 1;\n var start = cursorCoords(cm, Pos(lineNo, ltr ? part.from : part.to, ltr ? \"after\" : \"before\"),\n \"line\", lineObj, preparedMeasure);\n if (boxIsAfter(start, x, y, true) && start.top > y)\n { part = order[index - 1]; }\n }\n return part\n }\n\n function coordsBidiPartWrapped(cm, lineObj, _lineNo, preparedMeasure, order, x, y) {\n // In a wrapped line, rtl text on wrapping boundaries can do things\n // that don't correspond to the ordering in our `order` array at\n // all, so a binary search doesn't work, and we want to return a\n // part that only spans one line so that the binary search in\n // coordsCharInner is safe. As such, we first find the extent of the\n // wrapped line, and then do a flat search in which we discard any\n // spans that aren't on the line.\n var ref = wrappedLineExtent(cm, lineObj, preparedMeasure, y);\n var begin = ref.begin;\n var end = ref.end;\n if (/\\s/.test(lineObj.text.charAt(end - 1))) { end--; }\n var part = null, closestDist = null;\n for (var i = 0; i < order.length; i++) {\n var p = order[i];\n if (p.from >= end || p.to <= begin) { continue }\n var ltr = p.level != 1;\n var endX = measureCharPrepared(cm, preparedMeasure, ltr ? Math.min(end, p.to) - 1 : Math.max(begin, p.from)).right;\n // Weigh against spans ending before this, so that they are only\n // picked if nothing ends after\n var dist = endX < x ? x - endX + 1e9 : endX - x;\n if (!part || closestDist > dist) {\n part = p;\n closestDist = dist;\n }\n }\n if (!part) { part = order[order.length - 1]; }\n // Clip the part to the wrapped line.\n if (part.from < begin) { part = {from: begin, to: part.to, level: part.level}; }\n if (part.to > end) { part = {from: part.from, to: end, level: part.level}; }\n return part\n }\n\n var measureText;\n // Compute the default text height.\n function textHeight(display) {\n if (display.cachedTextHeight != null) { return display.cachedTextHeight }\n if (measureText == null) {\n measureText = elt(\"pre\", null, \"CodeMirror-line-like\");\n // Measure a bunch of lines, for browsers that compute\n // fractional heights.\n for (var i = 0; i < 49; ++i) {\n measureText.appendChild(document.createTextNode(\"x\"));\n measureText.appendChild(elt(\"br\"));\n }\n measureText.appendChild(document.createTextNode(\"x\"));\n }\n removeChildrenAndAdd(display.measure, measureText);\n var height = measureText.offsetHeight / 50;\n if (height > 3) { display.cachedTextHeight = height; }\n removeChildren(display.measure);\n return height || 1\n }\n\n // Compute the default character width.\n function charWidth(display) {\n if (display.cachedCharWidth != null) { return display.cachedCharWidth }\n var anchor = elt(\"span\", \"xxxxxxxxxx\");\n var pre = elt(\"pre\", [anchor], \"CodeMirror-line-like\");\n removeChildrenAndAdd(display.measure, pre);\n var rect = anchor.getBoundingClientRect(), width = (rect.right - rect.left) / 10;\n if (width > 2) { display.cachedCharWidth = width; }\n return width || 10\n }\n\n // Do a bulk-read of the DOM positions and sizes needed to draw the\n // view, so that we don't interleave reading and writing to the DOM.\n function getDimensions(cm) {\n var d = cm.display, left = {}, width = {};\n var gutterLeft = d.gutters.clientLeft;\n for (var n = d.gutters.firstChild, i = 0; n; n = n.nextSibling, ++i) {\n var id = cm.display.gutterSpecs[i].className;\n left[id] = n.offsetLeft + n.clientLeft + gutterLeft;\n width[id] = n.clientWidth;\n }\n return {fixedPos: compensateForHScroll(d),\n gutterTotalWidth: d.gutters.offsetWidth,\n gutterLeft: left,\n gutterWidth: width,\n wrapperWidth: d.wrapper.clientWidth}\n }\n\n // Computes display.scroller.scrollLeft + display.gutters.offsetWidth,\n // but using getBoundingClientRect to get a sub-pixel-accurate\n // result.\n function compensateForHScroll(display) {\n return display.scroller.getBoundingClientRect().left - display.sizer.getBoundingClientRect().left\n }\n\n // Returns a function that estimates the height of a line, to use as\n // first approximation until the line becomes visible (and is thus\n // properly measurable).\n function estimateHeight(cm) {\n var th = textHeight(cm.display), wrapping = cm.options.lineWrapping;\n var perLine = wrapping && Math.max(5, cm.display.scroller.clientWidth / charWidth(cm.display) - 3);\n return function (line) {\n if (lineIsHidden(cm.doc, line)) { return 0 }\n\n var widgetsHeight = 0;\n if (line.widgets) { for (var i = 0; i < line.widgets.length; i++) {\n if (line.widgets[i].height) { widgetsHeight += line.widgets[i].height; }\n } }\n\n if (wrapping)\n { return widgetsHeight + (Math.ceil(line.text.length / perLine) || 1) * th }\n else\n { return widgetsHeight + th }\n }\n }\n\n function estimateLineHeights(cm) {\n var doc = cm.doc, est = estimateHeight(cm);\n doc.iter(function (line) {\n var estHeight = est(line);\n if (estHeight != line.height) { updateLineHeight(line, estHeight); }\n });\n }\n\n // Given a mouse event, find the corresponding position. If liberal\n // is false, it checks whether a gutter or scrollbar was clicked,\n // and returns null if it was. forRect is used by rectangular\n // selections, and tries to estimate a character position even for\n // coordinates beyond the right of the text.\n function posFromMouse(cm, e, liberal, forRect) {\n var display = cm.display;\n if (!liberal && e_target(e).getAttribute(\"cm-not-content\") == \"true\") { return null }\n\n var x, y, space = display.lineSpace.getBoundingClientRect();\n // Fails unpredictably on IE[67] when mouse is dragged around quickly.\n try { x = e.clientX - space.left; y = e.clientY - space.top; }\n catch (e$1) { return null }\n var coords = coordsChar(cm, x, y), line;\n if (forRect && coords.xRel > 0 && (line = getLine(cm.doc, coords.line).text).length == coords.ch) {\n var colDiff = countColumn(line, line.length, cm.options.tabSize) - line.length;\n coords = Pos(coords.line, Math.max(0, Math.round((x - paddingH(cm.display).left) / charWidth(cm.display)) - colDiff));\n }\n return coords\n }\n\n // Find the view element corresponding to a given line. Return null\n // when the line isn't visible.\n function findViewIndex(cm, n) {\n if (n >= cm.display.viewTo) { return null }\n n -= cm.display.viewFrom;\n if (n < 0) { return null }\n var view = cm.display.view;\n for (var i = 0; i < view.length; i++) {\n n -= view[i].size;\n if (n < 0) { return i }\n }\n }\n\n // Updates the display.view data structure for a given change to the\n // document. From and to are in pre-change coordinates. Lendiff is\n // the amount of lines added or subtracted by the change. This is\n // used for changes that span multiple lines, or change the way\n // lines are divided into visual lines. regLineChange (below)\n // registers single-line changes.\n function regChange(cm, from, to, lendiff) {\n if (from == null) { from = cm.doc.first; }\n if (to == null) { to = cm.doc.first + cm.doc.size; }\n if (!lendiff) { lendiff = 0; }\n\n var display = cm.display;\n if (lendiff && to < display.viewTo &&\n (display.updateLineNumbers == null || display.updateLineNumbers > from))\n { display.updateLineNumbers = from; }\n\n cm.curOp.viewChanged = true;\n\n if (from >= display.viewTo) { // Change after\n if (sawCollapsedSpans && visualLineNo(cm.doc, from) < display.viewTo)\n { resetView(cm); }\n } else if (to <= display.viewFrom) { // Change before\n if (sawCollapsedSpans && visualLineEndNo(cm.doc, to + lendiff) > display.viewFrom) {\n resetView(cm);\n } else {\n display.viewFrom += lendiff;\n display.viewTo += lendiff;\n }\n } else if (from <= display.viewFrom && to >= display.viewTo) { // Full overlap\n resetView(cm);\n } else if (from <= display.viewFrom) { // Top overlap\n var cut = viewCuttingPoint(cm, to, to + lendiff, 1);\n if (cut) {\n display.view = display.view.slice(cut.index);\n display.viewFrom = cut.lineN;\n display.viewTo += lendiff;\n } else {\n resetView(cm);\n }\n } else if (to >= display.viewTo) { // Bottom overlap\n var cut$1 = viewCuttingPoint(cm, from, from, -1);\n if (cut$1) {\n display.view = display.view.slice(0, cut$1.index);\n display.viewTo = cut$1.lineN;\n } else {\n resetView(cm);\n }\n } else { // Gap in the middle\n var cutTop = viewCuttingPoint(cm, from, from, -1);\n var cutBot = viewCuttingPoint(cm, to, to + lendiff, 1);\n if (cutTop && cutBot) {\n display.view = display.view.slice(0, cutTop.index)\n .concat(buildViewArray(cm, cutTop.lineN, cutBot.lineN))\n .concat(display.view.slice(cutBot.index));\n display.viewTo += lendiff;\n } else {\n resetView(cm);\n }\n }\n\n var ext = display.externalMeasured;\n if (ext) {\n if (to < ext.lineN)\n { ext.lineN += lendiff; }\n else if (from < ext.lineN + ext.size)\n { display.externalMeasured = null; }\n }\n }\n\n // Register a change to a single line. Type must be one of \"text\",\n // \"gutter\", \"class\", \"widget\"\n function regLineChange(cm, line, type) {\n cm.curOp.viewChanged = true;\n var display = cm.display, ext = cm.display.externalMeasured;\n if (ext && line >= ext.lineN && line < ext.lineN + ext.size)\n { display.externalMeasured = null; }\n\n if (line < display.viewFrom || line >= display.viewTo) { return }\n var lineView = display.view[findViewIndex(cm, line)];\n if (lineView.node == null) { return }\n var arr = lineView.changes || (lineView.changes = []);\n if (indexOf(arr, type) == -1) { arr.push(type); }\n }\n\n // Clear the view.\n function resetView(cm) {\n cm.display.viewFrom = cm.display.viewTo = cm.doc.first;\n cm.display.view = [];\n cm.display.viewOffset = 0;\n }\n\n function viewCuttingPoint(cm, oldN, newN, dir) {\n var index = findViewIndex(cm, oldN), diff, view = cm.display.view;\n if (!sawCollapsedSpans || newN == cm.doc.first + cm.doc.size)\n { return {index: index, lineN: newN} }\n var n = cm.display.viewFrom;\n for (var i = 0; i < index; i++)\n { n += view[i].size; }\n if (n != oldN) {\n if (dir > 0) {\n if (index == view.length - 1) { return null }\n diff = (n + view[index].size) - oldN;\n index++;\n } else {\n diff = n - oldN;\n }\n oldN += diff; newN += diff;\n }\n while (visualLineNo(cm.doc, newN) != newN) {\n if (index == (dir < 0 ? 0 : view.length - 1)) { return null }\n newN += dir * view[index - (dir < 0 ? 1 : 0)].size;\n index += dir;\n }\n return {index: index, lineN: newN}\n }\n\n // Force the view to cover a given range, adding empty view element\n // or clipping off existing ones as needed.\n function adjustView(cm, from, to) {\n var display = cm.display, view = display.view;\n if (view.length == 0 || from >= display.viewTo || to <= display.viewFrom) {\n display.view = buildViewArray(cm, from, to);\n display.viewFrom = from;\n } else {\n if (display.viewFrom > from)\n { display.view = buildViewArray(cm, from, display.viewFrom).concat(display.view); }\n else if (display.viewFrom < from)\n { display.view = display.view.slice(findViewIndex(cm, from)); }\n display.viewFrom = from;\n if (display.viewTo < to)\n { display.view = display.view.concat(buildViewArray(cm, display.viewTo, to)); }\n else if (display.viewTo > to)\n { display.view = display.view.slice(0, findViewIndex(cm, to)); }\n }\n display.viewTo = to;\n }\n\n // Count the number of lines in the view whose DOM representation is\n // out of date (or nonexistent).\n function countDirtyView(cm) {\n var view = cm.display.view, dirty = 0;\n for (var i = 0; i < view.length; i++) {\n var lineView = view[i];\n if (!lineView.hidden && (!lineView.node || lineView.changes)) { ++dirty; }\n }\n return dirty\n }\n\n function updateSelection(cm) {\n cm.display.input.showSelection(cm.display.input.prepareSelection());\n }\n\n function prepareSelection(cm, primary) {\n if ( primary === void 0 ) primary = true;\n\n var doc = cm.doc, result = {};\n var curFragment = result.cursors = document.createDocumentFragment();\n var selFragment = result.selection = document.createDocumentFragment();\n\n for (var i = 0; i < doc.sel.ranges.length; i++) {\n if (!primary && i == doc.sel.primIndex) { continue }\n var range = doc.sel.ranges[i];\n if (range.from().line >= cm.display.viewTo || range.to().line < cm.display.viewFrom) { continue }\n var collapsed = range.empty();\n if (collapsed || cm.options.showCursorWhenSelecting)\n { drawSelectionCursor(cm, range.head, curFragment); }\n if (!collapsed)\n { drawSelectionRange(cm, range, selFragment); }\n }\n return result\n }\n\n // Draws a cursor for the given range\n function drawSelectionCursor(cm, head, output) {\n var pos = cursorCoords(cm, head, \"div\", null, null, !cm.options.singleCursorHeightPerLine);\n\n var cursor = output.appendChild(elt(\"div\", \"\\u00a0\", \"CodeMirror-cursor\"));\n cursor.style.left = pos.left + \"px\";\n cursor.style.top = pos.top + \"px\";\n cursor.style.height = Math.max(0, pos.bottom - pos.top) * cm.options.cursorHeight + \"px\";\n\n if (pos.other) {\n // Secondary cursor, shown when on a 'jump' in bi-directional text\n var otherCursor = output.appendChild(elt(\"div\", \"\\u00a0\", \"CodeMirror-cursor CodeMirror-secondarycursor\"));\n otherCursor.style.display = \"\";\n otherCursor.style.left = pos.other.left + \"px\";\n otherCursor.style.top = pos.other.top + \"px\";\n otherCursor.style.height = (pos.other.bottom - pos.other.top) * .85 + \"px\";\n }\n }\n\n function cmpCoords(a, b) { return a.top - b.top || a.left - b.left }\n\n // Draws the given range as a highlighted selection\n function drawSelectionRange(cm, range, output) {\n var display = cm.display, doc = cm.doc;\n var fragment = document.createDocumentFragment();\n var padding = paddingH(cm.display), leftSide = padding.left;\n var rightSide = Math.max(display.sizerWidth, displayWidth(cm) - display.sizer.offsetLeft) - padding.right;\n var docLTR = doc.direction == \"ltr\";\n\n function add(left, top, width, bottom) {\n if (top < 0) { top = 0; }\n top = Math.round(top);\n bottom = Math.round(bottom);\n fragment.appendChild(elt(\"div\", null, \"CodeMirror-selected\", (\"position: absolute; left: \" + left + \"px;\\n top: \" + top + \"px; width: \" + (width == null ? rightSide - left : width) + \"px;\\n height: \" + (bottom - top) + \"px\")));\n }\n\n function drawForLine(line, fromArg, toArg) {\n var lineObj = getLine(doc, line);\n var lineLen = lineObj.text.length;\n var start, end;\n function coords(ch, bias) {\n return charCoords(cm, Pos(line, ch), \"div\", lineObj, bias)\n }\n\n function wrapX(pos, dir, side) {\n var extent = wrappedLineExtentChar(cm, lineObj, null, pos);\n var prop = (dir == \"ltr\") == (side == \"after\") ? \"left\" : \"right\";\n var ch = side == \"after\" ? extent.begin : extent.end - (/\\s/.test(lineObj.text.charAt(extent.end - 1)) ? 2 : 1);\n return coords(ch, prop)[prop]\n }\n\n var order = getOrder(lineObj, doc.direction);\n iterateBidiSections(order, fromArg || 0, toArg == null ? lineLen : toArg, function (from, to, dir, i) {\n var ltr = dir == \"ltr\";\n var fromPos = coords(from, ltr ? \"left\" : \"right\");\n var toPos = coords(to - 1, ltr ? \"right\" : \"left\");\n\n var openStart = fromArg == null && from == 0, openEnd = toArg == null && to == lineLen;\n var first = i == 0, last = !order || i == order.length - 1;\n if (toPos.top - fromPos.top <= 3) { // Single line\n var openLeft = (docLTR ? openStart : openEnd) && first;\n var openRight = (docLTR ? openEnd : openStart) && last;\n var left = openLeft ? leftSide : (ltr ? fromPos : toPos).left;\n var right = openRight ? rightSide : (ltr ? toPos : fromPos).right;\n add(left, fromPos.top, right - left, fromPos.bottom);\n } else { // Multiple lines\n var topLeft, topRight, botLeft, botRight;\n if (ltr) {\n topLeft = docLTR && openStart && first ? leftSide : fromPos.left;\n topRight = docLTR ? rightSide : wrapX(from, dir, \"before\");\n botLeft = docLTR ? leftSide : wrapX(to, dir, \"after\");\n botRight = docLTR && openEnd && last ? rightSide : toPos.right;\n } else {\n topLeft = !docLTR ? leftSide : wrapX(from, dir, \"before\");\n topRight = !docLTR && openStart && first ? rightSide : fromPos.right;\n botLeft = !docLTR && openEnd && last ? leftSide : toPos.left;\n botRight = !docLTR ? rightSide : wrapX(to, dir, \"after\");\n }\n add(topLeft, fromPos.top, topRight - topLeft, fromPos.bottom);\n if (fromPos.bottom < toPos.top) { add(leftSide, fromPos.bottom, null, toPos.top); }\n add(botLeft, toPos.top, botRight - botLeft, toPos.bottom);\n }\n\n if (!start || cmpCoords(fromPos, start) < 0) { start = fromPos; }\n if (cmpCoords(toPos, start) < 0) { start = toPos; }\n if (!end || cmpCoords(fromPos, end) < 0) { end = fromPos; }\n if (cmpCoords(toPos, end) < 0) { end = toPos; }\n });\n return {start: start, end: end}\n }\n\n var sFrom = range.from(), sTo = range.to();\n if (sFrom.line == sTo.line) {\n drawForLine(sFrom.line, sFrom.ch, sTo.ch);\n } else {\n var fromLine = getLine(doc, sFrom.line), toLine = getLine(doc, sTo.line);\n var singleVLine = visualLine(fromLine) == visualLine(toLine);\n var leftEnd = drawForLine(sFrom.line, sFrom.ch, singleVLine ? fromLine.text.length + 1 : null).end;\n var rightStart = drawForLine(sTo.line, singleVLine ? 0 : null, sTo.ch).start;\n if (singleVLine) {\n if (leftEnd.top < rightStart.top - 2) {\n add(leftEnd.right, leftEnd.top, null, leftEnd.bottom);\n add(leftSide, rightStart.top, rightStart.left, rightStart.bottom);\n } else {\n add(leftEnd.right, leftEnd.top, rightStart.left - leftEnd.right, leftEnd.bottom);\n }\n }\n if (leftEnd.bottom < rightStart.top)\n { add(leftSide, leftEnd.bottom, null, rightStart.top); }\n }\n\n output.appendChild(fragment);\n }\n\n // Cursor-blinking\n function restartBlink(cm) {\n if (!cm.state.focused) { return }\n var display = cm.display;\n clearInterval(display.blinker);\n var on = true;\n display.cursorDiv.style.visibility = \"\";\n if (cm.options.cursorBlinkRate > 0)\n { display.blinker = setInterval(function () {\n if (!cm.hasFocus()) { onBlur(cm); }\n display.cursorDiv.style.visibility = (on = !on) ? \"\" : \"hidden\";\n }, cm.options.cursorBlinkRate); }\n else if (cm.options.cursorBlinkRate < 0)\n { display.cursorDiv.style.visibility = \"hidden\"; }\n }\n\n function ensureFocus(cm) {\n if (!cm.state.focused) { cm.display.input.focus(); onFocus(cm); }\n }\n\n function delayBlurEvent(cm) {\n cm.state.delayingBlurEvent = true;\n setTimeout(function () { if (cm.state.delayingBlurEvent) {\n cm.state.delayingBlurEvent = false;\n onBlur(cm);\n } }, 100);\n }\n\n function onFocus(cm, e) {\n if (cm.state.delayingBlurEvent) { cm.state.delayingBlurEvent = false; }\n\n if (cm.options.readOnly == \"nocursor\") { return }\n if (!cm.state.focused) {\n signal(cm, \"focus\", cm, e);\n cm.state.focused = true;\n addClass(cm.display.wrapper, \"CodeMirror-focused\");\n // This test prevents this from firing when a context\n // menu is closed (since the input reset would kill the\n // select-all detection hack)\n if (!cm.curOp && cm.display.selForContextMenu != cm.doc.sel) {\n cm.display.input.reset();\n if (webkit) { setTimeout(function () { return cm.display.input.reset(true); }, 20); } // Issue #1730\n }\n cm.display.input.receivedFocus();\n }\n restartBlink(cm);\n }\n function onBlur(cm, e) {\n if (cm.state.delayingBlurEvent) { return }\n\n if (cm.state.focused) {\n signal(cm, \"blur\", cm, e);\n cm.state.focused = false;\n rmClass(cm.display.wrapper, \"CodeMirror-focused\");\n }\n clearInterval(cm.display.blinker);\n setTimeout(function () { if (!cm.state.focused) { cm.display.shift = false; } }, 150);\n }\n\n // Read the actual heights of the rendered lines, and update their\n // stored heights to match.\n function updateHeightsInViewport(cm) {\n var display = cm.display;\n var prevBottom = display.lineDiv.offsetTop;\n for (var i = 0; i < display.view.length; i++) {\n var cur = display.view[i], wrapping = cm.options.lineWrapping;\n var height = (void 0), width = 0;\n if (cur.hidden) { continue }\n if (ie && ie_version < 8) {\n var bot = cur.node.offsetTop + cur.node.offsetHeight;\n height = bot - prevBottom;\n prevBottom = bot;\n } else {\n var box = cur.node.getBoundingClientRect();\n height = box.bottom - box.top;\n // Check that lines don't extend past the right of the current\n // editor width\n if (!wrapping && cur.text.firstChild)\n { width = cur.text.firstChild.getBoundingClientRect().right - box.left - 1; }\n }\n var diff = cur.line.height - height;\n if (diff > .005 || diff < -.005) {\n updateLineHeight(cur.line, height);\n updateWidgetHeight(cur.line);\n if (cur.rest) { for (var j = 0; j < cur.rest.length; j++)\n { updateWidgetHeight(cur.rest[j]); } }\n }\n if (width > cm.display.sizerWidth) {\n var chWidth = Math.ceil(width / charWidth(cm.display));\n if (chWidth > cm.display.maxLineLength) {\n cm.display.maxLineLength = chWidth;\n cm.display.maxLine = cur.line;\n cm.display.maxLineChanged = true;\n }\n }\n }\n }\n\n // Read and store the height of line widgets associated with the\n // given line.\n function updateWidgetHeight(line) {\n if (line.widgets) { for (var i = 0; i < line.widgets.length; ++i) {\n var w = line.widgets[i], parent = w.node.parentNode;\n if (parent) { w.height = parent.offsetHeight; }\n } }\n }\n\n // Compute the lines that are visible in a given viewport (defaults\n // the the current scroll position). viewport may contain top,\n // height, and ensure (see op.scrollToPos) properties.\n function visibleLines(display, doc, viewport) {\n var top = viewport && viewport.top != null ? Math.max(0, viewport.top) : display.scroller.scrollTop;\n top = Math.floor(top - paddingTop(display));\n var bottom = viewport && viewport.bottom != null ? viewport.bottom : top + display.wrapper.clientHeight;\n\n var from = lineAtHeight(doc, top), to = lineAtHeight(doc, bottom);\n // Ensure is a {from: {line, ch}, to: {line, ch}} object, and\n // forces those lines into the viewport (if possible).\n if (viewport && viewport.ensure) {\n var ensureFrom = viewport.ensure.from.line, ensureTo = viewport.ensure.to.line;\n if (ensureFrom < from) {\n from = ensureFrom;\n to = lineAtHeight(doc, heightAtLine(getLine(doc, ensureFrom)) + display.wrapper.clientHeight);\n } else if (Math.min(ensureTo, doc.lastLine()) >= to) {\n from = lineAtHeight(doc, heightAtLine(getLine(doc, ensureTo)) - display.wrapper.clientHeight);\n to = ensureTo;\n }\n }\n return {from: from, to: Math.max(to, from + 1)}\n }\n\n // SCROLLING THINGS INTO VIEW\n\n // If an editor sits on the top or bottom of the window, partially\n // scrolled out of view, this ensures that the cursor is visible.\n function maybeScrollWindow(cm, rect) {\n if (signalDOMEvent(cm, \"scrollCursorIntoView\")) { return }\n\n var display = cm.display, box = display.sizer.getBoundingClientRect(), doScroll = null;\n if (rect.top + box.top < 0) { doScroll = true; }\n else if (rect.bottom + box.top > (window.innerHeight || document.documentElement.clientHeight)) { doScroll = false; }\n if (doScroll != null && !phantom) {\n var scrollNode = elt(\"div\", \"\\u200b\", null, (\"position: absolute;\\n top: \" + (rect.top - display.viewOffset - paddingTop(cm.display)) + \"px;\\n height: \" + (rect.bottom - rect.top + scrollGap(cm) + display.barHeight) + \"px;\\n left: \" + (rect.left) + \"px; width: \" + (Math.max(2, rect.right - rect.left)) + \"px;\"));\n cm.display.lineSpace.appendChild(scrollNode);\n scrollNode.scrollIntoView(doScroll);\n cm.display.lineSpace.removeChild(scrollNode);\n }\n }\n\n // Scroll a given position into view (immediately), verifying that\n // it actually became visible (as line heights are accurately\n // measured, the position of something may 'drift' during drawing).\n function scrollPosIntoView(cm, pos, end, margin) {\n if (margin == null) { margin = 0; }\n var rect;\n if (!cm.options.lineWrapping && pos == end) {\n // Set pos and end to the cursor positions around the character pos sticks to\n // If pos.sticky == \"before\", that is around pos.ch - 1, otherwise around pos.ch\n // If pos == Pos(_, 0, \"before\"), pos and end are unchanged\n pos = pos.ch ? Pos(pos.line, pos.sticky == \"before\" ? pos.ch - 1 : pos.ch, \"after\") : pos;\n end = pos.sticky == \"before\" ? Pos(pos.line, pos.ch + 1, \"before\") : pos;\n }\n for (var limit = 0; limit < 5; limit++) {\n var changed = false;\n var coords = cursorCoords(cm, pos);\n var endCoords = !end || end == pos ? coords : cursorCoords(cm, end);\n rect = {left: Math.min(coords.left, endCoords.left),\n top: Math.min(coords.top, endCoords.top) - margin,\n right: Math.max(coords.left, endCoords.left),\n bottom: Math.max(coords.bottom, endCoords.bottom) + margin};\n var scrollPos = calculateScrollPos(cm, rect);\n var startTop = cm.doc.scrollTop, startLeft = cm.doc.scrollLeft;\n if (scrollPos.scrollTop != null) {\n updateScrollTop(cm, scrollPos.scrollTop);\n if (Math.abs(cm.doc.scrollTop - startTop) > 1) { changed = true; }\n }\n if (scrollPos.scrollLeft != null) {\n setScrollLeft(cm, scrollPos.scrollLeft);\n if (Math.abs(cm.doc.scrollLeft - startLeft) > 1) { changed = true; }\n }\n if (!changed) { break }\n }\n return rect\n }\n\n // Scroll a given set of coordinates into view (immediately).\n function scrollIntoView(cm, rect) {\n var scrollPos = calculateScrollPos(cm, rect);\n if (scrollPos.scrollTop != null) { updateScrollTop(cm, scrollPos.scrollTop); }\n if (scrollPos.scrollLeft != null) { setScrollLeft(cm, scrollPos.scrollLeft); }\n }\n\n // Calculate a new scroll position needed to scroll the given\n // rectangle into view. Returns an object with scrollTop and\n // scrollLeft properties. When these are undefined, the\n // vertical/horizontal position does not need to be adjusted.\n function calculateScrollPos(cm, rect) {\n var display = cm.display, snapMargin = textHeight(cm.display);\n if (rect.top < 0) { rect.top = 0; }\n var screentop = cm.curOp && cm.curOp.scrollTop != null ? cm.curOp.scrollTop : display.scroller.scrollTop;\n var screen = displayHeight(cm), result = {};\n if (rect.bottom - rect.top > screen) { rect.bottom = rect.top + screen; }\n var docBottom = cm.doc.height + paddingVert(display);\n var atTop = rect.top < snapMargin, atBottom = rect.bottom > docBottom - snapMargin;\n if (rect.top < screentop) {\n result.scrollTop = atTop ? 0 : rect.top;\n } else if (rect.bottom > screentop + screen) {\n var newTop = Math.min(rect.top, (atBottom ? docBottom : rect.bottom) - screen);\n if (newTop != screentop) { result.scrollTop = newTop; }\n }\n\n var screenleft = cm.curOp && cm.curOp.scrollLeft != null ? cm.curOp.scrollLeft : display.scroller.scrollLeft;\n var screenw = displayWidth(cm) - (cm.options.fixedGutter ? display.gutters.offsetWidth : 0);\n var tooWide = rect.right - rect.left > screenw;\n if (tooWide) { rect.right = rect.left + screenw; }\n if (rect.left < 10)\n { result.scrollLeft = 0; }\n else if (rect.left < screenleft)\n { result.scrollLeft = Math.max(0, rect.left - (tooWide ? 0 : 10)); }\n else if (rect.right > screenw + screenleft - 3)\n { result.scrollLeft = rect.right + (tooWide ? 0 : 10) - screenw; }\n return result\n }\n\n // Store a relative adjustment to the scroll position in the current\n // operation (to be applied when the operation finishes).\n function addToScrollTop(cm, top) {\n if (top == null) { return }\n resolveScrollToPos(cm);\n cm.curOp.scrollTop = (cm.curOp.scrollTop == null ? cm.doc.scrollTop : cm.curOp.scrollTop) + top;\n }\n\n // Make sure that at the end of the operation the current cursor is\n // shown.\n function ensureCursorVisible(cm) {\n resolveScrollToPos(cm);\n var cur = cm.getCursor();\n cm.curOp.scrollToPos = {from: cur, to: cur, margin: cm.options.cursorScrollMargin};\n }\n\n function scrollToCoords(cm, x, y) {\n if (x != null || y != null) { resolveScrollToPos(cm); }\n if (x != null) { cm.curOp.scrollLeft = x; }\n if (y != null) { cm.curOp.scrollTop = y; }\n }\n\n function scrollToRange(cm, range) {\n resolveScrollToPos(cm);\n cm.curOp.scrollToPos = range;\n }\n\n // When an operation has its scrollToPos property set, and another\n // scroll action is applied before the end of the operation, this\n // 'simulates' scrolling that position into view in a cheap way, so\n // that the effect of intermediate scroll commands is not ignored.\n function resolveScrollToPos(cm) {\n var range = cm.curOp.scrollToPos;\n if (range) {\n cm.curOp.scrollToPos = null;\n var from = estimateCoords(cm, range.from), to = estimateCoords(cm, range.to);\n scrollToCoordsRange(cm, from, to, range.margin);\n }\n }\n\n function scrollToCoordsRange(cm, from, to, margin) {\n var sPos = calculateScrollPos(cm, {\n left: Math.min(from.left, to.left),\n top: Math.min(from.top, to.top) - margin,\n right: Math.max(from.right, to.right),\n bottom: Math.max(from.bottom, to.bottom) + margin\n });\n scrollToCoords(cm, sPos.scrollLeft, sPos.scrollTop);\n }\n\n // Sync the scrollable area and scrollbars, ensure the viewport\n // covers the visible area.\n function updateScrollTop(cm, val) {\n if (Math.abs(cm.doc.scrollTop - val) < 2) { return }\n if (!gecko) { updateDisplaySimple(cm, {top: val}); }\n setScrollTop(cm, val, true);\n if (gecko) { updateDisplaySimple(cm); }\n startWorker(cm, 100);\n }\n\n function setScrollTop(cm, val, forceScroll) {\n val = Math.max(0, Math.min(cm.display.scroller.scrollHeight - cm.display.scroller.clientHeight, val));\n if (cm.display.scroller.scrollTop == val && !forceScroll) { return }\n cm.doc.scrollTop = val;\n cm.display.scrollbars.setScrollTop(val);\n if (cm.display.scroller.scrollTop != val) { cm.display.scroller.scrollTop = val; }\n }\n\n // Sync scroller and scrollbar, ensure the gutter elements are\n // aligned.\n function setScrollLeft(cm, val, isScroller, forceScroll) {\n val = Math.max(0, Math.min(val, cm.display.scroller.scrollWidth - cm.display.scroller.clientWidth));\n if ((isScroller ? val == cm.doc.scrollLeft : Math.abs(cm.doc.scrollLeft - val) < 2) && !forceScroll) { return }\n cm.doc.scrollLeft = val;\n alignHorizontally(cm);\n if (cm.display.scroller.scrollLeft != val) { cm.display.scroller.scrollLeft = val; }\n cm.display.scrollbars.setScrollLeft(val);\n }\n\n // SCROLLBARS\n\n // Prepare DOM reads needed to update the scrollbars. Done in one\n // shot to minimize update/measure roundtrips.\n function measureForScrollbars(cm) {\n var d = cm.display, gutterW = d.gutters.offsetWidth;\n var docH = Math.round(cm.doc.height + paddingVert(cm.display));\n return {\n clientHeight: d.scroller.clientHeight,\n viewHeight: d.wrapper.clientHeight,\n scrollWidth: d.scroller.scrollWidth, clientWidth: d.scroller.clientWidth,\n viewWidth: d.wrapper.clientWidth,\n barLeft: cm.options.fixedGutter ? gutterW : 0,\n docHeight: docH,\n scrollHeight: docH + scrollGap(cm) + d.barHeight,\n nativeBarWidth: d.nativeBarWidth,\n gutterWidth: gutterW\n }\n }\n\n var NativeScrollbars = function(place, scroll, cm) {\n this.cm = cm;\n var vert = this.vert = elt(\"div\", [elt(\"div\", null, null, \"min-width: 1px\")], \"CodeMirror-vscrollbar\");\n var horiz = this.horiz = elt(\"div\", [elt(\"div\", null, null, \"height: 100%; min-height: 1px\")], \"CodeMirror-hscrollbar\");\n vert.tabIndex = horiz.tabIndex = -1;\n place(vert); place(horiz);\n\n on(vert, \"scroll\", function () {\n if (vert.clientHeight) { scroll(vert.scrollTop, \"vertical\"); }\n });\n on(horiz, \"scroll\", function () {\n if (horiz.clientWidth) { scroll(horiz.scrollLeft, \"horizontal\"); }\n });\n\n this.checkedZeroWidth = false;\n // Need to set a minimum width to see the scrollbar on IE7 (but must not set it on IE8).\n if (ie && ie_version < 8) { this.horiz.style.minHeight = this.vert.style.minWidth = \"18px\"; }\n };\n\n NativeScrollbars.prototype.update = function (measure) {\n var needsH = measure.scrollWidth > measure.clientWidth + 1;\n var needsV = measure.scrollHeight > measure.clientHeight + 1;\n var sWidth = measure.nativeBarWidth;\n\n if (needsV) {\n this.vert.style.display = \"block\";\n this.vert.style.bottom = needsH ? sWidth + \"px\" : \"0\";\n var totalHeight = measure.viewHeight - (needsH ? sWidth : 0);\n // A bug in IE8 can cause this value to be negative, so guard it.\n this.vert.firstChild.style.height =\n Math.max(0, measure.scrollHeight - measure.clientHeight + totalHeight) + \"px\";\n } else {\n this.vert.style.display = \"\";\n this.vert.firstChild.style.height = \"0\";\n }\n\n if (needsH) {\n this.horiz.style.display = \"block\";\n this.horiz.style.right = needsV ? sWidth + \"px\" : \"0\";\n this.horiz.style.left = measure.barLeft + \"px\";\n var totalWidth = measure.viewWidth - measure.barLeft - (needsV ? sWidth : 0);\n this.horiz.firstChild.style.width =\n Math.max(0, measure.scrollWidth - measure.clientWidth + totalWidth) + \"px\";\n } else {\n this.horiz.style.display = \"\";\n this.horiz.firstChild.style.width = \"0\";\n }\n\n if (!this.checkedZeroWidth && measure.clientHeight > 0) {\n if (sWidth == 0) { this.zeroWidthHack(); }\n this.checkedZeroWidth = true;\n }\n\n return {right: needsV ? sWidth : 0, bottom: needsH ? sWidth : 0}\n };\n\n NativeScrollbars.prototype.setScrollLeft = function (pos) {\n if (this.horiz.scrollLeft != pos) { this.horiz.scrollLeft = pos; }\n if (this.disableHoriz) { this.enableZeroWidthBar(this.horiz, this.disableHoriz, \"horiz\"); }\n };\n\n NativeScrollbars.prototype.setScrollTop = function (pos) {\n if (this.vert.scrollTop != pos) { this.vert.scrollTop = pos; }\n if (this.disableVert) { this.enableZeroWidthBar(this.vert, this.disableVert, \"vert\"); }\n };\n\n NativeScrollbars.prototype.zeroWidthHack = function () {\n var w = mac && !mac_geMountainLion ? \"12px\" : \"18px\";\n this.horiz.style.height = this.vert.style.width = w;\n this.horiz.style.pointerEvents = this.vert.style.pointerEvents = \"none\";\n this.disableHoriz = new Delayed;\n this.disableVert = new Delayed;\n };\n\n NativeScrollbars.prototype.enableZeroWidthBar = function (bar, delay, type) {\n bar.style.pointerEvents = \"auto\";\n function maybeDisable() {\n // To find out whether the scrollbar is still visible, we\n // check whether the element under the pixel in the bottom\n // right corner of the scrollbar box is the scrollbar box\n // itself (when the bar is still visible) or its filler child\n // (when the bar is hidden). If it is still visible, we keep\n // it enabled, if it's hidden, we disable pointer events.\n var box = bar.getBoundingClientRect();\n var elt = type == \"vert\" ? document.elementFromPoint(box.right - 1, (box.top + box.bottom) / 2)\n : document.elementFromPoint((box.right + box.left) / 2, box.bottom - 1);\n if (elt != bar) { bar.style.pointerEvents = \"none\"; }\n else { delay.set(1000, maybeDisable); }\n }\n delay.set(1000, maybeDisable);\n };\n\n NativeScrollbars.prototype.clear = function () {\n var parent = this.horiz.parentNode;\n parent.removeChild(this.horiz);\n parent.removeChild(this.vert);\n };\n\n var NullScrollbars = function () {};\n\n NullScrollbars.prototype.update = function () { return {bottom: 0, right: 0} };\n NullScrollbars.prototype.setScrollLeft = function () {};\n NullScrollbars.prototype.setScrollTop = function () {};\n NullScrollbars.prototype.clear = function () {};\n\n function updateScrollbars(cm, measure) {\n if (!measure) { measure = measureForScrollbars(cm); }\n var startWidth = cm.display.barWidth, startHeight = cm.display.barHeight;\n updateScrollbarsInner(cm, measure);\n for (var i = 0; i < 4 && startWidth != cm.display.barWidth || startHeight != cm.display.barHeight; i++) {\n if (startWidth != cm.display.barWidth && cm.options.lineWrapping)\n { updateHeightsInViewport(cm); }\n updateScrollbarsInner(cm, measureForScrollbars(cm));\n startWidth = cm.display.barWidth; startHeight = cm.display.barHeight;\n }\n }\n\n // Re-synchronize the fake scrollbars with the actual size of the\n // content.\n function updateScrollbarsInner(cm, measure) {\n var d = cm.display;\n var sizes = d.scrollbars.update(measure);\n\n d.sizer.style.paddingRight = (d.barWidth = sizes.right) + \"px\";\n d.sizer.style.paddingBottom = (d.barHeight = sizes.bottom) + \"px\";\n d.heightForcer.style.borderBottom = sizes.bottom + \"px solid transparent\";\n\n if (sizes.right && sizes.bottom) {\n d.scrollbarFiller.style.display = \"block\";\n d.scrollbarFiller.style.height = sizes.bottom + \"px\";\n d.scrollbarFiller.style.width = sizes.right + \"px\";\n } else { d.scrollbarFiller.style.display = \"\"; }\n if (sizes.bottom && cm.options.coverGutterNextToScrollbar && cm.options.fixedGutter) {\n d.gutterFiller.style.display = \"block\";\n d.gutterFiller.style.height = sizes.bottom + \"px\";\n d.gutterFiller.style.width = measure.gutterWidth + \"px\";\n } else { d.gutterFiller.style.display = \"\"; }\n }\n\n var scrollbarModel = {\"native\": NativeScrollbars, \"null\": NullScrollbars};\n\n function initScrollbars(cm) {\n if (cm.display.scrollbars) {\n cm.display.scrollbars.clear();\n if (cm.display.scrollbars.addClass)\n { rmClass(cm.display.wrapper, cm.display.scrollbars.addClass); }\n }\n\n cm.display.scrollbars = new scrollbarModel[cm.options.scrollbarStyle](function (node) {\n cm.display.wrapper.insertBefore(node, cm.display.scrollbarFiller);\n // Prevent clicks in the scrollbars from killing focus\n on(node, \"mousedown\", function () {\n if (cm.state.focused) { setTimeout(function () { return cm.display.input.focus(); }, 0); }\n });\n node.setAttribute(\"cm-not-content\", \"true\");\n }, function (pos, axis) {\n if (axis == \"horizontal\") { setScrollLeft(cm, pos); }\n else { updateScrollTop(cm, pos); }\n }, cm);\n if (cm.display.scrollbars.addClass)\n { addClass(cm.display.wrapper, cm.display.scrollbars.addClass); }\n }\n\n // Operations are used to wrap a series of changes to the editor\n // state in such a way that each change won't have to update the\n // cursor and display (which would be awkward, slow, and\n // error-prone). Instead, display updates are batched and then all\n // combined and executed at once.\n\n var nextOpId = 0;\n // Start a new operation.\n function startOperation(cm) {\n cm.curOp = {\n cm: cm,\n viewChanged: false, // Flag that indicates that lines might need to be redrawn\n startHeight: cm.doc.height, // Used to detect need to update scrollbar\n forceUpdate: false, // Used to force a redraw\n updateInput: 0, // Whether to reset the input textarea\n typing: false, // Whether this reset should be careful to leave existing text (for compositing)\n changeObjs: null, // Accumulated changes, for firing change events\n cursorActivityHandlers: null, // Set of handlers to fire cursorActivity on\n cursorActivityCalled: 0, // Tracks which cursorActivity handlers have been called already\n selectionChanged: false, // Whether the selection needs to be redrawn\n updateMaxLine: false, // Set when the widest line needs to be determined anew\n scrollLeft: null, scrollTop: null, // Intermediate scroll position, not pushed to DOM yet\n scrollToPos: null, // Used to scroll to a specific position\n focus: false,\n id: ++nextOpId // Unique ID\n };\n pushOperation(cm.curOp);\n }\n\n // Finish an operation, updating the display and signalling delayed events\n function endOperation(cm) {\n var op = cm.curOp;\n if (op) { finishOperation(op, function (group) {\n for (var i = 0; i < group.ops.length; i++)\n { group.ops[i].cm.curOp = null; }\n endOperations(group);\n }); }\n }\n\n // The DOM updates done when an operation finishes are batched so\n // that the minimum number of relayouts are required.\n function endOperations(group) {\n var ops = group.ops;\n for (var i = 0; i < ops.length; i++) // Read DOM\n { endOperation_R1(ops[i]); }\n for (var i$1 = 0; i$1 < ops.length; i$1++) // Write DOM (maybe)\n { endOperation_W1(ops[i$1]); }\n for (var i$2 = 0; i$2 < ops.length; i$2++) // Read DOM\n { endOperation_R2(ops[i$2]); }\n for (var i$3 = 0; i$3 < ops.length; i$3++) // Write DOM (maybe)\n { endOperation_W2(ops[i$3]); }\n for (var i$4 = 0; i$4 < ops.length; i$4++) // Read DOM\n { endOperation_finish(ops[i$4]); }\n }\n\n function endOperation_R1(op) {\n var cm = op.cm, display = cm.display;\n maybeClipScrollbars(cm);\n if (op.updateMaxLine) { findMaxLine(cm); }\n\n op.mustUpdate = op.viewChanged || op.forceUpdate || op.scrollTop != null ||\n op.scrollToPos && (op.scrollToPos.from.line < display.viewFrom ||\n op.scrollToPos.to.line >= display.viewTo) ||\n display.maxLineChanged && cm.options.lineWrapping;\n op.update = op.mustUpdate &&\n new DisplayUpdate(cm, op.mustUpdate && {top: op.scrollTop, ensure: op.scrollToPos}, op.forceUpdate);\n }\n\n function endOperation_W1(op) {\n op.updatedDisplay = op.mustUpdate && updateDisplayIfNeeded(op.cm, op.update);\n }\n\n function endOperation_R2(op) {\n var cm = op.cm, display = cm.display;\n if (op.updatedDisplay) { updateHeightsInViewport(cm); }\n\n op.barMeasure = measureForScrollbars(cm);\n\n // If the max line changed since it was last measured, measure it,\n // and ensure the document's width matches it.\n // updateDisplay_W2 will use these properties to do the actual resizing\n if (display.maxLineChanged && !cm.options.lineWrapping) {\n op.adjustWidthTo = measureChar(cm, display.maxLine, display.maxLine.text.length).left + 3;\n cm.display.sizerWidth = op.adjustWidthTo;\n op.barMeasure.scrollWidth =\n Math.max(display.scroller.clientWidth, display.sizer.offsetLeft + op.adjustWidthTo + scrollGap(cm) + cm.display.barWidth);\n op.maxScrollLeft = Math.max(0, display.sizer.offsetLeft + op.adjustWidthTo - displayWidth(cm));\n }\n\n if (op.updatedDisplay || op.selectionChanged)\n { op.preparedSelection = display.input.prepareSelection(); }\n }\n\n function endOperation_W2(op) {\n var cm = op.cm;\n\n if (op.adjustWidthTo != null) {\n cm.display.sizer.style.minWidth = op.adjustWidthTo + \"px\";\n if (op.maxScrollLeft < cm.doc.scrollLeft)\n { setScrollLeft(cm, Math.min(cm.display.scroller.scrollLeft, op.maxScrollLeft), true); }\n cm.display.maxLineChanged = false;\n }\n\n var takeFocus = op.focus && op.focus == activeElt();\n if (op.preparedSelection)\n { cm.display.input.showSelection(op.preparedSelection, takeFocus); }\n if (op.updatedDisplay || op.startHeight != cm.doc.height)\n { updateScrollbars(cm, op.barMeasure); }\n if (op.updatedDisplay)\n { setDocumentHeight(cm, op.barMeasure); }\n\n if (op.selectionChanged) { restartBlink(cm); }\n\n if (cm.state.focused && op.updateInput)\n { cm.display.input.reset(op.typing); }\n if (takeFocus) { ensureFocus(op.cm); }\n }\n\n function endOperation_finish(op) {\n var cm = op.cm, display = cm.display, doc = cm.doc;\n\n if (op.updatedDisplay) { postUpdateDisplay(cm, op.update); }\n\n // Abort mouse wheel delta measurement, when scrolling explicitly\n if (display.wheelStartX != null && (op.scrollTop != null || op.scrollLeft != null || op.scrollToPos))\n { display.wheelStartX = display.wheelStartY = null; }\n\n // Propagate the scroll position to the actual DOM scroller\n if (op.scrollTop != null) { setScrollTop(cm, op.scrollTop, op.forceScroll); }\n\n if (op.scrollLeft != null) { setScrollLeft(cm, op.scrollLeft, true, true); }\n // If we need to scroll a specific position into view, do so.\n if (op.scrollToPos) {\n var rect = scrollPosIntoView(cm, clipPos(doc, op.scrollToPos.from),\n clipPos(doc, op.scrollToPos.to), op.scrollToPos.margin);\n maybeScrollWindow(cm, rect);\n }\n\n // Fire events for markers that are hidden/unidden by editing or\n // undoing\n var hidden = op.maybeHiddenMarkers, unhidden = op.maybeUnhiddenMarkers;\n if (hidden) { for (var i = 0; i < hidden.length; ++i)\n { if (!hidden[i].lines.length) { signal(hidden[i], \"hide\"); } } }\n if (unhidden) { for (var i$1 = 0; i$1 < unhidden.length; ++i$1)\n { if (unhidden[i$1].lines.length) { signal(unhidden[i$1], \"unhide\"); } } }\n\n if (display.wrapper.offsetHeight)\n { doc.scrollTop = cm.display.scroller.scrollTop; }\n\n // Fire change events, and delayed event handlers\n if (op.changeObjs)\n { signal(cm, \"changes\", cm, op.changeObjs); }\n if (op.update)\n { op.update.finish(); }\n }\n\n // Run the given function in an operation\n function runInOp(cm, f) {\n if (cm.curOp) { return f() }\n startOperation(cm);\n try { return f() }\n finally { endOperation(cm); }\n }\n // Wraps a function in an operation. Returns the wrapped function.\n function operation(cm, f) {\n return function() {\n if (cm.curOp) { return f.apply(cm, arguments) }\n startOperation(cm);\n try { return f.apply(cm, arguments) }\n finally { endOperation(cm); }\n }\n }\n // Used to add methods to editor and doc instances, wrapping them in\n // operations.\n function methodOp(f) {\n return function() {\n if (this.curOp) { return f.apply(this, arguments) }\n startOperation(this);\n try { return f.apply(this, arguments) }\n finally { endOperation(this); }\n }\n }\n function docMethodOp(f) {\n return function() {\n var cm = this.cm;\n if (!cm || cm.curOp) { return f.apply(this, arguments) }\n startOperation(cm);\n try { return f.apply(this, arguments) }\n finally { endOperation(cm); }\n }\n }\n\n // HIGHLIGHT WORKER\n\n function startWorker(cm, time) {\n if (cm.doc.highlightFrontier < cm.display.viewTo)\n { cm.state.highlight.set(time, bind(highlightWorker, cm)); }\n }\n\n function highlightWorker(cm) {\n var doc = cm.doc;\n if (doc.highlightFrontier >= cm.display.viewTo) { return }\n var end = +new Date + cm.options.workTime;\n var context = getContextBefore(cm, doc.highlightFrontier);\n var changedLines = [];\n\n doc.iter(context.line, Math.min(doc.first + doc.size, cm.display.viewTo + 500), function (line) {\n if (context.line >= cm.display.viewFrom) { // Visible\n var oldStyles = line.styles;\n var resetState = line.text.length > cm.options.maxHighlightLength ? copyState(doc.mode, context.state) : null;\n var highlighted = highlightLine(cm, line, context, true);\n if (resetState) { context.state = resetState; }\n line.styles = highlighted.styles;\n var oldCls = line.styleClasses, newCls = highlighted.classes;\n if (newCls) { line.styleClasses = newCls; }\n else if (oldCls) { line.styleClasses = null; }\n var ischange = !oldStyles || oldStyles.length != line.styles.length ||\n oldCls != newCls && (!oldCls || !newCls || oldCls.bgClass != newCls.bgClass || oldCls.textClass != newCls.textClass);\n for (var i = 0; !ischange && i < oldStyles.length; ++i) { ischange = oldStyles[i] != line.styles[i]; }\n if (ischange) { changedLines.push(context.line); }\n line.stateAfter = context.save();\n context.nextLine();\n } else {\n if (line.text.length <= cm.options.maxHighlightLength)\n { processLine(cm, line.text, context); }\n line.stateAfter = context.line % 5 == 0 ? context.save() : null;\n context.nextLine();\n }\n if (+new Date > end) {\n startWorker(cm, cm.options.workDelay);\n return true\n }\n });\n doc.highlightFrontier = context.line;\n doc.modeFrontier = Math.max(doc.modeFrontier, context.line);\n if (changedLines.length) { runInOp(cm, function () {\n for (var i = 0; i < changedLines.length; i++)\n { regLineChange(cm, changedLines[i], \"text\"); }\n }); }\n }\n\n // DISPLAY DRAWING\n\n var DisplayUpdate = function(cm, viewport, force) {\n var display = cm.display;\n\n this.viewport = viewport;\n // Store some values that we'll need later (but don't want to force a relayout for)\n this.visible = visibleLines(display, cm.doc, viewport);\n this.editorIsHidden = !display.wrapper.offsetWidth;\n this.wrapperHeight = display.wrapper.clientHeight;\n this.wrapperWidth = display.wrapper.clientWidth;\n this.oldDisplayWidth = displayWidth(cm);\n this.force = force;\n this.dims = getDimensions(cm);\n this.events = [];\n };\n\n DisplayUpdate.prototype.signal = function (emitter, type) {\n if (hasHandler(emitter, type))\n { this.events.push(arguments); }\n };\n DisplayUpdate.prototype.finish = function () {\n for (var i = 0; i < this.events.length; i++)\n { signal.apply(null, this.events[i]); }\n };\n\n function maybeClipScrollbars(cm) {\n var display = cm.display;\n if (!display.scrollbarsClipped && display.scroller.offsetWidth) {\n display.nativeBarWidth = display.scroller.offsetWidth - display.scroller.clientWidth;\n display.heightForcer.style.height = scrollGap(cm) + \"px\";\n display.sizer.style.marginBottom = -display.nativeBarWidth + \"px\";\n display.sizer.style.borderRightWidth = scrollGap(cm) + \"px\";\n display.scrollbarsClipped = true;\n }\n }\n\n function selectionSnapshot(cm) {\n if (cm.hasFocus()) { return null }\n var active = activeElt();\n if (!active || !contains(cm.display.lineDiv, active)) { return null }\n var result = {activeElt: active};\n if (window.getSelection) {\n var sel = window.getSelection();\n if (sel.anchorNode && sel.extend && contains(cm.display.lineDiv, sel.anchorNode)) {\n result.anchorNode = sel.anchorNode;\n result.anchorOffset = sel.anchorOffset;\n result.focusNode = sel.focusNode;\n result.focusOffset = sel.focusOffset;\n }\n }\n return result\n }\n\n function restoreSelection(snapshot) {\n if (!snapshot || !snapshot.activeElt || snapshot.activeElt == activeElt()) { return }\n snapshot.activeElt.focus();\n if (!/^(INPUT|TEXTAREA)$/.test(snapshot.activeElt.nodeName) &&\n snapshot.anchorNode && contains(document.body, snapshot.anchorNode) && contains(document.body, snapshot.focusNode)) {\n var sel = window.getSelection(), range = document.createRange();\n range.setEnd(snapshot.anchorNode, snapshot.anchorOffset);\n range.collapse(false);\n sel.removeAllRanges();\n sel.addRange(range);\n sel.extend(snapshot.focusNode, snapshot.focusOffset);\n }\n }\n\n // Does the actual updating of the line display. Bails out\n // (returning false) when there is nothing to be done and forced is\n // false.\n function updateDisplayIfNeeded(cm, update) {\n var display = cm.display, doc = cm.doc;\n\n if (update.editorIsHidden) {\n resetView(cm);\n return false\n }\n\n // Bail out if the visible area is already rendered and nothing changed.\n if (!update.force &&\n update.visible.from >= display.viewFrom && update.visible.to <= display.viewTo &&\n (display.updateLineNumbers == null || display.updateLineNumbers >= display.viewTo) &&\n display.renderedView == display.view && countDirtyView(cm) == 0)\n { return false }\n\n if (maybeUpdateLineNumberWidth(cm)) {\n resetView(cm);\n update.dims = getDimensions(cm);\n }\n\n // Compute a suitable new viewport (from & to)\n var end = doc.first + doc.size;\n var from = Math.max(update.visible.from - cm.options.viewportMargin, doc.first);\n var to = Math.min(end, update.visible.to + cm.options.viewportMargin);\n if (display.viewFrom < from && from - display.viewFrom < 20) { from = Math.max(doc.first, display.viewFrom); }\n if (display.viewTo > to && display.viewTo - to < 20) { to = Math.min(end, display.viewTo); }\n if (sawCollapsedSpans) {\n from = visualLineNo(cm.doc, from);\n to = visualLineEndNo(cm.doc, to);\n }\n\n var different = from != display.viewFrom || to != display.viewTo ||\n display.lastWrapHeight != update.wrapperHeight || display.lastWrapWidth != update.wrapperWidth;\n adjustView(cm, from, to);\n\n display.viewOffset = heightAtLine(getLine(cm.doc, display.viewFrom));\n // Position the mover div to align with the current scroll position\n cm.display.mover.style.top = display.viewOffset + \"px\";\n\n var toUpdate = countDirtyView(cm);\n if (!different && toUpdate == 0 && !update.force && display.renderedView == display.view &&\n (display.updateLineNumbers == null || display.updateLineNumbers >= display.viewTo))\n { return false }\n\n // For big changes, we hide the enclosing element during the\n // update, since that speeds up the operations on most browsers.\n var selSnapshot = selectionSnapshot(cm);\n if (toUpdate > 4) { display.lineDiv.style.display = \"none\"; }\n patchDisplay(cm, display.updateLineNumbers, update.dims);\n if (toUpdate > 4) { display.lineDiv.style.display = \"\"; }\n display.renderedView = display.view;\n // There might have been a widget with a focused element that got\n // hidden or updated, if so re-focus it.\n restoreSelection(selSnapshot);\n\n // Prevent selection and cursors from interfering with the scroll\n // width and height.\n removeChildren(display.cursorDiv);\n removeChildren(display.selectionDiv);\n display.gutters.style.height = display.sizer.style.minHeight = 0;\n\n if (different) {\n display.lastWrapHeight = update.wrapperHeight;\n display.lastWrapWidth = update.wrapperWidth;\n startWorker(cm, 400);\n }\n\n display.updateLineNumbers = null;\n\n return true\n }\n\n function postUpdateDisplay(cm, update) {\n var viewport = update.viewport;\n\n for (var first = true;; first = false) {\n if (!first || !cm.options.lineWrapping || update.oldDisplayWidth == displayWidth(cm)) {\n // Clip forced viewport to actual scrollable area.\n if (viewport && viewport.top != null)\n { viewport = {top: Math.min(cm.doc.height + paddingVert(cm.display) - displayHeight(cm), viewport.top)}; }\n // Updated line heights might result in the drawn area not\n // actually covering the viewport. Keep looping until it does.\n update.visible = visibleLines(cm.display, cm.doc, viewport);\n if (update.visible.from >= cm.display.viewFrom && update.visible.to <= cm.display.viewTo)\n { break }\n } else if (first) {\n update.visible = visibleLines(cm.display, cm.doc, viewport);\n }\n if (!updateDisplayIfNeeded(cm, update)) { break }\n updateHeightsInViewport(cm);\n var barMeasure = measureForScrollbars(cm);\n updateSelection(cm);\n updateScrollbars(cm, barMeasure);\n setDocumentHeight(cm, barMeasure);\n update.force = false;\n }\n\n update.signal(cm, \"update\", cm);\n if (cm.display.viewFrom != cm.display.reportedViewFrom || cm.display.viewTo != cm.display.reportedViewTo) {\n update.signal(cm, \"viewportChange\", cm, cm.display.viewFrom, cm.display.viewTo);\n cm.display.reportedViewFrom = cm.display.viewFrom; cm.display.reportedViewTo = cm.display.viewTo;\n }\n }\n\n function updateDisplaySimple(cm, viewport) {\n var update = new DisplayUpdate(cm, viewport);\n if (updateDisplayIfNeeded(cm, update)) {\n updateHeightsInViewport(cm);\n postUpdateDisplay(cm, update);\n var barMeasure = measureForScrollbars(cm);\n updateSelection(cm);\n updateScrollbars(cm, barMeasure);\n setDocumentHeight(cm, barMeasure);\n update.finish();\n }\n }\n\n // Sync the actual display DOM structure with display.view, removing\n // nodes for lines that are no longer in view, and creating the ones\n // that are not there yet, and updating the ones that are out of\n // date.\n function patchDisplay(cm, updateNumbersFrom, dims) {\n var display = cm.display, lineNumbers = cm.options.lineNumbers;\n var container = display.lineDiv, cur = container.firstChild;\n\n function rm(node) {\n var next = node.nextSibling;\n // Works around a throw-scroll bug in OS X Webkit\n if (webkit && mac && cm.display.currentWheelTarget == node)\n { node.style.display = \"none\"; }\n else\n { node.parentNode.removeChild(node); }\n return next\n }\n\n var view = display.view, lineN = display.viewFrom;\n // Loop over the elements in the view, syncing cur (the DOM nodes\n // in display.lineDiv) with the view as we go.\n for (var i = 0; i < view.length; i++) {\n var lineView = view[i];\n if (lineView.hidden) ; else if (!lineView.node || lineView.node.parentNode != container) { // Not drawn yet\n var node = buildLineElement(cm, lineView, lineN, dims);\n container.insertBefore(node, cur);\n } else { // Already drawn\n while (cur != lineView.node) { cur = rm(cur); }\n var updateNumber = lineNumbers && updateNumbersFrom != null &&\n updateNumbersFrom <= lineN && lineView.lineNumber;\n if (lineView.changes) {\n if (indexOf(lineView.changes, \"gutter\") > -1) { updateNumber = false; }\n updateLineForChanges(cm, lineView, lineN, dims);\n }\n if (updateNumber) {\n removeChildren(lineView.lineNumber);\n lineView.lineNumber.appendChild(document.createTextNode(lineNumberFor(cm.options, lineN)));\n }\n cur = lineView.node.nextSibling;\n }\n lineN += lineView.size;\n }\n while (cur) { cur = rm(cur); }\n }\n\n function updateGutterSpace(display) {\n var width = display.gutters.offsetWidth;\n display.sizer.style.marginLeft = width + \"px\";\n }\n\n function setDocumentHeight(cm, measure) {\n cm.display.sizer.style.minHeight = measure.docHeight + \"px\";\n cm.display.heightForcer.style.top = measure.docHeight + \"px\";\n cm.display.gutters.style.height = (measure.docHeight + cm.display.barHeight + scrollGap(cm)) + \"px\";\n }\n\n // Re-align line numbers and gutter marks to compensate for\n // horizontal scrolling.\n function alignHorizontally(cm) {\n var display = cm.display, view = display.view;\n if (!display.alignWidgets && (!display.gutters.firstChild || !cm.options.fixedGutter)) { return }\n var comp = compensateForHScroll(display) - display.scroller.scrollLeft + cm.doc.scrollLeft;\n var gutterW = display.gutters.offsetWidth, left = comp + \"px\";\n for (var i = 0; i < view.length; i++) { if (!view[i].hidden) {\n if (cm.options.fixedGutter) {\n if (view[i].gutter)\n { view[i].gutter.style.left = left; }\n if (view[i].gutterBackground)\n { view[i].gutterBackground.style.left = left; }\n }\n var align = view[i].alignable;\n if (align) { for (var j = 0; j < align.length; j++)\n { align[j].style.left = left; } }\n } }\n if (cm.options.fixedGutter)\n { display.gutters.style.left = (comp + gutterW) + \"px\"; }\n }\n\n // Used to ensure that the line number gutter is still the right\n // size for the current document size. Returns true when an update\n // is needed.\n function maybeUpdateLineNumberWidth(cm) {\n if (!cm.options.lineNumbers) { return false }\n var doc = cm.doc, last = lineNumberFor(cm.options, doc.first + doc.size - 1), display = cm.display;\n if (last.length != display.lineNumChars) {\n var test = display.measure.appendChild(elt(\"div\", [elt(\"div\", last)],\n \"CodeMirror-linenumber CodeMirror-gutter-elt\"));\n var innerW = test.firstChild.offsetWidth, padding = test.offsetWidth - innerW;\n display.lineGutter.style.width = \"\";\n display.lineNumInnerWidth = Math.max(innerW, display.lineGutter.offsetWidth - padding) + 1;\n display.lineNumWidth = display.lineNumInnerWidth + padding;\n display.lineNumChars = display.lineNumInnerWidth ? last.length : -1;\n display.lineGutter.style.width = display.lineNumWidth + \"px\";\n updateGutterSpace(cm.display);\n return true\n }\n return false\n }\n\n function getGutters(gutters, lineNumbers) {\n var result = [], sawLineNumbers = false;\n for (var i = 0; i < gutters.length; i++) {\n var name = gutters[i], style = null;\n if (typeof name != \"string\") { style = name.style; name = name.className; }\n if (name == \"CodeMirror-linenumbers\") {\n if (!lineNumbers) { continue }\n else { sawLineNumbers = true; }\n }\n result.push({className: name, style: style});\n }\n if (lineNumbers && !sawLineNumbers) { result.push({className: \"CodeMirror-linenumbers\", style: null}); }\n return result\n }\n\n // Rebuild the gutter elements, ensure the margin to the left of the\n // code matches their width.\n function renderGutters(display) {\n var gutters = display.gutters, specs = display.gutterSpecs;\n removeChildren(gutters);\n display.lineGutter = null;\n for (var i = 0; i < specs.length; ++i) {\n var ref = specs[i];\n var className = ref.className;\n var style = ref.style;\n var gElt = gutters.appendChild(elt(\"div\", null, \"CodeMirror-gutter \" + className));\n if (style) { gElt.style.cssText = style; }\n if (className == \"CodeMirror-linenumbers\") {\n display.lineGutter = gElt;\n gElt.style.width = (display.lineNumWidth || 1) + \"px\";\n }\n }\n gutters.style.display = specs.length ? \"\" : \"none\";\n updateGutterSpace(display);\n }\n\n function updateGutters(cm) {\n renderGutters(cm.display);\n regChange(cm);\n alignHorizontally(cm);\n }\n\n // The display handles the DOM integration, both for input reading\n // and content drawing. It holds references to DOM nodes and\n // display-related state.\n\n function Display(place, doc, input, options) {\n var d = this;\n this.input = input;\n\n // Covers bottom-right square when both scrollbars are present.\n d.scrollbarFiller = elt(\"div\", null, \"CodeMirror-scrollbar-filler\");\n d.scrollbarFiller.setAttribute(\"cm-not-content\", \"true\");\n // Covers bottom of gutter when coverGutterNextToScrollbar is on\n // and h scrollbar is present.\n d.gutterFiller = elt(\"div\", null, \"CodeMirror-gutter-filler\");\n d.gutterFiller.setAttribute(\"cm-not-content\", \"true\");\n // Will contain the actual code, positioned to cover the viewport.\n d.lineDiv = eltP(\"div\", null, \"CodeMirror-code\");\n // Elements are added to these to represent selection and cursors.\n d.selectionDiv = elt(\"div\", null, null, \"position: relative; z-index: 1\");\n d.cursorDiv = elt(\"div\", null, \"CodeMirror-cursors\");\n // A visibility: hidden element used to find the size of things.\n d.measure = elt(\"div\", null, \"CodeMirror-measure\");\n // When lines outside of the viewport are measured, they are drawn in this.\n d.lineMeasure = elt(\"div\", null, \"CodeMirror-measure\");\n // Wraps everything that needs to exist inside the vertically-padded coordinate system\n d.lineSpace = eltP(\"div\", [d.measure, d.lineMeasure, d.selectionDiv, d.cursorDiv, d.lineDiv],\n null, \"position: relative; outline: none\");\n var lines = eltP(\"div\", [d.lineSpace], \"CodeMirror-lines\");\n // Moved around its parent to cover visible view.\n d.mover = elt(\"div\", [lines], null, \"position: relative\");\n // Set to the height of the document, allowing scrolling.\n d.sizer = elt(\"div\", [d.mover], \"CodeMirror-sizer\");\n d.sizerWidth = null;\n // Behavior of elts with overflow: auto and padding is\n // inconsistent across browsers. This is used to ensure the\n // scrollable area is big enough.\n d.heightForcer = elt(\"div\", null, null, \"position: absolute; height: \" + scrollerGap + \"px; width: 1px;\");\n // Will contain the gutters, if any.\n d.gutters = elt(\"div\", null, \"CodeMirror-gutters\");\n d.lineGutter = null;\n // Actual scrollable element.\n d.scroller = elt(\"div\", [d.sizer, d.heightForcer, d.gutters], \"CodeMirror-scroll\");\n d.scroller.setAttribute(\"tabIndex\", \"-1\");\n // The element in which the editor lives.\n d.wrapper = elt(\"div\", [d.scrollbarFiller, d.gutterFiller, d.scroller], \"CodeMirror\");\n\n // Work around IE7 z-index bug (not perfect, hence IE7 not really being supported)\n if (ie && ie_version < 8) { d.gutters.style.zIndex = -1; d.scroller.style.paddingRight = 0; }\n if (!webkit && !(gecko && mobile)) { d.scroller.draggable = true; }\n\n if (place) {\n if (place.appendChild) { place.appendChild(d.wrapper); }\n else { place(d.wrapper); }\n }\n\n // Current rendered range (may be bigger than the view window).\n d.viewFrom = d.viewTo = doc.first;\n d.reportedViewFrom = d.reportedViewTo = doc.first;\n // Information about the rendered lines.\n d.view = [];\n d.renderedView = null;\n // Holds info about a single rendered line when it was rendered\n // for measurement, while not in view.\n d.externalMeasured = null;\n // Empty space (in pixels) above the view\n d.viewOffset = 0;\n d.lastWrapHeight = d.lastWrapWidth = 0;\n d.updateLineNumbers = null;\n\n d.nativeBarWidth = d.barHeight = d.barWidth = 0;\n d.scrollbarsClipped = false;\n\n // Used to only resize the line number gutter when necessary (when\n // the amount of lines crosses a boundary that makes its width change)\n d.lineNumWidth = d.lineNumInnerWidth = d.lineNumChars = null;\n // Set to true when a non-horizontal-scrolling line widget is\n // added. As an optimization, line widget aligning is skipped when\n // this is false.\n d.alignWidgets = false;\n\n d.cachedCharWidth = d.cachedTextHeight = d.cachedPaddingH = null;\n\n // Tracks the maximum line length so that the horizontal scrollbar\n // can be kept static when scrolling.\n d.maxLine = null;\n d.maxLineLength = 0;\n d.maxLineChanged = false;\n\n // Used for measuring wheel scrolling granularity\n d.wheelDX = d.wheelDY = d.wheelStartX = d.wheelStartY = null;\n\n // True when shift is held down.\n d.shift = false;\n\n // Used to track whether anything happened since the context menu\n // was opened.\n d.selForContextMenu = null;\n\n d.activeTouch = null;\n\n d.gutterSpecs = getGutters(options.gutters, options.lineNumbers);\n renderGutters(d);\n\n input.init(d);\n }\n\n // Since the delta values reported on mouse wheel events are\n // unstandardized between browsers and even browser versions, and\n // generally horribly unpredictable, this code starts by measuring\n // the scroll effect that the first few mouse wheel events have,\n // and, from that, detects the way it can convert deltas to pixel\n // offsets afterwards.\n //\n // The reason we want to know the amount a wheel event will scroll\n // is that it gives us a chance to update the display before the\n // actual scrolling happens, reducing flickering.\n\n var wheelSamples = 0, wheelPixelsPerUnit = null;\n // Fill in a browser-detected starting value on browsers where we\n // know one. These don't have to be accurate -- the result of them\n // being wrong would just be a slight flicker on the first wheel\n // scroll (if it is large enough).\n if (ie) { wheelPixelsPerUnit = -.53; }\n else if (gecko) { wheelPixelsPerUnit = 15; }\n else if (chrome) { wheelPixelsPerUnit = -.7; }\n else if (safari) { wheelPixelsPerUnit = -1/3; }\n\n function wheelEventDelta(e) {\n var dx = e.wheelDeltaX, dy = e.wheelDeltaY;\n if (dx == null && e.detail && e.axis == e.HORIZONTAL_AXIS) { dx = e.detail; }\n if (dy == null && e.detail && e.axis == e.VERTICAL_AXIS) { dy = e.detail; }\n else if (dy == null) { dy = e.wheelDelta; }\n return {x: dx, y: dy}\n }\n function wheelEventPixels(e) {\n var delta = wheelEventDelta(e);\n delta.x *= wheelPixelsPerUnit;\n delta.y *= wheelPixelsPerUnit;\n return delta\n }\n\n function onScrollWheel(cm, e) {\n var delta = wheelEventDelta(e), dx = delta.x, dy = delta.y;\n\n var display = cm.display, scroll = display.scroller;\n // Quit if there's nothing to scroll here\n var canScrollX = scroll.scrollWidth > scroll.clientWidth;\n var canScrollY = scroll.scrollHeight > scroll.clientHeight;\n if (!(dx && canScrollX || dy && canScrollY)) { return }\n\n // Webkit browsers on OS X abort momentum scrolls when the target\n // of the scroll event is removed from the scrollable element.\n // This hack (see related code in patchDisplay) makes sure the\n // element is kept around.\n if (dy && mac && webkit) {\n outer: for (var cur = e.target, view = display.view; cur != scroll; cur = cur.parentNode) {\n for (var i = 0; i < view.length; i++) {\n if (view[i].node == cur) {\n cm.display.currentWheelTarget = cur;\n break outer\n }\n }\n }\n }\n\n // On some browsers, horizontal scrolling will cause redraws to\n // happen before the gutter has been realigned, causing it to\n // wriggle around in a most unseemly way. When we have an\n // estimated pixels/delta value, we just handle horizontal\n // scrolling entirely here. It'll be slightly off from native, but\n // better than glitching out.\n if (dx && !gecko && !presto && wheelPixelsPerUnit != null) {\n if (dy && canScrollY)\n { updateScrollTop(cm, Math.max(0, scroll.scrollTop + dy * wheelPixelsPerUnit)); }\n setScrollLeft(cm, Math.max(0, scroll.scrollLeft + dx * wheelPixelsPerUnit));\n // Only prevent default scrolling if vertical scrolling is\n // actually possible. Otherwise, it causes vertical scroll\n // jitter on OSX trackpads when deltaX is small and deltaY\n // is large (issue #3579)\n if (!dy || (dy && canScrollY))\n { e_preventDefault(e); }\n display.wheelStartX = null; // Abort measurement, if in progress\n return\n }\n\n // 'Project' the visible viewport to cover the area that is being\n // scrolled into view (if we know enough to estimate it).\n if (dy && wheelPixelsPerUnit != null) {\n var pixels = dy * wheelPixelsPerUnit;\n var top = cm.doc.scrollTop, bot = top + display.wrapper.clientHeight;\n if (pixels < 0) { top = Math.max(0, top + pixels - 50); }\n else { bot = Math.min(cm.doc.height, bot + pixels + 50); }\n updateDisplaySimple(cm, {top: top, bottom: bot});\n }\n\n if (wheelSamples < 20) {\n if (display.wheelStartX == null) {\n display.wheelStartX = scroll.scrollLeft; display.wheelStartY = scroll.scrollTop;\n display.wheelDX = dx; display.wheelDY = dy;\n setTimeout(function () {\n if (display.wheelStartX == null) { return }\n var movedX = scroll.scrollLeft - display.wheelStartX;\n var movedY = scroll.scrollTop - display.wheelStartY;\n var sample = (movedY && display.wheelDY && movedY / display.wheelDY) ||\n (movedX && display.wheelDX && movedX / display.wheelDX);\n display.wheelStartX = display.wheelStartY = null;\n if (!sample) { return }\n wheelPixelsPerUnit = (wheelPixelsPerUnit * wheelSamples + sample) / (wheelSamples + 1);\n ++wheelSamples;\n }, 200);\n } else {\n display.wheelDX += dx; display.wheelDY += dy;\n }\n }\n }\n\n // Selection objects are immutable. A new one is created every time\n // the selection changes. A selection is one or more non-overlapping\n // (and non-touching) ranges, sorted, and an integer that indicates\n // which one is the primary selection (the one that's scrolled into\n // view, that getCursor returns, etc).\n var Selection = function(ranges, primIndex) {\n this.ranges = ranges;\n this.primIndex = primIndex;\n };\n\n Selection.prototype.primary = function () { return this.ranges[this.primIndex] };\n\n Selection.prototype.equals = function (other) {\n if (other == this) { return true }\n if (other.primIndex != this.primIndex || other.ranges.length != this.ranges.length) { return false }\n for (var i = 0; i < this.ranges.length; i++) {\n var here = this.ranges[i], there = other.ranges[i];\n if (!equalCursorPos(here.anchor, there.anchor) || !equalCursorPos(here.head, there.head)) { return false }\n }\n return true\n };\n\n Selection.prototype.deepCopy = function () {\n var out = [];\n for (var i = 0; i < this.ranges.length; i++)\n { out[i] = new Range(copyPos(this.ranges[i].anchor), copyPos(this.ranges[i].head)); }\n return new Selection(out, this.primIndex)\n };\n\n Selection.prototype.somethingSelected = function () {\n for (var i = 0; i < this.ranges.length; i++)\n { if (!this.ranges[i].empty()) { return true } }\n return false\n };\n\n Selection.prototype.contains = function (pos, end) {\n if (!end) { end = pos; }\n for (var i = 0; i < this.ranges.length; i++) {\n var range = this.ranges[i];\n if (cmp(end, range.from()) >= 0 && cmp(pos, range.to()) <= 0)\n { return i }\n }\n return -1\n };\n\n var Range = function(anchor, head) {\n this.anchor = anchor; this.head = head;\n };\n\n Range.prototype.from = function () { return minPos(this.anchor, this.head) };\n Range.prototype.to = function () { return maxPos(this.anchor, this.head) };\n Range.prototype.empty = function () { return this.head.line == this.anchor.line && this.head.ch == this.anchor.ch };\n\n // Take an unsorted, potentially overlapping set of ranges, and\n // build a selection out of it. 'Consumes' ranges array (modifying\n // it).\n function normalizeSelection(cm, ranges, primIndex) {\n var mayTouch = cm && cm.options.selectionsMayTouch;\n var prim = ranges[primIndex];\n ranges.sort(function (a, b) { return cmp(a.from(), b.from()); });\n primIndex = indexOf(ranges, prim);\n for (var i = 1; i < ranges.length; i++) {\n var cur = ranges[i], prev = ranges[i - 1];\n var diff = cmp(prev.to(), cur.from());\n if (mayTouch && !cur.empty() ? diff > 0 : diff >= 0) {\n var from = minPos(prev.from(), cur.from()), to = maxPos(prev.to(), cur.to());\n var inv = prev.empty() ? cur.from() == cur.head : prev.from() == prev.head;\n if (i <= primIndex) { --primIndex; }\n ranges.splice(--i, 2, new Range(inv ? to : from, inv ? from : to));\n }\n }\n return new Selection(ranges, primIndex)\n }\n\n function simpleSelection(anchor, head) {\n return new Selection([new Range(anchor, head || anchor)], 0)\n }\n\n // Compute the position of the end of a change (its 'to' property\n // refers to the pre-change end).\n function changeEnd(change) {\n if (!change.text) { return change.to }\n return Pos(change.from.line + change.text.length - 1,\n lst(change.text).length + (change.text.length == 1 ? change.from.ch : 0))\n }\n\n // Adjust a position to refer to the post-change position of the\n // same text, or the end of the change if the change covers it.\n function adjustForChange(pos, change) {\n if (cmp(pos, change.from) < 0) { return pos }\n if (cmp(pos, change.to) <= 0) { return changeEnd(change) }\n\n var line = pos.line + change.text.length - (change.to.line - change.from.line) - 1, ch = pos.ch;\n if (pos.line == change.to.line) { ch += changeEnd(change).ch - change.to.ch; }\n return Pos(line, ch)\n }\n\n function computeSelAfterChange(doc, change) {\n var out = [];\n for (var i = 0; i < doc.sel.ranges.length; i++) {\n var range = doc.sel.ranges[i];\n out.push(new Range(adjustForChange(range.anchor, change),\n adjustForChange(range.head, change)));\n }\n return normalizeSelection(doc.cm, out, doc.sel.primIndex)\n }\n\n function offsetPos(pos, old, nw) {\n if (pos.line == old.line)\n { return Pos(nw.line, pos.ch - old.ch + nw.ch) }\n else\n { return Pos(nw.line + (pos.line - old.line), pos.ch) }\n }\n\n // Used by replaceSelections to allow moving the selection to the\n // start or around the replaced test. Hint may be \"start\" or \"around\".\n function computeReplacedSel(doc, changes, hint) {\n var out = [];\n var oldPrev = Pos(doc.first, 0), newPrev = oldPrev;\n for (var i = 0; i < changes.length; i++) {\n var change = changes[i];\n var from = offsetPos(change.from, oldPrev, newPrev);\n var to = offsetPos(changeEnd(change), oldPrev, newPrev);\n oldPrev = change.to;\n newPrev = to;\n if (hint == \"around\") {\n var range = doc.sel.ranges[i], inv = cmp(range.head, range.anchor) < 0;\n out[i] = new Range(inv ? to : from, inv ? from : to);\n } else {\n out[i] = new Range(from, from);\n }\n }\n return new Selection(out, doc.sel.primIndex)\n }\n\n // Used to get the editor into a consistent state again when options change.\n\n function loadMode(cm) {\n cm.doc.mode = getMode(cm.options, cm.doc.modeOption);\n resetModeState(cm);\n }\n\n function resetModeState(cm) {\n cm.doc.iter(function (line) {\n if (line.stateAfter) { line.stateAfter = null; }\n if (line.styles) { line.styles = null; }\n });\n cm.doc.modeFrontier = cm.doc.highlightFrontier = cm.doc.first;\n startWorker(cm, 100);\n cm.state.modeGen++;\n if (cm.curOp) { regChange(cm); }\n }\n\n // DOCUMENT DATA STRUCTURE\n\n // By default, updates that start and end at the beginning of a line\n // are treated specially, in order to make the association of line\n // widgets and marker elements with the text behave more intuitive.\n function isWholeLineUpdate(doc, change) {\n return change.from.ch == 0 && change.to.ch == 0 && lst(change.text) == \"\" &&\n (!doc.cm || doc.cm.options.wholeLineUpdateBefore)\n }\n\n // Perform a change on the document data structure.\n function updateDoc(doc, change, markedSpans, estimateHeight) {\n function spansFor(n) {return markedSpans ? markedSpans[n] : null}\n function update(line, text, spans) {\n updateLine(line, text, spans, estimateHeight);\n signalLater(line, \"change\", line, change);\n }\n function linesFor(start, end) {\n var result = [];\n for (var i = start; i < end; ++i)\n { result.push(new Line(text[i], spansFor(i), estimateHeight)); }\n return result\n }\n\n var from = change.from, to = change.to, text = change.text;\n var firstLine = getLine(doc, from.line), lastLine = getLine(doc, to.line);\n var lastText = lst(text), lastSpans = spansFor(text.length - 1), nlines = to.line - from.line;\n\n // Adjust the line structure\n if (change.full) {\n doc.insert(0, linesFor(0, text.length));\n doc.remove(text.length, doc.size - text.length);\n } else if (isWholeLineUpdate(doc, change)) {\n // This is a whole-line replace. Treated specially to make\n // sure line objects move the way they are supposed to.\n var added = linesFor(0, text.length - 1);\n update(lastLine, lastLine.text, lastSpans);\n if (nlines) { doc.remove(from.line, nlines); }\n if (added.length) { doc.insert(from.line, added); }\n } else if (firstLine == lastLine) {\n if (text.length == 1) {\n update(firstLine, firstLine.text.slice(0, from.ch) + lastText + firstLine.text.slice(to.ch), lastSpans);\n } else {\n var added$1 = linesFor(1, text.length - 1);\n added$1.push(new Line(lastText + firstLine.text.slice(to.ch), lastSpans, estimateHeight));\n update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0));\n doc.insert(from.line + 1, added$1);\n }\n } else if (text.length == 1) {\n update(firstLine, firstLine.text.slice(0, from.ch) + text[0] + lastLine.text.slice(to.ch), spansFor(0));\n doc.remove(from.line + 1, nlines);\n } else {\n update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0));\n update(lastLine, lastText + lastLine.text.slice(to.ch), lastSpans);\n var added$2 = linesFor(1, text.length - 1);\n if (nlines > 1) { doc.remove(from.line + 1, nlines - 1); }\n doc.insert(from.line + 1, added$2);\n }\n\n signalLater(doc, \"change\", doc, change);\n }\n\n // Call f for all linked documents.\n function linkedDocs(doc, f, sharedHistOnly) {\n function propagate(doc, skip, sharedHist) {\n if (doc.linked) { for (var i = 0; i < doc.linked.length; ++i) {\n var rel = doc.linked[i];\n if (rel.doc == skip) { continue }\n var shared = sharedHist && rel.sharedHist;\n if (sharedHistOnly && !shared) { continue }\n f(rel.doc, shared);\n propagate(rel.doc, doc, shared);\n } }\n }\n propagate(doc, null, true);\n }\n\n // Attach a document to an editor.\n function attachDoc(cm, doc) {\n if (doc.cm) { throw new Error(\"This document is already in use.\") }\n cm.doc = doc;\n doc.cm = cm;\n estimateLineHeights(cm);\n loadMode(cm);\n setDirectionClass(cm);\n if (!cm.options.lineWrapping) { findMaxLine(cm); }\n cm.options.mode = doc.modeOption;\n regChange(cm);\n }\n\n function setDirectionClass(cm) {\n (cm.doc.direction == \"rtl\" ? addClass : rmClass)(cm.display.lineDiv, \"CodeMirror-rtl\");\n }\n\n function directionChanged(cm) {\n runInOp(cm, function () {\n setDirectionClass(cm);\n regChange(cm);\n });\n }\n\n function History(startGen) {\n // Arrays of change events and selections. Doing something adds an\n // event to done and clears undo. Undoing moves events from done\n // to undone, redoing moves them in the other direction.\n this.done = []; this.undone = [];\n this.undoDepth = Infinity;\n // Used to track when changes can be merged into a single undo\n // event\n this.lastModTime = this.lastSelTime = 0;\n this.lastOp = this.lastSelOp = null;\n this.lastOrigin = this.lastSelOrigin = null;\n // Used by the isClean() method\n this.generation = this.maxGeneration = startGen || 1;\n }\n\n // Create a history change event from an updateDoc-style change\n // object.\n function historyChangeFromChange(doc, change) {\n var histChange = {from: copyPos(change.from), to: changeEnd(change), text: getBetween(doc, change.from, change.to)};\n attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1);\n linkedDocs(doc, function (doc) { return attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1); }, true);\n return histChange\n }\n\n // Pop all selection events off the end of a history array. Stop at\n // a change event.\n function clearSelectionEvents(array) {\n while (array.length) {\n var last = lst(array);\n if (last.ranges) { array.pop(); }\n else { break }\n }\n }\n\n // Find the top change event in the history. Pop off selection\n // events that are in the way.\n function lastChangeEvent(hist, force) {\n if (force) {\n clearSelectionEvents(hist.done);\n return lst(hist.done)\n } else if (hist.done.length && !lst(hist.done).ranges) {\n return lst(hist.done)\n } else if (hist.done.length > 1 && !hist.done[hist.done.length - 2].ranges) {\n hist.done.pop();\n return lst(hist.done)\n }\n }\n\n // Register a change in the history. Merges changes that are within\n // a single operation, or are close together with an origin that\n // allows merging (starting with \"+\") into a single event.\n function addChangeToHistory(doc, change, selAfter, opId) {\n var hist = doc.history;\n hist.undone.length = 0;\n var time = +new Date, cur;\n var last;\n\n if ((hist.lastOp == opId ||\n hist.lastOrigin == change.origin && change.origin &&\n ((change.origin.charAt(0) == \"+\" && hist.lastModTime > time - (doc.cm ? doc.cm.options.historyEventDelay : 500)) ||\n change.origin.charAt(0) == \"*\")) &&\n (cur = lastChangeEvent(hist, hist.lastOp == opId))) {\n // Merge this change into the last event\n last = lst(cur.changes);\n if (cmp(change.from, change.to) == 0 && cmp(change.from, last.to) == 0) {\n // Optimized case for simple insertion -- don't want to add\n // new changesets for every character typed\n last.to = changeEnd(change);\n } else {\n // Add new sub-event\n cur.changes.push(historyChangeFromChange(doc, change));\n }\n } else {\n // Can not be merged, start a new event.\n var before = lst(hist.done);\n if (!before || !before.ranges)\n { pushSelectionToHistory(doc.sel, hist.done); }\n cur = {changes: [historyChangeFromChange(doc, change)],\n generation: hist.generation};\n hist.done.push(cur);\n while (hist.done.length > hist.undoDepth) {\n hist.done.shift();\n if (!hist.done[0].ranges) { hist.done.shift(); }\n }\n }\n hist.done.push(selAfter);\n hist.generation = ++hist.maxGeneration;\n hist.lastModTime = hist.lastSelTime = time;\n hist.lastOp = hist.lastSelOp = opId;\n hist.lastOrigin = hist.lastSelOrigin = change.origin;\n\n if (!last) { signal(doc, \"historyAdded\"); }\n }\n\n function selectionEventCanBeMerged(doc, origin, prev, sel) {\n var ch = origin.charAt(0);\n return ch == \"*\" ||\n ch == \"+\" &&\n prev.ranges.length == sel.ranges.length &&\n prev.somethingSelected() == sel.somethingSelected() &&\n new Date - doc.history.lastSelTime <= (doc.cm ? doc.cm.options.historyEventDelay : 500)\n }\n\n // Called whenever the selection changes, sets the new selection as\n // the pending selection in the history, and pushes the old pending\n // selection into the 'done' array when it was significantly\n // different (in number of selected ranges, emptiness, or time).\n function addSelectionToHistory(doc, sel, opId, options) {\n var hist = doc.history, origin = options && options.origin;\n\n // A new event is started when the previous origin does not match\n // the current, or the origins don't allow matching. Origins\n // starting with * are always merged, those starting with + are\n // merged when similar and close together in time.\n if (opId == hist.lastSelOp ||\n (origin && hist.lastSelOrigin == origin &&\n (hist.lastModTime == hist.lastSelTime && hist.lastOrigin == origin ||\n selectionEventCanBeMerged(doc, origin, lst(hist.done), sel))))\n { hist.done[hist.done.length - 1] = sel; }\n else\n { pushSelectionToHistory(sel, hist.done); }\n\n hist.lastSelTime = +new Date;\n hist.lastSelOrigin = origin;\n hist.lastSelOp = opId;\n if (options && options.clearRedo !== false)\n { clearSelectionEvents(hist.undone); }\n }\n\n function pushSelectionToHistory(sel, dest) {\n var top = lst(dest);\n if (!(top && top.ranges && top.equals(sel)))\n { dest.push(sel); }\n }\n\n // Used to store marked span information in the history.\n function attachLocalSpans(doc, change, from, to) {\n var existing = change[\"spans_\" + doc.id], n = 0;\n doc.iter(Math.max(doc.first, from), Math.min(doc.first + doc.size, to), function (line) {\n if (line.markedSpans)\n { (existing || (existing = change[\"spans_\" + doc.id] = {}))[n] = line.markedSpans; }\n ++n;\n });\n }\n\n // When un/re-doing restores text containing marked spans, those\n // that have been explicitly cleared should not be restored.\n function removeClearedSpans(spans) {\n if (!spans) { return null }\n var out;\n for (var i = 0; i < spans.length; ++i) {\n if (spans[i].marker.explicitlyCleared) { if (!out) { out = spans.slice(0, i); } }\n else if (out) { out.push(spans[i]); }\n }\n return !out ? spans : out.length ? out : null\n }\n\n // Retrieve and filter the old marked spans stored in a change event.\n function getOldSpans(doc, change) {\n var found = change[\"spans_\" + doc.id];\n if (!found) { return null }\n var nw = [];\n for (var i = 0; i < change.text.length; ++i)\n { nw.push(removeClearedSpans(found[i])); }\n return nw\n }\n\n // Used for un/re-doing changes from the history. Combines the\n // result of computing the existing spans with the set of spans that\n // existed in the history (so that deleting around a span and then\n // undoing brings back the span).\n function mergeOldSpans(doc, change) {\n var old = getOldSpans(doc, change);\n var stretched = stretchSpansOverChange(doc, change);\n if (!old) { return stretched }\n if (!stretched) { return old }\n\n for (var i = 0; i < old.length; ++i) {\n var oldCur = old[i], stretchCur = stretched[i];\n if (oldCur && stretchCur) {\n spans: for (var j = 0; j < stretchCur.length; ++j) {\n var span = stretchCur[j];\n for (var k = 0; k < oldCur.length; ++k)\n { if (oldCur[k].marker == span.marker) { continue spans } }\n oldCur.push(span);\n }\n } else if (stretchCur) {\n old[i] = stretchCur;\n }\n }\n return old\n }\n\n // Used both to provide a JSON-safe object in .getHistory, and, when\n // detaching a document, to split the history in two\n function copyHistoryArray(events, newGroup, instantiateSel) {\n var copy = [];\n for (var i = 0; i < events.length; ++i) {\n var event = events[i];\n if (event.ranges) {\n copy.push(instantiateSel ? Selection.prototype.deepCopy.call(event) : event);\n continue\n }\n var changes = event.changes, newChanges = [];\n copy.push({changes: newChanges});\n for (var j = 0; j < changes.length; ++j) {\n var change = changes[j], m = (void 0);\n newChanges.push({from: change.from, to: change.to, text: change.text});\n if (newGroup) { for (var prop in change) { if (m = prop.match(/^spans_(\\d+)$/)) {\n if (indexOf(newGroup, Number(m[1])) > -1) {\n lst(newChanges)[prop] = change[prop];\n delete change[prop];\n }\n } } }\n }\n }\n return copy\n }\n\n // The 'scroll' parameter given to many of these indicated whether\n // the new cursor position should be scrolled into view after\n // modifying the selection.\n\n // If shift is held or the extend flag is set, extends a range to\n // include a given position (and optionally a second position).\n // Otherwise, simply returns the range between the given positions.\n // Used for cursor motion and such.\n function extendRange(range, head, other, extend) {\n if (extend) {\n var anchor = range.anchor;\n if (other) {\n var posBefore = cmp(head, anchor) < 0;\n if (posBefore != (cmp(other, anchor) < 0)) {\n anchor = head;\n head = other;\n } else if (posBefore != (cmp(head, other) < 0)) {\n head = other;\n }\n }\n return new Range(anchor, head)\n } else {\n return new Range(other || head, head)\n }\n }\n\n // Extend the primary selection range, discard the rest.\n function extendSelection(doc, head, other, options, extend) {\n if (extend == null) { extend = doc.cm && (doc.cm.display.shift || doc.extend); }\n setSelection(doc, new Selection([extendRange(doc.sel.primary(), head, other, extend)], 0), options);\n }\n\n // Extend all selections (pos is an array of selections with length\n // equal the number of selections)\n function extendSelections(doc, heads, options) {\n var out = [];\n var extend = doc.cm && (doc.cm.display.shift || doc.extend);\n for (var i = 0; i < doc.sel.ranges.length; i++)\n { out[i] = extendRange(doc.sel.ranges[i], heads[i], null, extend); }\n var newSel = normalizeSelection(doc.cm, out, doc.sel.primIndex);\n setSelection(doc, newSel, options);\n }\n\n // Updates a single range in the selection.\n function replaceOneSelection(doc, i, range, options) {\n var ranges = doc.sel.ranges.slice(0);\n ranges[i] = range;\n setSelection(doc, normalizeSelection(doc.cm, ranges, doc.sel.primIndex), options);\n }\n\n // Reset the selection to a single range.\n function setSimpleSelection(doc, anchor, head, options) {\n setSelection(doc, simpleSelection(anchor, head), options);\n }\n\n // Give beforeSelectionChange handlers a change to influence a\n // selection update.\n function filterSelectionChange(doc, sel, options) {\n var obj = {\n ranges: sel.ranges,\n update: function(ranges) {\n this.ranges = [];\n for (var i = 0; i < ranges.length; i++)\n { this.ranges[i] = new Range(clipPos(doc, ranges[i].anchor),\n clipPos(doc, ranges[i].head)); }\n },\n origin: options && options.origin\n };\n signal(doc, \"beforeSelectionChange\", doc, obj);\n if (doc.cm) { signal(doc.cm, \"beforeSelectionChange\", doc.cm, obj); }\n if (obj.ranges != sel.ranges) { return normalizeSelection(doc.cm, obj.ranges, obj.ranges.length - 1) }\n else { return sel }\n }\n\n function setSelectionReplaceHistory(doc, sel, options) {\n var done = doc.history.done, last = lst(done);\n if (last && last.ranges) {\n done[done.length - 1] = sel;\n setSelectionNoUndo(doc, sel, options);\n } else {\n setSelection(doc, sel, options);\n }\n }\n\n // Set a new selection.\n function setSelection(doc, sel, options) {\n setSelectionNoUndo(doc, sel, options);\n addSelectionToHistory(doc, doc.sel, doc.cm ? doc.cm.curOp.id : NaN, options);\n }\n\n function setSelectionNoUndo(doc, sel, options) {\n if (hasHandler(doc, \"beforeSelectionChange\") || doc.cm && hasHandler(doc.cm, \"beforeSelectionChange\"))\n { sel = filterSelectionChange(doc, sel, options); }\n\n var bias = options && options.bias ||\n (cmp(sel.primary().head, doc.sel.primary().head) < 0 ? -1 : 1);\n setSelectionInner(doc, skipAtomicInSelection(doc, sel, bias, true));\n\n if (!(options && options.scroll === false) && doc.cm)\n { ensureCursorVisible(doc.cm); }\n }\n\n function setSelectionInner(doc, sel) {\n if (sel.equals(doc.sel)) { return }\n\n doc.sel = sel;\n\n if (doc.cm) {\n doc.cm.curOp.updateInput = 1;\n doc.cm.curOp.selectionChanged = true;\n signalCursorActivity(doc.cm);\n }\n signalLater(doc, \"cursorActivity\", doc);\n }\n\n // Verify that the selection does not partially select any atomic\n // marked ranges.\n function reCheckSelection(doc) {\n setSelectionInner(doc, skipAtomicInSelection(doc, doc.sel, null, false));\n }\n\n // Return a selection that does not partially select any atomic\n // ranges.\n function skipAtomicInSelection(doc, sel, bias, mayClear) {\n var out;\n for (var i = 0; i < sel.ranges.length; i++) {\n var range = sel.ranges[i];\n var old = sel.ranges.length == doc.sel.ranges.length && doc.sel.ranges[i];\n var newAnchor = skipAtomic(doc, range.anchor, old && old.anchor, bias, mayClear);\n var newHead = skipAtomic(doc, range.head, old && old.head, bias, mayClear);\n if (out || newAnchor != range.anchor || newHead != range.head) {\n if (!out) { out = sel.ranges.slice(0, i); }\n out[i] = new Range(newAnchor, newHead);\n }\n }\n return out ? normalizeSelection(doc.cm, out, sel.primIndex) : sel\n }\n\n function skipAtomicInner(doc, pos, oldPos, dir, mayClear) {\n var line = getLine(doc, pos.line);\n if (line.markedSpans) { for (var i = 0; i < line.markedSpans.length; ++i) {\n var sp = line.markedSpans[i], m = sp.marker;\n\n // Determine if we should prevent the cursor being placed to the left/right of an atomic marker\n // Historically this was determined using the inclusiveLeft/Right option, but the new way to control it\n // is with selectLeft/Right\n var preventCursorLeft = (\"selectLeft\" in m) ? !m.selectLeft : m.inclusiveLeft;\n var preventCursorRight = (\"selectRight\" in m) ? !m.selectRight : m.inclusiveRight;\n\n if ((sp.from == null || (preventCursorLeft ? sp.from <= pos.ch : sp.from < pos.ch)) &&\n (sp.to == null || (preventCursorRight ? sp.to >= pos.ch : sp.to > pos.ch))) {\n if (mayClear) {\n signal(m, \"beforeCursorEnter\");\n if (m.explicitlyCleared) {\n if (!line.markedSpans) { break }\n else {--i; continue}\n }\n }\n if (!m.atomic) { continue }\n\n if (oldPos) {\n var near = m.find(dir < 0 ? 1 : -1), diff = (void 0);\n if (dir < 0 ? preventCursorRight : preventCursorLeft)\n { near = movePos(doc, near, -dir, near && near.line == pos.line ? line : null); }\n if (near && near.line == pos.line && (diff = cmp(near, oldPos)) && (dir < 0 ? diff < 0 : diff > 0))\n { return skipAtomicInner(doc, near, pos, dir, mayClear) }\n }\n\n var far = m.find(dir < 0 ? -1 : 1);\n if (dir < 0 ? preventCursorLeft : preventCursorRight)\n { far = movePos(doc, far, dir, far.line == pos.line ? line : null); }\n return far ? skipAtomicInner(doc, far, pos, dir, mayClear) : null\n }\n } }\n return pos\n }\n\n // Ensure a given position is not inside an atomic range.\n function skipAtomic(doc, pos, oldPos, bias, mayClear) {\n var dir = bias || 1;\n var found = skipAtomicInner(doc, pos, oldPos, dir, mayClear) ||\n (!mayClear && skipAtomicInner(doc, pos, oldPos, dir, true)) ||\n skipAtomicInner(doc, pos, oldPos, -dir, mayClear) ||\n (!mayClear && skipAtomicInner(doc, pos, oldPos, -dir, true));\n if (!found) {\n doc.cantEdit = true;\n return Pos(doc.first, 0)\n }\n return found\n }\n\n function movePos(doc, pos, dir, line) {\n if (dir < 0 && pos.ch == 0) {\n if (pos.line > doc.first) { return clipPos(doc, Pos(pos.line - 1)) }\n else { return null }\n } else if (dir > 0 && pos.ch == (line || getLine(doc, pos.line)).text.length) {\n if (pos.line < doc.first + doc.size - 1) { return Pos(pos.line + 1, 0) }\n else { return null }\n } else {\n return new Pos(pos.line, pos.ch + dir)\n }\n }\n\n function selectAll(cm) {\n cm.setSelection(Pos(cm.firstLine(), 0), Pos(cm.lastLine()), sel_dontScroll);\n }\n\n // UPDATING\n\n // Allow \"beforeChange\" event handlers to influence a change\n function filterChange(doc, change, update) {\n var obj = {\n canceled: false,\n from: change.from,\n to: change.to,\n text: change.text,\n origin: change.origin,\n cancel: function () { return obj.canceled = true; }\n };\n if (update) { obj.update = function (from, to, text, origin) {\n if (from) { obj.from = clipPos(doc, from); }\n if (to) { obj.to = clipPos(doc, to); }\n if (text) { obj.text = text; }\n if (origin !== undefined) { obj.origin = origin; }\n }; }\n signal(doc, \"beforeChange\", doc, obj);\n if (doc.cm) { signal(doc.cm, \"beforeChange\", doc.cm, obj); }\n\n if (obj.canceled) {\n if (doc.cm) { doc.cm.curOp.updateInput = 2; }\n return null\n }\n return {from: obj.from, to: obj.to, text: obj.text, origin: obj.origin}\n }\n\n // Apply a change to a document, and add it to the document's\n // history, and propagating it to all linked documents.\n function makeChange(doc, change, ignoreReadOnly) {\n if (doc.cm) {\n if (!doc.cm.curOp) { return operation(doc.cm, makeChange)(doc, change, ignoreReadOnly) }\n if (doc.cm.state.suppressEdits) { return }\n }\n\n if (hasHandler(doc, \"beforeChange\") || doc.cm && hasHandler(doc.cm, \"beforeChange\")) {\n change = filterChange(doc, change, true);\n if (!change) { return }\n }\n\n // Possibly split or suppress the update based on the presence\n // of read-only spans in its range.\n var split = sawReadOnlySpans && !ignoreReadOnly && removeReadOnlyRanges(doc, change.from, change.to);\n if (split) {\n for (var i = split.length - 1; i >= 0; --i)\n { makeChangeInner(doc, {from: split[i].from, to: split[i].to, text: i ? [\"\"] : change.text, origin: change.origin}); }\n } else {\n makeChangeInner(doc, change);\n }\n }\n\n function makeChangeInner(doc, change) {\n if (change.text.length == 1 && change.text[0] == \"\" && cmp(change.from, change.to) == 0) { return }\n var selAfter = computeSelAfterChange(doc, change);\n addChangeToHistory(doc, change, selAfter, doc.cm ? doc.cm.curOp.id : NaN);\n\n makeChangeSingleDoc(doc, change, selAfter, stretchSpansOverChange(doc, change));\n var rebased = [];\n\n linkedDocs(doc, function (doc, sharedHist) {\n if (!sharedHist && indexOf(rebased, doc.history) == -1) {\n rebaseHist(doc.history, change);\n rebased.push(doc.history);\n }\n makeChangeSingleDoc(doc, change, null, stretchSpansOverChange(doc, change));\n });\n }\n\n // Revert a change stored in a document's history.\n function makeChangeFromHistory(doc, type, allowSelectionOnly) {\n var suppress = doc.cm && doc.cm.state.suppressEdits;\n if (suppress && !allowSelectionOnly) { return }\n\n var hist = doc.history, event, selAfter = doc.sel;\n var source = type == \"undo\" ? hist.done : hist.undone, dest = type == \"undo\" ? hist.undone : hist.done;\n\n // Verify that there is a useable event (so that ctrl-z won't\n // needlessly clear selection events)\n var i = 0;\n for (; i < source.length; i++) {\n event = source[i];\n if (allowSelectionOnly ? event.ranges && !event.equals(doc.sel) : !event.ranges)\n { break }\n }\n if (i == source.length) { return }\n hist.lastOrigin = hist.lastSelOrigin = null;\n\n for (;;) {\n event = source.pop();\n if (event.ranges) {\n pushSelectionToHistory(event, dest);\n if (allowSelectionOnly && !event.equals(doc.sel)) {\n setSelection(doc, event, {clearRedo: false});\n return\n }\n selAfter = event;\n } else if (suppress) {\n source.push(event);\n return\n } else { break }\n }\n\n // Build up a reverse change object to add to the opposite history\n // stack (redo when undoing, and vice versa).\n var antiChanges = [];\n pushSelectionToHistory(selAfter, dest);\n dest.push({changes: antiChanges, generation: hist.generation});\n hist.generation = event.generation || ++hist.maxGeneration;\n\n var filter = hasHandler(doc, \"beforeChange\") || doc.cm && hasHandler(doc.cm, \"beforeChange\");\n\n var loop = function ( i ) {\n var change = event.changes[i];\n change.origin = type;\n if (filter && !filterChange(doc, change, false)) {\n source.length = 0;\n return {}\n }\n\n antiChanges.push(historyChangeFromChange(doc, change));\n\n var after = i ? computeSelAfterChange(doc, change) : lst(source);\n makeChangeSingleDoc(doc, change, after, mergeOldSpans(doc, change));\n if (!i && doc.cm) { doc.cm.scrollIntoView({from: change.from, to: changeEnd(change)}); }\n var rebased = [];\n\n // Propagate to the linked documents\n linkedDocs(doc, function (doc, sharedHist) {\n if (!sharedHist && indexOf(rebased, doc.history) == -1) {\n rebaseHist(doc.history, change);\n rebased.push(doc.history);\n }\n makeChangeSingleDoc(doc, change, null, mergeOldSpans(doc, change));\n });\n };\n\n for (var i$1 = event.changes.length - 1; i$1 >= 0; --i$1) {\n var returned = loop( i$1 );\n\n if ( returned ) return returned.v;\n }\n }\n\n // Sub-views need their line numbers shifted when text is added\n // above or below them in the parent document.\n function shiftDoc(doc, distance) {\n if (distance == 0) { return }\n doc.first += distance;\n doc.sel = new Selection(map(doc.sel.ranges, function (range) { return new Range(\n Pos(range.anchor.line + distance, range.anchor.ch),\n Pos(range.head.line + distance, range.head.ch)\n ); }), doc.sel.primIndex);\n if (doc.cm) {\n regChange(doc.cm, doc.first, doc.first - distance, distance);\n for (var d = doc.cm.display, l = d.viewFrom; l < d.viewTo; l++)\n { regLineChange(doc.cm, l, \"gutter\"); }\n }\n }\n\n // More lower-level change function, handling only a single document\n // (not linked ones).\n function makeChangeSingleDoc(doc, change, selAfter, spans) {\n if (doc.cm && !doc.cm.curOp)\n { return operation(doc.cm, makeChangeSingleDoc)(doc, change, selAfter, spans) }\n\n if (change.to.line < doc.first) {\n shiftDoc(doc, change.text.length - 1 - (change.to.line - change.from.line));\n return\n }\n if (change.from.line > doc.lastLine()) { return }\n\n // Clip the change to the size of this doc\n if (change.from.line < doc.first) {\n var shift = change.text.length - 1 - (doc.first - change.from.line);\n shiftDoc(doc, shift);\n change = {from: Pos(doc.first, 0), to: Pos(change.to.line + shift, change.to.ch),\n text: [lst(change.text)], origin: change.origin};\n }\n var last = doc.lastLine();\n if (change.to.line > last) {\n change = {from: change.from, to: Pos(last, getLine(doc, last).text.length),\n text: [change.text[0]], origin: change.origin};\n }\n\n change.removed = getBetween(doc, change.from, change.to);\n\n if (!selAfter) { selAfter = computeSelAfterChange(doc, change); }\n if (doc.cm) { makeChangeSingleDocInEditor(doc.cm, change, spans); }\n else { updateDoc(doc, change, spans); }\n setSelectionNoUndo(doc, selAfter, sel_dontScroll);\n\n if (doc.cantEdit && skipAtomic(doc, Pos(doc.firstLine(), 0)))\n { doc.cantEdit = false; }\n }\n\n // Handle the interaction of a change to a document with the editor\n // that this document is part of.\n function makeChangeSingleDocInEditor(cm, change, spans) {\n var doc = cm.doc, display = cm.display, from = change.from, to = change.to;\n\n var recomputeMaxLength = false, checkWidthStart = from.line;\n if (!cm.options.lineWrapping) {\n checkWidthStart = lineNo(visualLine(getLine(doc, from.line)));\n doc.iter(checkWidthStart, to.line + 1, function (line) {\n if (line == display.maxLine) {\n recomputeMaxLength = true;\n return true\n }\n });\n }\n\n if (doc.sel.contains(change.from, change.to) > -1)\n { signalCursorActivity(cm); }\n\n updateDoc(doc, change, spans, estimateHeight(cm));\n\n if (!cm.options.lineWrapping) {\n doc.iter(checkWidthStart, from.line + change.text.length, function (line) {\n var len = lineLength(line);\n if (len > display.maxLineLength) {\n display.maxLine = line;\n display.maxLineLength = len;\n display.maxLineChanged = true;\n recomputeMaxLength = false;\n }\n });\n if (recomputeMaxLength) { cm.curOp.updateMaxLine = true; }\n }\n\n retreatFrontier(doc, from.line);\n startWorker(cm, 400);\n\n var lendiff = change.text.length - (to.line - from.line) - 1;\n // Remember that these lines changed, for updating the display\n if (change.full)\n { regChange(cm); }\n else if (from.line == to.line && change.text.length == 1 && !isWholeLineUpdate(cm.doc, change))\n { regLineChange(cm, from.line, \"text\"); }\n else\n { regChange(cm, from.line, to.line + 1, lendiff); }\n\n var changesHandler = hasHandler(cm, \"changes\"), changeHandler = hasHandler(cm, \"change\");\n if (changeHandler || changesHandler) {\n var obj = {\n from: from, to: to,\n text: change.text,\n removed: change.removed,\n origin: change.origin\n };\n if (changeHandler) { signalLater(cm, \"change\", cm, obj); }\n if (changesHandler) { (cm.curOp.changeObjs || (cm.curOp.changeObjs = [])).push(obj); }\n }\n cm.display.selForContextMenu = null;\n }\n\n function replaceRange(doc, code, from, to, origin) {\n var assign;\n\n if (!to) { to = from; }\n if (cmp(to, from) < 0) { (assign = [to, from], from = assign[0], to = assign[1]); }\n if (typeof code == \"string\") { code = doc.splitLines(code); }\n makeChange(doc, {from: from, to: to, text: code, origin: origin});\n }\n\n // Rebasing/resetting history to deal with externally-sourced changes\n\n function rebaseHistSelSingle(pos, from, to, diff) {\n if (to < pos.line) {\n pos.line += diff;\n } else if (from < pos.line) {\n pos.line = from;\n pos.ch = 0;\n }\n }\n\n // Tries to rebase an array of history events given a change in the\n // document. If the change touches the same lines as the event, the\n // event, and everything 'behind' it, is discarded. If the change is\n // before the event, the event's positions are updated. Uses a\n // copy-on-write scheme for the positions, to avoid having to\n // reallocate them all on every rebase, but also avoid problems with\n // shared position objects being unsafely updated.\n function rebaseHistArray(array, from, to, diff) {\n for (var i = 0; i < array.length; ++i) {\n var sub = array[i], ok = true;\n if (sub.ranges) {\n if (!sub.copied) { sub = array[i] = sub.deepCopy(); sub.copied = true; }\n for (var j = 0; j < sub.ranges.length; j++) {\n rebaseHistSelSingle(sub.ranges[j].anchor, from, to, diff);\n rebaseHistSelSingle(sub.ranges[j].head, from, to, diff);\n }\n continue\n }\n for (var j$1 = 0; j$1 < sub.changes.length; ++j$1) {\n var cur = sub.changes[j$1];\n if (to < cur.from.line) {\n cur.from = Pos(cur.from.line + diff, cur.from.ch);\n cur.to = Pos(cur.to.line + diff, cur.to.ch);\n } else if (from <= cur.to.line) {\n ok = false;\n break\n }\n }\n if (!ok) {\n array.splice(0, i + 1);\n i = 0;\n }\n }\n }\n\n function rebaseHist(hist, change) {\n var from = change.from.line, to = change.to.line, diff = change.text.length - (to - from) - 1;\n rebaseHistArray(hist.done, from, to, diff);\n rebaseHistArray(hist.undone, from, to, diff);\n }\n\n // Utility for applying a change to a line by handle or number,\n // returning the number and optionally registering the line as\n // changed.\n function changeLine(doc, handle, changeType, op) {\n var no = handle, line = handle;\n if (typeof handle == \"number\") { line = getLine(doc, clipLine(doc, handle)); }\n else { no = lineNo(handle); }\n if (no == null) { return null }\n if (op(line, no) && doc.cm) { regLineChange(doc.cm, no, changeType); }\n return line\n }\n\n // The document is represented as a BTree consisting of leaves, with\n // chunk of lines in them, and branches, with up to ten leaves or\n // other branch nodes below them. The top node is always a branch\n // node, and is the document object itself (meaning it has\n // additional methods and properties).\n //\n // All nodes have parent links. The tree is used both to go from\n // line numbers to line objects, and to go from objects to numbers.\n // It also indexes by height, and is used to convert between height\n // and line object, and to find the total height of the document.\n //\n // See also http://marijnhaverbeke.nl/blog/codemirror-line-tree.html\n\n function LeafChunk(lines) {\n this.lines = lines;\n this.parent = null;\n var height = 0;\n for (var i = 0; i < lines.length; ++i) {\n lines[i].parent = this;\n height += lines[i].height;\n }\n this.height = height;\n }\n\n LeafChunk.prototype = {\n chunkSize: function() { return this.lines.length },\n\n // Remove the n lines at offset 'at'.\n removeInner: function(at, n) {\n for (var i = at, e = at + n; i < e; ++i) {\n var line = this.lines[i];\n this.height -= line.height;\n cleanUpLine(line);\n signalLater(line, \"delete\");\n }\n this.lines.splice(at, n);\n },\n\n // Helper used to collapse a small branch into a single leaf.\n collapse: function(lines) {\n lines.push.apply(lines, this.lines);\n },\n\n // Insert the given array of lines at offset 'at', count them as\n // having the given height.\n insertInner: function(at, lines, height) {\n this.height += height;\n this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at));\n for (var i = 0; i < lines.length; ++i) { lines[i].parent = this; }\n },\n\n // Used to iterate over a part of the tree.\n iterN: function(at, n, op) {\n for (var e = at + n; at < e; ++at)\n { if (op(this.lines[at])) { return true } }\n }\n };\n\n function BranchChunk(children) {\n this.children = children;\n var size = 0, height = 0;\n for (var i = 0; i < children.length; ++i) {\n var ch = children[i];\n size += ch.chunkSize(); height += ch.height;\n ch.parent = this;\n }\n this.size = size;\n this.height = height;\n this.parent = null;\n }\n\n BranchChunk.prototype = {\n chunkSize: function() { return this.size },\n\n removeInner: function(at, n) {\n this.size -= n;\n for (var i = 0; i < this.children.length; ++i) {\n var child = this.children[i], sz = child.chunkSize();\n if (at < sz) {\n var rm = Math.min(n, sz - at), oldHeight = child.height;\n child.removeInner(at, rm);\n this.height -= oldHeight - child.height;\n if (sz == rm) { this.children.splice(i--, 1); child.parent = null; }\n if ((n -= rm) == 0) { break }\n at = 0;\n } else { at -= sz; }\n }\n // If the result is smaller than 25 lines, ensure that it is a\n // single leaf node.\n if (this.size - n < 25 &&\n (this.children.length > 1 || !(this.children[0] instanceof LeafChunk))) {\n var lines = [];\n this.collapse(lines);\n this.children = [new LeafChunk(lines)];\n this.children[0].parent = this;\n }\n },\n\n collapse: function(lines) {\n for (var i = 0; i < this.children.length; ++i) { this.children[i].collapse(lines); }\n },\n\n insertInner: function(at, lines, height) {\n this.size += lines.length;\n this.height += height;\n for (var i = 0; i < this.children.length; ++i) {\n var child = this.children[i], sz = child.chunkSize();\n if (at <= sz) {\n child.insertInner(at, lines, height);\n if (child.lines && child.lines.length > 50) {\n // To avoid memory thrashing when child.lines is huge (e.g. first view of a large file), it's never spliced.\n // Instead, small slices are taken. They're taken in order because sequential memory accesses are fastest.\n var remaining = child.lines.length % 25 + 25;\n for (var pos = remaining; pos < child.lines.length;) {\n var leaf = new LeafChunk(child.lines.slice(pos, pos += 25));\n child.height -= leaf.height;\n this.children.splice(++i, 0, leaf);\n leaf.parent = this;\n }\n child.lines = child.lines.slice(0, remaining);\n this.maybeSpill();\n }\n break\n }\n at -= sz;\n }\n },\n\n // When a node has grown, check whether it should be split.\n maybeSpill: function() {\n if (this.children.length <= 10) { return }\n var me = this;\n do {\n var spilled = me.children.splice(me.children.length - 5, 5);\n var sibling = new BranchChunk(spilled);\n if (!me.parent) { // Become the parent node\n var copy = new BranchChunk(me.children);\n copy.parent = me;\n me.children = [copy, sibling];\n me = copy;\n } else {\n me.size -= sibling.size;\n me.height -= sibling.height;\n var myIndex = indexOf(me.parent.children, me);\n me.parent.children.splice(myIndex + 1, 0, sibling);\n }\n sibling.parent = me.parent;\n } while (me.children.length > 10)\n me.parent.maybeSpill();\n },\n\n iterN: function(at, n, op) {\n for (var i = 0; i < this.children.length; ++i) {\n var child = this.children[i], sz = child.chunkSize();\n if (at < sz) {\n var used = Math.min(n, sz - at);\n if (child.iterN(at, used, op)) { return true }\n if ((n -= used) == 0) { break }\n at = 0;\n } else { at -= sz; }\n }\n }\n };\n\n // Line widgets are block elements displayed above or below a line.\n\n var LineWidget = function(doc, node, options) {\n if (options) { for (var opt in options) { if (options.hasOwnProperty(opt))\n { this[opt] = options[opt]; } } }\n this.doc = doc;\n this.node = node;\n };\n\n LineWidget.prototype.clear = function () {\n var cm = this.doc.cm, ws = this.line.widgets, line = this.line, no = lineNo(line);\n if (no == null || !ws) { return }\n for (var i = 0; i < ws.length; ++i) { if (ws[i] == this) { ws.splice(i--, 1); } }\n if (!ws.length) { line.widgets = null; }\n var height = widgetHeight(this);\n updateLineHeight(line, Math.max(0, line.height - height));\n if (cm) {\n runInOp(cm, function () {\n adjustScrollWhenAboveVisible(cm, line, -height);\n regLineChange(cm, no, \"widget\");\n });\n signalLater(cm, \"lineWidgetCleared\", cm, this, no);\n }\n };\n\n LineWidget.prototype.changed = function () {\n var this$1 = this;\n\n var oldH = this.height, cm = this.doc.cm, line = this.line;\n this.height = null;\n var diff = widgetHeight(this) - oldH;\n if (!diff) { return }\n if (!lineIsHidden(this.doc, line)) { updateLineHeight(line, line.height + diff); }\n if (cm) {\n runInOp(cm, function () {\n cm.curOp.forceUpdate = true;\n adjustScrollWhenAboveVisible(cm, line, diff);\n signalLater(cm, \"lineWidgetChanged\", cm, this$1, lineNo(line));\n });\n }\n };\n eventMixin(LineWidget);\n\n function adjustScrollWhenAboveVisible(cm, line, diff) {\n if (heightAtLine(line) < ((cm.curOp && cm.curOp.scrollTop) || cm.doc.scrollTop))\n { addToScrollTop(cm, diff); }\n }\n\n function addLineWidget(doc, handle, node, options) {\n var widget = new LineWidget(doc, node, options);\n var cm = doc.cm;\n if (cm && widget.noHScroll) { cm.display.alignWidgets = true; }\n changeLine(doc, handle, \"widget\", function (line) {\n var widgets = line.widgets || (line.widgets = []);\n if (widget.insertAt == null) { widgets.push(widget); }\n else { widgets.splice(Math.min(widgets.length - 1, Math.max(0, widget.insertAt)), 0, widget); }\n widget.line = line;\n if (cm && !lineIsHidden(doc, line)) {\n var aboveVisible = heightAtLine(line) < doc.scrollTop;\n updateLineHeight(line, line.height + widgetHeight(widget));\n if (aboveVisible) { addToScrollTop(cm, widget.height); }\n cm.curOp.forceUpdate = true;\n }\n return true\n });\n if (cm) { signalLater(cm, \"lineWidgetAdded\", cm, widget, typeof handle == \"number\" ? handle : lineNo(handle)); }\n return widget\n }\n\n // TEXTMARKERS\n\n // Created with markText and setBookmark methods. A TextMarker is a\n // handle that can be used to clear or find a marked position in the\n // document. Line objects hold arrays (markedSpans) containing\n // {from, to, marker} object pointing to such marker objects, and\n // indicating that such a marker is present on that line. Multiple\n // lines may point to the same marker when it spans across lines.\n // The spans will have null for their from/to properties when the\n // marker continues beyond the start/end of the line. Markers have\n // links back to the lines they currently touch.\n\n // Collapsed markers have unique ids, in order to be able to order\n // them, which is needed for uniquely determining an outer marker\n // when they overlap (they may nest, but not partially overlap).\n var nextMarkerId = 0;\n\n var TextMarker = function(doc, type) {\n this.lines = [];\n this.type = type;\n this.doc = doc;\n this.id = ++nextMarkerId;\n };\n\n // Clear the marker.\n TextMarker.prototype.clear = function () {\n if (this.explicitlyCleared) { return }\n var cm = this.doc.cm, withOp = cm && !cm.curOp;\n if (withOp) { startOperation(cm); }\n if (hasHandler(this, \"clear\")) {\n var found = this.find();\n if (found) { signalLater(this, \"clear\", found.from, found.to); }\n }\n var min = null, max = null;\n for (var i = 0; i < this.lines.length; ++i) {\n var line = this.lines[i];\n var span = getMarkedSpanFor(line.markedSpans, this);\n if (cm && !this.collapsed) { regLineChange(cm, lineNo(line), \"text\"); }\n else if (cm) {\n if (span.to != null) { max = lineNo(line); }\n if (span.from != null) { min = lineNo(line); }\n }\n line.markedSpans = removeMarkedSpan(line.markedSpans, span);\n if (span.from == null && this.collapsed && !lineIsHidden(this.doc, line) && cm)\n { updateLineHeight(line, textHeight(cm.display)); }\n }\n if (cm && this.collapsed && !cm.options.lineWrapping) { for (var i$1 = 0; i$1 < this.lines.length; ++i$1) {\n var visual = visualLine(this.lines[i$1]), len = lineLength(visual);\n if (len > cm.display.maxLineLength) {\n cm.display.maxLine = visual;\n cm.display.maxLineLength = len;\n cm.display.maxLineChanged = true;\n }\n } }\n\n if (min != null && cm && this.collapsed) { regChange(cm, min, max + 1); }\n this.lines.length = 0;\n this.explicitlyCleared = true;\n if (this.atomic && this.doc.cantEdit) {\n this.doc.cantEdit = false;\n if (cm) { reCheckSelection(cm.doc); }\n }\n if (cm) { signalLater(cm, \"markerCleared\", cm, this, min, max); }\n if (withOp) { endOperation(cm); }\n if (this.parent) { this.parent.clear(); }\n };\n\n // Find the position of the marker in the document. Returns a {from,\n // to} object by default. Side can be passed to get a specific side\n // -- 0 (both), -1 (left), or 1 (right). When lineObj is true, the\n // Pos objects returned contain a line object, rather than a line\n // number (used to prevent looking up the same line twice).\n TextMarker.prototype.find = function (side, lineObj) {\n if (side == null && this.type == \"bookmark\") { side = 1; }\n var from, to;\n for (var i = 0; i < this.lines.length; ++i) {\n var line = this.lines[i];\n var span = getMarkedSpanFor(line.markedSpans, this);\n if (span.from != null) {\n from = Pos(lineObj ? line : lineNo(line), span.from);\n if (side == -1) { return from }\n }\n if (span.to != null) {\n to = Pos(lineObj ? line : lineNo(line), span.to);\n if (side == 1) { return to }\n }\n }\n return from && {from: from, to: to}\n };\n\n // Signals that the marker's widget changed, and surrounding layout\n // should be recomputed.\n TextMarker.prototype.changed = function () {\n var this$1 = this;\n\n var pos = this.find(-1, true), widget = this, cm = this.doc.cm;\n if (!pos || !cm) { return }\n runInOp(cm, function () {\n var line = pos.line, lineN = lineNo(pos.line);\n var view = findViewForLine(cm, lineN);\n if (view) {\n clearLineMeasurementCacheFor(view);\n cm.curOp.selectionChanged = cm.curOp.forceUpdate = true;\n }\n cm.curOp.updateMaxLine = true;\n if (!lineIsHidden(widget.doc, line) && widget.height != null) {\n var oldHeight = widget.height;\n widget.height = null;\n var dHeight = widgetHeight(widget) - oldHeight;\n if (dHeight)\n { updateLineHeight(line, line.height + dHeight); }\n }\n signalLater(cm, \"markerChanged\", cm, this$1);\n });\n };\n\n TextMarker.prototype.attachLine = function (line) {\n if (!this.lines.length && this.doc.cm) {\n var op = this.doc.cm.curOp;\n if (!op.maybeHiddenMarkers || indexOf(op.maybeHiddenMarkers, this) == -1)\n { (op.maybeUnhiddenMarkers || (op.maybeUnhiddenMarkers = [])).push(this); }\n }\n this.lines.push(line);\n };\n\n TextMarker.prototype.detachLine = function (line) {\n this.lines.splice(indexOf(this.lines, line), 1);\n if (!this.lines.length && this.doc.cm) {\n var op = this.doc.cm.curOp\n ;(op.maybeHiddenMarkers || (op.maybeHiddenMarkers = [])).push(this);\n }\n };\n eventMixin(TextMarker);\n\n // Create a marker, wire it up to the right lines, and\n function markText(doc, from, to, options, type) {\n // Shared markers (across linked documents) are handled separately\n // (markTextShared will call out to this again, once per\n // document).\n if (options && options.shared) { return markTextShared(doc, from, to, options, type) }\n // Ensure we are in an operation.\n if (doc.cm && !doc.cm.curOp) { return operation(doc.cm, markText)(doc, from, to, options, type) }\n\n var marker = new TextMarker(doc, type), diff = cmp(from, to);\n if (options) { copyObj(options, marker, false); }\n // Don't connect empty markers unless clearWhenEmpty is false\n if (diff > 0 || diff == 0 && marker.clearWhenEmpty !== false)\n { return marker }\n if (marker.replacedWith) {\n // Showing up as a widget implies collapsed (widget replaces text)\n marker.collapsed = true;\n marker.widgetNode = eltP(\"span\", [marker.replacedWith], \"CodeMirror-widget\");\n if (!options.handleMouseEvents) { marker.widgetNode.setAttribute(\"cm-ignore-events\", \"true\"); }\n if (options.insertLeft) { marker.widgetNode.insertLeft = true; }\n }\n if (marker.collapsed) {\n if (conflictingCollapsedRange(doc, from.line, from, to, marker) ||\n from.line != to.line && conflictingCollapsedRange(doc, to.line, from, to, marker))\n { throw new Error(\"Inserting collapsed marker partially overlapping an existing one\") }\n seeCollapsedSpans();\n }\n\n if (marker.addToHistory)\n { addChangeToHistory(doc, {from: from, to: to, origin: \"markText\"}, doc.sel, NaN); }\n\n var curLine = from.line, cm = doc.cm, updateMaxLine;\n doc.iter(curLine, to.line + 1, function (line) {\n if (cm && marker.collapsed && !cm.options.lineWrapping && visualLine(line) == cm.display.maxLine)\n { updateMaxLine = true; }\n if (marker.collapsed && curLine != from.line) { updateLineHeight(line, 0); }\n addMarkedSpan(line, new MarkedSpan(marker,\n curLine == from.line ? from.ch : null,\n curLine == to.line ? to.ch : null));\n ++curLine;\n });\n // lineIsHidden depends on the presence of the spans, so needs a second pass\n if (marker.collapsed) { doc.iter(from.line, to.line + 1, function (line) {\n if (lineIsHidden(doc, line)) { updateLineHeight(line, 0); }\n }); }\n\n if (marker.clearOnEnter) { on(marker, \"beforeCursorEnter\", function () { return marker.clear(); }); }\n\n if (marker.readOnly) {\n seeReadOnlySpans();\n if (doc.history.done.length || doc.history.undone.length)\n { doc.clearHistory(); }\n }\n if (marker.collapsed) {\n marker.id = ++nextMarkerId;\n marker.atomic = true;\n }\n if (cm) {\n // Sync editor state\n if (updateMaxLine) { cm.curOp.updateMaxLine = true; }\n if (marker.collapsed)\n { regChange(cm, from.line, to.line + 1); }\n else if (marker.className || marker.startStyle || marker.endStyle || marker.css ||\n marker.attributes || marker.title)\n { for (var i = from.line; i <= to.line; i++) { regLineChange(cm, i, \"text\"); } }\n if (marker.atomic) { reCheckSelection(cm.doc); }\n signalLater(cm, \"markerAdded\", cm, marker);\n }\n return marker\n }\n\n // SHARED TEXTMARKERS\n\n // A shared marker spans multiple linked documents. It is\n // implemented as a meta-marker-object controlling multiple normal\n // markers.\n var SharedTextMarker = function(markers, primary) {\n this.markers = markers;\n this.primary = primary;\n for (var i = 0; i < markers.length; ++i)\n { markers[i].parent = this; }\n };\n\n SharedTextMarker.prototype.clear = function () {\n if (this.explicitlyCleared) { return }\n this.explicitlyCleared = true;\n for (var i = 0; i < this.markers.length; ++i)\n { this.markers[i].clear(); }\n signalLater(this, \"clear\");\n };\n\n SharedTextMarker.prototype.find = function (side, lineObj) {\n return this.primary.find(side, lineObj)\n };\n eventMixin(SharedTextMarker);\n\n function markTextShared(doc, from, to, options, type) {\n options = copyObj(options);\n options.shared = false;\n var markers = [markText(doc, from, to, options, type)], primary = markers[0];\n var widget = options.widgetNode;\n linkedDocs(doc, function (doc) {\n if (widget) { options.widgetNode = widget.cloneNode(true); }\n markers.push(markText(doc, clipPos(doc, from), clipPos(doc, to), options, type));\n for (var i = 0; i < doc.linked.length; ++i)\n { if (doc.linked[i].isParent) { return } }\n primary = lst(markers);\n });\n return new SharedTextMarker(markers, primary)\n }\n\n function findSharedMarkers(doc) {\n return doc.findMarks(Pos(doc.first, 0), doc.clipPos(Pos(doc.lastLine())), function (m) { return m.parent; })\n }\n\n function copySharedMarkers(doc, markers) {\n for (var i = 0; i < markers.length; i++) {\n var marker = markers[i], pos = marker.find();\n var mFrom = doc.clipPos(pos.from), mTo = doc.clipPos(pos.to);\n if (cmp(mFrom, mTo)) {\n var subMark = markText(doc, mFrom, mTo, marker.primary, marker.primary.type);\n marker.markers.push(subMark);\n subMark.parent = marker;\n }\n }\n }\n\n function detachSharedMarkers(markers) {\n var loop = function ( i ) {\n var marker = markers[i], linked = [marker.primary.doc];\n linkedDocs(marker.primary.doc, function (d) { return linked.push(d); });\n for (var j = 0; j < marker.markers.length; j++) {\n var subMarker = marker.markers[j];\n if (indexOf(linked, subMarker.doc) == -1) {\n subMarker.parent = null;\n marker.markers.splice(j--, 1);\n }\n }\n };\n\n for (var i = 0; i < markers.length; i++) loop( i );\n }\n\n var nextDocId = 0;\n var Doc = function(text, mode, firstLine, lineSep, direction) {\n if (!(this instanceof Doc)) { return new Doc(text, mode, firstLine, lineSep, direction) }\n if (firstLine == null) { firstLine = 0; }\n\n BranchChunk.call(this, [new LeafChunk([new Line(\"\", null)])]);\n this.first = firstLine;\n this.scrollTop = this.scrollLeft = 0;\n this.cantEdit = false;\n this.cleanGeneration = 1;\n this.modeFrontier = this.highlightFrontier = firstLine;\n var start = Pos(firstLine, 0);\n this.sel = simpleSelection(start);\n this.history = new History(null);\n this.id = ++nextDocId;\n this.modeOption = mode;\n this.lineSep = lineSep;\n this.direction = (direction == \"rtl\") ? \"rtl\" : \"ltr\";\n this.extend = false;\n\n if (typeof text == \"string\") { text = this.splitLines(text); }\n updateDoc(this, {from: start, to: start, text: text});\n setSelection(this, simpleSelection(start), sel_dontScroll);\n };\n\n Doc.prototype = createObj(BranchChunk.prototype, {\n constructor: Doc,\n // Iterate over the document. Supports two forms -- with only one\n // argument, it calls that for each line in the document. With\n // three, it iterates over the range given by the first two (with\n // the second being non-inclusive).\n iter: function(from, to, op) {\n if (op) { this.iterN(from - this.first, to - from, op); }\n else { this.iterN(this.first, this.first + this.size, from); }\n },\n\n // Non-public interface for adding and removing lines.\n insert: function(at, lines) {\n var height = 0;\n for (var i = 0; i < lines.length; ++i) { height += lines[i].height; }\n this.insertInner(at - this.first, lines, height);\n },\n remove: function(at, n) { this.removeInner(at - this.first, n); },\n\n // From here, the methods are part of the public interface. Most\n // are also available from CodeMirror (editor) instances.\n\n getValue: function(lineSep) {\n var lines = getLines(this, this.first, this.first + this.size);\n if (lineSep === false) { return lines }\n return lines.join(lineSep || this.lineSeparator())\n },\n setValue: docMethodOp(function(code) {\n var top = Pos(this.first, 0), last = this.first + this.size - 1;\n makeChange(this, {from: top, to: Pos(last, getLine(this, last).text.length),\n text: this.splitLines(code), origin: \"setValue\", full: true}, true);\n if (this.cm) { scrollToCoords(this.cm, 0, 0); }\n setSelection(this, simpleSelection(top), sel_dontScroll);\n }),\n replaceRange: function(code, from, to, origin) {\n from = clipPos(this, from);\n to = to ? clipPos(this, to) : from;\n replaceRange(this, code, from, to, origin);\n },\n getRange: function(from, to, lineSep) {\n var lines = getBetween(this, clipPos(this, from), clipPos(this, to));\n if (lineSep === false) { return lines }\n return lines.join(lineSep || this.lineSeparator())\n },\n\n getLine: function(line) {var l = this.getLineHandle(line); return l && l.text},\n\n getLineHandle: function(line) {if (isLine(this, line)) { return getLine(this, line) }},\n getLineNumber: function(line) {return lineNo(line)},\n\n getLineHandleVisualStart: function(line) {\n if (typeof line == \"number\") { line = getLine(this, line); }\n return visualLine(line)\n },\n\n lineCount: function() {return this.size},\n firstLine: function() {return this.first},\n lastLine: function() {return this.first + this.size - 1},\n\n clipPos: function(pos) {return clipPos(this, pos)},\n\n getCursor: function(start) {\n var range = this.sel.primary(), pos;\n if (start == null || start == \"head\") { pos = range.head; }\n else if (start == \"anchor\") { pos = range.anchor; }\n else if (start == \"end\" || start == \"to\" || start === false) { pos = range.to(); }\n else { pos = range.from(); }\n return pos\n },\n listSelections: function() { return this.sel.ranges },\n somethingSelected: function() {return this.sel.somethingSelected()},\n\n setCursor: docMethodOp(function(line, ch, options) {\n setSimpleSelection(this, clipPos(this, typeof line == \"number\" ? Pos(line, ch || 0) : line), null, options);\n }),\n setSelection: docMethodOp(function(anchor, head, options) {\n setSimpleSelection(this, clipPos(this, anchor), clipPos(this, head || anchor), options);\n }),\n extendSelection: docMethodOp(function(head, other, options) {\n extendSelection(this, clipPos(this, head), other && clipPos(this, other), options);\n }),\n extendSelections: docMethodOp(function(heads, options) {\n extendSelections(this, clipPosArray(this, heads), options);\n }),\n extendSelectionsBy: docMethodOp(function(f, options) {\n var heads = map(this.sel.ranges, f);\n extendSelections(this, clipPosArray(this, heads), options);\n }),\n setSelections: docMethodOp(function(ranges, primary, options) {\n if (!ranges.length) { return }\n var out = [];\n for (var i = 0; i < ranges.length; i++)\n { out[i] = new Range(clipPos(this, ranges[i].anchor),\n clipPos(this, ranges[i].head)); }\n if (primary == null) { primary = Math.min(ranges.length - 1, this.sel.primIndex); }\n setSelection(this, normalizeSelection(this.cm, out, primary), options);\n }),\n addSelection: docMethodOp(function(anchor, head, options) {\n var ranges = this.sel.ranges.slice(0);\n ranges.push(new Range(clipPos(this, anchor), clipPos(this, head || anchor)));\n setSelection(this, normalizeSelection(this.cm, ranges, ranges.length - 1), options);\n }),\n\n getSelection: function(lineSep) {\n var ranges = this.sel.ranges, lines;\n for (var i = 0; i < ranges.length; i++) {\n var sel = getBetween(this, ranges[i].from(), ranges[i].to());\n lines = lines ? lines.concat(sel) : sel;\n }\n if (lineSep === false) { return lines }\n else { return lines.join(lineSep || this.lineSeparator()) }\n },\n getSelections: function(lineSep) {\n var parts = [], ranges = this.sel.ranges;\n for (var i = 0; i < ranges.length; i++) {\n var sel = getBetween(this, ranges[i].from(), ranges[i].to());\n if (lineSep !== false) { sel = sel.join(lineSep || this.lineSeparator()); }\n parts[i] = sel;\n }\n return parts\n },\n replaceSelection: function(code, collapse, origin) {\n var dup = [];\n for (var i = 0; i < this.sel.ranges.length; i++)\n { dup[i] = code; }\n this.replaceSelections(dup, collapse, origin || \"+input\");\n },\n replaceSelections: docMethodOp(function(code, collapse, origin) {\n var changes = [], sel = this.sel;\n for (var i = 0; i < sel.ranges.length; i++) {\n var range = sel.ranges[i];\n changes[i] = {from: range.from(), to: range.to(), text: this.splitLines(code[i]), origin: origin};\n }\n var newSel = collapse && collapse != \"end\" && computeReplacedSel(this, changes, collapse);\n for (var i$1 = changes.length - 1; i$1 >= 0; i$1--)\n { makeChange(this, changes[i$1]); }\n if (newSel) { setSelectionReplaceHistory(this, newSel); }\n else if (this.cm) { ensureCursorVisible(this.cm); }\n }),\n undo: docMethodOp(function() {makeChangeFromHistory(this, \"undo\");}),\n redo: docMethodOp(function() {makeChangeFromHistory(this, \"redo\");}),\n undoSelection: docMethodOp(function() {makeChangeFromHistory(this, \"undo\", true);}),\n redoSelection: docMethodOp(function() {makeChangeFromHistory(this, \"redo\", true);}),\n\n setExtending: function(val) {this.extend = val;},\n getExtending: function() {return this.extend},\n\n historySize: function() {\n var hist = this.history, done = 0, undone = 0;\n for (var i = 0; i < hist.done.length; i++) { if (!hist.done[i].ranges) { ++done; } }\n for (var i$1 = 0; i$1 < hist.undone.length; i$1++) { if (!hist.undone[i$1].ranges) { ++undone; } }\n return {undo: done, redo: undone}\n },\n clearHistory: function() {\n var this$1 = this;\n\n this.history = new History(this.history.maxGeneration);\n linkedDocs(this, function (doc) { return doc.history = this$1.history; }, true);\n },\n\n markClean: function() {\n this.cleanGeneration = this.changeGeneration(true);\n },\n changeGeneration: function(forceSplit) {\n if (forceSplit)\n { this.history.lastOp = this.history.lastSelOp = this.history.lastOrigin = null; }\n return this.history.generation\n },\n isClean: function (gen) {\n return this.history.generation == (gen || this.cleanGeneration)\n },\n\n getHistory: function() {\n return {done: copyHistoryArray(this.history.done),\n undone: copyHistoryArray(this.history.undone)}\n },\n setHistory: function(histData) {\n var hist = this.history = new History(this.history.maxGeneration);\n hist.done = copyHistoryArray(histData.done.slice(0), null, true);\n hist.undone = copyHistoryArray(histData.undone.slice(0), null, true);\n },\n\n setGutterMarker: docMethodOp(function(line, gutterID, value) {\n return changeLine(this, line, \"gutter\", function (line) {\n var markers = line.gutterMarkers || (line.gutterMarkers = {});\n markers[gutterID] = value;\n if (!value && isEmpty(markers)) { line.gutterMarkers = null; }\n return true\n })\n }),\n\n clearGutter: docMethodOp(function(gutterID) {\n var this$1 = this;\n\n this.iter(function (line) {\n if (line.gutterMarkers && line.gutterMarkers[gutterID]) {\n changeLine(this$1, line, \"gutter\", function () {\n line.gutterMarkers[gutterID] = null;\n if (isEmpty(line.gutterMarkers)) { line.gutterMarkers = null; }\n return true\n });\n }\n });\n }),\n\n lineInfo: function(line) {\n var n;\n if (typeof line == \"number\") {\n if (!isLine(this, line)) { return null }\n n = line;\n line = getLine(this, line);\n if (!line) { return null }\n } else {\n n = lineNo(line);\n if (n == null) { return null }\n }\n return {line: n, handle: line, text: line.text, gutterMarkers: line.gutterMarkers,\n textClass: line.textClass, bgClass: line.bgClass, wrapClass: line.wrapClass,\n widgets: line.widgets}\n },\n\n addLineClass: docMethodOp(function(handle, where, cls) {\n return changeLine(this, handle, where == \"gutter\" ? \"gutter\" : \"class\", function (line) {\n var prop = where == \"text\" ? \"textClass\"\n : where == \"background\" ? \"bgClass\"\n : where == \"gutter\" ? \"gutterClass\" : \"wrapClass\";\n if (!line[prop]) { line[prop] = cls; }\n else if (classTest(cls).test(line[prop])) { return false }\n else { line[prop] += \" \" + cls; }\n return true\n })\n }),\n removeLineClass: docMethodOp(function(handle, where, cls) {\n return changeLine(this, handle, where == \"gutter\" ? \"gutter\" : \"class\", function (line) {\n var prop = where == \"text\" ? \"textClass\"\n : where == \"background\" ? \"bgClass\"\n : where == \"gutter\" ? \"gutterClass\" : \"wrapClass\";\n var cur = line[prop];\n if (!cur) { return false }\n else if (cls == null) { line[prop] = null; }\n else {\n var found = cur.match(classTest(cls));\n if (!found) { return false }\n var end = found.index + found[0].length;\n line[prop] = cur.slice(0, found.index) + (!found.index || end == cur.length ? \"\" : \" \") + cur.slice(end) || null;\n }\n return true\n })\n }),\n\n addLineWidget: docMethodOp(function(handle, node, options) {\n return addLineWidget(this, handle, node, options)\n }),\n removeLineWidget: function(widget) { widget.clear(); },\n\n markText: function(from, to, options) {\n return markText(this, clipPos(this, from), clipPos(this, to), options, options && options.type || \"range\")\n },\n setBookmark: function(pos, options) {\n var realOpts = {replacedWith: options && (options.nodeType == null ? options.widget : options),\n insertLeft: options && options.insertLeft,\n clearWhenEmpty: false, shared: options && options.shared,\n handleMouseEvents: options && options.handleMouseEvents};\n pos = clipPos(this, pos);\n return markText(this, pos, pos, realOpts, \"bookmark\")\n },\n findMarksAt: function(pos) {\n pos = clipPos(this, pos);\n var markers = [], spans = getLine(this, pos.line).markedSpans;\n if (spans) { for (var i = 0; i < spans.length; ++i) {\n var span = spans[i];\n if ((span.from == null || span.from <= pos.ch) &&\n (span.to == null || span.to >= pos.ch))\n { markers.push(span.marker.parent || span.marker); }\n } }\n return markers\n },\n findMarks: function(from, to, filter) {\n from = clipPos(this, from); to = clipPos(this, to);\n var found = [], lineNo = from.line;\n this.iter(from.line, to.line + 1, function (line) {\n var spans = line.markedSpans;\n if (spans) { for (var i = 0; i < spans.length; i++) {\n var span = spans[i];\n if (!(span.to != null && lineNo == from.line && from.ch >= span.to ||\n span.from == null && lineNo != from.line ||\n span.from != null && lineNo == to.line && span.from >= to.ch) &&\n (!filter || filter(span.marker)))\n { found.push(span.marker.parent || span.marker); }\n } }\n ++lineNo;\n });\n return found\n },\n getAllMarks: function() {\n var markers = [];\n this.iter(function (line) {\n var sps = line.markedSpans;\n if (sps) { for (var i = 0; i < sps.length; ++i)\n { if (sps[i].from != null) { markers.push(sps[i].marker); } } }\n });\n return markers\n },\n\n posFromIndex: function(off) {\n var ch, lineNo = this.first, sepSize = this.lineSeparator().length;\n this.iter(function (line) {\n var sz = line.text.length + sepSize;\n if (sz > off) { ch = off; return true }\n off -= sz;\n ++lineNo;\n });\n return clipPos(this, Pos(lineNo, ch))\n },\n indexFromPos: function (coords) {\n coords = clipPos(this, coords);\n var index = coords.ch;\n if (coords.line < this.first || coords.ch < 0) { return 0 }\n var sepSize = this.lineSeparator().length;\n this.iter(this.first, coords.line, function (line) { // iter aborts when callback returns a truthy value\n index += line.text.length + sepSize;\n });\n return index\n },\n\n copy: function(copyHistory) {\n var doc = new Doc(getLines(this, this.first, this.first + this.size),\n this.modeOption, this.first, this.lineSep, this.direction);\n doc.scrollTop = this.scrollTop; doc.scrollLeft = this.scrollLeft;\n doc.sel = this.sel;\n doc.extend = false;\n if (copyHistory) {\n doc.history.undoDepth = this.history.undoDepth;\n doc.setHistory(this.getHistory());\n }\n return doc\n },\n\n linkedDoc: function(options) {\n if (!options) { options = {}; }\n var from = this.first, to = this.first + this.size;\n if (options.from != null && options.from > from) { from = options.from; }\n if (options.to != null && options.to < to) { to = options.to; }\n var copy = new Doc(getLines(this, from, to), options.mode || this.modeOption, from, this.lineSep, this.direction);\n if (options.sharedHist) { copy.history = this.history\n ; }(this.linked || (this.linked = [])).push({doc: copy, sharedHist: options.sharedHist});\n copy.linked = [{doc: this, isParent: true, sharedHist: options.sharedHist}];\n copySharedMarkers(copy, findSharedMarkers(this));\n return copy\n },\n unlinkDoc: function(other) {\n if (other instanceof CodeMirror) { other = other.doc; }\n if (this.linked) { for (var i = 0; i < this.linked.length; ++i) {\n var link = this.linked[i];\n if (link.doc != other) { continue }\n this.linked.splice(i, 1);\n other.unlinkDoc(this);\n detachSharedMarkers(findSharedMarkers(this));\n break\n } }\n // If the histories were shared, split them again\n if (other.history == this.history) {\n var splitIds = [other.id];\n linkedDocs(other, function (doc) { return splitIds.push(doc.id); }, true);\n other.history = new History(null);\n other.history.done = copyHistoryArray(this.history.done, splitIds);\n other.history.undone = copyHistoryArray(this.history.undone, splitIds);\n }\n },\n iterLinkedDocs: function(f) {linkedDocs(this, f);},\n\n getMode: function() {return this.mode},\n getEditor: function() {return this.cm},\n\n splitLines: function(str) {\n if (this.lineSep) { return str.split(this.lineSep) }\n return splitLinesAuto(str)\n },\n lineSeparator: function() { return this.lineSep || \"\\n\" },\n\n setDirection: docMethodOp(function (dir) {\n if (dir != \"rtl\") { dir = \"ltr\"; }\n if (dir == this.direction) { return }\n this.direction = dir;\n this.iter(function (line) { return line.order = null; });\n if (this.cm) { directionChanged(this.cm); }\n })\n });\n\n // Public alias.\n Doc.prototype.eachLine = Doc.prototype.iter;\n\n // Kludge to work around strange IE behavior where it'll sometimes\n // re-fire a series of drag-related events right after the drop (#1551)\n var lastDrop = 0;\n\n function onDrop(e) {\n var cm = this;\n clearDragCursor(cm);\n if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e))\n { return }\n e_preventDefault(e);\n if (ie) { lastDrop = +new Date; }\n var pos = posFromMouse(cm, e, true), files = e.dataTransfer.files;\n if (!pos || cm.isReadOnly()) { return }\n // Might be a file drop, in which case we simply extract the text\n // and insert it.\n if (files && files.length && window.FileReader && window.File) {\n var n = files.length, text = Array(n), read = 0;\n var markAsReadAndPasteIfAllFilesAreRead = function () {\n if (++read == n) {\n operation(cm, function () {\n pos = clipPos(cm.doc, pos);\n var change = {from: pos, to: pos,\n text: cm.doc.splitLines(\n text.filter(function (t) { return t != null; }).join(cm.doc.lineSeparator())),\n origin: \"paste\"};\n makeChange(cm.doc, change);\n setSelectionReplaceHistory(cm.doc, simpleSelection(clipPos(cm.doc, pos), clipPos(cm.doc, changeEnd(change))));\n })();\n }\n };\n var readTextFromFile = function (file, i) {\n if (cm.options.allowDropFileTypes &&\n indexOf(cm.options.allowDropFileTypes, file.type) == -1) {\n markAsReadAndPasteIfAllFilesAreRead();\n return\n }\n var reader = new FileReader;\n reader.onerror = function () { return markAsReadAndPasteIfAllFilesAreRead(); };\n reader.onload = function () {\n var content = reader.result;\n if (/[\\x00-\\x08\\x0e-\\x1f]{2}/.test(content)) {\n markAsReadAndPasteIfAllFilesAreRead();\n return\n }\n text[i] = content;\n markAsReadAndPasteIfAllFilesAreRead();\n };\n reader.readAsText(file);\n };\n for (var i = 0; i < files.length; i++) { readTextFromFile(files[i], i); }\n } else { // Normal drop\n // Don't do a replace if the drop happened inside of the selected text.\n if (cm.state.draggingText && cm.doc.sel.contains(pos) > -1) {\n cm.state.draggingText(e);\n // Ensure the editor is re-focused\n setTimeout(function () { return cm.display.input.focus(); }, 20);\n return\n }\n try {\n var text$1 = e.dataTransfer.getData(\"Text\");\n if (text$1) {\n var selected;\n if (cm.state.draggingText && !cm.state.draggingText.copy)\n { selected = cm.listSelections(); }\n setSelectionNoUndo(cm.doc, simpleSelection(pos, pos));\n if (selected) { for (var i$1 = 0; i$1 < selected.length; ++i$1)\n { replaceRange(cm.doc, \"\", selected[i$1].anchor, selected[i$1].head, \"drag\"); } }\n cm.replaceSelection(text$1, \"around\", \"paste\");\n cm.display.input.focus();\n }\n }\n catch(e$1){}\n }\n }\n\n function onDragStart(cm, e) {\n if (ie && (!cm.state.draggingText || +new Date - lastDrop < 100)) { e_stop(e); return }\n if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e)) { return }\n\n e.dataTransfer.setData(\"Text\", cm.getSelection());\n e.dataTransfer.effectAllowed = \"copyMove\";\n\n // Use dummy image instead of default browsers image.\n // Recent Safari (~6.0.2) have a tendency to segfault when this happens, so we don't do it there.\n if (e.dataTransfer.setDragImage && !safari) {\n var img = elt(\"img\", null, null, \"position: fixed; left: 0; top: 0;\");\n img.src = \"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\";\n if (presto) {\n img.width = img.height = 1;\n cm.display.wrapper.appendChild(img);\n // Force a relayout, or Opera won't use our image for some obscure reason\n img._top = img.offsetTop;\n }\n e.dataTransfer.setDragImage(img, 0, 0);\n if (presto) { img.parentNode.removeChild(img); }\n }\n }\n\n function onDragOver(cm, e) {\n var pos = posFromMouse(cm, e);\n if (!pos) { return }\n var frag = document.createDocumentFragment();\n drawSelectionCursor(cm, pos, frag);\n if (!cm.display.dragCursor) {\n cm.display.dragCursor = elt(\"div\", null, \"CodeMirror-cursors CodeMirror-dragcursors\");\n cm.display.lineSpace.insertBefore(cm.display.dragCursor, cm.display.cursorDiv);\n }\n removeChildrenAndAdd(cm.display.dragCursor, frag);\n }\n\n function clearDragCursor(cm) {\n if (cm.display.dragCursor) {\n cm.display.lineSpace.removeChild(cm.display.dragCursor);\n cm.display.dragCursor = null;\n }\n }\n\n // These must be handled carefully, because naively registering a\n // handler for each editor will cause the editors to never be\n // garbage collected.\n\n function forEachCodeMirror(f) {\n if (!document.getElementsByClassName) { return }\n var byClass = document.getElementsByClassName(\"CodeMirror\"), editors = [];\n for (var i = 0; i < byClass.length; i++) {\n var cm = byClass[i].CodeMirror;\n if (cm) { editors.push(cm); }\n }\n if (editors.length) { editors[0].operation(function () {\n for (var i = 0; i < editors.length; i++) { f(editors[i]); }\n }); }\n }\n\n var globalsRegistered = false;\n function ensureGlobalHandlers() {\n if (globalsRegistered) { return }\n registerGlobalHandlers();\n globalsRegistered = true;\n }\n function registerGlobalHandlers() {\n // When the window resizes, we need to refresh active editors.\n var resizeTimer;\n on(window, \"resize\", function () {\n if (resizeTimer == null) { resizeTimer = setTimeout(function () {\n resizeTimer = null;\n forEachCodeMirror(onResize);\n }, 100); }\n });\n // When the window loses focus, we want to show the editor as blurred\n on(window, \"blur\", function () { return forEachCodeMirror(onBlur); });\n }\n // Called when the window resizes\n function onResize(cm) {\n var d = cm.display;\n // Might be a text scaling operation, clear size caches.\n d.cachedCharWidth = d.cachedTextHeight = d.cachedPaddingH = null;\n d.scrollbarsClipped = false;\n cm.setSize();\n }\n\n var keyNames = {\n 3: \"Pause\", 8: \"Backspace\", 9: \"Tab\", 13: \"Enter\", 16: \"Shift\", 17: \"Ctrl\", 18: \"Alt\",\n 19: \"Pause\", 20: \"CapsLock\", 27: \"Esc\", 32: \"Space\", 33: \"PageUp\", 34: \"PageDown\", 35: \"End\",\n 36: \"Home\", 37: \"Left\", 38: \"Up\", 39: \"Right\", 40: \"Down\", 44: \"PrintScrn\", 45: \"Insert\",\n 46: \"Delete\", 59: \";\", 61: \"=\", 91: \"Mod\", 92: \"Mod\", 93: \"Mod\",\n 106: \"*\", 107: \"=\", 109: \"-\", 110: \".\", 111: \"/\", 145: \"ScrollLock\",\n 173: \"-\", 186: \";\", 187: \"=\", 188: \",\", 189: \"-\", 190: \".\", 191: \"/\", 192: \"`\", 219: \"[\", 220: \"\\\\\",\n 221: \"]\", 222: \"'\", 224: \"Mod\", 63232: \"Up\", 63233: \"Down\", 63234: \"Left\", 63235: \"Right\", 63272: \"Delete\",\n 63273: \"Home\", 63275: \"End\", 63276: \"PageUp\", 63277: \"PageDown\", 63302: \"Insert\"\n };\n\n // Number keys\n for (var i = 0; i < 10; i++) { keyNames[i + 48] = keyNames[i + 96] = String(i); }\n // Alphabetic keys\n for (var i$1 = 65; i$1 <= 90; i$1++) { keyNames[i$1] = String.fromCharCode(i$1); }\n // Function keys\n for (var i$2 = 1; i$2 <= 12; i$2++) { keyNames[i$2 + 111] = keyNames[i$2 + 63235] = \"F\" + i$2; }\n\n var keyMap = {};\n\n keyMap.basic = {\n \"Left\": \"goCharLeft\", \"Right\": \"goCharRight\", \"Up\": \"goLineUp\", \"Down\": \"goLineDown\",\n \"End\": \"goLineEnd\", \"Home\": \"goLineStartSmart\", \"PageUp\": \"goPageUp\", \"PageDown\": \"goPageDown\",\n \"Delete\": \"delCharAfter\", \"Backspace\": \"delCharBefore\", \"Shift-Backspace\": \"delCharBefore\",\n \"Tab\": \"defaultTab\", \"Shift-Tab\": \"indentAuto\",\n \"Enter\": \"newlineAndIndent\", \"Insert\": \"toggleOverwrite\",\n \"Esc\": \"singleSelection\"\n };\n // Note that the save and find-related commands aren't defined by\n // default. User code or addons can define them. Unknown commands\n // are simply ignored.\n keyMap.pcDefault = {\n \"Ctrl-A\": \"selectAll\", \"Ctrl-D\": \"deleteLine\", \"Ctrl-Z\": \"undo\", \"Shift-Ctrl-Z\": \"redo\", \"Ctrl-Y\": \"redo\",\n \"Ctrl-Home\": \"goDocStart\", \"Ctrl-End\": \"goDocEnd\", \"Ctrl-Up\": \"goLineUp\", \"Ctrl-Down\": \"goLineDown\",\n \"Ctrl-Left\": \"goGroupLeft\", \"Ctrl-Right\": \"goGroupRight\", \"Alt-Left\": \"goLineStart\", \"Alt-Right\": \"goLineEnd\",\n \"Ctrl-Backspace\": \"delGroupBefore\", \"Ctrl-Delete\": \"delGroupAfter\", \"Ctrl-S\": \"save\", \"Ctrl-F\": \"find\",\n \"Ctrl-G\": \"findNext\", \"Shift-Ctrl-G\": \"findPrev\", \"Shift-Ctrl-F\": \"replace\", \"Shift-Ctrl-R\": \"replaceAll\",\n \"Ctrl-[\": \"indentLess\", \"Ctrl-]\": \"indentMore\",\n \"Ctrl-U\": \"undoSelection\", \"Shift-Ctrl-U\": \"redoSelection\", \"Alt-U\": \"redoSelection\",\n \"fallthrough\": \"basic\"\n };\n // Very basic readline/emacs-style bindings, which are standard on Mac.\n keyMap.emacsy = {\n \"Ctrl-F\": \"goCharRight\", \"Ctrl-B\": \"goCharLeft\", \"Ctrl-P\": \"goLineUp\", \"Ctrl-N\": \"goLineDown\",\n \"Alt-F\": \"goWordRight\", \"Alt-B\": \"goWordLeft\", \"Ctrl-A\": \"goLineStart\", \"Ctrl-E\": \"goLineEnd\",\n \"Ctrl-V\": \"goPageDown\", \"Shift-Ctrl-V\": \"goPageUp\", \"Ctrl-D\": \"delCharAfter\", \"Ctrl-H\": \"delCharBefore\",\n \"Alt-D\": \"delWordAfter\", \"Alt-Backspace\": \"delWordBefore\", \"Ctrl-K\": \"killLine\", \"Ctrl-T\": \"transposeChars\",\n \"Ctrl-O\": \"openLine\"\n };\n keyMap.macDefault = {\n \"Cmd-A\": \"selectAll\", \"Cmd-D\": \"deleteLine\", \"Cmd-Z\": \"undo\", \"Shift-Cmd-Z\": \"redo\", \"Cmd-Y\": \"redo\",\n \"Cmd-Home\": \"goDocStart\", \"Cmd-Up\": \"goDocStart\", \"Cmd-End\": \"goDocEnd\", \"Cmd-Down\": \"goDocEnd\", \"Alt-Left\": \"goGroupLeft\",\n \"Alt-Right\": \"goGroupRight\", \"Cmd-Left\": \"goLineLeft\", \"Cmd-Right\": \"goLineRight\", \"Alt-Backspace\": \"delGroupBefore\",\n \"Ctrl-Alt-Backspace\": \"delGroupAfter\", \"Alt-Delete\": \"delGroupAfter\", \"Cmd-S\": \"save\", \"Cmd-F\": \"find\",\n \"Cmd-G\": \"findNext\", \"Shift-Cmd-G\": \"findPrev\", \"Cmd-Alt-F\": \"replace\", \"Shift-Cmd-Alt-F\": \"replaceAll\",\n \"Cmd-[\": \"indentLess\", \"Cmd-]\": \"indentMore\", \"Cmd-Backspace\": \"delWrappedLineLeft\", \"Cmd-Delete\": \"delWrappedLineRight\",\n \"Cmd-U\": \"undoSelection\", \"Shift-Cmd-U\": \"redoSelection\", \"Ctrl-Up\": \"goDocStart\", \"Ctrl-Down\": \"goDocEnd\",\n \"fallthrough\": [\"basic\", \"emacsy\"]\n };\n keyMap[\"default\"] = mac ? keyMap.macDefault : keyMap.pcDefault;\n\n // KEYMAP DISPATCH\n\n function normalizeKeyName(name) {\n var parts = name.split(/-(?!$)/);\n name = parts[parts.length - 1];\n var alt, ctrl, shift, cmd;\n for (var i = 0; i < parts.length - 1; i++) {\n var mod = parts[i];\n if (/^(cmd|meta|m)$/i.test(mod)) { cmd = true; }\n else if (/^a(lt)?$/i.test(mod)) { alt = true; }\n else if (/^(c|ctrl|control)$/i.test(mod)) { ctrl = true; }\n else if (/^s(hift)?$/i.test(mod)) { shift = true; }\n else { throw new Error(\"Unrecognized modifier name: \" + mod) }\n }\n if (alt) { name = \"Alt-\" + name; }\n if (ctrl) { name = \"Ctrl-\" + name; }\n if (cmd) { name = \"Cmd-\" + name; }\n if (shift) { name = \"Shift-\" + name; }\n return name\n }\n\n // This is a kludge to keep keymaps mostly working as raw objects\n // (backwards compatibility) while at the same time support features\n // like normalization and multi-stroke key bindings. It compiles a\n // new normalized keymap, and then updates the old object to reflect\n // this.\n function normalizeKeyMap(keymap) {\n var copy = {};\n for (var keyname in keymap) { if (keymap.hasOwnProperty(keyname)) {\n var value = keymap[keyname];\n if (/^(name|fallthrough|(de|at)tach)$/.test(keyname)) { continue }\n if (value == \"...\") { delete keymap[keyname]; continue }\n\n var keys = map(keyname.split(\" \"), normalizeKeyName);\n for (var i = 0; i < keys.length; i++) {\n var val = (void 0), name = (void 0);\n if (i == keys.length - 1) {\n name = keys.join(\" \");\n val = value;\n } else {\n name = keys.slice(0, i + 1).join(\" \");\n val = \"...\";\n }\n var prev = copy[name];\n if (!prev) { copy[name] = val; }\n else if (prev != val) { throw new Error(\"Inconsistent bindings for \" + name) }\n }\n delete keymap[keyname];\n } }\n for (var prop in copy) { keymap[prop] = copy[prop]; }\n return keymap\n }\n\n function lookupKey(key, map, handle, context) {\n map = getKeyMap(map);\n var found = map.call ? map.call(key, context) : map[key];\n if (found === false) { return \"nothing\" }\n if (found === \"...\") { return \"multi\" }\n if (found != null && handle(found)) { return \"handled\" }\n\n if (map.fallthrough) {\n if (Object.prototype.toString.call(map.fallthrough) != \"[object Array]\")\n { return lookupKey(key, map.fallthrough, handle, context) }\n for (var i = 0; i < map.fallthrough.length; i++) {\n var result = lookupKey(key, map.fallthrough[i], handle, context);\n if (result) { return result }\n }\n }\n }\n\n // Modifier key presses don't count as 'real' key presses for the\n // purpose of keymap fallthrough.\n function isModifierKey(value) {\n var name = typeof value == \"string\" ? value : keyNames[value.keyCode];\n return name == \"Ctrl\" || name == \"Alt\" || name == \"Shift\" || name == \"Mod\"\n }\n\n function addModifierNames(name, event, noShift) {\n var base = name;\n if (event.altKey && base != \"Alt\") { name = \"Alt-\" + name; }\n if ((flipCtrlCmd ? event.metaKey : event.ctrlKey) && base != \"Ctrl\") { name = \"Ctrl-\" + name; }\n if ((flipCtrlCmd ? event.ctrlKey : event.metaKey) && base != \"Mod\") { name = \"Cmd-\" + name; }\n if (!noShift && event.shiftKey && base != \"Shift\") { name = \"Shift-\" + name; }\n return name\n }\n\n // Look up the name of a key as indicated by an event object.\n function keyName(event, noShift) {\n if (presto && event.keyCode == 34 && event[\"char\"]) { return false }\n var name = keyNames[event.keyCode];\n if (name == null || event.altGraphKey) { return false }\n // Ctrl-ScrollLock has keyCode 3, same as Ctrl-Pause,\n // so we'll use event.code when available (Chrome 48+, FF 38+, Safari 10.1+)\n if (event.keyCode == 3 && event.code) { name = event.code; }\n return addModifierNames(name, event, noShift)\n }\n\n function getKeyMap(val) {\n return typeof val == \"string\" ? keyMap[val] : val\n }\n\n // Helper for deleting text near the selection(s), used to implement\n // backspace, delete, and similar functionality.\n function deleteNearSelection(cm, compute) {\n var ranges = cm.doc.sel.ranges, kill = [];\n // Build up a set of ranges to kill first, merging overlapping\n // ranges.\n for (var i = 0; i < ranges.length; i++) {\n var toKill = compute(ranges[i]);\n while (kill.length && cmp(toKill.from, lst(kill).to) <= 0) {\n var replaced = kill.pop();\n if (cmp(replaced.from, toKill.from) < 0) {\n toKill.from = replaced.from;\n break\n }\n }\n kill.push(toKill);\n }\n // Next, remove those actual ranges.\n runInOp(cm, function () {\n for (var i = kill.length - 1; i >= 0; i--)\n { replaceRange(cm.doc, \"\", kill[i].from, kill[i].to, \"+delete\"); }\n ensureCursorVisible(cm);\n });\n }\n\n function moveCharLogically(line, ch, dir) {\n var target = skipExtendingChars(line.text, ch + dir, dir);\n return target < 0 || target > line.text.length ? null : target\n }\n\n function moveLogically(line, start, dir) {\n var ch = moveCharLogically(line, start.ch, dir);\n return ch == null ? null : new Pos(start.line, ch, dir < 0 ? \"after\" : \"before\")\n }\n\n function endOfLine(visually, cm, lineObj, lineNo, dir) {\n if (visually) {\n if (cm.doc.direction == \"rtl\") { dir = -dir; }\n var order = getOrder(lineObj, cm.doc.direction);\n if (order) {\n var part = dir < 0 ? lst(order) : order[0];\n var moveInStorageOrder = (dir < 0) == (part.level == 1);\n var sticky = moveInStorageOrder ? \"after\" : \"before\";\n var ch;\n // With a wrapped rtl chunk (possibly spanning multiple bidi parts),\n // it could be that the last bidi part is not on the last visual line,\n // since visual lines contain content order-consecutive chunks.\n // Thus, in rtl, we are looking for the first (content-order) character\n // in the rtl chunk that is on the last line (that is, the same line\n // as the last (content-order) character).\n if (part.level > 0 || cm.doc.direction == \"rtl\") {\n var prep = prepareMeasureForLine(cm, lineObj);\n ch = dir < 0 ? lineObj.text.length - 1 : 0;\n var targetTop = measureCharPrepared(cm, prep, ch).top;\n ch = findFirst(function (ch) { return measureCharPrepared(cm, prep, ch).top == targetTop; }, (dir < 0) == (part.level == 1) ? part.from : part.to - 1, ch);\n if (sticky == \"before\") { ch = moveCharLogically(lineObj, ch, 1); }\n } else { ch = dir < 0 ? part.to : part.from; }\n return new Pos(lineNo, ch, sticky)\n }\n }\n return new Pos(lineNo, dir < 0 ? lineObj.text.length : 0, dir < 0 ? \"before\" : \"after\")\n }\n\n function moveVisually(cm, line, start, dir) {\n var bidi = getOrder(line, cm.doc.direction);\n if (!bidi) { return moveLogically(line, start, dir) }\n if (start.ch >= line.text.length) {\n start.ch = line.text.length;\n start.sticky = \"before\";\n } else if (start.ch <= 0) {\n start.ch = 0;\n start.sticky = \"after\";\n }\n var partPos = getBidiPartAt(bidi, start.ch, start.sticky), part = bidi[partPos];\n if (cm.doc.direction == \"ltr\" && part.level % 2 == 0 && (dir > 0 ? part.to > start.ch : part.from < start.ch)) {\n // Case 1: We move within an ltr part in an ltr editor. Even with wrapped lines,\n // nothing interesting happens.\n return moveLogically(line, start, dir)\n }\n\n var mv = function (pos, dir) { return moveCharLogically(line, pos instanceof Pos ? pos.ch : pos, dir); };\n var prep;\n var getWrappedLineExtent = function (ch) {\n if (!cm.options.lineWrapping) { return {begin: 0, end: line.text.length} }\n prep = prep || prepareMeasureForLine(cm, line);\n return wrappedLineExtentChar(cm, line, prep, ch)\n };\n var wrappedLineExtent = getWrappedLineExtent(start.sticky == \"before\" ? mv(start, -1) : start.ch);\n\n if (cm.doc.direction == \"rtl\" || part.level == 1) {\n var moveInStorageOrder = (part.level == 1) == (dir < 0);\n var ch = mv(start, moveInStorageOrder ? 1 : -1);\n if (ch != null && (!moveInStorageOrder ? ch >= part.from && ch >= wrappedLineExtent.begin : ch <= part.to && ch <= wrappedLineExtent.end)) {\n // Case 2: We move within an rtl part or in an rtl editor on the same visual line\n var sticky = moveInStorageOrder ? \"before\" : \"after\";\n return new Pos(start.line, ch, sticky)\n }\n }\n\n // Case 3: Could not move within this bidi part in this visual line, so leave\n // the current bidi part\n\n var searchInVisualLine = function (partPos, dir, wrappedLineExtent) {\n var getRes = function (ch, moveInStorageOrder) { return moveInStorageOrder\n ? new Pos(start.line, mv(ch, 1), \"before\")\n : new Pos(start.line, ch, \"after\"); };\n\n for (; partPos >= 0 && partPos < bidi.length; partPos += dir) {\n var part = bidi[partPos];\n var moveInStorageOrder = (dir > 0) == (part.level != 1);\n var ch = moveInStorageOrder ? wrappedLineExtent.begin : mv(wrappedLineExtent.end, -1);\n if (part.from <= ch && ch < part.to) { return getRes(ch, moveInStorageOrder) }\n ch = moveInStorageOrder ? part.from : mv(part.to, -1);\n if (wrappedLineExtent.begin <= ch && ch < wrappedLineExtent.end) { return getRes(ch, moveInStorageOrder) }\n }\n };\n\n // Case 3a: Look for other bidi parts on the same visual line\n var res = searchInVisualLine(partPos + dir, dir, wrappedLineExtent);\n if (res) { return res }\n\n // Case 3b: Look for other bidi parts on the next visual line\n var nextCh = dir > 0 ? wrappedLineExtent.end : mv(wrappedLineExtent.begin, -1);\n if (nextCh != null && !(dir > 0 && nextCh == line.text.length)) {\n res = searchInVisualLine(dir > 0 ? 0 : bidi.length - 1, dir, getWrappedLineExtent(nextCh));\n if (res) { return res }\n }\n\n // Case 4: Nowhere to move\n return null\n }\n\n // Commands are parameter-less actions that can be performed on an\n // editor, mostly used for keybindings.\n var commands = {\n selectAll: selectAll,\n singleSelection: function (cm) { return cm.setSelection(cm.getCursor(\"anchor\"), cm.getCursor(\"head\"), sel_dontScroll); },\n killLine: function (cm) { return deleteNearSelection(cm, function (range) {\n if (range.empty()) {\n var len = getLine(cm.doc, range.head.line).text.length;\n if (range.head.ch == len && range.head.line < cm.lastLine())\n { return {from: range.head, to: Pos(range.head.line + 1, 0)} }\n else\n { return {from: range.head, to: Pos(range.head.line, len)} }\n } else {\n return {from: range.from(), to: range.to()}\n }\n }); },\n deleteLine: function (cm) { return deleteNearSelection(cm, function (range) { return ({\n from: Pos(range.from().line, 0),\n to: clipPos(cm.doc, Pos(range.to().line + 1, 0))\n }); }); },\n delLineLeft: function (cm) { return deleteNearSelection(cm, function (range) { return ({\n from: Pos(range.from().line, 0), to: range.from()\n }); }); },\n delWrappedLineLeft: function (cm) { return deleteNearSelection(cm, function (range) {\n var top = cm.charCoords(range.head, \"div\").top + 5;\n var leftPos = cm.coordsChar({left: 0, top: top}, \"div\");\n return {from: leftPos, to: range.from()}\n }); },\n delWrappedLineRight: function (cm) { return deleteNearSelection(cm, function (range) {\n var top = cm.charCoords(range.head, \"div\").top + 5;\n var rightPos = cm.coordsChar({left: cm.display.lineDiv.offsetWidth + 100, top: top}, \"div\");\n return {from: range.from(), to: rightPos }\n }); },\n undo: function (cm) { return cm.undo(); },\n redo: function (cm) { return cm.redo(); },\n undoSelection: function (cm) { return cm.undoSelection(); },\n redoSelection: function (cm) { return cm.redoSelection(); },\n goDocStart: function (cm) { return cm.extendSelection(Pos(cm.firstLine(), 0)); },\n goDocEnd: function (cm) { return cm.extendSelection(Pos(cm.lastLine())); },\n goLineStart: function (cm) { return cm.extendSelectionsBy(function (range) { return lineStart(cm, range.head.line); },\n {origin: \"+move\", bias: 1}\n ); },\n goLineStartSmart: function (cm) { return cm.extendSelectionsBy(function (range) { return lineStartSmart(cm, range.head); },\n {origin: \"+move\", bias: 1}\n ); },\n goLineEnd: function (cm) { return cm.extendSelectionsBy(function (range) { return lineEnd(cm, range.head.line); },\n {origin: \"+move\", bias: -1}\n ); },\n goLineRight: function (cm) { return cm.extendSelectionsBy(function (range) {\n var top = cm.cursorCoords(range.head, \"div\").top + 5;\n return cm.coordsChar({left: cm.display.lineDiv.offsetWidth + 100, top: top}, \"div\")\n }, sel_move); },\n goLineLeft: function (cm) { return cm.extendSelectionsBy(function (range) {\n var top = cm.cursorCoords(range.head, \"div\").top + 5;\n return cm.coordsChar({left: 0, top: top}, \"div\")\n }, sel_move); },\n goLineLeftSmart: function (cm) { return cm.extendSelectionsBy(function (range) {\n var top = cm.cursorCoords(range.head, \"div\").top + 5;\n var pos = cm.coordsChar({left: 0, top: top}, \"div\");\n if (pos.ch < cm.getLine(pos.line).search(/\\S/)) { return lineStartSmart(cm, range.head) }\n return pos\n }, sel_move); },\n goLineUp: function (cm) { return cm.moveV(-1, \"line\"); },\n goLineDown: function (cm) { return cm.moveV(1, \"line\"); },\n goPageUp: function (cm) { return cm.moveV(-1, \"page\"); },\n goPageDown: function (cm) { return cm.moveV(1, \"page\"); },\n goCharLeft: function (cm) { return cm.moveH(-1, \"char\"); },\n goCharRight: function (cm) { return cm.moveH(1, \"char\"); },\n goColumnLeft: function (cm) { return cm.moveH(-1, \"column\"); },\n goColumnRight: function (cm) { return cm.moveH(1, \"column\"); },\n goWordLeft: function (cm) { return cm.moveH(-1, \"word\"); },\n goGroupRight: function (cm) { return cm.moveH(1, \"group\"); },\n goGroupLeft: function (cm) { return cm.moveH(-1, \"group\"); },\n goWordRight: function (cm) { return cm.moveH(1, \"word\"); },\n delCharBefore: function (cm) { return cm.deleteH(-1, \"codepoint\"); },\n delCharAfter: function (cm) { return cm.deleteH(1, \"char\"); },\n delWordBefore: function (cm) { return cm.deleteH(-1, \"word\"); },\n delWordAfter: function (cm) { return cm.deleteH(1, \"word\"); },\n delGroupBefore: function (cm) { return cm.deleteH(-1, \"group\"); },\n delGroupAfter: function (cm) { return cm.deleteH(1, \"group\"); },\n indentAuto: function (cm) { return cm.indentSelection(\"smart\"); },\n indentMore: function (cm) { return cm.indentSelection(\"add\"); },\n indentLess: function (cm) { return cm.indentSelection(\"subtract\"); },\n insertTab: function (cm) { return cm.replaceSelection(\"\\t\"); },\n insertSoftTab: function (cm) {\n var spaces = [], ranges = cm.listSelections(), tabSize = cm.options.tabSize;\n for (var i = 0; i < ranges.length; i++) {\n var pos = ranges[i].from();\n var col = countColumn(cm.getLine(pos.line), pos.ch, tabSize);\n spaces.push(spaceStr(tabSize - col % tabSize));\n }\n cm.replaceSelections(spaces);\n },\n defaultTab: function (cm) {\n if (cm.somethingSelected()) { cm.indentSelection(\"add\"); }\n else { cm.execCommand(\"insertTab\"); }\n },\n // Swap the two chars left and right of each selection's head.\n // Move cursor behind the two swapped characters afterwards.\n //\n // Doesn't consider line feeds a character.\n // Doesn't scan more than one line above to find a character.\n // Doesn't do anything on an empty line.\n // Doesn't do anything with non-empty selections.\n transposeChars: function (cm) { return runInOp(cm, function () {\n var ranges = cm.listSelections(), newSel = [];\n for (var i = 0; i < ranges.length; i++) {\n if (!ranges[i].empty()) { continue }\n var cur = ranges[i].head, line = getLine(cm.doc, cur.line).text;\n if (line) {\n if (cur.ch == line.length) { cur = new Pos(cur.line, cur.ch - 1); }\n if (cur.ch > 0) {\n cur = new Pos(cur.line, cur.ch + 1);\n cm.replaceRange(line.charAt(cur.ch - 1) + line.charAt(cur.ch - 2),\n Pos(cur.line, cur.ch - 2), cur, \"+transpose\");\n } else if (cur.line > cm.doc.first) {\n var prev = getLine(cm.doc, cur.line - 1).text;\n if (prev) {\n cur = new Pos(cur.line, 1);\n cm.replaceRange(line.charAt(0) + cm.doc.lineSeparator() +\n prev.charAt(prev.length - 1),\n Pos(cur.line - 1, prev.length - 1), cur, \"+transpose\");\n }\n }\n }\n newSel.push(new Range(cur, cur));\n }\n cm.setSelections(newSel);\n }); },\n newlineAndIndent: function (cm) { return runInOp(cm, function () {\n var sels = cm.listSelections();\n for (var i = sels.length - 1; i >= 0; i--)\n { cm.replaceRange(cm.doc.lineSeparator(), sels[i].anchor, sels[i].head, \"+input\"); }\n sels = cm.listSelections();\n for (var i$1 = 0; i$1 < sels.length; i$1++)\n { cm.indentLine(sels[i$1].from().line, null, true); }\n ensureCursorVisible(cm);\n }); },\n openLine: function (cm) { return cm.replaceSelection(\"\\n\", \"start\"); },\n toggleOverwrite: function (cm) { return cm.toggleOverwrite(); }\n };\n\n\n function lineStart(cm, lineN) {\n var line = getLine(cm.doc, lineN);\n var visual = visualLine(line);\n if (visual != line) { lineN = lineNo(visual); }\n return endOfLine(true, cm, visual, lineN, 1)\n }\n function lineEnd(cm, lineN) {\n var line = getLine(cm.doc, lineN);\n var visual = visualLineEnd(line);\n if (visual != line) { lineN = lineNo(visual); }\n return endOfLine(true, cm, line, lineN, -1)\n }\n function lineStartSmart(cm, pos) {\n var start = lineStart(cm, pos.line);\n var line = getLine(cm.doc, start.line);\n var order = getOrder(line, cm.doc.direction);\n if (!order || order[0].level == 0) {\n var firstNonWS = Math.max(start.ch, line.text.search(/\\S/));\n var inWS = pos.line == start.line && pos.ch <= firstNonWS && pos.ch;\n return Pos(start.line, inWS ? 0 : firstNonWS, start.sticky)\n }\n return start\n }\n\n // Run a handler that was bound to a key.\n function doHandleBinding(cm, bound, dropShift) {\n if (typeof bound == \"string\") {\n bound = commands[bound];\n if (!bound) { return false }\n }\n // Ensure previous input has been read, so that the handler sees a\n // consistent view of the document\n cm.display.input.ensurePolled();\n var prevShift = cm.display.shift, done = false;\n try {\n if (cm.isReadOnly()) { cm.state.suppressEdits = true; }\n if (dropShift) { cm.display.shift = false; }\n done = bound(cm) != Pass;\n } finally {\n cm.display.shift = prevShift;\n cm.state.suppressEdits = false;\n }\n return done\n }\n\n function lookupKeyForEditor(cm, name, handle) {\n for (var i = 0; i < cm.state.keyMaps.length; i++) {\n var result = lookupKey(name, cm.state.keyMaps[i], handle, cm);\n if (result) { return result }\n }\n return (cm.options.extraKeys && lookupKey(name, cm.options.extraKeys, handle, cm))\n || lookupKey(name, cm.options.keyMap, handle, cm)\n }\n\n // Note that, despite the name, this function is also used to check\n // for bound mouse clicks.\n\n var stopSeq = new Delayed;\n\n function dispatchKey(cm, name, e, handle) {\n var seq = cm.state.keySeq;\n if (seq) {\n if (isModifierKey(name)) { return \"handled\" }\n if (/\\'$/.test(name))\n { cm.state.keySeq = null; }\n else\n { stopSeq.set(50, function () {\n if (cm.state.keySeq == seq) {\n cm.state.keySeq = null;\n cm.display.input.reset();\n }\n }); }\n if (dispatchKeyInner(cm, seq + \" \" + name, e, handle)) { return true }\n }\n return dispatchKeyInner(cm, name, e, handle)\n }\n\n function dispatchKeyInner(cm, name, e, handle) {\n var result = lookupKeyForEditor(cm, name, handle);\n\n if (result == \"multi\")\n { cm.state.keySeq = name; }\n if (result == \"handled\")\n { signalLater(cm, \"keyHandled\", cm, name, e); }\n\n if (result == \"handled\" || result == \"multi\") {\n e_preventDefault(e);\n restartBlink(cm);\n }\n\n return !!result\n }\n\n // Handle a key from the keydown event.\n function handleKeyBinding(cm, e) {\n var name = keyName(e, true);\n if (!name) { return false }\n\n if (e.shiftKey && !cm.state.keySeq) {\n // First try to resolve full name (including 'Shift-'). Failing\n // that, see if there is a cursor-motion command (starting with\n // 'go') bound to the keyname without 'Shift-'.\n return dispatchKey(cm, \"Shift-\" + name, e, function (b) { return doHandleBinding(cm, b, true); })\n || dispatchKey(cm, name, e, function (b) {\n if (typeof b == \"string\" ? /^go[A-Z]/.test(b) : b.motion)\n { return doHandleBinding(cm, b) }\n })\n } else {\n return dispatchKey(cm, name, e, function (b) { return doHandleBinding(cm, b); })\n }\n }\n\n // Handle a key from the keypress event\n function handleCharBinding(cm, e, ch) {\n return dispatchKey(cm, \"'\" + ch + \"'\", e, function (b) { return doHandleBinding(cm, b, true); })\n }\n\n var lastStoppedKey = null;\n function onKeyDown(e) {\n var cm = this;\n if (e.target && e.target != cm.display.input.getField()) { return }\n cm.curOp.focus = activeElt();\n if (signalDOMEvent(cm, e)) { return }\n // IE does strange things with escape.\n if (ie && ie_version < 11 && e.keyCode == 27) { e.returnValue = false; }\n var code = e.keyCode;\n cm.display.shift = code == 16 || e.shiftKey;\n var handled = handleKeyBinding(cm, e);\n if (presto) {\n lastStoppedKey = handled ? code : null;\n // Opera has no cut event... we try to at least catch the key combo\n if (!handled && code == 88 && !hasCopyEvent && (mac ? e.metaKey : e.ctrlKey))\n { cm.replaceSelection(\"\", null, \"cut\"); }\n }\n if (gecko && !mac && !handled && code == 46 && e.shiftKey && !e.ctrlKey && document.execCommand)\n { document.execCommand(\"cut\"); }\n\n // Turn mouse into crosshair when Alt is held on Mac.\n if (code == 18 && !/\\bCodeMirror-crosshair\\b/.test(cm.display.lineDiv.className))\n { showCrossHair(cm); }\n }\n\n function showCrossHair(cm) {\n var lineDiv = cm.display.lineDiv;\n addClass(lineDiv, \"CodeMirror-crosshair\");\n\n function up(e) {\n if (e.keyCode == 18 || !e.altKey) {\n rmClass(lineDiv, \"CodeMirror-crosshair\");\n off(document, \"keyup\", up);\n off(document, \"mouseover\", up);\n }\n }\n on(document, \"keyup\", up);\n on(document, \"mouseover\", up);\n }\n\n function onKeyUp(e) {\n if (e.keyCode == 16) { this.doc.sel.shift = false; }\n signalDOMEvent(this, e);\n }\n\n function onKeyPress(e) {\n var cm = this;\n if (e.target && e.target != cm.display.input.getField()) { return }\n if (eventInWidget(cm.display, e) || signalDOMEvent(cm, e) || e.ctrlKey && !e.altKey || mac && e.metaKey) { return }\n var keyCode = e.keyCode, charCode = e.charCode;\n if (presto && keyCode == lastStoppedKey) {lastStoppedKey = null; e_preventDefault(e); return}\n if ((presto && (!e.which || e.which < 10)) && handleKeyBinding(cm, e)) { return }\n var ch = String.fromCharCode(charCode == null ? keyCode : charCode);\n // Some browsers fire keypress events for backspace\n if (ch == \"\\x08\") { return }\n if (handleCharBinding(cm, e, ch)) { return }\n cm.display.input.onKeyPress(e);\n }\n\n var DOUBLECLICK_DELAY = 400;\n\n var PastClick = function(time, pos, button) {\n this.time = time;\n this.pos = pos;\n this.button = button;\n };\n\n PastClick.prototype.compare = function (time, pos, button) {\n return this.time + DOUBLECLICK_DELAY > time &&\n cmp(pos, this.pos) == 0 && button == this.button\n };\n\n var lastClick, lastDoubleClick;\n function clickRepeat(pos, button) {\n var now = +new Date;\n if (lastDoubleClick && lastDoubleClick.compare(now, pos, button)) {\n lastClick = lastDoubleClick = null;\n return \"triple\"\n } else if (lastClick && lastClick.compare(now, pos, button)) {\n lastDoubleClick = new PastClick(now, pos, button);\n lastClick = null;\n return \"double\"\n } else {\n lastClick = new PastClick(now, pos, button);\n lastDoubleClick = null;\n return \"single\"\n }\n }\n\n // A mouse down can be a single click, double click, triple click,\n // start of selection drag, start of text drag, new cursor\n // (ctrl-click), rectangle drag (alt-drag), or xwin\n // middle-click-paste. Or it might be a click on something we should\n // not interfere with, such as a scrollbar or widget.\n function onMouseDown(e) {\n var cm = this, display = cm.display;\n if (signalDOMEvent(cm, e) || display.activeTouch && display.input.supportsTouch()) { return }\n display.input.ensurePolled();\n display.shift = e.shiftKey;\n\n if (eventInWidget(display, e)) {\n if (!webkit) {\n // Briefly turn off draggability, to allow widgets to do\n // normal dragging things.\n display.scroller.draggable = false;\n setTimeout(function () { return display.scroller.draggable = true; }, 100);\n }\n return\n }\n if (clickInGutter(cm, e)) { return }\n var pos = posFromMouse(cm, e), button = e_button(e), repeat = pos ? clickRepeat(pos, button) : \"single\";\n window.focus();\n\n // #3261: make sure, that we're not starting a second selection\n if (button == 1 && cm.state.selectingText)\n { cm.state.selectingText(e); }\n\n if (pos && handleMappedButton(cm, button, pos, repeat, e)) { return }\n\n if (button == 1) {\n if (pos) { leftButtonDown(cm, pos, repeat, e); }\n else if (e_target(e) == display.scroller) { e_preventDefault(e); }\n } else if (button == 2) {\n if (pos) { extendSelection(cm.doc, pos); }\n setTimeout(function () { return display.input.focus(); }, 20);\n } else if (button == 3) {\n if (captureRightClick) { cm.display.input.onContextMenu(e); }\n else { delayBlurEvent(cm); }\n }\n }\n\n function handleMappedButton(cm, button, pos, repeat, event) {\n var name = \"Click\";\n if (repeat == \"double\") { name = \"Double\" + name; }\n else if (repeat == \"triple\") { name = \"Triple\" + name; }\n name = (button == 1 ? \"Left\" : button == 2 ? \"Middle\" : \"Right\") + name;\n\n return dispatchKey(cm, addModifierNames(name, event), event, function (bound) {\n if (typeof bound == \"string\") { bound = commands[bound]; }\n if (!bound) { return false }\n var done = false;\n try {\n if (cm.isReadOnly()) { cm.state.suppressEdits = true; }\n done = bound(cm, pos) != Pass;\n } finally {\n cm.state.suppressEdits = false;\n }\n return done\n })\n }\n\n function configureMouse(cm, repeat, event) {\n var option = cm.getOption(\"configureMouse\");\n var value = option ? option(cm, repeat, event) : {};\n if (value.unit == null) {\n var rect = chromeOS ? event.shiftKey && event.metaKey : event.altKey;\n value.unit = rect ? \"rectangle\" : repeat == \"single\" ? \"char\" : repeat == \"double\" ? \"word\" : \"line\";\n }\n if (value.extend == null || cm.doc.extend) { value.extend = cm.doc.extend || event.shiftKey; }\n if (value.addNew == null) { value.addNew = mac ? event.metaKey : event.ctrlKey; }\n if (value.moveOnDrag == null) { value.moveOnDrag = !(mac ? event.altKey : event.ctrlKey); }\n return value\n }\n\n function leftButtonDown(cm, pos, repeat, event) {\n if (ie) { setTimeout(bind(ensureFocus, cm), 0); }\n else { cm.curOp.focus = activeElt(); }\n\n var behavior = configureMouse(cm, repeat, event);\n\n var sel = cm.doc.sel, contained;\n if (cm.options.dragDrop && dragAndDrop && !cm.isReadOnly() &&\n repeat == \"single\" && (contained = sel.contains(pos)) > -1 &&\n (cmp((contained = sel.ranges[contained]).from(), pos) < 0 || pos.xRel > 0) &&\n (cmp(contained.to(), pos) > 0 || pos.xRel < 0))\n { leftButtonStartDrag(cm, event, pos, behavior); }\n else\n { leftButtonSelect(cm, event, pos, behavior); }\n }\n\n // Start a text drag. When it ends, see if any dragging actually\n // happen, and treat as a click if it didn't.\n function leftButtonStartDrag(cm, event, pos, behavior) {\n var display = cm.display, moved = false;\n var dragEnd = operation(cm, function (e) {\n if (webkit) { display.scroller.draggable = false; }\n cm.state.draggingText = false;\n off(display.wrapper.ownerDocument, \"mouseup\", dragEnd);\n off(display.wrapper.ownerDocument, \"mousemove\", mouseMove);\n off(display.scroller, \"dragstart\", dragStart);\n off(display.scroller, \"drop\", dragEnd);\n if (!moved) {\n e_preventDefault(e);\n if (!behavior.addNew)\n { extendSelection(cm.doc, pos, null, null, behavior.extend); }\n // Work around unexplainable focus problem in IE9 (#2127) and Chrome (#3081)\n if ((webkit && !safari) || ie && ie_version == 9)\n { setTimeout(function () {display.wrapper.ownerDocument.body.focus({preventScroll: true}); display.input.focus();}, 20); }\n else\n { display.input.focus(); }\n }\n });\n var mouseMove = function(e2) {\n moved = moved || Math.abs(event.clientX - e2.clientX) + Math.abs(event.clientY - e2.clientY) >= 10;\n };\n var dragStart = function () { return moved = true; };\n // Let the drag handler handle this.\n if (webkit) { display.scroller.draggable = true; }\n cm.state.draggingText = dragEnd;\n dragEnd.copy = !behavior.moveOnDrag;\n // IE's approach to draggable\n if (display.scroller.dragDrop) { display.scroller.dragDrop(); }\n on(display.wrapper.ownerDocument, \"mouseup\", dragEnd);\n on(display.wrapper.ownerDocument, \"mousemove\", mouseMove);\n on(display.scroller, \"dragstart\", dragStart);\n on(display.scroller, \"drop\", dragEnd);\n\n delayBlurEvent(cm);\n setTimeout(function () { return display.input.focus(); }, 20);\n }\n\n function rangeForUnit(cm, pos, unit) {\n if (unit == \"char\") { return new Range(pos, pos) }\n if (unit == \"word\") { return cm.findWordAt(pos) }\n if (unit == \"line\") { return new Range(Pos(pos.line, 0), clipPos(cm.doc, Pos(pos.line + 1, 0))) }\n var result = unit(cm, pos);\n return new Range(result.from, result.to)\n }\n\n // Normal selection, as opposed to text dragging.\n function leftButtonSelect(cm, event, start, behavior) {\n var display = cm.display, doc = cm.doc;\n e_preventDefault(event);\n\n var ourRange, ourIndex, startSel = doc.sel, ranges = startSel.ranges;\n if (behavior.addNew && !behavior.extend) {\n ourIndex = doc.sel.contains(start);\n if (ourIndex > -1)\n { ourRange = ranges[ourIndex]; }\n else\n { ourRange = new Range(start, start); }\n } else {\n ourRange = doc.sel.primary();\n ourIndex = doc.sel.primIndex;\n }\n\n if (behavior.unit == \"rectangle\") {\n if (!behavior.addNew) { ourRange = new Range(start, start); }\n start = posFromMouse(cm, event, true, true);\n ourIndex = -1;\n } else {\n var range = rangeForUnit(cm, start, behavior.unit);\n if (behavior.extend)\n { ourRange = extendRange(ourRange, range.anchor, range.head, behavior.extend); }\n else\n { ourRange = range; }\n }\n\n if (!behavior.addNew) {\n ourIndex = 0;\n setSelection(doc, new Selection([ourRange], 0), sel_mouse);\n startSel = doc.sel;\n } else if (ourIndex == -1) {\n ourIndex = ranges.length;\n setSelection(doc, normalizeSelection(cm, ranges.concat([ourRange]), ourIndex),\n {scroll: false, origin: \"*mouse\"});\n } else if (ranges.length > 1 && ranges[ourIndex].empty() && behavior.unit == \"char\" && !behavior.extend) {\n setSelection(doc, normalizeSelection(cm, ranges.slice(0, ourIndex).concat(ranges.slice(ourIndex + 1)), 0),\n {scroll: false, origin: \"*mouse\"});\n startSel = doc.sel;\n } else {\n replaceOneSelection(doc, ourIndex, ourRange, sel_mouse);\n }\n\n var lastPos = start;\n function extendTo(pos) {\n if (cmp(lastPos, pos) == 0) { return }\n lastPos = pos;\n\n if (behavior.unit == \"rectangle\") {\n var ranges = [], tabSize = cm.options.tabSize;\n var startCol = countColumn(getLine(doc, start.line).text, start.ch, tabSize);\n var posCol = countColumn(getLine(doc, pos.line).text, pos.ch, tabSize);\n var left = Math.min(startCol, posCol), right = Math.max(startCol, posCol);\n for (var line = Math.min(start.line, pos.line), end = Math.min(cm.lastLine(), Math.max(start.line, pos.line));\n line <= end; line++) {\n var text = getLine(doc, line).text, leftPos = findColumn(text, left, tabSize);\n if (left == right)\n { ranges.push(new Range(Pos(line, leftPos), Pos(line, leftPos))); }\n else if (text.length > leftPos)\n { ranges.push(new Range(Pos(line, leftPos), Pos(line, findColumn(text, right, tabSize)))); }\n }\n if (!ranges.length) { ranges.push(new Range(start, start)); }\n setSelection(doc, normalizeSelection(cm, startSel.ranges.slice(0, ourIndex).concat(ranges), ourIndex),\n {origin: \"*mouse\", scroll: false});\n cm.scrollIntoView(pos);\n } else {\n var oldRange = ourRange;\n var range = rangeForUnit(cm, pos, behavior.unit);\n var anchor = oldRange.anchor, head;\n if (cmp(range.anchor, anchor) > 0) {\n head = range.head;\n anchor = minPos(oldRange.from(), range.anchor);\n } else {\n head = range.anchor;\n anchor = maxPos(oldRange.to(), range.head);\n }\n var ranges$1 = startSel.ranges.slice(0);\n ranges$1[ourIndex] = bidiSimplify(cm, new Range(clipPos(doc, anchor), head));\n setSelection(doc, normalizeSelection(cm, ranges$1, ourIndex), sel_mouse);\n }\n }\n\n var editorSize = display.wrapper.getBoundingClientRect();\n // Used to ensure timeout re-tries don't fire when another extend\n // happened in the meantime (clearTimeout isn't reliable -- at\n // least on Chrome, the timeouts still happen even when cleared,\n // if the clear happens after their scheduled firing time).\n var counter = 0;\n\n function extend(e) {\n var curCount = ++counter;\n var cur = posFromMouse(cm, e, true, behavior.unit == \"rectangle\");\n if (!cur) { return }\n if (cmp(cur, lastPos) != 0) {\n cm.curOp.focus = activeElt();\n extendTo(cur);\n var visible = visibleLines(display, doc);\n if (cur.line >= visible.to || cur.line < visible.from)\n { setTimeout(operation(cm, function () {if (counter == curCount) { extend(e); }}), 150); }\n } else {\n var outside = e.clientY < editorSize.top ? -20 : e.clientY > editorSize.bottom ? 20 : 0;\n if (outside) { setTimeout(operation(cm, function () {\n if (counter != curCount) { return }\n display.scroller.scrollTop += outside;\n extend(e);\n }), 50); }\n }\n }\n\n function done(e) {\n cm.state.selectingText = false;\n counter = Infinity;\n // If e is null or undefined we interpret this as someone trying\n // to explicitly cancel the selection rather than the user\n // letting go of the mouse button.\n if (e) {\n e_preventDefault(e);\n display.input.focus();\n }\n off(display.wrapper.ownerDocument, \"mousemove\", move);\n off(display.wrapper.ownerDocument, \"mouseup\", up);\n doc.history.lastSelOrigin = null;\n }\n\n var move = operation(cm, function (e) {\n if (e.buttons === 0 || !e_button(e)) { done(e); }\n else { extend(e); }\n });\n var up = operation(cm, done);\n cm.state.selectingText = up;\n on(display.wrapper.ownerDocument, \"mousemove\", move);\n on(display.wrapper.ownerDocument, \"mouseup\", up);\n }\n\n // Used when mouse-selecting to adjust the anchor to the proper side\n // of a bidi jump depending on the visual position of the head.\n function bidiSimplify(cm, range) {\n var anchor = range.anchor;\n var head = range.head;\n var anchorLine = getLine(cm.doc, anchor.line);\n if (cmp(anchor, head) == 0 && anchor.sticky == head.sticky) { return range }\n var order = getOrder(anchorLine);\n if (!order) { return range }\n var index = getBidiPartAt(order, anchor.ch, anchor.sticky), part = order[index];\n if (part.from != anchor.ch && part.to != anchor.ch) { return range }\n var boundary = index + ((part.from == anchor.ch) == (part.level != 1) ? 0 : 1);\n if (boundary == 0 || boundary == order.length) { return range }\n\n // Compute the relative visual position of the head compared to the\n // anchor (<0 is to the left, >0 to the right)\n var leftSide;\n if (head.line != anchor.line) {\n leftSide = (head.line - anchor.line) * (cm.doc.direction == \"ltr\" ? 1 : -1) > 0;\n } else {\n var headIndex = getBidiPartAt(order, head.ch, head.sticky);\n var dir = headIndex - index || (head.ch - anchor.ch) * (part.level == 1 ? -1 : 1);\n if (headIndex == boundary - 1 || headIndex == boundary)\n { leftSide = dir < 0; }\n else\n { leftSide = dir > 0; }\n }\n\n var usePart = order[boundary + (leftSide ? -1 : 0)];\n var from = leftSide == (usePart.level == 1);\n var ch = from ? usePart.from : usePart.to, sticky = from ? \"after\" : \"before\";\n return anchor.ch == ch && anchor.sticky == sticky ? range : new Range(new Pos(anchor.line, ch, sticky), head)\n }\n\n\n // Determines whether an event happened in the gutter, and fires the\n // handlers for the corresponding event.\n function gutterEvent(cm, e, type, prevent) {\n var mX, mY;\n if (e.touches) {\n mX = e.touches[0].clientX;\n mY = e.touches[0].clientY;\n } else {\n try { mX = e.clientX; mY = e.clientY; }\n catch(e$1) { return false }\n }\n if (mX >= Math.floor(cm.display.gutters.getBoundingClientRect().right)) { return false }\n if (prevent) { e_preventDefault(e); }\n\n var display = cm.display;\n var lineBox = display.lineDiv.getBoundingClientRect();\n\n if (mY > lineBox.bottom || !hasHandler(cm, type)) { return e_defaultPrevented(e) }\n mY -= lineBox.top - display.viewOffset;\n\n for (var i = 0; i < cm.display.gutterSpecs.length; ++i) {\n var g = display.gutters.childNodes[i];\n if (g && g.getBoundingClientRect().right >= mX) {\n var line = lineAtHeight(cm.doc, mY);\n var gutter = cm.display.gutterSpecs[i];\n signal(cm, type, cm, line, gutter.className, e);\n return e_defaultPrevented(e)\n }\n }\n }\n\n function clickInGutter(cm, e) {\n return gutterEvent(cm, e, \"gutterClick\", true)\n }\n\n // CONTEXT MENU HANDLING\n\n // To make the context menu work, we need to briefly unhide the\n // textarea (making it as unobtrusive as possible) to let the\n // right-click take effect on it.\n function onContextMenu(cm, e) {\n if (eventInWidget(cm.display, e) || contextMenuInGutter(cm, e)) { return }\n if (signalDOMEvent(cm, e, \"contextmenu\")) { return }\n if (!captureRightClick) { cm.display.input.onContextMenu(e); }\n }\n\n function contextMenuInGutter(cm, e) {\n if (!hasHandler(cm, \"gutterContextMenu\")) { return false }\n return gutterEvent(cm, e, \"gutterContextMenu\", false)\n }\n\n function themeChanged(cm) {\n cm.display.wrapper.className = cm.display.wrapper.className.replace(/\\s*cm-s-\\S+/g, \"\") +\n cm.options.theme.replace(/(^|\\s)\\s*/g, \" cm-s-\");\n clearCaches(cm);\n }\n\n var Init = {toString: function(){return \"CodeMirror.Init\"}};\n\n var defaults = {};\n var optionHandlers = {};\n\n function defineOptions(CodeMirror) {\n var optionHandlers = CodeMirror.optionHandlers;\n\n function option(name, deflt, handle, notOnInit) {\n CodeMirror.defaults[name] = deflt;\n if (handle) { optionHandlers[name] =\n notOnInit ? function (cm, val, old) {if (old != Init) { handle(cm, val, old); }} : handle; }\n }\n\n CodeMirror.defineOption = option;\n\n // Passed to option handlers when there is no old value.\n CodeMirror.Init = Init;\n\n // These two are, on init, called from the constructor because they\n // have to be initialized before the editor can start at all.\n option(\"value\", \"\", function (cm, val) { return cm.setValue(val); }, true);\n option(\"mode\", null, function (cm, val) {\n cm.doc.modeOption = val;\n loadMode(cm);\n }, true);\n\n option(\"indentUnit\", 2, loadMode, true);\n option(\"indentWithTabs\", false);\n option(\"smartIndent\", true);\n option(\"tabSize\", 4, function (cm) {\n resetModeState(cm);\n clearCaches(cm);\n regChange(cm);\n }, true);\n\n option(\"lineSeparator\", null, function (cm, val) {\n cm.doc.lineSep = val;\n if (!val) { return }\n var newBreaks = [], lineNo = cm.doc.first;\n cm.doc.iter(function (line) {\n for (var pos = 0;;) {\n var found = line.text.indexOf(val, pos);\n if (found == -1) { break }\n pos = found + val.length;\n newBreaks.push(Pos(lineNo, found));\n }\n lineNo++;\n });\n for (var i = newBreaks.length - 1; i >= 0; i--)\n { replaceRange(cm.doc, val, newBreaks[i], Pos(newBreaks[i].line, newBreaks[i].ch + val.length)); }\n });\n option(\"specialChars\", /[\\u0000-\\u001f\\u007f-\\u009f\\u00ad\\u061c\\u200b-\\u200c\\u200e\\u200f\\u2028\\u2029\\ufeff\\ufff9-\\ufffc]/g, function (cm, val, old) {\n cm.state.specialChars = new RegExp(val.source + (val.test(\"\\t\") ? \"\" : \"|\\t\"), \"g\");\n if (old != Init) { cm.refresh(); }\n });\n option(\"specialCharPlaceholder\", defaultSpecialCharPlaceholder, function (cm) { return cm.refresh(); }, true);\n option(\"electricChars\", true);\n option(\"inputStyle\", mobile ? \"contenteditable\" : \"textarea\", function () {\n throw new Error(\"inputStyle can not (yet) be changed in a running editor\") // FIXME\n }, true);\n option(\"spellcheck\", false, function (cm, val) { return cm.getInputField().spellcheck = val; }, true);\n option(\"autocorrect\", false, function (cm, val) { return cm.getInputField().autocorrect = val; }, true);\n option(\"autocapitalize\", false, function (cm, val) { return cm.getInputField().autocapitalize = val; }, true);\n option(\"rtlMoveVisually\", !windows);\n option(\"wholeLineUpdateBefore\", true);\n\n option(\"theme\", \"default\", function (cm) {\n themeChanged(cm);\n updateGutters(cm);\n }, true);\n option(\"keyMap\", \"default\", function (cm, val, old) {\n var next = getKeyMap(val);\n var prev = old != Init && getKeyMap(old);\n if (prev && prev.detach) { prev.detach(cm, next); }\n if (next.attach) { next.attach(cm, prev || null); }\n });\n option(\"extraKeys\", null);\n option(\"configureMouse\", null);\n\n option(\"lineWrapping\", false, wrappingChanged, true);\n option(\"gutters\", [], function (cm, val) {\n cm.display.gutterSpecs = getGutters(val, cm.options.lineNumbers);\n updateGutters(cm);\n }, true);\n option(\"fixedGutter\", true, function (cm, val) {\n cm.display.gutters.style.left = val ? compensateForHScroll(cm.display) + \"px\" : \"0\";\n cm.refresh();\n }, true);\n option(\"coverGutterNextToScrollbar\", false, function (cm) { return updateScrollbars(cm); }, true);\n option(\"scrollbarStyle\", \"native\", function (cm) {\n initScrollbars(cm);\n updateScrollbars(cm);\n cm.display.scrollbars.setScrollTop(cm.doc.scrollTop);\n cm.display.scrollbars.setScrollLeft(cm.doc.scrollLeft);\n }, true);\n option(\"lineNumbers\", false, function (cm, val) {\n cm.display.gutterSpecs = getGutters(cm.options.gutters, val);\n updateGutters(cm);\n }, true);\n option(\"firstLineNumber\", 1, updateGutters, true);\n option(\"lineNumberFormatter\", function (integer) { return integer; }, updateGutters, true);\n option(\"showCursorWhenSelecting\", false, updateSelection, true);\n\n option(\"resetSelectionOnContextMenu\", true);\n option(\"lineWiseCopyCut\", true);\n option(\"pasteLinesPerSelection\", true);\n option(\"selectionsMayTouch\", false);\n\n option(\"readOnly\", false, function (cm, val) {\n if (val == \"nocursor\") {\n onBlur(cm);\n cm.display.input.blur();\n }\n cm.display.input.readOnlyChanged(val);\n });\n\n option(\"screenReaderLabel\", null, function (cm, val) {\n val = (val === '') ? null : val;\n cm.display.input.screenReaderLabelChanged(val);\n });\n\n option(\"disableInput\", false, function (cm, val) {if (!val) { cm.display.input.reset(); }}, true);\n option(\"dragDrop\", true, dragDropChanged);\n option(\"allowDropFileTypes\", null);\n\n option(\"cursorBlinkRate\", 530);\n option(\"cursorScrollMargin\", 0);\n option(\"cursorHeight\", 1, updateSelection, true);\n option(\"singleCursorHeightPerLine\", true, updateSelection, true);\n option(\"workTime\", 100);\n option(\"workDelay\", 100);\n option(\"flattenSpans\", true, resetModeState, true);\n option(\"addModeClass\", false, resetModeState, true);\n option(\"pollInterval\", 100);\n option(\"undoDepth\", 200, function (cm, val) { return cm.doc.history.undoDepth = val; });\n option(\"historyEventDelay\", 1250);\n option(\"viewportMargin\", 10, function (cm) { return cm.refresh(); }, true);\n option(\"maxHighlightLength\", 10000, resetModeState, true);\n option(\"moveInputWithCursor\", true, function (cm, val) {\n if (!val) { cm.display.input.resetPosition(); }\n });\n\n option(\"tabindex\", null, function (cm, val) { return cm.display.input.getField().tabIndex = val || \"\"; });\n option(\"autofocus\", null);\n option(\"direction\", \"ltr\", function (cm, val) { return cm.doc.setDirection(val); }, true);\n option(\"phrases\", null);\n }\n\n function dragDropChanged(cm, value, old) {\n var wasOn = old && old != Init;\n if (!value != !wasOn) {\n var funcs = cm.display.dragFunctions;\n var toggle = value ? on : off;\n toggle(cm.display.scroller, \"dragstart\", funcs.start);\n toggle(cm.display.scroller, \"dragenter\", funcs.enter);\n toggle(cm.display.scroller, \"dragover\", funcs.over);\n toggle(cm.display.scroller, \"dragleave\", funcs.leave);\n toggle(cm.display.scroller, \"drop\", funcs.drop);\n }\n }\n\n function wrappingChanged(cm) {\n if (cm.options.lineWrapping) {\n addClass(cm.display.wrapper, \"CodeMirror-wrap\");\n cm.display.sizer.style.minWidth = \"\";\n cm.display.sizerWidth = null;\n } else {\n rmClass(cm.display.wrapper, \"CodeMirror-wrap\");\n findMaxLine(cm);\n }\n estimateLineHeights(cm);\n regChange(cm);\n clearCaches(cm);\n setTimeout(function () { return updateScrollbars(cm); }, 100);\n }\n\n // A CodeMirror instance represents an editor. This is the object\n // that user code is usually dealing with.\n\n function CodeMirror(place, options) {\n var this$1 = this;\n\n if (!(this instanceof CodeMirror)) { return new CodeMirror(place, options) }\n\n this.options = options = options ? copyObj(options) : {};\n // Determine effective options based on given values and defaults.\n copyObj(defaults, options, false);\n\n var doc = options.value;\n if (typeof doc == \"string\") { doc = new Doc(doc, options.mode, null, options.lineSeparator, options.direction); }\n else if (options.mode) { doc.modeOption = options.mode; }\n this.doc = doc;\n\n var input = new CodeMirror.inputStyles[options.inputStyle](this);\n var display = this.display = new Display(place, doc, input, options);\n display.wrapper.CodeMirror = this;\n themeChanged(this);\n if (options.lineWrapping)\n { this.display.wrapper.className += \" CodeMirror-wrap\"; }\n initScrollbars(this);\n\n this.state = {\n keyMaps: [], // stores maps added by addKeyMap\n overlays: [], // highlighting overlays, as added by addOverlay\n modeGen: 0, // bumped when mode/overlay changes, used to invalidate highlighting info\n overwrite: false,\n delayingBlurEvent: false,\n focused: false,\n suppressEdits: false, // used to disable editing during key handlers when in readOnly mode\n pasteIncoming: -1, cutIncoming: -1, // help recognize paste/cut edits in input.poll\n selectingText: false,\n draggingText: false,\n highlight: new Delayed(), // stores highlight worker timeout\n keySeq: null, // Unfinished key sequence\n specialChars: null\n };\n\n if (options.autofocus && !mobile) { display.input.focus(); }\n\n // Override magic textarea content restore that IE sometimes does\n // on our hidden textarea on reload\n if (ie && ie_version < 11) { setTimeout(function () { return this$1.display.input.reset(true); }, 20); }\n\n registerEventHandlers(this);\n ensureGlobalHandlers();\n\n startOperation(this);\n this.curOp.forceUpdate = true;\n attachDoc(this, doc);\n\n if ((options.autofocus && !mobile) || this.hasFocus())\n { setTimeout(function () {\n if (this$1.hasFocus() && !this$1.state.focused) { onFocus(this$1); }\n }, 20); }\n else\n { onBlur(this); }\n\n for (var opt in optionHandlers) { if (optionHandlers.hasOwnProperty(opt))\n { optionHandlers[opt](this, options[opt], Init); } }\n maybeUpdateLineNumberWidth(this);\n if (options.finishInit) { options.finishInit(this); }\n for (var i = 0; i < initHooks.length; ++i) { initHooks[i](this); }\n endOperation(this);\n // Suppress optimizelegibility in Webkit, since it breaks text\n // measuring on line wrapping boundaries.\n if (webkit && options.lineWrapping &&\n getComputedStyle(display.lineDiv).textRendering == \"optimizelegibility\")\n { display.lineDiv.style.textRendering = \"auto\"; }\n }\n\n // The default configuration options.\n CodeMirror.defaults = defaults;\n // Functions to run when options are changed.\n CodeMirror.optionHandlers = optionHandlers;\n\n // Attach the necessary event handlers when initializing the editor\n function registerEventHandlers(cm) {\n var d = cm.display;\n on(d.scroller, \"mousedown\", operation(cm, onMouseDown));\n // Older IE's will not fire a second mousedown for a double click\n if (ie && ie_version < 11)\n { on(d.scroller, \"dblclick\", operation(cm, function (e) {\n if (signalDOMEvent(cm, e)) { return }\n var pos = posFromMouse(cm, e);\n if (!pos || clickInGutter(cm, e) || eventInWidget(cm.display, e)) { return }\n e_preventDefault(e);\n var word = cm.findWordAt(pos);\n extendSelection(cm.doc, word.anchor, word.head);\n })); }\n else\n { on(d.scroller, \"dblclick\", function (e) { return signalDOMEvent(cm, e) || e_preventDefault(e); }); }\n // Some browsers fire contextmenu *after* opening the menu, at\n // which point we can't mess with it anymore. Context menu is\n // handled in onMouseDown for these browsers.\n on(d.scroller, \"contextmenu\", function (e) { return onContextMenu(cm, e); });\n on(d.input.getField(), \"contextmenu\", function (e) {\n if (!d.scroller.contains(e.target)) { onContextMenu(cm, e); }\n });\n\n // Used to suppress mouse event handling when a touch happens\n var touchFinished, prevTouch = {end: 0};\n function finishTouch() {\n if (d.activeTouch) {\n touchFinished = setTimeout(function () { return d.activeTouch = null; }, 1000);\n prevTouch = d.activeTouch;\n prevTouch.end = +new Date;\n }\n }\n function isMouseLikeTouchEvent(e) {\n if (e.touches.length != 1) { return false }\n var touch = e.touches[0];\n return touch.radiusX <= 1 && touch.radiusY <= 1\n }\n function farAway(touch, other) {\n if (other.left == null) { return true }\n var dx = other.left - touch.left, dy = other.top - touch.top;\n return dx * dx + dy * dy > 20 * 20\n }\n on(d.scroller, \"touchstart\", function (e) {\n if (!signalDOMEvent(cm, e) && !isMouseLikeTouchEvent(e) && !clickInGutter(cm, e)) {\n d.input.ensurePolled();\n clearTimeout(touchFinished);\n var now = +new Date;\n d.activeTouch = {start: now, moved: false,\n prev: now - prevTouch.end <= 300 ? prevTouch : null};\n if (e.touches.length == 1) {\n d.activeTouch.left = e.touches[0].pageX;\n d.activeTouch.top = e.touches[0].pageY;\n }\n }\n });\n on(d.scroller, \"touchmove\", function () {\n if (d.activeTouch) { d.activeTouch.moved = true; }\n });\n on(d.scroller, \"touchend\", function (e) {\n var touch = d.activeTouch;\n if (touch && !eventInWidget(d, e) && touch.left != null &&\n !touch.moved && new Date - touch.start < 300) {\n var pos = cm.coordsChar(d.activeTouch, \"page\"), range;\n if (!touch.prev || farAway(touch, touch.prev)) // Single tap\n { range = new Range(pos, pos); }\n else if (!touch.prev.prev || farAway(touch, touch.prev.prev)) // Double tap\n { range = cm.findWordAt(pos); }\n else // Triple tap\n { range = new Range(Pos(pos.line, 0), clipPos(cm.doc, Pos(pos.line + 1, 0))); }\n cm.setSelection(range.anchor, range.head);\n cm.focus();\n e_preventDefault(e);\n }\n finishTouch();\n });\n on(d.scroller, \"touchcancel\", finishTouch);\n\n // Sync scrolling between fake scrollbars and real scrollable\n // area, ensure viewport is updated when scrolling.\n on(d.scroller, \"scroll\", function () {\n if (d.scroller.clientHeight) {\n updateScrollTop(cm, d.scroller.scrollTop);\n setScrollLeft(cm, d.scroller.scrollLeft, true);\n signal(cm, \"scroll\", cm);\n }\n });\n\n // Listen to wheel events in order to try and update the viewport on time.\n on(d.scroller, \"mousewheel\", function (e) { return onScrollWheel(cm, e); });\n on(d.scroller, \"DOMMouseScroll\", function (e) { return onScrollWheel(cm, e); });\n\n // Prevent wrapper from ever scrolling\n on(d.wrapper, \"scroll\", function () { return d.wrapper.scrollTop = d.wrapper.scrollLeft = 0; });\n\n d.dragFunctions = {\n enter: function (e) {if (!signalDOMEvent(cm, e)) { e_stop(e); }},\n over: function (e) {if (!signalDOMEvent(cm, e)) { onDragOver(cm, e); e_stop(e); }},\n start: function (e) { return onDragStart(cm, e); },\n drop: operation(cm, onDrop),\n leave: function (e) {if (!signalDOMEvent(cm, e)) { clearDragCursor(cm); }}\n };\n\n var inp = d.input.getField();\n on(inp, \"keyup\", function (e) { return onKeyUp.call(cm, e); });\n on(inp, \"keydown\", operation(cm, onKeyDown));\n on(inp, \"keypress\", operation(cm, onKeyPress));\n on(inp, \"focus\", function (e) { return onFocus(cm, e); });\n on(inp, \"blur\", function (e) { return onBlur(cm, e); });\n }\n\n var initHooks = [];\n CodeMirror.defineInitHook = function (f) { return initHooks.push(f); };\n\n // Indent the given line. The how parameter can be \"smart\",\n // \"add\"/null, \"subtract\", or \"prev\". When aggressive is false\n // (typically set to true for forced single-line indents), empty\n // lines are not indented, and places where the mode returns Pass\n // are left alone.\n function indentLine(cm, n, how, aggressive) {\n var doc = cm.doc, state;\n if (how == null) { how = \"add\"; }\n if (how == \"smart\") {\n // Fall back to \"prev\" when the mode doesn't have an indentation\n // method.\n if (!doc.mode.indent) { how = \"prev\"; }\n else { state = getContextBefore(cm, n).state; }\n }\n\n var tabSize = cm.options.tabSize;\n var line = getLine(doc, n), curSpace = countColumn(line.text, null, tabSize);\n if (line.stateAfter) { line.stateAfter = null; }\n var curSpaceString = line.text.match(/^\\s*/)[0], indentation;\n if (!aggressive && !/\\S/.test(line.text)) {\n indentation = 0;\n how = \"not\";\n } else if (how == \"smart\") {\n indentation = doc.mode.indent(state, line.text.slice(curSpaceString.length), line.text);\n if (indentation == Pass || indentation > 150) {\n if (!aggressive) { return }\n how = \"prev\";\n }\n }\n if (how == \"prev\") {\n if (n > doc.first) { indentation = countColumn(getLine(doc, n-1).text, null, tabSize); }\n else { indentation = 0; }\n } else if (how == \"add\") {\n indentation = curSpace + cm.options.indentUnit;\n } else if (how == \"subtract\") {\n indentation = curSpace - cm.options.indentUnit;\n } else if (typeof how == \"number\") {\n indentation = curSpace + how;\n }\n indentation = Math.max(0, indentation);\n\n var indentString = \"\", pos = 0;\n if (cm.options.indentWithTabs)\n { for (var i = Math.floor(indentation / tabSize); i; --i) {pos += tabSize; indentString += \"\\t\";} }\n if (pos < indentation) { indentString += spaceStr(indentation - pos); }\n\n if (indentString != curSpaceString) {\n replaceRange(doc, indentString, Pos(n, 0), Pos(n, curSpaceString.length), \"+input\");\n line.stateAfter = null;\n return true\n } else {\n // Ensure that, if the cursor was in the whitespace at the start\n // of the line, it is moved to the end of that space.\n for (var i$1 = 0; i$1 < doc.sel.ranges.length; i$1++) {\n var range = doc.sel.ranges[i$1];\n if (range.head.line == n && range.head.ch < curSpaceString.length) {\n var pos$1 = Pos(n, curSpaceString.length);\n replaceOneSelection(doc, i$1, new Range(pos$1, pos$1));\n break\n }\n }\n }\n }\n\n // This will be set to a {lineWise: bool, text: [string]} object, so\n // that, when pasting, we know what kind of selections the copied\n // text was made out of.\n var lastCopied = null;\n\n function setLastCopied(newLastCopied) {\n lastCopied = newLastCopied;\n }\n\n function applyTextInput(cm, inserted, deleted, sel, origin) {\n var doc = cm.doc;\n cm.display.shift = false;\n if (!sel) { sel = doc.sel; }\n\n var recent = +new Date - 200;\n var paste = origin == \"paste\" || cm.state.pasteIncoming > recent;\n var textLines = splitLinesAuto(inserted), multiPaste = null;\n // When pasting N lines into N selections, insert one line per selection\n if (paste && sel.ranges.length > 1) {\n if (lastCopied && lastCopied.text.join(\"\\n\") == inserted) {\n if (sel.ranges.length % lastCopied.text.length == 0) {\n multiPaste = [];\n for (var i = 0; i < lastCopied.text.length; i++)\n { multiPaste.push(doc.splitLines(lastCopied.text[i])); }\n }\n } else if (textLines.length == sel.ranges.length && cm.options.pasteLinesPerSelection) {\n multiPaste = map(textLines, function (l) { return [l]; });\n }\n }\n\n var updateInput = cm.curOp.updateInput;\n // Normal behavior is to insert the new text into every selection\n for (var i$1 = sel.ranges.length - 1; i$1 >= 0; i$1--) {\n var range = sel.ranges[i$1];\n var from = range.from(), to = range.to();\n if (range.empty()) {\n if (deleted && deleted > 0) // Handle deletion\n { from = Pos(from.line, from.ch - deleted); }\n else if (cm.state.overwrite && !paste) // Handle overwrite\n { to = Pos(to.line, Math.min(getLine(doc, to.line).text.length, to.ch + lst(textLines).length)); }\n else if (paste && lastCopied && lastCopied.lineWise && lastCopied.text.join(\"\\n\") == textLines.join(\"\\n\"))\n { from = to = Pos(from.line, 0); }\n }\n var changeEvent = {from: from, to: to, text: multiPaste ? multiPaste[i$1 % multiPaste.length] : textLines,\n origin: origin || (paste ? \"paste\" : cm.state.cutIncoming > recent ? \"cut\" : \"+input\")};\n makeChange(cm.doc, changeEvent);\n signalLater(cm, \"inputRead\", cm, changeEvent);\n }\n if (inserted && !paste)\n { triggerElectric(cm, inserted); }\n\n ensureCursorVisible(cm);\n if (cm.curOp.updateInput < 2) { cm.curOp.updateInput = updateInput; }\n cm.curOp.typing = true;\n cm.state.pasteIncoming = cm.state.cutIncoming = -1;\n }\n\n function handlePaste(e, cm) {\n var pasted = e.clipboardData && e.clipboardData.getData(\"Text\");\n if (pasted) {\n e.preventDefault();\n if (!cm.isReadOnly() && !cm.options.disableInput)\n { runInOp(cm, function () { return applyTextInput(cm, pasted, 0, null, \"paste\"); }); }\n return true\n }\n }\n\n function triggerElectric(cm, inserted) {\n // When an 'electric' character is inserted, immediately trigger a reindent\n if (!cm.options.electricChars || !cm.options.smartIndent) { return }\n var sel = cm.doc.sel;\n\n for (var i = sel.ranges.length - 1; i >= 0; i--) {\n var range = sel.ranges[i];\n if (range.head.ch > 100 || (i && sel.ranges[i - 1].head.line == range.head.line)) { continue }\n var mode = cm.getModeAt(range.head);\n var indented = false;\n if (mode.electricChars) {\n for (var j = 0; j < mode.electricChars.length; j++)\n { if (inserted.indexOf(mode.electricChars.charAt(j)) > -1) {\n indented = indentLine(cm, range.head.line, \"smart\");\n break\n } }\n } else if (mode.electricInput) {\n if (mode.electricInput.test(getLine(cm.doc, range.head.line).text.slice(0, range.head.ch)))\n { indented = indentLine(cm, range.head.line, \"smart\"); }\n }\n if (indented) { signalLater(cm, \"electricInput\", cm, range.head.line); }\n }\n }\n\n function copyableRanges(cm) {\n var text = [], ranges = [];\n for (var i = 0; i < cm.doc.sel.ranges.length; i++) {\n var line = cm.doc.sel.ranges[i].head.line;\n var lineRange = {anchor: Pos(line, 0), head: Pos(line + 1, 0)};\n ranges.push(lineRange);\n text.push(cm.getRange(lineRange.anchor, lineRange.head));\n }\n return {text: text, ranges: ranges}\n }\n\n function disableBrowserMagic(field, spellcheck, autocorrect, autocapitalize) {\n field.setAttribute(\"autocorrect\", autocorrect ? \"\" : \"off\");\n field.setAttribute(\"autocapitalize\", autocapitalize ? \"\" : \"off\");\n field.setAttribute(\"spellcheck\", !!spellcheck);\n }\n\n function hiddenTextarea() {\n var te = elt(\"textarea\", null, null, \"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; outline: none\");\n var div = elt(\"div\", [te], null, \"overflow: hidden; position: relative; width: 3px; height: 0px;\");\n // The textarea is kept positioned near the cursor to prevent the\n // fact that it'll be scrolled into view on input from scrolling\n // our fake cursor out of view. On webkit, when wrap=off, paste is\n // very slow. So make the area wide instead.\n if (webkit) { te.style.width = \"1000px\"; }\n else { te.setAttribute(\"wrap\", \"off\"); }\n // If border: 0; -- iOS fails to open keyboard (issue #1287)\n if (ios) { te.style.border = \"1px solid black\"; }\n disableBrowserMagic(te);\n return div\n }\n\n // The publicly visible API. Note that methodOp(f) means\n // 'wrap f in an operation, performed on its `this` parameter'.\n\n // This is not the complete set of editor methods. Most of the\n // methods defined on the Doc type are also injected into\n // CodeMirror.prototype, for backwards compatibility and\n // convenience.\n\n function addEditorMethods(CodeMirror) {\n var optionHandlers = CodeMirror.optionHandlers;\n\n var helpers = CodeMirror.helpers = {};\n\n CodeMirror.prototype = {\n constructor: CodeMirror,\n focus: function(){window.focus(); this.display.input.focus();},\n\n setOption: function(option, value) {\n var options = this.options, old = options[option];\n if (options[option] == value && option != \"mode\") { return }\n options[option] = value;\n if (optionHandlers.hasOwnProperty(option))\n { operation(this, optionHandlers[option])(this, value, old); }\n signal(this, \"optionChange\", this, option);\n },\n\n getOption: function(option) {return this.options[option]},\n getDoc: function() {return this.doc},\n\n addKeyMap: function(map, bottom) {\n this.state.keyMaps[bottom ? \"push\" : \"unshift\"](getKeyMap(map));\n },\n removeKeyMap: function(map) {\n var maps = this.state.keyMaps;\n for (var i = 0; i < maps.length; ++i)\n { if (maps[i] == map || maps[i].name == map) {\n maps.splice(i, 1);\n return true\n } }\n },\n\n addOverlay: methodOp(function(spec, options) {\n var mode = spec.token ? spec : CodeMirror.getMode(this.options, spec);\n if (mode.startState) { throw new Error(\"Overlays may not be stateful.\") }\n insertSorted(this.state.overlays,\n {mode: mode, modeSpec: spec, opaque: options && options.opaque,\n priority: (options && options.priority) || 0},\n function (overlay) { return overlay.priority; });\n this.state.modeGen++;\n regChange(this);\n }),\n removeOverlay: methodOp(function(spec) {\n var overlays = this.state.overlays;\n for (var i = 0; i < overlays.length; ++i) {\n var cur = overlays[i].modeSpec;\n if (cur == spec || typeof spec == \"string\" && cur.name == spec) {\n overlays.splice(i, 1);\n this.state.modeGen++;\n regChange(this);\n return\n }\n }\n }),\n\n indentLine: methodOp(function(n, dir, aggressive) {\n if (typeof dir != \"string\" && typeof dir != \"number\") {\n if (dir == null) { dir = this.options.smartIndent ? \"smart\" : \"prev\"; }\n else { dir = dir ? \"add\" : \"subtract\"; }\n }\n if (isLine(this.doc, n)) { indentLine(this, n, dir, aggressive); }\n }),\n indentSelection: methodOp(function(how) {\n var ranges = this.doc.sel.ranges, end = -1;\n for (var i = 0; i < ranges.length; i++) {\n var range = ranges[i];\n if (!range.empty()) {\n var from = range.from(), to = range.to();\n var start = Math.max(end, from.line);\n end = Math.min(this.lastLine(), to.line - (to.ch ? 0 : 1)) + 1;\n for (var j = start; j < end; ++j)\n { indentLine(this, j, how); }\n var newRanges = this.doc.sel.ranges;\n if (from.ch == 0 && ranges.length == newRanges.length && newRanges[i].from().ch > 0)\n { replaceOneSelection(this.doc, i, new Range(from, newRanges[i].to()), sel_dontScroll); }\n } else if (range.head.line > end) {\n indentLine(this, range.head.line, how, true);\n end = range.head.line;\n if (i == this.doc.sel.primIndex) { ensureCursorVisible(this); }\n }\n }\n }),\n\n // Fetch the parser token for a given character. Useful for hacks\n // that want to inspect the mode state (say, for completion).\n getTokenAt: function(pos, precise) {\n return takeToken(this, pos, precise)\n },\n\n getLineTokens: function(line, precise) {\n return takeToken(this, Pos(line), precise, true)\n },\n\n getTokenTypeAt: function(pos) {\n pos = clipPos(this.doc, pos);\n var styles = getLineStyles(this, getLine(this.doc, pos.line));\n var before = 0, after = (styles.length - 1) / 2, ch = pos.ch;\n var type;\n if (ch == 0) { type = styles[2]; }\n else { for (;;) {\n var mid = (before + after) >> 1;\n if ((mid ? styles[mid * 2 - 1] : 0) >= ch) { after = mid; }\n else if (styles[mid * 2 + 1] < ch) { before = mid + 1; }\n else { type = styles[mid * 2 + 2]; break }\n } }\n var cut = type ? type.indexOf(\"overlay \") : -1;\n return cut < 0 ? type : cut == 0 ? null : type.slice(0, cut - 1)\n },\n\n getModeAt: function(pos) {\n var mode = this.doc.mode;\n if (!mode.innerMode) { return mode }\n return CodeMirror.innerMode(mode, this.getTokenAt(pos).state).mode\n },\n\n getHelper: function(pos, type) {\n return this.getHelpers(pos, type)[0]\n },\n\n getHelpers: function(pos, type) {\n var found = [];\n if (!helpers.hasOwnProperty(type)) { return found }\n var help = helpers[type], mode = this.getModeAt(pos);\n if (typeof mode[type] == \"string\") {\n if (help[mode[type]]) { found.push(help[mode[type]]); }\n } else if (mode[type]) {\n for (var i = 0; i < mode[type].length; i++) {\n var val = help[mode[type][i]];\n if (val) { found.push(val); }\n }\n } else if (mode.helperType && help[mode.helperType]) {\n found.push(help[mode.helperType]);\n } else if (help[mode.name]) {\n found.push(help[mode.name]);\n }\n for (var i$1 = 0; i$1 < help._global.length; i$1++) {\n var cur = help._global[i$1];\n if (cur.pred(mode, this) && indexOf(found, cur.val) == -1)\n { found.push(cur.val); }\n }\n return found\n },\n\n getStateAfter: function(line, precise) {\n var doc = this.doc;\n line = clipLine(doc, line == null ? doc.first + doc.size - 1: line);\n return getContextBefore(this, line + 1, precise).state\n },\n\n cursorCoords: function(start, mode) {\n var pos, range = this.doc.sel.primary();\n if (start == null) { pos = range.head; }\n else if (typeof start == \"object\") { pos = clipPos(this.doc, start); }\n else { pos = start ? range.from() : range.to(); }\n return cursorCoords(this, pos, mode || \"page\")\n },\n\n charCoords: function(pos, mode) {\n return charCoords(this, clipPos(this.doc, pos), mode || \"page\")\n },\n\n coordsChar: function(coords, mode) {\n coords = fromCoordSystem(this, coords, mode || \"page\");\n return coordsChar(this, coords.left, coords.top)\n },\n\n lineAtHeight: function(height, mode) {\n height = fromCoordSystem(this, {top: height, left: 0}, mode || \"page\").top;\n return lineAtHeight(this.doc, height + this.display.viewOffset)\n },\n heightAtLine: function(line, mode, includeWidgets) {\n var end = false, lineObj;\n if (typeof line == \"number\") {\n var last = this.doc.first + this.doc.size - 1;\n if (line < this.doc.first) { line = this.doc.first; }\n else if (line > last) { line = last; end = true; }\n lineObj = getLine(this.doc, line);\n } else {\n lineObj = line;\n }\n return intoCoordSystem(this, lineObj, {top: 0, left: 0}, mode || \"page\", includeWidgets || end).top +\n (end ? this.doc.height - heightAtLine(lineObj) : 0)\n },\n\n defaultTextHeight: function() { return textHeight(this.display) },\n defaultCharWidth: function() { return charWidth(this.display) },\n\n getViewport: function() { return {from: this.display.viewFrom, to: this.display.viewTo}},\n\n addWidget: function(pos, node, scroll, vert, horiz) {\n var display = this.display;\n pos = cursorCoords(this, clipPos(this.doc, pos));\n var top = pos.bottom, left = pos.left;\n node.style.position = \"absolute\";\n node.setAttribute(\"cm-ignore-events\", \"true\");\n this.display.input.setUneditable(node);\n display.sizer.appendChild(node);\n if (vert == \"over\") {\n top = pos.top;\n } else if (vert == \"above\" || vert == \"near\") {\n var vspace = Math.max(display.wrapper.clientHeight, this.doc.height),\n hspace = Math.max(display.sizer.clientWidth, display.lineSpace.clientWidth);\n // Default to positioning above (if specified and possible); otherwise default to positioning below\n if ((vert == 'above' || pos.bottom + node.offsetHeight > vspace) && pos.top > node.offsetHeight)\n { top = pos.top - node.offsetHeight; }\n else if (pos.bottom + node.offsetHeight <= vspace)\n { top = pos.bottom; }\n if (left + node.offsetWidth > hspace)\n { left = hspace - node.offsetWidth; }\n }\n node.style.top = top + \"px\";\n node.style.left = node.style.right = \"\";\n if (horiz == \"right\") {\n left = display.sizer.clientWidth - node.offsetWidth;\n node.style.right = \"0px\";\n } else {\n if (horiz == \"left\") { left = 0; }\n else if (horiz == \"middle\") { left = (display.sizer.clientWidth - node.offsetWidth) / 2; }\n node.style.left = left + \"px\";\n }\n if (scroll)\n { scrollIntoView(this, {left: left, top: top, right: left + node.offsetWidth, bottom: top + node.offsetHeight}); }\n },\n\n triggerOnKeyDown: methodOp(onKeyDown),\n triggerOnKeyPress: methodOp(onKeyPress),\n triggerOnKeyUp: onKeyUp,\n triggerOnMouseDown: methodOp(onMouseDown),\n\n execCommand: function(cmd) {\n if (commands.hasOwnProperty(cmd))\n { return commands[cmd].call(null, this) }\n },\n\n triggerElectric: methodOp(function(text) { triggerElectric(this, text); }),\n\n findPosH: function(from, amount, unit, visually) {\n var dir = 1;\n if (amount < 0) { dir = -1; amount = -amount; }\n var cur = clipPos(this.doc, from);\n for (var i = 0; i < amount; ++i) {\n cur = findPosH(this.doc, cur, dir, unit, visually);\n if (cur.hitSide) { break }\n }\n return cur\n },\n\n moveH: methodOp(function(dir, unit) {\n var this$1 = this;\n\n this.extendSelectionsBy(function (range) {\n if (this$1.display.shift || this$1.doc.extend || range.empty())\n { return findPosH(this$1.doc, range.head, dir, unit, this$1.options.rtlMoveVisually) }\n else\n { return dir < 0 ? range.from() : range.to() }\n }, sel_move);\n }),\n\n deleteH: methodOp(function(dir, unit) {\n var sel = this.doc.sel, doc = this.doc;\n if (sel.somethingSelected())\n { doc.replaceSelection(\"\", null, \"+delete\"); }\n else\n { deleteNearSelection(this, function (range) {\n var other = findPosH(doc, range.head, dir, unit, false);\n return dir < 0 ? {from: other, to: range.head} : {from: range.head, to: other}\n }); }\n }),\n\n findPosV: function(from, amount, unit, goalColumn) {\n var dir = 1, x = goalColumn;\n if (amount < 0) { dir = -1; amount = -amount; }\n var cur = clipPos(this.doc, from);\n for (var i = 0; i < amount; ++i) {\n var coords = cursorCoords(this, cur, \"div\");\n if (x == null) { x = coords.left; }\n else { coords.left = x; }\n cur = findPosV(this, coords, dir, unit);\n if (cur.hitSide) { break }\n }\n return cur\n },\n\n moveV: methodOp(function(dir, unit) {\n var this$1 = this;\n\n var doc = this.doc, goals = [];\n var collapse = !this.display.shift && !doc.extend && doc.sel.somethingSelected();\n doc.extendSelectionsBy(function (range) {\n if (collapse)\n { return dir < 0 ? range.from() : range.to() }\n var headPos = cursorCoords(this$1, range.head, \"div\");\n if (range.goalColumn != null) { headPos.left = range.goalColumn; }\n goals.push(headPos.left);\n var pos = findPosV(this$1, headPos, dir, unit);\n if (unit == \"page\" && range == doc.sel.primary())\n { addToScrollTop(this$1, charCoords(this$1, pos, \"div\").top - headPos.top); }\n return pos\n }, sel_move);\n if (goals.length) { for (var i = 0; i < doc.sel.ranges.length; i++)\n { doc.sel.ranges[i].goalColumn = goals[i]; } }\n }),\n\n // Find the word at the given position (as returned by coordsChar).\n findWordAt: function(pos) {\n var doc = this.doc, line = getLine(doc, pos.line).text;\n var start = pos.ch, end = pos.ch;\n if (line) {\n var helper = this.getHelper(pos, \"wordChars\");\n if ((pos.sticky == \"before\" || end == line.length) && start) { --start; } else { ++end; }\n var startChar = line.charAt(start);\n var check = isWordChar(startChar, helper)\n ? function (ch) { return isWordChar(ch, helper); }\n : /\\s/.test(startChar) ? function (ch) { return /\\s/.test(ch); }\n : function (ch) { return (!/\\s/.test(ch) && !isWordChar(ch)); };\n while (start > 0 && check(line.charAt(start - 1))) { --start; }\n while (end < line.length && check(line.charAt(end))) { ++end; }\n }\n return new Range(Pos(pos.line, start), Pos(pos.line, end))\n },\n\n toggleOverwrite: function(value) {\n if (value != null && value == this.state.overwrite) { return }\n if (this.state.overwrite = !this.state.overwrite)\n { addClass(this.display.cursorDiv, \"CodeMirror-overwrite\"); }\n else\n { rmClass(this.display.cursorDiv, \"CodeMirror-overwrite\"); }\n\n signal(this, \"overwriteToggle\", this, this.state.overwrite);\n },\n hasFocus: function() { return this.display.input.getField() == activeElt() },\n isReadOnly: function() { return !!(this.options.readOnly || this.doc.cantEdit) },\n\n scrollTo: methodOp(function (x, y) { scrollToCoords(this, x, y); }),\n getScrollInfo: function() {\n var scroller = this.display.scroller;\n return {left: scroller.scrollLeft, top: scroller.scrollTop,\n height: scroller.scrollHeight - scrollGap(this) - this.display.barHeight,\n width: scroller.scrollWidth - scrollGap(this) - this.display.barWidth,\n clientHeight: displayHeight(this), clientWidth: displayWidth(this)}\n },\n\n scrollIntoView: methodOp(function(range, margin) {\n if (range == null) {\n range = {from: this.doc.sel.primary().head, to: null};\n if (margin == null) { margin = this.options.cursorScrollMargin; }\n } else if (typeof range == \"number\") {\n range = {from: Pos(range, 0), to: null};\n } else if (range.from == null) {\n range = {from: range, to: null};\n }\n if (!range.to) { range.to = range.from; }\n range.margin = margin || 0;\n\n if (range.from.line != null) {\n scrollToRange(this, range);\n } else {\n scrollToCoordsRange(this, range.from, range.to, range.margin);\n }\n }),\n\n setSize: methodOp(function(width, height) {\n var this$1 = this;\n\n var interpret = function (val) { return typeof val == \"number\" || /^\\d+$/.test(String(val)) ? val + \"px\" : val; };\n if (width != null) { this.display.wrapper.style.width = interpret(width); }\n if (height != null) { this.display.wrapper.style.height = interpret(height); }\n if (this.options.lineWrapping) { clearLineMeasurementCache(this); }\n var lineNo = this.display.viewFrom;\n this.doc.iter(lineNo, this.display.viewTo, function (line) {\n if (line.widgets) { for (var i = 0; i < line.widgets.length; i++)\n { if (line.widgets[i].noHScroll) { regLineChange(this$1, lineNo, \"widget\"); break } } }\n ++lineNo;\n });\n this.curOp.forceUpdate = true;\n signal(this, \"refresh\", this);\n }),\n\n operation: function(f){return runInOp(this, f)},\n startOperation: function(){return startOperation(this)},\n endOperation: function(){return endOperation(this)},\n\n refresh: methodOp(function() {\n var oldHeight = this.display.cachedTextHeight;\n regChange(this);\n this.curOp.forceUpdate = true;\n clearCaches(this);\n scrollToCoords(this, this.doc.scrollLeft, this.doc.scrollTop);\n updateGutterSpace(this.display);\n if (oldHeight == null || Math.abs(oldHeight - textHeight(this.display)) > .5 || this.options.lineWrapping)\n { estimateLineHeights(this); }\n signal(this, \"refresh\", this);\n }),\n\n swapDoc: methodOp(function(doc) {\n var old = this.doc;\n old.cm = null;\n // Cancel the current text selection if any (#5821)\n if (this.state.selectingText) { this.state.selectingText(); }\n attachDoc(this, doc);\n clearCaches(this);\n this.display.input.reset();\n scrollToCoords(this, doc.scrollLeft, doc.scrollTop);\n this.curOp.forceScroll = true;\n signalLater(this, \"swapDoc\", this, old);\n return old\n }),\n\n phrase: function(phraseText) {\n var phrases = this.options.phrases;\n return phrases && Object.prototype.hasOwnProperty.call(phrases, phraseText) ? phrases[phraseText] : phraseText\n },\n\n getInputField: function(){return this.display.input.getField()},\n getWrapperElement: function(){return this.display.wrapper},\n getScrollerElement: function(){return this.display.scroller},\n getGutterElement: function(){return this.display.gutters}\n };\n eventMixin(CodeMirror);\n\n CodeMirror.registerHelper = function(type, name, value) {\n if (!helpers.hasOwnProperty(type)) { helpers[type] = CodeMirror[type] = {_global: []}; }\n helpers[type][name] = value;\n };\n CodeMirror.registerGlobalHelper = function(type, name, predicate, value) {\n CodeMirror.registerHelper(type, name, value);\n helpers[type]._global.push({pred: predicate, val: value});\n };\n }\n\n // Used for horizontal relative motion. Dir is -1 or 1 (left or\n // right), unit can be \"codepoint\", \"char\", \"column\" (like char, but\n // doesn't cross line boundaries), \"word\" (across next word), or\n // \"group\" (to the start of next group of word or\n // non-word-non-whitespace chars). The visually param controls\n // whether, in right-to-left text, direction 1 means to move towards\n // the next index in the string, or towards the character to the right\n // of the current position. The resulting position will have a\n // hitSide=true property if it reached the end of the document.\n function findPosH(doc, pos, dir, unit, visually) {\n var oldPos = pos;\n var origDir = dir;\n var lineObj = getLine(doc, pos.line);\n var lineDir = visually && doc.direction == \"rtl\" ? -dir : dir;\n function findNextLine() {\n var l = pos.line + lineDir;\n if (l < doc.first || l >= doc.first + doc.size) { return false }\n pos = new Pos(l, pos.ch, pos.sticky);\n return lineObj = getLine(doc, l)\n }\n function moveOnce(boundToLine) {\n var next;\n if (unit == \"codepoint\") {\n var ch = lineObj.text.charCodeAt(pos.ch + (unit > 0 ? 0 : -1));\n if (isNaN(ch)) { next = null; }\n else { next = new Pos(pos.line, Math.max(0, Math.min(lineObj.text.length, pos.ch + dir * (ch >= 0xD800 && ch < 0xDC00 ? 2 : 1))),\n -dir); }\n } else if (visually) {\n next = moveVisually(doc.cm, lineObj, pos, dir);\n } else {\n next = moveLogically(lineObj, pos, dir);\n }\n if (next == null) {\n if (!boundToLine && findNextLine())\n { pos = endOfLine(visually, doc.cm, lineObj, pos.line, lineDir); }\n else\n { return false }\n } else {\n pos = next;\n }\n return true\n }\n\n if (unit == \"char\" || unit == \"codepoint\") {\n moveOnce();\n } else if (unit == \"column\") {\n moveOnce(true);\n } else if (unit == \"word\" || unit == \"group\") {\n var sawType = null, group = unit == \"group\";\n var helper = doc.cm && doc.cm.getHelper(pos, \"wordChars\");\n for (var first = true;; first = false) {\n if (dir < 0 && !moveOnce(!first)) { break }\n var cur = lineObj.text.charAt(pos.ch) || \"\\n\";\n var type = isWordChar(cur, helper) ? \"w\"\n : group && cur == \"\\n\" ? \"n\"\n : !group || /\\s/.test(cur) ? null\n : \"p\";\n if (group && !first && !type) { type = \"s\"; }\n if (sawType && sawType != type) {\n if (dir < 0) {dir = 1; moveOnce(); pos.sticky = \"after\";}\n break\n }\n\n if (type) { sawType = type; }\n if (dir > 0 && !moveOnce(!first)) { break }\n }\n }\n var result = skipAtomic(doc, pos, oldPos, origDir, true);\n if (equalCursorPos(oldPos, result)) { result.hitSide = true; }\n return result\n }\n\n // For relative vertical movement. Dir may be -1 or 1. Unit can be\n // \"page\" or \"line\". The resulting position will have a hitSide=true\n // property if it reached the end of the document.\n function findPosV(cm, pos, dir, unit) {\n var doc = cm.doc, x = pos.left, y;\n if (unit == \"page\") {\n var pageSize = Math.min(cm.display.wrapper.clientHeight, window.innerHeight || document.documentElement.clientHeight);\n var moveAmount = Math.max(pageSize - .5 * textHeight(cm.display), 3);\n y = (dir > 0 ? pos.bottom : pos.top) + dir * moveAmount;\n\n } else if (unit == \"line\") {\n y = dir > 0 ? pos.bottom + 3 : pos.top - 3;\n }\n var target;\n for (;;) {\n target = coordsChar(cm, x, y);\n if (!target.outside) { break }\n if (dir < 0 ? y <= 0 : y >= doc.height) { target.hitSide = true; break }\n y += dir * 5;\n }\n return target\n }\n\n // CONTENTEDITABLE INPUT STYLE\n\n var ContentEditableInput = function(cm) {\n this.cm = cm;\n this.lastAnchorNode = this.lastAnchorOffset = this.lastFocusNode = this.lastFocusOffset = null;\n this.polling = new Delayed();\n this.composing = null;\n this.gracePeriod = false;\n this.readDOMTimeout = null;\n };\n\n ContentEditableInput.prototype.init = function (display) {\n var this$1 = this;\n\n var input = this, cm = input.cm;\n var div = input.div = display.lineDiv;\n disableBrowserMagic(div, cm.options.spellcheck, cm.options.autocorrect, cm.options.autocapitalize);\n\n function belongsToInput(e) {\n for (var t = e.target; t; t = t.parentNode) {\n if (t == div) { return true }\n if (/\\bCodeMirror-(?:line)?widget\\b/.test(t.className)) { break }\n }\n return false\n }\n\n on(div, \"paste\", function (e) {\n if (!belongsToInput(e) || signalDOMEvent(cm, e) || handlePaste(e, cm)) { return }\n // IE doesn't fire input events, so we schedule a read for the pasted content in this way\n if (ie_version <= 11) { setTimeout(operation(cm, function () { return this$1.updateFromDOM(); }), 20); }\n });\n\n on(div, \"compositionstart\", function (e) {\n this$1.composing = {data: e.data, done: false};\n });\n on(div, \"compositionupdate\", function (e) {\n if (!this$1.composing) { this$1.composing = {data: e.data, done: false}; }\n });\n on(div, \"compositionend\", function (e) {\n if (this$1.composing) {\n if (e.data != this$1.composing.data) { this$1.readFromDOMSoon(); }\n this$1.composing.done = true;\n }\n });\n\n on(div, \"touchstart\", function () { return input.forceCompositionEnd(); });\n\n on(div, \"input\", function () {\n if (!this$1.composing) { this$1.readFromDOMSoon(); }\n });\n\n function onCopyCut(e) {\n if (!belongsToInput(e) || signalDOMEvent(cm, e)) { return }\n if (cm.somethingSelected()) {\n setLastCopied({lineWise: false, text: cm.getSelections()});\n if (e.type == \"cut\") { cm.replaceSelection(\"\", null, \"cut\"); }\n } else if (!cm.options.lineWiseCopyCut) {\n return\n } else {\n var ranges = copyableRanges(cm);\n setLastCopied({lineWise: true, text: ranges.text});\n if (e.type == \"cut\") {\n cm.operation(function () {\n cm.setSelections(ranges.ranges, 0, sel_dontScroll);\n cm.replaceSelection(\"\", null, \"cut\");\n });\n }\n }\n if (e.clipboardData) {\n e.clipboardData.clearData();\n var content = lastCopied.text.join(\"\\n\");\n // iOS exposes the clipboard API, but seems to discard content inserted into it\n e.clipboardData.setData(\"Text\", content);\n if (e.clipboardData.getData(\"Text\") == content) {\n e.preventDefault();\n return\n }\n }\n // Old-fashioned briefly-focus-a-textarea hack\n var kludge = hiddenTextarea(), te = kludge.firstChild;\n cm.display.lineSpace.insertBefore(kludge, cm.display.lineSpace.firstChild);\n te.value = lastCopied.text.join(\"\\n\");\n var hadFocus = document.activeElement;\n selectInput(te);\n setTimeout(function () {\n cm.display.lineSpace.removeChild(kludge);\n hadFocus.focus();\n if (hadFocus == div) { input.showPrimarySelection(); }\n }, 50);\n }\n on(div, \"copy\", onCopyCut);\n on(div, \"cut\", onCopyCut);\n };\n\n ContentEditableInput.prototype.screenReaderLabelChanged = function (label) {\n // Label for screenreaders, accessibility\n if(label) {\n this.div.setAttribute('aria-label', label);\n } else {\n this.div.removeAttribute('aria-label');\n }\n };\n\n ContentEditableInput.prototype.prepareSelection = function () {\n var result = prepareSelection(this.cm, false);\n result.focus = document.activeElement == this.div;\n return result\n };\n\n ContentEditableInput.prototype.showSelection = function (info, takeFocus) {\n if (!info || !this.cm.display.view.length) { return }\n if (info.focus || takeFocus) { this.showPrimarySelection(); }\n this.showMultipleSelections(info);\n };\n\n ContentEditableInput.prototype.getSelection = function () {\n return this.cm.display.wrapper.ownerDocument.getSelection()\n };\n\n ContentEditableInput.prototype.showPrimarySelection = function () {\n var sel = this.getSelection(), cm = this.cm, prim = cm.doc.sel.primary();\n var from = prim.from(), to = prim.to();\n\n if (cm.display.viewTo == cm.display.viewFrom || from.line >= cm.display.viewTo || to.line < cm.display.viewFrom) {\n sel.removeAllRanges();\n return\n }\n\n var curAnchor = domToPos(cm, sel.anchorNode, sel.anchorOffset);\n var curFocus = domToPos(cm, sel.focusNode, sel.focusOffset);\n if (curAnchor && !curAnchor.bad && curFocus && !curFocus.bad &&\n cmp(minPos(curAnchor, curFocus), from) == 0 &&\n cmp(maxPos(curAnchor, curFocus), to) == 0)\n { return }\n\n var view = cm.display.view;\n var start = (from.line >= cm.display.viewFrom && posToDOM(cm, from)) ||\n {node: view[0].measure.map[2], offset: 0};\n var end = to.line < cm.display.viewTo && posToDOM(cm, to);\n if (!end) {\n var measure = view[view.length - 1].measure;\n var map = measure.maps ? measure.maps[measure.maps.length - 1] : measure.map;\n end = {node: map[map.length - 1], offset: map[map.length - 2] - map[map.length - 3]};\n }\n\n if (!start || !end) {\n sel.removeAllRanges();\n return\n }\n\n var old = sel.rangeCount && sel.getRangeAt(0), rng;\n try { rng = range(start.node, start.offset, end.offset, end.node); }\n catch(e) {} // Our model of the DOM might be outdated, in which case the range we try to set can be impossible\n if (rng) {\n if (!gecko && cm.state.focused) {\n sel.collapse(start.node, start.offset);\n if (!rng.collapsed) {\n sel.removeAllRanges();\n sel.addRange(rng);\n }\n } else {\n sel.removeAllRanges();\n sel.addRange(rng);\n }\n if (old && sel.anchorNode == null) { sel.addRange(old); }\n else if (gecko) { this.startGracePeriod(); }\n }\n this.rememberSelection();\n };\n\n ContentEditableInput.prototype.startGracePeriod = function () {\n var this$1 = this;\n\n clearTimeout(this.gracePeriod);\n this.gracePeriod = setTimeout(function () {\n this$1.gracePeriod = false;\n if (this$1.selectionChanged())\n { this$1.cm.operation(function () { return this$1.cm.curOp.selectionChanged = true; }); }\n }, 20);\n };\n\n ContentEditableInput.prototype.showMultipleSelections = function (info) {\n removeChildrenAndAdd(this.cm.display.cursorDiv, info.cursors);\n removeChildrenAndAdd(this.cm.display.selectionDiv, info.selection);\n };\n\n ContentEditableInput.prototype.rememberSelection = function () {\n var sel = this.getSelection();\n this.lastAnchorNode = sel.anchorNode; this.lastAnchorOffset = sel.anchorOffset;\n this.lastFocusNode = sel.focusNode; this.lastFocusOffset = sel.focusOffset;\n };\n\n ContentEditableInput.prototype.selectionInEditor = function () {\n var sel = this.getSelection();\n if (!sel.rangeCount) { return false }\n var node = sel.getRangeAt(0).commonAncestorContainer;\n return contains(this.div, node)\n };\n\n ContentEditableInput.prototype.focus = function () {\n if (this.cm.options.readOnly != \"nocursor\") {\n if (!this.selectionInEditor() || document.activeElement != this.div)\n { this.showSelection(this.prepareSelection(), true); }\n this.div.focus();\n }\n };\n ContentEditableInput.prototype.blur = function () { this.div.blur(); };\n ContentEditableInput.prototype.getField = function () { return this.div };\n\n ContentEditableInput.prototype.supportsTouch = function () { return true };\n\n ContentEditableInput.prototype.receivedFocus = function () {\n var input = this;\n if (this.selectionInEditor())\n { this.pollSelection(); }\n else\n { runInOp(this.cm, function () { return input.cm.curOp.selectionChanged = true; }); }\n\n function poll() {\n if (input.cm.state.focused) {\n input.pollSelection();\n input.polling.set(input.cm.options.pollInterval, poll);\n }\n }\n this.polling.set(this.cm.options.pollInterval, poll);\n };\n\n ContentEditableInput.prototype.selectionChanged = function () {\n var sel = this.getSelection();\n return sel.anchorNode != this.lastAnchorNode || sel.anchorOffset != this.lastAnchorOffset ||\n sel.focusNode != this.lastFocusNode || sel.focusOffset != this.lastFocusOffset\n };\n\n ContentEditableInput.prototype.pollSelection = function () {\n if (this.readDOMTimeout != null || this.gracePeriod || !this.selectionChanged()) { return }\n var sel = this.getSelection(), cm = this.cm;\n // On Android Chrome (version 56, at least), backspacing into an\n // uneditable block element will put the cursor in that element,\n // and then, because it's not editable, hide the virtual keyboard.\n // Because Android doesn't allow us to actually detect backspace\n // presses in a sane way, this code checks for when that happens\n // and simulates a backspace press in this case.\n if (android && chrome && this.cm.display.gutterSpecs.length && isInGutter(sel.anchorNode)) {\n this.cm.triggerOnKeyDown({type: \"keydown\", keyCode: 8, preventDefault: Math.abs});\n this.blur();\n this.focus();\n return\n }\n if (this.composing) { return }\n this.rememberSelection();\n var anchor = domToPos(cm, sel.anchorNode, sel.anchorOffset);\n var head = domToPos(cm, sel.focusNode, sel.focusOffset);\n if (anchor && head) { runInOp(cm, function () {\n setSelection(cm.doc, simpleSelection(anchor, head), sel_dontScroll);\n if (anchor.bad || head.bad) { cm.curOp.selectionChanged = true; }\n }); }\n };\n\n ContentEditableInput.prototype.pollContent = function () {\n if (this.readDOMTimeout != null) {\n clearTimeout(this.readDOMTimeout);\n this.readDOMTimeout = null;\n }\n\n var cm = this.cm, display = cm.display, sel = cm.doc.sel.primary();\n var from = sel.from(), to = sel.to();\n if (from.ch == 0 && from.line > cm.firstLine())\n { from = Pos(from.line - 1, getLine(cm.doc, from.line - 1).length); }\n if (to.ch == getLine(cm.doc, to.line).text.length && to.line < cm.lastLine())\n { to = Pos(to.line + 1, 0); }\n if (from.line < display.viewFrom || to.line > display.viewTo - 1) { return false }\n\n var fromIndex, fromLine, fromNode;\n if (from.line == display.viewFrom || (fromIndex = findViewIndex(cm, from.line)) == 0) {\n fromLine = lineNo(display.view[0].line);\n fromNode = display.view[0].node;\n } else {\n fromLine = lineNo(display.view[fromIndex].line);\n fromNode = display.view[fromIndex - 1].node.nextSibling;\n }\n var toIndex = findViewIndex(cm, to.line);\n var toLine, toNode;\n if (toIndex == display.view.length - 1) {\n toLine = display.viewTo - 1;\n toNode = display.lineDiv.lastChild;\n } else {\n toLine = lineNo(display.view[toIndex + 1].line) - 1;\n toNode = display.view[toIndex + 1].node.previousSibling;\n }\n\n if (!fromNode) { return false }\n var newText = cm.doc.splitLines(domTextBetween(cm, fromNode, toNode, fromLine, toLine));\n var oldText = getBetween(cm.doc, Pos(fromLine, 0), Pos(toLine, getLine(cm.doc, toLine).text.length));\n while (newText.length > 1 && oldText.length > 1) {\n if (lst(newText) == lst(oldText)) { newText.pop(); oldText.pop(); toLine--; }\n else if (newText[0] == oldText[0]) { newText.shift(); oldText.shift(); fromLine++; }\n else { break }\n }\n\n var cutFront = 0, cutEnd = 0;\n var newTop = newText[0], oldTop = oldText[0], maxCutFront = Math.min(newTop.length, oldTop.length);\n while (cutFront < maxCutFront && newTop.charCodeAt(cutFront) == oldTop.charCodeAt(cutFront))\n { ++cutFront; }\n var newBot = lst(newText), oldBot = lst(oldText);\n var maxCutEnd = Math.min(newBot.length - (newText.length == 1 ? cutFront : 0),\n oldBot.length - (oldText.length == 1 ? cutFront : 0));\n while (cutEnd < maxCutEnd &&\n newBot.charCodeAt(newBot.length - cutEnd - 1) == oldBot.charCodeAt(oldBot.length - cutEnd - 1))\n { ++cutEnd; }\n // Try to move start of change to start of selection if ambiguous\n if (newText.length == 1 && oldText.length == 1 && fromLine == from.line) {\n while (cutFront && cutFront > from.ch &&\n newBot.charCodeAt(newBot.length - cutEnd - 1) == oldBot.charCodeAt(oldBot.length - cutEnd - 1)) {\n cutFront--;\n cutEnd++;\n }\n }\n\n newText[newText.length - 1] = newBot.slice(0, newBot.length - cutEnd).replace(/^\\u200b+/, \"\");\n newText[0] = newText[0].slice(cutFront).replace(/\\u200b+$/, \"\");\n\n var chFrom = Pos(fromLine, cutFront);\n var chTo = Pos(toLine, oldText.length ? lst(oldText).length - cutEnd : 0);\n if (newText.length > 1 || newText[0] || cmp(chFrom, chTo)) {\n replaceRange(cm.doc, newText, chFrom, chTo, \"+input\");\n return true\n }\n };\n\n ContentEditableInput.prototype.ensurePolled = function () {\n this.forceCompositionEnd();\n };\n ContentEditableInput.prototype.reset = function () {\n this.forceCompositionEnd();\n };\n ContentEditableInput.prototype.forceCompositionEnd = function () {\n if (!this.composing) { return }\n clearTimeout(this.readDOMTimeout);\n this.composing = null;\n this.updateFromDOM();\n this.div.blur();\n this.div.focus();\n };\n ContentEditableInput.prototype.readFromDOMSoon = function () {\n var this$1 = this;\n\n if (this.readDOMTimeout != null) { return }\n this.readDOMTimeout = setTimeout(function () {\n this$1.readDOMTimeout = null;\n if (this$1.composing) {\n if (this$1.composing.done) { this$1.composing = null; }\n else { return }\n }\n this$1.updateFromDOM();\n }, 80);\n };\n\n ContentEditableInput.prototype.updateFromDOM = function () {\n var this$1 = this;\n\n if (this.cm.isReadOnly() || !this.pollContent())\n { runInOp(this.cm, function () { return regChange(this$1.cm); }); }\n };\n\n ContentEditableInput.prototype.setUneditable = function (node) {\n node.contentEditable = \"false\";\n };\n\n ContentEditableInput.prototype.onKeyPress = function (e) {\n if (e.charCode == 0 || this.composing) { return }\n e.preventDefault();\n if (!this.cm.isReadOnly())\n { operation(this.cm, applyTextInput)(this.cm, String.fromCharCode(e.charCode == null ? e.keyCode : e.charCode), 0); }\n };\n\n ContentEditableInput.prototype.readOnlyChanged = function (val) {\n this.div.contentEditable = String(val != \"nocursor\");\n };\n\n ContentEditableInput.prototype.onContextMenu = function () {};\n ContentEditableInput.prototype.resetPosition = function () {};\n\n ContentEditableInput.prototype.needsContentAttribute = true;\n\n function posToDOM(cm, pos) {\n var view = findViewForLine(cm, pos.line);\n if (!view || view.hidden) { return null }\n var line = getLine(cm.doc, pos.line);\n var info = mapFromLineView(view, line, pos.line);\n\n var order = getOrder(line, cm.doc.direction), side = \"left\";\n if (order) {\n var partPos = getBidiPartAt(order, pos.ch);\n side = partPos % 2 ? \"right\" : \"left\";\n }\n var result = nodeAndOffsetInLineMap(info.map, pos.ch, side);\n result.offset = result.collapse == \"right\" ? result.end : result.start;\n return result\n }\n\n function isInGutter(node) {\n for (var scan = node; scan; scan = scan.parentNode)\n { if (/CodeMirror-gutter-wrapper/.test(scan.className)) { return true } }\n return false\n }\n\n function badPos(pos, bad) { if (bad) { pos.bad = true; } return pos }\n\n function domTextBetween(cm, from, to, fromLine, toLine) {\n var text = \"\", closing = false, lineSep = cm.doc.lineSeparator(), extraLinebreak = false;\n function recognizeMarker(id) { return function (marker) { return marker.id == id; } }\n function close() {\n if (closing) {\n text += lineSep;\n if (extraLinebreak) { text += lineSep; }\n closing = extraLinebreak = false;\n }\n }\n function addText(str) {\n if (str) {\n close();\n text += str;\n }\n }\n function walk(node) {\n if (node.nodeType == 1) {\n var cmText = node.getAttribute(\"cm-text\");\n if (cmText) {\n addText(cmText);\n return\n }\n var markerID = node.getAttribute(\"cm-marker\"), range;\n if (markerID) {\n var found = cm.findMarks(Pos(fromLine, 0), Pos(toLine + 1, 0), recognizeMarker(+markerID));\n if (found.length && (range = found[0].find(0)))\n { addText(getBetween(cm.doc, range.from, range.to).join(lineSep)); }\n return\n }\n if (node.getAttribute(\"contenteditable\") == \"false\") { return }\n var isBlock = /^(pre|div|p|li|table|br)$/i.test(node.nodeName);\n if (!/^br$/i.test(node.nodeName) && node.textContent.length == 0) { return }\n\n if (isBlock) { close(); }\n for (var i = 0; i < node.childNodes.length; i++)\n { walk(node.childNodes[i]); }\n\n if (/^(pre|p)$/i.test(node.nodeName)) { extraLinebreak = true; }\n if (isBlock) { closing = true; }\n } else if (node.nodeType == 3) {\n addText(node.nodeValue.replace(/\\u200b/g, \"\").replace(/\\u00a0/g, \" \"));\n }\n }\n for (;;) {\n walk(from);\n if (from == to) { break }\n from = from.nextSibling;\n extraLinebreak = false;\n }\n return text\n }\n\n function domToPos(cm, node, offset) {\n var lineNode;\n if (node == cm.display.lineDiv) {\n lineNode = cm.display.lineDiv.childNodes[offset];\n if (!lineNode) { return badPos(cm.clipPos(Pos(cm.display.viewTo - 1)), true) }\n node = null; offset = 0;\n } else {\n for (lineNode = node;; lineNode = lineNode.parentNode) {\n if (!lineNode || lineNode == cm.display.lineDiv) { return null }\n if (lineNode.parentNode && lineNode.parentNode == cm.display.lineDiv) { break }\n }\n }\n for (var i = 0; i < cm.display.view.length; i++) {\n var lineView = cm.display.view[i];\n if (lineView.node == lineNode)\n { return locateNodeInLineView(lineView, node, offset) }\n }\n }\n\n function locateNodeInLineView(lineView, node, offset) {\n var wrapper = lineView.text.firstChild, bad = false;\n if (!node || !contains(wrapper, node)) { return badPos(Pos(lineNo(lineView.line), 0), true) }\n if (node == wrapper) {\n bad = true;\n node = wrapper.childNodes[offset];\n offset = 0;\n if (!node) {\n var line = lineView.rest ? lst(lineView.rest) : lineView.line;\n return badPos(Pos(lineNo(line), line.text.length), bad)\n }\n }\n\n var textNode = node.nodeType == 3 ? node : null, topNode = node;\n if (!textNode && node.childNodes.length == 1 && node.firstChild.nodeType == 3) {\n textNode = node.firstChild;\n if (offset) { offset = textNode.nodeValue.length; }\n }\n while (topNode.parentNode != wrapper) { topNode = topNode.parentNode; }\n var measure = lineView.measure, maps = measure.maps;\n\n function find(textNode, topNode, offset) {\n for (var i = -1; i < (maps ? maps.length : 0); i++) {\n var map = i < 0 ? measure.map : maps[i];\n for (var j = 0; j < map.length; j += 3) {\n var curNode = map[j + 2];\n if (curNode == textNode || curNode == topNode) {\n var line = lineNo(i < 0 ? lineView.line : lineView.rest[i]);\n var ch = map[j] + offset;\n if (offset < 0 || curNode != textNode) { ch = map[j + (offset ? 1 : 0)]; }\n return Pos(line, ch)\n }\n }\n }\n }\n var found = find(textNode, topNode, offset);\n if (found) { return badPos(found, bad) }\n\n // FIXME this is all really shaky. might handle the few cases it needs to handle, but likely to cause problems\n for (var after = topNode.nextSibling, dist = textNode ? textNode.nodeValue.length - offset : 0; after; after = after.nextSibling) {\n found = find(after, after.firstChild, 0);\n if (found)\n { return badPos(Pos(found.line, found.ch - dist), bad) }\n else\n { dist += after.textContent.length; }\n }\n for (var before = topNode.previousSibling, dist$1 = offset; before; before = before.previousSibling) {\n found = find(before, before.firstChild, -1);\n if (found)\n { return badPos(Pos(found.line, found.ch + dist$1), bad) }\n else\n { dist$1 += before.textContent.length; }\n }\n }\n\n // TEXTAREA INPUT STYLE\n\n var TextareaInput = function(cm) {\n this.cm = cm;\n // See input.poll and input.reset\n this.prevInput = \"\";\n\n // Flag that indicates whether we expect input to appear real soon\n // now (after some event like 'keypress' or 'input') and are\n // polling intensively.\n this.pollingFast = false;\n // Self-resetting timeout for the poller\n this.polling = new Delayed();\n // Used to work around IE issue with selection being forgotten when focus moves away from textarea\n this.hasSelection = false;\n this.composing = null;\n };\n\n TextareaInput.prototype.init = function (display) {\n var this$1 = this;\n\n var input = this, cm = this.cm;\n this.createField(display);\n var te = this.textarea;\n\n display.wrapper.insertBefore(this.wrapper, display.wrapper.firstChild);\n\n // Needed to hide big blue blinking cursor on Mobile Safari (doesn't seem to work in iOS 8 anymore)\n if (ios) { te.style.width = \"0px\"; }\n\n on(te, \"input\", function () {\n if (ie && ie_version >= 9 && this$1.hasSelection) { this$1.hasSelection = null; }\n input.poll();\n });\n\n on(te, \"paste\", function (e) {\n if (signalDOMEvent(cm, e) || handlePaste(e, cm)) { return }\n\n cm.state.pasteIncoming = +new Date;\n input.fastPoll();\n });\n\n function prepareCopyCut(e) {\n if (signalDOMEvent(cm, e)) { return }\n if (cm.somethingSelected()) {\n setLastCopied({lineWise: false, text: cm.getSelections()});\n } else if (!cm.options.lineWiseCopyCut) {\n return\n } else {\n var ranges = copyableRanges(cm);\n setLastCopied({lineWise: true, text: ranges.text});\n if (e.type == \"cut\") {\n cm.setSelections(ranges.ranges, null, sel_dontScroll);\n } else {\n input.prevInput = \"\";\n te.value = ranges.text.join(\"\\n\");\n selectInput(te);\n }\n }\n if (e.type == \"cut\") { cm.state.cutIncoming = +new Date; }\n }\n on(te, \"cut\", prepareCopyCut);\n on(te, \"copy\", prepareCopyCut);\n\n on(display.scroller, \"paste\", function (e) {\n if (eventInWidget(display, e) || signalDOMEvent(cm, e)) { return }\n if (!te.dispatchEvent) {\n cm.state.pasteIncoming = +new Date;\n input.focus();\n return\n }\n\n // Pass the `paste` event to the textarea so it's handled by its event listener.\n var event = new Event(\"paste\");\n event.clipboardData = e.clipboardData;\n te.dispatchEvent(event);\n });\n\n // Prevent normal selection in the editor (we handle our own)\n on(display.lineSpace, \"selectstart\", function (e) {\n if (!eventInWidget(display, e)) { e_preventDefault(e); }\n });\n\n on(te, \"compositionstart\", function () {\n var start = cm.getCursor(\"from\");\n if (input.composing) { input.composing.range.clear(); }\n input.composing = {\n start: start,\n range: cm.markText(start, cm.getCursor(\"to\"), {className: \"CodeMirror-composing\"})\n };\n });\n on(te, \"compositionend\", function () {\n if (input.composing) {\n input.poll();\n input.composing.range.clear();\n input.composing = null;\n }\n });\n };\n\n TextareaInput.prototype.createField = function (_display) {\n // Wraps and hides input textarea\n this.wrapper = hiddenTextarea();\n // The semihidden textarea that is focused when the editor is\n // focused, and receives input.\n this.textarea = this.wrapper.firstChild;\n };\n\n TextareaInput.prototype.screenReaderLabelChanged = function (label) {\n // Label for screenreaders, accessibility\n if(label) {\n this.textarea.setAttribute('aria-label', label);\n } else {\n this.textarea.removeAttribute('aria-label');\n }\n };\n\n TextareaInput.prototype.prepareSelection = function () {\n // Redraw the selection and/or cursor\n var cm = this.cm, display = cm.display, doc = cm.doc;\n var result = prepareSelection(cm);\n\n // Move the hidden textarea near the cursor to prevent scrolling artifacts\n if (cm.options.moveInputWithCursor) {\n var headPos = cursorCoords(cm, doc.sel.primary().head, \"div\");\n var wrapOff = display.wrapper.getBoundingClientRect(), lineOff = display.lineDiv.getBoundingClientRect();\n result.teTop = Math.max(0, Math.min(display.wrapper.clientHeight - 10,\n headPos.top + lineOff.top - wrapOff.top));\n result.teLeft = Math.max(0, Math.min(display.wrapper.clientWidth - 10,\n headPos.left + lineOff.left - wrapOff.left));\n }\n\n return result\n };\n\n TextareaInput.prototype.showSelection = function (drawn) {\n var cm = this.cm, display = cm.display;\n removeChildrenAndAdd(display.cursorDiv, drawn.cursors);\n removeChildrenAndAdd(display.selectionDiv, drawn.selection);\n if (drawn.teTop != null) {\n this.wrapper.style.top = drawn.teTop + \"px\";\n this.wrapper.style.left = drawn.teLeft + \"px\";\n }\n };\n\n // Reset the input to correspond to the selection (or to be empty,\n // when not typing and nothing is selected)\n TextareaInput.prototype.reset = function (typing) {\n if (this.contextMenuPending || this.composing) { return }\n var cm = this.cm;\n if (cm.somethingSelected()) {\n this.prevInput = \"\";\n var content = cm.getSelection();\n this.textarea.value = content;\n if (cm.state.focused) { selectInput(this.textarea); }\n if (ie && ie_version >= 9) { this.hasSelection = content; }\n } else if (!typing) {\n this.prevInput = this.textarea.value = \"\";\n if (ie && ie_version >= 9) { this.hasSelection = null; }\n }\n };\n\n TextareaInput.prototype.getField = function () { return this.textarea };\n\n TextareaInput.prototype.supportsTouch = function () { return false };\n\n TextareaInput.prototype.focus = function () {\n if (this.cm.options.readOnly != \"nocursor\" && (!mobile || activeElt() != this.textarea)) {\n try { this.textarea.focus(); }\n catch (e) {} // IE8 will throw if the textarea is display: none or not in DOM\n }\n };\n\n TextareaInput.prototype.blur = function () { this.textarea.blur(); };\n\n TextareaInput.prototype.resetPosition = function () {\n this.wrapper.style.top = this.wrapper.style.left = 0;\n };\n\n TextareaInput.prototype.receivedFocus = function () { this.slowPoll(); };\n\n // Poll for input changes, using the normal rate of polling. This\n // runs as long as the editor is focused.\n TextareaInput.prototype.slowPoll = function () {\n var this$1 = this;\n\n if (this.pollingFast) { return }\n this.polling.set(this.cm.options.pollInterval, function () {\n this$1.poll();\n if (this$1.cm.state.focused) { this$1.slowPoll(); }\n });\n };\n\n // When an event has just come in that is likely to add or change\n // something in the input textarea, we poll faster, to ensure that\n // the change appears on the screen quickly.\n TextareaInput.prototype.fastPoll = function () {\n var missed = false, input = this;\n input.pollingFast = true;\n function p() {\n var changed = input.poll();\n if (!changed && !missed) {missed = true; input.polling.set(60, p);}\n else {input.pollingFast = false; input.slowPoll();}\n }\n input.polling.set(20, p);\n };\n\n // Read input from the textarea, and update the document to match.\n // When something is selected, it is present in the textarea, and\n // selected (unless it is huge, in which case a placeholder is\n // used). When nothing is selected, the cursor sits after previously\n // seen text (can be empty), which is stored in prevInput (we must\n // not reset the textarea when typing, because that breaks IME).\n TextareaInput.prototype.poll = function () {\n var this$1 = this;\n\n var cm = this.cm, input = this.textarea, prevInput = this.prevInput;\n // Since this is called a *lot*, try to bail out as cheaply as\n // possible when it is clear that nothing happened. hasSelection\n // will be the case when there is a lot of text in the textarea,\n // in which case reading its value would be expensive.\n if (this.contextMenuPending || !cm.state.focused ||\n (hasSelection(input) && !prevInput && !this.composing) ||\n cm.isReadOnly() || cm.options.disableInput || cm.state.keySeq)\n { return false }\n\n var text = input.value;\n // If nothing changed, bail.\n if (text == prevInput && !cm.somethingSelected()) { return false }\n // Work around nonsensical selection resetting in IE9/10, and\n // inexplicable appearance of private area unicode characters on\n // some key combos in Mac (#2689).\n if (ie && ie_version >= 9 && this.hasSelection === text ||\n mac && /[\\uf700-\\uf7ff]/.test(text)) {\n cm.display.input.reset();\n return false\n }\n\n if (cm.doc.sel == cm.display.selForContextMenu) {\n var first = text.charCodeAt(0);\n if (first == 0x200b && !prevInput) { prevInput = \"\\u200b\"; }\n if (first == 0x21da) { this.reset(); return this.cm.execCommand(\"undo\") }\n }\n // Find the part of the input that is actually new\n var same = 0, l = Math.min(prevInput.length, text.length);\n while (same < l && prevInput.charCodeAt(same) == text.charCodeAt(same)) { ++same; }\n\n runInOp(cm, function () {\n applyTextInput(cm, text.slice(same), prevInput.length - same,\n null, this$1.composing ? \"*compose\" : null);\n\n // Don't leave long text in the textarea, since it makes further polling slow\n if (text.length > 1000 || text.indexOf(\"\\n\") > -1) { input.value = this$1.prevInput = \"\"; }\n else { this$1.prevInput = text; }\n\n if (this$1.composing) {\n this$1.composing.range.clear();\n this$1.composing.range = cm.markText(this$1.composing.start, cm.getCursor(\"to\"),\n {className: \"CodeMirror-composing\"});\n }\n });\n return true\n };\n\n TextareaInput.prototype.ensurePolled = function () {\n if (this.pollingFast && this.poll()) { this.pollingFast = false; }\n };\n\n TextareaInput.prototype.onKeyPress = function () {\n if (ie && ie_version >= 9) { this.hasSelection = null; }\n this.fastPoll();\n };\n\n TextareaInput.prototype.onContextMenu = function (e) {\n var input = this, cm = input.cm, display = cm.display, te = input.textarea;\n if (input.contextMenuPending) { input.contextMenuPending(); }\n var pos = posFromMouse(cm, e), scrollPos = display.scroller.scrollTop;\n if (!pos || presto) { return } // Opera is difficult.\n\n // Reset the current text selection only if the click is done outside of the selection\n // and 'resetSelectionOnContextMenu' option is true.\n var reset = cm.options.resetSelectionOnContextMenu;\n if (reset && cm.doc.sel.contains(pos) == -1)\n { operation(cm, setSelection)(cm.doc, simpleSelection(pos), sel_dontScroll); }\n\n var oldCSS = te.style.cssText, oldWrapperCSS = input.wrapper.style.cssText;\n var wrapperBox = input.wrapper.offsetParent.getBoundingClientRect();\n input.wrapper.style.cssText = \"position: static\";\n te.style.cssText = \"position: absolute; width: 30px; height: 30px;\\n top: \" + (e.clientY - wrapperBox.top - 5) + \"px; left: \" + (e.clientX - wrapperBox.left - 5) + \"px;\\n z-index: 1000; background: \" + (ie ? \"rgba(255, 255, 255, .05)\" : \"transparent\") + \";\\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);\";\n var oldScrollY;\n if (webkit) { oldScrollY = window.scrollY; } // Work around Chrome issue (#2712)\n display.input.focus();\n if (webkit) { window.scrollTo(null, oldScrollY); }\n display.input.reset();\n // Adds \"Select all\" to context menu in FF\n if (!cm.somethingSelected()) { te.value = input.prevInput = \" \"; }\n input.contextMenuPending = rehide;\n display.selForContextMenu = cm.doc.sel;\n clearTimeout(display.detectingSelectAll);\n\n // Select-all will be greyed out if there's nothing to select, so\n // this adds a zero-width space so that we can later check whether\n // it got selected.\n function prepareSelectAllHack() {\n if (te.selectionStart != null) {\n var selected = cm.somethingSelected();\n var extval = \"\\u200b\" + (selected ? te.value : \"\");\n te.value = \"\\u21da\"; // Used to catch context-menu undo\n te.value = extval;\n input.prevInput = selected ? \"\" : \"\\u200b\";\n te.selectionStart = 1; te.selectionEnd = extval.length;\n // Re-set this, in case some other handler touched the\n // selection in the meantime.\n display.selForContextMenu = cm.doc.sel;\n }\n }\n function rehide() {\n if (input.contextMenuPending != rehide) { return }\n input.contextMenuPending = false;\n input.wrapper.style.cssText = oldWrapperCSS;\n te.style.cssText = oldCSS;\n if (ie && ie_version < 9) { display.scrollbars.setScrollTop(display.scroller.scrollTop = scrollPos); }\n\n // Try to detect the user choosing select-all\n if (te.selectionStart != null) {\n if (!ie || (ie && ie_version < 9)) { prepareSelectAllHack(); }\n var i = 0, poll = function () {\n if (display.selForContextMenu == cm.doc.sel && te.selectionStart == 0 &&\n te.selectionEnd > 0 && input.prevInput == \"\\u200b\") {\n operation(cm, selectAll)(cm);\n } else if (i++ < 10) {\n display.detectingSelectAll = setTimeout(poll, 500);\n } else {\n display.selForContextMenu = null;\n display.input.reset();\n }\n };\n display.detectingSelectAll = setTimeout(poll, 200);\n }\n }\n\n if (ie && ie_version >= 9) { prepareSelectAllHack(); }\n if (captureRightClick) {\n e_stop(e);\n var mouseup = function () {\n off(window, \"mouseup\", mouseup);\n setTimeout(rehide, 20);\n };\n on(window, \"mouseup\", mouseup);\n } else {\n setTimeout(rehide, 50);\n }\n };\n\n TextareaInput.prototype.readOnlyChanged = function (val) {\n if (!val) { this.reset(); }\n this.textarea.disabled = val == \"nocursor\";\n this.textarea.readOnly = !!val;\n };\n\n TextareaInput.prototype.setUneditable = function () {};\n\n TextareaInput.prototype.needsContentAttribute = false;\n\n function fromTextArea(textarea, options) {\n options = options ? copyObj(options) : {};\n options.value = textarea.value;\n if (!options.tabindex && textarea.tabIndex)\n { options.tabindex = textarea.tabIndex; }\n if (!options.placeholder && textarea.placeholder)\n { options.placeholder = textarea.placeholder; }\n // Set autofocus to true if this textarea is focused, or if it has\n // autofocus and no other element is focused.\n if (options.autofocus == null) {\n var hasFocus = activeElt();\n options.autofocus = hasFocus == textarea ||\n textarea.getAttribute(\"autofocus\") != null && hasFocus == document.body;\n }\n\n function save() {textarea.value = cm.getValue();}\n\n var realSubmit;\n if (textarea.form) {\n on(textarea.form, \"submit\", save);\n // Deplorable hack to make the submit method do the right thing.\n if (!options.leaveSubmitMethodAlone) {\n var form = textarea.form;\n realSubmit = form.submit;\n try {\n var wrappedSubmit = form.submit = function () {\n save();\n form.submit = realSubmit;\n form.submit();\n form.submit = wrappedSubmit;\n };\n } catch(e) {}\n }\n }\n\n options.finishInit = function (cm) {\n cm.save = save;\n cm.getTextArea = function () { return textarea; };\n cm.toTextArea = function () {\n cm.toTextArea = isNaN; // Prevent this from being ran twice\n save();\n textarea.parentNode.removeChild(cm.getWrapperElement());\n textarea.style.display = \"\";\n if (textarea.form) {\n off(textarea.form, \"submit\", save);\n if (!options.leaveSubmitMethodAlone && typeof textarea.form.submit == \"function\")\n { textarea.form.submit = realSubmit; }\n }\n };\n };\n\n textarea.style.display = \"none\";\n var cm = CodeMirror(function (node) { return textarea.parentNode.insertBefore(node, textarea.nextSibling); },\n options);\n return cm\n }\n\n function addLegacyProps(CodeMirror) {\n CodeMirror.off = off;\n CodeMirror.on = on;\n CodeMirror.wheelEventPixels = wheelEventPixels;\n CodeMirror.Doc = Doc;\n CodeMirror.splitLines = splitLinesAuto;\n CodeMirror.countColumn = countColumn;\n CodeMirror.findColumn = findColumn;\n CodeMirror.isWordChar = isWordCharBasic;\n CodeMirror.Pass = Pass;\n CodeMirror.signal = signal;\n CodeMirror.Line = Line;\n CodeMirror.changeEnd = changeEnd;\n CodeMirror.scrollbarModel = scrollbarModel;\n CodeMirror.Pos = Pos;\n CodeMirror.cmpPos = cmp;\n CodeMirror.modes = modes;\n CodeMirror.mimeModes = mimeModes;\n CodeMirror.resolveMode = resolveMode;\n CodeMirror.getMode = getMode;\n CodeMirror.modeExtensions = modeExtensions;\n CodeMirror.extendMode = extendMode;\n CodeMirror.copyState = copyState;\n CodeMirror.startState = startState;\n CodeMirror.innerMode = innerMode;\n CodeMirror.commands = commands;\n CodeMirror.keyMap = keyMap;\n CodeMirror.keyName = keyName;\n CodeMirror.isModifierKey = isModifierKey;\n CodeMirror.lookupKey = lookupKey;\n CodeMirror.normalizeKeyMap = normalizeKeyMap;\n CodeMirror.StringStream = StringStream;\n CodeMirror.SharedTextMarker = SharedTextMarker;\n CodeMirror.TextMarker = TextMarker;\n CodeMirror.LineWidget = LineWidget;\n CodeMirror.e_preventDefault = e_preventDefault;\n CodeMirror.e_stopPropagation = e_stopPropagation;\n CodeMirror.e_stop = e_stop;\n CodeMirror.addClass = addClass;\n CodeMirror.contains = contains;\n CodeMirror.rmClass = rmClass;\n CodeMirror.keyNames = keyNames;\n }\n\n // EDITOR CONSTRUCTOR\n\n defineOptions(CodeMirror);\n\n addEditorMethods(CodeMirror);\n\n // Set up methods on CodeMirror's prototype to redirect to the editor's document.\n var dontDelegate = \"iter insert remove copy getEditor constructor\".split(\" \");\n for (var prop in Doc.prototype) { if (Doc.prototype.hasOwnProperty(prop) && indexOf(dontDelegate, prop) < 0)\n { CodeMirror.prototype[prop] = (function(method) {\n return function() {return method.apply(this.doc, arguments)}\n })(Doc.prototype[prop]); } }\n\n eventMixin(Doc);\n CodeMirror.inputStyles = {\"textarea\": TextareaInput, \"contenteditable\": ContentEditableInput};\n\n // Extra arguments are stored as the mode's dependencies, which is\n // used by (legacy) mechanisms like loadmode.js to automatically\n // load a mode. (Preferred mechanism is the require/define calls.)\n CodeMirror.defineMode = function(name/*, mode, …*/) {\n if (!CodeMirror.defaults.mode && name != \"null\") { CodeMirror.defaults.mode = name; }\n defineMode.apply(this, arguments);\n };\n\n CodeMirror.defineMIME = defineMIME;\n\n // Minimal default mode.\n CodeMirror.defineMode(\"null\", function () { return ({token: function (stream) { return stream.skipToEnd(); }}); });\n CodeMirror.defineMIME(\"text/plain\", \"null\");\n\n // EXTENSIONS\n\n CodeMirror.defineExtension = function (name, func) {\n CodeMirror.prototype[name] = func;\n };\n CodeMirror.defineDocExtension = function (name, func) {\n Doc.prototype[name] = func;\n };\n\n CodeMirror.fromTextArea = fromTextArea;\n\n addLegacyProps(CodeMirror);\n\n CodeMirror.version = \"5.58.1\";\n\n return CodeMirror;\n\n})));\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","'use strict';\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Buffer = require('safe-buffer').Buffer;\nvar util = require('util');\n\nfunction copyBuffer(src, target, offset) {\n src.copy(target, offset);\n}\n\nmodule.exports = function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n\n BufferList.prototype.push = function push(v) {\n var entry = { data: v, next: null };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n };\n\n BufferList.prototype.unshift = function unshift(v) {\n var entry = { data: v, next: this.head };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n };\n\n BufferList.prototype.shift = function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n };\n\n BufferList.prototype.clear = function clear() {\n this.head = this.tail = null;\n this.length = 0;\n };\n\n BufferList.prototype.join = function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) {\n ret += s + p.data;\n }return ret;\n };\n\n BufferList.prototype.concat = function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n if (this.length === 1) return this.head.data;\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n };\n\n return BufferList;\n}();\n\nif (util && util.inspect && util.inspect.custom) {\n module.exports.prototype[util.inspect.custom] = function () {\n var obj = util.inspect({ length: this.length });\n return this.constructor.name + ' ' + obj;\n };\n}","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nvar utils = require('../utils/common');\n\nvar MAXBITS = 15;\nvar ENOUGH_LENS = 852;\nvar ENOUGH_DISTS = 592;\n//var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nvar CODES = 0;\nvar LENS = 1;\nvar DISTS = 2;\n\nvar lbase = [ /* Length codes 257..285 base */\n 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,\n 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0\n];\n\nvar lext = [ /* Length codes 257..285 extra */\n 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,\n 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78\n];\n\nvar dbase = [ /* Distance codes 0..29 base */\n 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,\n 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,\n 8193, 12289, 16385, 24577, 0, 0\n];\n\nvar dext = [ /* Distance codes 0..29 extra */\n 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,\n 23, 23, 24, 24, 25, 25, 26, 26, 27, 27,\n 28, 28, 29, 29, 64, 64\n];\n\nmodule.exports = function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts)\n{\n var bits = opts.bits;\n //here = opts.here; /* table entry for duplication */\n\n var len = 0; /* a code's length in bits */\n var sym = 0; /* index of code symbols */\n var min = 0, max = 0; /* minimum and maximum code lengths */\n var root = 0; /* number of index bits for root table */\n var curr = 0; /* number of index bits for current table */\n var drop = 0; /* code bits to drop for sub-table */\n var left = 0; /* number of prefix codes available */\n var used = 0; /* code entries in table used */\n var huff = 0; /* Huffman code */\n var incr; /* for incrementing code, index */\n var fill; /* index for replicating entries */\n var low; /* low bits for current root entry */\n var mask; /* mask for low root bits */\n var next; /* next available space in table */\n var base = null; /* base value table to use */\n var base_index = 0;\n// var shoextra; /* extra bits table to use */\n var end; /* use base and extra for symbol > end */\n var count = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */\n var offs = new utils.Buf16(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */\n var extra = null;\n var extra_index = 0;\n\n var here_bits, here_op, here_val;\n\n /*\n Process a set of code lengths to create a canonical Huffman code. The\n code lengths are lens[0..codes-1]. Each length corresponds to the\n symbols 0..codes-1. The Huffman code is generated by first sorting the\n symbols by length from short to long, and retaining the symbol order\n for codes with equal lengths. Then the code starts with all zero bits\n for the first code of the shortest length, and the codes are integer\n increments for the same length, and zeros are appended as the length\n increases. For the deflate format, these bits are stored backwards\n from their more natural integer increment ordering, and so when the\n decoding tables are built in the large loop below, the integer codes\n are incremented backwards.\n\n This routine assumes, but does not check, that all of the entries in\n lens[] are in the range 0..MAXBITS. The caller must assure this.\n 1..MAXBITS is interpreted as that code length. zero means that that\n symbol does not occur in this code.\n\n The codes are sorted by computing a count of codes for each length,\n creating from that a table of starting indices for each length in the\n sorted table, and then entering the symbols in order in the sorted\n table. The sorted table is work[], with that space being provided by\n the caller.\n\n The length counts are used for other purposes as well, i.e. finding\n the minimum and maximum length codes, determining if there are any\n codes at all, checking for a valid set of lengths, and looking ahead\n at length counts to determine sub-table sizes when building the\n decoding tables.\n */\n\n /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */\n for (len = 0; len <= MAXBITS; len++) {\n count[len] = 0;\n }\n for (sym = 0; sym < codes; sym++) {\n count[lens[lens_index + sym]]++;\n }\n\n /* bound code lengths, force root to be within code lengths */\n root = bits;\n for (max = MAXBITS; max >= 1; max--) {\n if (count[max] !== 0) { break; }\n }\n if (root > max) {\n root = max;\n }\n if (max === 0) { /* no symbols to code at all */\n //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */\n //table.bits[opts.table_index] = 1; //here.bits = (var char)1;\n //table.val[opts.table_index++] = 0; //here.val = (var short)0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n\n //table.op[opts.table_index] = 64;\n //table.bits[opts.table_index] = 1;\n //table.val[opts.table_index++] = 0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n opts.bits = 1;\n return 0; /* no symbols, but wait for decoding to report error */\n }\n for (min = 1; min < max; min++) {\n if (count[min] !== 0) { break; }\n }\n if (root < min) {\n root = min;\n }\n\n /* check for an over-subscribed or incomplete set of lengths */\n left = 1;\n for (len = 1; len <= MAXBITS; len++) {\n left <<= 1;\n left -= count[len];\n if (left < 0) {\n return -1;\n } /* over-subscribed */\n }\n if (left > 0 && (type === CODES || max !== 1)) {\n return -1; /* incomplete set */\n }\n\n /* generate offsets into symbol table for each length for sorting */\n offs[1] = 0;\n for (len = 1; len < MAXBITS; len++) {\n offs[len + 1] = offs[len] + count[len];\n }\n\n /* sort symbols by length, by symbol order within each length */\n for (sym = 0; sym < codes; sym++) {\n if (lens[lens_index + sym] !== 0) {\n work[offs[lens[lens_index + sym]]++] = sym;\n }\n }\n\n /*\n Create and fill in decoding tables. In this loop, the table being\n filled is at next and has curr index bits. The code being used is huff\n with length len. That code is converted to an index by dropping drop\n bits off of the bottom. For codes where len is less than drop + curr,\n those top drop + curr - len bits are incremented through all values to\n fill the table with replicated entries.\n\n root is the number of index bits for the root table. When len exceeds\n root, sub-tables are created pointed to by the root entry with an index\n of the low root bits of huff. This is saved in low to check for when a\n new sub-table should be started. drop is zero when the root table is\n being filled, and drop is root when sub-tables are being filled.\n\n When a new sub-table is needed, it is necessary to look ahead in the\n code lengths to determine what size sub-table is needed. The length\n counts are used for this, and so count[] is decremented as codes are\n entered in the tables.\n\n used keeps track of how many table entries have been allocated from the\n provided *table space. It is checked for LENS and DIST tables against\n the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in\n the initial root table size constants. See the comments in inftrees.h\n for more information.\n\n sym increments through all symbols, and the loop terminates when\n all codes of length max, i.e. all codes, have been processed. This\n routine permits incomplete codes, so another loop after this one fills\n in the rest of the decoding tables with invalid code markers.\n */\n\n /* set up for code type */\n // poor man optimization - use if-else instead of switch,\n // to avoid deopts in old v8\n if (type === CODES) {\n base = extra = work; /* dummy value--not used */\n end = 19;\n\n } else if (type === LENS) {\n base = lbase;\n base_index -= 257;\n extra = lext;\n extra_index -= 257;\n end = 256;\n\n } else { /* DISTS */\n base = dbase;\n extra = dext;\n end = -1;\n }\n\n /* initialize opts for loop */\n huff = 0; /* starting code */\n sym = 0; /* starting code symbol */\n len = min; /* starting code length */\n next = table_index; /* current table to fill in */\n curr = root; /* current table index bits */\n drop = 0; /* current bits to drop from code for index */\n low = -1; /* trigger new sub-table when len > root */\n used = 1 << root; /* use root table entries */\n mask = used - 1; /* mask for comparing low */\n\n /* check available table space */\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* process all codes and make table entries */\n for (;;) {\n /* create table entry */\n here_bits = len - drop;\n if (work[sym] < end) {\n here_op = 0;\n here_val = work[sym];\n }\n else if (work[sym] > end) {\n here_op = extra[extra_index + work[sym]];\n here_val = base[base_index + work[sym]];\n }\n else {\n here_op = 32 + 64; /* end of block */\n here_val = 0;\n }\n\n /* replicate for those indices with low len bits equal to huff */\n incr = 1 << (len - drop);\n fill = 1 << curr;\n min = fill; /* save offset to next table */\n do {\n fill -= incr;\n table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;\n } while (fill !== 0);\n\n /* backwards increment the len-bit code huff */\n incr = 1 << (len - 1);\n while (huff & incr) {\n incr >>= 1;\n }\n if (incr !== 0) {\n huff &= incr - 1;\n huff += incr;\n } else {\n huff = 0;\n }\n\n /* go to next symbol, update count, len */\n sym++;\n if (--count[len] === 0) {\n if (len === max) { break; }\n len = lens[lens_index + work[sym]];\n }\n\n /* create new sub-table if needed */\n if (len > root && (huff & mask) !== low) {\n /* if first time, transition to sub-tables */\n if (drop === 0) {\n drop = root;\n }\n\n /* increment past last table */\n next += min; /* here min is 1 << curr */\n\n /* determine length of next table */\n curr = len - drop;\n left = 1 << curr;\n while (curr + drop < max) {\n left -= count[curr + drop];\n if (left <= 0) { break; }\n curr++;\n left <<= 1;\n }\n\n /* check for enough space */\n used += 1 << curr;\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* point entry in root table to sub-table */\n low = huff & mask;\n /*table.op[low] = curr;\n table.bits[low] = root;\n table.val[low] = next - opts.table_index;*/\n table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;\n }\n }\n\n /* fill in remaining table entry if code is incomplete (guaranteed to have\n at most one remaining entry, since if the code is incomplete, the\n maximum code length that was allowed to get this far is one bit) */\n if (huff !== 0) {\n //table.op[next + huff] = 64; /* invalid code marker */\n //table.bits[next + huff] = len - drop;\n //table.val[next + huff] = 0;\n table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;\n }\n\n /* set return parameters */\n //opts.table_index += used;\n opts.bits = root;\n return 0;\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\n/* eslint camelcase: \"off\" */\n\nvar assert = require('assert');\n\nvar Zstream = require('pako/lib/zlib/zstream');\nvar zlib_deflate = require('pako/lib/zlib/deflate.js');\nvar zlib_inflate = require('pako/lib/zlib/inflate.js');\nvar constants = require('pako/lib/zlib/constants');\n\nfor (var key in constants) {\n exports[key] = constants[key];\n}\n\n// zlib modes\nexports.NONE = 0;\nexports.DEFLATE = 1;\nexports.INFLATE = 2;\nexports.GZIP = 3;\nexports.GUNZIP = 4;\nexports.DEFLATERAW = 5;\nexports.INFLATERAW = 6;\nexports.UNZIP = 7;\n\nvar GZIP_HEADER_ID1 = 0x1f;\nvar GZIP_HEADER_ID2 = 0x8b;\n\n/**\n * Emulate Node's zlib C++ layer for use by the JS layer in index.js\n */\nfunction Zlib(mode) {\n if (typeof mode !== 'number' || mode < exports.DEFLATE || mode > exports.UNZIP) {\n throw new TypeError('Bad argument');\n }\n\n this.dictionary = null;\n this.err = 0;\n this.flush = 0;\n this.init_done = false;\n this.level = 0;\n this.memLevel = 0;\n this.mode = mode;\n this.strategy = 0;\n this.windowBits = 0;\n this.write_in_progress = false;\n this.pending_close = false;\n this.gzip_id_bytes_read = 0;\n}\n\nZlib.prototype.close = function () {\n if (this.write_in_progress) {\n this.pending_close = true;\n return;\n }\n\n this.pending_close = false;\n\n assert(this.init_done, 'close before init');\n assert(this.mode <= exports.UNZIP);\n\n if (this.mode === exports.DEFLATE || this.mode === exports.GZIP || this.mode === exports.DEFLATERAW) {\n zlib_deflate.deflateEnd(this.strm);\n } else if (this.mode === exports.INFLATE || this.mode === exports.GUNZIP || this.mode === exports.INFLATERAW || this.mode === exports.UNZIP) {\n zlib_inflate.inflateEnd(this.strm);\n }\n\n this.mode = exports.NONE;\n\n this.dictionary = null;\n};\n\nZlib.prototype.write = function (flush, input, in_off, in_len, out, out_off, out_len) {\n return this._write(true, flush, input, in_off, in_len, out, out_off, out_len);\n};\n\nZlib.prototype.writeSync = function (flush, input, in_off, in_len, out, out_off, out_len) {\n return this._write(false, flush, input, in_off, in_len, out, out_off, out_len);\n};\n\nZlib.prototype._write = function (async, flush, input, in_off, in_len, out, out_off, out_len) {\n assert.equal(arguments.length, 8);\n\n assert(this.init_done, 'write before init');\n assert(this.mode !== exports.NONE, 'already finalized');\n assert.equal(false, this.write_in_progress, 'write already in progress');\n assert.equal(false, this.pending_close, 'close is pending');\n\n this.write_in_progress = true;\n\n assert.equal(false, flush === undefined, 'must provide flush value');\n\n this.write_in_progress = true;\n\n if (flush !== exports.Z_NO_FLUSH && flush !== exports.Z_PARTIAL_FLUSH && flush !== exports.Z_SYNC_FLUSH && flush !== exports.Z_FULL_FLUSH && flush !== exports.Z_FINISH && flush !== exports.Z_BLOCK) {\n throw new Error('Invalid flush value');\n }\n\n if (input == null) {\n input = Buffer.alloc(0);\n in_len = 0;\n in_off = 0;\n }\n\n this.strm.avail_in = in_len;\n this.strm.input = input;\n this.strm.next_in = in_off;\n this.strm.avail_out = out_len;\n this.strm.output = out;\n this.strm.next_out = out_off;\n this.flush = flush;\n\n if (!async) {\n // sync version\n this._process();\n\n if (this._checkError()) {\n return this._afterSync();\n }\n return;\n }\n\n // async version\n var self = this;\n process.nextTick(function () {\n self._process();\n self._after();\n });\n\n return this;\n};\n\nZlib.prototype._afterSync = function () {\n var avail_out = this.strm.avail_out;\n var avail_in = this.strm.avail_in;\n\n this.write_in_progress = false;\n\n return [avail_in, avail_out];\n};\n\nZlib.prototype._process = function () {\n var next_expected_header_byte = null;\n\n // If the avail_out is left at 0, then it means that it ran out\n // of room. If there was avail_out left over, then it means\n // that all of the input was consumed.\n switch (this.mode) {\n case exports.DEFLATE:\n case exports.GZIP:\n case exports.DEFLATERAW:\n this.err = zlib_deflate.deflate(this.strm, this.flush);\n break;\n case exports.UNZIP:\n if (this.strm.avail_in > 0) {\n next_expected_header_byte = this.strm.next_in;\n }\n\n switch (this.gzip_id_bytes_read) {\n case 0:\n if (next_expected_header_byte === null) {\n break;\n }\n\n if (this.strm.input[next_expected_header_byte] === GZIP_HEADER_ID1) {\n this.gzip_id_bytes_read = 1;\n next_expected_header_byte++;\n\n if (this.strm.avail_in === 1) {\n // The only available byte was already read.\n break;\n }\n } else {\n this.mode = exports.INFLATE;\n break;\n }\n\n // fallthrough\n case 1:\n if (next_expected_header_byte === null) {\n break;\n }\n\n if (this.strm.input[next_expected_header_byte] === GZIP_HEADER_ID2) {\n this.gzip_id_bytes_read = 2;\n this.mode = exports.GUNZIP;\n } else {\n // There is no actual difference between INFLATE and INFLATERAW\n // (after initialization).\n this.mode = exports.INFLATE;\n }\n\n break;\n default:\n throw new Error('invalid number of gzip magic number bytes read');\n }\n\n // fallthrough\n case exports.INFLATE:\n case exports.GUNZIP:\n case exports.INFLATERAW:\n this.err = zlib_inflate.inflate(this.strm, this.flush\n\n // If data was encoded with dictionary\n );if (this.err === exports.Z_NEED_DICT && this.dictionary) {\n // Load it\n this.err = zlib_inflate.inflateSetDictionary(this.strm, this.dictionary);\n if (this.err === exports.Z_OK) {\n // And try to decode again\n this.err = zlib_inflate.inflate(this.strm, this.flush);\n } else if (this.err === exports.Z_DATA_ERROR) {\n // Both inflateSetDictionary() and inflate() return Z_DATA_ERROR.\n // Make it possible for After() to tell a bad dictionary from bad\n // input.\n this.err = exports.Z_NEED_DICT;\n }\n }\n while (this.strm.avail_in > 0 && this.mode === exports.GUNZIP && this.err === exports.Z_STREAM_END && this.strm.next_in[0] !== 0x00) {\n // Bytes remain in input buffer. Perhaps this is another compressed\n // member in the same archive, or just trailing garbage.\n // Trailing zero bytes are okay, though, since they are frequently\n // used for padding.\n\n this.reset();\n this.err = zlib_inflate.inflate(this.strm, this.flush);\n }\n break;\n default:\n throw new Error('Unknown mode ' + this.mode);\n }\n};\n\nZlib.prototype._checkError = function () {\n // Acceptable error states depend on the type of zlib stream.\n switch (this.err) {\n case exports.Z_OK:\n case exports.Z_BUF_ERROR:\n if (this.strm.avail_out !== 0 && this.flush === exports.Z_FINISH) {\n this._error('unexpected end of file');\n return false;\n }\n break;\n case exports.Z_STREAM_END:\n // normal statuses, not fatal\n break;\n case exports.Z_NEED_DICT:\n if (this.dictionary == null) {\n this._error('Missing dictionary');\n } else {\n this._error('Bad dictionary');\n }\n return false;\n default:\n // something else.\n this._error('Zlib error');\n return false;\n }\n\n return true;\n};\n\nZlib.prototype._after = function () {\n if (!this._checkError()) {\n return;\n }\n\n var avail_out = this.strm.avail_out;\n var avail_in = this.strm.avail_in;\n\n this.write_in_progress = false;\n\n // call the write() cb\n this.callback(avail_in, avail_out);\n\n if (this.pending_close) {\n this.close();\n }\n};\n\nZlib.prototype._error = function (message) {\n if (this.strm.msg) {\n message = this.strm.msg;\n }\n this.onerror(message, this.err\n\n // no hope of rescue.\n );this.write_in_progress = false;\n if (this.pending_close) {\n this.close();\n }\n};\n\nZlib.prototype.init = function (windowBits, level, memLevel, strategy, dictionary) {\n assert(arguments.length === 4 || arguments.length === 5, 'init(windowBits, level, memLevel, strategy, [dictionary])');\n\n assert(windowBits >= 8 && windowBits <= 15, 'invalid windowBits');\n assert(level >= -1 && level <= 9, 'invalid compression level');\n\n assert(memLevel >= 1 && memLevel <= 9, 'invalid memlevel');\n\n assert(strategy === exports.Z_FILTERED || strategy === exports.Z_HUFFMAN_ONLY || strategy === exports.Z_RLE || strategy === exports.Z_FIXED || strategy === exports.Z_DEFAULT_STRATEGY, 'invalid strategy');\n\n this._init(level, windowBits, memLevel, strategy, dictionary);\n this._setDictionary();\n};\n\nZlib.prototype.params = function () {\n throw new Error('deflateParams Not supported');\n};\n\nZlib.prototype.reset = function () {\n this._reset();\n this._setDictionary();\n};\n\nZlib.prototype._init = function (level, windowBits, memLevel, strategy, dictionary) {\n this.level = level;\n this.windowBits = windowBits;\n this.memLevel = memLevel;\n this.strategy = strategy;\n\n this.flush = exports.Z_NO_FLUSH;\n\n this.err = exports.Z_OK;\n\n if (this.mode === exports.GZIP || this.mode === exports.GUNZIP) {\n this.windowBits += 16;\n }\n\n if (this.mode === exports.UNZIP) {\n this.windowBits += 32;\n }\n\n if (this.mode === exports.DEFLATERAW || this.mode === exports.INFLATERAW) {\n this.windowBits = -1 * this.windowBits;\n }\n\n this.strm = new Zstream();\n\n switch (this.mode) {\n case exports.DEFLATE:\n case exports.GZIP:\n case exports.DEFLATERAW:\n this.err = zlib_deflate.deflateInit2(this.strm, this.level, exports.Z_DEFLATED, this.windowBits, this.memLevel, this.strategy);\n break;\n case exports.INFLATE:\n case exports.GUNZIP:\n case exports.INFLATERAW:\n case exports.UNZIP:\n this.err = zlib_inflate.inflateInit2(this.strm, this.windowBits);\n break;\n default:\n throw new Error('Unknown mode ' + this.mode);\n }\n\n if (this.err !== exports.Z_OK) {\n this._error('Init error');\n }\n\n this.dictionary = dictionary;\n\n this.write_in_progress = false;\n this.init_done = true;\n};\n\nZlib.prototype._setDictionary = function () {\n if (this.dictionary == null) {\n return;\n }\n\n this.err = exports.Z_OK;\n\n switch (this.mode) {\n case exports.DEFLATE:\n case exports.DEFLATERAW:\n this.err = zlib_deflate.deflateSetDictionary(this.strm, this.dictionary);\n break;\n default:\n break;\n }\n\n if (this.err !== exports.Z_OK) {\n this._error('Failed to set dictionary');\n }\n};\n\nZlib.prototype._reset = function () {\n this.err = exports.Z_OK;\n\n switch (this.mode) {\n case exports.DEFLATE:\n case exports.DEFLATERAW:\n case exports.GZIP:\n this.err = zlib_deflate.deflateReset(this.strm);\n break;\n case exports.INFLATE:\n case exports.INFLATERAW:\n case exports.GUNZIP:\n this.err = zlib_inflate.inflateReset(this.strm);\n break;\n default:\n break;\n }\n\n if (this.err !== exports.Z_OK) {\n this._error('Failed to reset stream');\n }\n};\n\nexports.Zlib = Zlib;","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","/*!\n * vue-router v3.4.7\n * (c) 2020 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (process.env.NODE_ENV !== 'production' && !condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction extend (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nfunction decode (str) {\n try {\n return decodeURIComponent(str)\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"Error decoding \\\"\" + str + \"\\\". Leaving it intact.\"));\n }\n }\n return str\n}\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n process.env.NODE_ENV !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n var value = extraQuery[key];\n parsedQuery[key] = Array.isArray(value)\n ? value.map(castQueryParamValue)\n : castQueryParamValue(value);\n }\n return parsedQuery\n}\n\nvar castQueryParamValue = function (value) { return (value == null || typeof value === 'object' ? value : String(value)); };\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj\n ? Object.keys(obj)\n .map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n })\n .filter(function (x) { return x.length > 0; })\n .join('&')\n : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return (\n a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query)\n )\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params)\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a).sort();\n var bKeys = Object.keys(b).sort();\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key, i) {\n var aVal = a[key];\n var bKey = bKeys[i];\n if (bKey !== key) { return false }\n var bVal = b[key];\n // query values can be null and undefined\n if (aVal == null || bVal == null) { return aVal === bVal }\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\nfunction handleRouteEntered (route) {\n for (var i = 0; i < route.matched.length; i++) {\n var record = route.matched[i];\n for (var name in record.instances) {\n var instance = record.instances[name];\n var cbs = record.enteredCbs[name];\n if (!instance || !cbs) { continue }\n delete record.enteredCbs[name];\n for (var i$1 = 0; i$1 < cbs.length; i$1++) {\n if (!instance._isBeingDestroyed) { cbs[i$1](instance); }\n }\n }\n }\n}\n\nvar View = {\n name: 'RouterView',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n // used by devtools to display a router-view badge\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n var vnodeData = parent.$vnode ? parent.$vnode.data : {};\n if (vnodeData.routerView) {\n depth++;\n }\n if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n var cachedData = cache[name];\n var cachedComponent = cachedData && cachedData.component;\n if (cachedComponent) {\n // #2301\n // pass props\n if (cachedData.configProps) {\n fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);\n }\n return h(cachedComponent, data, children)\n } else {\n // render previous empty view\n return h()\n }\n }\n\n var matched = route.matched[depth];\n var component = matched && matched.components[name];\n\n // render empty node if no matched route or no config component\n if (!matched || !component) {\n cache[name] = null;\n return h()\n }\n\n // cache component\n cache[name] = { component: component };\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // register instance in init hook\n // in case kept-alive component be actived when routes changed\n data.hook.init = function (vnode) {\n if (vnode.data.keepAlive &&\n vnode.componentInstance &&\n vnode.componentInstance !== matched.instances[name]\n ) {\n matched.instances[name] = vnode.componentInstance;\n }\n\n // if the route transition has already been confirmed then we weren't\n // able to call the cbs during confirmation as the component was not\n // registered yet, so we call it here.\n handleRouteEntered(route);\n };\n\n var configProps = matched.props && matched.props[name];\n // save route and configProps in cache\n if (configProps) {\n extend(cache[name], {\n route: route,\n configProps: configProps\n });\n fillPropsinData(component, data, route, configProps);\n }\n\n return h(component, data, children)\n }\n};\n\nfunction fillPropsinData (component, data, route, configProps) {\n // resolve props\n var propsToPass = data.props = resolveProps(route, configProps);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n}\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/\\//g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options), options)\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options && options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n params = params || {};\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n\n // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}\n // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string\n if (typeof params.pathMatch === 'string') { params[0] = params.pathMatch; }\n\n return filler(params, { pretty: true })\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n // Fix #3072 no warn if `pathMatch` is string\n warn(typeof params.pathMatch === 'string', (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n } finally {\n // delete the 0 if it was added\n delete params[0];\n }\n}\n\n/* */\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next._normalized) {\n return next\n } else if (next.name) {\n next = extend({}, raw);\n var params = next.params;\n if (params && typeof params === 'object') {\n next.params = extend({}, params);\n }\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = extend({}, next);\n next._normalized = true;\n var params$1 = extend(extend({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params$1;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params$1, (\"path \" + (current.path)));\n } else if (process.env.NODE_ENV !== 'production') {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar noop = function () {};\n\nvar Link = {\n name: 'RouterLink',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n exact: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n ariaCurrentValue: {\n type: String,\n default: 'page'\n },\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(\n this.to,\n current,\n this.append\n );\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback =\n globalActiveClass == null ? 'router-link-active' : globalActiveClass;\n var exactActiveClassFallback =\n globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass =\n this.activeClass == null ? activeClassFallback : this.activeClass;\n var exactActiveClass =\n this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n\n var compareTarget = route.redirectedFrom\n ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget);\n classes[activeClass] = this.exact\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1.replace) {\n router.replace(location, noop);\n } else {\n router.push(location, noop);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) {\n on[e] = handler;\n });\n } else {\n on[this.event] = handler;\n }\n\n var data = { class: classes };\n\n var scopedSlot =\n !this.$scopedSlots.$hasNormal &&\n this.$scopedSlots.default &&\n this.$scopedSlots.default({\n href: href,\n route: route,\n navigate: handler,\n isActive: classes[activeClass],\n isExactActive: classes[exactActiveClass]\n });\n\n if (scopedSlot) {\n if (scopedSlot.length === 1) {\n return scopedSlot[0]\n } else if (scopedSlot.length > 1 || !scopedSlot.length) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n (\"RouterLink with to=\\\"\" + (this.to) + \"\\\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.\")\n );\n }\n return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot)\n }\n }\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href, 'aria-current': ariaCurrentValue };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var aData = (a.data = extend({}, a.data));\n aData.on = aData.on || {};\n // transform existing events in both objects into arrays so we can push later\n for (var event in aData.on) {\n var handler$1 = aData.on[event];\n if (event in on) {\n aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];\n }\n }\n // append new listeners for router-link\n for (var event$1 in on) {\n if (event$1 in aData.on) {\n // on[event] is always a function\n aData.on[event$1].push(on[event$1]);\n } else {\n aData.on[event$1] = handler;\n }\n }\n\n var aAttrs = (a.data.attrs = extend({}, a.data.attrs));\n aAttrs.href = href;\n aAttrs['aria-current'] = ariaCurrentValue;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('RouterView', View);\n Vue.component('RouterLink', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n if (process.env.NODE_ENV === 'development') {\n // warn if routes do not include leading slashes\n var found = pathList\n // check for missing leading slash\n .filter(function (path) { return path && path.charAt(0) !== '*' && path.charAt(0) !== '/'; });\n\n if (found.length > 0) {\n var pathNames = found.map(function (path) { return (\"- \" + path); }).join('\\n');\n warn(false, (\"Non-nested routes must include a leading slash character. Fix the following routes: \\n\" + pathNames));\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (process.env.NODE_ENV !== 'production') {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(\n path || name\n )) + \" cannot be a \" + \"string id. Use an actual component instead.\"\n );\n }\n\n var pathToRegexpOptions =\n route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n instances: {},\n enteredCbs: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props:\n route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (process.env.NODE_ENV !== 'production') {\n if (\n route.name &&\n !route.redirect &&\n route.children.some(function (child) { return /^\\/?$/.test(child.path); })\n ) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];\n for (var i = 0; i < aliases.length; ++i) {\n var alias = aliases[i];\n if (process.env.NODE_ENV !== 'production' && alias === path) {\n warn(\n false,\n (\"Found an alias with the same value as the path: \\\"\" + path + \"\\\". You have to remove that alias. It will be ignored in development.\")\n );\n // skip in dev to make it work\n continue\n }\n\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n }\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (process.env.NODE_ENV !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (\n path,\n pathToRegexpOptions\n) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (process.env.NODE_ENV !== 'production') {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(\n !keys[key.name],\n (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\")\n );\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (\n path,\n parent,\n strict\n) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n try {\n path = decodeURI(path);\n } catch (err) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"Error decoding \\\"\" + path + \"\\\". Leaving it intact.\"));\n }\n }\n\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n if (key) {\n // Fix #1994: using * with props: true generates a param named 0\n params[key.name || 'pathMatch'] = m[i];\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n// use User Timing api (if present) for more accurate key precision\nvar Time =\n inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nfunction genStateKey () {\n return Time.now().toFixed(3)\n}\n\nvar _key = genStateKey();\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n return (_key = key)\n}\n\n/* */\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Prevent browser scroll behavior on History popstate\n if ('scrollRestoration' in window.history) {\n window.history.scrollRestoration = 'manual';\n }\n // Fix for #1585 for Firefox\n // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678\n // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with\n // window.location.protocol + '//' + window.location.host\n // location.host contains the port and location.hostname doesn't\n var protocolAndPath = window.location.protocol + '//' + window.location.host;\n var absolutePath = window.location.href.replace(protocolAndPath, '');\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, window.history.state);\n stateCopy.key = getStateKey();\n window.history.replaceState(stateCopy, '', absolutePath);\n window.addEventListener('popstate', handlePopState);\n return function () {\n window.removeEventListener('popstate', handlePopState);\n }\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior.call(\n router,\n to,\n from,\n isPop ? position : null\n );\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll\n .then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n })\n .catch(function (err) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction handlePopState (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nvar hashStartsWithNumberRE = /^#\\d/;\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]\n // but at the same time, it doesn't make much sense to select an element with an id and an extra selector\n var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line\n ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line\n : document.querySelector(shouldScroll.selector);\n\n if (el) {\n var offset =\n shouldScroll.offset && typeof shouldScroll.offset === 'object'\n ? shouldScroll.offset\n : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n window.scrollTo(position.x, position.y);\n }\n}\n\n/* */\n\nvar supportsPushState =\n inBrowser &&\n (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && typeof window.history.pushState === 'function'\n })();\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, history.state);\n stateCopy.key = getStateKey();\n history.replaceState(stateCopy, '', url);\n } else {\n history.pushState({ key: setStateKey(genStateKey()) }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\n// When changing thing, also edit router.d.ts\nvar NavigationFailureType = {\n redirected: 2,\n aborted: 4,\n cancelled: 8,\n duplicated: 16\n};\n\nfunction createNavigationRedirectedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.redirected,\n (\"Redirected when going from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (stringifyRoute(\n to\n )) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createNavigationDuplicatedError (from, to) {\n var error = createRouterError(\n from,\n to,\n NavigationFailureType.duplicated,\n (\"Avoided redundant navigation to current location: \\\"\" + (from.fullPath) + \"\\\".\")\n );\n // backwards compatible with the first introduction of Errors\n error.name = 'NavigationDuplicated';\n return error\n}\n\nfunction createNavigationCancelledError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.cancelled,\n (\"Navigation cancelled from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" with a new navigation.\")\n )\n}\n\nfunction createNavigationAbortedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.aborted,\n (\"Navigation aborted from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createRouterError (from, to, type, message) {\n var error = new Error(message);\n error._isRouter = true;\n error.from = from;\n error.to = to;\n error.type = type;\n\n return error\n}\n\nvar propertiesToLog = ['params', 'query', 'hash'];\n\nfunction stringifyRoute (to) {\n if (typeof to === 'string') { return to }\n if ('path' in to) { return to.path }\n var location = {};\n propertiesToLog.forEach(function (key) {\n if (key in to) { location[key] = to[key]; }\n });\n return JSON.stringify(location, null, 2)\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nfunction isNavigationFailure (err, errorType) {\n return (\n isError(err) &&\n err._isRouter &&\n (errorType == null || err.type === errorType)\n )\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n process.env.NODE_ENV !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n this.listeners = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (\n location,\n onComplete,\n onAbort\n) {\n var this$1 = this;\n\n var route;\n // catch redirect option https://github.com/vuejs/vue-router/issues/3201\n try {\n route = this.router.match(location, this.current);\n } catch (e) {\n this.errorCbs.forEach(function (cb) {\n cb(e);\n });\n // Exception should still be thrown\n throw e\n }\n var prev = this.current;\n this.confirmTransition(\n route,\n function () {\n this$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1.ensureURL();\n this$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n\n // fire ready cbs once\n if (!this$1.ready) {\n this$1.ready = true;\n this$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n },\n function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1.ready) {\n // Initial redirection should not mark the history as ready yet\n // because it's triggered by the redirection instead\n // https://github.com/vuejs/vue-router/issues/3225\n // https://github.com/vuejs/vue-router/issues/3331\n if (!isNavigationFailure(err, NavigationFailureType.redirected) || prev !== START) {\n this$1.ready = true;\n this$1.readyErrorCbs.forEach(function (cb) {\n cb(err);\n });\n }\n }\n }\n );\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1 = this;\n\n var current = this.current;\n this.pending = route;\n var abort = function (err) {\n // changed after adding errors with\n // https://github.com/vuejs/vue-router/pull/3047 before that change,\n // redirect and aborted navigation would produce an err == null\n if (!isNavigationFailure(err) && isError(err)) {\n if (this$1.errorCbs.length) {\n this$1.errorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n warn(false, 'uncaught error during route navigation:');\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n var lastRouteIndex = route.matched.length - 1;\n var lastCurrentIndex = current.matched.length - 1;\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n lastRouteIndex === lastCurrentIndex &&\n route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]\n ) {\n this.ensureURL();\n return abort(createNavigationDuplicatedError(current, route))\n }\n\n var ref = resolveQueue(\n this.current.matched,\n route.matched\n );\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n var iterator = function (hook, next) {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n try {\n hook(route, current, function (to) {\n if (to === false) {\n // next(false) -> abort navigation, ensure current URL\n this$1.ensureURL(true);\n abort(createNavigationAbortedError(current, route));\n } else if (isError(to)) {\n this$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' &&\n (typeof to.path === 'string' || typeof to.name === 'string'))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort(createNavigationRedirectedError(current, route));\n if (typeof to === 'object' && to.replace) {\n this$1.replace(to);\n } else {\n this$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated);\n var queue = enterGuards.concat(this$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n this$1.pending = null;\n onComplete(route);\n if (this$1.router.app) {\n this$1.router.app.$nextTick(function () {\n handleRouteEntered(route);\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n this.current = route;\n this.cb && this.cb(route);\n};\n\nHistory.prototype.setupListeners = function setupListeners () {\n // Default implementation is empty\n};\n\nHistory.prototype.teardown = function teardown () {\n // clean up event listeners\n // https://github.com/vuejs/vue-router/issues/2341\n this.listeners.forEach(function (cleanupListener) {\n cleanupListener();\n });\n this.listeners = [];\n\n // reset current history route\n // https://github.com/vuejs/vue-router/issues/3294\n this.current = START;\n this.pending = null;\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated\n) {\n return extractGuards(\n activated,\n 'beforeRouteEnter',\n function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key)\n }\n )\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n if (typeof cb === 'function') {\n if (!match.enteredCbs[key]) {\n match.enteredCbs[key] = [];\n }\n match.enteredCbs[key].push(cb);\n }\n next(cb);\n })\n }\n}\n\n/* */\n\nvar HTML5History = /*@__PURE__*/(function (History) {\n function HTML5History (router, base) {\n History.call(this, router, base);\n\n this._startLocation = getLocation(this.base);\n }\n\n if ( History ) HTML5History.__proto__ = History;\n HTML5History.prototype = Object.create( History && History.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1.base);\n if (this$1.current === START && location === this$1._startLocation) {\n return\n }\n\n this$1.transitionTo(location, function (route) {\n if (supportsScroll) {\n handleScroll(router, route, current, true);\n }\n });\n };\n window.addEventListener('popstate', handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener('popstate', handleRoutingEvent);\n });\n };\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = window.location.pathname;\n if (base && path.toLowerCase().indexOf(base.toLowerCase()) === 0) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\nvar HashHistory = /*@__PURE__*/(function (History) {\n function HashHistory (router, base, fallback) {\n History.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History ) HashHistory.__proto__ = History;\n HashHistory.prototype = Object.create( History && History.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n };\n var eventType = supportsPushState ? 'popstate' : 'hashchange';\n window.addEventListener(\n eventType,\n handleRoutingEvent\n );\n this.listeners.push(function () {\n window.removeEventListener(eventType, handleRoutingEvent);\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(cleanPath(base + '/#' + location));\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n // empty path\n if (index < 0) { return '' }\n\n href = href.slice(index + 1);\n\n return href\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\nvar AbstractHistory = /*@__PURE__*/(function (History) {\n function AbstractHistory (router, base) {\n History.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History ) AbstractHistory.__proto__ = History;\n AbstractHistory.prototype = Object.create( History && History.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index + 1).concat(route);\n this$1.index++;\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index).concat(route);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(\n route,\n function () {\n var prev = this$1.current;\n this$1.index = targetIndex;\n this$1.updateRoute(route);\n this$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n },\n function (err) {\n if (isNavigationFailure(err, NavigationFailureType.duplicated)) {\n this$1.index = targetIndex;\n }\n }\n );\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback =\n mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (process.env.NODE_ENV !== 'production') {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (raw, current, redirectedFrom) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1 = this;\n\n process.env.NODE_ENV !== 'production' &&\n assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // set up app destroyed handler\n // https://github.com/vuejs/vue-router/issues/2639\n app.$once('hook:destroyed', function () {\n // clean out app from this.apps array once destroyed\n var index = this$1.apps.indexOf(app);\n if (index > -1) { this$1.apps.splice(index, 1); }\n // ensure we still have a main app or null if no apps\n // we do not release the router so it can be reused\n if (this$1.app === app) { this$1.app = this$1.apps[0] || null; }\n\n if (!this$1.app) { this$1.history.teardown(); }\n });\n\n // main app previously initialized\n // return as we don't need to set up new history listener\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History || history instanceof HashHistory) {\n var handleInitialScroll = function (routeOrError) {\n var from = history.current;\n var expectScroll = this$1.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll && 'fullPath' in routeOrError) {\n handleScroll(this$1, routeOrError, from, false);\n }\n };\n var setupListeners = function (routeOrError) {\n history.setupListeners();\n handleInitialScroll(routeOrError);\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupListeners,\n setupListeners\n );\n }\n\n history.listen(function (route) {\n this$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.push(location, resolve, reject);\n })\n } else {\n this.history.push(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.replace(location, resolve, reject);\n })\n } else {\n this.history.replace(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply(\n [],\n route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n })\n )\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n current = current || this.history.current;\n var location = normalizeLocation(to, current, append, this);\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\nVueRouter.install = install;\nVueRouter.version = '3.4.7';\nVueRouter.isNavigationFailure = isNavigationFailure;\nVueRouter.NavigationFailureType = NavigationFailureType;\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\nexport default VueRouter;\n","exports.f = Object.getOwnPropertySymbols;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","module.exports = {};\n","module.exports = false;\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n\n'use strict';\n\nmodule.exports = PassThrough;\n\nvar Transform = require('./_stream_transform');\n\n/**/\nvar util = Object.create(require('core-util-is'));\nutil.inherits = require('inherits');\n/**/\n\nutil.inherits(PassThrough, Transform);\n\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n\n Transform.call(this, options);\n}\n\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","/*!\n * Vue.js v2.6.12\n * (c) 2014-2020 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return ''\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.