-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path2.0.0-alpha.1.html
36 lines (35 loc) · 712 KB
/
2.0.0-alpha.1.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="#000000">
<title>Verse</title>
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/
-->
<link rel="manifest" href="/manifest.json">
<link rel="shortcut icon" href="/favicon.ico">
<!--
%PUBLIC_URL% has been removed from the tags above.
%PUBLIC_URL% will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<style id="main-css" type="text/css">
body{margin:0;padding:0;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace}.ErrorPanel,.TestResultsPanel{-webkit-box-sizing:border-box;box-sizing:border-box;height:calc(var(--content-height) - 32px);padding:12px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:16px;white-space:pre-wrap}.TestResultsPanel{color:var(--phosphor-green);text-shadow:#0fac;background:var(--bobby-blue)}.links{position:absolute;color:#555;top:-20px;font-size:10px}.links a,.links a:visited{color:#226;text-decoration:underline}.Backdrop{height:100vh;width:100vw;min-height:var(--content-height);min-width:var(--content-width);position:absolute;background:-webkit-gradient(linear,left top,left bottom,color-stop(10%,var(--sunlit-apple)),color-stop(50%,var(--lichen)));background:-webkit-linear-gradient(top,var(--sunlit-apple) 10%,var(--lichen) 50%);background:-o-linear-gradient(top,var(--sunlit-apple) 10%,var(--lichen) 50%);background:linear-gradient(180deg,var(--sunlit-apple) 10%,var(--lichen) 50%)}.CenteredContainer{position:absolute;background:transparent}.Pane{position:absolute;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.Pane.scroll{overflow-y:auto}.Editor .syntaxError{position:absolute;background-color:#fda}.Tab{font-size:12px;padding:2px 6px;height:22px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#000;border:0 solid #000;cursor:pointer;display:inline-block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;min-width:54px;margin-right:3px;text-align:center}.Tab:hover{background-color:hsla(0,0%,100%,.2)}.Tab.selected{border-bottom-width:2px}.DustCover{z-index:999;background-color:#222c;padding-top:calc(var(--content-height) / 2 - 20px);padding-left:12px;padding-right:12px;cursor:pointer;text-align:center;height:var(--content-height)}.DustCover div{border:1px solid #0c9;padding:6px 12px;color:#0c9;display:inline-block;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:20px}.DustCover:hover div{background-color:#fff2}.Terminal{height:calc(var(--content-height) - 32px);overflow:hidden;white-space:pre-wrap;color:var(--phosphor-green);text-shadow:#0fac;background:var(--basic-gray);border:2px outset var(--basic-gray);padding:7px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:14px;line-height:18px;-webkit-font-smoothing:antialiased}.Terminal,.Terminal>.screen{-webkit-box-sizing:border-box;box-sizing:border-box}.Terminal>.screen{height:100%;padding:12px;border:2px inset var(--basic-gray);background:var(--bobby-blue);overflow-y:auto}.Terminal .Input{padding-top:1ch}.Terminal .InputForm button,.Terminal .Input input,.Terminal .Input textarea{-webkit-box-sizing:border-box;box-sizing:border-box;background:#000;border:none;color:inherit;font-size:inherit;font-family:inherit;padding:.5ch 1ch;border-radius:3px}.Terminal .Input input,.Terminal .Input textarea{width:100%}.Terminal .Input textarea{resize:vertical}.Terminal .InputForm button{display:inline-block;cursor:pointer;margin-top:1ch}.Terminal .InputForm button:focus,.Terminal .InputForm button:hover,.Terminal .Input input:focus,.Terminal .Input textarea:focus{background:#444}
/*# sourceMappingURL=main.70c7843d.css.map*/ </style>
<script id="main-script" type="text/javascript">
!function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i})},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=61)}([function(e,t,n){"use strict";e.exports=n(68)},function(e,t,n){"use strict";function i(e){return"string"===typeof e}function r(e){return e===+e}function o(e){return"[object Object]"===Object.prototype.toString.call(e)}function s(e){return Array.isArray(e)}function a(e){return"[object GeneratorFunction]"===Object.prototype.toString.call(e)}function l(e){return"[object Generator]"===Object.prototype.toString.call(e)}function c(e){return"function"===typeof e}function u(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function h(e){return!0}t.i=i,t.f=r,t.g=o,t.b=s,t.d=a,t.e=l,t.c=c,t.h=u,t.a=h},function(e,t,n){"use strict";function i(e,t,n){if(!t(e))throw c("error","uncaught at check",n),new Error(n)}function r(e,t){return x.notUndef(e)&&F.call(e,t)}function o(e,t){var n=e.indexOf(t);n>=0&&e.splice(n,1)}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=h({},e),n=new Promise(function(e,n){t.resolve=e,t.reject=n});return t.promise=n,t}function a(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=void 0,i=new Promise(function(i){n=setTimeout(function(){return i(t)},e)});return i[v]=function(){return clearTimeout(n)},i}function l(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:_,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments[3],r={name:n,next:e,throw:t,return:D};return i&&(r[g]=!0),"undefined"!==typeof Symbol&&(r[Symbol.iterator]=function(){return r}),r}function c(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";"undefined"===typeof window?console.log("redux-saga "+e+": "+t+"\n"+(n&&n.stack||n)):console[e](t,n)}function u(e,t){return function(){return e.apply(void 0,arguments)}}n.d(t,"u",function(){return f}),n.d(t,"e",function(){return p}),n.d(t,"b",function(){return m}),n.d(t,"a",function(){return v}),n.d(t,"c",function(){return y}),n.d(t,"d",function(){return b}),n.d(t,"o",function(){return C}),n.d(t,"r",function(){return A}),n.d(t,"l",function(){return E}),t.g=i,n.d(t,"n",function(){return x}),n.d(t,"s",function(){return k}),t.t=o,n.d(t,"f",function(){return S}),t.i=s,t.j=a,n.d(t,"v",function(){return $}),t.q=l,t.p=c,t.k=u,n.d(t,"w",function(){return B}),n.d(t,"m",function(){return T}),n.d(t,"h",function(){return L}),n.d(t,"x",function(){return O});var h=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},d="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},f=function(e){return"@@redux-saga/"+e},p=f("TASK"),g=f("HELPER"),m=f("MATCH"),v=f("CANCEL_PROMISE"),y=f("SAGA_ACTION"),b=f("SELF_CANCELLATION"),w=function(e){return function(){return e}},C=w(!0),A=function(){},E=function(e){return e},F=Object.prototype.hasOwnProperty,x={undef:function(e){return null===e||void 0===e},notUndef:function(e){return null!==e&&void 0!==e},func:function(e){return"function"===typeof e},number:function(e){return"number"===typeof e},string:function(e){return"string"===typeof e},array:Array.isArray,object:function(e){return e&&!x.array(e)&&"object"===("undefined"===typeof e?"undefined":d(e))},promise:function(e){return e&&x.func(e.then)},iterator:function(e){return e&&x.func(e.next)&&x.func(e.throw)},iterable:function(e){return e&&x.func(Symbol)?x.func(e[Symbol.iterator]):x.array(e)},task:function(e){return e&&e[p]},observable:function(e){return e&&x.func(e.subscribe)},buffer:function(e){return e&&x.func(e.isEmpty)&&x.func(e.take)&&x.func(e.put)},pattern:function(e){return e&&(x.string(e)||"symbol"===("undefined"===typeof e?"undefined":d(e))||x.func(e)||x.array(e))},channel:function(e){return e&&x.func(e.take)&&x.func(e.close)},helper:function(e){return e&&e[g]},stringableFunc:function(e){return x.func(e)&&r(e,"toString")}},k={assign:function(e,t){for(var n in t)r(t,n)&&(e[n]=t[n])}},S={from:function(e){var t=Array(e.length);for(var n in e)r(e,n)&&(t[n]=e[n]);return t}},$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return function(){return++e}}(),_=function(e){throw e},D=function(e){return{value:e,done:!0}},B=function(e,t){return e+" has been deprecated in favor of "+t+", please update your code"},T=function(e){return new Error("\n redux-saga: Error checking hooks detected an inconsistent state. This is likely a bug\n in redux-saga code and not yours. Thanks for reporting this in the project's github repo.\n Error: "+e+"\n")},L=function(e,t){return(e?e+".":"")+"setContext(props): argument "+t+" is not a plain object"},O=function(e){return function(t){return e(Object.defineProperty(t,y,{value:!0}))}}},function(e,t,n){"use strict";function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}function r(e,t,n){function r(){return n.optionalArgs||0}function o(){return n.curry?0:n.variadic?n.types.length-1:n.types.length-r()}function a(){return n.curry&&t.length<n.curry?["","Note that this function supports partial application, so it is OK to supply fewer than "+n.curry+" arguments."]:[]}function l(){return n.variadic?["","Note that this function can be called with any number of arguments >= "+o()+"."]:[]}function c(){return["The `"+e.name+"` function was called with unexpected arguments:",""," "+e.name+"("+[].concat(i(t)).map(s.a).join(", ")+")","","It expected something like:",""," "+e.name+"("+n.example.map(s.e).join(", ")+")"].concat(i(a()),i(l())).join("\n")}if(t.length>function(){return n.variadic?1/0:n.types.length}()||t.length<o())throw Error(c());for(var u=0;function(e){return e<n.types.length&&e<t.length}(u);u++){var h=t[u],d=n.types[u];if(n.variadic&&u===n.types.length-1){if(!d([].concat(i(t)).slice(u)))throw Error(c())}else if(!d(h))throw Error(c())}}function o(e){var t=function(){};return Object.defineProperty(t,"name",{get:function(){return e}}),t}t.a=r,t.b=o;var s=n(10)},function(e,t,n){"use strict";function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}function r(e,t){return o(function(){for(var n=arguments.length,r=Array(n),o=0;o<n;o++)r[o]=arguments[o];return e.apply(void 0,i(t).concat(r))},function(){return s(e.name,t)})}function o(e,t){var n=null;return Object.defineProperty(e,"name",{get:function(){return null===n&&(n=t()),n}}),e}function s(e,t){var n=e&&Object(a.i)(e)?e:l.d;if(t.length){return n+"("+[].concat(i(t)).map(l.a).join(", ")+")"}return n}t.a=r,t.b=o;var a=n(1),l=n(10)},function(e,t,n){"use strict";function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"*";if(arguments.length&&Object(p.g)(arguments[0],p.n.notUndef,"take(patternOrChannel): patternOrChannel is undefined"),p.n.pattern(e))return L(v,{pattern:e});if(p.n.channel(e))return L(v,{channel:e});throw new Error("take(patternOrChannel): argument "+String(e)+" is not valid channel or a valid pattern")}function r(e,t){return arguments.length>1?(Object(p.g)(e,p.n.notUndef,"put(channel, action): argument channel is undefined"),Object(p.g)(e,p.n.channel,"put(channel, action): argument "+e+" is not a valid channel"),Object(p.g)(t,p.n.notUndef,"put(channel, action): argument action is undefined")):(Object(p.g)(e,p.n.notUndef,"put(action): argument action is undefined"),t=e,e=null),L(y,{channel:e,action:t})}function o(e){return L(b,e)}function s(e,t,n){Object(p.g)(t,p.n.notUndef,e+": argument fn is undefined");var i=null;if(p.n.array(t)){var r=t;i=r[0],t=r[1]}else if(t.fn){var o=t;i=o.context,t=o.fn}return i&&p.n.string(t)&&p.n.func(i[t])&&(t=i[t]),Object(p.g)(t,p.n.func,e+": argument "+t+" is not a function"),{context:i,fn:t,args:n}}function a(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return L(C,s("call",e,n))}function l(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return L(E,s("fork",e,n))}function c(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(t.length>1)return o(t.map(function(e){return c(e)}));var i=t[0];return 1===t.length&&(Object(p.g)(i,p.n.notUndef,"cancel(task): argument task is undefined"),Object(p.g)(i,p.n.task,"cancel(task): argument "+i+" is not a valid Task object "+T)),L(x,i||p.d)}function u(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return 0===arguments.length?e=p.l:(Object(p.g)(e,p.n.notUndef,"select(selector,[...]): argument selector is undefined"),Object(p.g)(e,p.n.func,"select(selector,[...]): argument "+e+" is not a function")),L(k,{selector:e,args:n})}function h(e,t){return Object(p.g)(e,p.n.notUndef,"actionChannel(pattern,...): argument pattern is undefined"),arguments.length>1&&(Object(p.g)(t,p.n.notUndef,"actionChannel(pattern, buffer): argument buffer is undefined"),Object(p.g)(t,p.n.buffer,"actionChannel(pattern, buffer): argument "+t+" is not a valid buffer")),L(S,{pattern:e,buffer:t})}function d(e,t){for(var n=arguments.length,i=Array(n>2?n-2:0),r=2;r<n;r++)i[r-2]=arguments[r];return l.apply(void 0,[g.a,e,t].concat(i))}function f(e,t){for(var n=arguments.length,i=Array(n>2?n-2:0),r=2;r<n;r++)i[r-2]=arguments[r];return l.apply(void 0,[g.b,e,t].concat(i))}t.h=i,t.f=r,t.c=a,t.e=l,t.d=c,t.g=u,t.a=h,t.i=d,t.j=f,n.d(t,"b",function(){return R});var p=n(2),g=n(50),m=Object(p.u)("IO"),v="TAKE",y="PUT",b="ALL",w="RACE",C="CALL",A="CPS",E="FORK",F="JOIN",x="CANCEL",k="SELECT",S="ACTION_CHANNEL",$="CANCELLED",_="FLUSH",D="GET_CONTEXT",B="SET_CONTEXT",T="\n(HINT: if you are getting this errors in tests, consider using createMockTask from redux-saga/utils)",L=function(e,t){var n;return n={},n[m]=!0,n[e]=t,n};i.maybe=function(){var e=i.apply(void 0,arguments);return e[v].maybe=!0,e};i.maybe;r.resolve=function(){var e=r.apply(void 0,arguments);return e[y].resolve=!0,e},r.sync=Object(p.k)(r.resolve,Object(p.w)("put.sync","put.resolve"));var O=function(e){return function(t){return t&&t[m]&&t[e]}},R={take:O(v),put:O(y),all:O(b),race:O(w),call:O(C),cps:O(A),fork:O(E),join:O(F),cancel:O(x),select:O(k),actionChannel:O(S),cancelled:O($),flush:O(_),getContext:O(D),setContext:O(B)}},function(e,t,n){"use strict";function i(e,t){return Object(a.a)(i,arguments,l),arguments.length<l.curry?Object(o.a)(i,arguments):Object(o.b)(function(){return e.apply(void 0,arguments)||t.apply(void 0,arguments)},function(){return"or("+e.name+", "+t.name+")"})}function r(e){var t=function(){return!e.apply(void 0,arguments)};return Object(o.b)(t,function(){return"not("+e.name+")"})}t.b=i,t.a=r;var o=n(4),s=n(1),a=n(3),l={curry:2,example:[s.i,s.f],types:[s.c,s.c]}},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"===typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function i(){function e(e){return n.push(e),function(){return Object(a.t)(n,e)}}function t(e){for(var t=n.slice(),i=0,r=t.length;i<r;i++)t[i](e)}var n=[];return{subscribe:e,emit:t}}function r(){function e(){if(s&&c.length)throw Object(a.m)("Cannot have a closed channel with pending takers");if(c.length&&!o.isEmpty())throw Object(a.m)("Cannot have pending takers with non empty buffer")}function t(t){if(e(),Object(a.g)(t,a.n.notUndef,p),!s){if(!c.length)return o.put(t);for(var n=0;n<c.length;n++){var i=c[n];if(!i[a.b]||i[a.b](t))return c.splice(n,1),i(t)}}}function n(t){e(),Object(a.g)(t,a.n.func,"channel.take's callback must be a function"),s&&o.isEmpty()?t(h):o.isEmpty()?(c.push(t),t.cancel=function(){return Object(a.t)(c,t)}):t(o.take())}function i(t){if(e(),Object(a.g)(t,a.n.func,"channel.flush' callback must be a function"),s&&o.isEmpty())return void t(h);t(o.flush())}function r(){if(e(),!s&&(s=!0,c.length)){var t=c;c=[];for(var n=0,i=t.length;n<i;n++)t[n](h)}}var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.a.fixed(),s=!1,c=[];return Object(a.g)(o,a.n.buffer,f),{take:n,put:t,flush:i,close:r,get __takers__(){return c},get __closed__(){return s}}}function o(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.a.none(),n=arguments[2];arguments.length>2&&Object(a.g)(n,a.n.func,"Invalid match function passed to eventChannel");var i=r(t),o=function(){i.__closed__||(s&&s(),i.close())},s=e(function(e){if(d(e))return void o();n&&!n(e)||i.put(e)});if(i.__closed__&&s(),!a.n.func(s))throw new Error("in eventChannel: subscribe should return a function to unsubscribe");return{take:i.take,flush:i.flush,close:o}}function s(e){var t=o(function(t){return e(function(e){if(e[a.c])return void t(e);Object(c.a)(function(){return t(e)})})});return u({},t,{take:function(e,n){arguments.length>1&&(Object(a.g)(n,a.n.func,"channel.take's matcher argument must be a function"),e[a.b]=n),t.take(e)}})}n.d(t,"a",function(){return h}),n.d(t,"d",function(){return d}),t.b=i,t.c=o,t.e=s;var a=n(2),l=n(16),c=n(47),u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},h={type:"@@redux-saga/CHANNEL_END"},d=function(e){return e&&"@@redux-saga/CHANNEL_END"===e.type},f="invalid buffer passed to channel factory function",p="Saga was provided with an undefined action"},function(e,t,n){e.exports=n(113)},function(e,t,n){"use strict";function i(e){function t(e){if(Object(a.i)(e))return Object(l.b)(e);if(Object(a.b)(e)){if(i.indexOf(e)>-1)return n;i.push(e);var r=e.map(t).join(",\n");return e.length>1?(i.pop(),"[\n"+Object(l.a)(r)+"\n]"):(i.pop(),"["+r+"]")}if(Object(a.g)(e)){if(i.indexOf(e)>-1)return n;i.push(e);var o=Object.keys(e),s=o.map(function(n){return Object(l.b)(n)+": "+t(e[n])}).join(",\n");return o.length>1?(i.pop(),"{\n"+Object(l.a)(s)+"\n}"):(i.pop(),"{"+s+"}")}return Object(a.c)(e)?e.name||u:""+e}var n="<circular reference>",i=[];return t(e)}function r(e){if(Object(a.i)(e))return Object(l.b)(e.length>10?e.slice(0,10)+"...":e);if(Object(a.g)(e)){for(var t in e)return"{...}";return"{}"}return Array.isArray(e)?e.length?"[...]":"[]":"symbol"===("undefined"===typeof e?"undefined":c(e))?"Symbol()":Object(a.c)(e)?e.name||u:""+e}function o(e){return Object(a.i)(e)?e:i(e)}function s(e){return e.length<3?e.join(" and "):e.slice(0,e.length-1).join(", ")+", and "+e[e.length-1]}n.d(t,"d",function(){return u}),t.e=i,t.a=r,t.b=o,t.c=s;var a=n(1),l=n(29),c="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},u="<function>"},function(e,t,n){"use strict";function i(e,t){return Object(g.a)(i,arguments,m),r.apply(null,arguments)}function r(e,t){if(arguments.length<m.curry)return Object(u.a)(r,arguments);if(t&&t._verse_type===e)return!0;if("function"===typeof e)return e(t);if(Object(f.a)(e,p.g),!Object(p.g)(t))return!1;if(!Object(d.g)(e,t))return!1;var n=!0,o=!1,s=void 0;try{for(var a,l=Object.keys(e)[Symbol.iterator]();!(n=(a=l.next()).done);n=!0){var c=a.value;if(!i(e[c],t[c]))return!1}}catch(e){o=!0,s=e}finally{try{!n&&l.return&&l.return()}finally{if(o)throw s}}return Object.defineProperty(t,"_verse_type",{value:e,writable:!0}),!0}function o(e){if(Object(p.g)(e))return Object(d.f)(o,e);if(Object(d.d)("defaultValue",e))return e.defaultValue;var t=[null,[],0,""],n=t.find(e);if(void 0===n)throw new Error("No default value for type");return n}function s(e,t){return arguments.length<2?Object(u.a)(s,arguments):Array.isArray(t)&&t.every(i(e))}function a(e){return function(t){return null===t||i(e,t)}}function l(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];Object(f.a)(t,Object(h.a)(c));var i=function(e){return t.includes(e)};return i.defaultValue=t[0],i}function c(e){if(Object(g.a)(c,arguments,v),Object(p.g)(e)){for(var t in e)return!1;return!0}var n=!0,i=!1,r=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){o.value;return!1}}catch(e){i=!0,r=e}finally{try{!n&&s.return&&s.return()}finally{if(i)throw r}}return!0}t.f=i,t.a=o,t.b=s,t.d=a,t.e=l,t.c=c;var u=n(4),h=n(6),d=n(12),f=n(18),p=n(1),g=n(3),m={curry:2,example:[{name:p.i},{name:"Elias"}],types:[Object(h.b)(p.g,p.c),p.a]},v={example:[[]],types:[Object(h.b)(Object(h.b)(p.i,p.b),p.g)]}},function(e,t,n){"use strict";function i(e,t){var n=Object.keys(e),i=Object.keys(t);return n.length===i.length&&i.every(function(t){return l(e,t)})}function r(e,t){Object(d.a)(r,arguments,g);var n={},i=!0,o=!1,s=void 0;try{for(var a,l=Object.keys(t)[Symbol.iterator]();!(i=(a=l.next()).done);i=!0){var c=a.value;n[c]=e(t[c])}}catch(e){o=!0,s=e}finally{try{!i&&l.return&&l.return()}finally{if(o)throw s}}return n}function o(e,t){return Object(d.a)(o,arguments,m),arguments.length<2?Object(h.a)(o,arguments):Object.prototype.hasOwnProperty.call(t,e)}function s(e,t,n){return Object(d.a)(s,arguments,v),arguments.length<3?Object(h.a)(s,arguments):o(e,n)&&Object(p.d)(n[e],t)}function a(e,t,n){return Object(d.a)(a,arguments,y),arguments.length<3?Object(h.a)(a,arguments):o(e,n)&&t(n[e])}function l(e,t){return Object(d.a)(l,arguments,b),arguments.length<2?Object(h.a)(l,arguments):Object.prototype.hasOwnProperty.call(e,t)}function c(e){return Object.keys(e).map(function(t){return[t,e[t]]})}t.g=i,t.f=r,t.d=o,t.c=s,t.b=a,t.e=l,t.a=c;var u=n(1),h=n(4),d=n(3),f=n(6),p=n(13),g={example:[Object(d.b)("uppercase"),{name:"robin"}],types:[u.c,u.g]},m={curry:2,example:["name",{name:"elias"}],types:[u.i,u.a]},v={curry:3,example:["name","elias",{name:"elias"}],types:[u.i,u.a,u.a]},y={curry:3,example:["name",Object(p.d)("elias"),{name:"elias"}],types:[u.i,u.c,u.a]},b={curry:2,example:[{name:"elias"},"name"],types:[Object(f.b)(u.g,u.c),u.i]}},function(e,t,n){"use strict";function i(e,t){if(e instanceof Array)return t instanceof Array&&(e.length===t.length&&e.every(function(e,n){return i(e,t[n])}));if(e instanceof Object){var n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(function(n){return i(e[n],t[n])})}return e===t}function r(e){for(var t=arguments.length,n=Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return Object(A.a)(r,arguments,F),n.reduce(function(e,t){return t(e)},e)}function o(e){return(""+e).toUpperCase()}function s(e){return(""+e).toLowerCase()}function a(e){return e=""+e,e.length<2?e:a(u(e))+c(e)}function l(e,t,n){return Object(A.a)(l,arguments,x),arguments.length<x.curry?Object(w.a)(l,arguments):n.split(e).join(t)}function c(e){return Object(A.a)(c,arguments,k),e[0]}function u(e){return Object(A.a)(c,arguments,k),e.slice(1)}function h(e,t){return Object(A.a)(h,arguments,S),arguments.length<S.curry?Object(w.a)(h,arguments):t[e]}function d(e,t){if(Object(A.a)(d,arguments,$),t<e)throw Error("Expected arguments to range() to be in ascending order, but got: "+e+", "+t);for(var n=[],i=e;i<=t;i++)n.push(i);return n}function f(e){return Object(A.a)(f,arguments,_),e.length}function p(e){return!!e}function g(e,t){return e===t}function m(e,t){return Object(A.a)(m,arguments,D),0===t.indexOf(e)}function v(e,t){return arguments.length<2?Object(w.a)(v,arguments):e.map(function(e){return e(t)})}function y(e,t){return Object(A.a)(y,arguments,B),arguments.length<B.curry?Object(w.a)(y,arguments):t.indexOf(e)>-1}t.d=i,t.c=r,t.p=o,t.i=s,t.m=a,t.k=l,t.e=c,t.l=u,t.f=h,t.j=d,t.b=f,t.h=p,t.g=g,t.n=m,t.o=v,t.a=y;var b=n(1),w=n(4),C=n(11),A=n(3),E=n(6),F={variadic:!0,example:["hello",o,a],types:[b.a,Object(C.b)(b.c)]},x={curry:3,example:["i","ello","Hi there!"],types:[Object(E.b)(b.i,b.h),b.i,b.i]},k={example:["abc"],types:[Object(E.b)(b.i,b.b)]},S={curry:2,example:["key",{key:"value"}],types:[Object(E.b)(b.i,b.f),b.a]},$={example:[1,10],types:[b.f,b.f]},_={example:[[1,2,3]],types:[Object(E.b)(b.b,b.i)]},D={example:["y","yes"],types:[b.i,b.i]},B={curry:2,example:["ee","green cheese"],types:[b.a,Object(E.b)(b.i,b.b)]}},function(e,t,n){e.exports=n(78)()},function(e,t,n){"use strict";var i=n(106),r=(n(48),n(8));n.d(t,"d",function(){return r.c});var o=n(16);n.d(t,"a",function(){return o.a});var s=(n(50),n(2));n.d(t,"c",function(){return s.j});n(5),n(51),n(110);t.b=i.a},function(e,t,n){"use strict";function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10,t=arguments[1],n=new Array(e),i=0,r=0,c=0,u=function(t){n[r]=t,r=(r+1)%e,i++},h=function(){if(0!=i){var t=n[c];return n[c]=null,i--,c=(c+1)%e,t}},d=function(){for(var e=[];i;)e.push(h());return e};return{isEmpty:function(){return 0==i},put:function(h){if(i<e)u(h);else{var f=void 0;switch(t){case s:throw new Error(o);case a:n[r]=h,r=(r+1)%e,c=r;break;case l:f=2*e,n=d(),i=n.length,r=n.length,c=0,n.length=f,e=f,u(h)}}},take:h,flush:d}}n.d(t,"a",function(){return u});var r=n(2),o="Channel's Buffer overflow!",s=1,a=3,l=4,c={isEmpty:r.o,put:r.r,take:r.r},u={none:function(){return c},fixed:function(e){return i(e,s)},dropping:function(e){return i(e,2)},sliding:function(e){return i(e,a)},expanding:function(e){return i(e,l)}}},function(e,t,n){"use strict";var i=(n(55),n(18));n.d(t,"d",function(){return i.a});var r=n(30);n.d(t,"C",function(){return r.a}),n.d(t,"K",function(){return r.b}),n.d(t,"L",function(){return r.c}),n.d(t,"Q",function(){return r.e}),n.d(t,"T",function(){return r.g}),n.d(t,"X",function(){return r.h}),n.d(t,"Y",function(){return r.i}),n.d(t,"Z",function(){return r.j});var o=n(19);n.d(t,"c",function(){return o.a}),n.d(t,"k",function(){return o.b}),n.d(t,"l",function(){return o.c}),n.d(t,"D",function(){return o.h});var s=n(130);n.d(t,"j",function(){return s.a}),n.d(t,"F",function(){return s.b}),n.d(t,"V",function(){return s.c});var a=n(13);n.d(t,"e",function(){return a.a}),n.d(t,"f",function(){return a.b}),n.d(t,"g",function(){return a.c}),n.d(t,"h",function(){return a.d}),n.d(t,"i",function(){return a.e}),n.d(t,"m",function(){return a.f}),n.d(t,"s",function(){return a.g}),n.d(t,"B",function(){return a.h}),n.d(t,"G",function(){return a.i}),n.d(t,"M",function(){return a.j}),n.d(t,"O",function(){return a.k}),n.d(t,"P",function(){return a.l}),n.d(t,"R",function(){return a.m}),n.d(t,"U",function(){return a.n}),n.d(t,"W",function(){return a.p});var l=n(12);n.d(t,"n",function(){return l.b}),n.d(t,"o",function(){return l.c}),n.d(t,"p",function(){return l.d}),n.d(t,"v",function(){return l.e}),n.d(t,"H",function(){return l.f});var c=n(31);n.d(t,"E",function(){return c.a});var u=(n(32),n(131));n.d(t,"b",function(){return u.a});var h=n(11);n.d(t,"q",function(){return h.b}),n.d(t,"r",function(){return h.c}),n.d(t,"x",function(){return h.d}),n.d(t,"S",function(){return h.f});var d=n(133);n.d(t,"a",function(){return d.a});var f=n(1);n.d(t,"t",function(){return f.c}),n.d(t,"u",function(){return f.d}),n.d(t,"w",function(){return f.e}),n.d(t,"y",function(){return f.f}),n.d(t,"z",function(){return f.g}),n.d(t,"A",function(){return f.i});var p=n(6);n.d(t,"I",function(){return p.a}),n.d(t,"J",function(){return p.b});var g=n(4);n.d(t,"N",function(){return g.b})},function(e,t,n){"use strict";function i(e,t){for(var n=arguments.length,s=Array(n>2?n-2:0),c=2;c<n;c++)s[c-2]=arguments[c];if(Object(a.a)(i,arguments,l),!t.apply(void 0,s.concat([e])))throw new Error("Tried to assert that\n"+Object(o.a)(Object(r.e)(e))+"\n"+t.name+"\n"+Object(o.a)(s.map(r.e).join(", ")))}t.a=i;var r=n(10),o=n(29),s=n(1),a=n(3),l={variadic:!0,example:["foo",Object(a.b)("equals"),"bar"],types:[s.a,s.c,s.b]}},function(e,t,n){"use strict";function i(e){return Object(d.a)(i,arguments,f),{eventType:"animationFrame",elapsedFrames:e}}function r(e){return"animationFrame"===e.eventType}function o(e){return Object(d.a)(o,arguments,p),{eventType:"keyDown",key:e}}function s(e){return"keyDown"===e.eventType}function a(){return Object(d.a)(a,arguments,g),{eventType:"formSubmission"}}function l(e){return"formSubmission"===e.eventType}function c(e,t){return Object(d.a)(c,arguments,m),{eventType:"formFieldChange",label:e,value:t}}function u(e){return"formFieldChange"===e.eventType}t.a=i,t.d=r,t.h=o,t.g=s,t.c=a,t.f=l,t.b=c,t.e=u;var h=n(1),d=n(3),f={example:[60],types:[h.f]},p={example:["a"],types:[h.i]},g={example:[],types:[]},m={example:["Search","wolf riders"],types:[h.i,h.i]}},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(145);n.n(o);t.a=function(e){return r.a.createElement("div",{className:"Pane "+e.className,style:e.style,onClick:e.onClick},e.children)}},function(e,t,n){"use strict";function i(e){var t={};for(var n in o)!function(n){Object.prototype.hasOwnProperty.call(o,n)&&(t[n]=function(){return e(o[n].apply(o,arguments))})}(n);return t}var r=n(38),o=n(52);t.a=function(e){return Object(r.b)(function(e){return e},i)(e)}},function(e,t,n){"use strict";function i(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(e){i[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,l=i(e),c=1;c<arguments.length;c++){n=Object(arguments[c]);for(var u in n)o.call(n,u)&&(l[u]=n[u]);if(r){a=r(n);for(var h=0;h<a.length;h++)s.call(n,a[h])&&(l[a[h]]=n[a[h]])}}return l}},function(e,t,n){"use strict";function i(e){return function(){return e}}var r=function(){};r.thatReturns=i,r.thatReturnsFalse=i(!1),r.thatReturnsTrue=i(!0),r.thatReturnsNull=i(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(e){return e},e.exports=r},function(e,t,n){"use strict";function i(e){"undefined"!==typeof console&&"function"===typeof console.error&&console.error(e);try{throw new Error(e)}catch(e){}}t.a=i},function(e,t,n){"use strict";var i=n(41),r=n(98),o=n(99),s=n(100),a=n(44);n(43);n.d(t,"e",function(){return i.b}),n.d(t,"c",function(){return r.a}),n.d(t,"b",function(){return o.a}),n.d(t,"a",function(){return s.a}),n.d(t,"d",function(){return a.a})},function(e,t,n){"use strict";function i(e){if(!Object(s.a)(e)||Object(r.a)(e)!=a)return!1;var t=Object(o.a)(e);if(null===t)return!0;var n=h.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&u.call(n)==d}var r=n(87),o=n(92),s=n(94),a="[object Object]",l=Function.prototype,c=Object.prototype,u=l.toString,h=c.hasOwnProperty,d=u.call(Object);t.a=i},function(e,t,n){"use strict";function i(e){return o.n.channel(e)?"channel":Array.isArray(e)?String(e.map(function(e){return String(e)})):String(e)}function r(e,t){function n(t,n){if(l===a)return s;if(n)throw l=a,n;r&&r(t);var i=e[l](),o=i[0],c=i[1],u=i[2];return l=o,r=u,l===a?s:c}var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"iterator",r=void 0,l=t;return Object(o.q)(n,function(e){return n(null,e)},i,!0)}n.d(t,"b",function(){return a}),t.c=i,t.a=r;var o=n(2),s={done:!0,value:void 0},a={}},function(e,t,n){"use strict";var i=n(126);n.d(t,"a",function(){return i.a});var r=n(127);n.d(t,"b",function(){return r.a});var o=n(128);n.d(t,"c",function(){return o.a});var s=n(53);n.d(t,"d",function(){return s.a})},function(e,t,n){"use strict";function i(e){return'"'+r(e)+'"'}function r(e){return e.split("\\").join("\\\\").split("\n").join("\\n").split('"').join('\\"')}function o(e){return" "+e.replace(/\n/g,"\n ")}t.b=i,t.a=o},function(e,t,n){"use strict";function i(){return{effectType:"waitForEvent"}}function r(e){return Object(C.a)(r,arguments,x),o(e)}function o(e){var t,n,r,a;return m.a.wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!(e<=0)){l.next=2;break}return l.abrupt("return");case 2:return l.next=4,p();case 4:return t=e,l.next=7,i();case 7:if(n=l.sent,Object(b.d)(n)&&(r=n.elapsedFrames/60,t-=r),!(t<F)){l.next=15;break}return a=60*e,l.next=13,s(Object(b.a)(n.elapsedFrames-a));case 13:l.next=17;break;case 15:return l.next=17,c(o(t));case 17:case"end":return l.stop()}},E,this)}function s(e){return{effectType:"putBackEvent",event:e}}function a(){return Object(C.a)(a,arguments,k),m.a.mark(function e(){var t;return m.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,p();case 2:return e.next=4,i();case 4:if(t=e.sent,!Object(b.g)(t)){e.next=7;break}return e.abrupt("return",t.key);case 7:return e.next=9,c(a());case 9:case"end":return e.stop()}},e,this)})}function l(e){return Object(C.a)(l,arguments,S),{effectType:"jump",generator:e}}function c(e){return Object(C.a)(c,arguments,S),{effectType:"retry",generator:e}}function u(e){return Object(C.a)(u,arguments,$),m.a.mark(function t(){var n;return m.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h(function(){return[e," ","Press SPACEBAR to continue."]});case 2:n=void 0;case 3:if(" "===n){t.next=9;break}return t.next=6,a();case 6:n=t.sent,t.next=3;break;case 9:case"end":return t.stop()}},t,this)})}function h(e){return Object(C.a)(h,arguments,_),{effectType:"startDisplay",render:e}}function d(e){return Object(C.a)(d,arguments,D),{effectType:"perform",action:e}}function f(e){return Object(C.a)(f,arguments,B),{effectType:"showFormFields",fields:e}}function p(){return Object(C.a)(p,arguments,T),{effectType:"redraw"}}t.j=i,t.h=r,t.i=a,t.a=l,t.e=c,t.b=u,t.g=h,t.c=d,t.f=f,t.d=p;var g=n(9),m=n.n(g),v=n(1),y=n(11),b=n(19),w=n(6),C=n(3),A=n(4),E=m.a.mark(o),F=1e-6,x={example:[.1],types:[v.f]},k={example:[],types:[]},S={example:[Object(A.b)(m.a.mark(function e(){return m.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e,this)}),function(){return"run"})],types:[Object(w.b)(v.d,v.e)]},$={example:["message"],types:[v.i]},_={example:[Object(A.b)(function(){},function(){return"view"})],types:[v.c]},D={example:[{type:"newGame"}],types:[v.a]},B={example:[[{label:"Search",type:"text",value:""}]],types:[Object(y.b)({label:v.i,type:Object(y.e)("line","text"),value:v.i})]},T={example:[],types:[]}},function(e,t,n){"use strict";function i(e){return Object(s.a)(i,arguments,c),e[e.length-1]}function r(e,t){return arguments.length<2?Object(l.a)(r,arguments):0===t.length?t:t.map(function(t){return e(t)})}t.a=i,t.b=r;var o=n(1),s=n(3),a=n(6),l=n(4),c={example:[[1,2,3]],types:[Object(a.b)(o.b,o.i)]}},function(e,t,n){"use strict";function i(e,t){function n(){return a}function i(n){var i=t(a,n);return Object(o.a)(i,r.f,e),a=i,l(i),i}function s(e){l=e}var a=Object(r.a)(e),l=function(){};return{getState:n,emit:i,subscribe:s}}t.a=i;var r=n(11),o=n(18)},function(e,t,n){!function(){var e=function(){return this}();e||"undefined"==typeof window||(e=window);var t=function(e,n,i){if("string"!==typeof e)return void(t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace()));2==arguments.length&&(i=n),t.modules[e]||(t.payloads[e]=i,t.modules[e]=null)};t.modules={},t.payloads={};var n=function(e,t,n){if("string"===typeof t){var r=o(e,t);if(void 0!=r)return n&&n(),r}else if("[object Array]"===Object.prototype.toString.call(t)){for(var s=[],a=0,l=t.length;a<l;++a){var c=o(e,t[a]);if(void 0==c&&i.original)return;s.push(c)}return n&&n.apply(null,s)||!0}},i=function(e,t){var r=n("",e,t);return void 0==r&&i.original?i.original.apply(this,arguments):r},r=function(e,t){if(-1!==t.indexOf("!")){var n=t.split("!");return r(e,n[0])+"!"+r(e,n[1])}if("."==t.charAt(0)){var i=e.split("/").slice(0,-1).join("/");for(t=i+"/"+t;-1!==t.indexOf(".")&&o!=t;){var o=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},o=function(e,i){i=r(e,i);var o=t.modules[i];if(!o){if("function"===typeof(o=t.payloads[i])){var s={},a={id:i,uri:"",exports:s,packaged:!0};s=o(function(e,t){return n(i,e,t)},s,a)||a.exports,t.modules[i]=s,delete t.payloads[i]}o=t.modules[i]=s||o}return o};!function(n){var r=e;n&&(e[n]||(e[n]={}),r=e[n]),r.define&&r.define.packaged||(t.original=r.define,r.define=t,r.define.packaged=!0),r.acequire&&r.acequire.packaged||(i.original=r.acequire,r.acequire=i,r.acequire.packaged=!0)}("ace")}(),ace.define("ace/lib/regexp",["require","exports","module"],function(e,t,n){"use strict";function i(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function r(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var i=n||0;i<e.length;i++)if(e[i]===t)return i;return-1}var o={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},s=void 0===o.exec.call(/()??/,"")[1],a=function(){var e=/^/g;return o.test.call(e,""),!e.lastIndex}();a&&s||(RegExp.prototype.exec=function(e){var t,n,l=o.exec.apply(this,arguments);if("string"==typeof e&&l){if(!s&&l.length>1&&r(l,"")>-1&&(n=RegExp(this.source,o.replace.call(i(this),"g","")),o.replace.call(e.slice(l.index),n,function(){for(var e=1;e<arguments.length-2;e++)void 0===arguments[e]&&(l[e]=void 0)})),this._xregexp&&this._xregexp.captureNames)for(var c=1;c<l.length;c++)(t=this._xregexp.captureNames[c-1])&&(l[t]=l[c]);!a&&this.global&&!l[0].length&&this.lastIndex>l.index&&this.lastIndex--}return l},a||(RegExp.prototype.test=function(e){var t=o.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t}))}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function i(){}function r(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(e){}}function o(e){return e=+e,e!==e?e=0:0!==e&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=p.call(arguments,1),r=function(){if(this instanceof r){var i=t.apply(this,n.concat(p.call(arguments)));return Object(i)===i?i:this}return t.apply(e,n.concat(p.call(arguments)))};return t.prototype&&(i.prototype=t.prototype,r.prototype=new i,i.prototype=null),r});var s,a,l,c,u,h=Function.prototype.call,d=Array.prototype,f=Object.prototype,p=d.slice,g=h.bind(f.toString),m=h.bind(f.hasOwnProperty);if((u=m(f,"__defineGetter__"))&&(s=h.bind(f.__defineGetter__),a=h.bind(f.__defineSetter__),l=h.bind(f.__lookupGetter__),c=h.bind(f.__lookupSetter__)),2!=[1,2].splice(0).length)if(function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t,n=[];if(n.splice.apply(n,e(20)),n.splice.apply(n,e(26)),t=n.length,n.splice(5,0,"XXX"),n.length,t+1==n.length)return!0}()){var v=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?v.apply(this,[void 0===e?0:e,void 0===t?this.length-e:t].concat(p.call(arguments,2))):[]}}else Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):void 0==e?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var i=this.slice(e,e+t),r=p.call(arguments,2),o=r.length;if(e===n)o&&this.push.apply(this,r);else{var s=Math.min(t,n-e),a=e+s,l=a+o-s,c=n-a,u=n-s;if(l<a)for(var h=0;h<c;++h)this[l+h]=this[a+h];else if(l>a)for(h=c;h--;)this[l+h]=this[a+h];if(o&&e===u)this.length=u,this.push.apply(this,r);else for(this.length=u+o,h=0;h<o;++h)this[e+h]=r[h]}return i};Array.isArray||(Array.isArray=function(e){return"[object Array]"==g(e)});var y=Object("a"),b="a"!=y[0]||!(0 in y);if(Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=arguments[1],r=-1,o=n.length>>>0;if("[object Function]"!=g(e))throw new TypeError;for(;++r<o;)r in n&&e.call(i,n[r],r,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=n.length>>>0,r=Array(i),o=arguments[1];if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");for(var s=0;s<i;s++)s in n&&(r[s]=e.call(o,n[s],s,t));return r}),Array.prototype.filter||(Array.prototype.filter=function(e){var t,n=B(this),i=b&&"[object String]"==g(this)?this.split(""):n,r=i.length>>>0,o=[],s=arguments[1];if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");for(var a=0;a<r;a++)a in i&&(t=i[a],e.call(s,t,a,n)&&o.push(t));return o}),Array.prototype.every||(Array.prototype.every=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=n.length>>>0,r=arguments[1];if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");for(var o=0;o<i;o++)if(o in n&&!e.call(r,n[o],o,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=n.length>>>0,r=arguments[1];if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");for(var o=0;o<i;o++)if(o in n&&e.call(r,n[o],o,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=n.length>>>0;if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");if(!i&&1==arguments.length)throw new TypeError("reduce of empty array with no initial value");var r,o=0;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in n){r=n[o++];break}if(++o>=i)throw new TypeError("reduce of empty array with no initial value")}for(;o<i;o++)o in n&&(r=e.call(void 0,r,n[o],o,t));return r}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=B(this),n=b&&"[object String]"==g(this)?this.split(""):t,i=n.length>>>0;if("[object Function]"!=g(e))throw new TypeError(e+" is not a function");if(!i&&1==arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var r,o=i-1;if(arguments.length>=2)r=arguments[1];else for(;;){if(o in n){r=n[o--];break}if(--o<0)throw new TypeError("reduceRight of empty array with no initial value")}do{o in this&&(r=e.call(void 0,r,n[o],o,t))}while(o--);return r}),Array.prototype.indexOf&&-1==[0,1].indexOf(1,2)||(Array.prototype.indexOf=function(e){var t=b&&"[object String]"==g(this)?this.split(""):B(this),n=t.length>>>0;if(!n)return-1;var i=0;for(arguments.length>1&&(i=o(arguments[1])),i=i>=0?i:Math.max(0,n+i);i<n;i++)if(i in t&&t[i]===e)return i;return-1}),Array.prototype.lastIndexOf&&-1==[0,1].lastIndexOf(0,-3)||(Array.prototype.lastIndexOf=function(e){var t=b&&"[object String]"==g(this)?this.split(""):B(this),n=t.length>>>0;if(!n)return-1;var i=n-1;for(arguments.length>1&&(i=Math.min(i,o(arguments[1]))),i=i>=0?i:n-Math.abs(i);i>=0;i--)if(i in t&&e===t[i])return i;return-1}),Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:f)}),!Object.getOwnPropertyDescriptor){Object.getOwnPropertyDescriptor=function(e,t){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.getOwnPropertyDescriptor called on a non-object: "+e);if(m(e,t)){var n,i,r;if(n={enumerable:!0,configurable:!0},u){var o=e.__proto__;e.__proto__=f;var i=l(e,t),r=c(e,t);if(e.__proto__=o,i||r)return i&&(n.get=i),r&&(n.set=r),n}return n.value=e[t],n}}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)}),!Object.create){var w;w=null===Object.prototype.__proto__?function(){return{__proto__:null}}:function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(null===e)n=w();else{if("object"!=typeof e)throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var i=function(){};i.prototype=e,n=new i,n.__proto__=e}return void 0!==t&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var C=r({}),A="undefined"==typeof document||r(document.createElement("div"));if(!C||!A)var E=Object.defineProperty}if(!Object.defineProperty||E){Object.defineProperty=function(e,t,n){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.defineProperty called on non-object: "+e);if("object"!=typeof n&&"function"!=typeof n||null===n)throw new TypeError("Property description must be an object: "+n);if(E)try{return E.call(Object,e,t,n)}catch(e){}if(m(n,"value"))if(u&&(l(e,t)||c(e,t))){var i=e.__proto__;e.__proto__=f,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!u)throw new TypeError("getters & setters can not be defined on this javascript engine");m(n,"get")&&s(e,t,n.get),m(n,"set")&&a(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)m(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(e){Object.freeze=function(e){return function(t){return"function"==typeof t?t:e(t)}}(Object.freeze)}if(Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;for(var t="";m(e,t);)t+="?";e[t]=!0;var n=m(e,t);return delete e[t],n}),!Object.keys){var F=!0,x=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],k=x.length;for(var S in{toString:null})F=!1;Object.keys=function(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new TypeError("Object.keys called on a non-object");var t=[];for(var n in e)m(e,n)&&t.push(n);if(F)for(var i=0,r=k;i<r;i++){var o=x[i];m(e,o)&&t.push(o)}return t}}Date.now||(Date.now=function(){return(new Date).getTime()});var $="\t\n\v\f\r \xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff";if(!String.prototype.trim||$.trim()){$="["+$+"]";var _=new RegExp("^"+$+$+"*"),D=new RegExp($+$+"*$");String.prototype.trim=function(){return String(this).replace(_,"").replace(D,"")}}var B=function(e){if(null==e)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){"use strict";e("./regexp"),e("./es5-shim")}),ace.define("ace/lib/dom",["require","exports","module"],function(e,t,n){"use strict";if(t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||"http://www.w3.org/1999/xhtml",e):document.createElement(e)},t.hasCssClass=function(e,t){return-1!==(e.className+"").split(/\s+/g).indexOf(t)},t.addCssClass=function(e,n){t.hasCssClass(e,n)||(e.className+=" "+n)},t.removeCssClass=function(e,t){for(var n=e.className.split(/\s+/g);;){var i=n.indexOf(t);if(-1==i)break;n.splice(i,1)}e.className=n.join(" ")},t.toggleCssClass=function(e,t){for(var n=e.className.split(/\s+/g),i=!0;;){var r=n.indexOf(t);if(-1==r)break;i=!1,n.splice(r,1)}return i&&n.push(t),e.className=n.join(" "),i},t.setCssClass=function(e,n,i){i?t.addCssClass(e,n):t.removeCssClass(e,n)},t.hasCssString=function(e,t){var n,i=0;if(t=t||document,t.createStyleSheet&&(n=t.styleSheets)){for(;i<n.length;)if(n[i++].owningElement.id===e)return!0}else if(n=t.getElementsByTagName("style"))for(;i<n.length;)if(n[i++].id===e)return!0;return!1},t.importCssString=function(e,n,i){if(i=i||document,n&&t.hasCssString(n,i))return null;var r;n&&(e+="\n/*# sourceURL=ace/css/"+n+" */"),i.createStyleSheet?(r=i.createStyleSheet(),r.cssText=e,n&&(r.owningElement.id=n)):(r=t.createElement("style"),r.appendChild(i.createTextNode(e)),n&&(r.id=n),t.getDocumentHead(i).appendChild(r))},t.importCssStylsheet=function(e,n){if(n.createStyleSheet)n.createStyleSheet(e);else{var i=t.createElement("link");i.rel="stylesheet",i.href=e,t.getDocumentHead(n).appendChild(i)}},t.getInnerWidth=function(e){return parseInt(t.computedStyle(e,"paddingLeft"),10)+parseInt(t.computedStyle(e,"paddingRight"),10)+e.clientWidth},t.getInnerHeight=function(e){return parseInt(t.computedStyle(e,"paddingTop"),10)+parseInt(t.computedStyle(e,"paddingBottom"),10)+e.clientHeight},t.scrollbarWidth=function(e){var n=t.createElement("ace_inner");n.style.width="100%",n.style.minWidth="0px",n.style.height="200px",n.style.display="block";var i=t.createElement("ace_outer"),r=i.style;r.position="absolute",r.left="-10000px",r.overflow="hidden",r.width="200px",r.minWidth="0px",r.height="150px",r.display="block",i.appendChild(n);var o=e.documentElement;o.appendChild(i);var s=n.offsetWidth;r.overflow="scroll";var a=n.offsetWidth;return s==a&&(a=i.clientWidth),o.removeChild(i),s-a},"undefined"==typeof document)return void(t.importCssString=function(){});void 0!==window.pageYOffset?(t.getPageScrollTop=function(){return window.pageYOffset},t.getPageScrollLeft=function(){return window.pageXOffset}):(t.getPageScrollTop=function(){return document.body.scrollTop},t.getPageScrollLeft=function(){return document.body.scrollLeft}),window.getComputedStyle?t.computedStyle=function(e,t){return t?(window.getComputedStyle(e,"")||{})[t]||"":window.getComputedStyle(e,"")||{}}:t.computedStyle=function(e,t){return t?e.currentStyle[t]:e.currentStyle},t.setInnerHtml=function(e,t){var n=e.cloneNode(!1);return n.innerHTML=t,e.parentNode.replaceChild(n,e),n},"textContent"in document.documentElement?(t.setInnerText=function(e,t){e.textContent=t},t.getInnerText=function(e){return e.textContent}):(t.setInnerText=function(e,t){e.innerText=t},t.getInnerText=function(e){return e.innerText}),t.getParentWindow=function(e){return e.defaultView||e.parentWindow}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop"],function(e,t,n){"use strict";e("./fixoldbrowsers");var i=e("./oop"),r=function(){var e,t,n={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}};for(t in n.FUNCTION_KEYS)e=n.FUNCTION_KEYS[t].toLowerCase(),n[e]=parseInt(t,10);for(t in n.PRINTABLE_KEYS)e=n.PRINTABLE_KEYS[t].toLowerCase(),n[e]=parseInt(t,10);return i.mixin(n,n.MODIFIER_KEYS),i.mixin(n,n.PRINTABLE_KEYS),i.mixin(n,n.FUNCTION_KEYS),n.enter=n.return,n.escape=n.esc,n.del=n.delete,n[173]="-",function(){for(var e=["cmd","ctrl","alt","shift"],t=Math.pow(2,e.length);t--;)n.KEY_MODS[t]=e.filter(function(e){return t&n.KEY_MODS[e]}).join("-")+"-"}(),n.KEY_MODS[0]="",n.KEY_MODS[-1]="input-",n}();i.mixin(t,r),t.keyCodeToString=function(e){var t=r[e];return"string"!=typeof t&&(t=String.fromCharCode(e)),t.toLowerCase()}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,t,n){"use strict";if(t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS},"object"==typeof navigator){var i=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),r=navigator.userAgent;t.isWin="win"==i,t.isMac="mac"==i,t.isLinux="linux"==i,t.isIE="Microsoft Internet Explorer"==navigator.appName||navigator.appName.indexOf("MSAppHost")>=0?parseFloat((r.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((r.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=(window.Controllers||window.controllers)&&"Gecko"===window.navigator.product,t.isOldGecko=t.isGecko&&parseInt((r.match(/rv:(\d+)/)||[])[1],10)<4,t.isOpera=window.opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),t.isWebKit=parseFloat(r.split("WebKit/")[1])||void 0,t.isChrome=parseFloat(r.split(" Chrome/")[1])||void 0,t.isAIR=r.indexOf("AdobeAIR")>=0,t.isIPad=r.indexOf("iPad")>=0,t.isChromeOS=r.indexOf(" CrOS ")>=0,t.isIOS=/iPad|iPhone|iPod/.test(r)&&!window.MSStream,t.isIOS&&(t.isMac=!0)}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function i(e,t,n){var i=c(t);if(!s.isMac&&a){if(t.getModifierState&&(t.getModifierState("OS")||t.getModifierState("Win"))&&(i|=8),a.altGr){if(3==(3&i))return;a.altGr=0}if(18===n||17===n){var r="location"in t?t.location:t.keyLocation;if(17===n&&1===r)1==a[n]&&(l=t.timeStamp);else if(18===n&&3===i&&2===r){var u=t.timeStamp-l;u<50&&(a.altGr=!0)}}}if(n in o.MODIFIER_KEYS&&(n=-1),8&i&&n>=91&&n<=93&&(n=-1),!i&&13===n){var r="location"in t?t.location:t.keyLocation;if(3===r&&(e(t,i,-n),t.defaultPrevented))return}if(s.isChromeOS&&8&i){if(e(t,i,n),t.defaultPrevented)return;i&=-9}return!!(i||n in o.FUNCTION_KEYS||n in o.PRINTABLE_KEYS)&&e(t,i,n)}function r(){a=Object.create(null)}var o=e("./keys"),s=e("./useragent"),a=null,l=0;t.addListener=function(e,t,n){if(e.addEventListener)return e.addEventListener(t,n,!1);if(e.attachEvent){var i=function(){n.call(e,window.event)};n._wrapper=i,e.attachEvent("on"+t,i)}},t.removeListener=function(e,t,n){if(e.removeEventListener)return e.removeEventListener(t,n,!1);e.detachEvent&&e.detachEvent("on"+t,n._wrapper||n)},t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},t.preventDefault=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1},t.getButton=function(e){return"dblclick"==e.type?0:"contextmenu"==e.type||s.isMac&&e.ctrlKey&&!e.altKey&&!e.shiftKey?2:e.preventDefault?e.button:{1:0,2:2,4:1}[e.button]},t.capture=function(e,n,i){function r(e){n&&n(e),i&&i(e),t.removeListener(document,"mousemove",n,!0),t.removeListener(document,"mouseup",r,!0),t.removeListener(document,"dragstart",r,!0)}return t.addListener(document,"mousemove",n,!0),t.addListener(document,"mouseup",r,!0),t.addListener(document,"dragstart",r,!0),r},t.addTouchMoveListener=function(e,n){var i,r;t.addListener(e,"touchstart",function(e){var t=e.touches,n=t[0];i=n.clientX,r=n.clientY}),t.addListener(e,"touchmove",function(e){var t=e.touches;if(!(t.length>1)){var o=t[0];e.wheelX=i-o.clientX,e.wheelY=r-o.clientY,i=o.clientX,r=o.clientY,n(e)}})},t.addMouseWheelListener=function(e,n){"onmousewheel"in e?t.addListener(e,"mousewheel",function(e){void 0!==e.wheelDeltaX?(e.wheelX=-e.wheelDeltaX/8,e.wheelY=-e.wheelDeltaY/8):(e.wheelX=0,e.wheelY=-e.wheelDelta/8),n(e)}):"onwheel"in e?t.addListener(e,"wheel",function(e){switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=.35*e.deltaX||0,e.wheelY=.35*e.deltaY||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=5*(e.deltaX||0),e.wheelY=5*(e.deltaY||0)}n(e)}):t.addListener(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=5*(e.detail||0),e.wheelY=0):(e.wheelX=0,e.wheelY=5*(e.detail||0)),n(e)})},t.addMultiMouseDownListener=function(e,n,i,r){function o(e){if(0!==t.getButton(e)?h=0:e.detail>1?++h>4&&(h=1):h=1,s.isIE){var o=Math.abs(e.clientX-l)>5||Math.abs(e.clientY-c)>5;u&&!o||(h=1),u&&clearTimeout(u),u=setTimeout(function(){u=null},n[h-1]||600),1==h&&(l=e.clientX,c=e.clientY)}if(e._clicks=h,i[r]("mousedown",e),h>4)h=0;else if(h>1)return i[r](d[h],e)}function a(e){h=2,u&&clearTimeout(u),u=setTimeout(function(){u=null},n[h-1]||600),i[r]("mousedown",e),i[r](d[h],e)}var l,c,u,h=0,d={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(e)||(e=[e]),e.forEach(function(e){t.addListener(e,"mousedown",o),s.isOldIE&&t.addListener(e,"dblclick",a)})};var c=!s.isMac||!s.isOpera||"KeyboardEvent"in window?function(e){return 0|(e.ctrlKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.metaKey?8:0)}:function(e){return 0|(e.metaKey?1:0)|(e.altKey?2:0)|(e.shiftKey?4:0)|(e.ctrlKey?8:0)};if(t.getModifierString=function(e){return o.KEY_MODS[c(e)]},t.addCommandKeyListener=function(e,n){var o=t.addListener;if(s.isOldGecko||s.isOpera&&!("KeyboardEvent"in window)){var l=null;o(e,"keydown",function(e){l=e.keyCode}),o(e,"keypress",function(e){return i(n,e,l)})}else{var c=null;o(e,"keydown",function(e){a[e.keyCode]=(a[e.keyCode]||0)+1;var t=i(n,e,e.keyCode);return c=e.defaultPrevented,t}),o(e,"keypress",function(e){c&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),c=null)}),o(e,"keyup",function(e){a[e.keyCode]=null}),a||(r(),o(window,"focus",r))}},"object"==typeof window&&window.postMessage&&!s.isOldIE){t.nextTick=function(e,n){n=n||window;t.addListener(n,"message",function i(r){"zero-timeout-message-1"==r.data&&(t.stopPropagation(r),t.removeListener(n,"message",i),e())}),n.postMessage("zero-timeout-message-1","*")}}t.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,n){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){for(var n="";t>0;)1&t&&(n+=e),(t>>=1)&&(e+=e);return n};var i=/^\s\s*/,r=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(i,"")},t.stringTrimRight=function(e){return e.replace(r,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){for(var t=[],n=0,i=e.length;n<i;n++)e[n]&&"object"==typeof e[n]?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function e(t){if("object"!==typeof t||!t)return t;var n;if(Array.isArray(t)){n=[];for(var i=0;i<t.length;i++)n[i]=e(t[i]);return n}if("[object Object]"!==Object.prototype.toString.call(t))return t;n={};for(var i in t)n[i]=e(t[i]);return n},t.arrayToMap=function(e){for(var t={},n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},i=function(e){return i.cancel(),t=setTimeout(n,e||0),i};return i.schedule=i,i.call=function(){return this.cancel(),e(),i},i.cancel=function(){return clearTimeout(t),t=null,i},i.isPending=function(){return t},i},t.delayedCall=function(e,t){var n=null,i=function(){n=null,e()},r=function(e){null==n&&(n=setTimeout(i,e||t))};return r.delay=function(e){n&&clearTimeout(n),n=setTimeout(i,e||t)},r.schedule=r,r.call=function(){this.cancel(),e()},r.cancel=function(){n&&clearTimeout(n),n=null},r.isPending=function(){return n},r}}),ace.define("ace/keyboard/textinput_ios",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/lib/keys"],function(e,t,n){"use strict";var i=e("../lib/event"),r=e("../lib/useragent"),o=e("../lib/dom"),s=e("../lib/lang"),a=e("../lib/keys"),l=a.KEY_MODS,c=r.isChrome<18,u=r.isIE,h=function(e,t){function n(e){if(!y){if(y=!0,k)t=0,n=e?0:f.value.length-1;else var t=4,n=5;try{f.setSelectionRange(t,n)}catch(e){}y=!1}}function h(){y||(f.value=p,r.isWebKit&&E.schedule())}function d(){clearTimeout(j),j=setTimeout(function(){b&&(f.style.cssText=b,b=""),null==t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},0)}var f=o.createElement("textarea");f.className=r.isIOS?"ace_text-input ace_text-input-ios":"ace_text-input",r.isTouchPad&&f.setAttribute("x-palm-disable-auto-cap",!0),f.setAttribute("wrap","off"),f.setAttribute("autocorrect","off"),f.setAttribute("autocapitalize","off"),f.setAttribute("spellcheck",!1),f.style.opacity="0",e.insertBefore(f,e.firstChild);var p="\n aaaa a\n",g=!1,m=!1,v=!1,y=!1,b="",w=!0;try{var C=document.activeElement===f}catch(e){}i.addListener(f,"blur",function(e){t.onBlur(e),C=!1}),i.addListener(f,"focus",function(e){C=!0,t.onFocus(e),n()}),this.focus=function(){if(b)return f.focus();f.style.position="fixed",f.focus()},this.blur=function(){f.blur()},this.isFocused=function(){return C};var A=s.delayedCall(function(){C&&n(w)}),E=s.delayedCall(function(){y||(f.value=p,C&&n())});r.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=w&&(w=!w,A.schedule())}),h(),C&&t.onFocus();var F=function(e){return 0===e.selectionStart&&e.selectionEnd===e.value.length},x=function(e){F(f)?(t.selectAll(),n()):k&&n(t.selection.isEmpty())},k=null;this.setInputHandler=function(e){k=e},this.getInputHandler=function(){return k};var S=!1,$=function(e){4===f.selectionStart&&5===f.selectionEnd||(k&&(e=k(e),k=null),v?(n(),e&&t.onPaste(e),v=!1):e==p.substr(0)&&4===f.selectionStart?S?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):g||(e.substring(0,9)==p&&e.length>p.length?e=e.substr(9):e.substr(0,4)==p.substr(0,4)?e=e.substr(4,e.length-p.length+1):e.charAt(e.length-1)==p.charAt(0)&&(e=e.slice(0,-1)),e==p.charAt(0)||e.charAt(e.length-1)==p.charAt(0)&&(e=e.slice(0,-1)),e&&t.onTextInput(e)),g&&(g=!1),S&&(S=!1))},_=function(e){if(!y){var t=f.value;$(t),h()}},D=function(e,t,n){var i=e.clipboardData||window.clipboardData;if(i&&!c){var r=u||n?"Text":"text/plain";try{return t?!1!==i.setData(r,t):i.getData(r)}catch(e){if(!n)return D(e,t,!0)}}},B=function(e,o){var s=t.getCopyText();if(!s)return i.preventDefault(e);D(e,s)?(r.isIOS&&(m=o,f.value="\n aa"+s+"a a\n",f.setSelectionRange(4,4+s.length),g={value:s}),o?t.onCut():t.onCopy(),r.isIOS||i.preventDefault(e)):(g=!0,f.value=s,f.select(),setTimeout(function(){g=!1,h(),n(),o?t.onCut():t.onCopy()}))},T=function(e){B(e,!0)},L=function(e){B(e,!1)},O=function(e){var o=D(e);"string"==typeof o?(o&&t.onPaste(o,e),r.isIE&&setTimeout(n),i.preventDefault(e)):(f.value="",v=!0)};i.addCommandKeyListener(f,t.onCommandKey.bind(t)),i.addListener(f,"select",x),i.addListener(f,"input",_),i.addListener(f,"cut",T),i.addListener(f,"copy",L),i.addListener(f,"paste",O);var R=function(e){y||!t.onCompositionStart||t.$readOnly||(y={},y.canUndo=t.session.$undoManager,t.onCompositionStart(),setTimeout(M,0),t.on("mousedown",P),y.canUndo&&!t.selection.isEmpty()&&(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup())},M=function(){if(y&&t.onCompositionUpdate&&!t.$readOnly){var e=f.value.replace(/\x01/g,"");if(y.lastValue!==e&&(t.onCompositionUpdate(e),y.lastValue&&t.undo(),y.canUndo&&(y.lastValue=e),y.lastValue)){var n=t.selection.getRange();t.insert(y.lastValue),t.session.markUndoGroup(),y.range=t.selection.getRange(),t.selection.setRange(n),t.selection.clearSelection()}}},P=function(e){if(t.onCompositionEnd&&!t.$readOnly){var n=y;y=!1;var i=setTimeout(function(){i=null;var e=f.value.replace(/\x01/g,"");y||(e==n.lastValue?h():!n.lastValue&&e&&(h(),$(e)))});k=function(e){return i&&clearTimeout(i),(e=e.replace(/\x01/g,""))==n.lastValue?"":(n.lastValue&&i&&t.undo(),e)},t.onCompositionEnd(),t.removeListener("mousedown",P),"compositionend"==e.type&&n.range&&t.selection.setRange(n.range);(!!r.isChrome&&r.isChrome>=53||!!r.isWebKit&&r.isWebKit>=603)&&_()}},I=s.delayedCall(M,50);i.addListener(f,"compositionstart",R),r.isGecko?i.addListener(f,"text",function(){I.schedule()}):(i.addListener(f,"keyup",function(){I.schedule()}),i.addListener(f,"keydown",function(){I.schedule()})),i.addListener(f,"compositionend",P),this.getElement=function(){return f},this.setReadOnly=function(e){f.readOnly=e},this.onContextMenu=function(e){S=!0,n(t.selection.isEmpty()),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,n){b||(b=f.style.cssText),f.style.cssText=(n?"z-index:100000;":"")+"height:"+f.style.height+";"+(r.isIE?"opacity:0.1;":"");var s=t.container.getBoundingClientRect(),a=o.computedStyle(t.container),l=s.top+(parseInt(a.borderTopWidth)||0),c=s.left+(parseInt(s.borderLeftWidth)||0),u=s.bottom-l-f.clientHeight-2,h=function(e){f.style.left=e.clientX-c-2+"px",f.style.top=Math.min(e.clientY-l-2,u)+"px"};h(e),"mousedown"==e.type&&(t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),clearTimeout(j),r.isWin&&i.capture(t.container,h,d))},this.onContextMenuClose=d;var j,N=function(e){t.textInput.onContextMenu(e),d()};if(i.addListener(f,"mouseup",N),i.addListener(f,"mousedown",function(e){e.preventDefault(),d()}),i.addListener(t.renderer.scroller,"contextmenu",N),i.addListener(f,"contextmenu",N),r.isIOS){var W=null,H=!1;e.addEventListener("keydown",function(e){W&&clearTimeout(W),H=!0}),e.addEventListener("keyup",function(e){W=setTimeout(function(){H=!1},100)});var z=function(e){if(document.activeElement===f&&!H){if(m)return setTimeout(function(){m=!1},100);var n=f.selectionStart,i=f.selectionEnd;if(f.setSelectionRange(4,5),n==i)switch(n){case 0:t.onCommandKey(null,0,a.up);break;case 1:t.onCommandKey(null,0,a.home);break;case 2:t.onCommandKey(null,l.option,a.left);break;case 4:t.onCommandKey(null,0,a.left);break;case 5:t.onCommandKey(null,0,a.right);break;case 7:t.onCommandKey(null,l.option,a.right);break;case 8:t.onCommandKey(null,0,a.end);break;case 9:t.onCommandKey(null,0,a.down)}else{switch(i){case 6:t.onCommandKey(null,l.shift,a.right);break;case 7:t.onCommandKey(null,l.shift|l.option,a.right);break;case 8:t.onCommandKey(null,l.shift,a.end);break;case 9:t.onCommandKey(null,l.shift,a.down)}switch(n){case 0:t.onCommandKey(null,l.shift,a.up);break;case 1:t.onCommandKey(null,l.shift,a.home);break;case 2:t.onCommandKey(null,l.shift|l.option,a.left);break;case 3:t.onCommandKey(null,l.shift,a.left)}}}};document.addEventListener("selectionchange",z),t.on("destroy",function(){document.removeEventListener("selectionchange",z)})}};t.TextInput=h}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/keyboard/textinput_ios"],function(e,t,n){"use strict";var i=e("../lib/event"),r=e("../lib/useragent"),o=e("../lib/dom"),s=e("../lib/lang"),a=r.isChrome<18,l=r.isIE,c=e("./textinput_ios").TextInput,u=function(e,t){function n(e){if(!m){if(m=!0,F)var t=0,n=e?0:d.value.length-1;else var t=e?2:1,n=2;try{d.setSelectionRange(t,n)}catch(e){}m=!1}}function u(){m||(d.value=f,r.isWebKit&&C.schedule())}function h(){clearTimeout(P),P=setTimeout(function(){v&&(d.style.cssText=v,v=""),null==t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},0)}if(r.isIOS)return c.call(this,e,t);var d=o.createElement("textarea");d.className="ace_text-input",d.setAttribute("wrap","off"),d.setAttribute("autocorrect","off"),d.setAttribute("autocapitalize","off"),d.setAttribute("spellcheck",!1),d.style.opacity="0",e.insertBefore(d,e.firstChild);var f="\u2028\u2028",p=!1,g=!1,m=!1,v="",y=!0;try{var b=document.activeElement===d}catch(e){}i.addListener(d,"blur",function(e){t.onBlur(e),b=!1}),i.addListener(d,"focus",function(e){b=!0,t.onFocus(e),n()}),this.focus=function(){if(v)return d.focus();var e=d.style.top;d.style.position="fixed",d.style.top="0px",d.focus(),setTimeout(function(){d.style.position="","0px"==d.style.top&&(d.style.top=e)},0)},this.blur=function(){d.blur()},this.isFocused=function(){return b};var w=s.delayedCall(function(){b&&n(y)}),C=s.delayedCall(function(){m||(d.value=f,b&&n())});r.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=y&&(y=!y,w.schedule())}),u(),b&&t.onFocus();var A=function(e){return 0===e.selectionStart&&e.selectionEnd===e.value.length},E=function(e){p?p=!1:A(d)?(t.selectAll(),n()):F&&n(t.selection.isEmpty())},F=null;this.setInputHandler=function(e){F=e},this.getInputHandler=function(){return F};var x=!1,k=function(e){F&&(e=F(e),F=null),g?(n(),e&&t.onPaste(e),g=!1):e==f.charAt(0)?x?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):(e.substring(0,2)==f?e=e.substr(2):e.charAt(0)==f.charAt(0)?e=e.substr(1):e.charAt(e.length-1)==f.charAt(0)&&(e=e.slice(0,-1)),e.charAt(e.length-1)==f.charAt(0)&&(e=e.slice(0,-1)),e&&t.onTextInput(e)),x&&(x=!1)},S=function(e){if(!m){var t=d.value;k(t),u()}},$=function(e,t,n){var i=e.clipboardData||window.clipboardData;if(i&&!a){var r=l||n?"Text":"text/plain";try{return t?!1!==i.setData(r,t):i.getData(r)}catch(e){if(!n)return $(e,t,!0)}}},_=function(e,r){var o=t.getCopyText();if(!o)return i.preventDefault(e);$(e,o)?(r?t.onCut():t.onCopy(),i.preventDefault(e)):(p=!0,d.value=o,d.select(),setTimeout(function(){p=!1,u(),n(),r?t.onCut():t.onCopy()}))},D=function(e){_(e,!0)},B=function(e){_(e,!1)},T=function(e){var o=$(e);"string"==typeof o?(o&&t.onPaste(o,e),r.isIE&&setTimeout(n),i.preventDefault(e)):(d.value="",g=!0)};i.addCommandKeyListener(d,t.onCommandKey.bind(t)),i.addListener(d,"select",E),i.addListener(d,"input",S),i.addListener(d,"cut",D),i.addListener(d,"copy",B),i.addListener(d,"paste",T),"oncut"in d&&"oncopy"in d&&"onpaste"in d||i.addListener(e,"keydown",function(e){if((!r.isMac||e.metaKey)&&e.ctrlKey)switch(e.keyCode){case 67:B(e);break;case 86:T(e);break;case 88:D(e)}});var L=function(e){m||!t.onCompositionStart||t.$readOnly||(m={},m.canUndo=t.session.$undoManager,t.onCompositionStart(),setTimeout(O,0),t.on("mousedown",R),m.canUndo&&!t.selection.isEmpty()&&(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup())},O=function(){if(m&&t.onCompositionUpdate&&!t.$readOnly){var e=d.value.replace(/\u2028/g,"");if(m.lastValue!==e&&(t.onCompositionUpdate(e),m.lastValue&&t.undo(),m.canUndo&&(m.lastValue=e),m.lastValue)){var n=t.selection.getRange();t.insert(m.lastValue),t.session.markUndoGroup(),m.range=t.selection.getRange(),t.selection.setRange(n),t.selection.clearSelection()}}},R=function(e){if(t.onCompositionEnd&&!t.$readOnly){var n=m;m=!1;var i=setTimeout(function(){i=null;var e=d.value.replace(/\u2028/g,"");m||(e==n.lastValue?u():!n.lastValue&&e&&(u(),k(e)))});F=function(e){return i&&clearTimeout(i),(e=e.replace(/\u2028/g,""))==n.lastValue?"":(n.lastValue&&i&&t.undo(),e)},t.onCompositionEnd(),t.removeListener("mousedown",R),"compositionend"==e.type&&n.range&&t.selection.setRange(n.range);(!!r.isChrome&&r.isChrome>=53||!!r.isWebKit&&r.isWebKit>=603)&&S()}},M=s.delayedCall(O,50);i.addListener(d,"compositionstart",L),r.isGecko?i.addListener(d,"text",function(){M.schedule()}):(i.addListener(d,"keyup",function(){M.schedule()}),i.addListener(d,"keydown",function(){M.schedule()})),i.addListener(d,"compositionend",R),this.getElement=function(){return d},this.setReadOnly=function(e){d.readOnly=e},this.onContextMenu=function(e){x=!0,n(t.selection.isEmpty()),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,n){v||(v=d.style.cssText),d.style.cssText=(n?"z-index:100000;":"")+"height:"+d.style.height+";"+(r.isIE?"opacity:0.1;":"");var s=t.container.getBoundingClientRect(),a=o.computedStyle(t.container),l=s.top+(parseInt(a.borderTopWidth)||0),c=s.left+(parseInt(s.borderLeftWidth)||0),u=s.bottom-l-d.clientHeight-2,f=function(e){d.style.left=e.clientX-c-2+"px",d.style.top=Math.min(e.clientY-l-2,u)+"px"};f(e),"mousedown"==e.type&&(t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),clearTimeout(P),r.isWin&&i.capture(t.container,f,h))},this.onContextMenuClose=h;var P,I=function(e){t.textInput.onContextMenu(e),h()};i.addListener(d,"mouseup",I),i.addListener(d,"mousedown",function(e){e.preventDefault(),h()}),i.addListener(t.renderer.scroller,"contextmenu",I),i.addListener(d,"contextmenu",I)};t.TextInput=u}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function i(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e)),t.setDefaultHandler("touchmove",this.onTouchMove.bind(e)),["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}function r(e,t,n,i){return Math.sqrt(Math.pow(n-e,2)+Math.pow(i-t,2))}function o(e,t){if(e.start.row==e.end.row)var n=2*t.column-e.start.column-e.end.column;else if(e.start.row!=e.end.row-1||e.start.column||e.end.column)var n=2*t.row-e.start.row-e.end.row;else var n=t.column-4;return n<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}var s=(e("../lib/dom"),e("../lib/event"),e("../lib/useragent"));(function(){this.onMouseDown=function(e){var t=e.inSelection(),n=e.getDocumentPosition();this.mousedownEvent=e;var i=this.editor,r=e.getButton();if(0!==r){var o=i.getSelectionRange(),a=o.isEmpty();return i.$blockScrolling++,(a||1==r)&&i.selection.moveToPosition(n),i.$blockScrolling--,void(2==r&&(i.textInput.onContextMenu(e.domEvent),s.isMozilla||e.preventDefault()))}return this.mousedownEvent.time=Date.now(),!t||i.isFocused()||(i.focus(),!this.$focusTimout||this.$clickSelection||i.inMultiSelectMode)?(this.captureMouse(e),this.startSelect(n,e.domEvent._clicks>1),e.preventDefault()):(this.setState("focusWait"),void this.captureMouse(e))},this.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;n.$blockScrolling++,this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(e):t||n.selection.moveToPosition(e),t||this.select(),n.renderer.scroller.setCapture&&n.renderer.scroller.setCapture(),n.setStyle("ace_selecting"),this.setState("select"),n.$blockScrolling--},this.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(t.$blockScrolling++,this.$clickSelection){var i=this.$clickSelection.comparePoint(n);if(-1==i)e=this.$clickSelection.end;else if(1==i)e=this.$clickSelection.start;else{var r=o(this.$clickSelection,n);n=r.cursor,e=r.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.$blockScrolling--,t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,n=this.editor,i=n.renderer.screenToTextCoordinates(this.x,this.y),r=n.selection[e](i.row,i.column);if(n.$blockScrolling++,this.$clickSelection){var s=this.$clickSelection.comparePoint(r.start),a=this.$clickSelection.comparePoint(r.end);if(-1==s&&a<=0)t=this.$clickSelection.end,r.end.row==i.row&&r.end.column==i.column||(i=r.start);else if(1==a&&s>=0)t=this.$clickSelection.start,r.start.row==i.row&&r.start.column==i.column||(i=r.end);else if(-1==s&&1==a)i=r.end,t=r.start;else{var l=o(this.$clickSelection,i);i=l.cursor,t=l.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(i),n.$blockScrolling--,n.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=r(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>0||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,i=n.session,r=i.getBracketRange(t);r?(r.isEmpty()&&(r.start.column--,r.end.column++),this.setState("select")):(r=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=r,this.select()},this.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var i=n.getSelectionRange();i.isMultiLine()&&i.contains(t.row,t.column)?(this.$clickSelection=n.selection.getLineRange(i.start.row),this.$clickSelection.end=n.selection.getLineRange(i.end.row).end):this.$clickSelection=n.selection.getLineRange(t.row),this.select()},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(!e.getAccelKey()){e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,i=e.domEvent.timeStamp,r=i-n.t,o=e.wheelX/r,s=e.wheelY/r;r<250&&(o=(o+n.vx)/2,s=(s+n.vy)/2);var a=Math.abs(o/s),l=!1;if(a>=1&&t.renderer.isScrollableBy(e.wheelX*e.speed,0)&&(l=!0),a<=1&&t.renderer.isScrollableBy(0,e.wheelY*e.speed)&&(l=!0),l)n.allowed=i;else if(i-n.allowed<250){var c=Math.abs(o)<=1.1*Math.abs(n.vx)&&Math.abs(s)<=1.1*Math.abs(n.vy);c?(l=!0,n.allowed=i):n.allowed=0}return n.t=i,n.vx=o,n.vy=s,l?(t.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()):void 0}},this.onTouchMove=function(e){this.editor._emit("mousewheel",e)}}).call(i.prototype),t.DefaultHandlers=i}),ace.define("ace/tooltip",["require","exports","module","ace/lib/oop","ace/lib/dom"],function(e,t,n){"use strict";function i(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}var r=(e("./lib/oop"),e("./lib/dom"));(function(){this.$init=function(){return this.$element=r.createElement("div"),this.$element.className="ace_tooltip",this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},this.getElement=function(){return this.$element||this.$init()},this.setText=function(e){r.setInnerText(this.getElement(),e)},this.setHtml=function(e){this.getElement().innerHTML=e},this.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},this.setClassName=function(e){r.addCssClass(this.getElement(),e)},this.show=function(e,t,n){null!=e&&this.setText(e),null!=t&&null!=n&&this.setPosition(t,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},this.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.isOpen=!1)},this.getHeight=function(){return this.getElement().offsetHeight},this.getWidth=function(){return this.getElement().offsetWidth},this.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)}}).call(i.prototype),t.Tooltip=i}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event","ace/tooltip"],function(e,t,n){"use strict";function i(e){function t(){var t=h.getDocumentPosition().row,r=l.$annotations[t];if(!r)return n();if(t==s.session.getLength()){var o=s.renderer.pixelToScreenCoordinates(0,h.y).row,a=h.$pos;if(o>s.session.documentToScreenRow(a.row,a.column))return n()}if(d!=r)if(d=r.text.join("<br/>"),c.setHtml(d),c.show(),s._signal("showGutterTooltip",c),s.on("mousewheel",n),e.$tooltipFollowsMouse)i(h);else{var u=h.domEvent.target,f=u.getBoundingClientRect(),p=c.getElement().style;p.left=f.right+"px",p.top=f.bottom+"px"}}function n(){u&&(u=clearTimeout(u)),d&&(c.hide(),d=null,s._signal("hideGutterTooltip",c),s.removeEventListener("mousewheel",n))}function i(e){c.setPosition(e.x,e.y)}var s=e.editor,l=s.renderer.$gutterLayer,c=new r(s.container);e.editor.setDefaultHandler("guttermousedown",function(t){if(s.isFocused()&&0==t.getButton()){if("foldWidgets"!=l.getRegion(t)){var n=t.getDocumentPosition().row,i=s.session.selection;if(t.getShiftKey())i.selectTo(n,0);else{if(2==t.domEvent.detail)return s.selectAll(),t.preventDefault();e.$clickSelection=s.selection.getLineRange(n)}return e.setState("selectByLines"),e.captureMouse(t),t.preventDefault()}}});var u,h,d;e.editor.setDefaultHandler("guttermousemove",function(r){var s=r.domEvent.target||r.domEvent.srcElement;if(o.hasCssClass(s,"ace_fold-widget"))return n();d&&e.$tooltipFollowsMouse&&i(r),h=r,u||(u=setTimeout(function(){u=null,h&&!e.isMousePressed?t():n()},50))}),a.addListener(s.renderer.$gutter,"mouseout",function(e){h=null,d&&!u&&(u=setTimeout(function(){u=null,n()},50))}),s.on("changeSession",n)}function r(e){l.call(this,e)}var o=e("../lib/dom"),s=e("../lib/oop"),a=e("../lib/event"),l=e("../tooltip").Tooltip;s.inherits(r,l),function(){this.setPosition=function(e,t){var n=window.innerWidth||document.documentElement.clientWidth,i=window.innerHeight||document.documentElement.clientHeight,r=this.getWidth(),o=this.getHeight();e+=15,t+=15,e+r>n&&(e-=e+r-n),t+o>i&&(t-=20+o),l.prototype.setPosition.call(this,e,t)}}.call(r.prototype),t.GutterHandler=i}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";var i=e("../lib/event"),r=e("../lib/useragent"),o=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){i.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){i.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var e=this.editor,t=e.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var n=this.getDocumentPosition();this.$inSelection=t.contains(n.row,n.column)}return this.$inSelection},this.getButton=function(){return i.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=r.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(o.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function i(e){function t(e,t){var n=Date.now(),i=!t||e.row!=t.row,o=!t||e.column!=t.column;if(!S||i||o)m.$blockScrolling+=1,m.moveCursorToPosition(e),m.$blockScrolling-=1,S=n,$={x:b,y:w};else{r($.x,$.y,b,w)>u?S=null:n-S>=c&&(m.renderer.scrollCursorIntoView(),S=null)}}function n(e,t){var n=Date.now(),i=m.renderer.layerConfig.lineHeight,r=m.renderer.layerConfig.characterWidth,o=m.renderer.scroller.getBoundingClientRect(),s={x:{left:b-o.left,right:o.right-b},y:{top:w-o.top,bottom:o.bottom-w}},a=Math.min(s.x.left,s.x.right),c=Math.min(s.y.top,s.y.bottom),u={row:e.row,column:e.column};a/r<=2&&(u.column+=s.x.left<s.x.right?-3:2),c/i<=1&&(u.row+=s.y.top<s.y.bottom?-1:1);var h=e.row!=u.row,d=e.column!=u.column,f=!t||e.row!=t.row;h||d&&!f?k?n-k>=l&&m.renderer.scrollCursorIntoView(u):k=n:k=null}function i(){var e=E;E=m.renderer.screenToTextCoordinates(b,w),t(E,e),n(E,e)}function h(){A=m.selection.toOrientedRange(),y=m.session.addMarker(A,"ace_selection",m.getSelectionStyle()),m.clearSelection(),m.isFocused()&&m.renderer.$cursorLayer.setBlinking(!1),clearInterval(C),i(),C=setInterval(i,20),D=0,s.addListener(document,"mousemove",f)}function d(){clearInterval(C),m.session.removeMarker(y),y=null,m.$blockScrolling+=1,m.selection.fromOrientedRange(A),m.$blockScrolling-=1,m.isFocused()&&!x&&m.renderer.$cursorLayer.setBlinking(!m.getReadOnly()),A=null,E=null,D=0,k=null,S=null,s.removeListener(document,"mousemove",f)}function f(){null==B&&(B=setTimeout(function(){null!=B&&y&&d()},20))}function p(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return"text/plain"==e||"Text"==e})}function g(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],i=a.isMac?e.altKey:e.ctrlKey,r="uninitialized";try{r=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return i&&t.indexOf(r)>=0?o="copy":n.indexOf(r)>=0?o="move":t.indexOf(r)>=0&&(o="copy"),o}var m=e.editor,v=o.createElement("img");v.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",a.isOpera&&(v.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;"),["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(t){e[t]=this[t]},this),m.addEventListener("mousedown",this.onMouseDown.bind(e));var y,b,w,C,A,E,F,x,k,S,$,_=m.container,D=0;this.onDragStart=function(e){if(this.cancelDrag||!_.draggable){var t=this;return setTimeout(function(){t.startSelect(),t.captureMouse(e)},0),e.preventDefault()}A=m.getSelectionRange();var n=e.dataTransfer;n.effectAllowed=m.getReadOnly()?"copy":"copyMove",a.isOpera&&(m.container.appendChild(v),v.scrollTop=0),n.setDragImage&&n.setDragImage(v,0,0),a.isOpera&&m.container.removeChild(v),n.clearData(),n.setData("Text",m.session.getTextRange()),x=!0,this.setState("drag")},this.onDragEnd=function(e){if(_.draggable=!1,x=!1,this.setState(null),!m.getReadOnly()){var t=e.dataTransfer.dropEffect;F||"move"!=t||m.session.remove(m.getSelectionRange()),m.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(!m.getReadOnly()&&p(e.dataTransfer))return b=e.clientX,w=e.clientY,y||h(),D++,e.dataTransfer.dropEffect=F=g(e),s.preventDefault(e)},this.onDragOver=function(e){if(!m.getReadOnly()&&p(e.dataTransfer))return b=e.clientX,w=e.clientY,y||(h(),D++),null!==B&&(B=null),e.dataTransfer.dropEffect=F=g(e),s.preventDefault(e)},this.onDragLeave=function(e){if(--D<=0&&y)return d(),F=null,s.preventDefault(e)},this.onDrop=function(e){if(E){var t=e.dataTransfer;if(x)switch(F){case"move":A=A.contains(E.row,E.column)?{start:E,end:E}:m.moveText(A,E);break;case"copy":A=m.moveText(A,E,!0)}else{var n=t.getData("Text");A={start:E,end:m.session.insert(E,n)},m.focus(),F=null}return d(),s.preventDefault(e)}},s.addListener(_,"dragstart",this.onDragStart.bind(e)),s.addListener(_,"dragend",this.onDragEnd.bind(e)),s.addListener(_,"dragenter",this.onDragEnter.bind(e)),s.addListener(_,"dragover",this.onDragOver.bind(e)),s.addListener(_,"dragleave",this.onDragLeave.bind(e)),s.addListener(_,"drop",this.onDrop.bind(e));var B=null}function r(e,t,n,i){return Math.sqrt(Math.pow(n-e,2)+Math.pow(i-t,2))}var o=e("../lib/dom"),s=e("../lib/event"),a=e("../lib/useragent"),l=200,c=200,u=5;(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor;e.container.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var t=a.isWin?"default":"move";e.renderer.setCursorStyle(t),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(a.isIE&&"dragReady"==this.state){var n=r(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if("dragWait"===this.state){var n=r(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(this.$dragEnabled){this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),i=e.getButton();if(1===(e.domEvent.detail||1)&&0===i&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var r=e.domEvent.target||e.domEvent.srcElement;if("unselectable"in r&&(r.unselectable="on"),t.getDragDelay()){if(a.isWebKit){this.cancelDrag=!0;t.container.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}}).call(i.prototype),t.DragdropHandler=i}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var i=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){4===n.readyState&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=i.getDocumentHead(),r=document.createElement("script");r.src=e,n.appendChild(r),r.onload=r.onreadystatechange=function(e,n){!n&&r.readyState&&"loaded"!=r.readyState&&"complete"!=r.readyState||(r=r.onload=r.onreadystatechange=null,n||t())}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){"use strict";var i={},r=function(){this.propagationStopped=!0},o=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],i=this._defaultHandlers[e];if(n.length||i){"object"==typeof t&&t||(t={}),t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=r),t.preventDefault||(t.preventDefault=o),n=n.slice();for(var s=0;s<n.length&&(n[s](t,this),!t.propagationStopped);s++);return i&&!t.defaultPrevented?i(t,this):void 0}},i._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(n){n=n.slice();for(var i=0;i<n.length;i++)n[i](t,this)}},i.once=function(e,t){var n=this;t&&this.addEventListener(e,function i(){n.removeEventListener(e,i),t.apply(null,arguments)})},i.setDefaultHandler=function(e,t){var n=this._defaultHandlers;if(n||(n=this._defaultHandlers={_disabled_:{}}),n[e]){var i=n[e],r=n._disabled_[e];r||(n._disabled_[e]=r=[]),r.push(i);var o=r.indexOf(t);-1!=o&&r.splice(o,1)}n[e]=t},i.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(n){var i=n._disabled_[e];if(n[e]==t){n[e];i&&this.setDefaultHandler(e,i.pop())}else if(i){var r=i.indexOf(t);-1!=r&&i.splice(r,1)}}},i.on=i.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var i=this._eventRegistry[e];return i||(i=this._eventRegistry[e]=[]),-1==i.indexOf(t)&&i[n?"unshift":"push"](t),t},i.off=i.removeListener=i.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(n){var i=n.indexOf(t);-1!==i&&n.splice(i,1)}},i.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=i}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"no use strict";function i(e){"undefined"!=typeof console&&console.warn&&console.warn.apply(console,arguments)}function r(e,t){var n=new Error(e);n.data=t,"object"==typeof console&&console.error&&console.error(n),setTimeout(function(){throw n})}var o=e("./oop"),s=e("./event_emitter").EventEmitter,a={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};return e?Array.isArray(e)||(t=e,e=Object.keys(t)):e=Object.keys(this.$options),e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]!==t){var n=this.$options[e];if(!n)return i('misspelled option "'+e+'"');if(n.forwardTo)return this[n.forwardTo]&&this[n.forwardTo].setOption(e,t);n.handlesSet||(this["$"+e]=t),n&&n.set&&n.set.call(this,t)}},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:i('misspelled option "'+e+'"')}},l=function(){this.$defaultOptions={}};(function(){o.implement(this,s),this.defineOptions=function(e,t,n){return e.$options||(this.$defaultOptions[t]=e.$options={}),Object.keys(n).forEach(function(t){var i=n[t];"string"==typeof i&&(i={forwardTo:i}),i.name||(i.name=t),e.$options[i.name]=i,"initialValue"in i&&(e["$"+i.name]=i.initialValue)}),o.implement(e,a),this},this.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var n=e.$options[t];"value"in n&&e.setOption(t,n.value)})},this.setDefaultValue=function(e,t,n){var i=this.$defaultOptions[e]||(this.$defaultOptions[e]={});i[t]&&(i.forwardTo?this.setDefaultValue(i.forwardTo,t,n):i[t].value=n)},this.setDefaultValues=function(e,t){Object.keys(t).forEach(function(n){this.setDefaultValue(e,n,t[n])},this)},this.warn=i,this.reportError=r}).call(l.prototype),t.AppConfig=l}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/app_config"],function(e,t,i){"no use strict";function r(r){if(c&&c.document){u.packaged=r||e.packaged||i.packaged||c.define&&n(34).packaged;for(var s={},a="",l=document.currentScript||document._currentScript,h=l&&l.ownerDocument||document,d=h.getElementsByTagName("script"),f=0;f<d.length;f++){var p=d[f],g=p.src||p.getAttribute("src");if(g){for(var m=p.attributes,v=0,y=m.length;v<y;v++){var b=m[v];0===b.name.indexOf("data-ace-")&&(s[o(b.name.replace(/^data-ace-/,""))]=b.value)}var w=g.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);w&&(a=w[1])}}a&&(s.base=s.base||a,s.packaged=!0),s.basePath=s.base,s.workerPath=s.workerPath||s.base,s.modePath=s.modePath||s.base,s.themePath=s.themePath||s.base,delete s.base;for(var C in s)"undefined"!==typeof s[C]&&t.set(C,s[C])}}function o(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}var s=e("./lib/lang"),a=(e("./lib/oop"),e("./lib/net")),l=e("./lib/app_config").AppConfig;i.exports=t=new l;var c=function(){return this||"undefined"!=typeof window&&window}(),u={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};t.get=function(e){if(!u.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return u[e]},t.set=function(e,t){if(!u.hasOwnProperty(e))throw new Error("Unknown config key: "+e);u[e]=t},t.all=function(){return s.copyObject(u)},t.moduleUrl=function(e,t){if(u.$moduleUrls[e])return u.$moduleUrls[e];var n=e.split("/");t=t||n[n.length-2]||"";var i="snippets"==t?"/":"-",r=n[n.length-1];if("worker"==t&&"-"==i){var o=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");r=r.replace(o,"")}(!r||r==t)&&n.length>1&&(r=n[n.length-2]);var s=u[t+"Path"];return null==s?s=u.basePath:"/"==i&&(t=i=""),s&&"/"!=s.slice(-1)&&(s+="/"),s+t+i+r+this.get("suffix")},t.setModuleUrl=function(e,t){return u.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(n,i){var r,o;Array.isArray(n)&&(o=n[0],n=n[1]);try{r=e(n)}catch(e){}if(r&&!t.$loading[n])return i&&i(r);if(t.$loading[n]||(t.$loading[n]=[]),t.$loading[n].push(i),!(t.$loading[n].length>1)){var s=function(){e([n],function(e){t._emit("load.module",{name:n,module:e});var i=t.$loading[n];t.$loading[n]=null,i.forEach(function(t){t&&t(e)})})};if(!t.get("packaged"))return s();a.loadScript(t.moduleUrl(n,o),s)}},r(!0),t.init=r}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(e,t,n){"use strict";var i=e("../lib/event"),r=e("../lib/useragent"),o=e("./default_handlers").DefaultHandlers,s=e("./default_gutter_handler").GutterHandler,a=e("./mouse_event").MouseEvent,l=e("./dragdrop_handler").DragdropHandler,c=e("../config"),u=function(e){var t=this;this.editor=e,new o(this),new s(this),new l(this);var n=function(t){(!document.hasFocus||!document.hasFocus()||!e.isFocused()&&document.activeElement==(e.textInput&&e.textInput.getElement()))&&window.focus(),e.focus()},a=e.renderer.getMouseEventTarget();i.addListener(a,"click",this.onMouseEvent.bind(this,"click")),i.addListener(a,"mousemove",this.onMouseMove.bind(this,"mousemove")),i.addMultiMouseDownListener([a,e.renderer.scrollBarV&&e.renderer.scrollBarV.inner,e.renderer.scrollBarH&&e.renderer.scrollBarH.inner,e.textInput&&e.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent"),i.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel")),i.addTouchMoveListener(e.container,this.onTouchMove.bind(this,"touchmove"));var c=e.renderer.$gutter;i.addListener(c,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),i.addListener(c,"click",this.onMouseEvent.bind(this,"gutterclick")),i.addListener(c,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),i.addListener(c,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),i.addListener(a,"mousedown",n),i.addListener(c,"mousedown",n),r.isIE&&e.renderer.scrollBarV&&(i.addListener(e.renderer.scrollBarV.element,"mousedown",n),i.addListener(e.renderer.scrollBarH.element,"mousedown",n)),e.on("mousemove",function(n){if(!t.state&&!t.$dragDelay&&t.$dragEnabled){var i=e.renderer.screenToTextCoordinates(n.x,n.y),r=e.session.selection.getRange(),o=e.renderer;!r.isEmpty()&&r.insideStart(i.row,i.column)?o.setCursorStyle("default"):o.setCursorStyle("")}})};(function(){this.onMouseEvent=function(e,t){this.editor._emit(e,new a(t,this.editor))},this.onMouseMove=function(e,t){var n=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;n&&n.length&&this.editor._emit(e,new a(t,this.editor))},this.onMouseWheel=function(e,t){var n=new a(t,this.editor);n.speed=2*this.$scrollSpeed,n.wheelX=t.wheelX,n.wheelY=t.wheelY,this.editor._emit(e,n)},this.onTouchMove=function(e,t){var n=new a(t,this.editor);n.speed=1,n.wheelX=t.wheelX,n.wheelY=t.wheelY,this.editor._emit(e,n)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var n=this.editor.renderer;n.$keepTextAreaAtCursor&&(n.$keepTextAreaAtCursor=null);var o=this,s=function(e){if(e){if(r.isWebKit&&!e.which&&o.releaseMouse)return o.releaseMouse();o.x=e.clientX,o.y=e.clientY,t&&t(e),o.mouseEvent=new a(e,o.editor),o.$mouseMoved=!0}},l=function(e){clearInterval(u),c(),o[o.state+"End"]&&o[o.state+"End"](e),o.state="",null==n.$keepTextAreaAtCursor&&(n.$keepTextAreaAtCursor=!0,n.$moveTextAreaToCursor()),o.isMousePressed=!1,o.$onCaptureMouseMove=o.releaseMouse=null,e&&o.onMouseEvent("mouseup",e)},c=function(){o[o.state]&&o[o.state](),o.$mouseMoved=!1};if(r.isOldIE&&"dblclick"==e.domEvent.type)return setTimeout(function(){l(e)});o.$onCaptureMouseMove=s,o.releaseMouse=i.capture(this.editor.container,s,l);var u=setInterval(c,20)},this.releaseMouse=null,this.cancelContextMenu=function(){var e=function(t){t&&t.domEvent&&"contextmenu"!=t.domEvent.type||(this.editor.off("nativecontextmenu",e),t&&t.domEvent&&i.stopEvent(t.domEvent))}.bind(this);setTimeout(e,10),this.editor.on("nativecontextmenu",e)}}).call(u.prototype),c.defineOptions(u.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:r.isMac?150:0},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),t.MouseHandler=u}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(e,t,n){"use strict";function i(e){e.on("click",function(t){var n=t.getDocumentPosition(),i=e.session,r=i.getFoldAt(n.row,n.column,1);r&&(t.getAccelKey()?i.removeFold(r):i.expandFold(r),t.stop())}),e.on("gutterclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var n=t.getDocumentPosition().row,i=e.session;i.foldWidgets&&i.foldWidgets[n]&&e.session.onFoldWidgetClick(n,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){if("foldWidgets"==e.renderer.$gutterLayer.getRegion(t)){var n=t.getDocumentPosition().row,i=e.session,r=i.getParentFoldRangeData(n,!0),o=r.range||r.firstRange;if(o){n=o.start.row;var s=i.getFoldAt(n,i.getLine(n).length,1);s?i.removeFold(s):(i.addFold("...",o),e.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}t.stop()}})}t.FoldHandler=i}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,n){"use strict";var i=e("../lib/keys"),r=e("../lib/event"),o=function(e){this.$editor=e,this.$data={editor:e},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0)},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]!=e){for(;t[t.length-1]&&t[t.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)}},this.addKeyboardHandler=function(e,t){if(e){"function"!=typeof e||e.handleKeyboard||(e.handleKeyboard=e);var n=this.$handlers.indexOf(e);-1!=n&&this.$handlers.splice(n,1),void 0==t?this.$handlers.push(e):this.$handlers.splice(t,0,e),-1==n&&e.attach&&e.attach(this.$editor)}},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return-1!=t&&(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.getStatusText=function(){var e=this.$data,t=e.editor;return this.$handlers.map(function(n){return n.getStatusText&&n.getStatusText(t,e)||""}).filter(Boolean).join(" ")},this.$callKeyboardHandlers=function(e,t,n,i){for(var o,s=!1,a=this.$editor.commands,l=this.$handlers.length;l--&&!((o=this.$handlers[l].handleKeyboard(this.$data,e,t,n,i))&&o.command&&(s="null"==o.command||a.exec(o.command,this.$editor,o.args,i),s&&i&&-1!=e&&1!=o.passEvent&&1!=o.command.passEvent&&r.stopEvent(i),s)););return s||-1!=e||(o={command:"insertstring"},s=a.exec("insertstring",this.$editor,t)),s&&this.$editor._signal&&this.$editor._signal("keyboardActivity",o),s},this.onCommandKey=function(e,t,n){var r=i.keyCodeToString(n);this.$callKeyboardHandlers(t,r,n,e)},this.onTextInput=function(e){this.$callKeyboardHandlers(-1,e)}}).call(o.prototype),t.KeyBinding=o}),ace.define("ace/lib/bidiutil",["require","exports","module"],function(e,t,n){"use strict";function i(e,t,n,i){var r=a?p:f,g=null,m=null,v=null,y=0,b=null,w=-1,E=null,x=null,k=[];if(!i)for(E=0,i=[];E<n;E++)i[E]=s(e[E]);for(l=a,c=!1,u=!1,h=!1,d=!1,x=0;x<n;x++){if(g=y,k[x]=m=o(e,i,k,x),y=r[g][m],b=240&y,y&=15,t[x]=v=r[y][5],b>0)if(16==b){for(E=w;E<x;E++)t[E]=1;w=-1}else w=-1;if(r[y][6])-1==w&&(w=x);else if(w>-1){for(E=w;E<x;E++)t[E]=v;w=-1}i[x]==C&&(t[x]=0),l|=v}if(d)for(E=0;E<n;E++)if(i[E]==A){t[E]=a;for(var S=E-1;S>=0&&i[S]==F;S--)t[S]=a}}function r(e,t,n){if(!(l<e)){if(1==e&&a==g&&!h)return void n.reverse();for(var i,r,o,s,c=n.length,u=0;u<c;){if(t[u]>=e){for(i=u+1;i<c&&t[i]>=e;)i++;for(r=u,o=i-1;r<o;r++,o--)s=n[r],n[r]=n[o],n[o]=s;u=i}u++}}}function o(e,t,n,i){var r,o,s,l,f=t[i];switch(f){case m:case v:c=!1;case w:case b:return f;case y:return c?b:y;case E:return c=!0,u=!0,v;case F:return w;case x:return i<1||i+1>=t.length||(r=n[i-1])!=y&&r!=b||(o=t[i+1])!=y&&o!=b?w:(c&&(o=b),o==r?o:w);case k:return r=i>0?n[i-1]:C,r==y&&i+1<t.length&&t[i+1]==y?y:w;case S:if(i>0&&n[i-1]==y)return y;if(c)return w;for(l=i+1,s=t.length;l<s&&t[l]==S;)l++;return l<s&&t[l]==y?y:w;case $:for(s=t.length,l=i+1;l<s&&t[l]==$;)l++;if(l<s){var p=e[i],g=p>=1425&&p<=2303||64286==p;if(r=t[l],g&&(r==v||r==E))return v}return i<1||(r=t[i-1])==C?w:n[i-1];case C:return c=!1,h=!0,a;case A:return d=!0,w;case _:case D:case T:case L:case B:c=!1;case O:return w}}function s(e){var t=e.charCodeAt(0),n=t>>8;return 0==n?t>191?m:R[t]:5==n?/[\u0591-\u05f4]/.test(e)?v:m:6==n?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(e)?$:/[\u0660-\u0669\u066b-\u066c]/.test(e)?b:1642==t?S:/[\u06f0-\u06f9]/.test(e)?y:E:32==n&&t<=8287?M[255&t]:254==n&&t>=65136?E:w}var a=0,l=0,c=!1,u=!1,h=!1,d=!1,f=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],p=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],g=1,m=0,v=1,y=2,b=3,w=4,C=5,A=6,E=7,F=8,x=9,k=10,S=11,$=12,_=13,D=14,B=15,T=16,L=17,O=18,R=[O,O,O,O,O,O,O,O,O,A,C,A,F,C,O,O,O,O,O,O,O,O,O,O,O,O,O,O,C,C,C,A,F,w,w,S,S,S,w,w,w,w,w,k,x,k,x,x,y,y,y,y,y,y,y,y,y,y,x,w,w,w,w,w,w,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,w,w,w,w,w,w,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,w,w,w,w,O,O,O,O,O,O,C,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,x,w,S,S,S,S,w,w,w,w,m,w,w,O,w,w,S,S,y,y,w,m,w,w,w,y,m,w,w,w,w,w],M=[F,F,F,F,F,F,F,F,F,F,F,O,O,O,m,v,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,F,C,_,D,B,T,L,x,S,S,S,S,S,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,x,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,F];t.L=m,t.R=v,t.EN=y,t.ON_R=3,t.AN=4,t.R_H=5,t.B=6,t.DOT="\xb7",t.doBidiReorder=function(e,n,o){if(e.length<2)return{};var s=e.split(""),l=new Array(s.length),c=new Array(s.length),u=[];a=o?g:0,i(s,u,s.length,n);for(var h=0;h<l.length;l[h]=h,h++);r(2,u,l),r(1,u,l);for(var h=0;h<l.length-1;h++)n[h]===b?u[h]=t.AN:u[h]===v&&(n[h]>E&&n[h]<_||n[h]===w||n[h]===O)?u[h]=t.ON_R:h>0&&"\u0644"===s[h-1]&&/\u0622|\u0623|\u0625|\u0627/.test(s[h])&&(u[h-1]=u[h]=t.R_H,h++);s[s.length-1]===t.DOT&&(u[s.length-1]=t.B);for(var h=0;h<l.length;h++)c[h]=u[l[h]];return{logicalFromVisual:l,bidiLevels:c}},t.hasBidiCharacters=function(e,t){for(var n=!1,i=0;i<e.length;i++)t[i]=s(e.charAt(i)),n||t[i]!=v&&t[i]!=E||(n=!0);return n},t.getVisualFromLogicalIdx=function(e,t){for(var n=0;n<t.logicalFromVisual.length;n++)if(t.logicalFromVisual[n]==e)return n;return 0}}),ace.define("ace/bidihandler",["require","exports","module","ace/lib/bidiutil","ace/lib/lang","ace/lib/useragent"],function(e,t,n){"use strict";var i=e("./lib/bidiutil"),r=e("./lib/lang"),o=e("./lib/useragent"),s=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,a=function(e){this.session=e,this.bidiMap={},this.currentRow=null,this.bidiUtil=i,this.charWidths=[],this.EOL="\xac",this.showInvisibles=!0,this.isRtlDir=!1,this.line="",this.wrapIndent=0,this.isLastRow=!1,this.EOF="\xb6",this.seenBidi=!1};(function(){this.isBidiRow=function(e,t,n){return!!this.seenBidi&&(e!==this.currentRow&&(this.currentRow=e,this.updateRowLine(t,n),this.updateBidiMap()),this.bidiMap.bidiLevels)},this.onChange=function(e){this.seenBidi?this.currentRow=null:"insert"==e.action&&s.test(e.lines.join("\n"))&&(this.seenBidi=!0,this.currentRow=null)},this.getDocumentRow=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n=this.session.$getRowCacheIndex(t,this.currentRow);n>=0&&(e=this.session.$docRowCache[n])}return e},this.getSplitIndex=function(){var e=0,t=this.session.$screenRowCache;if(t.length)for(var n,i=this.session.$getRowCacheIndex(t,this.currentRow);this.currentRow-e>0&&(n=this.session.$getRowCacheIndex(t,this.currentRow-e-1))===i;)i=n,e++;return e},this.updateRowLine=function(e,t){if(void 0===e&&(e=this.getDocumentRow()),this.wrapIndent=0,this.isLastRow=e===this.session.getLength()-1,this.line=this.session.getLine(e),this.session.$useWrapMode){var n=this.session.$wrapData[e];n&&(void 0===t&&(t=this.getSplitIndex()),t>0&&n.length?(this.wrapIndent=n.indent,this.line=t<n.length?this.line.substring(n[t-1],n[n.length-1]):this.line.substring(n[n.length-1])):this.line=this.line.substring(0,n[t]))}var o,s=this.session,a=0;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function(e,t){return"\t"===e||s.isFullWidth(e.charCodeAt(0))?(o="\t"===e?s.getScreenTabSize(t+a):2,a+=o-1,r.stringRepeat(i.DOT,o)):e})},this.updateBidiMap=function(){var e=[],t=this.isLastRow?this.EOF:this.EOL,n=this.line+(this.showInvisibles?t:i.DOT);i.hasBidiCharacters(n,e)?this.bidiMap=i.doBidiReorder(n,e,this.isRtlDir):this.bidiMap={}},this.markAsDirty=function(){this.currentRow=null},this.updateCharacterWidths=function(e){if(this.seenBidi&&this.characterWidth!==e.$characterSize.width){var t=this.characterWidth=e.$characterSize.width,n=e.$measureCharWidth("\u05d4");this.charWidths[i.L]=this.charWidths[i.EN]=this.charWidths[i.ON_R]=t,this.charWidths[i.R]=this.charWidths[i.AN]=n,this.charWidths[i.R_H]=o.isChrome?n:.45*n,this.charWidths[i.B]=0,this.currentRow=null}},this.getShowInvisibles=function(){return this.showInvisibles},this.setShowInvisibles=function(e){this.showInvisibles=e,this.currentRow=null},this.setEolChar=function(e){this.EOL=e},this.setTextDir=function(e){this.isRtlDir=e},this.getPosLeft=function(e){e-=this.wrapIndent;var t=i.getVisualFromLogicalIdx(e>0?e-1:0,this.bidiMap),n=this.bidiMap.bidiLevels,r=0;0===e&&n[t]%2!==0&&t++;for(var o=0;o<t;o++)r+=this.charWidths[n[o]];return 0!==e&&n[t]%2===0&&(r+=this.charWidths[n[t]]),this.wrapIndent&&(r+=this.wrapIndent*this.charWidths[i.L]),r},this.getSelections=function(e,t){for(var n,r,o=this.bidiMap,s=o.bidiLevels,a=this.wrapIndent*this.charWidths[i.L],l=[],c=Math.min(e,t)-this.wrapIndent,u=Math.max(e,t)-this.wrapIndent,h=!1,d=!1,f=0,p=0;p<s.length;p++)r=o.logicalFromVisual[p],n=s[p],h=r>=c&&r<u,h&&!d?f=a:!h&&d&&l.push({left:f,width:a-f}),a+=this.charWidths[n],d=h;return h&&p===s.length&&l.push({left:f,width:a-f}),l},this.offsetToCol=function(e){var t=0,e=Math.max(e,0),n=0,r=0,o=this.bidiMap.bidiLevels,s=this.charWidths[o[r]];for(this.wrapIndent&&(e-=this.wrapIndent*this.charWidths[i.L]);e>n+s/2;){if(n+=s,r===o.length-1){s=0;break}s=this.charWidths[o[++r]]}return r>0&&o[r-1]%2!==0&&o[r]%2===0?(e<n&&r--,t=this.bidiMap.logicalFromVisual[r]):r>0&&o[r-1]%2===0&&o[r]%2!==0?t=1+(e>n?this.bidiMap.logicalFromVisual[r]:this.bidiMap.logicalFromVisual[r-1]):this.isRtlDir&&r===o.length-1&&0===s&&o[r-1]%2===0||!this.isRtlDir&&0===r&&o[r]%2!==0?t=1+this.bidiMap.logicalFromVisual[r]:(r>0&&o[r-1]%2!==0&&0!==s&&r--,t=this.bidiMap.logicalFromVisual[r]),t+this.wrapIndent}}).call(a.prototype),t.BidiHandler=a}),ace.define("ace/range",["require","exports","module"],function(e,t,n){"use strict";var i=function(e,t){return e.row-t.row||e.column-t.column},r=function(e,t,n,i){this.start={row:e,column:t},this.end={row:n,column:i}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return 0==this.compare(e,t)},this.compareRange=function(e){var t,n=e.end,i=e.start;return t=this.compare(n.row,n.column),1==t?(t=this.compare(i.row,i.column),1==t?2:0==t?1:0):-1==t?-2:(t=this.compare(i.row,i.column),-1==t?-1:1==t?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return 0==this.comparePoint(e.start)&&0==this.comparePoint(e.end)},this.intersects=function(e){var t=this.compareRange(e);return-1==t||0==t||1==t},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){"object"==typeof e?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){"object"==typeof e?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return 0==this.compare(e,t)&&(!this.isEnd(e,t)&&!this.isStart(e,t))},this.insideStart=function(e,t){return 0==this.compare(e,t)&&!this.isEnd(e,t)},this.insideEnd=function(e,t){return 0==this.compare(e,t)&&!this.isStart(e,t)},this.compare=function(e,t){return this.isMultiLine()||e!==this.start.row?e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0:t<this.start.column?-1:t>this.end.column?1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var i={row:t+1,column:0};else if(this.start.row<e)var i={row:e,column:0};return r.fromPoints(i||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(0==n)return this;if(-1==n)var i={row:e,column:t};else var o={row:e,column:t};return r.fromPoints(i||this.start,o||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return r.fromPoints(this.start,this.end)},this.collapseRows=function(){return 0==this.end.column?new r(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new r(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new r(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(r.prototype),r.fromPoints=function(e,t){return new r(e.row,e.column,t.row,t.column)},r.comparePoints=i,r.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=r}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/lang"),o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=function(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.lead=this.selectionLead=this.doc.createAnchor(0,0),this.anchor=this.selectionAnchor=this.doc.createAnchor(0,0);var t=this;this.lead.on("change",function(e){t._emit("changeCursor"),t.$isEmpty||t._emit("changeSelection"),t.$keepDesiredColumnOnChange||e.old.column==e.value.column||(t.$desiredColumn=null)}),this.selectionAnchor.on("change",function(){t.$isEmpty||t._emit("changeSelection")})};(function(){i.implement(this,o),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.isEmpty()&&this.getRange().isMultiLine()},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(e,t){this.anchor.setPosition(e,t),this.$isEmpty&&(this.$isEmpty=!1,this._emit("changeSelection"))},this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.shiftSelection=function(e){if(this.$isEmpty)return void this.moveCursorTo(this.lead.row,this.lead.column+e);var t=this.getSelectionAnchor(),n=this.getSelectionLead(),i=this.isBackwards();i&&0===t.column||this.setSelectionAnchor(t.row,t.column+e),(i||0!==n.column)&&this.$moveSelection(function(){this.moveCursorTo(n.row,n.column+e)})},this.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.isEmpty()?s.fromPoints(t,t):this.isBackwards()?s.fromPoints(t,e):s.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var e=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(e,this.doc.getLine(e).length)},this.setRange=this.setSelectionRange=function(e,t){t?(this.setSelectionAnchor(e.end.row,e.end.column),this.selectTo(e.start.row,e.start.column)):(this.setSelectionAnchor(e.start.row,e.start.column),this.selectTo(e.end.row,e.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if("undefined"==typeof t){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var n,i="number"==typeof e?e:this.lead.row,r=this.session.getFoldLine(i);return r?(i=r.start.row,n=r.end.row):n=i,!0===t?new s(i,0,n,this.session.getLine(n).length):new s(i,0,n+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.wouldMoveIntoSoftTab=function(e,t,n){var i=e.column,r=e.column+t;return n<0&&(i=e.column-t,r=e.column),this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(i,r).split(" ").length-1==t},this.moveCursorLeft=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,-1))this.moveCursorTo(e.start.row,e.start.column);else if(0===t.column)t.row>0&&this.moveCursorTo(t.row-1,this.doc.getLine(t.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(t,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e,t=this.lead.getPosition();if(e=this.session.getFoldAt(t.row,t.column,1))this.moveCursorTo(e.end.row,e.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var n=this.session.getTabSize(),t=this.lead;this.wouldMoveIntoSoftTab(t,n,1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,n):this.moveCursorBy(0,1)}},this.moveCursorLineStart=function(){var e=this.lead.row,t=this.lead.column,n=this.session.documentToScreenRow(e,t),i=this.session.screenToDocumentPosition(n,0),r=this.session.getDisplayLine(e,null,i.row,i.column),o=r.match(/^\s*/);o[0].length==t||this.session.$useEmacsStyleLineStart||(i.column+=o[0].length),this.moveCursorToPosition(i)},this.moveCursorLineEnd=function(){var e=this.lead,t=this.session.getDocumentLastRowColumnPosition(e.row,e.column);if(this.lead.column==t.column){var n=this.session.getLine(t.row);if(t.column==n.length){var i=n.search(/\s+$/);i>0&&(t.column=i)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),i=n.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(e,t,1);return r?void this.moveCursorTo(r.end.row,r.end.column):(this.session.nonTokenRe.exec(i)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,i=n.substring(t)),t>=n.length?(this.moveCursorTo(e,n.length),this.moveCursorRight(),void(e<this.doc.getLength()-1&&this.moveCursorWordRight())):(this.session.tokenRe.exec(i)&&(t+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),void this.moveCursorTo(e,t)))},this.moveCursorLongWordLeft=function(){var e,t=this.lead.row,n=this.lead.column;if(e=this.session.getFoldAt(t,n,-1))return void this.moveCursorTo(e.start.row,e.start.column);var i=this.session.getFoldStringAt(t,n,-1);null==i&&(i=this.doc.getLine(t).substring(0,n));var o=r.stringReverse(i);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(o)&&(n-=this.session.nonTokenRe.lastIndex,o=o.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),n<=0)return this.moveCursorTo(t,0),this.moveCursorLeft(),void(t>0&&this.moveCursorWordLeft());this.session.tokenRe.exec(o)&&(n-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(t,n)},this.$shortWordEndIndex=function(e){var t,n=0,i=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,this.session.tokenRe.exec(e))n=this.session.tokenRe.lastIndex;else{for(;(t=e[n])&&i.test(t);)n++;if(n<1)for(r.lastIndex=0;(t=e[n])&&!r.test(t);)if(r.lastIndex=0,n++,i.test(t)){if(n>2){n--;break}for(;(t=e[n])&&i.test(t);)n++;if(n>2)break}}return r.lastIndex=0,n},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),i=n.substring(t),r=this.session.getFoldAt(e,t,1);if(r)return this.moveCursorTo(r.end.row,r.end.column);if(t==n.length){var o=this.doc.getLength();do{e++,i=this.doc.getLine(e)}while(e<o&&/^\s*$/.test(i));/^\s+/.test(i)||(i=""),t=0}var s=this.$shortWordEndIndex(i);this.moveCursorTo(e,t+s)},this.moveCursorShortWordLeft=function(){var e,t=this.lead.row,n=this.lead.column;if(e=this.session.getFoldAt(t,n,-1))return this.moveCursorTo(e.start.row,e.start.column);var i=this.session.getLine(t).substring(0,n);if(0===n){do{t--,i=this.doc.getLine(t)}while(t>0&&/^\s*$/.test(i));n=i.length,/\s+$/.test(i)||(i="")}var o=r.stringReverse(i),s=this.$shortWordEndIndex(o);return this.moveCursorTo(t,n-s)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var n,i=this.session.documentToScreenPosition(this.lead.row,this.lead.column);0===t&&(0!==e&&(this.session.$bidiHandler.isBidiRow(i.row,this.lead.row)?(n=this.session.$bidiHandler.getPosLeft(i.column),i.column=Math.round(n/this.session.$bidiHandler.charWidths[0])):n=i.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?i.column=this.$desiredColumn:this.$desiredColumn=i.column);var r=this.session.screenToDocumentPosition(i.row+e,i.column,n);0!==e&&0===t&&r.row===this.lead.row&&r.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[r.row]&&(r.row>0||e>0)&&r.row++,this.moveCursorTo(r.row,r.column+t,0===t)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,n){var i=this.session.getFoldAt(e,t,1);i&&(e=i.start.row,t=i.start.column),this.$keepDesiredColumnOnChange=!0;var r=this.session.getLine(e);/[\uDC00-\uDFFF]/.test(r.charAt(t))&&r.charAt(t-1)&&(this.lead.row==e&&this.lead.column==t+1?t-=1:t+=1),this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,n){var i=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(i.row,i.column,n)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var n=this.getCursor();return s.fromPoints(t,n)}catch(e){return s.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},this.fromJSON=function(e){if(void 0==e.start){if(this.rangeList){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=s.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(a.prototype),t.Selection=a}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(e,t,n){"use strict";var i=e("./config"),r=2e3,o=function(e){this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){for(var n=this.states[t],i=[],r=0,o=this.matchMappings[t]={defaultToken:"text"},s="g",a=[],l=0;l<n.length;l++){var c=n[l];if(c.defaultToken&&(o.defaultToken=c.defaultToken),c.caseInsensitive&&(s="gi"),null!=c.regex){c.regex instanceof RegExp&&(c.regex=c.regex.toString().slice(1,-1));var u=c.regex,h=new RegExp("(?:("+u+")|(.))").exec("a").length-2;Array.isArray(c.token)?1==c.token.length||1==h?c.token=c.token[0]:h-1!=c.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:c,groupCount:h-1}),c.token=c.token[0]):(c.tokenArray=c.token,c.token=null,c.onMatch=this.$arrayTokens):"function"!=typeof c.token||c.onMatch||(c.onMatch=h>1?this.$applyToken:c.token),h>1&&(/\\\d/.test(c.regex)?u=c.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+r+1)}):(h=1,u=this.removeCapturingGroups(c.regex)),c.splitRegex||"string"==typeof c.token||a.push(c)),o[r]=l,r+=h,i.push(u),c.onMatch||(c.onMatch=null)}}i.length||(o[0]=0,i.push("$")),a.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,s)},this),this.regExps[t]=new RegExp("("+i.join(")|(")+")|($)",s)}};(function(){this.$setMaxTokenCount=function(e){r=0|e},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if("string"===typeof n)return[{type:n,value:e}];for(var i=[],r=0,o=n.length;r<o;r++)t[r]&&(i[i.length]={type:n[r],value:t[r]});return i},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";for(var n=[],i=this.tokenArray,r=0,o=i.length;r<o;r++)t[r+1]&&(n[n.length]={type:i[r],value:t[r+1]});return n},this.removeCapturingGroups=function(e){return e.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(e,t){return t?"(?:":e})},this.createSplitterRegexp=function(e,t){if(-1!=e.indexOf("(?=")){var n=0,i=!1,r={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,o,s,a,l){return i?i="]"!=a:a?i=!0:s?(n==r.stack&&(r.end=l+1,r.stack=-1),n--):o&&(n++,1!=o.length&&(r.stack=n,r.start=l)),e}),null!=r.end&&/^\)*$/.test(e.substr(r.end))&&(e=e.substring(0,r.start)+e.substr(r.end))}return"^"!=e.charAt(0)&&(e="^"+e),"$"!=e.charAt(e.length-1)&&(e+="$"),new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&"string"!=typeof t){var n=t.slice(0);t=n[0],"#tmp"===t&&(n.shift(),t=n.shift())}else var n=[];var i=t||"start",o=this.states[i];o||(i="start",o=this.states[i]);var s=this.matchMappings[i],a=this.regExps[i];a.lastIndex=0;for(var l,c=[],u=0,h=0,d={type:null,value:""};l=a.exec(e);){var f=s.defaultToken,p=null,g=l[0],m=a.lastIndex;if(m-g.length>u){var v=e.substring(u,m-g.length);d.type==f?d.value+=v:(d.type&&c.push(d),d={type:f,value:v})}for(var y=0;y<l.length-2;y++)if(void 0!==l[y+1]){p=o[s[y]],f=p.onMatch?p.onMatch(g,i,n,e):p.token,p.next&&(i="string"==typeof p.next?p.next:p.next(i,n),o=this.states[i],o||(this.reportError("state doesn't exist",i),i="start",o=this.states[i]),s=this.matchMappings[i],u=m,a=this.regExps[i],a.lastIndex=m),p.consumeLineEnd&&(u=m);break}if(g)if("string"===typeof f)p&&!1===p.merge||d.type!==f?(d.type&&c.push(d),d={type:f,value:g}):d.value+=g;else if(f){d.type&&c.push(d),d={type:null,value:""};for(var y=0;y<f.length;y++)c.push(f[y])}if(u==e.length)break;if(u=m,h++>r){for(h>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});u<e.length;)d.type&&c.push(d),d={value:e.substring(u,u+=2e3),type:"overflow"};i="start",n=[];break}}return d.type&&c.push(d),n.length>1&&n[0]!==i&&n.unshift("#tmp",i),{tokens:c,state:n.length?n:i}},this.reportError=i.reportError}).call(o.prototype),t.Tokenizer=o}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,n){"use strict";var i=e("../lib/lang"),r=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(t)for(var n in e){for(var i=e[n],r=0;r<i.length;r++){var o=i[r];(o.next||o.onMatch)&&("string"==typeof o.next&&0!==o.next.indexOf(t)&&(o.next=t+o.next),o.nextState&&0!==o.nextState.indexOf(t)&&(o.nextState=t+o.nextState))}this.$rules[t+n]=i}else for(var n in e)this.$rules[n]=e[n]},this.getRules=function(){return this.$rules},this.embedRules=function(e,t,n,r,o){var s="function"==typeof e?(new e).getRules():e;if(r)for(var a=0;a<r.length;a++)r[a]=t+r[a];else{r=[];for(var l in s)r.push(t+l)}if(this.addRules(s,t),n)for(var c=Array.prototype[o?"push":"unshift"],a=0;a<r.length;a++)c.apply(this.$rules[r[a]],i.deepCopy(n));this.$embeds||(this.$embeds=[]),this.$embeds.push(t)},this.getEmbeds=function(){return this.$embeds};var e=function(e,t){return("start"!=e||t.length)&&t.unshift(this.nextState,e),this.nextState},t=function(e,t){return t.shift(),t.shift()||"start"};this.normalizeRules=function(){function n(o){var s=r[o];s.processed=!0;for(var a=0;a<s.length;a++){var l=s[a],c=null;Array.isArray(l)&&(c=l,l={}),!l.regex&&l.start&&(l.regex=l.start,l.next||(l.next=[]),l.next.push({defaultToken:l.token},{token:l.token+".end",regex:l.end||l.start,next:"pop"}),l.token=l.token+".start",l.push=!0);var u=l.next||l.push;if(u&&Array.isArray(u)){var h=l.stateName;h||(h=l.token,"string"!=typeof h&&(h=h[0]||""),r[h]&&(h+=i++)),r[h]=u,l.next=h,n(h)}else"pop"==u&&(l.next=t);if(l.push&&(l.nextState=l.next||l.push,l.next=e,delete l.push),l.rules)for(var d in l.rules)r[d]?r[d].push&&r[d].push.apply(r[d],l.rules[d]):r[d]=l.rules[d];var f="string"==typeof l?l:l.include;if(f&&(c=Array.isArray(f)?f.map(function(e){return r[e]}):r[f]),c){var p=[a,1].concat(c);l.noEscape&&(p=p.filter(function(e){return!e.next})),s.splice.apply(s,p),a--}l.keywordMap&&(l.token=this.createKeywordMapper(l.keywordMap,l.defaultToken||"text",l.caseInsensitive),delete l.defaultToken)}}var i=0,r=this.$rules;Object.keys(r).forEach(n,this)},this.createKeywordMapper=function(e,t,n,i){var r=Object.create(null);return Object.keys(e).forEach(function(t){var o=e[t];n&&(o=o.toLowerCase());for(var s=o.split(i||"|"),a=s.length;a--;)r[s[a]]=t}),Object.getPrototypeOf(r)&&(r.__proto__=null),this.$keywordList=Object.keys(r),e=null,n?function(e){return r[e.toLowerCase()]||t}:function(e){return r[e]||t}},this.getKeywords=function(){return this.$keywords}}).call(r.prototype),t.TextHighlightRules=r}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,t,n){"use strict";var i=function(){this.$behaviours={}};(function(){this.add=function(e,t,n){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[e]:this.$behaviours[e]={}}this.$behaviours[e][t]=n},this.addBehaviours=function(e){for(var t in e)for(var n in e[t])this.add(t,n,e[t][n])},this.remove=function(e){this.$behaviours&&this.$behaviours[e]&&delete this.$behaviours[e]},this.inherit=function(e,t){if("function"===typeof e)var n=(new e).getBehaviours(t);else var n=e.getBehaviours(t);this.addBehaviours(n)},this.getBehaviours=function(e){if(e){for(var t={},n=0;n<e.length;n++)this.$behaviours[e[n]]&&(t[e[n]]=this.$behaviours[e[n]]);return t}return this.$behaviours}}).call(i.prototype),t.Behaviour=i}),ace.define("ace/token_iterator",["require","exports","module","ace/range"],function(e,t,n){"use strict";var i=e("./range").Range,r=function(e,t,n){this.$session=e,this.$row=t,this.$rowTokens=e.getTokens(t);var i=e.getTokenAt(t,n);this.$tokenIndex=i?i.index:-1};(function(){this.stepBackward=function(){for(this.$tokenIndex-=1;this.$tokenIndex<0;){if(this.$row-=1,this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},this.stepForward=function(){this.$tokenIndex+=1;for(var e;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,e||(e=this.$session.getLength()),this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(void 0!==n)return n;for(n=0;t>0;)t-=1,n+=e[t].value.length;return n},this.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},this.getCurrentTokenRange=function(){var e=this.$rowTokens[this.$tokenIndex],t=this.getCurrentTokenColumn();return new i(this.$row,t,this.$row,t+e.value.length)}}).call(r.prototype),t.TokenIterator=r}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";var i,r=e("../../lib/oop"),o=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,a=e("../../lib/lang"),l=["text","paren.rparen","punctuation.operator"],c=["text","paren.rparen","punctuation.operator","comment"],u={},h={'"':'"',"'":"'"},d=function(e){var t=-1;if(e.multiSelect&&(t=e.selection.index,u.rangeCount!=e.multiSelect.rangeCount&&(u={rangeCount:e.multiSelect.rangeCount})),u[t])return i=u[t];i=u[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},f=function(e,t,n,i){var r=e.end.row-e.start.row;return{text:n+t+i,selection:[0,e.start.column+1,r,e.end.column+(r?0:1)]}},p=function(e){this.add("braces","insertion",function(t,n,r,o,s){var l=r.getCursorPosition(),c=o.doc.getLine(l.row);if("{"==s){d(r);var u=r.getSelectionRange(),h=o.doc.getTextRange(u);if(""!==h&&"{"!==h&&r.getWrapBehavioursEnabled())return f(u,h,"{","}");if(p.isSaneInsertion(r,o))return/[\]\}\)]/.test(c[l.column])||r.inMultiSelectMode||e&&e.braces?(p.recordAutoInsert(r,o,"}"),{text:"{}",selection:[1,1]}):(p.recordMaybeInsert(r,o,"{"),{text:"{",selection:[1,1]})}else if("}"==s){d(r);var g=c.substring(l.column,l.column+1);if("}"==g){var m=o.$findOpeningBracket("}",{column:l.column+1,row:l.row});if(null!==m&&p.isAutoInsertedClosing(l,c,s))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if("\n"==s||"\r\n"==s){d(r);var v="";p.isMaybeInsertedClosing(l,c)&&(v=a.stringRepeat("}",i.maybeInsertedBrackets),p.clearMaybeInsertedClosing());var g=c.substring(l.column,l.column+1);if("}"===g){var y=o.findMatchingBracket({row:l.row,column:l.column+1},"}");if(!y)return null;var b=this.$getIndent(o.getLine(y.row))}else{if(!v)return void p.clearMaybeInsertedClosing();var b=this.$getIndent(c)}var w=b+o.getTabString();return{text:"\n"+w+"\n"+b+v,selection:[1,w.length,1,w.length]}}p.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,o){var s=r.doc.getTextRange(o);if(!o.isMultiLine()&&"{"==s){d(n);if("}"==r.doc.getLine(o.start.row).substring(o.end.column,o.end.column+1))return o.end.column++,o;i.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,n,i,r){if("("==r){d(n);var o=n.getSelectionRange(),s=i.doc.getTextRange(o);if(""!==s&&n.getWrapBehavioursEnabled())return f(o,s,"(",")");if(p.isSaneInsertion(n,i))return p.recordAutoInsert(n,i,")"),{text:"()",selection:[1,1]}}else if(")"==r){d(n);var a=n.getCursorPosition(),l=i.doc.getLine(a.row),c=l.substring(a.column,a.column+1);if(")"==c){var u=i.$findOpeningBracket(")",{column:a.column+1,row:a.row});if(null!==u&&p.isAutoInsertedClosing(a,l,r))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,i,r){var o=i.doc.getTextRange(r);if(!r.isMultiLine()&&"("==o){d(n);if(")"==i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2))return r.end.column++,r}}),this.add("brackets","insertion",function(e,t,n,i,r){if("["==r){d(n);var o=n.getSelectionRange(),s=i.doc.getTextRange(o);if(""!==s&&n.getWrapBehavioursEnabled())return f(o,s,"[","]");if(p.isSaneInsertion(n,i))return p.recordAutoInsert(n,i,"]"),{text:"[]",selection:[1,1]}}else if("]"==r){d(n);var a=n.getCursorPosition(),l=i.doc.getLine(a.row),c=l.substring(a.column,a.column+1);if("]"==c){var u=i.$findOpeningBracket("]",{column:a.column+1,row:a.row});if(null!==u&&p.isAutoInsertedClosing(a,l,r))return p.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,i,r){var o=i.doc.getTextRange(r);if(!r.isMultiLine()&&"["==o){d(n);if("]"==i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2))return r.end.column++,r}}),this.add("string_dquotes","insertion",function(e,t,n,i,r){var o=i.$mode.$quotes||h;if(1==r.length&&o[r]){if(this.lineCommentStart&&-1!=this.lineCommentStart.indexOf(r))return;d(n);var s=r,a=n.getSelectionRange(),l=i.doc.getTextRange(a);if(!(""===l||1==l.length&&o[l])&&n.getWrapBehavioursEnabled())return f(a,l,s,s);if(!l){var c=n.getCursorPosition(),u=i.doc.getLine(c.row),p=u.substring(c.column-1,c.column),g=u.substring(c.column,c.column+1),m=i.getTokenAt(c.row,c.column),v=i.getTokenAt(c.row,c.column+1);if("\\"==p&&m&&/escape/.test(m.type))return null;var y,b=m&&/string|escape/.test(m.type),w=!v||/string|escape/.test(v.type);if(g==s)(y=b!==w)&&/string\.end/.test(v.type)&&(y=!1);else{if(b&&!w)return null;if(b&&w)return null;var C=i.$mode.tokenRe;C.lastIndex=0;var A=C.test(p);C.lastIndex=0;var E=C.test(p);if(A||E)return null;if(g&&!/[\s;,.})\]\\]/.test(g))return null;y=!0}return{text:y?s+s:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,i,r){var o=i.doc.getTextRange(r);if(!r.isMultiLine()&&('"'==o||"'"==o)){d(n);if(i.doc.getLine(r.start.row).substring(r.start.column+1,r.start.column+2)==o)return r.end.column++,r}})};p.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),i=new s(t,n.row,n.column);if(!this.$matchTokenType(i.getCurrentToken()||"text",l)){var r=new s(t,n.row,n.column+1);if(!this.$matchTokenType(r.getCurrentToken()||"text",l))return!1}return i.stepForward(),i.getCurrentTokenRow()!==n.row||this.$matchTokenType(i.getCurrentToken()||"text",c)},p.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},p.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,o,i.autoInsertedLineEnd[0])||(i.autoInsertedBrackets=0),i.autoInsertedRow=r.row,i.autoInsertedLineEnd=n+o.substr(r.column),i.autoInsertedBrackets++},p.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),o=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,o)||(i.maybeInsertedBrackets=0),i.maybeInsertedRow=r.row,i.maybeInsertedLineStart=o.substr(0,r.column)+n,i.maybeInsertedLineEnd=o.substr(r.column),i.maybeInsertedBrackets++},p.isAutoInsertedClosing=function(e,t,n){return i.autoInsertedBrackets>0&&e.row===i.autoInsertedRow&&n===i.autoInsertedLineEnd[0]&&t.substr(e.column)===i.autoInsertedLineEnd},p.isMaybeInsertedClosing=function(e,t){return i.maybeInsertedBrackets>0&&e.row===i.maybeInsertedRow&&t.substr(e.column)===i.maybeInsertedLineEnd&&t.substr(0,e.column)==i.maybeInsertedLineStart},p.popAutoInsertedClosing=function(){i.autoInsertedLineEnd=i.autoInsertedLineEnd.substr(1),i.autoInsertedBrackets--},p.clearMaybeInsertedClosing=function(){i&&(i.maybeInsertedBrackets=0,i.maybeInsertedRow=-1)},r.inherits(p,o),t.CstyleBehaviour=p}),ace.define("ace/unicode",["require","exports","module"],function(e,t,n){"use strict";t.packages={},function(e){var n=/\w{4}/g;for(var i in e)t.packages[i]=e[i].replace(n,"\\u$&")}({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",Ll:"0061-007A00AA00B500BA00DF-00F600F8-00FF01010103010501070109010B010D010F01110113011501170119011B011D011F01210123012501270129012B012D012F01310133013501370138013A013C013E014001420144014601480149014B014D014F01510153015501570159015B015D015F01610163016501670169016B016D016F0171017301750177017A017C017E-0180018301850188018C018D019201950199-019B019E01A101A301A501A801AA01AB01AD01B001B401B601B901BA01BD-01BF01C601C901CC01CE01D001D201D401D601D801DA01DC01DD01DF01E101E301E501E701E901EB01ED01EF01F001F301F501F901FB01FD01FF02010203020502070209020B020D020F02110213021502170219021B021D021F02210223022502270229022B022D022F02310233-0239023C023F0240024202470249024B024D024F-02930295-02AF037103730377037B-037D039003AC-03CE03D003D103D5-03D703D903DB03DD03DF03E103E303E503E703E903EB03ED03EF-03F303F503F803FB03FC0430-045F04610463046504670469046B046D046F04710473047504770479047B047D047F0481048B048D048F04910493049504970499049B049D049F04A104A304A504A704A904AB04AD04AF04B104B304B504B704B904BB04BD04BF04C204C404C604C804CA04CC04CE04CF04D104D304D504D704D904DB04DD04DF04E104E304E504E704E904EB04ED04EF04F104F304F504F704F904FB04FD04FF05010503050505070509050B050D050F05110513051505170519051B051D051F0521052305250561-05871D00-1D2B1D62-1D771D79-1D9A1E011E031E051E071E091E0B1E0D1E0F1E111E131E151E171E191E1B1E1D1E1F1E211E231E251E271E291E2B1E2D1E2F1E311E331E351E371E391E3B1E3D1E3F1E411E431E451E471E491E4B1E4D1E4F1E511E531E551E571E591E5B1E5D1E5F1E611E631E651E671E691E6B1E6D1E6F1E711E731E751E771E791E7B1E7D1E7F1E811E831E851E871E891E8B1E8D1E8F1E911E931E95-1E9D1E9F1EA11EA31EA51EA71EA91EAB1EAD1EAF1EB11EB31EB51EB71EB91EBB1EBD1EBF1EC11EC31EC51EC71EC91ECB1ECD1ECF1ED11ED31ED51ED71ED91EDB1EDD1EDF1EE11EE31EE51EE71EE91EEB1EED1EEF1EF11EF31EF51EF71EF91EFB1EFD1EFF-1F071F10-1F151F20-1F271F30-1F371F40-1F451F50-1F571F60-1F671F70-1F7D1F80-1F871F90-1F971FA0-1FA71FB0-1FB41FB61FB71FBE1FC2-1FC41FC61FC71FD0-1FD31FD61FD71FE0-1FE71FF2-1FF41FF61FF7210A210E210F2113212F21342139213C213D2146-2149214E21842C30-2C5E2C612C652C662C682C6A2C6C2C712C732C742C76-2C7C2C812C832C852C872C892C8B2C8D2C8F2C912C932C952C972C992C9B2C9D2C9F2CA12CA32CA52CA72CA92CAB2CAD2CAF2CB12CB32CB52CB72CB92CBB2CBD2CBF2CC12CC32CC52CC72CC92CCB2CCD2CCF2CD12CD32CD52CD72CD92CDB2CDD2CDF2CE12CE32CE42CEC2CEE2D00-2D25A641A643A645A647A649A64BA64DA64FA651A653A655A657A659A65BA65DA65FA663A665A667A669A66BA66DA681A683A685A687A689A68BA68DA68FA691A693A695A697A723A725A727A729A72BA72DA72F-A731A733A735A737A739A73BA73DA73FA741A743A745A747A749A74BA74DA74FA751A753A755A757A759A75BA75DA75FA761A763A765A767A769A76BA76DA76FA771-A778A77AA77CA77FA781A783A785A787A78CFB00-FB06FB13-FB17FF41-FF5A",Lu:"0041-005A00C0-00D600D8-00DE01000102010401060108010A010C010E01100112011401160118011A011C011E01200122012401260128012A012C012E01300132013401360139013B013D013F0141014301450147014A014C014E01500152015401560158015A015C015E01600162016401660168016A016C016E017001720174017601780179017B017D018101820184018601870189-018B018E-0191019301940196-0198019C019D019F01A001A201A401A601A701A901AC01AE01AF01B1-01B301B501B701B801BC01C401C701CA01CD01CF01D101D301D501D701D901DB01DE01E001E201E401E601E801EA01EC01EE01F101F401F6-01F801FA01FC01FE02000202020402060208020A020C020E02100212021402160218021A021C021E02200222022402260228022A022C022E02300232023A023B023D023E02410243-02460248024A024C024E03700372037603860388-038A038C038E038F0391-03A103A3-03AB03CF03D2-03D403D803DA03DC03DE03E003E203E403E603E803EA03EC03EE03F403F703F903FA03FD-042F04600462046404660468046A046C046E04700472047404760478047A047C047E0480048A048C048E04900492049404960498049A049C049E04A004A204A404A604A804AA04AC04AE04B004B204B404B604B804BA04BC04BE04C004C104C304C504C704C904CB04CD04D004D204D404D604D804DA04DC04DE04E004E204E404E604E804EA04EC04EE04F004F204F404F604F804FA04FC04FE05000502050405060508050A050C050E05100512051405160518051A051C051E0520052205240531-055610A0-10C51E001E021E041E061E081E0A1E0C1E0E1E101E121E141E161E181E1A1E1C1E1E1E201E221E241E261E281E2A1E2C1E2E1E301E321E341E361E381E3A1E3C1E3E1E401E421E441E461E481E4A1E4C1E4E1E501E521E541E561E581E5A1E5C1E5E1E601E621E641E661E681E6A1E6C1E6E1E701E721E741E761E781E7A1E7C1E7E1E801E821E841E861E881E8A1E8C1E8E1E901E921E941E9E1EA01EA21EA41EA61EA81EAA1EAC1EAE1EB01EB21EB41EB61EB81EBA1EBC1EBE1EC01EC21EC41EC61EC81ECA1ECC1ECE1ED01ED21ED41ED61ED81EDA1EDC1EDE1EE01EE21EE41EE61EE81EEA1EEC1EEE1EF01EF21EF41EF61EF81EFA1EFC1EFE1F08-1F0F1F18-1F1D1F28-1F2F1F38-1F3F1F48-1F4D1F591F5B1F5D1F5F1F68-1F6F1FB8-1FBB1FC8-1FCB1FD8-1FDB1FE8-1FEC1FF8-1FFB21022107210B-210D2110-211221152119-211D212421262128212A-212D2130-2133213E213F214521832C00-2C2E2C602C62-2C642C672C692C6B2C6D-2C702C722C752C7E-2C802C822C842C862C882C8A2C8C2C8E2C902C922C942C962C982C9A2C9C2C9E2CA02CA22CA42CA62CA82CAA2CAC2CAE2CB02CB22CB42CB62CB82CBA2CBC2CBE2CC02CC22CC42CC62CC82CCA2CCC2CCE2CD02CD22CD42CD62CD82CDA2CDC2CDE2CE02CE22CEB2CEDA640A642A644A646A648A64AA64CA64EA650A652A654A656A658A65AA65CA65EA662A664A666A668A66AA66CA680A682A684A686A688A68AA68CA68EA690A692A694A696A722A724A726A728A72AA72CA72EA732A734A736A738A73AA73CA73EA740A742A744A746A748A74AA74CA74EA750A752A754A756A758A75AA75CA75EA760A762A764A766A768A76AA76CA76EA779A77BA77DA77EA780A782A784A786A78BFF21-FF3A",Lt:"01C501C801CB01F21F88-1F8F1F98-1F9F1FA8-1FAF1FBC1FCC1FFC",Lm:"02B0-02C102C6-02D102E0-02E402EC02EE0374037A0559064006E506E607F407F507FA081A0824082809710E460EC610FC17D718431AA71C78-1C7D1D2C-1D611D781D9B-1DBF2071207F2090-20942C7D2D6F2E2F30053031-3035303B309D309E30FC-30FEA015A4F8-A4FDA60CA67FA717-A71FA770A788A9CFAA70AADDFF70FF9EFF9F",Lo:"01BB01C0-01C3029405D0-05EA05F0-05F20621-063F0641-064A066E066F0671-06D306D506EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA0800-08150904-0939093D09500958-096109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E450E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10D0-10FA1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317DC1820-18421844-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C771CE9-1CEC1CEE-1CF12135-21382D30-2D652D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE3006303C3041-3096309F30A1-30FA30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A014A016-A48CA4D0-A4F7A500-A60BA610-A61FA62AA62BA66EA6A0-A6E5A7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2AA00-AA28AA40-AA42AA44-AA4BAA60-AA6FAA71-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADBAADCABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF66-FF6FFF71-FF9DFFA0-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",M:"0300-036F0483-04890591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DE-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0903093C093E-094E0951-0955096209630981-098309BC09BE-09C409C709C809CB-09CD09D709E209E30A01-0A030A3C0A3E-0A420A470A480A4B-0A4D0A510A700A710A750A81-0A830ABC0ABE-0AC50AC7-0AC90ACB-0ACD0AE20AE30B01-0B030B3C0B3E-0B440B470B480B4B-0B4D0B560B570B620B630B820BBE-0BC20BC6-0BC80BCA-0BCD0BD70C01-0C030C3E-0C440C46-0C480C4A-0C4D0C550C560C620C630C820C830CBC0CBE-0CC40CC6-0CC80CCA-0CCD0CD50CD60CE20CE30D020D030D3E-0D440D46-0D480D4A-0D4D0D570D620D630D820D830DCA0DCF-0DD40DD60DD8-0DDF0DF20DF30E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F3E0F3F0F71-0F840F860F870F90-0F970F99-0FBC0FC6102B-103E1056-1059105E-10601062-10641067-106D1071-10741082-108D108F109A-109D135F1712-17141732-1734175217531772177317B6-17D317DD180B-180D18A91920-192B1930-193B19B0-19C019C819C91A17-1A1B1A55-1A5E1A60-1A7C1A7F1B00-1B041B34-1B441B6B-1B731B80-1B821BA1-1BAA1C24-1C371CD0-1CD21CD4-1CE81CED1CF21DC0-1DE61DFD-1DFF20D0-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66F-A672A67CA67DA6F0A6F1A802A806A80BA823-A827A880A881A8B4-A8C4A8E0-A8F1A926-A92DA947-A953A980-A983A9B3-A9C0AA29-AA36AA43AA4CAA4DAA7BAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE3-ABEAABECABEDFB1EFE00-FE0FFE20-FE26",Mn:"0300-036F0483-04870591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DF-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0902093C0941-0948094D0951-095509620963098109BC09C1-09C409CD09E209E30A010A020A3C0A410A420A470A480A4B-0A4D0A510A700A710A750A810A820ABC0AC1-0AC50AC70AC80ACD0AE20AE30B010B3C0B3F0B41-0B440B4D0B560B620B630B820BC00BCD0C3E-0C400C46-0C480C4A-0C4D0C550C560C620C630CBC0CBF0CC60CCC0CCD0CE20CE30D41-0D440D4D0D620D630DCA0DD2-0DD40DD60E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F71-0F7E0F80-0F840F860F870F90-0F970F99-0FBC0FC6102D-10301032-10371039103A103D103E10581059105E-10601071-1074108210851086108D109D135F1712-17141732-1734175217531772177317B7-17BD17C617C9-17D317DD180B-180D18A91920-19221927192819321939-193B1A171A181A561A58-1A5E1A601A621A65-1A6C1A73-1A7C1A7F1B00-1B031B341B36-1B3A1B3C1B421B6B-1B731B801B811BA2-1BA51BA81BA91C2C-1C331C361C371CD0-1CD21CD4-1CE01CE2-1CE81CED1DC0-1DE61DFD-1DFF20D0-20DC20E120E5-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66FA67CA67DA6F0A6F1A802A806A80BA825A826A8C4A8E0-A8F1A926-A92DA947-A951A980-A982A9B3A9B6-A9B9A9BCAA29-AA2EAA31AA32AA35AA36AA43AA4CAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE5ABE8ABEDFB1EFE00-FE0FFE20-FE26",Mc:"0903093E-09400949-094C094E0982098309BE-09C009C709C809CB09CC09D70A030A3E-0A400A830ABE-0AC00AC90ACB0ACC0B020B030B3E0B400B470B480B4B0B4C0B570BBE0BBF0BC10BC20BC6-0BC80BCA-0BCC0BD70C01-0C030C41-0C440C820C830CBE0CC0-0CC40CC70CC80CCA0CCB0CD50CD60D020D030D3E-0D400D46-0D480D4A-0D4C0D570D820D830DCF-0DD10DD8-0DDF0DF20DF30F3E0F3F0F7F102B102C10311038103B103C105610571062-10641067-106D108310841087-108C108F109A-109C17B617BE-17C517C717C81923-19261929-192B193019311933-193819B0-19C019C819C91A19-1A1B1A551A571A611A631A641A6D-1A721B041B351B3B1B3D-1B411B431B441B821BA11BA61BA71BAA1C24-1C2B1C341C351CE11CF2A823A824A827A880A881A8B4-A8C3A952A953A983A9B4A9B5A9BAA9BBA9BD-A9C0AA2FAA30AA33AA34AA4DAA7BABE3ABE4ABE6ABE7ABE9ABEAABEC",Me:"0488048906DE20DD-20E020E2-20E4A670-A672",N:"0030-003900B200B300B900BC-00BE0660-066906F0-06F907C0-07C90966-096F09E6-09EF09F4-09F90A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BF20C66-0C6F0C78-0C7E0CE6-0CEF0D66-0D750E50-0E590ED0-0ED90F20-0F331040-10491090-10991369-137C16EE-16F017E0-17E917F0-17F91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C5920702074-20792080-20892150-21822185-21892460-249B24EA-24FF2776-27932CFD30073021-30293038-303A3192-31953220-32293251-325F3280-328932B1-32BFA620-A629A6E6-A6EFA830-A835A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nd:"0030-00390660-066906F0-06F907C0-07C90966-096F09E6-09EF0A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BEF0C66-0C6F0CE6-0CEF0D66-0D6F0E50-0E590ED0-0ED90F20-0F291040-10491090-109917E0-17E91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C59A620-A629A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nl:"16EE-16F02160-21822185-218830073021-30293038-303AA6E6-A6EF",No:"00B200B300B900BC-00BE09F4-09F90BF0-0BF20C78-0C7E0D70-0D750F2A-0F331369-137C17F0-17F920702074-20792080-20892150-215F21892460-249B24EA-24FF2776-27932CFD3192-31953220-32293251-325F3280-328932B1-32BFA830-A835",P:"0021-00230025-002A002C-002F003A003B003F0040005B-005D005F007B007D00A100AB00B700BB00BF037E0387055A-055F0589058A05BE05C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F3A-0F3D0F850FD0-0FD4104A-104F10FB1361-13681400166D166E169B169C16EB-16ED1735173617D4-17D617D8-17DA1800-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD32010-20272030-20432045-20512053-205E207D207E208D208E2329232A2768-277527C527C627E6-27EF2983-299829D8-29DB29FC29FD2CF9-2CFC2CFE2CFF2E00-2E2E2E302E313001-30033008-30113014-301F3030303D30A030FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFD3EFD3FFE10-FE19FE30-FE52FE54-FE61FE63FE68FE6AFE6BFF01-FF03FF05-FF0AFF0C-FF0FFF1AFF1BFF1FFF20FF3B-FF3DFF3FFF5BFF5DFF5F-FF65",Pd:"002D058A05BE140018062010-20152E172E1A301C303030A0FE31FE32FE58FE63FF0D",Ps:"0028005B007B0F3A0F3C169B201A201E2045207D208D23292768276A276C276E27702772277427C527E627E827EA27EC27EE2983298529872989298B298D298F299129932995299729D829DA29FC2E222E242E262E283008300A300C300E3010301430163018301A301DFD3EFE17FE35FE37FE39FE3BFE3DFE3FFE41FE43FE47FE59FE5BFE5DFF08FF3BFF5BFF5FFF62",Pe:"0029005D007D0F3B0F3D169C2046207E208E232A2769276B276D276F27712773277527C627E727E927EB27ED27EF298429862988298A298C298E2990299229942996299829D929DB29FD2E232E252E272E293009300B300D300F3011301530173019301B301E301FFD3FFE18FE36FE38FE3AFE3CFE3EFE40FE42FE44FE48FE5AFE5CFE5EFF09FF3DFF5DFF60FF63",Pi:"00AB2018201B201C201F20392E022E042E092E0C2E1C2E20",Pf:"00BB2019201D203A2E032E052E0A2E0D2E1D2E21",Pc:"005F203F20402054FE33FE34FE4D-FE4FFF3F",Po:"0021-00230025-0027002A002C002E002F003A003B003F0040005C00A100B700BF037E0387055A-055F058905C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F850FD0-0FD4104A-104F10FB1361-1368166D166E16EB-16ED1735173617D4-17D617D8-17DA1800-18051807-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD3201620172020-20272030-2038203B-203E2041-20432047-205120532055-205E2CF9-2CFC2CFE2CFF2E002E012E06-2E082E0B2E0E-2E162E182E192E1B2E1E2E1F2E2A-2E2E2E302E313001-3003303D30FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFE10-FE16FE19FE30FE45FE46FE49-FE4CFE50-FE52FE54-FE57FE5F-FE61FE68FE6AFE6BFF01-FF03FF05-FF07FF0AFF0CFF0EFF0FFF1AFF1BFF1FFF20FF3CFF61FF64FF65",S:"0024002B003C-003E005E0060007C007E00A2-00A900AC00AE-00B100B400B600B800D700F702C2-02C502D2-02DF02E5-02EB02ED02EF-02FF03750384038503F604820606-0608060B060E060F06E906FD06FE07F609F209F309FA09FB0AF10B700BF3-0BFA0C7F0CF10CF20D790E3F0F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-139917DB194019E0-19FF1B61-1B6A1B74-1B7C1FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE20442052207A-207C208A-208C20A0-20B8210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B2140-2144214A-214D214F2190-2328232B-23E82400-24262440-244A249C-24E92500-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE27C0-27C427C7-27CA27CC27D0-27E527F0-29822999-29D729DC-29FB29FE-2B4C2B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F309B309C319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A700-A716A720A721A789A78AA828-A82BA836-A839AA77-AA79FB29FDFCFDFDFE62FE64-FE66FE69FF04FF0BFF1C-FF1EFF3EFF40FF5CFF5EFFE0-FFE6FFE8-FFEEFFFCFFFD",Sm:"002B003C-003E007C007E00AC00B100D700F703F60606-060820442052207A-207C208A-208C2140-2144214B2190-2194219A219B21A021A321A621AE21CE21CF21D221D421F4-22FF2308-230B23202321237C239B-23B323DC-23E125B725C125F8-25FF266F27C0-27C427C7-27CA27CC27D0-27E527F0-27FF2900-29822999-29D729DC-29FB29FE-2AFF2B30-2B442B47-2B4CFB29FE62FE64-FE66FF0BFF1C-FF1EFF5CFF5EFFE2FFE9-FFEC",Sc:"002400A2-00A5060B09F209F309FB0AF10BF90E3F17DB20A0-20B8A838FDFCFE69FF04FFE0FFE1FFE5FFE6",Sk:"005E006000A800AF00B400B802C2-02C502D2-02DF02E5-02EB02ED02EF-02FF0375038403851FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE309B309CA700-A716A720A721A789A78AFF3EFF40FFE3",So:"00A600A700A900AE00B000B60482060E060F06E906FD06FE07F609FA0B700BF3-0BF80BFA0C7F0CF10CF20D790F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-1399194019E0-19FF1B61-1B6A1B74-1B7C210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B214A214C214D214F2195-2199219C-219F21A121A221A421A521A7-21AD21AF-21CD21D021D121D321D5-21F32300-2307230C-231F2322-2328232B-237B237D-239A23B4-23DB23E2-23E82400-24262440-244A249C-24E92500-25B625B8-25C025C2-25F72600-266E2670-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE2800-28FF2B00-2B2F2B452B462B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A828-A82BA836A837A839AA77-AA79FDFDFFE4FFE8FFEDFFEEFFFCFFFD",Z:"002000A01680180E2000-200A20282029202F205F3000",Zs:"002000A01680180E2000-200A202F205F3000",Zl:"2028",Zp:"2029",C:"0000-001F007F-009F00AD03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-0605061C061D0620065F06DD070E070F074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17B417B517DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF200B-200F202A-202E2060-206F20722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-F8FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFD-FF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFFBFFFEFFFF",Cc:"0000-001F007F-009F",Cf:"00AD0600-060306DD070F17B417B5200B-200F202A-202E2060-2064206A-206FFEFFFFF9-FFFB",Co:"E000-F8FF",Cs:"D800-DFFF",Cn:"03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-05FF06040605061C061D0620065F070E074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF2065-206920722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-D7FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFDFEFEFF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFF8FFFEFFFF"})}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour/cstyle","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,n){"use strict";var i=e("../tokenizer").Tokenizer,r=e("./text_highlight_rules").TextHighlightRules,o=e("./behaviour/cstyle").CstyleBehaviour,s=e("../unicode"),a=e("../lib/lang"),l=e("../token_iterator").TokenIterator,c=e("../range").Range,u=function(){this.HighlightRules=r};(function(){this.$defaultBehaviour=new o,this.tokenRe=new RegExp("^["+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+s.packages.L+s.packages.Mn+s.packages.Mc+s.packages.Nd+s.packages.Pc+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new i(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,n,i){function r(e){for(var t=n;t<=i;t++)e(o.getLine(t),t)}var o=t.doc,s=!0,l=!0,c=1/0,u=t.getTabSize(),h=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var d=this.lineCommentStart.map(a.escapeRegExp).join("|"),f=this.lineCommentStart[0];else var d=a.escapeRegExp(this.lineCommentStart),f=this.lineCommentStart;d=new RegExp("^(\\s*)(?:"+d+") ?"),h=t.getUseSoftTabs();var p=function(e,t){var n=e.match(d);if(n){var i=n[1].length,r=n[0].length;y(e,i,r)||" "!=n[0][r-1]||r--,o.removeInLine(t,i,r)}},g=f+" ",m=function(e,t){s&&!/\S/.test(e)||(y(e,c,c)?o.insertInLine({row:t,column:c},g):o.insertInLine({row:t,column:c},f))},v=function(e,t){return d.test(e)},y=function(e,t,n){for(var i=0;t--&&" "==e.charAt(t);)i++;if(i%u!=0)return!1;for(var i=0;" "==e.charAt(n++);)i++;return u>2?i%u!=u-1:i%u==0}}else{if(!this.blockComment)return!1;var f=this.blockComment.start,b=this.blockComment.end,d=new RegExp("^(\\s*)(?:"+a.escapeRegExp(f)+")"),w=new RegExp("(?:"+a.escapeRegExp(b)+")\\s*$"),m=function(e,t){v(e,t)||s&&!/\S/.test(e)||(o.insertInLine({row:t,column:e.length},b),o.insertInLine({row:t,column:c},f))},p=function(e,t){var n;(n=e.match(w))&&o.removeInLine(t,e.length-n[0].length,e.length),(n=e.match(d))&&o.removeInLine(t,n[1].length,n[0].length)},v=function(e,n){if(d.test(e))return!0;for(var i=t.getTokens(n),r=0;r<i.length;r++)if("comment"===i[r].type)return!0}}var C=1/0;r(function(e,t){var n=e.search(/\S/);-1!==n?(n<c&&(c=n),l&&!v(e,t)&&(l=!1)):C>e.length&&(C=e.length)}),c==1/0&&(c=C,s=!1,l=!1),h&&c%u!=0&&(c=Math.floor(c/u)*u),r(l?p:m)},this.toggleBlockComment=function(e,t,n,i){var r=this.blockComment;if(r){!r.start&&r[0]&&(r=r[0]);var o,s,a=new l(t,i.row,i.column),u=a.getCurrentToken(),h=(t.selection,t.selection.toOrientedRange());if(u&&/comment/.test(u.type)){for(var d,f;u&&/comment/.test(u.type);){var p=u.value.indexOf(r.start);if(-1!=p){var g=a.getCurrentTokenRow(),m=a.getCurrentTokenColumn()+p;d=new c(g,m,g,m+r.start.length);break}u=a.stepBackward()}for(var a=new l(t,i.row,i.column),u=a.getCurrentToken();u&&/comment/.test(u.type);){var p=u.value.indexOf(r.end);if(-1!=p){var g=a.getCurrentTokenRow(),m=a.getCurrentTokenColumn()+p;f=new c(g,m,g,m+r.end.length);break}u=a.stepForward()}f&&t.remove(f),d&&(t.remove(d),o=d.start.row,s=-r.start.length)}else s=r.start.length,o=n.start.row,t.insert(n.end,r.end),t.insert(n.start,r.start);h.start.row==o&&(h.start.column+=s),h.end.row==o&&(h.end.column+=s),t.selection.fromOrientedRange(h)}},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)e[t]&&(this.$embeds.push(t),this.$modes[t]=new e[t]);for(var n=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],t=0;t<n.length;t++)!function(e){var i=n[t],r=e[i];e[n[t]]=function(){return this.$delegator(i,arguments,r)}}(this)},this.$delegator=function(e,t,n){var i=t[0];"string"!=typeof i&&(i=i[0]);for(var r=0;r<this.$embeds.length;r++)if(this.$modes[this.$embeds[r]]){var o=i.split(this.$embeds[r]);if(!o[0]&&o[1]){t[0]=o[1];var s=this.$modes[this.$embeds[r]];return s[e].apply(s,t)}}var a=n.apply(this,t);return n?a:void 0},this.transformAction=function(e,t,n,i,r){if(this.$behaviour){var o=this.$behaviour.getBehaviours();for(var s in o)if(o[s][t]){var a=o[s][t].apply(this,arguments);if(a)return a}}},this.getKeywords=function(e){if(!this.completionKeywords){var t=this.$tokenizer.rules,n=[];for(var i in t)for(var r=t[i],o=0,s=r.length;o<s;o++)if("string"===typeof r[o].token)/keyword|support|storage/.test(r[o].token)&&n.push(r[o].regex);else if("object"===typeof r[o].token)for(var a=0,l=r[o].token.length;a<l;a++)if(/keyword|support|storage/.test(r[o].token[a])){var i=r[o].regex.match(/\(.+?\)/g)[a];n.push(i.substr(1,i.length-2))}this.completionKeywords=n}return e?n.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,n,i){return(this.$keywordList||this.$createKeywordList()).map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(u.prototype),t.Mode=u}),ace.define("ace/apply_delta",["require","exports","module"],function(e,t,n){"use strict";t.applyDelta=function(e,t,n){var i=t.start.row,r=t.start.column,o=e[i]||"";switch(t.action){case"insert":if(1===t.lines.length)e[i]=o.substring(0,r)+t.lines[0]+o.substring(r);else{var s=[i,1].concat(t.lines);e.splice.apply(e,s),e[i]=o.substring(0,r)+e[i],e[i+t.lines.length-1]+=o.substring(r)}break;case"remove":var a=t.end.column,l=t.end.row;i===l?e[i]=o.substring(0,r)+o.substring(a):e.splice(i,l-i+1,o.substring(0,r)+e[l].substring(a))}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),"undefined"==typeof n?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){function e(e,t,n){var i=n?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&i}function t(t,n,i){var r="insert"==t.action,o=(r?1:-1)*(t.end.row-t.start.row),s=(r?1:-1)*(t.end.column-t.start.column),a=t.start,l=r?a:t.end;return e(n,a,i)?{row:n.row,column:n.column}:e(l,n,!i)?{row:n.row+o,column:n.column+(n.row==l.row?s:0)}:{row:a.row,column:a.column}}i.implement(this,r),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){if((e.start.row!=e.end.row||e.start.row==this.row)&&!(e.start.row>this.row)){var n=t(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)}},this.setPosition=function(e,t,n){var i;if(i=n?{row:e,column:t}:this.$clipPositionToDocument(e,t),this.row!=i.row||this.column!=i.column){var r={row:this.row,column:this.column};this.row=i.row,this.column=i.column,this._signal("change",{old:r,value:i})}},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(o.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./apply_delta").applyDelta,o=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,a=e("./anchor").Anchor,l=function(e){this.$lines=[""],0===e.length?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){i.implement(this,o),this.setValue=function(e){var t=this.getLength()-1;this.remove(new s(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new a(this,e,t)},0==="aaa".split(/a/).length?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){this.$newLineMode!==e&&(this.$newLineMode=e,this._signal("changeNewLineMode"))},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return"\r\n"==e||"\r"==e||"\n"==e},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),i=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:i,action:"insert",lines:[t]},!0),this.clonePos(i)},this.clippedPos=function(e,t){var n=this.getLength();void 0===e?e=n:e<0?e=0:e>=n&&(e=n-1,t=void 0);var i=this.getLine(e);return void 0==t&&(t=i.length),t=Math.min(Math.max(t,0),i.length),{row:e,column:t}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e<this.getLength()?(t=t.concat([""]),n=0):(t=[""].concat(t),e--,n=this.$lines[e].length),this.insertMergedLines({row:e,column:n},t)},this.insertMergedLines=function(e,t){var n=this.clippedPos(e.row,e.column),i={row:n.row+t.length-1,column:(1==t.length?n.column:0)+t[t.length-1].length};return this.applyDelta({start:n,end:i,action:"insert",lines:t}),this.clonePos(i)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),n=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:n,action:"remove",lines:this.getLinesForRange({start:t,end:n})}),this.clonePos(t)},this.removeInLine=function(e,t,n){var i=this.clippedPos(e,t),r=this.clippedPos(e,n);return this.applyDelta({start:i,end:r,action:"remove",lines:this.getLinesForRange({start:i,end:r})},!0),this.clonePos(i)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var n=t==this.getLength()-1&&e>0,i=t<this.getLength()-1,r=n?e-1:e,o=n?this.getLine(r).length:0,a=i?t+1:t,l=i?0:this.getLine(a).length,c=new s(r,o,a,l),u=this.$lines.slice(e,t+1);return this.applyDelta({start:c.start,end:c.end,action:"remove",lines:this.getLinesForRange(c)}),u},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){if(e instanceof s||(e=s.fromPoints(e.start,e.end)),0===t.length&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);return t?this.insert(e.start,t):e.start},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var n="insert"==e.action;(n?e.lines.length<=1&&!e.lines[0]:!s.comparePoints(e.start,e.end))||(n&&e.lines.length>2e4&&this.$splitAndapplyLargeDelta(e,2e4),r(this.$lines,e,t),this._signal("change",e))},this.$splitAndapplyLargeDelta=function(e,t){for(var n=e.lines,i=n.length,r=e.start.row,o=e.start.column,s=0,a=0;;){s=a,a+=t-1;var l=n.slice(s,a);if(a>i){e.lines=l,e.start.row=r+s,e.start.column=o;break}l.push(""),this.applyDelta({start:this.pos(r+s,o),end:this.pos(r+a,o=0),action:e.action,lines:l},!0)}},this.revertDelta=function(e){this.applyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:"insert"==e.action?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){for(var n=this.$lines||this.getAllLines(),i=this.getNewLineCharacter().length,r=t||0,o=n.length;r<o;r++)if((e-=n[r].length+i)<0)return{row:r,column:e+n[r].length+i};return{row:o-1,column:n[o-1].length}},this.positionToIndex=function(e,t){for(var n=this.$lines||this.getAllLines(),i=this.getNewLineCharacter().length,r=0,o=Math.min(e.row,n.length),s=t||0;s<o;++s)r+=n[s].length+i;return r+e.column}}).call(l.prototype),t.Document=l}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/event_emitter").EventEmitter,o=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var n=this;this.$worker=function(){if(n.running){for(var e=new Date,t=n.currentLine,i=-1,r=n.doc,o=t;n.lines[t];)t++;var s=r.getLength(),a=0;for(n.running=!1;t<s;){n.$tokenizeRow(t),i=t;do{t++}while(n.lines[t]);if(++a%5===0&&new Date-e>20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,-1==i&&(i=t),o<=i&&n.fireUpdateEvent(o,i)}}};(function(){i.implement(this,r),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._signal("update",{data:n})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.start.row,n=e.end.row-t;if(0===n)this.lines[t]=null;else if("remove"==e.action)this.lines.splice(t,n+1,null),this.states.splice(t,n+1,null);else{var i=Array(n+1);i.unshift(t,1),this.lines.splice.apply(this.lines,i),this.states.splice.apply(this.states,i)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],i=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!==i.state+""?(this.states[e]=i.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=i.tokens}}).call(o.prototype),t.BackgroundTokenizer=o}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";var i=e("./lib/lang"),r=(e("./lib/oop"),e("./range").Range),o=function(e,t,n){this.setRegexp(e),this.clazz=t,this.type=n||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){this.regExp+""!=e+""&&(this.regExp=e,this.cache=[])},this.update=function(e,t,n,o){if(this.regExp)for(var s=o.firstRow,a=o.lastRow,l=s;l<=a;l++){var c=this.cache[l];null==c&&(c=i.getMatchOffsets(n.getLine(l),this.regExp),c.length>this.MAX_RANGES&&(c=c.slice(0,this.MAX_RANGES)),c=c.map(function(e){return new r(l,e.offset,l,e.offset+e.length)}),this.cache[l]=c.length?c:"");for(var u=c.length;u--;)t.drawSingleLineMarker(e,c[u].toScreenRange(n),this.clazz,o)}}}).call(o.prototype),t.SearchHighlight=o}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}var r=e("../range").Range;(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.row<this.startRow||e.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,n){var i,r,o,s=0,a=this.folds,l=!0;null==t&&(t=this.end.row,n=this.end.column);for(var c=0;c<a.length;c++){if(i=a[c],-1==(r=i.range.compareStart(t,n)))return void e(null,t,n,s,l);if(o=e(null,i.start.row,i.start.column,s,l),(o=!o&&e(i.placeholder,i.start.row,i.start.column,s))||0===r)return;l=!i.sameRow,s=i.end.column}e(null,t,n,s,l)},this.getNextFoldTo=function(e,t){for(var n,i,r=0;r<this.folds.length;r++){if(n=this.folds[r],-1==(i=n.range.compareEnd(e,t)))return{fold:n,kind:"after"};if(0===i)return{fold:n,kind:"inside"}}return null},this.addRemoveChars=function(e,t,n){var i,r,o=this.getNextFoldTo(e,t);if(o)if(i=o.fold,"inside"==o.kind&&i.start.column!=t&&i.start.row!=e)window.console&&window.console.log(e,t,i);else if(i.start.row==e){r=this.folds;var s=r.indexOf(i);for(0===s&&(this.start.column+=n),s;s<r.length;s++){if(i=r[s],i.start.column+=n,!i.sameRow)return;i.end.column+=n}this.end.column+=n}},this.split=function(e,t){var n=this.getNextFoldTo(e,t);if(!n||"inside"==n.kind)return null;var r=n.fold,o=this.folds,s=this.foldData,a=o.indexOf(r),l=o[a-1];this.end.row=l.end.row,this.end.column=l.end.column,o=o.splice(a,o.length-a);var c=new i(s,o);return s.splice(s.indexOf(this)+1,0,c),c},this.merge=function(e){for(var t=e.folds,n=0;n<t.length;n++)this.addFold(t[n]);var i=this.foldData;i.splice(i.indexOf(e),1)},this.toString=function(){var e=[this.range.toString()+": ["];return this.folds.forEach(function(t){e.push(" "+t.toString())}),e.push("]"),e.join("\n")},this.idxToPosition=function(e){for(var t=0,n=0;n<this.folds.length;n++){var i=this.folds[n];if((e-=i.start.column-t)<0)return{row:i.start.row,column:i.start.column+e};if((e-=i.placeholder.length)<0)return i.start;t=i.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(i.prototype),t.FoldLine=i}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,t,n){"use strict";var i=e("./range").Range,r=i.comparePoints,o=function(){this.ranges=[]};(function(){this.comparePoints=r,this.pointIndex=function(e,t,n){for(var i=this.ranges,o=n||0;o<i.length;o++){var s=i[o],a=r(e,s.end);if(!(a>0)){var l=r(e,s.start);return 0===a?t&&0!==l?-o-2:o:l>0||0===l&&!t?o:-o-1}}return-o-1},this.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var i=this.pointIndex(e.end,t,n);return i<0?i=-i-1:i++,this.ranges.splice(n,i-n,e)},this.addList=function(e){for(var t=[],n=e.length;n--;)t.push.apply(t,this.add(e[n]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},this.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return r(e.start,t.start)});for(var n,i=t[0],o=1;o<t.length;o++){n=i,i=t[o];var s=r(n.end,i.start);s<0||(0!=s||n.isEmpty()||i.isEmpty())&&(r(n.end,i.end)<0&&(n.end.row=i.end.row,n.end.column=i.end.column),t.splice(o,1),e.push(i),i=n,o--)}return this.ranges=t,e},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},this.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row<e)return[];var i=this.pointIndex({row:e,column:0});i<0&&(i=-i-1);var r=this.pointIndex({row:t,column:0},i);r<0&&(r=-r-1);for(var o=[],s=i;s<r;s++)o.push(n[s]);return o},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},this.$onChange=function(e){if("insert"==e.action)var t=e.start,n=e.end;else var n=e.start,t=e.end;for(var i=t.row,r=n.row,o=r-i,s=-t.column+n.column,a=this.ranges,l=0,c=a.length;l<c;l++){var u=a[l];if(!(u.end.row<i)){if(u.start.row>i)break;if(u.start.row==i&&u.start.column>=t.column&&(u.start.column==t.column&&this.$insertRight||(u.start.column+=s,u.start.row+=o)),u.end.row==i&&u.end.column>=t.column){if(u.end.column==t.column&&this.$insertRight)continue;u.end.column==t.column&&s>0&&l<c-1&&u.end.column>u.start.column&&u.end.column==a[l+1].start.column&&(u.end.column-=s),u.end.column+=s,u.end.row+=o}}}if(0!=o&&l<c)for(;l<c;l++){var u=a[l];u.start.row+=o,u.end.row+=o}}}).call(o.prototype),t.RangeList=o}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(e,t,n){"use strict";function i(e,t){e.row-=t.row,0==e.row&&(e.column-=t.column)}function r(e,t){i(e.start,t),i(e.end,t)}function o(e,t){0==e.row&&(e.column+=t.column),e.row+=t.row}function s(e,t){o(e.start,t),o(e.end,t)}var a=(e("../range").Range,e("../range_list").RangeList),l=e("../lib/oop"),c=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};l.inherits(c,a),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new c(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(!this.range.isEqual(e)){if(!this.range.containsRange(e))throw new Error("A fold can't intersect already existing fold"+e.range+this.range);r(e,this.start);for(var t=e.start.row,n=e.start.column,i=0,o=-1;i<this.subFolds.length&&1==(o=this.subFolds[i].range.compare(t,n));i++);var s=this.subFolds[i];if(0==o)return s.addSubFold(e);for(var t=e.range.end.row,n=e.range.end.column,a=i,o=-1;a<this.subFolds.length&&1==(o=this.subFolds[a].range.compare(t,n));a++);this.subFolds[a];if(0==o)throw new Error("A fold can't intersect already existing fold"+e.range+this.range);this.subFolds.splice(i,a-i,e);return e.setFoldLine(this.foldLine),e}},this.restoreRange=function(e){return s(e,this.start)}}.call(c.prototype)}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(e,t,n){"use strict";function i(){this.getFoldAt=function(e,t,n){var i=this.getFoldLine(e);if(!i)return null;for(var r=i.folds,o=0;o<r.length;o++){var s=r[o];if(s.range.contains(e,t)){if(1==n&&s.range.isEnd(e,t))continue;if(-1==n&&s.range.isStart(e,t))continue;return s}}},this.getFoldsInRange=function(e){var t=e.start,n=e.end,i=this.$foldData,r=[];t.column+=1,n.column-=1;for(var o=0;o<i.length;o++){var s=i[o].range.compareRange(e);if(2!=s){if(-2==s)break;for(var a=i[o].folds,l=0;l<a.length;l++){var c=a[l];if(-2==(s=c.range.compareRange(e)))break;if(2!=s){if(42==s)break;r.push(c)}}}}return t.column-=1,n.column+=1,r},this.getFoldsInRangeList=function(e){if(Array.isArray(e)){var t=[];e.forEach(function(e){t=t.concat(this.getFoldsInRange(e))},this)}else var t=this.getFoldsInRange(e);return t},this.getAllFolds=function(){for(var e=[],t=this.$foldData,n=0;n<t.length;n++)for(var i=0;i<t[n].folds.length;i++)e.push(t[n].folds[i]);return e},this.getFoldStringAt=function(e,t,n,i){if(!(i=i||this.getFoldLine(e)))return null;for(var r,o,s={end:{column:0}},a=0;a<i.folds.length;a++){o=i.folds[a];var l=o.range.compareEnd(e,t);if(-1==l){r=this.getLine(o.start.row).substring(s.end.column,o.start.column);break}if(0===l)return null;s=o}return r||(r=this.getLine(o.start.row).substring(s.end.column)),-1==n?r.substring(0,t-s.end.column):1==n?r.substring(t-s.end.column):r},this.getFoldLine=function(e,t){var n=this.$foldData,i=0;for(t&&(i=n.indexOf(t)),-1==i&&(i=0),i;i<n.length;i++){var r=n[i];if(r.start.row<=e&&r.end.row>=e)return r;if(r.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,i=0;for(t&&(i=n.indexOf(t)),-1==i&&(i=0),i;i<n.length;i++){var r=n[i];if(r.end.row>=e)return r}return null},this.getFoldedRowCount=function(e,t){for(var n=this.$foldData,i=t-e+1,r=0;r<n.length;r++){var o=n[r],s=o.end.row,a=o.start.row;if(s>=t){a<t&&(a>=e?i-=t-a:i=0);break}s>=e&&(i-=a>=e?s-a:s-e+1)}return i},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n,i=this.$foldData,r=!1;e instanceof s?n=e:(n=new s(t,e),n.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(n.range);var a=n.start.row,l=n.start.column,c=n.end.row,u=n.end.column;if(!(a<c||a==c&&l<=u-2))throw new Error("The range has to be at least 2 characters width");var h=this.getFoldAt(a,l,1),d=this.getFoldAt(c,u,-1);if(h&&d==h)return h.addSubFold(n);h&&!h.range.isStart(a,l)&&this.removeFold(h),d&&!d.range.isEnd(c,u)&&this.removeFold(d);var f=this.getFoldsInRange(n.range);f.length>0&&(this.removeFolds(f),f.forEach(function(e){n.addSubFold(e)}));for(var p=0;p<i.length;p++){var g=i[p];if(c==g.start.row){g.addFold(n),r=!0;break}if(a==g.end.row){if(g.addFold(n),r=!0,!n.sameRow){var m=i[p+1];if(m&&m.start.row==c){g.merge(m);break}}break}if(c<=g.start.row)break}return r||(g=this.$addFoldLine(new o(this.$foldData,n))),this.$useWrapMode?this.$updateWrapData(g.start.row,g.start.row):this.$updateRowLengthCache(g.start.row,g.start.row),this.$modified=!0,this._signal("changeFold",{data:n,action:"add"}),n},this.addFolds=function(e){e.forEach(function(e){this.addFold(e)},this)},this.removeFold=function(e){var t=e.foldLine,n=t.start.row,i=t.end.row,r=this.$foldData,o=t.folds;if(1==o.length)r.splice(r.indexOf(t),1);else if(t.range.isEnd(e.end.row,e.end.column))o.pop(),t.end.row=o[o.length-1].end.row,t.end.column=o[o.length-1].end.column;else if(t.range.isStart(e.start.row,e.start.column))o.shift(),t.start.row=o[0].start.row,t.start.column=o[0].start.column;else if(e.sameRow)o.splice(o.indexOf(e),1);else{var s=t.split(e.start.row,e.start.column);o=s.folds,o.shift(),s.start.row=o[0].start.row,s.start.column=o[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(n,i):this.$updateRowLengthCache(n,i)),this.$modified=!0,this._signal("changeFold",{data:e,action:"remove"})},this.removeFolds=function(e){for(var t=[],n=0;n<e.length;n++)t.push(e[n]);t.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(e){this.removeFold(e),e.subFolds.forEach(function(t){e.restoreRange(t),this.addFold(t)},this),e.collapseChildren>0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;if(null==e?(n=new r(0,0,this.getLength(),0),t=!0):n="number"==typeof e?new r(e,0,e,this.getLine(e).length):"row"in e?r.fromPoints(e,e):e,i=this.getFoldsInRangeList(n),t)this.removeFolds(i);else for(var o=i;o.length;)this.expandFolds(o),o=this.getFoldsInRangeList(n);if(i.length)return i},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,i,r){null==i&&(i=e.start.row),null==r&&(r=0),null==t&&(t=e.end.row),null==n&&(n=this.getLine(t).length);var o=this.doc,s="";return e.walk(function(e,t,n,a){if(!(t<i)){if(t==i){if(n<r)return;a=Math.max(r,a)}s+=null!=e?e:o.getLine(t).substring(a,n)}},t,n),s},this.getDisplayLine=function(e,t,n,i){var r=this.getFoldLine(e);if(r)return this.getFoldDisplayLine(r,e,t,n,i);var o;return o=this.doc.getLine(e),o.substring(i||0,t||o.length)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var n=t.folds.map(function(e){return e.clone()});return new o(e,n)})},this.toggleFold=function(e){var t,n,i=this.selection,r=i.getRange();if(r.isEmpty()){var o=r.start;if(t=this.getFoldAt(o.row,o.column))return void this.expandFold(t);(n=this.findMatchingBracket(o))?1==r.comparePoint(n)?r.end=n:(r.start=n,r.start.column++,r.end.column--):(n=this.findMatchingBracket({row:o.row,column:o.column+1}))?(1==r.comparePoint(n)?r.end=n:r.start=n,r.start.column++):r=this.getCommentFoldRange(o.row,o.column)||r}else{var s=this.getFoldsInRange(r);if(e&&s.length)return void this.expandFolds(s);1==s.length&&(t=s[0])}if(t||(t=this.getFoldAt(r.start.row,r.start.column)),t&&t.range.toString()==r.toString())return void this.expandFold(t);var a="...";if(!r.isMultiLine()){if(a=this.getTextRange(r),a.length<4)return;a=a.trim().substring(0,2)+".."}this.addFold(a,r)},this.getCommentFoldRange=function(e,t,n){var i=new a(this,e,t),o=i.getCurrentToken(),s=o.type;if(o&&/^comment|string/.test(s)){s=s.match(/comment|string/)[0],"comment"==s&&(s+="|doc-start");var l=new RegExp(s),c=new r;if(1!=n){do{o=i.stepBackward()}while(o&&l.test(o.type));i.stepForward()}if(c.start.row=i.getCurrentTokenRow(),c.start.column=i.getCurrentTokenColumn()+2,i=new a(this,e,t),-1!=n){var u=-1;do{if(o=i.stepForward(),-1==u){var h=this.getState(i.$row);l.test(h)||(u=i.$row)}else if(i.$row>u)break}while(o&&l.test(o.type));o=i.stepBackward()}else o=i.getCurrentToken();return c.end.row=i.getCurrentTokenRow(),c.end.column=i.getCurrentTokenColumn()+o.value.length-2,c}},this.foldAll=function(e,t,n){void 0==n&&(n=1e5);var i=this.foldWidgets;if(i){t=t||this.getLength(),e=e||0;for(var r=e;r<t;r++)if(null==i[r]&&(i[r]=this.getFoldWidget(r)),"start"==i[r]){var o=this.getFoldWidgetRange(r);if(o&&o.isMultiLine()&&o.end.row<=t&&o.start.row>=e){r=o.end.row;try{var s=this.addFold("...",o);s&&(s.collapseChildren=n)}catch(e){}}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=e){this.$foldStyle=e,"manual"==e&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)}},this.$setFolding=function(e){if(this.$foldMode!=e){if(this.$foldMode=e,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),!e||"manual"==this.$foldStyle)return void(this.foldWidgets=null);this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets),this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)}},this.getParentFoldRangeData=function(e,t){var n=this.foldWidgets;if(!n||t&&n[e])return{};for(var i,r=e-1;r>=0;){var o=n[r];if(null==o&&(o=n[r]=this.getFoldWidget(r)),"start"==o){var s=this.getFoldWidgetRange(r);if(i||(i=s),s&&s.end.row>=e)break}r--}return{range:-1!==r&&s,firstRange:i}},this.onFoldWidgetClick=function(e,t){t=t.domEvent;var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey};if(!this.$toggleFoldWidget(e,n)){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(this.getFoldWidget){var n=this.getFoldWidget(e),i=this.getLine(e),r="end"===n?-1:1,o=this.getFoldAt(e,-1===r?0:i.length,r);if(o)return t.children||t.all?this.removeFold(o):this.expandFold(o),o;var s=this.getFoldWidgetRange(e,!0);if(s&&!s.isMultiLine()&&(o=this.getFoldAt(s.start.row,s.start.column,1))&&s.isEqual(o.range))return this.removeFold(o),o;if(t.siblings){var a=this.getParentFoldRangeData(e);if(a.range)var l=a.range.start.row+1,c=a.range.end.row;this.foldAll(l,c,t.all?1e4:0)}else t.children?(c=s?s.end.row:this.getLength(),this.foldAll(e+1,c,t.all?1e4:0)):s&&(t.all&&(s.collapseChildren=1e4),this.addFold("...",s));return s}},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(!n){var i=this.getParentFoldRangeData(t,!0);if(n=i.range||i.firstRange){t=n.start.row;var r=this.getFoldAt(t,this.getLine(t).length,1);r?this.removeFold(r):this.addFold("...",n)}}},this.updateFoldWidgets=function(e){var t=e.start.row,n=e.end.row-t;if(0===n)this.foldWidgets[t]=null;else if("remove"==e.action)this.foldWidgets.splice(t,n+1,null);else{var i=Array(n+1);i.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,i)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}var r=e("../range").Range,o=e("./fold_line").FoldLine,s=e("./fold").Fold,a=e("../token_iterator").TokenIterator;t.Folding=i}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){"use strict";function i(){this.findMatchingBracket=function(e,t){if(0==e.column)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(""==n)return null;var i=n.match(/([\(\[\{])|([\)\]\}])/);return i?i[1]?this.$findClosingBracket(i[1],e):this.$findOpeningBracket(i[2],e):null},this.getBracketRange=function(e){var t,n=this.getLine(e.row),i=!0,r=n.charAt(e.column-1),s=r&&r.match(/([\(\[\{])|([\)\]\}])/);if(s||(r=n.charAt(e.column),e={row:e.row,column:e.column+1},s=r&&r.match(/([\(\[\{])|([\)\]\}])/),i=!1),!s)return null;if(s[1]){var a=this.$findClosingBracket(s[1],e);if(!a)return null;t=o.fromPoints(e,a),i||(t.end.column++,t.start.column--),t.cursor=t.end}else{var a=this.$findOpeningBracket(s[2],e);if(!a)return null;t=o.fromPoints(a,e),i||(t.start.column++,t.end.column--),t.cursor=t.start}return t},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],o=1,s=new r(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){n||(n=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn()-2,c=a.value;;){for(;l>=0;){var u=c.charAt(l);if(u==i){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else u==e&&(o+=1);l-=1}do{a=s.stepBackward()}while(a&&!n.test(a.type));if(null==a)break;c=a.value,l=c.length-1}return null}},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],o=1,s=new r(this,t.row,t.column),a=s.getCurrentToken();if(a||(a=s.stepForward()),a){n||(n=new RegExp("(\\.?"+a.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)")+")+"));for(var l=t.column-s.getCurrentTokenColumn();;){for(var c=a.value,u=c.length;l<u;){var h=c.charAt(l);if(h==i){if(0==(o-=1))return{row:s.getCurrentTokenRow(),column:l+s.getCurrentTokenColumn()}}else h==e&&(o+=1);l+=1}do{a=s.stepForward()}while(a&&!n.test(a.type));if(null==a)break;l=0}return null}}}var r=e("../token_iterator").TokenIterator,o=e("../range").Range;t.BracketMatch=i}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/bidihandler","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/lang"),o=e("./bidihandler").BidiHandler,s=e("./config"),a=e("./lib/event_emitter").EventEmitter,l=e("./selection").Selection,c=e("./mode/text").Mode,u=e("./range").Range,h=e("./document").Document,d=e("./background_tokenizer").BackgroundTokenizer,f=e("./search_highlight").SearchHighlight,p=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.id="session"+ ++p.$uid,this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),"object"==typeof e&&e.getLine||(e=new h(e)),this.$bidiHandler=new o(this),this.setDocument(e),this.selection=new l(this),s.resetOptions(this),this.setMode(t),s._signal("session",this)};p.$uid=0,function(){function e(e){return!(e<4352)&&(e>=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510)}i.implement(this,a),this.setDocument=function(e){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e)return this.$docRowCache=[],void(this.$screenRowCache=[]);var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},this.$getRowCacheIndex=function(e,t){for(var n=0,i=e.length-1;n<=i;){var r=n+i>>1,o=e[r];if(t>o)n=r+1;else{if(!(t<o))return r;i=r-1}}return n-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){this.$modified=!0,this.$bidiHandler.onChange(e),this.$resetRowCache(e.start.row);var t=this.$updateInternalDataOnChange(e);this.$fromUndo||!this.$undoManager||e.ignore||(this.$deltasDoc.push(e),t&&0!=t.length&&this.$deltasFold.push({action:"removeFolds",folds:t}),this.$informUndoManager.schedule()),this.bgTokenizer&&this.bgTokenizer.$updateOnChange(e),this._signal("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveTo(0,0),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var n,i=this.bgTokenizer.getTokens(e),r=0;if(null==t){var o=i.length-1;r=this.getLine(e).length}else for(var o=0;o<i.length&&!((r+=i[o].value.length)>=t);o++);return(n=i[o])?(n.index=o,n.start=r-n.value.length,n):null},this.setUndoManager=function(e){if(this.$undoManager=e,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel(),e){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]),t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]),t.$deltas.length>0&&e.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas}),t.mergeUndoDeltas=!1,t.$deltas=[]},this.$informUndoManager=r.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?r.stringRepeat(" ",this.getTabSize()):"\t"},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},this.setNavigateWithinSoftTabs=function(e){this.setOption("navigateWithinSoftTabs",e)},this.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("overwrite",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t<e.length;t++)this.$breakpoints[e[t]]="ace_breakpoint";this._signal("changeBreakpoint",{})},this.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},this.setBreakpoint=function(e,t){void 0===t&&(t="ace_breakpoint"),t?this.$breakpoints[e]=t:delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.clearBreakpoint=function(e){delete this.$breakpoints[e],this._signal("changeBreakpoint",{})},this.addMarker=function(e,t,n,i){var r=this.$markerId++,o={range:e,type:n||"line",renderer:"function"==typeof n?n:null,clazz:t,inFront:!!i,id:r};return i?(this.$frontMarkers[r]=o,this._signal("changeFrontMarker")):(this.$backMarkers[r]=o,this._signal("changeBackMarker")),r},this.addDynamicMarker=function(e,t){if(e.update){var n=this.$markerId++;return e.id=n,e.inFront=!!t,t?(this.$frontMarkers[n]=e,this._signal("changeFrontMarker")):(this.$backMarkers[n]=e,this._signal("changeBackMarker")),e}},this.removeMarker=function(e){var t=this.$frontMarkers[e]||this.$backMarkers[e];if(t){var n=t.inFront?this.$frontMarkers:this.$backMarkers;t&&(delete n[e],this._signal(t.inFront?"changeFrontMarker":"changeBackMarker"))}},this.getMarkers=function(e){return e?this.$frontMarkers:this.$backMarkers},this.highlight=function(e){if(!this.$searchHighlight){var t=new f(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(e)},this.highlightLines=function(e,t,n,i){"number"!=typeof t&&(n=t,t=e),n||(n="ace_step");var r=new u(e,0,t,1/0);return r.id=this.addMarker(r,n,"fullLine",i),r},this.setAnnotations=function(e){this.$annotations=e,this._signal("changeAnnotation",{})},this.getAnnotations=function(){return this.$annotations||[]},this.clearAnnotations=function(){this.setAnnotations([])},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r?\n)/m);this.$autoNewLine=t?t[1]:"\n"},this.getWordRange=function(e,t){var n=this.getLine(e),i=!1;if(t>0&&(i=!!n.charAt(t-1).match(this.tokenRe)),i||(i=!!n.charAt(t).match(this.tokenRe)),i)var r=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var r=/\s/;else var r=this.nonTokenRe;var o=t;if(o>0){do{o--}while(o>=0&&n.charAt(o).match(r));o++}for(var s=t;s<n.length&&n.charAt(s).match(r);)s++;return new u(e,o,e,s)},this.getAWordRange=function(e,t){for(var n=this.getWordRange(e,t),i=this.getLine(n.end.row);i.charAt(n.end.column).match(/[ \t]/);)n.end.column+=1;return n},this.setNewLineMode=function(e){this.doc.setNewLineMode(e)},this.getNewLineMode=function(){return this.doc.getNewLineMode()},this.setUseWorker=function(e){this.setOption("useWorker",e)},this.getUseWorker=function(){return this.$useWorker},this.onReloadTokenizer=function(e){var t=e.data;this.bgTokenizer.start(t.first),this._signal("tokenizerUpdate",e)},this.$modes={},this.$mode=null,this.$modeId=null,this.setMode=function(e,t){if(e&&"object"===typeof e){if(e.getTokenizer)return this.$onChangeMode(e);var n=e,i=n.path}else i=e||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new c),this.$modes[i]&&!n)return this.$onChangeMode(this.$modes[i]),void(t&&t());this.$modeId=i,s.loadModule(["mode",i],function(e){if(this.$modeId!==i)return t&&t();this.$modes[i]&&!n?this.$onChangeMode(this.$modes[i]):e&&e.Mode&&(e=new e.Mode(n),n||(this.$modes[i]=e,e.$id=i),this.$onChangeMode(e)),t&&t()}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},this.$onChangeMode=function(e,t){if(t||(this.$modeId=e.$id),this.$mode!==e){this.$mode=e,this.$stopWorker(),this.$useWorker&&this.$startWorker();var n=e.getTokenizer();if(void 0!==n.addEventListener){var i=this.onReloadTokenizer.bind(this);n.addEventListener("update",i)}if(this.bgTokenizer)this.bgTokenizer.setTokenizer(n);else{this.bgTokenizer=new d(n);var r=this;this.bgTokenizer.addEventListener("update",function(e){r._signal("tokenizerUpdate",e)})}this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=e.tokenRe,this.nonTokenRe=e.nonTokenRe,t||(e.attachToSession&&e.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(e.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode"))}},this.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},this.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(e){s.warn("Could not load worker",e),this.$worker=null}},this.getMode=function(){return this.$mode},this.$scrollTop=0,this.setScrollTop=function(e){this.$scrollTop===e||isNaN(e)||(this.$scrollTop=e,this._signal("changeScrollTop",e))},this.getScrollTop=function(){return this.$scrollTop},this.$scrollLeft=0,this.setScrollLeft=function(e){this.$scrollLeft===e||isNaN(e)||(this.$scrollLeft=e,this._signal("changeScrollLeft",e))},this.getScrollLeft=function(){return this.$scrollLeft},this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},this.getLineWidgetMaxWidth=function(){if(null!=this.lineWidgetsWidth)return this.lineWidgetsWidth;var e=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>e&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var t=this.doc.getAllLines(),n=this.$rowLengthCache,i=0,r=0,o=this.$foldData[r],s=o?o.start.row:1/0,a=t.length,l=0;l<a;l++){if(l>s){if((l=o.end.row+1)>=a)break;o=this.$foldData[r++],s=o?o.start.row:1/0}null==n[l]&&(n[l]=this.$getStringScreenWidth(t[l])[0]),n[l]>i&&(i=n[l])}this.screenWidth=i}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},this.undoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var n=null,i=e.length-1;-1!=i;i--){var r=e[i];"doc"==r.group?(this.doc.revertDeltas(r.deltas),n=this.$getUndoSelection(r.deltas,!0,n)):r.deltas.forEach(function(e){this.addFolds(e.folds)},this)}return this.$fromUndo=!1,n&&this.$undoSelect&&!t&&this.selection.setSelectionRange(n),n}},this.redoChanges=function(e,t){if(e.length){this.$fromUndo=!0;for(var n=null,i=0;i<e.length;i++){var r=e[i];"doc"==r.group&&(this.doc.applyDeltas(r.deltas),n=this.$getUndoSelection(r.deltas,!1,n))}return this.$fromUndo=!1,n&&this.$undoSelect&&!t&&this.selection.setSelectionRange(n),n}},this.setUndoSelect=function(e){this.$undoSelect=e},this.$getUndoSelection=function(e,t,n){function i(e){return t?"insert"!==e.action:"insert"===e.action}var r,o,s=e[0];i(s)?r=u.fromPoints(s.start,s.end):r=u.fromPoints(s.start,s.start);for(var a=1;a<e.length;a++)s=e[a],i(s)?(o=s.start,-1==r.compare(o.row,o.column)&&r.setStart(o),o=s.end,1==r.compare(o.row,o.column)&&r.setEnd(o),!0):(o=s.start,-1==r.compare(o.row,o.column)&&(r=u.fromPoints(s.start,s.start)),!1);if(null!=n){0===u.comparePoints(n.start,r.start)&&(n.start.column+=r.end.column-r.start.column,n.end.column+=r.end.column-r.start.column);var l=n.compareRange(r);1==l?r.setStart(n.start):-1==l&&r.setEnd(n.end)}return r},this.replace=function(e,t){return this.doc.replace(e,t)},this.moveText=function(e,t,n){var i=this.getTextRange(e),r=this.getFoldsInRange(e),o=u.fromPoints(t,t);if(!n){this.remove(e);var s=e.start.row-e.end.row,a=s?-e.end.column:e.start.column-e.end.column;a&&(o.start.row==e.end.row&&o.start.column>e.end.column&&(o.start.column+=a),o.end.row==e.end.row&&o.end.column>e.end.column&&(o.end.column+=a)),s&&o.start.row>=e.end.row&&(o.start.row+=s,o.end.row+=s)}if(o.end=this.insert(o.start,i),r.length){var l=e.start,c=o.start,s=c.row-l.row,a=c.column-l.column;this.addFolds(r.map(function(e){return e=e.clone(),e.start.row==l.row&&(e.start.column+=a),e.end.row==l.row&&(e.end.column+=a),e.start.row+=s,e.end.row+=s,e}))}return o},this.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var i=e;i<=t;i++)this.doc.insertInLine({row:i,column:0},n)},this.outdentRows=function(e){for(var t=e.collapseRows(),n=new u(0,0,0,0),i=this.getTabSize(),r=t.start.row;r<=t.end.row;++r){var o=this.getLine(r);n.start.row=r,n.end.row=r;for(var s=0;s<i&&" "==o.charAt(s);++s);s<i&&"\t"==o.charAt(s)?(n.start.column=s,n.end.column=s+1):(n.start.column=0,n.end.column=s),this.remove(n)}},this.$moveLines=function(e,t,n){if(e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t),n<0){var i=this.getRowFoldStart(e+n);if(i<0)return 0;var r=i-e}else if(n>0){var i=this.getRowFoldEnd(t+n);if(i>this.doc.getLength()-1)return 0;var r=i-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var r=t-e+1}var o=new u(e,0,t,Number.MAX_VALUE),s=this.getFoldsInRange(o).map(function(e){return e=e.clone(),e.start.row+=r,e.end.row+=r,e}),a=0==n?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+r,a),s.length&&this.addFolds(s),r},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){if(t=Math.max(0,t),e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){if(this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0),e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){this.$wrapLimitRange.min===e&&this.$wrapLimitRange.max===t||(this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},this.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var i=this.$constrainWrapLimit(e,n.min,n.max);return i!=this.$wrapLimit&&i>1&&(this.$wrapLimit=i,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},this.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n=e.action,i=e.start,r=e.end,o=i.row,s=r.row,a=s-o,l=null;if(this.$updating=!0,0!=a)if("remove"===n){this[t?"$wrapData":"$rowLengthCache"].splice(o,a);var c=this.$foldData;l=this.getFoldsInRange(e),this.removeFolds(l);var u=this.getFoldLine(r.row),h=0;if(u){u.addRemoveChars(r.row,r.column,i.column-r.column),u.shiftRow(-a);var d=this.getFoldLine(o);d&&d!==u&&(d.merge(u),u=d),h=c.indexOf(u)+1}for(h;h<c.length;h++){var u=c[h];u.start.row>=r.row&&u.shiftRow(-a)}s=o}else{var f=Array(a);f.unshift(o,0);var p=t?this.$wrapData:this.$rowLengthCache;p.splice.apply(p,f);var c=this.$foldData,u=this.getFoldLine(o),h=0;if(u){var g=u.range.compareInside(i.row,i.column);0==g?(u=u.split(i.row,i.column))&&(u.shiftRow(a),u.addRemoveChars(s,0,r.column-i.column)):-1==g&&(u.addRemoveChars(o,0,r.column-i.column),u.shiftRow(a)),h=c.indexOf(u)+1}for(h;h<c.length;h++){var u=c[h];u.start.row>=o&&u.shiftRow(a)}}else{a=Math.abs(e.start.column-e.end.column),"remove"===n&&(l=this.getFoldsInRange(e),this.removeFolds(l),a=-a);var u=this.getFoldLine(o);u&&u.addRemoveChars(o,i.column,a)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(o,s):this.$updateRowLengthCache(o,s),l},this.$updateRowLengthCache=function(e,t,n){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(e,i){var r,o,s=this.doc.getAllLines(),a=this.getTabSize(),l=this.$wrapData,c=this.$wrapLimit,u=e;for(i=Math.min(i,s.length-1);u<=i;)o=this.getFoldLine(u,o),o?(r=[],o.walk(function(e,i,o,a){var l;if(null!=e){l=this.$getDisplayTokens(e,r.length),l[0]=t;for(var c=1;c<l.length;c++)l[c]=n}else l=this.$getDisplayTokens(s[i].substring(a,o),r.length);r=r.concat(l)}.bind(this),o.end.row,s[o.end.row].length+1),l[o.start.row]=this.$computeWrapSplits(r,c,a),u=o.end.row+1):(r=this.$getDisplayTokens(s[u]),l[u]=this.$computeWrapSplits(r,c,a),u++)};var t=3,n=4,o=10,l=11,h=12;this.$computeWrapSplits=function(e,i,r){function s(){var t=0;if(0===m)return t;if(g)for(var n=0;n<e.length;n++){var i=e[n];if(i==o)t+=1;else{if(i!=l){if(i==h)continue;break}t+=r}}return p&&!1!==g&&(t+=r),Math.min(t,m)}function a(t){var n=e.slice(d,t),i=n.length;n.join("").replace(/12/g,function(){i-=1}).replace(/2/g,function(){i-=1}),c.length||(v=s(),c.indent=v),f+=i,c.push(f),d=t}if(0==e.length)return[];for(var c=[],u=e.length,d=0,f=0,p=this.$wrapAsCode,g=this.$indentedSoftWrap,m=i<=Math.max(2*r,8)||!1===g?0:Math.floor(i/2),v=0;u-d>i-v;){var y=d+i-v;if(e[y-1]>=o&&e[y]>=o)a(y);else if(e[y]!=t&&e[y]!=n){for(var b=Math.max(y-(i-(i>>2)),d-1);y>b&&e[y]<t;)y--;if(p){for(;y>b&&e[y]<t;)y--;for(;y>b&&9==e[y];)y--}else for(;y>b&&e[y]<o;)y--;y>b?a(++y):(y=d+i,2==e[y]&&y--,a(y-v))}else{for(y;y!=d-1&&e[y]!=t;y--);if(y>d){a(y);continue}for(y=d+i;y<e.length&&e[y]==n;y++);if(y==e.length)break;a(y)}}return c},this.$getDisplayTokens=function(t,n){var i,r=[];n=n||0;for(var s=0;s<t.length;s++){var a=t.charCodeAt(s);if(9==a){i=this.getScreenTabSize(r.length+n),r.push(l);for(var c=1;c<i;c++)r.push(h)}else 32==a?r.push(o):a>39&&a<48||a>57&&a<64?r.push(9):a>=4352&&e(a)?r.push(1,2):r.push(1)}return r},this.$getStringScreenWidth=function(t,n,i){if(0==n)return[0,0];null==n&&(n=1/0),i=i||0;var r,o;for(o=0;o<t.length&&(r=t.charCodeAt(o),9==r?i+=this.getScreenTabSize(i):r>=4352&&e(r)?i+=2:i+=1,!(i>n));o++);return[i,o]},this.lineWidgets=null,this.getRowLength=function(e){if(this.lineWidgets)var t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0;else t=0;return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.getRowLineCount=function(e){return this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1:1},this.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),n=this.$wrapData[t.row];return n.length&&n[0]<t.column?n.indent:0}return 0},this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var n=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(n)},this.getDocumentLastRowColumnPosition=function(e,t){var n=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(n,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:void 0},this.getScreenTabSize=function(e){return this.$tabSize-e%this.$tabSize},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t,n){if(e<0)return{row:0,column:0};var i,r,o=0,s=0,a=0,l=0,c=this.$screenRowCache,u=this.$getRowCacheIndex(c,e),h=c.length;if(h&&u>=0)var a=c[u],o=this.$docRowCache[u],d=e>c[h-1];else var d=!h;for(var f=this.getLength()-1,p=this.getNextFoldLine(o),g=p?p.start.row:1/0;a<=e&&(l=this.getRowLength(o),!(a+l>e||o>=f));)a+=l,++o>g&&(o=p.end.row+1,p=this.getNextFoldLine(o,p),g=p?p.start.row:1/0),d&&(this.$docRowCache.push(o),this.$screenRowCache.push(a));if(p&&p.start.row<=o)i=this.getFoldDisplayLine(p),o=p.start.row;else{if(a+l<=e||o>f)return{row:f,column:this.getLine(f).length};i=this.getLine(o),p=null}var m=0,v=Math.floor(e-a);if(this.$useWrapMode){var y=this.$wrapData[o];y&&(r=y[v],v>0&&y.length&&(m=y.indent,s=y[v-1]||y[y.length-1],i=i.substring(s)))}return void 0!==n&&this.$bidiHandler.isBidiRow(a+v,o,v)&&(t=this.$bidiHandler.offsetToCol(n)),s+=this.$getStringScreenWidth(i,t-m)[1],this.$useWrapMode&&s>=r&&(s=r-1),p?p.idxToPosition(s):{row:o,column:s}},this.documentToScreenPosition=function(e,t){if("undefined"===typeof t)var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var i=0,r=null,o=null;(o=this.getFoldAt(e,t,1))&&(e=o.start.row,t=o.start.column);var s,a=0,l=this.$docRowCache,c=this.$getRowCacheIndex(l,e),u=l.length;if(u&&c>=0)var a=l[c],i=this.$screenRowCache[c],h=e>l[u-1];else var h=!u;for(var d=this.getNextFoldLine(a),f=d?d.start.row:1/0;a<e;){if(a>=f){if((s=d.end.row+1)>e)break;d=this.getNextFoldLine(s,d),f=d?d.start.row:1/0}else s=a+1;i+=this.getRowLength(a),a=s,h&&(this.$docRowCache.push(a),this.$screenRowCache.push(i))}var p="";d&&a>=f?(p=this.getFoldDisplayLine(d,e,t),r=d.start.row):(p=this.getLine(e).substring(0,t),r=e);var g=0;if(this.$useWrapMode){var m=this.$wrapData[r];if(m){for(var v=0;p.length>=m[v];)i++,v++;p=p.substring(m[v-1]||0,p.length),g=v>0?m.indent:0}}return{row:i,column:g+this.$getStringScreenWidth(p)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(this.$useWrapMode)for(var n=this.$wrapData.length,i=0,r=0,t=this.$foldData[r++],o=t?t.start.row:1/0;i<n;){var s=this.$wrapData[i];e+=s?s.length+1:1,i++,i>o&&(i=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:1/0)}else{e=this.getLength();for(var a=this.$foldData,r=0;r<a.length;r++)t=a[r],e-=t.end.row-t.start.row}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},this.$setFontMetrics=function(e){this.$enableVarChar&&(this.$getStringScreenWidth=function(t,n,i){if(0===n)return[0,0];n||(n=1/0),i=i||0;var r,o;for(o=0;o<t.length&&(r=t.charAt(o),!((i+="\t"===r?this.getScreenTabSize(i):e.getCharacterWidth(r))>n));o++);return[i,o]})},this.destroy=function(){this.bgTokenizer&&(this.bgTokenizer.setDocument(null),this.bgTokenizer=null),this.$stopWorker()},this.isFullWidth=e}.call(p.prototype),e("./edit_session/folding").Folding.call(p.prototype),e("./edit_session/bracket_match").BracketMatch.call(p.prototype),s.defineOptions(p.prototype,"session",{wrap:{set:function(e){if(e&&"off"!=e?"free"==e?e=!0:"printMargin"==e?e=-1:"string"==typeof e&&(e=parseInt(e,10)||!1):e=!1,this.$wrap!=e)if(this.$wrap=e,e){var t="number"==typeof e?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){(e="auto"==e?"text"!=this.$mode.type:"text"!=e)!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$modified=!0,this.$resetRowCache(0),this.$updateWrapData(0,this.getLength()-1)))},initialValue:"auto"},indentedSoftWrap:{initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){isNaN(e)||this.$tabSize===e||(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId}}}),t.EditSession=p}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";function i(e,t){function n(e){return/\w/.test(e)||t.regExp?"\\b":""}return n(e[0])+e+n(e[e.length-1])}var r=e("./lib/lang"),o=e("./lib/oop"),s=e("./range").Range,a=function(){this.$options={}};(function(){this.set=function(e){return o.mixin(this.$options,e),this},this.getOptions=function(){return r.copyObject(this.$options)},this.setOptions=function(e){this.$options=e},this.find=function(e){var t=this.$options,n=this.$matchIterator(e,t);if(!n)return!1;var i=null;return n.forEach(function(e,n,r,o){return i=new s(e,n,r,o),!(n==o&&t.start&&t.start.start&&0!=t.skipCurrent&&i.isEqual(t.start))||(i=null,!1)}),i},this.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],a=t.re;if(t.$isMultiLine){var l,c=a.length,u=i.length-c;e:for(var h=a.offset||0;h<=u;h++){for(var d=0;d<c;d++)if(-1==i[h+d].search(a[d]))continue e;var f=i[h],p=i[h+c-1],g=f.length-f.match(a[0])[0].length,m=p.match(a[c-1])[0].length;l&&l.end.row===h&&l.end.column>g||(o.push(l=new s(h,g,h+c-1,m)),c>2&&(h=h+c-2))}}else for(var v=0;v<i.length;v++)for(var y=r.getMatchOffsets(i[v],a),d=0;d<y.length;d++){var b=y[d];o.push(new s(v,b.offset,v,b.offset+b.length))}if(n){for(var w=n.start.column,C=n.start.column,v=0,d=o.length-1;v<d&&o[v].start.column<w&&o[v].start.row==n.start.row;)v++;for(;v<d&&o[d].end.column>C&&o[d].end.row==n.end.row;)d--;for(o=o.slice(v,d+1),v=0,d=o.length;v<d;v++)o[v].start.row+=n.start.row,o[v].end.row+=n.start.row}return o},this.replace=function(e,t){var n=this.$options,i=this.$assembleRegExp(n);if(n.$isMultiLine)return t;if(i){var r=i.exec(e);if(!r||r[0].length!=e.length)return null;if(t=e.replace(i,t),n.preserveCase){t=t.split("");for(var o=Math.min(e.length,e.length);o--;){var s=e[o];s&&s.toLowerCase()!=s?t[o]=t[o].toUpperCase():t[o]=t[o].toLowerCase()}t=t.join("")}return t}},this.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var n=e.needle;if(!e.needle)return e.re=!1;e.regExp||(n=r.escapeRegExp(n)),e.wholeWord&&(n=i(n,e));var o=e.caseSensitive?"gm":"gmi";if(e.$isMultiLine=!t&&/[\n\r]/.test(n),e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(n,o);try{var s=new RegExp(n,o)}catch(e){s=!1}return e.re=s},this.$assembleMultilineRegExp=function(e,t){for(var n=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),i=[],r=0;r<n.length;r++)try{i.push(new RegExp(n[r],t))}catch(e){return!1}return i},this.$matchIterator=function(e,t){var n=this.$assembleRegExp(t);if(!n)return!1;var i=1==t.backwards,r=0!=t.skipCurrent,o=t.range,s=t.start;s||(s=o?o[i?"end":"start"]:e.selection.getRange()),s.start&&(s=s[r!=i?"end":"start"]);var a=o?o.start.row:0,l=o?o.end.row:e.getLength()-1;if(i)var c=function(e){var n=s.row;if(!h(n,s.column,e)){for(n--;n>=a;n--)if(h(n,Number.MAX_VALUE,e))return;if(0!=t.wrap)for(n=l,a=s.row;n>=a;n--)if(h(n,Number.MAX_VALUE,e))return}};else var c=function(e){var n=s.row;if(!h(n,s.column,e)){for(n+=1;n<=l;n++)if(h(n,0,e))return;if(0!=t.wrap)for(n=a,l=s.row;n<=l;n++)if(h(n,0,e))return}};if(t.$isMultiLine)var u=n.length,h=function(t,r,o){var s=i?t-u+1:t;if(!(s<0)){var a=e.getLine(s),l=a.search(n[0]);if(!(!i&&l<r||-1===l)){for(var c=1;c<u;c++)if(a=e.getLine(s+c),-1==a.search(n[c]))return;var h=a.match(n[u-1])[0].length;if(!(i&&h>r))return!!o(s,l,s+u-1,h)||void 0}}};else if(i)var h=function(t,i,r){var o,s=e.getLine(t),a=[],l=0;for(n.lastIndex=0;o=n.exec(s);){var c=o[0].length;if(l=o.index,!c){if(l>=s.length)break;n.lastIndex=l+=1}if(o.index+c>i)break;a.push(o.index,c)}for(var u=a.length-1;u>=0;u-=2){var h=a[u-1],c=a[u];if(r(t,h,t,h+c))return!0}};else var h=function(t,i,r){var o,s=e.getLine(t),a=i;for(n.lastIndex=i;o=n.exec(s);){var l=o[0].length;if(a=o.index,r(t,a,t,a+l))return!0;if(!l&&(n.lastIndex=a+=1,a>=s.length))return!1}};return{forEach:c}}}).call(a.prototype),t.Search=a}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function i(e,t){this.platform=t||(s.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=!0}function r(e,t){i.call(this,e,t),this.$singleCommand=!1}var o=e("../lib/keys"),s=e("../lib/useragent"),a=o.KEY_MODS;r.prototype=i.prototype,function(){function e(e){return"object"==typeof e&&e.bindKey&&e.bindKey.position||(e.isDefault?-100:0)}this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e,t){var n=e&&("string"===typeof e?e:e.name);e=this.commands[n],t||delete this.commands[n];var i=this.commandKeyBinding;for(var r in i){var o=i[r];if(o==e)delete i[r];else if(Array.isArray(o)){var s=o.indexOf(e);-1!=s&&(o.splice(s,1),1==o.length&&(i[r]=o[0]))}}},this.bindKey=function(e,t,n){if("object"==typeof e&&e&&(void 0==n&&(n=e.position),e=e[this.platform]),e)return"function"==typeof t?this.addCommand({exec:t,bindKey:e,name:t.name||e}):void e.split("|").forEach(function(e){var i="";if(-1!=e.indexOf(" ")){var r=e.split(/\s+/);e=r.pop(),r.forEach(function(e){var t=this.parseKeys(e),n=a[t.hashId]+t.key;i+=(i?" ":"")+n,this._addCommandToBinding(i,"chainKeys")},this),i+=" "}var o=this.parseKeys(e),s=a[o.hashId]+o.key;this._addCommandToBinding(i+s,t,n)},this)},this._addCommandToBinding=function(t,n,i){var r,o=this.commandKeyBinding;if(n)if(!o[t]||this.$singleCommand)o[t]=n;else{Array.isArray(o[t])?-1!=(r=o[t].indexOf(n))&&o[t].splice(r,1):o[t]=[o[t]],"number"!=typeof i&&(i=e(n));var s=o[t];for(r=0;r<s.length;r++){var a=s[r],l=e(a);if(l>i)break}s.splice(r,0,n)}else delete o[t]},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(n){if("string"===typeof n)return this.bindKey(n,t);"function"===typeof n&&(n={exec:n}),"object"===typeof n&&(n.name||(n.name=t),this.addCommand(n))}},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},this.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),i=o[n];if(o.FUNCTION_KEYS[i])n=o.FUNCTION_KEYS[i].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(1==t.length&&"shift"==t[0])return{key:n.toUpperCase(),hashId:-1}}for(var r=0,s=t.length;s--;){var a=o.KEY_MODS[t[s]];if(null==a)return"undefined"!=typeof console&&console.error("invalid modifier "+t[s]+" in "+e),!1;r|=a}return{key:n,hashId:r}},this.findKeyCommand=function(e,t){var n=a[e]+t;return this.commandKeyBinding[n]},this.handleKeyboard=function(e,t,n,i){if(!(i<0)){var r=a[t]+n,o=this.commandKeyBinding[r];return e.$keyChain&&(e.$keyChain+=" "+r,o=this.commandKeyBinding[e.$keyChain]||o),!o||"chainKeys"!=o&&"chainKeys"!=o[o.length-1]?(e.$keyChain&&(t&&4!=t||1!=n.length?(-1==t||i>0)&&(e.$keyChain=""):e.$keyChain=e.$keyChain.slice(0,-r.length-1)),{command:o}):(e.$keyChain=e.$keyChain||r,{command:"null"})}},this.getStatusText=function(e,t){return t.$keyChain||""}}.call(i.prototype),t.HashHandler=i,t.MultiHashHandler=r}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("../lib/oop"),r=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,s=function(e,t){r.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};i.inherits(s,r),function(){i.implement(this,o),this.exec=function(e,t,n){if(Array.isArray(e)){for(var i=e.length;i--;)if(this.exec(e[i],t,n))return!0;return!1}if("string"===typeof e&&(e=this.commands[e]),!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;if(e.isAvailable&&!e.isAvailable(t))return!1;var r={editor:t,command:e,args:n};return r.returnValue=this._emit("exec",r),this._signal("afterExec",r),!1!==r.returnValue},this.toggleRecording=function(e){if(!this.$inReplay)return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(e){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){"string"==typeof t?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}}},this.trimMacro=function(e){return e.map(function(e){return"string"!=typeof e[0]&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(s.prototype),t.CommandManager=s}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,n){"use strict";function i(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),o=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",bindKey:i("Ctrl-,","Command-,"),exec:function(e){o.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:i("Alt-E","F4"),exec:function(e){o.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",bindKey:i("Alt-Shift-E","Shift-F4"),exec:function(e){o.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",bindKey:i("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",bindKey:i(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:i("Ctrl-L","Command-L"),exec:function(e){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||e.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:i("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:i("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:i("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:i("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:i(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:i("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:i("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:i("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",bindKey:i("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",bindKey:i("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:i("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",bindKey:i("Ctrl-F","Command-F"),exec:function(e){o.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:i("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:i("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:i("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",bindKey:i("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",bindKey:i("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:i("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:i("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:i("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:i("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:i("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:i("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:i("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:i("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:i("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:i("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:i("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:i("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:i("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:i("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:i("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:i(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:i("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:i(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:i("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:i("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",bindKey:i("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",bindKey:i("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",bindKey:i("Ctrl-P","Ctrl-P"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",bindKey:i("Ctrl-Shift-P","Ctrl-Shift-P"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",bindKey:i("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",bindKey:i(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",exec:function(e){},readOnly:!0},{name:"cut",exec:function(e){var t=e.getSelectionRange();e._emit("cut",t),e.selection.isEmpty()||(e.session.remove(t),e.clearSelection())},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",bindKey:i("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:i("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",bindKey:i("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:i("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:i("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",bindKey:i("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:i("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",bindKey:i("Ctrl-H","Command-Option-F"),exec:function(e){o.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",bindKey:i("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",bindKey:i("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",bindKey:i("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",bindKey:i("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",bindKey:i("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",bindKey:i("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",bindKey:i("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",bindKey:i("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",bindKey:i("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",bindKey:i("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",bindKey:i("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",bindKey:i("Ctrl-Shift-Backspace",null),exec:function(e){var t=e.selection.getRange();t.start.column=0,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",bindKey:i("Ctrl-Shift-Delete",null),exec:function(e){var t=e.selection.getRange();t.end.column=Number.MAX_VALUE,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",bindKey:i("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",bindKey:i("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",bindKey:i("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:i("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:i("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:i("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",bindKey:i(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",bindKey:i("Alt-Shift-X","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",bindKey:i("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",bindKey:i("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"expandtoline",bindKey:i("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"joinlines",bindKey:i(null,null),exec:function(e){for(var t=e.selection.isBackwards(),n=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),i=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),o=e.session.doc.getLine(n.row).length,a=e.session.doc.getTextRange(e.selection.getRange()),l=a.replace(/\n\s*/," ").length,c=e.session.doc.getLine(n.row),u=n.row+1;u<=i.row+1;u++){var h=r.stringTrimLeft(r.stringTrimRight(e.session.doc.getLine(u)));0!==h.length&&(h=" "+h),c+=h}i.row+1<e.session.doc.getLength()-1&&(c+=e.session.doc.getNewLineCharacter()),e.clearSelection(),e.session.doc.replace(new s(n.row,0,i.row+2,0),c),l>0?(e.selection.moveCursorTo(n.row,n.column),e.selection.selectTo(n.row,n.column+l)):(o=e.session.doc.getLine(n.row).length>o?o+1:o,e.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",bindKey:i(null,null),exec:function(e){var t=e.session.doc.getLength()-1,n=e.session.doc.getLine(t).length,i=e.selection.rangeList.ranges,r=[];i.length<1&&(i=[e.selection.getRange()]);for(var o=0;o<i.length;o++)o==i.length-1&&(i[o].end.row===t&&i[o].end.column===n||r.push(new s(i[o].end.row,i[o].end.column,t,n))),0===o?0===i[o].start.row&&0===i[o].start.column||r.push(new s(0,0,i[o].start.row,i[o].start.column)):r.push(new s(i[o-1].end.row,i[o-1].end.column,i[o].start.row,i[o].start.column));e.exitMultiSelectMode(),e.clearSelection();for(var o=0;o<r.length;o++)e.selection.addRange(r[o],!1)},readOnly:!0,scrollIntoView:"none"}]}),ace.define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator"],function(e,t,n){"use strict";e("./lib/fixoldbrowsers");var i=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/lang"),s=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,l=e("./mouse/mouse_handler").MouseHandler,c=e("./mouse/fold_handler").FoldHandler,u=e("./keyboard/keybinding").KeyBinding,h=e("./edit_session").EditSession,d=e("./search").Search,f=e("./range").Range,p=e("./lib/event_emitter").EventEmitter,g=e("./commands/command_manager").CommandManager,m=e("./commands/default_commands").commands,v=e("./config"),y=e("./token_iterator").TokenIterator,b=function(e,t){var n=e.getContainerElement();this.container=n,this.renderer=e,this.id="editor"+ ++b.$uid,this.commands=new g(s.isMac?"mac":"win",m),"object"==typeof document&&(this.textInput=new a(e.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new l(this),new c(this)),this.keyBinding=new u(this),this.$blockScrolling=0,this.$search=(new d).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(t||new h("")),v.resetOptions(this),v._signal("editor",this)};b.$uid=0,function(){i.implement(this,p),this.$initOperationListeners=function(){this.selections=[],this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=o.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop},this.curOp.command.name&&void 0!==this.curOp.command.scrollIntoView&&this.$blockScrolling++},this.endOperation=function(e){if(this.curOp){if(e&&!1===e.returnValue)return this.curOp=null;this._signal("beforeEndOperation");var t=this.curOp.command;t.name&&this.$blockScrolling>0&&this.$blockScrolling--;var n=t&&t.scrollIntoView;if(n){switch(n){case"center-animate":n="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var i=this.selection.getRange(),r=this.renderer.layerConfig;(i.start.row>=r.lastRow||i.end.row<=r.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==n&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$mergeableCommands=["backspace","del","insertstring"],this.$historyTracker=function(e){if(this.$mergeUndoDeltas){var t=this.prevOp,n=this.$mergeableCommands,i=t.command&&e.command.name==t.command.name;if("insertstring"==e.command.name){var r=e.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),i=i&&this.mergeNextCommand&&(!/\s/.test(r)||/\s/.test(t.args)),this.mergeNextCommand=!0}else i=i&&-1!==n.indexOf(e.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(i=!1),i?this.session.mergeUndoDeltas=!0:-1!==n.indexOf(e.command.name)&&(this.sequenceStartTime=Date.now())}},this.setKeyboardHandler=function(e,t){if(e&&"string"===typeof e){this.$keybindingId=e;var n=this;v.loadModule(["keybinding",e],function(i){n.$keybindingId==e&&n.keyBinding.setKeyboardHandler(i&&i.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session!=e){this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var n=this.session.getSelection();n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this}),e&&e.bgTokenizer&&e.bgTokenizer.scheduleStart()}},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?1==t?this.navigateFileEnd():-1==t&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e,t){this.renderer.setTheme(e,t)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||r.computedStyle(this.container,"fontSize")},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){if(this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null),!this.$highlightPending){var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(t&&t.bgTokenizer){var n=t.findMatchingBracket(e.getCursorPosition());if(n)var i=new f(n.row,n.column,n.row,n.column+1);else if(t.$mode.getMatching)var i=t.$mode.getMatching(e.session);i&&(t.$bracketHighlight=t.addMarker(i,"ace_bracket","text"))}},50)}},this.$highlightTags=function(){if(!this.$highlightTagPending){var e=this;this.$highlightTagPending=!0,setTimeout(function(){e.$highlightTagPending=!1;var t=e.session;if(t&&t.bgTokenizer){var n=e.getCursorPosition(),i=new y(e.session,n.row,n.column),r=i.getCurrentToken();if(!r||!/\b(?:tag-open|tag-name)/.test(r.type))return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);if(-1==r.type.indexOf("tag-open")||(r=i.stepForward())){var o=r.value,s=0,a=i.stepBackward();if("<"==a.value)do{a=r,(r=i.stepForward())&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(r&&s>=0);else{do{r=a,a=i.stepBackward(),r&&r.value===o&&-1!==r.type.indexOf("tag-name")&&("<"===a.value?s++:"</"===a.value&&s--)}while(a&&s<=0);i.stepForward()}if(!r)return t.removeMarker(t.$tagHighlight),void(t.$tagHighlight=null);var l=i.getCurrentTokenRow(),c=i.getCurrentTokenColumn(),u=new f(l,c,l,c+r.value.length),h=t.$backMarkers[t.$tagHighlight];t.$tagHighlight&&void 0!=h&&0!==u.compareRange(h.range)&&(t.removeMarker(t.$tagHighlight),t.$tagHighlight=null),u&&!t.$tagHighlight&&(t.$tagHighlight=t.addMarker(u,"ace_bracket","text"))}}},50)}},this.focus=function(){var e=this;setTimeout(function(){e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(e){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e))},this.onBlur=function(e){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e))},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(e){var t=this.session.$useWrapMode,n=e.start.row==e.end.row?e.end.row:1/0;this.renderer.updateLines(e.start.row,n,t),this._signal("change",e),this.$cursorChange(),this.$updateHighlightActiveLine()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||(v.warn("Automatically scrolling cursor into view after selection change","this will be disabled in the next version","set editor.$blockScrolling = Infinity to disable this message"),this.renderer.scrollCursorIntoView()),this.$highlightBrackets(),this.$highlightTags(),this.$updateHighlightActiveLine(),this._signal("changeSelection")},this.$updateHighlightActiveLine=function(){var e,t=this.getSession();if(this.$highlightActiveLine&&("line"==this.$selectionStyle&&this.selection.isMultiLine()||(e=this.getCursorPosition()),!this.renderer.$maxLines||1!==this.session.getLength()||this.renderer.$minLines>1||(e=!1)),t.$highlightLineMarker&&!e)t.removeMarker(t.$highlightLineMarker.id),t.$highlightLineMarker=null;else if(!t.$highlightLineMarker&&e){var n=new f(e.row,e.column,e.row,1/0);n.id=t.addMarker(n,"ace_active-line","screenLine"),t.$highlightLineMarker=n}else e&&(t.$highlightLineMarker.start.row=e.row,t.$highlightLineMarker.end.row=e.row,t.$highlightLineMarker.start.column=e.column,t._signal("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;if(t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var n=this.selection.getRange(),i=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",i)}var r=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(r),this._signal("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(!t.isEmpty()&&!t.isMultiLine()){var n=t.start.column-1,i=t.end.column+1,r=e.getLine(t.start.row),o=r.length,s=r.substring(Math.max(n,0),Math.min(i,o));if(!(n>=0&&/^[\w\d]/.test(s)||i<=o&&/[\w\d]$/.test(s))&&(s=r.substring(t.start.column,t.end.column),/^[\w\d]+$/.test(s))){return this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s})}}},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText();return this._signal("copy",e),e},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e,t){var n={text:e,event:t};this.commands.exec("paste",this,n)},this.$handlePaste=function(e){"string"==typeof e&&(e={text:e}),this._signal("paste",e);var t=e.text;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)this.insert(t);else{var n=t.split(/\r\n|\r|\n/),i=this.selection.rangeList.ranges;if(n.length>i.length||n.length<2||!n[1])return this.commands.exec("insertstring",this,t);for(var r=i.length;r--;){var o=i[r];o.isEmpty()||this.session.remove(o),this.session.insert(o.start,n[r])}}},this.execCommand=function(e,t){return this.commands.exec(e,this,t)},this.insert=function(e,t){var n=this.session,i=n.getMode(),r=this.getCursorPosition();if(this.getBehavioursEnabled()&&!t){var o=i.transformAction(n.getState(r.row),"insertion",this,n,e);o&&(e!==o.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),e=o.text)}if("\t"==e&&(e=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()&&-1==e.indexOf("\n")){var s=new f.fromPoints(r,r);s.end.column+=e.length,this.session.remove(s)}}else{var s=this.getSelectionRange();r=this.session.remove(s),this.clearSelection()}if("\n"==e||"\r\n"==e){var a=n.getLine(r.row);if(r.column>a.search(/\S|$/)){var l=a.substr(r.column).search(/\S|$/);n.doc.removeInLine(r.row,r.column,r.column+l)}}this.clearSelection();var c=r.column,u=n.getState(r.row),a=n.getLine(r.row),h=i.checkOutdent(u,a,e);n.insert(r,e);if(o&&o.selection&&(2==o.selection.length?this.selection.setSelectionRange(new f(r.row,c+o.selection[0],r.row,c+o.selection[1])):this.selection.setSelectionRange(new f(r.row+o.selection[0],o.selection[1],r.row+o.selection[2],o.selection[3]))),n.getDocument().isNewLine(e)){var d=i.getNextLineIndent(u,a.slice(0,r.column),n.getTabString());n.insert({row:r.row+1,column:0},d)}h&&i.autoOutdent(u,n,r.row)},this.onTextInput=function(e){this.keyBinding.onTextInput(e)},this.onCommandKey=function(e,t,n){this.keyBinding.onCommandKey(e,t,n)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&("left"==e?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,i=n.getState(t.start.row),r=n.getMode().transformAction(i,"deletion",this,n,t);if(0===t.end.column){var o=n.getTextRange(t);if("\n"==o[o.length-1]){var s=n.getLine(t.end.row);/^\s+$/.test(s)&&(t.end.column=s.length)}}r&&(t=r)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(this.selection.isEmpty()){var e=this.getCursorPosition(),t=e.column;if(0!==t){var n,i,r=this.session.getLine(e.row);t<r.length?(n=r.charAt(t)+r.charAt(t-1),i=new f(e.row,t-1,e.row,t+1)):(n=r.charAt(t-1)+r.charAt(t-2),i=new f(e.row,t-2,e.row,t)),this.session.replace(i,n),this.session.selection.moveToPosition(i.end)}}},this.toLowerCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toLowerCase()),this.selection.setSelectionRange(e)},this.toUpperCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toUpperCase()),this.selection.setSelectionRange(e)},this.indent=function(){var e=this.session,t=this.getSelectionRange();if(t.start.row<t.end.row){var n=this.$getSelectedRows();return void e.indentRows(n.first,n.last,"\t")}if(t.start.column<t.end.column){if(!/^\s+$/.test(e.getTextRange(t))){var n=this.$getSelectedRows();return void e.indentRows(n.first,n.last,"\t")}}var i=e.getLine(t.start.row),r=t.start,s=e.getTabSize(),a=e.documentToScreenColumn(r.row,r.column);if(this.session.getUseSoftTabs())var l=s-a%s,c=o.stringRepeat(" ",l);else{for(var l=a%s;" "==i[t.start.column-1]&&l;)t.start.column--,l--;this.selection.setSelectionRange(t),c="\t"}return this.insert(c)},this.blockIndent=function(){var e=this.$getSelectedRows();this.session.indentRows(e.first,e.last,"\t")},this.blockOutdent=function(){var e=this.session.getSelection();this.session.outdentRows(e.getRange())},this.sortLines=function(){for(var e=this.$getSelectedRows(),t=this.session,n=[],i=e.first;i<=e.last;i++)n.push(t.getLine(i));n.sort(function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0});for(var r=new f(0,0,0,0),i=e.first;i<=e.last;i++){var o=t.getLine(i);r.start.row=i,r.end.row=i,r.end.column=o.length,t.replace(r,n[i-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},this.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;for(var i=this.session.getLine(e);n.lastIndex<t;){var r=n.exec(i);if(r.index<=t&&r.index+r[0].length>=t){return{value:r[0],start:r.index,end:r.index+r[0].length}}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,i=new f(t,n-1,t,n),r=this.session.getTextRange(i);if(!isNaN(parseFloat(r))&&isFinite(r)){var o=this.getNumberAt(t,n);if(o){var s=o.value.indexOf(".")>=0?o.start+o.value.indexOf(".")+1:o.end,a=o.start+o.value.length-s,l=parseFloat(o.value);l*=Math.pow(10,a),s!==o.end&&n<s?e*=Math.pow(10,o.end-n-1):e*=Math.pow(10,o.end-n),l+=e,l/=Math.pow(10,a);var c=l.toFixed(a),u=new f(t,o.start,t,o.end);this.session.replace(u,c),this.moveCursorTo(t,Math.max(o.start+1,n+c.length-o.value.length))}}},this.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},this.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),i=e.isBackwards();if(n.isEmpty()){var r=n.start.row;t.duplicateLines(r,r)}else{var o=i?n.start:n.end,s=t.insert(o,t.getTextRange(n),!1);n.start=o,n.end=s,e.setSelectionRange(n,i)}},this.moveLinesDown=function(){this.$moveLines(1,!1)},this.moveLinesUp=function(){this.$moveLines(-1,!1)},this.moveText=function(e,t,n){return this.session.moveText(e,t,n)},this.copyLinesUp=function(){this.$moveLines(-1,!0)},this.copyLinesDown=function(){this.$moveLines(1,!0)},this.$moveLines=function(e,t){var n,i,r=this.selection;if(!r.inMultiSelectMode||this.inVirtualSelectionMode){var o=r.toOrientedRange();n=this.$getSelectedRows(o),i=this.session.$moveLines(n.first,n.last,t?0:e),t&&-1==e&&(i=0),o.moveBy(i,0),r.fromOrientedRange(o)}else{var s=r.rangeList.ranges;r.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var a=0,l=0,c=s.length,u=0;u<c;u++){var h=u;s[u].moveBy(a,0),n=this.$getSelectedRows(s[u]);for(var d=n.first,f=n.last;++u<c;){l&&s[u].moveBy(l,0);var p=this.$getSelectedRows(s[u]);if(t&&p.first!=f)break;if(!t&&p.first>f+1)break;f=p.last}for(u--,a=this.session.$moveLines(d,f,t?0:e),t&&-1==e&&(h=u+1);h<=u;)s[h].moveBy(a,0),h++;t||(a=0),l+=a}r.fromOrientedRange(r.ranges[0]),r.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},this.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var n=this.renderer,i=this.renderer.layerConfig,r=e*Math.floor(i.height/i.lineHeight);this.$blockScrolling++,!0===t?this.selection.$moveSelection(function(){this.moveCursorBy(r,0)}):!1===t&&(this.selection.moveCursorBy(r,0),this.selection.clearSelection()),this.$blockScrolling--;var o=n.scrollTop;n.scrollBy(0,r*i.lineHeight),null!=t&&n.scrollCursorIntoView(null,.5),n.animateScrolling(o)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,n,i){this.renderer.scrollToLine(e,t,n,i)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e,t){var n=this.getCursorPosition(),i=new y(this.session,n.row,n.column),r=i.getCurrentToken(),o=r||i.stepForward();if(o){var s,a,l=!1,c={},u=n.column-o.start,h={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g)){for(;u<o.value.length&&!l;u++)if(h[o.value[u]])switch(a=h[o.value[u]]+"."+o.type.replace("rparen","lparen"),isNaN(c[a])&&(c[a]=0),o.value[u]){case"(":case"[":case"{":c[a]++;break;case")":case"]":case"}":c[a]--,-1===c[a]&&(s="bracket",l=!0)}}else o&&-1!==o.type.indexOf("tag-name")&&(isNaN(c[o.value])&&(c[o.value]=0),"<"===r.value?c[o.value]++:"</"===r.value&&c[o.value]--,-1===c[o.value]&&(s="tag",l=!0));l||(r=o,o=i.stepForward(),u=0)}while(o&&!l);if(s){var d,p;if("bracket"===s)(d=this.session.getBracketRange(n))||(d=new f(i.getCurrentTokenRow(),i.getCurrentTokenColumn()+u-1,i.getCurrentTokenRow(),i.getCurrentTokenColumn()+u-1),p=d.start,(t||p.row===n.row&&Math.abs(p.column-n.column)<2)&&(d=this.session.getBracketRange(p)));else if("tag"===s){if(!o||-1===o.type.indexOf("tag-name"))return;var g=o.value;if(d=new f(i.getCurrentTokenRow(),i.getCurrentTokenColumn()-2,i.getCurrentTokenRow(),i.getCurrentTokenColumn()-2),0===d.compare(n.row,n.column)){l=!1;do{o=r,(r=i.stepBackward())&&(-1!==r.type.indexOf("tag-close")&&d.setEnd(i.getCurrentTokenRow(),i.getCurrentTokenColumn()+1),o.value===g&&-1!==o.type.indexOf("tag-name")&&("<"===r.value?c[g]++:"</"===r.value&&c[g]--,0===c[g]&&(l=!0)))}while(r&&!l)}o&&o.type.indexOf("tag-name")&&(p=d.start,p.row==n.row&&Math.abs(p.column-n.column)<2&&(p=d.end))}p=d&&d.cursor||p,p&&(e?d&&t?this.selection.setRange(d):d&&d.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(p.row,p.column):this.selection.moveTo(p.row,p.column))}}},this.gotoLine=function(e,t,n){this.selection.clearSelection(),this.session.unfold({row:e-1,column:t||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(e-1,t||0),this.$blockScrolling-=1,this.isRowFullyVisible(e-1)||this.scrollToLine(e-1,!0,n)},this.navigateTo=function(e,t){this.selection.moveTo(e,t)},this.navigateUp=function(e){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(-e||-1,0)},this.navigateDown=function(e){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),this.selection.moveCursorBy(e||1,0)},this.navigateLeft=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorLeft();else{var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateRight=function(e){if(this.selection.isEmpty())for(e=e||1;e--;)this.selection.moveCursorRight();else{var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(e,t){t&&this.$search.set(t);var n=this.$search.find(this.session),i=0;return n?(this.$tryReplace(n,e)&&(i=1),null!==n&&(this.selection.setSelectionRange(n),this.renderer.scrollSelectionIntoView(n.start,n.end)),i):i},this.replaceAll=function(e,t){t&&this.$search.set(t);var n=this.$search.findAll(this.session),i=0;if(!n.length)return i;this.$blockScrolling+=1;var r=this.getSelectionRange();this.selection.moveTo(0,0);for(var o=n.length-1;o>=0;--o)this.$tryReplace(n[o],e)&&i++;return this.selection.setSelectionRange(r),this.$blockScrolling-=1,i},this.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),null!==t?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,n){t||(t={}),"string"==typeof e||e instanceof RegExp?t.needle=e:"object"==typeof e&&i.mixin(t,e);var r=this.selection.getRange();null==t.needle&&(e=this.session.getTextRange(r)||this.$search.$options.needle,e||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var o=this.$search.find(this.session);return t.preventScroll?o:o?(this.revealRange(o,n),o):(t.backwards?r.start=r.end:r.end=r.start,void this.selection.setRange(r))},this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.$blockScrolling+=1,this.session.unfold(e),this.selection.setSelectionRange(e),this.$blockScrolling-=1;var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),!1!==t&&this.renderer.animateScrolling(n)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy()},this.setAutoScrollEditorIntoView=function(e){if(e){var t,n=this,i=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var r=this.$scrollAnchor;r.style.cssText="position:absolute",this.container.insertBefore(r,this.container.firstChild);var o=this.on("changeSelection",function(){i=!0}),s=this.renderer.on("beforeRender",function(){i&&(t=n.renderer.container.getBoundingClientRect())}),a=this.renderer.on("afterRender",function(){if(i&&t&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var e=n.renderer,o=e.$cursorLayer.$pixelPos,s=e.layerConfig,a=o.top-s.offset;i=o.top>=0&&a+t.top<0||!(o.top<s.height&&o.top+t.top+s.lineHeight>window.innerHeight)&&null,null!=i&&(r.style.top=a+"px",r.style.left=o.left+"px",r.style.height=s.lineHeight+"px",r.scrollIntoView(i)),i=t=null}});this.setAutoScrollEditorIntoView=function(e){e||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",o),this.renderer.off("afterRender",a),this.renderer.off("beforeRender",s))}}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;t&&(t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&"wide"!=e,r.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e)))}}.call(b.prototype),v.defineOptions(b.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.keybindingId},handlesSet:!0},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showLineNumbers:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"}),t.Editor=b}),ace.define("ace/undomanager",["require","exports","module"],function(e,t,n){"use strict";var i=function(){this.reset()};(function(){function e(e){return{action:e.action,start:e.start,end:e.end,lines:1==e.lines.length?null:e.lines,text:1==e.lines.length?e.lines[0]:null}}function t(e){return{action:e.action,start:e.start,end:e.end,lines:e.lines||[e.text]}}function n(e,t){for(var n=new Array(e.length),i=0;i<e.length;i++){for(var r=e[i],o={group:r.group,deltas:new Array(r.length)},s=0;s<r.deltas.length;s++){var a=r.deltas[s];o.deltas[s]=t(a)}n[i]=o}return n}this.execute=function(e){var t=e.args[0];this.$doc=e.args[1],e.merge&&this.hasUndo()&&(this.dirtyCounter--,t=this.$undoStack.pop().concat(t)),this.$undoStack.push(t),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(e){var t=this.$undoStack.pop(),n=null;return t&&(n=this.$doc.undoChanges(t,e),this.$redoStack.push(t),this.dirtyCounter--),n},this.redo=function(e){var t=this.$redoStack.pop(),n=null;return t&&(n=this.$doc.redoChanges(this.$deserializeDeltas(t),e),this.$undoStack.push(t),this.dirtyCounter++),n},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return 0===this.dirtyCounter},this.$serializeDeltas=function(t){return n(t,e)},this.$deserializeDeltas=function(e){return n(e,t)}}).call(i.prototype),t.UndoManager=i}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("../lib/dom"),r=e("../lib/oop"),o=e("../lib/lang"),s=e("../lib/event_emitter").EventEmitter,a=function(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){r.implement(this,s),this.setSession=function(e){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;t<e.length;t++){var n=e[t],i=n.row,r=this.$annotations[i];r||(r=this.$annotations[i]={text:[]});var s=n.text;s=s?o.escapeHTML(s):n.html||"",-1===r.text.indexOf(s)&&r.text.push(s);var a=n.type;"error"==a?r.className=" ace_error":"warning"==a&&" ace_error"!=r.className?r.className=" ace_warning":"info"!=a||r.className||(r.className=" ace_info")}},this.$updateAnnotations=function(e){if(this.$annotations.length){var t=e.start.row,n=e.end.row-t;if(0===n);else if("remove"==e.action)this.$annotations.splice(t,n+1,null);else{var i=new Array(n+1);i.unshift(t,1),this.$annotations.splice.apply(this.$annotations,i)}}},this.update=function(e){for(var t=this.session,n=e.firstRow,r=Math.min(e.lastRow+e.gutterOffset,t.getLength()-1),o=t.getNextFoldLine(n),s=o?o.start.row:1/0,a=this.$showFoldWidgets&&t.foldWidgets,l=t.$breakpoints,c=t.$decorations,u=t.$firstLineNumber,h=0,d=t.gutterRenderer||this.$renderer,f=null,p=-1,g=n;;){if(g>s&&(g=o.end.row+1,o=t.getNextFoldLine(g,o),s=o?o.start.row:1/0),g>r){for(;this.$cells.length>p+1;)f=this.$cells.pop(),this.element.removeChild(f.element);break}f=this.$cells[++p],f||(f={element:null,textNode:null,foldWidget:null},f.element=i.createElement("div"),f.textNode=document.createTextNode(""),f.element.appendChild(f.textNode),this.element.appendChild(f.element),this.$cells[p]=f);var m="ace_gutter-cell ";l[g]&&(m+=l[g]),c[g]&&(m+=c[g]),this.$annotations[g]&&(m+=this.$annotations[g].className),f.element.className!=m&&(f.element.className=m);var v=t.getRowLength(g)*e.lineHeight+"px";if(v!=f.element.style.height&&(f.element.style.height=v),a){var y=a[g];null==y&&(y=a[g]=t.getFoldWidget(g))}if(y){f.foldWidget||(f.foldWidget=i.createElement("span"),f.element.appendChild(f.foldWidget));var m="ace_fold-widget ace_"+y;"start"==y&&g==s&&g<o.end.row?m+=" ace_closed":m+=" ace_open",f.foldWidget.className!=m&&(f.foldWidget.className=m);var v=e.lineHeight+"px";f.foldWidget.style.height!=v&&(f.foldWidget.style.height=v)}else f.foldWidget&&(f.element.removeChild(f.foldWidget),f.foldWidget=null);var b=h=d?d.getText(t,g):g+u;b!==f.textNode.data&&(f.textNode.data=b),g++}this.element.style.height=e.minHeight+"px",(this.$fixedWidth||t.$useWrapMode)&&(h=t.getLength()+u);var w=d?d.getWidth(t,h,e):h.toString().length*e.characterWidth,C=this.$padding||this.$computePadding();(w+=C.left+C.right)===this.gutterWidth||isNaN(w)||(this.gutterWidth=w,this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._emit("changeGutterWidth",w))},this.$fixedWidth=!1,this.$showLineNumbers=!0,this.$renderer="",this.setShowLineNumbers=function(e){this.$renderer=!e&&{getWidth:function(){return""},getText:function(){return""}}},this.getShowLineNumbers=function(){return this.$showLineNumbers},this.$showFoldWidgets=!0,this.setShowFoldWidgets=function(e){e?i.addCssClass(this.element,"ace_folding-enabled"):i.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},this.getShowFoldWidgets=function(){return this.$showFoldWidgets},this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=i.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=parseInt(e.paddingLeft)+1||0,this.$padding.right=parseInt(e.paddingRight)||0,this.$padding},this.getRegion=function(e){var t=this.$padding||this.$computePadding(),n=this.element.getBoundingClientRect();return e.x<t.left+n.left?"markers":this.$showFoldWidgets&&e.x>n.right-t.right?"foldWidgets":void 0}}).call(a.prototype),t.Gutter=a}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){"use strict";var i=e("../range").Range,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){function e(e,t,n,i){return(e?1:0)|(t?2:0)|(n?4:0)|(i?8:0)}this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.update=function(e){if(e){this.config=e;var t=[];for(var n in this.markers){var i=this.markers[n];if(i.range){var r=i.range.clipRows(e.firstRow,e.lastRow);if(!r.isEmpty())if(r=r.toScreenRange(this.session),i.renderer){var o=this.$getTop(r.start.row,e),s=this.$padding+(this.session.$bidiHandler.isBidiRow(r.start.row)?this.session.$bidiHandler.getPosLeft(r.start.column):r.start.column*e.characterWidth);i.renderer(t,r,s,o,e)}else"fullLine"==i.type?this.drawFullLineMarker(t,r,i.clazz,e):"screenLine"==i.type?this.drawScreenLineMarker(t,r,i.clazz,e):r.isMultiLine()?"text"==i.type?this.drawTextMarker(t,r,i.clazz,e):this.drawMultiLineMarker(t,r,i.clazz,e):this.session.$bidiHandler.isBidiRow(r.start.row)?this.drawBidiSingleLineMarker(t,r,i.clazz+" ace_start ace_br15",e):this.drawSingleLineMarker(t,r,i.clazz+" ace_start ace_br15",e)}else i.update(t,this,this.session,e)}this.element.innerHTML=t.join("")}},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(t,n,r,o,s){for(var a=this.session,l=n.start.row,c=n.end.row,u=l,h=0,d=0,f=a.getScreenLastRowColumn(u),p=null,g=new i(u,n.start.column,u,d);u<=c;u++)g.start.row=g.end.row=u,g.start.column=u==l?n.start.column:a.getRowWrapIndent(u),g.end.column=f,h=d,d=f,f=u+1<c?a.getScreenLastRowColumn(u+1):u==c?0:n.end.column,p=r+(u==l?" ace_start":"")+" ace_br"+e(u==l||u==l+1&&n.start.column,h<d,d>f,u==c),this.session.$bidiHandler.isBidiRow(u)?this.drawBidiSingleLineMarker(t,g,p,o,u==c?0:1,s):this.drawSingleLineMarker(t,g,p,o,u==c?0:1,s)},this.drawMultiLineMarker=function(e,t,n,i,r){var o,s,a,l=this.$padding;if(r=r||"",this.session.$bidiHandler.isBidiRow(t.start.row)){var c=t.clone();c.end.row=c.start.row,c.end.column=this.session.getLine(c.start.row).length,this.drawBidiSingleLineMarker(e,c,n+" ace_br1 ace_start",i,null,r)}else o=i.lineHeight,s=this.$getTop(t.start.row,i),a=l+t.start.column*i.characterWidth,e.push("<div class='",n," ace_br1 ace_start' style='","height:",o,"px;","right:0;","top:",s,"px;","left:",a,"px;",r,"'></div>");if(this.session.$bidiHandler.isBidiRow(t.end.row)){var c=t.clone();c.start.row=c.end.row,c.start.column=0,this.drawBidiSingleLineMarker(e,c,n+" ace_br12",i,null,r)}else{var u=t.end.column*i.characterWidth;o=i.lineHeight,s=this.$getTop(t.end.row,i),e.push("<div class='",n," ace_br12' style='","height:",o,"px;","width:",u,"px;","top:",s,"px;","left:",l,"px;",r,"'></div>")}if(!((o=(t.end.row-t.start.row-1)*i.lineHeight)<=0)){s=this.$getTop(t.start.row+1,i);var h=(t.start.column?1:0)|(t.end.column?0:8);e.push("<div class='",n,h?" ace_br"+h:"","' style='","height:",o,"px;","right:0;","top:",s,"px;","left:",l,"px;",r,"'></div>")}},this.drawSingleLineMarker=function(e,t,n,i,r,o){var s=i.lineHeight,a=(t.end.column+(r||0)-t.start.column)*i.characterWidth,l=this.$getTop(t.start.row,i),c=this.$padding+t.start.column*i.characterWidth;e.push("<div class='",n,"' style='","height:",s,"px;","width:",a,"px;","top:",l,"px;","left:",c,"px;",o||"","'></div>")},this.drawBidiSingleLineMarker=function(e,t,n,i,r,o){var s=i.lineHeight,a=this.$getTop(t.start.row,i),l=this.$padding;this.session.$bidiHandler.getSelections(t.start.column,t.end.column).forEach(function(t){e.push("<div class='",n,"' style='","height:",s,"px;","width:",t.width+(r||0),"px;","top:",a,"px;","left:",l+t.left,"px;",o||"","'></div>")})},this.drawFullLineMarker=function(e,t,n,i,r){var o=this.$getTop(t.start.row,i),s=i.lineHeight;t.start.row!=t.end.row&&(s+=this.$getTop(t.end.row,i)-o),e.push("<div class='",n,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")},this.drawScreenLineMarker=function(e,t,n,i,r){var o=this.$getTop(t.start.row,i),s=i.lineHeight;e.push("<div class='",n,"' style='","height:",s,"px;","top:",o,"px;","left:0;right:0;",r||"","'></div>")}}).call(o.prototype),t.Marker=o}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=(e("../lib/useragent"),e("../lib/event_emitter").EventEmitter),a=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this)};(function(){i.implement(this,s),this.EOF_CHAR="\xb6",this.EOL_CHAR_LF="\xac",this.EOL_CHAR_CRLF="\xa4",this.EOL_CHAR=this.EOL_CHAR_LF,this.TAB_CHAR="\u2014",this.SPACE_CHAR="\xb7",this.$padding=0,this.$updateEolChar=function(){var e="\n"==this.session.doc.getNewLineCharacter()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=e)return this.EOL_CHAR=e,!0},this.setPadding=function(e){this.$padding=e,this.element.style.padding="0 "+e+"px"},this.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},this.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},this.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},this.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},this.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},this.setSession=function(e){this.session=e,e&&this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(e){return this.showInvisibles!=e&&(this.showInvisibles=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides!=e&&(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;for(var t=this.$tabStrings=[0],n=1;n<e+1;n++)this.showInvisibles?t.push("<span class='ace_invisible ace_invisible_tab'>"+o.stringRepeat(this.TAB_CHAR,n)+"</span>"):t.push(o.stringRepeat(" ",n));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var i="ace_indent-guide",r="",s="";if(this.showInvisibles){i+=" ace_invisible",r=" ace_invisible_space",s=" ace_invisible_tab";var a=o.stringRepeat(this.SPACE_CHAR,this.tabSize),l=o.stringRepeat(this.TAB_CHAR,this.tabSize)}else var a=o.stringRepeat(" ",this.tabSize),l=a;this.$tabStrings[" "]="<span class='"+i+r+"'>"+a+"</span>",this.$tabStrings["\t"]="<span class='"+i+s+"'>"+l+"</span>"}},this.updateLines=function(e,t,n){this.config.lastRow==e.lastRow&&this.config.firstRow==e.firstRow||this.scrollLines(e),this.config=e;for(var i=Math.max(t,e.firstRow),r=Math.min(n,e.lastRow),o=this.element.childNodes,s=0,a=e.firstRow;a<i;a++){var l=this.session.getFoldLine(a);if(l){if(l.containsRow(i)){i=l.start.row;break}a=l.end.row}s++}for(var a=i,l=this.session.getNextFoldLine(a),c=l?l.start.row:1/0;;){if(a>c&&(a=l.end.row+1,l=this.session.getNextFoldLine(a,l),c=l?l.start.row:1/0),a>r)break;var u=o[s++];if(u){var h=[];this.$renderLine(h,a,!this.$useLineGroups(),a==c&&l),u.style.height=e.lineHeight*this.session.getRowLength(a)+"px",u.innerHTML=h.join("")}a++}},this.scrollLines=function(e){var t=this.config;if(this.config=e,!t||t.lastRow<e.firstRow)return this.update(e);if(e.lastRow<t.firstRow)return this.update(e);var n=this.element;if(t.firstRow<e.firstRow)for(var i=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);i>0;i--)n.removeChild(n.firstChild);if(t.lastRow>e.lastRow)for(var i=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);i>0;i--)n.removeChild(n.lastChild);if(e.firstRow<t.firstRow){var r=this.$renderLinesFragment(e,e.firstRow,t.firstRow-1);n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r)}if(e.lastRow>t.lastRow){var r=this.$renderLinesFragment(e,t.lastRow+1,e.lastRow);n.appendChild(r)}},this.$renderLinesFragment=function(e,t,n){for(var i=this.element.ownerDocument.createDocumentFragment(),o=t,s=this.session.getNextFoldLine(o),a=s?s.start.row:1/0;;){if(o>a&&(o=s.end.row+1,s=this.session.getNextFoldLine(o,s),a=s?s.start.row:1/0),o>n)break;var l=r.createElement("div"),c=[];if(this.$renderLine(c,o,!1,o==a&&s),l.innerHTML=c.join(""),this.$useLineGroups())l.className="ace_line_group",i.appendChild(l),l.style.height=e.lineHeight*this.session.getRowLength(o)+"px";else for(;l.firstChild;)i.appendChild(l.firstChild);o++}return i},this.update=function(e){this.config=e;for(var t=[],n=e.firstRow,i=e.lastRow,r=n,o=this.session.getNextFoldLine(r),s=o?o.start.row:1/0;;){if(r>s&&(r=o.end.row+1,o=this.session.getNextFoldLine(r,o),s=o?o.start.row:1/0),r>i)break;this.$useLineGroups()&&t.push("<div class='ace_line_group' style='height:",e.lineHeight*this.session.getRowLength(r),"px'>"),this.$renderLine(t,r,!1,r==s&&o),this.$useLineGroups()&&t.push("</div>"),r++}this.element.innerHTML=t.join("")},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,n,i){var r=this,s=/\t|&|<|>|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF\uFFF9-\uFFFC])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,a=function(e,n,i,s,a){if(n)return r.showInvisibles?"<span class='ace_invisible ace_invisible_space'>"+o.stringRepeat(r.SPACE_CHAR,e.length)+"</span>":e;if("&"==e)return"&";if("<"==e)return"<";if(">"==e)return">";if("\t"==e){var l=r.session.getScreenTabSize(t+s);return t+=l-1,r.$tabStrings[l]}if("\u3000"==e){var c=r.showInvisibles?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",u=r.showInvisibles?r.SPACE_CHAR:"";return t+=1,"<span class='"+c+"' style='width:"+2*r.config.characterWidth+"px'>"+u+"</span>"}return i?"<span class='ace_invisible ace_invisible_space ace_invalid'>"+r.SPACE_CHAR+"</span>":(t+=1,"<span class='ace_cjk' style='width:"+2*r.config.characterWidth+"px'>"+e+"</span>")},l=i.replace(s,a);if(this.$textToken[n.type])e.push(l);else{var c="ace_"+n.type.replace(/\./g," ace_"),u="";"fold"==n.type&&(u=" style='width:"+n.value.length*this.config.characterWidth+"px;' "),e.push("<span class='",c,"'",u,">",l,"</span>")}return t+i.length},this.renderIndentGuide=function(e,t,n){var i=t.search(this.$indentGuideRe);return i<=0||i>=n?t:" "==t[0]?(i-=i%this.tabSize,e.push(o.stringRepeat(this.$tabStrings[" "],i/this.tabSize)),t.substr(i)):"\t"==t[0]?(e.push(o.stringRepeat(this.$tabStrings["\t"],i)),t.substr(i)):t},this.$renderWrappedLine=function(e,t,n,i){for(var r=0,s=0,a=n[0],l=0,c=0;c<t.length;c++){var u=t[c],h=u.value;if(0==c&&this.displayIndentGuides){if(r=h.length,!(h=this.renderIndentGuide(e,h,a)))continue;r-=h.length}if(r+h.length<a)l=this.$renderToken(e,l,u,h),r+=h.length;else{for(;r+h.length>=a;)l=this.$renderToken(e,l,u,h.substring(0,a-r)),h=h.substring(a-r),r=a,i||e.push("</div>","<div class='ace_line' style='height:",this.config.lineHeight,"px'>"),e.push(o.stringRepeat("\xa0",n.indent)),s++,l=0,a=n[s]||Number.MAX_VALUE;0!=h.length&&(r+=h.length,l=this.$renderToken(e,l,u,h))}}},this.$renderSimpleLine=function(e,t){var n=0,i=t[0],r=i.value;this.displayIndentGuides&&(r=this.renderIndentGuide(e,r)),r&&(n=this.$renderToken(e,n,i,r));for(var o=1;o<t.length;o++)i=t[o],r=i.value,n=this.$renderToken(e,n,i,r)},this.$renderLine=function(e,t,n,i){if(i||0==i||(i=this.session.getFoldLine(t)),i)var r=this.$getFoldLineTokens(t,i);else var r=this.session.getTokens(t);if(n||e.push("<div class='ace_line' style='height:",this.config.lineHeight*(this.$useLineGroups()?1:this.session.getRowLength(t)),"px'>"),r.length){var o=this.session.getRowSplitData(t);o&&o.length?this.$renderWrappedLine(e,r,o,n):this.$renderSimpleLine(e,r)}this.showInvisibles&&(i&&(t=i.end.row),e.push("<span class='ace_invisible ace_invisible_eol'>",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"</span>")),n||e.push("</div>")},this.$getFoldLineTokens=function(e,t){function n(e,t,n){for(var i=0,o=0;o+e[i].value.length<t;)if(o+=e[i].value.length,++i==e.length)return;if(o!=t){var s=e[i].value.substring(t-o);s.length>n-t&&(s=s.substring(0,n-t)),r.push({type:e[i].type,value:s}),o=t+s.length,i+=1}for(;o<n&&i<e.length;){var s=e[i].value;s.length+o>n?r.push({type:e[i].type,value:s.substring(0,n-o)}):r.push(e[i]),o+=s.length,i+=1}}var i=this.session,r=[],o=i.getTokens(e);return t.walk(function(e,t,s,a,l){null!=e?r.push({type:"fold",value:e}):(l&&(o=i.getTokens(t)),o.length&&n(o,a,s))},t.end.row,this.session.getLine(t.end.row).length),r},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(a.prototype),t.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var i,r=e("../lib/dom"),o=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),void 0===i&&(i=!("opacity"in this.element.style)),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=(i?this.$updateVisibility:this.$updateOpacity).bind(this)};(function(){this.$updateVisibility=function(e){for(var t=this.cursors,n=t.length;n--;)t[n].style.visibility=e?"":"hidden"},this.$updateOpacity=function(e){for(var t=this.cursors,n=t.length;n--;)t[n].style.opacity=e?"":"0"},this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e==this.smoothBlinking||i||(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.$updateCursors=this.$updateOpacity.bind(this),this.restartTimer())},this.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){var e=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&r.removeCssClass(this.element,"ace_smooth-blinking"),e(!0),this.isBlinking&&this.blinkInterval&&this.isVisible){this.smoothBlinking&&setTimeout(function(){r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e);return{left:this.$padding+(this.session.$bidiHandler.isBidiRow(n.row,e.row)?this.session.$bidiHandler.getPosLeft(n.column):n.column*this.config.characterWidth),top:(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight}},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,n=0,i=0;void 0!==t&&0!==t.length||(t=[{cursor:null}]);for(var n=0,r=t.length;n<r;n++){var o=this.getPixelPosition(t[n].cursor,!0);if(!((o.top>e.height+e.offset||o.top<0)&&n>1)){var s=(this.cursors[i++]||this.addCursor()).style;this.drawCursor?this.drawCursor(s,o,e,t[n],this.session):(s.left=o.left+"px",s.top=o.top+"px",s.width=e.characterWidth+"px",s.height=e.lineHeight+"px")}}for(;this.cursors.length>i;)this.removeCursor();var a=this.session.getOverwrite();this.$setOverwrite(a),this.$pixelPos=o,this.restartTimer()},this.drawCursor=null,this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(o.prototype),t.Cursor=o}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/dom"),o=e("./lib/event"),s=e("./lib/event_emitter").EventEmitter,a=function(e){this.element=r.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=r.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)};(function(){i.implement(this,s),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1}}).call(a.prototype);var l=function(e,t){a.call(this,e),this.scrollTop=0,this.scrollHeight=0,t.$scrollbarWidth=this.width=r.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px",this.$minWidth=0};i.inherits(l,a),function(){this.classSuffix="-v",this.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,1!=this.coeff){var e=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-e)/(this.coeff-e)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},this.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=this.setScrollHeight=function(e){this.scrollHeight=e,e>32768?(this.coeff=32768/e,e=32768):1!=this.coeff&&(this.coeff=1),this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=e,this.element.scrollTop=e*this.coeff)}}.call(l.prototype);var c=function(e,t){a.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};i.inherits(c,a),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(c.prototype),t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){"use strict";var i=e("./lib/event"),r=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.window=t||window};(function(){this.schedule=function(e){if(this.changes=this.changes|e,!this.pending&&this.changes){this.pending=!0;var t=this;i.nextFrame(function(){t.pending=!1;for(var e;e=t.changes;)t.changes=0,t.onRender(e)},this.window)}}}).call(r.prototype),t.RenderLoop=r}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,n){var i=e("../lib/oop"),r=e("../lib/dom"),o=e("../lib/lang"),s=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,l=0,c=t.FontMetrics=function(e){this.el=r.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=r.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=r.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),l||this.$testFractionalRect(),this.$measureNode.innerHTML=o.stringRepeat("X",l),this.$characterSize={width:0,height:0},this.checkForSizeChanges()};(function(){i.implement(this,a),this.$characterSize={width:0,height:0},this.$testFractionalRect=function(){var e=r.createElement("div");this.$setMeasureNodeStyles(e.style),e.style.width="0.2px",document.documentElement.appendChild(e);var t=e.getBoundingClientRect().width;l=t>0&&t<1?50:100,e.parentNode.removeChild(e)},this.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",s.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},this.checkForSizeChanges=function(){var e=this.$measureSizes();if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=setInterval(function(){e.checkForSizeChanges()},500)},this.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},this.$measureSizes=function(){if(50===l){var e=null;try{e=this.$measureNode.getBoundingClientRect()}catch(t){e={width:0,height:0}}var t={height:e.height,width:e.width/l}}else var t={height:this.$measureNode.clientHeight,width:this.$measureNode.clientWidth/l};return 0===t.width||0===t.height?null:t},this.$measureCharWidth=function(e){return this.$main.innerHTML=o.stringRepeat(e,l),this.$main.getBoundingClientRect().width/l},this.getCharacterWidth=function(e){var t=this.charSizes[e];return void 0===t&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)}}).call(c.prototype)}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/config","ace/lib/useragent","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter"],function(e,t,n){"use strict";var i=e("./lib/oop"),r=e("./lib/dom"),o=e("./config"),s=e("./lib/useragent"),a=e("./layer/gutter").Gutter,l=e("./layer/marker").Marker,c=e("./layer/text").Text,u=e("./layer/cursor").Cursor,h=e("./scrollbar").HScrollBar,d=e("./scrollbar").VScrollBar,f=e("./renderloop").RenderLoop,p=e("./layer/font_metrics").FontMetrics,g=e("./lib/event_emitter").EventEmitter;r.importCssString('.ace_editor {position: relative;overflow: hidden;font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'source-code-pro\', monospace;direction: ltr;text-align: left;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;cursor: text;}.ace_content {position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;min-width: 100%;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: \'\';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");}.ace_scrollbar {position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;text-indent: -1em;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;white-space: pre!important;}.ace_text-input.ace_composition {background: inherit;color: inherit;z-index: 1000;opacity: 1;text-indent: 0;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;word-wrap: normal;white-space: pre;height: 100%;width: 100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;}.ace_text-layer {font: inherit !important;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;border-left: 2px solid;transform: translatez(0);}.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_smooth-blinking .ace_cursor {-webkit-transition: opacity 0.18s;transition: opacity 0.18s;}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}.ace_line .ace_fold {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");}.ace_tooltip {background-color: #FFF;background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;max-width: 100%;padding: 3px 4px;position: fixed;z-index: 999999;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: default;white-space: pre;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;pointer-events: none;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");}.ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}.ace_dark .ace_fold-widget {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");}.ace_dark .ace_fold-widget.ace_end {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget.ace_closed {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {-webkit-transition: opacity 0.4s ease 0.05s;transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {-webkit-transition: opacity 0.05s ease 0.05s;transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}.ace_br1 {border-top-left-radius : 3px;}.ace_br2 {border-top-right-radius : 3px;}.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}.ace_br4 {border-bottom-right-radius: 3px;}.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}.ace_br8 {border-bottom-left-radius : 3px;}.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}.ace_text-input-ios {position: absolute !important;top: -100000px !important;left: -100000px !important;}',"ace_editor.css");var m=function(e,t){var n=this;this.container=e||r.createElement("div"),this.$keepTextAreaAtCursor=!s.isOldIE,r.addCssClass(this.container,"ace_editor"),this.setTheme(t),this.$gutter=r.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden",!0),this.scroller=r.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=r.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new a(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new l(this.content);var i=this.$textLayer=new c(this.content);this.canvas=i.element,this.$markerFront=new l(this.content),this.$cursorLayer=new u(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new d(this.container,this),this.scrollBarH=new h(this.container,this),this.scrollBarV.addEventListener("scroll",function(e){n.$scrollAnimation||n.session.setScrollTop(e.data-n.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(e){n.$scrollAnimation||n.session.setScrollLeft(e.data-n.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new p(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.addEventListener("changeCharacterSize",function(e){n.updateCharacterSize(),n.onResize(!0,n.gutterWidth,n.$size.width,n.$size.height),n._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new f(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),o.resetOptions(this),o._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,i.implement(this,g),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e),e&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},this.updateLines=function(e,t,n){if(void 0===t&&(t=1/0),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:e,lastRow:t},this.$changedLines.lastRow<this.layerConfig.firstRow){if(!n)return;this.$changedLines.lastRow=this.layerConfig.lastRow}this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},this.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,n,i){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=e?1:0;var r=this.container;i||(i=r.clientHeight||r.scrollHeight),n||(n=r.clientWidth||r.scrollWidth);var o=this.$updateCachedSize(e,t,n,i);if(!this.$size.scrollerHeight||!n&&!i)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(o|this.$changes,!0):this.$loop.schedule(o|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarV.scrollLeft=this.scrollBarV.scrollTop=null}},this.$updateCachedSize=function(e,t,n,i){i-=this.$extraHeight||0;var r=0,o=this.$size,s={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};return i&&(e||o.height!=i)&&(o.height=i,r|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",r|=this.CHANGE_SCROLL),n&&(e||o.width!=n)&&(r|=this.CHANGE_SIZE,o.width=n,null==t&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",o.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px",(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)&&(r|=this.CHANGE_FULL)),o.$dirty=!n||!i,r&&this._signal("resize",s),r},this.onGutterResize=function(){var e=this.$showGutter?this.$gutter.offsetWidth:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-2*this.$padding,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e),this.session.$bidiHandler.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var e=this.$cursorLayer.$pixelPos,t=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var n=this.session.selection.getCursor();n.column=0,e=this.$cursorLayer.getPixelPosition(n,!0),t*=this.session.getRowLength(n.row)}this.$gutterLineHighlight.style.top=e.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=t+"px"},this.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var e=r.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=r.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.scroller},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(this.$keepTextAreaAtCursor){var e=this.layerConfig,t=this.$cursorLayer.$pixelPos.top,n=this.$cursorLayer.$pixelPos.left;t-=e.offset;var i=this.textarea.style,r=this.lineHeight;if(t<0||t>e.height-r)return void(i.top=i.left="0");var o=this.characterWidth;if(this.$composition){var s=this.textarea.value.replace(/^\x01+/,"");o*=this.session.$getStringScreenWidth(s)[0]+2,r+=2}n-=this.scrollLeft,n>this.$size.scrollerWidth-o&&(n=this.$size.scrollerWidth-o),n+=this.gutterWidth,i.height=r+"px",i.width=o+"px",i.left=Math.min(n,this.$size.scrollerWidth-o)+"px",i.top=Math.min(t,this.$size.height-r)+"px"}},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},this.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow;return this.session.documentToScreenRow(t,0)*e.lineHeight-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,n,i){var r=this.scrollMargin;r.top=0|e,r.bottom=0|t,r.right=0|i,r.left=0|n,r.v=r.top+r.bottom,r.h=r.left+r.right,r.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-r.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){if(this.$changes&&(e|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t)return void(this.$changes|=e);if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender"),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){if(e|=this.$computeLayerConfig(),n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var i=this.scrollTop+(n.firstRow-this.layerConfig.firstRow)*this.lineHeight;i>0&&(this.scrollTop=i,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig())}n=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-n.offset+"px",this.content.style.marginTop=-n.offset+"px",this.content.style.width=n.width+2*this.$padding+"px",this.content.style.height=n.minHeight+"px"}return e&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left"),e&this.CHANGE_FULL?(this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),void this._signal("afterRender")):e&this.CHANGE_SCROLL?(e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),void this._signal("afterRender")):(e&this.CHANGE_TEXT?(this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n):(e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(n),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),void this._signal("afterRender"))},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.min(t,Math.max((this.$minLines||1)*this.lineHeight,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var i=e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var r=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,r,n),this.desiredHeight=n,this._signal("autosize")}},this.$computeLayerConfig=function(){var e=this.session,t=this.$size,n=t.height<=2*this.lineHeight,i=this.session.getScreenLength(),r=i*this.lineHeight,o=this.$getLongestLine(),s=!n&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-o-2*this.$padding<0),a=this.$horizScroll!==s;a&&(this.$horizScroll=s,this.scrollBarH.setVisible(s));var l=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var c=this.scrollTop%this.lineHeight,u=t.scrollerHeight+this.lineHeight,h=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;r+=h;var d=this.scrollMargin;this.session.setScrollTop(Math.max(-d.top,Math.min(this.scrollTop,r-t.scrollerHeight+d.bottom))),this.session.setScrollLeft(Math.max(-d.left,Math.min(this.scrollLeft,o+2*this.$padding-t.scrollerWidth+d.right)));var f=!n&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-r+h<0||this.scrollTop>d.top),p=l!==f;p&&(this.$vScroll=f,this.scrollBarV.setVisible(f));var g,m,v=Math.ceil(u/this.lineHeight)-1,y=Math.max(0,Math.round((this.scrollTop-c)/this.lineHeight)),b=y+v,w=this.lineHeight;y=e.screenToDocumentRow(y,0);var C=e.getFoldLine(y);C&&(y=C.start.row),g=e.documentToScreenRow(y,0),m=e.getRowLength(y)*w,b=Math.min(e.screenToDocumentRow(b,0),e.getLength()-1),u=t.scrollerHeight+e.getRowLength(b)*w+m,c=this.scrollTop-g*w;var A=0;return this.layerConfig.width!=o&&(A=this.CHANGE_H_SCROLL),(a||p)&&(A=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),p&&(o=this.$getLongestLine())),this.layerConfig={width:o,padding:this.$padding,firstRow:y,firstRowScreen:g,lastRow:b,lineHeight:w,characterWidth:this.characterWidth,minHeight:u,maxHeight:r,offset:c,gutterOffset:w?Math.max(0,Math.ceil((c+t.height-t.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},A},this.$updateLines=function(){if(this.$changedLines){var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(!(e>n.lastRow+1)&&!(t<n.firstRow))return t===1/0?(this.$showGutter&&this.$gutterLayer.update(n),void this.$textLayer.update(n)):(this.$textLayer.updateLines(n,e,t),!0)}},this.$getLongestLine=function(){var e=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(e+=1),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},this.updateBreakpoints=function(e){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},this.scrollCursorIntoView=function(e,t,n){if(0!==this.$size.scrollerHeight){var i=this.$cursorLayer.getPixelPosition(e),r=i.left,o=i.top,s=n&&n.top||0,a=n&&n.bottom||0,l=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;l+s>o?(t&&l+s>o+this.lineHeight&&(o-=t*this.$size.scrollerHeight),0===o&&(o=-this.scrollMargin.top),this.session.setScrollTop(o)):l+this.$size.scrollerHeight-a<o+this.lineHeight&&(t&&l+this.$size.scrollerHeight-a<o-this.lineHeight&&(o+=t*this.$size.scrollerHeight),this.session.setScrollTop(o+this.lineHeight-this.$size.scrollerHeight));var c=this.scrollLeft;c>r?(r<this.$padding+2*this.layerConfig.characterWidth&&(r=-this.scrollMargin.left),this.session.setScrollLeft(r)):c+this.$size.scrollerWidth<r+this.characterWidth?this.session.setScrollLeft(Math.round(r+this.characterWidth-this.$size.scrollerWidth)):c<=this.$padding&&r-c<this.characterWidth&&this.session.setScrollLeft(0)}},this.getScrollTop=function(){return this.session.getScrollTop()},this.getScrollLeft=function(){return this.session.getScrollLeft()},this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},this.scrollToRow=function(e){this.session.setScrollTop(e*this.lineHeight)},this.alignCursor=function(e,t){"number"==typeof e&&(e={row:e,column:0});var n=this.$cursorLayer.getPixelPosition(e),i=this.$size.scrollerHeight-this.lineHeight,r=n.top-i*(t||0);return this.session.setScrollTop(r),r},this.STEPS=8,this.$calcSteps=function(e,t){var n=0,i=this.STEPS,r=[];for(n=0;n<i;++n)r.push(function(e,t,n){return n*(Math.pow(e-1,3)+1)+t}(n/this.STEPS,e,t-e));return r},this.scrollToLine=function(e,t,n,i){var r=this.$cursorLayer.getPixelPosition({row:e,column:0}),o=r.top;t&&(o-=this.$size.scrollerHeight/2);var s=this.scrollTop;this.session.setScrollTop(o),!1!==n&&this.animateScrolling(s,i)},this.animateScrolling=function(e,t){var n=this.scrollTop;if(this.$animatedScroll){var i=this;if(e!=n){if(this.$scrollAnimation){var r=this.$scrollAnimation.steps;if(r.length&&(e=r[0])==n)return}var o=i.$calcSteps(e,n);this.$scrollAnimation={from:e,to:n,steps:o},clearInterval(this.$timer),i.session.setScrollTop(o.shift()),i.session.$scrollTop=n,this.$timer=setInterval(function(){o.length?(i.session.setScrollTop(o.shift()),i.session.$scrollTop=n):null!=n?(i.session.$scrollTop=-1,i.session.setScrollTop(n),n=null):(i.$timer=clearInterval(i.$timer),i.$scrollAnimation=null,t&&t())},10)}}},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(t)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){return t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right||void 0)))},this.pixelToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),i=e+this.scrollLeft-n.left-this.$padding,r=i/this.characterWidth,o=Math.floor((t+this.scrollTop-n.top)/this.lineHeight),s=Math.round(r);return{row:o,column:s,side:r-s>0?1:-1,offsetX:i}},this.screenToTextCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),i=e+this.scrollLeft-n.left-this.$padding,r=Math.round(i/this.characterWidth),o=(t+this.scrollTop-n.top)/this.lineHeight;return this.session.screenToDocumentPosition(o,Math.max(r,0),i)},this.textToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),i=this.session.documentToScreenPosition(e,t),r=this.$padding+(this.session.$bidiHandler.isBidiRow(i.row,e)?this.session.$bidiHandler.getPosLeft(i.column):Math.round(i.column*this.characterWidth)),o=i.row*this.lineHeight;return{pageX:n.left+r-this.scrollLeft,pageY:n.top+o-this.scrollTop}},this.visualizeFocus=function(){r.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){r.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,r.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(e){this.$moveTextAreaToCursor()},this.hideComposition=function(){this.$composition&&(r.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null)},this.setTheme=function(e,t){function n(n){if(i.$themeId!=e)return t&&t();if(!n||!n.cssClass)throw new Error("couldn't load module "+e+" or it didn't call define");r.importCssString(n.cssText,n.cssClass,i.container.ownerDocument),i.theme&&r.removeCssClass(i.container,i.theme.cssClass);var o="padding"in n?n.padding:"padding"in(i.theme||{})?4:i.$padding;i.$padding&&o!=i.$padding&&i.setPadding(o),i.$theme=n.cssClass,i.theme=n,r.addCssClass(i.container,n.cssClass),r.setCssClass(i.container,"ace_dark",n.isDark),i.$size&&(i.$size.width=0,i.$updateSizeAsync()),i._dispatchEvent("themeLoaded",{theme:n}),t&&t()}var i=this;if(this.$themeId=e,i._dispatchEvent("themeChange",{theme:e}),e&&"string"!=typeof e)n(e);else{var s=e||this.$options.theme.initialValue;o.loadModule(["theme",s],n)}},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){r.setCssClass(this.container,e,!1!==t)},this.unsetStyle=function(e){r.removeCssClass(this.container,e)},this.setCursorStyle=function(e){this.scroller.style.cursor!=e&&(this.scroller.style.cursor=e)},this.setMouseCursor=function(e){this.scroller.style.cursor=e},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(m.prototype),o.defineOptions(m.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){"number"==typeof e&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){r.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e)},initialValue:!0},showLineNumbers:{set:function(e){this.$gutterLayer.setShowLineNumbers(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){if(!this.$gutterLineHighlight)return this.$gutterLineHighlight=r.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",void this.$gutter.appendChild(this.$gutterLineHighlight);this.$gutterLineHighlight.style.display=e?"":"none",this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight()},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(e){this.$hScrollBarAlwaysVisible&&this.$horizScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){this.$vScrollBarAlwaysVisible&&this.$vScroll||this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){"number"==typeof e&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.updateFull()}},maxPixelHeight:{set:function(e){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(e){e=+e||0,this.$scrollPastEnd!=e&&(this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),t.VirtualRenderer=m}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";function i(e,t){var n=t.src;s.qualifyURL(e);try{return new Blob([n],{type:"application/javascript"})}catch(e){var i=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,r=new i;return r.append(n),r.getBlob("application/javascript")}}function r(e,t){var n=i(e,t),r=window.URL||window.webkitURL,o=r.createObjectURL(n);return new Worker(o)}var o=e("../lib/oop"),s=e("../lib/net"),a=e("../lib/event_emitter").EventEmitter,l=e("../config"),c=function(t,n,i,o,s){if(this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),l.get("packaged")||!e.toUrl)o=o||l.moduleUrl(n.id,"worker");else{var a=this.$normalizePath;o=o||a(e.toUrl("ace/worker/worker.js",null,"_"));var c={};t.forEach(function(t){c[t]=a(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}this.$worker=r(o,n),s&&this.send("importScripts",s),this.$worker.postMessage({init:!0,tlns:c,module:n.id,classname:i}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){o.implement(this,a),this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return s.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var i=this.callbackId++;this.callbacks[i]=n,t.push(i)}this.send(e,t)},this.emit=function(e,t){try{this.$worker.postMessage({event:e,data:{data:t.data}})}catch(e){console.error(e.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),"insert"==e.action?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;e&&(this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e}))}}).call(c.prototype);var u=function(e,t,n){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var i=null,r=!1,o=Object.create(a),s=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(e){s.messageBuffer.push(e),i&&(r?setTimeout(c):c())},this.setEmitSync=function(e){r=e};var c=function(){var e=s.messageBuffer.shift();e.command?i[e.command].apply(i,e.args):e.event&&o._signal(e.event,e.data)};o.postMessage=function(e){s.onMessage({data:e})},o.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},o.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},l.loadModule(["worker",t],function(e){for(i=new e[n](o);s.messageBuffer.length;)c()})};u.prototype=c.prototype,t.UIWorkerClient=u,t.WorkerClient=c,t.createWorker=r}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){"use strict";var i=e("./range").Range,r=e("./lib/event_emitter").EventEmitter,o=e("./lib/oop"),s=function(e,t,n,i,r,o){var s=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=r,this.othersClass=o,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=i,this.$onCursorChange=function(){setTimeout(function(){s.onCursorChange()})},this.$pos=n;var a=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=a.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){o.implement(this,r),this.setup=function(){var e=this,t=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=n.addMarker(new i(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var i=t.createAnchor(n.row,n.column);i.$insertRight=!0,i.detach(),e.others.push(i)}),n.setUndoSelect(!1)},this.showOtherMarkers=function(){if(!this.othersActive){var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new i(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1)})}},this.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var e=0;e<this.others.length;e++)this.session.removeMarker(this.others[e].markerId)}},this.onUpdate=function(e){if(this.$updating)return this.updateAnchors(e);var t=e;if(t.start.row===t.end.row&&t.start.row===this.pos.row){this.$updating=!0;var n="insert"===e.action?t.end.column-t.start.column:t.start.column-t.end.column,r=t.start.column>=this.pos.column&&t.start.column<=this.pos.column+this.length+1,o=t.start.column-this.pos.column;if(this.updateAnchors(e),r&&(this.length+=n),r&&!this.session.$fromUndo)if("insert"===e.action)for(var s=this.others.length-1;s>=0;s--){var a=this.others[s],l={row:a.row,column:a.column+o};this.doc.insertMergedLines(l,e.lines)}else if("remove"===e.action)for(var s=this.others.length-1;s>=0;s--){var a=this.others[s],l={row:a.row,column:a.column+o};this.doc.remove(new i(l.row,l.column,l.row,l.column-n))}this.$updating=!1,this.updateMarkers()}},this.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},this.updateMarkers=function(){if(!this.$updating){var e=this,t=this.session,n=function(n,r){t.removeMarker(n.markerId),n.markerId=t.addMarker(new i(n.row,n.column,n.row,n.column+e.length),r,null,!1)};n(this.pos,this.mainClass);for(var r=this.others.length;r--;)n(this.others[r],this.othersClass)}},this.onCursorChange=function(e){if(!this.$updating&&this.session){var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))}},this.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},this.cancel=function(){if(-1!==this.$undoStackDepth){for(var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth,n=0;n<t;n++)e.undo(!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}}}).call(s.prototype),t.PlaceHolder=s}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){function i(e,t){return e.row==t.row&&e.column==t.column}function r(e){var t=e.domEvent,n=t.altKey,r=t.shiftKey,a=t.ctrlKey,l=e.getAccelKey(),c=e.getButton();if(a&&s.isMac&&(c=t.button),e.editor.inMultiSelectMode&&2==c)return void e.editor.textInput.onContextMenu(e.domEvent);if(!a&&!n&&!l)return void(0===c&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode());if(0===c){var u,h=e.editor,d=h.selection,f=h.inMultiSelectMode,p=e.getDocumentPosition(),g=d.getCursor(),m=e.inSelection()||d.isEmpty()&&i(p,g),v=e.x,y=e.y,b=function(e){v=e.clientX,y=e.clientY},w=h.session,C=h.renderer.pixelToScreenCoordinates(v,y),A=C;if(h.$mouseHandler.$enableJumpToDef)a&&n||l&&n?u=r?"block":"add":n&&h.$blockSelectEnabled&&(u="block");else if(l&&!n){if(u="add",!f&&r)return}else n&&h.$blockSelectEnabled&&(u="block");if(u&&s.isMac&&t.ctrlKey&&h.$mouseHandler.cancelContextMenu(),"add"==u){if(!f&&m)return;if(!f){var E=d.toOrientedRange();h.addSelectionMarker(E)}var F=d.rangeList.rangeAtPoint(p);h.$blockScrolling++,h.inVirtualSelectionMode=!0,r&&(F=null,E=d.ranges[0]||E,h.removeSelectionMarker(E)),h.once("mouseup",function(){var e=d.toOrientedRange();F&&e.isEmpty()&&i(F.cursor,e.cursor)?d.substractPoint(e.cursor):(r?d.substractPoint(E.cursor):E&&(h.removeSelectionMarker(E),d.addRange(E)),d.addRange(e)),h.$blockScrolling--,h.inVirtualSelectionMode=!1})}else if("block"==u){e.stop(),h.inVirtualSelectionMode=!0;var x,k=[],S=function(){var e=h.renderer.pixelToScreenCoordinates(v,y),t=w.screenToDocumentPosition(e.row,e.column,e.offsetX);i(A,e)&&i(t,d.lead)||(A=e,h.$blockScrolling++,h.selection.moveToPosition(t),h.renderer.scrollCursorIntoView(),h.removeSelectionMarkers(k),k=d.rectangularRangeBlock(A,C),h.$mouseHandler.$clickSelection&&1==k.length&&k[0].isEmpty()&&(k[0]=h.$mouseHandler.$clickSelection.clone()),k.forEach(h.addSelectionMarker,h),h.updateSelectionMarkers(),h.$blockScrolling--)};h.$blockScrolling++,f&&!l?d.toSingleRange():!f&&l&&(x=d.toOrientedRange(),h.addSelectionMarker(x)),r?C=w.documentToScreenPosition(d.lead):d.moveToPosition(p),h.$blockScrolling--,A={row:-1,column:-1};var $=function(e){clearInterval(D),h.removeSelectionMarkers(k),k.length||(k=[d.toOrientedRange()]),h.$blockScrolling++,x&&(h.removeSelectionMarker(x),d.toSingleRange(x));for(var t=0;t<k.length;t++)d.addRange(k[t]);h.inVirtualSelectionMode=!1,h.$mouseHandler.$clickSelection=null,h.$blockScrolling--},_=S;o.capture(h.container,b,$);var D=setInterval(function(){_()},20);return e.preventDefault()}}}var o=e("../lib/event"),s=e("../lib/useragent");t.onMouseDown=r}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,n){t.defaultCommands=[{name:"addCursorAbove",exec:function(e){e.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",exec:function(e){e.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",exec:function(e){e.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",exec:function(e){e.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",exec:function(e){e.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",exec:function(e){e.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",exec:function(e){e.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",exec:function(e){e.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"splitIntoLines",exec:function(e){e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"alignCursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var i=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new i(t.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function i(e,t,n){return g.$options.wrap=!0,g.$options.needle=t,g.$options.backwards=-1==n,g.find(e)}function r(e,t){return e.row==t.row&&e.column==t.column}function o(e){e.$multiselectOnSessionChange||(e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",u),e.commands.addCommands(f.defaultCommands),s(e))}function s(e){function t(t){i&&(e.renderer.setMouseCursor(""),i=!1)}var n=e.textInput.getElement(),i=!1;h.addListener(n,"keydown",function(n){var r=18==n.keyCode&&!(n.ctrlKey||n.shiftKey||n.metaKey);e.$blockSelectEnabled&&r?i||(e.renderer.setMouseCursor("crosshair"),i=!0):i&&t()}),h.addListener(n,"keyup",t),h.addListener(n,"blur",t)}var a=e("./range_list").RangeList,l=e("./range").Range,c=e("./selection").Selection,u=e("./mouse/multi_select_handler").onMouseDown,h=e("./lib/event"),d=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var p=e("./search").Search,g=new p,m=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(m.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(e){if(!this.inMultiSelectMode&&0===this.rangeCount){var n=this.toOrientedRange();if(this.rangeList.add(n),this.rangeList.add(e),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var i=this.rangeList.add(e);return this.$onAddRange(e),i.length&&this.$onRemoveRange(i),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)}},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length?this.$onRemoveRange(e):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var i=this.ranges.indexOf(e[n]);this.ranges.splice(i,1)}this._signal("removeRange",{ranges:e}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(t=t||this.ranges[0])&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new a,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],n=l.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var n=this.getRange(),i=this.isBackwards(),r=n.start.row,o=n.end.row;if(r==o){if(i)var s=n.end,a=n.start;else var s=n.start,a=n.end;return this.addRange(l.fromPoints(a,a)),void this.addRange(l.fromPoints(s,s))}var c=[],u=this.getLineRange(r,!0);u.start.column=n.start.column,c.push(u);for(var h=r+1;h<o;h++)c.push(this.getLineRange(h,!0));u=this.getLineRange(o,!0),u.end.column=n.end.column,c.push(u),c.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],n=l.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var i=this.session.documentToScreenPosition(this.selectionLead),r=this.session.documentToScreenPosition(this.selectionAnchor);this.rectangularRangeBlock(i,r).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var i=[],o=e.column<t.column;if(o)var s=e.column,a=t.column,c=e.offsetX,u=t.offsetX;else var s=t.column,a=e.column,c=t.offsetX,u=e.offsetX;var h=e.row<t.row;if(h)var d=e.row,f=t.row;else var d=t.row,f=e.row;s<0&&(s=0),d<0&&(d=0),d==f&&(n=!0);for(var p=d;p<=f;p++){var g=l.fromPoints(this.session.screenToDocumentPosition(p,s,c),this.session.screenToDocumentPosition(p,a,u));if(g.isEmpty()){if(m&&r(g.end,m))break;var m=g.end}g.cursor=o?g.start:g.end,i.push(g)}if(h&&i.reverse(),!n){for(var v=i.length-1;i[v].isEmpty()&&v>0;)v--;if(v>0)for(var y=0;i[y].isEmpty();)y++;for(var b=v;b>=y;b--)i[b].isEmpty()&&i.splice(b,1)}return i}}.call(c.prototype);var v=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(e.marker){this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);-1!=t&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(e){for(var t=this.session.$selectionMarkers,n=e.length;n--;){var i=e[n];if(i.marker){this.session.removeMarker(i.marker);var r=t.indexOf(i);-1!=r&&t.splice(r,1)}}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(e){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(n.multiSelect){if(t.multiSelectAction)"forEach"==t.multiSelectAction?i=n.forEachSelection(t,e.args):"forEachLine"==t.multiSelectAction?i=n.forEachSelection(t,e.args,!0):"single"==t.multiSelectAction?(n.exitMultiSelectMode(),i=t.exec(n,e.args||{})):i=t.multiSelectAction(n,e.args||{});else{var i=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}return i}},this.forEachSelection=function(e,t,n){if(!this.inVirtualSelectionMode){var i,r=n&&n.keepOrder,o=1==n||n&&n.$byLines,s=this.session,a=this.selection,l=a.rangeList,u=(r?a:l).ranges;if(!u.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var h=a._eventRegistry;a._eventRegistry={};var d=new c(s);this.inVirtualSelectionMode=!0;for(var f=u.length;f--;){if(o)for(;f>0&&u[f].start.row==u[f-1].end.row;)f--;d.fromOrientedRange(u[f]),d.index=f,this.selection=s.selection=d;var p=e.exec?e.exec(this,t||{}):e(this,t||{});i||void 0===p||(i=p),d.toOrientedRange(u[f])}d.detach(),this.selection=s.selection=a,this.inVirtualSelectionMode=!1,a._eventRegistry=h,a.mergeOverlappingRanges();var g=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),g&&g.from==g.to&&this.renderer.animateScrolling(g.from),i}},this.exitMultiSelectMode=function(){this.inMultiSelectMode&&!this.inVirtualSelectionMode&&this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var t=this.multiSelect.rangeList.ranges,n=[],i=0;i<t.length;i++)n.push(this.session.getTextRange(t[i]));var r=this.session.getDocument().getNewLineCharacter();e=n.join(r),e.length==(n.length-1)*r.length&&(e="")}else this.selection.isEmpty()||(e=this.session.getTextRange(this.getSelectionRange()));return e},this.$checkMultiselectChange=function(e,t){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var n=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&t==this.multiSelect.anchor)return;var i=t==this.multiSelect.anchor?n.cursor==n.start?n.end:n.start:n.cursor;i.row==t.row&&this.session.$clipPositionToDocument(i.row,i.column).column==t.column||this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange())}},this.findAll=function(e,t,n){if(t=t||{},t.needle=e||t.needle,void 0==t.needle){var i=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();t.needle=this.session.getTextRange(i)}this.$search.set(t);var r=this.$search.findAll(this.session);if(!r.length)return 0;this.$blockScrolling+=1;var o=this.multiSelect;n||o.toSingleRange(r[0]);for(var s=r.length;s--;)o.addRange(r[s],!0);return i&&o.rangeList.rangeAtPoint(i.start)&&o.addRange(i,!0),this.$blockScrolling-=1,r.length},this.selectMoreLines=function(e,t){var n=this.selection.toOrientedRange(),i=n.cursor==n.end,r=this.session.documentToScreenPosition(n.cursor);this.selection.$desiredColumn&&(r.column=this.selection.$desiredColumn);var o=this.session.screenToDocumentPosition(r.row+e,r.column);if(n.isEmpty())var s=o;else var a=this.session.documentToScreenPosition(i?n.end:n.start),s=this.session.screenToDocumentPosition(a.row+e,a.column);if(i){var c=l.fromPoints(o,s);c.cursor=c.start}else{var c=l.fromPoints(s,o);c.cursor=c.end}if(c.desiredColumn=r.column,this.selection.inMultiSelectMode){if(t)var u=n.cursor}else this.selection.addRange(n);this.selection.addRange(c),u&&this.selection.substractPoint(u)},this.transposeSelections=function(e){for(var t=this.session,n=t.multiSelect,i=n.ranges,r=i.length;r--;){var o=i[r];if(o.isEmpty()){var s=t.getWordRange(o.start.row,o.start.column);o.start.row=s.start.row,o.start.column=s.start.column,o.end.row=s.end.row,o.end.column=s.end.column}}n.mergeOverlappingRanges();for(var a=[],r=i.length;r--;){var o=i[r];a.unshift(t.getTextRange(o))}e<0?a.unshift(a.pop()):a.push(a.shift());for(var r=i.length;r--;){var o=i[r],s=o.clone();t.replace(o,a[r]),o.start.row=s.start.row,o.start.column=s.start.column}},this.selectMore=function(e,t,n){var r=this.session,o=r.multiSelect,s=o.toOrientedRange();if(!s.isEmpty()||(s=r.getWordRange(s.start.row,s.start.column),s.cursor=-1==e?s.start:s.end,this.multiSelect.addRange(s),!n)){var a=r.getTextRange(s),l=i(r,a,e);l&&(l.cursor=-1==e?l.start:l.end,this.$blockScrolling+=1,this.session.unfold(l),this.multiSelect.addRange(l),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(s.cursor)}},this.alignCursors=function(){var e=this.session,t=e.multiSelect,n=t.ranges,i=-1,r=n.filter(function(e){if(e.cursor.row==i)return!0;i=e.cursor.row});if(n.length&&r.length!=n.length-1){r.forEach(function(e){t.substractPoint(e.cursor)});var o=0,s=1/0,a=n.map(function(t){var n=t.cursor,i=e.getLine(n.row),r=i.substr(n.column).search(/\S/g);return-1==r&&(r=0),n.column>o&&(o=n.column),r<s&&(s=r),r});n.forEach(function(t,n){var i=t.cursor,r=o-i.column,c=a[n]-s;r>c?e.insert(i,d.stringRepeat(" ",r-c)):e.remove(new l(i.row,i.column,i.row,i.column-r+c)),t.start.column=t.end.column=o,t.start.row=t.end.row=i.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var c=this.selection.getRange(),u=c.start.row,h=c.end.row,f=u==h;if(f){var p,g=this.session.getLength();do{p=this.session.getLine(h)}while(/[=:]/.test(p)&&++h<g);do{p=this.session.getLine(u)}while(/[=:]/.test(p)&&--u>0);u<0&&(u=0),h>=g&&(h=g-1)}var m=this.session.removeFullLines(u,h);m=this.$reAlignText(m,f),this.session.insert({row:u,column:0},m.join("\n")+"\n"),f||(c.start.column=0,c.end.column=m[m.length-1].length),this.selection.setRange(c)}},this.$reAlignText=function(e,t){function n(e){return d.stringRepeat(" ",e)}function i(e){return e[2]?n(s)+e[2]+n(a-e[2].length+l)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function r(e){return e[2]?n(s+a-e[2].length)+e[2]+n(l," ")+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function o(e){return e[2]?n(s)+e[2]+n(l)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var s,a,l,c=!0,u=!0;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?null==s?(s=t[1].length,a=t[2].length,l=t[3].length,t):(s+a+l!=t[1].length+t[2].length+t[3].length&&(u=!1),s!=t[1].length&&(c=!1),s>t[1].length&&(s=t[1].length),a<t[2].length&&(a=t[2].length),l>t[3].length&&(l=t[3].length),t):[e]}).map(t?i:c?u?r:i:o)}}).call(v.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=o,e("./config").defineOptions(v.prototype,"editor",{enableMultiselect:{set:function(e){o(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",u)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",u))},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){"use strict";var i=e("../../range").Range,r=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var i=e.getLine(n);return this.foldingStartMarker.test(i)?"start":"markbeginend"==t&&this.foldingStopMarker&&this.foldingStopMarker.test(i)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var r=/\S/,o=e.getLine(t),s=o.search(r);if(-1!=s){for(var a=n||o.length,l=e.getLength(),c=t,u=t;++t<l;){var h=e.getLine(t).search(r);if(-1!=h){if(h<=s)break;u=t}}if(u>c){var d=e.getLine(u).length;return new i(c,a,u,d)}}},this.openingBracketBlock=function(e,t,n,r,o){var s={row:n,column:r+1},a=e.$findClosingBracket(t,s,o);if(a){var l=e.foldWidgets[a.row];return null==l&&(l=e.getFoldWidget(a.row)),"start"==l&&a.row>s.row&&(a.row--,a.column=e.getLine(a.row).length),i.fromPoints(s,a)}},this.closingBracketBlock=function(e,t,n,r,o){var s={row:n,column:r},a=e.$findOpeningBracket(t,s);if(a)return a.column++,s.column--,i.fromPoints(a,s)}}).call(r.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;color: black;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}',e("../lib/dom").importCssString(t.cssText,t.cssClass)}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(e,t,n){"use strict";function i(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}var r=(e("./lib/oop"),e("./lib/dom"));e("./range").Range;(function(){this.getRowLength=function(e){var t;return t=this.lineWidgets?this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0:0,this.$useWrapMode&&this.$wrapData[e]?this.$wrapData[e].length+1+t:1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&!t.hidden&&(e+=t.rowCount)}),e},this.$onChangeEditor=function(e){this.attach(e.editor)},this.attach=function(e){e&&e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach(),this.editor!=e&&(this.detach(),this.editor=e,e&&(e.widgetManager=this,e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets)))},this.detach=function(e){var t=this.editor;if(t){this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var n=this.session.lineWidgets;n&&n.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})}},this.updateOnFold=function(e,t){var n=t.lineWidgets;if(n&&e.action){for(var i=e.data,r=i.start.row,o=i.end.row,s="add"==e.action,a=r+1;a<o;a++)n[a]&&(n[a].hidden=s);n[o]&&(s?n[r]?n[o].hidden=s:n[r]=n[o]:(n[r]==n[o]&&(n[r]=void 0),n[o].hidden=s))}},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(t){var n=e.start.row,i=e.end.row-n;if(0===i);else if("remove"==e.action){var r=t.splice(n+1,i);r.forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var o=new Array(i);o.unshift(n,0),t.splice.apply(t,o),this.$updateRows()}}},this.$updateRows=function(){var e=this.session.lineWidgets;if(e){var t=!0;e.forEach(function(e,n){if(e)for(t=!1,e.row=n;e.$oldWidget;)e.$oldWidget.row=n,e=e.$oldWidget}),t&&(this.session.lineWidgets=null)}},this.addLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e.session=this.session;var n=this.editor.renderer;e.html&&!e.el&&(e.el=r.createElement("div"),e.el.innerHTML=e.html),e.el&&(r.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,n.container.appendChild(e.el),e._inDocument=!0),e.coverGutter||(e.el.style.zIndex=3),null==e.pixelHeight&&(e.pixelHeight=e.el.offsetHeight),null==e.rowCount&&(e.rowCount=e.pixelHeight/n.layerConfig.lineHeight);var i=this.session.getFoldAt(e.row,0);if(e.$fold=i,i){var o=this.session.lineWidgets;e.row!=i.end.row||o[i.start.row]?e.hidden=!0:o[i.start.row]=e}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,n),this.onWidgetChanged(e),e},this.removeLineWidget=function(e){if(e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el),e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(e){}if(this.session.lineWidgets){var t=this.session.lineWidgets[e.row];if(t==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else for(;t;){if(t.$oldWidget==e){t.$oldWidget=e.$oldWidget;break}t=t.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.getWidgetsAtRow=function(e){for(var t=this.session.lineWidgets,n=t&&t[e],i=[];n;)i.push(n),n=n.$oldWidget;return i},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var n=this.session._changedWidgets,i=t.layerConfig;if(n&&n.length){for(var r=1/0,o=0;o<n.length;o++){var s=n[o];if(s&&s.el&&s.session==this.session){if(!s._inDocument){if(this.session.lineWidgets[s.row]!=s)continue;s._inDocument=!0,t.container.appendChild(s.el)}s.h=s.el.offsetHeight,s.fixedWidth||(s.w=s.el.offsetWidth,s.screenWidth=Math.ceil(s.w/i.characterWidth));var a=s.h/i.lineHeight;s.coverLine&&(a-=this.session.getRowLineCount(s.row))<0&&(a=0),s.rowCount!=a&&(s.rowCount=a,s.row<r&&(r=s.row))}}r!=1/0&&(this.session._emit("changeFold",{data:{start:{row:r}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},this.renderWidgets=function(e,t){var n=t.layerConfig,i=this.session.lineWidgets;if(i){for(var r=Math.min(this.firstRow,n.firstRow),o=Math.max(this.lastRow,n.lastRow,i.length);r>0&&!i[r];)r--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var s=r;s<=o;s++){var a=i[s];if(a&&a.el)if(a.hidden)a.el.style.top=-100-(a.pixelHeight||0)+"px";else{a._inDocument||(a._inDocument=!0,t.container.appendChild(a.el));var l=t.$cursorLayer.getPixelPosition({row:s,column:0},!0).top;a.coverLine||(l+=n.lineHeight*this.session.getRowLineCount(a.row)),a.el.style.top=l-n.offset+"px";var c=a.coverGutter?0:t.gutterWidth;a.fixedWidth||(c-=t.scrollLeft),a.el.style.left=c+"px",a.fullWidth&&a.screenWidth&&(a.el.style.minWidth=n.width+2*n.padding+"px"),a.fixedWidth?a.el.style.right=t.scrollBar.getWidth()+"px":a.el.style.right=""}}}}}).call(i.prototype),t.LineWidgets=i}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,n){"use strict";function i(e,t,n){for(var i=0,r=e.length-1;i<=r;){var o=i+r>>1,s=n(t,e[o]);if(s>0)i=o+1;else{if(!(s<0))return o;r=o-1}}return-(i+1)}function r(e,t,n){var r=e.getAnnotations().sort(a.comparePoints);if(r.length){var o=i(r,{row:t,column:-1},a.comparePoints);o<0&&(o=-o-1),o>=r.length?o=n>0?0:r.length-1:0===o&&n<0&&(o=r.length-1);var s=r[o];if(s&&n){if(s.row===t){do{s=r[o+=n]}while(s&&s.row===t);if(!s)return r.slice()}var l=[];t=s.row;do{l[n<0?"unshift":"push"](s),s=r[o+=n]}while(s&&s.row==t);return l.length&&l}}}var o=e("../line_widgets").LineWidgets,s=e("../lib/dom"),a=e("../range").Range;t.showErrorMarker=function(e,t){var n=e.session;n.widgetManager||(n.widgetManager=new o(n),n.widgetManager.attach(e));var i=e.getCursorPosition(),a=i.row,l=n.widgetManager.getWidgetsAtRow(a).filter(function(e){return"errorMarker"==e.type})[0];l?l.destroy():a-=t;var c,u=r(n,a,t);if(u){var h=u[0];i.column=(h.pos&&"number"!=typeof h.column?h.pos.sc:h.column)||0,i.row=h.row,c=e.renderer.$gutterLayer.$annotations[i.row]}else{if(l)return;c={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(i.row),e.selection.moveToPosition(i);var d={row:i.row,fixedWidth:!0,coverGutter:!0,el:s.createElement("div"),type:"errorMarker"},f=d.el.appendChild(s.createElement("div")),p=d.el.appendChild(s.createElement("div"));p.className="error_widget_arrow "+c.className;var g=e.renderer.$cursorLayer.getPixelPosition(i).left;p.style.left=g+e.renderer.gutterWidth-5+"px",d.el.className="error_widget_wrapper",f.className="error_widget "+c.className,f.innerHTML=c.text.join("<br>"),f.appendChild(s.createElement("div"));var m=function(e,t,n){if(0===t&&("esc"===n||"return"===n))return d.destroy(),{command:"null"}};d.destroy=function(){e.$mouseHandler.isMousePressed||(e.keyBinding.removeKeyboardHandler(m),n.widgetManager.removeLineWidget(d),e.off("changeSelection",d.destroy),e.off("changeSession",d.destroy),e.off("mouseup",d.destroy),e.off("change",d.destroy))},e.keyBinding.addKeyboardHandler(m),e.on("changeSelection",d.destroy),e.on("changeSession",d.destroy),e.on("mouseup",d.destroy),e.on("change",d.destroy),e.session.widgetManager.addLineWidget(d),d.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:d.el.offsetHeight})},s.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,i){"use strict";e("./lib/fixoldbrowsers");var r=e("./lib/dom"),o=e("./lib/event"),s=e("./editor").Editor,a=e("./edit_session").EditSession,l=e("./undomanager").UndoManager,c=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.acequire=e,t.define=n(34),t.edit=function(e){if("string"==typeof e){var n=e;if(!(e=document.getElementById(n)))throw new Error("ace.edit can't find div #"+n)}if(e&&e.env&&e.env.editor instanceof s)return e.env.editor;var i="";if(e&&/input|textarea/i.test(e.tagName)){var a=e;i=a.value,e=r.createElement("pre"),a.parentNode.replaceChild(e,a)}else e&&(i=r.getInnerText(e),e.innerHTML="");var l=t.createEditSession(i),u=new s(new c(e));u.setSession(l);var h={document:l,editor:u,onResize:u.resize.bind(u,null)};return a&&(h.textarea=a),o.addListener(window,"resize",h.onResize),u.on("destroy",function(){o.removeListener(window,"resize",h.onResize),h.editor.container.env=null}),u.container.env=u.env=h,u},t.createEditSession=function(e,t){var n=new a(e,t);return n.setUndoManager(new l),n},t.EditSession=a,t.UndoManager=l,t.version="1.2.9"}),function(){ace.acequire(["ace/ace"],function(e){e&&(e.config.init(!0),e.define=ace.define),window.ace||(window.ace=e);for(var t in e)e.hasOwnProperty(t)&&(window.ace[t]=e[t])})}(),e.exports=window.ace.acequire("ace/ace")},function(e,t){e.exports=function(){throw new Error("define cannot be used indirect")}},function(e,t,n){"use strict";n.d(t,"a",function(){return i});var i={"--content-height":"640px","--content-width":"1024px","--sunlit-apple":"#e8fdbd","--lichen":"#d0e8c0","--basic-gray":"#d8d2d0","--bobby-blue":"#002233","--phosphor-green":"#00cc88","--scrubs":"#009999","--pooh":"#ddbb66"}},function(e,t,n){"use strict";function i(){}function r(e){try{return e.then}catch(e){return v=e,y}}function o(e,t){try{return e(t)}catch(e){return v=e,y}}function s(e,t,n){try{e(t,n)}catch(e){return v=e,y}}function a(e){if("object"!==typeof this)throw new TypeError("Promises must be constructed via new");if("function"!==typeof e)throw new TypeError("Promise constructor's argument is not a function");this._75=0,this._83=0,this._18=null,this._38=null,e!==i&&g(e,this)}function l(e,t,n){return new e.constructor(function(r,o){var s=new a(i);s.then(r,o),c(e,new p(t,n,s))})}function c(e,t){for(;3===e._83;)e=e._18;if(a._47&&a._47(e),0===e._83)return 0===e._75?(e._75=1,void(e._38=t)):1===e._75?(e._75=2,void(e._38=[e._38,t])):void e._38.push(t);u(e,t)}function u(e,t){m(function(){var n=1===e._83?t.onFulfilled:t.onRejected;if(null===n)return void(1===e._83?h(t.promise,e._18):d(t.promise,e._18));var i=o(n,e._18);i===y?d(t.promise,v):h(t.promise,i)})}function h(e,t){if(t===e)return d(e,new TypeError("A promise cannot be resolved with itself."));if(t&&("object"===typeof t||"function"===typeof t)){var n=r(t);if(n===y)return d(e,v);if(n===e.then&&t instanceof a)return e._83=3,e._18=t,void f(e);if("function"===typeof n)return void g(n.bind(t),e)}e._83=1,e._18=t,f(e)}function d(e,t){e._83=2,e._18=t,a._71&&a._71(e,t),f(e)}function f(e){if(1===e._75&&(c(e,e._38),e._38=null),2===e._75){for(var t=0;t<e._38.length;t++)c(e,e._38[t]);e._38=null}}function p(e,t,n){this.onFulfilled="function"===typeof e?e:null,this.onRejected="function"===typeof t?t:null,this.promise=n}function g(e,t){var n=!1,i=s(e,function(e){n||(n=!0,h(t,e))},function(e){n||(n=!0,d(t,e))});n||i!==y||(n=!0,d(t,v))}var m=n(64),v=null,y={};e.exports=a,a._47=null,a._71=null,a._44=i,a.prototype.then=function(e,t){if(this.constructor!==a)return l(this,e,t);var n=new a(i);return c(this,new p(e,t,n)),n}},function(e,t,n){"use strict";var i={};e.exports=i},function(e,t,n){"use strict";var i=n(77),r=(n(40),n(84));n.d(t,"a",function(){return i.a}),n.d(t,"b",function(){return r.a})},function(e,t,n){"use strict";n.d(t,"b",function(){return o}),n.d(t,"a",function(){return s});var i=n(14),r=n.n(i),o=r.a.shape({trySubscribe:r.a.func.isRequired,tryUnsubscribe:r.a.func.isRequired,notifyNestedSubs:r.a.func.isRequired,isSubscribed:r.a.func.isRequired}),s=r.a.shape({subscribe:r.a.func.isRequired,dispatch:r.a.func.isRequired,getState:r.a.func.isRequired})},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function o(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t){var n={};for(var i in e)t.indexOf(i)>=0||Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n}function a(){}function l(e,t){var n={run:function(i){try{var r=e(t.getState(),i);(r!==n.props||n.error)&&(n.shouldComponentUpdate=!0,n.props=r,n.error=null)}catch(e){n.shouldComponentUpdate=!0,n.error=e}}};return n}function c(e){var t,n,c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},u=c.getDisplayName,d=void 0===u?function(e){return"ConnectAdvanced("+e+")"}:u,w=c.methodName,C=void 0===w?"connectAdvanced":w,A=c.renderCountProp,E=void 0===A?void 0:A,F=c.shouldHandleStateChanges,x=void 0===F||F,k=c.storeKey,S=void 0===k?"store":k,$=c.withRef,_=void 0!==$&&$,D=s(c,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef"]),B=S+"Subscription",T=y++,L=(t={},t[S]=m.a,t[B]=m.b,t),O=(n={},n[B]=m.b,n);return function(t){f()("function"==typeof t,"You must pass a component to the function returned by "+C+". Instead received "+JSON.stringify(t));var n=t.displayName||t.name||"Component",s=d(n),c=v({},D,{getDisplayName:d,methodName:C,renderCountProp:E,shouldHandleStateChanges:x,storeKey:S,withRef:_,displayName:s,wrappedComponentName:n,WrappedComponent:t}),u=function(n){function u(e,t){i(this,u);var o=r(this,n.call(this,e,t));return o.version=T,o.state={},o.renderCount=0,o.store=e[S]||t[S],o.propsMode=Boolean(e[S]),o.setWrappedInstance=o.setWrappedInstance.bind(o),f()(o.store,'Could not find "'+S+'" in either the context or props of "'+s+'". Either wrap the root component in a <Provider>, or explicitly pass "'+S+'" as a prop to "'+s+'".'),o.initSelector(),o.initSubscription(),o}return o(u,n),u.prototype.getChildContext=function(){var e,t=this.propsMode?null:this.subscription;return e={},e[B]=t||this.context[B],e},u.prototype.componentDidMount=function(){x&&(this.subscription.trySubscribe(),this.selector.run(this.props),this.selector.shouldComponentUpdate&&this.forceUpdate())},u.prototype.componentWillReceiveProps=function(e){this.selector.run(e)},u.prototype.shouldComponentUpdate=function(){return this.selector.shouldComponentUpdate},u.prototype.componentWillUnmount=function(){this.subscription&&this.subscription.tryUnsubscribe(),this.subscription=null,this.notifyNestedSubs=a,this.store=null,this.selector.run=a,this.selector.shouldComponentUpdate=!1},u.prototype.getWrappedInstance=function(){return f()(_,"To access the wrapped instance, you need to specify { withRef: true } in the options argument of the "+C+"() call."),this.wrappedInstance},u.prototype.setWrappedInstance=function(e){this.wrappedInstance=e},u.prototype.initSelector=function(){var t=e(this.store.dispatch,c);this.selector=l(t,this.store),this.selector.run(this.props)},u.prototype.initSubscription=function(){if(x){var e=(this.propsMode?this.props:this.context)[B];this.subscription=new g.a(this.store,e,this.onStateChange.bind(this)),this.notifyNestedSubs=this.subscription.notifyNestedSubs.bind(this.subscription)}},u.prototype.onStateChange=function(){this.selector.run(this.props),this.selector.shouldComponentUpdate?(this.componentDidUpdate=this.notifyNestedSubsOnComponentDidUpdate,this.setState(b)):this.notifyNestedSubs()},u.prototype.notifyNestedSubsOnComponentDidUpdate=function(){this.componentDidUpdate=void 0,this.notifyNestedSubs()},u.prototype.isSubscribed=function(){return Boolean(this.subscription)&&this.subscription.isSubscribed()},u.prototype.addExtraProps=function(e){if(!_&&!E&&(!this.propsMode||!this.subscription))return e;var t=v({},e);return _&&(t.ref=this.setWrappedInstance),E&&(t[E]=this.renderCount++),this.propsMode&&this.subscription&&(t[B]=this.subscription),t},u.prototype.render=function(){var e=this.selector;if(e.shouldComponentUpdate=!1,e.error)throw e.error;return Object(p.createElement)(t,this.addExtraProps(e.props))},u}(p.Component);return u.WrappedComponent=t,u.displayName=s,u.childContextTypes=O,u.contextTypes=L,u.propTypes=L,h()(u,t)}}t.a=c;var u=n(81),h=n.n(u),d=n(82),f=n.n(d),p=n(0),g=(n.n(p),n(83)),m=n(39),v=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},y=0,b={}},function(e,t,n){"use strict";function i(e,t,n){function a(){v===m&&(v=m.slice())}function l(){return g}function c(e){if("function"!==typeof e)throw new Error("Expected listener to be a function.");var t=!0;return a(),v.push(e),function(){if(t){t=!1,a();var n=v.indexOf(e);v.splice(n,1)}}}function u(e){if(!Object(r.a)(e))throw new Error("Actions must be plain objects. Use custom middleware for async actions.");if("undefined"===typeof e.type)throw new Error('Actions may not have an undefined "type" property. Have you misspelled a constant?');if(y)throw new Error("Reducers may not dispatch actions.");try{y=!0,g=p(g,e)}finally{y=!1}for(var t=m=v,n=0;n<t.length;n++){(0,t[n])()}return e}function h(e){if("function"!==typeof e)throw new Error("Expected the nextReducer to be a function.");p=e,u({type:s.INIT})}function d(){var e,t=c;return e={subscribe:function(e){function n(){e.next&&e.next(l())}if("object"!==typeof e)throw new TypeError("Expected the observer to be an object.");return n(),{unsubscribe:t(n)}}},e[o.a]=function(){return this},e}var f;if("function"===typeof t&&"undefined"===typeof n&&(n=t,t=void 0),"undefined"!==typeof n){if("function"!==typeof n)throw new Error("Expected the enhancer to be a function.");return n(i)(e,t)}if("function"!==typeof e)throw new Error("Expected the reducer to be a function.");var p=e,g=t,m=[],v=m,y=!1;return u({type:s.INIT}),f={dispatch:u,subscribe:c,getState:l,replaceReducer:h},f[o.a]=d,f}n.d(t,"a",function(){return s}),t.b=i;var r=n(26),o=n(95),s={INIT:"@@redux/INIT"}},function(e,t,n){"use strict";var i=n(88),r=i.a.Symbol;t.a=r},function(e,t,n){"use strict"},function(e,t,n){"use strict";function i(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce(function(e,t){return function(){return e(t.apply(void 0,arguments))}})}t.a=i},function(e,t,n){"use strict";function i(e){return function(t,n){function i(){return r}var r=e(t,n);return i.dependsOnOwnProps=!1,i}}function r(e){return null!==e.dependsOnOwnProps&&void 0!==e.dependsOnOwnProps?Boolean(e.dependsOnOwnProps):1!==e.length}function o(e,t){return function(t,n){var i=(n.displayName,function(e,t){return i.dependsOnOwnProps?i.mapToProps(e,t):i.mapToProps(e)});return i.dependsOnOwnProps=!0,i.mapToProps=function(t,n){i.mapToProps=e,i.dependsOnOwnProps=r(e);var o=i(t,n);return"function"===typeof o&&(i.mapToProps=o,i.dependsOnOwnProps=r(o),o=i(t,n)),o},i}}t.a=i,t.b=o;n(46)},function(e,t,n){"use strict";n(26),n(24)},function(e,t,n){"use strict";function i(e){try{o(),e()}finally{s()}}function r(e){l.push(e),c||(o(),a())}function o(){c++}function s(){c--}function a(){s();for(var e=void 0;!c&&void 0!==(e=l.shift());)i(e)}t.a=r,t.c=o,t.b=a;var l=[],c=0},function(e,t,n){"use strict";function i(e,t){for(var n=arguments.length,i=Array(n>2?n-2:0),s=2;s<n;s++)i[s-2]=arguments[s];var l=void 0;r.n.iterator(e)?(l=e,e=t):(Object(r.g)(t,r.n.func,a),l=t.apply(void 0,i),Object(r.g)(l,r.n.iterator,a));var c=e,u=c.subscribe,h=c.dispatch,d=c.getState,f=c.context,p=c.sagaMonitor,g=c.logger,m=c.onError,v=Object(r.v)();p&&(p.effectTriggered=p.effectTriggered||r.r,p.effectResolved=p.effectResolved||r.r,p.effectRejected=p.effectRejected||r.r,p.effectCancelled=p.effectCancelled||r.r,p.actionDispatched=p.actionDispatched||r.r,p.effectTriggered({effectId:v,root:!0,parentEffectId:0,effect:{root:!0,saga:t,args:i}}));var y=Object(o.a)(l,u,Object(r.x)(h),d,f,{sagaMonitor:p,logger:g,onError:m},v,t.name);return p&&p.effectResolved(v,y),y}t.a=i;var r=n(2),o=n(49),s="runSaga(storeInterface, saga, ...args)",a=s+": saga argument must be a Generator function!"},function(e,t,n){"use strict";function i(e,t){for(var n in t){var i=t[n];i.configurable=i.enumerable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,n,i)}return e}function r(e){return("*"===e?y.wildcard:l.n.array(e)?y.array:l.n.stringableFunc(e)?y.default:l.n.func(e)?y.predicate:y.default)(e)}function o(e,t,n){function i(e){o(),n(e,!0)}function r(e){s.push(e),e.cont=function(r,o){c||(Object(l.t)(s,e),e.cont=l.r,o?i(r):(e===t&&(a=r),s.length||(c=!0,n(a))))}}function o(){c||(c=!0,s.forEach(function(e){e.cont=l.r,e.cancel()}),s=[])}var s=[],a=void 0,c=!1;return r(t),{addTask:r,cancelAll:o,abort:i,getTasks:function(){return s},taskNames:function(){return s.map(function(e){return e.name})}}}function s(e){var t=e.context,n=e.fn,i=e.args;if(l.n.iterator(n))return n;var r=void 0,o=void 0;try{r=n.apply(t,i)}catch(e){o=e}return l.n.iterator(r)?r:o?Object(l.q)(function(){throw o}):Object(l.q)(function(){var e=void 0,t={done:!1,value:r},n=function(e){return{done:!0,value:e}};return function(i){return e?n(i):(e=!0,t)}}())}function a(e){function t(){te.isRunning&&!te.isCancelled&&(te.isCancelled=!0,p(v))}function n(){e._isRunning&&!e._isCancelled&&(e._isCancelled=!0,ne.cancelAll(),y(v))}function p(t,n){if(!te.isRunning)throw new Error("Trying to resume an already finished generator");try{var i=void 0;n?i=e.throw(t):t===v?(te.isCancelled=!0,p.cancel(),i=l.n.func(e.return)?e.return(v):{done:!0,value:v}):i=t===m?l.n.func(e.return)?e.return():{done:!0}:e.next(t),i.done?(te.isMainRunning=!1,te.cont&&te.cont(i.value)):w(i.value,z,"",p)}catch(e){te.isCancelled&&X(e),te.isMainRunning=!1,te.cont(e,!0)}}function y(t,n){e._isRunning=!1,J.close(),n?(t instanceof Error&&Object.defineProperty(t,"sagaStack",{value:"at "+U+" \n "+(t.sagaStack||t.stack),configurable:!0}),ee.cont||(t instanceof Error&&Y?Y(t):X(t)),e._error=t,e._isAborted=!0,e._deferredEnd&&e._deferredEnd.reject(t)):(e._result=t,e._deferredEnd&&e._deferredEnd.resolve(t)),ee.cont&&ee.cont(t,n),ee.joiners.forEach(function(e){return e.cb(t,n)}),ee.joiners=null}function w(e,t){function n(e,t){s||(s=!0,r.cancel=l.r,G&&(t?G.effectRejected(o,e):G.effectResolved(o,e)),r(e,t))}var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=arguments[3],o=Object(l.v)();G&&G.effectTriggered({effectId:o,parentEffectId:t,label:i,effect:e});var s=void 0;n.cancel=l.r,r.cancel=function(){if(!s){s=!0;try{n.cancel()}catch(e){X(e)}n.cancel=l.r,G&&G.effectCancelled(o)}};var a=void 0;return l.n.promise(e)?C(e,n):l.n.helper(e)?S(b(e),o,n):l.n.iterator(e)?A(e,o,U,n):l.n.array(e)?K(e,o,n):(a=u.b.take(e))?E(a,n):(a=u.b.put(e))?F(a,n):(a=u.b.all(e))?D(a,o,n):(a=u.b.race(e))?B(a,o,n):(a=u.b.call(e))?x(a,o,n):(a=u.b.cps(e))?k(a,n):(a=u.b.fork(e))?S(a,o,n):(a=u.b.join(e))?$(a,n):(a=u.b.cancel(e))?_(a,n):(a=u.b.select(e))?T(a,n):(a=u.b.actionChannel(e))?L(a,n):(a=u.b.flush(e))?R(a,n):(a=u.b.cancelled(e))?O(a,n):(a=u.b.getContext(e))?M(a,n):(a=u.b.setContext(e))?P(a,n):n(e)}function C(e,t){var n=e[l.a];l.n.func(n)?t.cancel=n:l.n.func(e.abort)&&(t.cancel=function(){return e.abort()}),e.then(t,function(e){return t(e,!0)})}function A(e,t,n,i){a(e,I,j,N,Z,H,t,n,i)}function E(e,t){var n=e.channel,i=e.pattern,o=e.maybe;n=n||J;var s=function(e){return e instanceof Error?t(e,!0):t(Object(h.d)(e)&&!o?m:e)};try{n.take(s,r(i))}catch(e){return t(e,!0)}t.cancel=s.cancel}function F(e,t){var n=e.channel,i=e.action,r=e.resolve;Object(c.a)(function(){var e=void 0;try{e=(n?n.put:j)(i)}catch(e){if(n||r)return t(e,!0);X(e)}if(!r||!l.n.promise(e))return t(e);C(e,t)})}function x(e,t,n){var i=e.context,r=e.fn,o=e.args,s=void 0;try{s=r.apply(i,o)}catch(e){return n(e,!0)}return l.n.promise(s)?C(s,n):l.n.iterator(s)?A(s,t,r.name,n):n(s)}function k(e,t){var n=e.context,i=e.fn,r=e.args;try{var o=function(e,n){return l.n.undef(e)?t(n):t(e,!0)};i.apply(n,r.concat(o)),o.cancel&&(t.cancel=function(){return o.cancel()})}catch(e){return t(e,!0)}}function S(e,t,n){var i=e.context,r=e.fn,o=e.args,u=e.detached,h=s({context:i,fn:r,args:o});try{Object(c.c)();var d=a(h,I,j,N,Z,H,t,r.name,u?null:l.r);u?n(d):h._isRunning?(ne.addTask(d),n(d)):h._error?ne.abort(h._error):n(d)}finally{Object(c.b)()}}function $(e,t){if(e.isRunning()){var n={task:ee,cb:t};t.cancel=function(){return Object(l.t)(e.joiners,n)},e.joiners.push(n)}else e.isAborted()?t(e.error(),!0):t(e.result())}function _(e,t){e===l.d&&(e=ee),e.isRunning()&&e.cancel(),t()}function D(e,t,n){function i(){o===r.length&&(s=!0,n(l.n.array(e)?l.f.from(f({},a,{length:r.length})):a))}var r=Object.keys(e);if(!r.length)return n(l.n.array(e)?[]:{});var o=0,s=void 0,a={},c={};r.forEach(function(e){var t=function(t,r){s||(r||Object(h.d)(t)||t===m||t===v?(n.cancel(),n(t,r)):(a[e]=t,o++,i()))};t.cancel=l.r,c[e]=t}),n.cancel=function(){s||(s=!0,r.forEach(function(e){return c[e].cancel()}))},r.forEach(function(n){return w(e[n],t,n,c[n])})}function B(e,t,n){var i=void 0,r=Object.keys(e),o={};r.forEach(function(t){var s=function(o,s){if(!i)if(s)n.cancel(),n(o,!0);else if(!Object(h.d)(o)&&o!==m&&o!==v){var a;n.cancel(),i=!0;var c=(a={},a[t]=o,a);n(l.n.array(e)?[].slice.call(f({},c,{length:r.length})):c)}};s.cancel=l.r,o[t]=s}),n.cancel=function(){i||(i=!0,r.forEach(function(e){return o[e].cancel()}))},r.forEach(function(n){i||w(e[n],t,n,o[n])})}function T(e,t){var n=e.selector,i=e.args;try{var r=n.apply(void 0,[N()].concat(i));t(r)}catch(e){t(e,!0)}}function L(e,t){var n=e.pattern,i=e.buffer,o=r(n);o.pattern=n,t(Object(h.c)(I,i||d.a.fixed(),o))}function O(e,t){t(!!te.isCancelled)}function R(e,t){e.flush(t)}function M(e,t){t(Z[e])}function P(e,t){l.s.assign(Z,e),t()}var I=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){return l.r},j=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.r,N=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.r,W=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},H=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},z=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0,U=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"anonymous",V=arguments[8];Object(l.g)(e,l.n.iterator,g);var K=Object(l.k)(D,Object(l.w)("[...effects]","all([...effects])")),G=H.sagaMonitor,q=H.logger,Y=H.onError,Q=q||l.p,X=function(e){var t=e.sagaStack;!t&&e.stack&&(t=-1!==e.stack.split("\n")[0].indexOf(e.message)?e.stack:"Error: "+e.message+"\n"+e.stack),Q("error","uncaught at "+U,t||e.message||e)},J=Object(h.e)(I),Z=Object.create(W);p.cancel=l.r;var ee=function(e,t,r,o){var s,a,c;return r._deferredEnd=null,a={},a[l.e]=!0,a.id=e,a.name=t,s="done",c={},c[s]=c[s]||{},c[s].get=function(){if(r._deferredEnd)return r._deferredEnd.promise;var e=Object(l.i)();return r._deferredEnd=e,r._isRunning||(r._error?e.reject(r._error):e.resolve(r._result)),e.promise},a.cont=o,a.joiners=[],a.cancel=n,a.isRunning=function(){return r._isRunning},a.isCancelled=function(){return r._isCancelled},a.isAborted=function(){return r._isAborted},a.result=function(){return r._result},a.error=function(){return r._error},a.setContext=function(e){Object(l.g)(e,l.n.object,Object(l.h)("task",e)),l.s.assign(Z,e)},i(a,c),a}(z,U,e,V),te={name:U,cancel:t,isRunning:!0},ne=o(U,te,y);return V&&(V.cancel=n),e._isRunning=!0,p(),ee}t.a=a;var l=n(2),c=n(47),u=n(5),h=n(8),d=n(16),f=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},p="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},g="proc first argument (Saga function result) must be an iterator",m={toString:function(){return"@@redux-saga/CHANNEL_END"}},v={toString:function(){return"@@redux-saga/TASK_CANCEL"}},y={wildcard:function(){return l.o},default:function(e){return"symbol"===("undefined"===typeof e?"undefined":p(e))?function(t){return t.type===e}:function(t){return t.type===String(e)}},array:function(e){return function(t){return e.some(function(e){return r(e)(t)})}},predicate:function(e){return function(t){return e(t)}}},b=function(e){return{fn:e}}},function(e,t,n){"use strict";var i=n(107),r=n(108),o=n(109),s=n(2);n.d(t,"a",function(){return i.a}),n.d(t,"b",function(){return r.a}),n.d(t,"c",function(){return o.a});var a=function(e){return"import { "+e+" } from 'redux-saga' has been deprecated in favor of import { "+e+" } from 'redux-saga/effects'.\nThe latter will not work with yield*, as helper effects are wrapped automatically for you in fork effect.\nTherefore yield "+e+" will return task descriptor to your saga and execute next lines of code."};i.a,r.a,o.a},function(e,t,n){"use strict";var i=n(5);n.d(t,"d",function(){return i.h}),n.d(t,"b",function(){return i.f}),n.d(t,"a",function(){return i.e}),n.d(t,"c",function(){return i.g}),n.d(t,"e",function(){return i.i}),n.d(t,"f",function(){return i.j})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(117);n.d(t,"allowJsToRun",function(){return i.a});var r=n(118);n.d(t,"changeEditorText",function(){return r.a});var o=n(119);n.d(t,"changeFormField",function(){return o.a});var s=n(120);n.d(t,"display",function(){return s.a});var a=n(121);n.d(t,"loadFiles",function(){return a.a});var l=n(122);n.d(t,"markSyntaxErrors",function(){return l.a});var c=n(123);n.d(t,"inspectStage",function(){return c.a});var u=n(124);n.d(t,"runApp",function(){return u.a});var h=n(125);n.d(t,"submitForm",function(){return h.a})},function(e,t,n){"use strict";function i(e){return Object.keys(e.files).map(function(t){return{file:t,error:e.files[t].syntaxError}}).filter(function(e){return e.error})}t.a=i},function(e,t,n){!function(e,n){n(t)}(0,function(e){"use strict";function t(e,t){for(var n=65536,i=0;i<t.length;i+=2){if((n+=t[i])>e)return!1;if((n+=t[i+1])>=e)return!0}}function n(e,n){return e<65?36===e:e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&x.test(String.fromCharCode(e)):!1!==n&&t(e,S)))}function i(e,n){return e<48?36===e:e<58||!(e<65)&&(e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&k.test(String.fromCharCode(e)):!1!==n&&(t(e,S)||t(e,$)))))}function r(e,t){return new _(e,{beforeExpr:!0,binop:t})}function o(e,t){return void 0===t&&(t={}),t.keyword=e,T[e]=new _(e,t)}function s(e){return 10===e||13===e||8232===e||8233===e}function a(e){return"[object Array]"===Object.prototype.toString.call(e)}function l(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){for(var n=1,i=0;;){R.lastIndex=i;var r=R.exec(e);if(!(r&&r.index<t))return new I(n,t-i);++n,i=r.index+r[0].length}}function u(e){var t={};for(var n in N)t[n]=e&&l(e,n)?e[n]:N[n];if(t.ecmaVersion>=2015&&(t.ecmaVersion-=2009),null==t.allowReserved&&(t.allowReserved=t.ecmaVersion<5),a(t.onToken)){var i=t.onToken;t.onToken=function(e){return i.push(e)}}return a(t.onComment)&&(t.onComment=h(t,t.onComment)),t}function h(e,t){return function(n,i,r,o,s,a){var l={type:n?"Block":"Line",value:i,start:r,end:o};e.locations&&(l.loc=new j(this,s,a)),e.ranges&&(l.range=[r,o]),t.push(l)}}function d(e){return new RegExp("^("+e.replace(/ /g,"|")+")$")}function f(e,t,n,i){return e.type=t,e.end=n,this.options.locations&&(e.loc.end=i),this.options.ranges&&(e.range[1]=n),e}function p(e,t,n,i){try{return new RegExp(e,t)}catch(e){if(void 0!==n)throw e instanceof SyntaxError&&i.raise(n,"Error parsing regular expression: "+e.message),e}}function g(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function m(e,t){return new H(t,e).parse()}function v(e,t,n){var i=new H(n,e,t);return i.nextToken(),i.parseExpression()}function y(e,t){return new H(t,e)}function b(t,n,i){e.parse_dammit=t,e.LooseParser=n,e.pluginsLoose=i}var w={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},C="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",A={5:C,6:C+" const class extends export import super"},E="\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0-\u08b4\u08b6-\u08bd\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c88\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fd5\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7ae\ua7b0-\ua7b7\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab65\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc",F="\u200c\u200d\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08d4-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c03\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d01-\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf2-\u1cf4\u1cf8\u1cf9\u1dc0-\u1df5\u1dfb-\u1dff\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua900-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f",x=new RegExp("["+E+"]"),k=new RegExp("["+E+F+"]");E=F=null;var S=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,264,8,2,36,18,0,50,29,881,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,65,0,32,6124,20,754,9486,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,10591,541],$=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,7,0,161,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,87,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,838,7,2,7,17,9,57,21,2,13,19882,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239],_=function(e,t){void 0===t&&(t={}),this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=t.binop||null,this.updateContext=null},D={beforeExpr:!0},B={startsExpr:!0},T={},L={num:new _("num",B),regexp:new _("regexp",B),string:new _("string",B),name:new _("name",B),eof:new _("eof"),bracketL:new _("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new _("]"),braceL:new _("{",{beforeExpr:!0,startsExpr:!0}),braceR:new _("}"),parenL:new _("(",{beforeExpr:!0,startsExpr:!0}),parenR:new _(")"),comma:new _(",",D),semi:new _(";",D),colon:new _(":",D),dot:new _("."),question:new _("?",D),arrow:new _("=>",D),template:new _("template"),ellipsis:new _("...",D),backQuote:new _("`",B),dollarBraceL:new _("${",{beforeExpr:!0,startsExpr:!0}),eq:new _("=",{beforeExpr:!0,isAssign:!0}),assign:new _("_=",{beforeExpr:!0,isAssign:!0}),incDec:new _("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new _("prefix",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:r("||",1),logicalAND:r("&&",2),bitwiseOR:r("|",3),bitwiseXOR:r("^",4),bitwiseAND:r("&",5),equality:r("==/!=",6),relational:r("</>",7),bitShift:r("<</>>",8),plusMin:new _("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:r("%",10),star:r("*",10),slash:r("/",10),starstar:new _("**",{beforeExpr:!0}),_break:o("break"),_case:o("case",D),_catch:o("catch"),_continue:o("continue"),_debugger:o("debugger"),_default:o("default",D),_do:o("do",{isLoop:!0,beforeExpr:!0}),_else:o("else",D),_finally:o("finally"),_for:o("for",{isLoop:!0}),_function:o("function",B),_if:o("if"),_return:o("return",D),_switch:o("switch"),_throw:o("throw",D),_try:o("try"),_var:o("var"),_const:o("const"),_while:o("while",{isLoop:!0}),_with:o("with"),_new:o("new",{beforeExpr:!0,startsExpr:!0}),_this:o("this",B),_super:o("super",B),_class:o("class"),_extends:o("extends",D),_export:o("export"),_import:o("import"),_null:o("null",B),_true:o("true",B),_false:o("false",B),_in:o("in",{beforeExpr:!0,binop:7}),_instanceof:o("instanceof",{beforeExpr:!0,binop:7}),_typeof:o("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:o("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:o("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},O=/\r\n?|\n|\u2028|\u2029/,R=new RegExp(O.source,"g"),M=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/,P=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,I=function(e,t){this.line=e,this.column=t};I.prototype.offset=function(e){return new I(this.line,this.column+e)};var j=function(e,t,n){this.start=t,this.end=n,null!==e.sourceFile&&(this.source=e.sourceFile)},N={ecmaVersion:7,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowHashBang:!1,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1,plugins:{}},W={},H=function(e,t,n){this.options=e=u(e),this.sourceFile=e.sourceFile,this.keywords=d(A[e.ecmaVersion>=6?6:5]);var i="";if(!e.allowReserved){for(var r=e.ecmaVersion;!(i=w[r]);r--);"module"==e.sourceType&&(i+=" await")}this.reservedWords=d(i);var o=(i?i+" ":"")+w.strict;this.reservedWordsStrict=d(o),this.reservedWordsStrictBind=d(o+" "+w.strictBind),this.input=String(t),this.containsEsc=!1,this.loadPlugins(e.plugins),n?(this.pos=n,this.lineStart=this.input.lastIndexOf("\n",n-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(O).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=L.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===e.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.inFunction=this.inGenerator=this.inAsync=!1,this.yieldPos=this.awaitPos=0,this.labels=[],0===this.pos&&e.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2)};H.prototype.isKeyword=function(e){return this.keywords.test(e)},H.prototype.isReservedWord=function(e){return this.reservedWords.test(e)},H.prototype.extend=function(e,t){this[e]=t(this[e])},H.prototype.loadPlugins=function(e){var t=this;for(var n in e){var i=W[n];if(!i)throw new Error("Plugin '"+n+"' not found");i(t,e[n])}},H.prototype.parse=function(){var e=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(e)};var z=H.prototype,U=/^(?:'((?:[^\']|\.)*)'|"((?:[^\"]|\.)*)"|;)/;z.strictDirective=function(e){for(var t=this;;){P.lastIndex=e,e+=P.exec(t.input)[0].length;var n=U.exec(t.input.slice(e));if(!n)return!1;if("use strict"==(n[1]||n[2]))return!0;e+=n[0].length}},z.eat=function(e){return this.type===e&&(this.next(),!0)},z.isContextual=function(e){return this.type===L.name&&this.value===e},z.eatContextual=function(e){return this.value===e&&this.eat(L.name)},z.expectContextual=function(e){this.eatContextual(e)||this.unexpected()},z.canInsertSemicolon=function(){return this.type===L.eof||this.type===L.braceR||O.test(this.input.slice(this.lastTokEnd,this.start))},z.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},z.semicolon=function(){this.eat(L.semi)||this.insertSemicolon()||this.unexpected()},z.afterTrailingComma=function(e,t){if(this.type==e)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),t||this.next(),!0},z.expect=function(e){this.eat(e)||this.unexpected()},z.unexpected=function(e){this.raise(null!=e?e:this.start,"Unexpected token")};var V=function(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=-1};z.checkPatternErrors=function(e,t){if(e){e.trailingComma>-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var n=t?e.parenthesizedAssign:e.parenthesizedBind;n>-1&&this.raiseRecoverable(n,"Parenthesized pattern")}},z.checkExpressionErrors=function(e,t){var n=e?e.shorthandAssign:-1;if(!t)return n>=0;n>-1&&this.raise(n,"Shorthand property assignments are valid only in destructuring patterns")},z.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos<this.awaitPos)&&this.raise(this.yieldPos,"Yield expression cannot be a default value"),this.awaitPos&&this.raise(this.awaitPos,"Await expression cannot be a default value")},z.isSimpleAssignTarget=function(e){return"ParenthesizedExpression"===e.type?this.isSimpleAssignTarget(e.expression):"Identifier"===e.type||"MemberExpression"===e.type};var K=H.prototype;K.parseTopLevel=function(e){var t=this,n={};for(e.body||(e.body=[]);this.type!==L.eof;){var i=t.parseStatement(!0,!0,n);e.body.push(i)}return this.next(),this.options.ecmaVersion>=6&&(e.sourceType=this.options.sourceType),this.finishNode(e,"Program")};var G={kind:"loop"},q={kind:"switch"};K.isLet=function(){if(this.type!==L.name||this.options.ecmaVersion<6||"let"!=this.value)return!1;P.lastIndex=this.pos;var e=P.exec(this.input),t=this.pos+e[0].length,r=this.input.charCodeAt(t);if(91===r||123==r)return!0;if(n(r,!0)){for(var o=t+1;i(this.input.charCodeAt(o),!0);++o);var s=this.input.slice(t,o);if(!this.isKeyword(s))return!0}return!1},K.isAsyncFunction=function(){if(this.type!==L.name||this.options.ecmaVersion<8||"async"!=this.value)return!1;P.lastIndex=this.pos;var e=P.exec(this.input),t=this.pos+e[0].length;return!O.test(this.input.slice(this.pos,t))&&"function"===this.input.slice(t,t+8)&&(t+8==this.input.length||!i(this.input.charAt(t+8)))},K.parseStatement=function(e,t,n){var i,r=this.type,o=this.startNode();switch(this.isLet()&&(r=L._var,i="let"),r){case L._break:case L._continue:return this.parseBreakContinueStatement(o,r.keyword);case L._debugger:return this.parseDebuggerStatement(o);case L._do:return this.parseDoStatement(o);case L._for:return this.parseForStatement(o);case L._function:return!e&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(o,!1);case L._class:return e||this.unexpected(),this.parseClass(o,!0);case L._if:return this.parseIfStatement(o);case L._return:return this.parseReturnStatement(o);case L._switch:return this.parseSwitchStatement(o);case L._throw:return this.parseThrowStatement(o);case L._try:return this.parseTryStatement(o);case L._const:case L._var:return i=i||this.value,e||"var"==i||this.unexpected(),this.parseVarStatement(o,i);case L._while:return this.parseWhileStatement(o);case L._with:return this.parseWithStatement(o);case L.braceL:return this.parseBlock();case L.semi:return this.parseEmptyStatement(o);case L._export:case L._import:return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),r===L._import?this.parseImport(o):this.parseExport(o,n);default:if(this.isAsyncFunction()&&e)return this.next(),this.parseFunctionStatement(o,!0);var s=this.value,a=this.parseExpression();return r===L.name&&"Identifier"===a.type&&this.eat(L.colon)?this.parseLabeledStatement(o,s,a):this.parseExpressionStatement(o,a)}},K.parseBreakContinueStatement=function(e,t){var n=this,i="break"==t;this.next(),this.eat(L.semi)||this.insertSemicolon()?e.label=null:this.type!==L.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var r=0;r<this.labels.length;++r){var o=n.labels[r];if(null==e.label||o.name===e.label.name){if(null!=o.kind&&(i||"loop"===o.kind))break;if(e.label&&i)break}}return r===this.labels.length&&this.raise(e.start,"Unsyntactic "+t),this.finishNode(e,i?"BreakStatement":"ContinueStatement")},K.parseDebuggerStatement=function(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")},K.parseDoStatement=function(e){return this.next(),this.labels.push(G),e.body=this.parseStatement(!1),this.labels.pop(),this.expect(L._while),e.test=this.parseParenExpression(),this.options.ecmaVersion>=6?this.eat(L.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},K.parseForStatement=function(e){if(this.next(),this.labels.push(G),this.expect(L.parenL),this.type===L.semi)return this.parseFor(e,null);var t=this.isLet();if(this.type===L._var||this.type===L._const||t){var n=this.startNode(),i=t?"let":this.value;return this.next(),this.parseVar(n,!0,i),this.finishNode(n,"VariableDeclaration"),!(this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of"))||1!==n.declarations.length||"var"!==i&&n.declarations[0].init?this.parseFor(e,n):this.parseForIn(e,n)}var r=new V,o=this.parseExpression(!0,r);return this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.toAssignable(o),this.checkLVal(o),this.checkPatternErrors(r,!0),this.parseForIn(e,o)):(this.checkExpressionErrors(r,!0),this.parseFor(e,o))},K.parseFunctionStatement=function(e,t){return this.next(),this.parseFunction(e,!0,!1,t)},K.isFunction=function(){return this.type===L._function||this.isAsyncFunction()},K.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement(!this.strict&&this.isFunction()),e.alternate=this.eat(L._else)?this.parseStatement(!this.strict&&this.isFunction()):null,this.finishNode(e,"IfStatement")},K.parseReturnStatement=function(e){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(L.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},K.parseSwitchStatement=function(e){var t=this;this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(L.braceL),this.labels.push(q);for(var n,i=!1;this.type!=L.braceR;)if(t.type===L._case||t.type===L._default){var r=t.type===L._case;n&&t.finishNode(n,"SwitchCase"),e.cases.push(n=t.startNode()),n.consequent=[],t.next(),r?n.test=t.parseExpression():(i&&t.raiseRecoverable(t.lastTokStart,"Multiple default clauses"),i=!0,n.test=null),t.expect(L.colon)}else n||t.unexpected(),n.consequent.push(t.parseStatement(!0));return n&&this.finishNode(n,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},K.parseThrowStatement=function(e){return this.next(),O.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")};var Y=[];K.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===L._catch){var t=this.startNode();this.next(),this.expect(L.parenL),t.param=this.parseBindingAtom(),this.checkLVal(t.param,!0),this.expect(L.parenR),t.body=this.parseBlock(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(L._finally)?this.parseBlock():null,e.handler||e.finalizer||this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},K.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},K.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(G),e.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(e,"WhileStatement")},K.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement(!1),this.finishNode(e,"WithStatement")},K.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},K.parseLabeledStatement=function(e,t,n){for(var i=this,r=0;r<this.labels.length;++r)i.labels[r].name===t&&i.raise(n.start,"Label '"+t+"' is already declared");for(var o=this.type.isLoop?"loop":this.type===L._switch?"switch":null,s=this.labels.length-1;s>=0;s--){var a=i.labels[s];if(a.statementStart!=e.start)break;a.statementStart=i.start,a.kind=o}return this.labels.push({name:t,kind:o,statementStart:this.start}),e.body=this.parseStatement(!0),("ClassDeclaration"==e.body.type||"VariableDeclaration"==e.body.type&&(this.strict||"var"!=e.body.kind)||"FunctionDeclaration"==e.body.type&&(this.strict||e.body.generator))&&this.raiseRecoverable(e.body.start,"Invalid labeled declaration"),this.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")},K.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},K.parseBlock=function(){var e=this,t=this.startNode();for(t.body=[],this.expect(L.braceL);!this.eat(L.braceR);){var n=e.parseStatement(!0);t.body.push(n)}return this.finishNode(t,"BlockStatement")},K.parseFor=function(e,t){return e.init=t,this.expect(L.semi),e.test=this.type===L.semi?null:this.parseExpression(),this.expect(L.semi),e.update=this.type===L.parenR?null:this.parseExpression(),this.expect(L.parenR),e.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(e,"ForStatement")},K.parseForIn=function(e,t){var n=this.type===L._in?"ForInStatement":"ForOfStatement";return this.next(),e.left=t,e.right=this.parseExpression(),this.expect(L.parenR),e.body=this.parseStatement(!1),this.labels.pop(),this.finishNode(e,n)},K.parseVar=function(e,t,n){var i=this;for(e.declarations=[],e.kind=n;;){var r=i.startNode();if(i.parseVarId(r),i.eat(L.eq)?r.init=i.parseMaybeAssign(t):"const"!==n||i.type===L._in||i.options.ecmaVersion>=6&&i.isContextual("of")?"Identifier"==r.id.type||t&&(i.type===L._in||i.isContextual("of"))?r.init=null:i.raise(i.lastTokEnd,"Complex binding patterns require an initialization value"):i.unexpected(),e.declarations.push(i.finishNode(r,"VariableDeclarator")),!i.eat(L.comma))break}return e},K.parseVarId=function(e){e.id=this.parseBindingAtom(),this.checkLVal(e.id,!0)},K.parseFunction=function(e,t,n,i){this.initFunction(e),this.options.ecmaVersion>=6&&!i&&(e.generator=this.eat(L.star)),this.options.ecmaVersion>=8&&(e.async=!!i),null==t&&(t=this.type==L.name),t&&(e.id=this.parseIdent());var r=this.inGenerator,o=this.inAsync,s=this.yieldPos,a=this.awaitPos,l=this.inFunction;return this.inGenerator=e.generator,this.inAsync=e.async,this.yieldPos=0,this.awaitPos=0,this.inFunction=!0,t||this.type!==L.name||(e.id=this.parseIdent()),this.parseFunctionParams(e),this.parseFunctionBody(e,n),this.inGenerator=r,this.inAsync=o,this.yieldPos=s,this.awaitPos=a,this.inFunction=l,this.finishNode(e,t?"FunctionDeclaration":"FunctionExpression")},K.parseFunctionParams=function(e){this.expect(L.parenL),e.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8,!0),this.checkYieldAwaitInDefaultParams()},K.parseClass=function(e,t){var n=this;this.next(),null==t&&(t=this.type===L.name),this.parseClassId(e,t),this.parseClassSuper(e);var i=this.startNode(),r=!1;for(i.body=[],this.expect(L.braceL);!this.eat(L.braceR);)if(!n.eat(L.semi)){var o=n.startNode(),s=n.eat(L.star),a=!1,l=n.type===L.name&&"static"===n.value;n.parsePropertyName(o),o.static=l&&n.type!==L.parenL,o.static&&(s&&n.unexpected(),s=n.eat(L.star),n.parsePropertyName(o)),n.options.ecmaVersion>=8&&!s&&!o.computed&&"Identifier"===o.key.type&&"async"===o.key.name&&n.type!==L.parenL&&!n.canInsertSemicolon()&&(a=!0,n.parsePropertyName(o)),o.kind="method";var c=!1;if(!o.computed){var u=o.key;s||a||"Identifier"!==u.type||n.type===L.parenL||"get"!==u.name&&"set"!==u.name||(c=!0,o.kind=u.name,u=n.parsePropertyName(o)),!o.static&&("Identifier"===u.type&&"constructor"===u.name||"Literal"===u.type&&"constructor"===u.value)&&(r&&n.raise(u.start,"Duplicate constructor in the same class"),c&&n.raise(u.start,"Constructor can't have get/set modifier"),s&&n.raise(u.start,"Constructor can't be a generator"),a&&n.raise(u.start,"Constructor can't be an async method"),o.kind="constructor",r=!0)}if(n.parseClassMethod(i,o,s,a),c){var h="get"===o.kind?0:1;if(o.value.params.length!==h){var d=o.value.start;"get"===o.kind?n.raiseRecoverable(d,"getter should have no params"):n.raiseRecoverable(d,"setter should have exactly one param")}else"set"===o.kind&&"RestElement"===o.value.params[0].type&&n.raiseRecoverable(o.value.params[0].start,"Setter cannot use rest params")}}return e.body=this.finishNode(i,"ClassBody"),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},K.parseClassMethod=function(e,t,n,i){t.value=this.parseMethod(n,i),e.body.push(this.finishNode(t,"MethodDefinition"))},K.parseClassId=function(e,t){e.id=this.type===L.name?this.parseIdent():t?this.unexpected():null},K.parseClassSuper=function(e){e.superClass=this.eat(L._extends)?this.parseExprSubscripts():null},K.parseExport=function(e,t){var n=this;if(this.next(),this.eat(L.star))return this.expectContextual("from"),e.source=this.type===L.string?this.parseExprAtom():this.unexpected(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(L._default)){this.checkExport(t,"default",this.lastTokStart);var i;if(this.type===L._function||(i=this.isAsyncFunction())){var r=this.startNode();this.next(),i&&this.next(),e.declaration=this.parseFunction(r,null,!1,i)}else if(this.type===L._class){var o=this.startNode();e.declaration=this.parseClass(o,null)}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(!0),"VariableDeclaration"===e.declaration.type?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id.name,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))e.source=this.type===L.string?this.parseExprAtom():this.unexpected();else{for(var s=0;s<e.specifiers.length;s++)(n.keywords.test(e.specifiers[s].local.name)||n.reservedWords.test(e.specifiers[s].local.name))&&n.unexpected(e.specifiers[s].local.start);e.source=null}this.semicolon()}return this.finishNode(e,"ExportNamedDeclaration")},K.checkExport=function(e,t,n){e&&(Object.prototype.hasOwnProperty.call(e,t)&&this.raiseRecoverable(n,"Duplicate export '"+t+"'"),e[t]=!0)},K.checkPatternExport=function(e,t){var n=this,i=t.type;if("Identifier"==i)this.checkExport(e,t.name,t.start);else if("ObjectPattern"==i)for(var r=0;r<t.properties.length;++r)n.checkPatternExport(e,t.properties[r].value);else if("ArrayPattern"==i)for(var o=0;o<t.elements.length;++o){var s=t.elements[o];s&&n.checkPatternExport(e,s)}else"AssignmentPattern"==i?this.checkPatternExport(e,t.left):"ParenthesizedExpression"==i&&this.checkPatternExport(e,t.expression)},K.checkVariableExport=function(e,t){var n=this;if(e)for(var i=0;i<t.length;i++)n.checkPatternExport(e,t[i].id)},K.shouldParseExportStatement=function(){return"var"===this.type.keyword||"const"===this.type.keyword||"class"===this.type.keyword||"function"===this.type.keyword||this.isLet()||this.isAsyncFunction()},K.parseExportSpecifiers=function(e){var t=this,n=[],i=!0;for(this.expect(L.braceL);!this.eat(L.braceR);){if(i)i=!1;else if(t.expect(L.comma),t.afterTrailingComma(L.braceR))break;var r=t.startNode();r.local=t.parseIdent(!0),r.exported=t.eatContextual("as")?t.parseIdent(!0):r.local,t.checkExport(e,r.exported.name,r.exported.start),n.push(t.finishNode(r,"ExportSpecifier"))}return n},K.parseImport=function(e){return this.next(),this.type===L.string?(e.specifiers=Y,e.source=this.parseExprAtom()):(e.specifiers=this.parseImportSpecifiers(),this.expectContextual("from"),e.source=this.type===L.string?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(e,"ImportDeclaration")},K.parseImportSpecifiers=function(){var e=this,t=[],n=!0;if(this.type===L.name){var i=this.startNode();if(i.local=this.parseIdent(),this.checkLVal(i.local,!0),t.push(this.finishNode(i,"ImportDefaultSpecifier")),!this.eat(L.comma))return t}if(this.type===L.star){var r=this.startNode();return this.next(),this.expectContextual("as"),r.local=this.parseIdent(),this.checkLVal(r.local,!0),t.push(this.finishNode(r,"ImportNamespaceSpecifier")),t}for(this.expect(L.braceL);!this.eat(L.braceR);){if(n)n=!1;else if(e.expect(L.comma),e.afterTrailingComma(L.braceR))break;var o=e.startNode();o.imported=e.parseIdent(!0),e.eatContextual("as")?o.local=e.parseIdent():(o.local=o.imported,e.isKeyword(o.local.name)&&e.unexpected(o.local.start),e.reservedWordsStrict.test(o.local.name)&&e.raiseRecoverable(o.local.start,"The keyword '"+o.local.name+"' is reserved")),e.checkLVal(o.local,!0),t.push(e.finishNode(o,"ImportSpecifier"))}return t};var Q=H.prototype;Q.toAssignable=function(e,t){var n=this;if(this.options.ecmaVersion>=6&&e)switch(e.type){case"Identifier":this.inAsync&&"await"===e.name&&this.raise(e.start,"Can not use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":break;case"ObjectExpression":e.type="ObjectPattern";for(var i=0;i<e.properties.length;i++){var r=e.properties[i];"init"!==r.kind&&n.raise(r.key.start,"Object pattern can't contain getter or setter"),n.toAssignable(r.value,t)}break;case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,t);break;case"AssignmentExpression":if("="!==e.operator){this.raise(e.left.end,"Only '=' operator can be used for specifying default value.");break}e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);case"AssignmentPattern":break;case"ParenthesizedExpression":e.expression=this.toAssignable(e.expression,t);break;case"MemberExpression":if(!t)break;default:this.raise(e.start,"Assigning to rvalue")}return e},Q.toAssignableList=function(e,t){var n=this,i=e.length;if(i){var r=e[i-1];if(r&&"RestElement"==r.type)--i;else if(r&&"SpreadElement"==r.type){r.type="RestElement";var o=r.argument;this.toAssignable(o,t),"Identifier"!==o.type&&"MemberExpression"!==o.type&&"ArrayPattern"!==o.type&&this.unexpected(o.start),--i}t&&r&&"RestElement"===r.type&&"Identifier"!==r.argument.type&&this.unexpected(r.argument.start)}for(var s=0;s<i;s++){var a=e[s];a&&n.toAssignable(a,t)}return e},Q.parseSpread=function(e){var t=this.startNode();return this.next(),t.argument=this.parseMaybeAssign(!1,e),this.finishNode(t,"SpreadElement")},Q.parseRest=function(e){var t=this.startNode();return this.next(),t.argument=e?this.type===L.name?this.parseIdent():this.unexpected():this.type===L.name||this.type===L.bracketL?this.parseBindingAtom():this.unexpected(),this.finishNode(t,"RestElement")},Q.parseBindingAtom=function(){if(this.options.ecmaVersion<6)return this.parseIdent();switch(this.type){case L.name:return this.parseIdent();case L.bracketL:var e=this.startNode();return this.next(),e.elements=this.parseBindingList(L.bracketR,!0,!0),this.finishNode(e,"ArrayPattern");case L.braceL:return this.parseObj(!0);default:this.unexpected()}},Q.parseBindingList=function(e,t,n,i){for(var r=this,o=[],s=!0;!this.eat(e);)if(s?s=!1:r.expect(L.comma),t&&r.type===L.comma)o.push(null);else{if(n&&r.afterTrailingComma(e))break;if(r.type===L.ellipsis){var a=r.parseRest(i);r.parseBindingListItem(a),o.push(a),r.type===L.comma&&r.raise(r.start,"Comma is not permitted after the rest element"),r.expect(e);break}var l=r.parseMaybeDefault(r.start,r.startLoc);r.parseBindingListItem(l),o.push(l)}return o},Q.parseBindingListItem=function(e){return e},Q.parseMaybeDefault=function(e,t,n){if(n=n||this.parseBindingAtom(),this.options.ecmaVersion<6||!this.eat(L.eq))return n;var i=this.startNodeAt(e,t);return i.left=n,i.right=this.parseMaybeAssign(),this.finishNode(i,"AssignmentPattern")},Q.checkLVal=function(e,t,n){var i=this;switch(e.type){case"Identifier":this.strict&&this.reservedWordsStrictBind.test(e.name)&&this.raiseRecoverable(e.start,(t?"Binding ":"Assigning to ")+e.name+" in strict mode"),n&&(l(n,e.name)&&this.raiseRecoverable(e.start,"Argument name clash"),n[e.name]=!0);break;case"MemberExpression":t&&this.raiseRecoverable(e.start,(t?"Binding":"Assigning to")+" member expression");break;case"ObjectPattern":for(var r=0;r<e.properties.length;r++)i.checkLVal(e.properties[r].value,t,n);break;case"ArrayPattern":for(var o=0;o<e.elements.length;o++){var s=e.elements[o];s&&i.checkLVal(s,t,n)}break;case"AssignmentPattern":this.checkLVal(e.left,t,n);break;case"RestElement":this.checkLVal(e.argument,t,n);break;case"ParenthesizedExpression":this.checkLVal(e.expression,t,n);break;default:this.raise(e.start,(t?"Binding":"Assigning to")+" rvalue")}};var X=H.prototype;X.checkPropClash=function(e,t){if(!(this.options.ecmaVersion>=6&&(e.computed||e.method||e.shorthand))){var n,i=e.key;switch(i.type){case"Identifier":n=i.name;break;case"Literal":n=String(i.value);break;default:return}var r=e.kind;if(this.options.ecmaVersion>=6)return void("__proto__"===n&&"init"===r&&(t.proto&&this.raiseRecoverable(i.start,"Redefinition of __proto__ property"),t.proto=!0));n="$"+n;var o=t[n];if(o){var s="init"!==r;(!this.strict&&!s||!o[r])&&s^o.init||this.raiseRecoverable(i.start,"Redefinition of property")}else o=t[n]={init:!1,get:!1,set:!1};o[r]=!0}},X.parseExpression=function(e,t){var n=this,i=this.start,r=this.startLoc,o=this.parseMaybeAssign(e,t);if(this.type===L.comma){var s=this.startNodeAt(i,r);for(s.expressions=[o];this.eat(L.comma);)s.expressions.push(n.parseMaybeAssign(e,t));return this.finishNode(s,"SequenceExpression")}return o},X.parseMaybeAssign=function(e,t,n){if(this.inGenerator&&this.isContextual("yield"))return this.parseYield();var i=!1,r=-1;t?(r=t.parenthesizedAssign,t.parenthesizedAssign=-1):(t=new V,i=!0);var o=this.start,s=this.startLoc;this.type!=L.parenL&&this.type!=L.name||(this.potentialArrowAt=this.start);var a=this.parseMaybeConditional(e,t);if(n&&(a=n.call(this,a,o,s)),this.type.isAssign){this.checkPatternErrors(t,!0),i||V.call(t);var l=this.startNodeAt(o,s);return l.operator=this.value,l.left=this.type===L.eq?this.toAssignable(a):a,t.shorthandAssign=-1,this.checkLVal(a),this.next(),l.right=this.parseMaybeAssign(e),this.finishNode(l,"AssignmentExpression")}return i&&this.checkExpressionErrors(t,!0),r>-1&&(t.parenthesizedAssign=r),a},X.parseMaybeConditional=function(e,t){var n=this.start,i=this.startLoc,r=this.parseExprOps(e,t);if(this.checkExpressionErrors(t))return r;if(this.eat(L.question)){var o=this.startNodeAt(n,i);return o.test=r,o.consequent=this.parseMaybeAssign(),this.expect(L.colon),o.alternate=this.parseMaybeAssign(e),this.finishNode(o,"ConditionalExpression")}return r},X.parseExprOps=function(e,t){var n=this.start,i=this.startLoc,r=this.parseMaybeUnary(t,!1);return this.checkExpressionErrors(t)?r:this.parseExprOp(r,n,i,-1,e)},X.parseExprOp=function(e,t,n,i,r){var o=this.type.binop;if(null!=o&&(!r||this.type!==L._in)&&o>i){var s=this.type===L.logicalOR||this.type===L.logicalAND,a=this.value;this.next();var l=this.start,c=this.startLoc,u=this.parseExprOp(this.parseMaybeUnary(null,!1),l,c,o,r),h=this.buildBinary(t,n,e,u,a,s);return this.parseExprOp(h,t,n,i,r)}return e},X.buildBinary=function(e,t,n,i,r,o){var s=this.startNodeAt(e,t);return s.left=n,s.operator=r,s.right=i,this.finishNode(s,o?"LogicalExpression":"BinaryExpression")},X.parseMaybeUnary=function(e,t){var n,i=this,r=this.start,o=this.startLoc;if(this.inAsync&&this.isContextual("await"))n=this.parseAwait(e),t=!0;else if(this.type.prefix){var s=this.startNode(),a=this.type===L.incDec;s.operator=this.value,s.prefix=!0,this.next(),s.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),a?this.checkLVal(s.argument):this.strict&&"delete"===s.operator&&"Identifier"===s.argument.type?this.raiseRecoverable(s.start,"Deleting local variable in strict mode"):t=!0,n=this.finishNode(s,a?"UpdateExpression":"UnaryExpression")}else{if(n=this.parseExprSubscripts(e),this.checkExpressionErrors(e))return n;for(;this.type.postfix&&!this.canInsertSemicolon();){var l=i.startNodeAt(r,o);l.operator=i.value,l.prefix=!1,l.argument=n,i.checkLVal(n),i.next(),n=i.finishNode(l,"UpdateExpression")}}return!t&&this.eat(L.starstar)?this.buildBinary(r,o,n,this.parseMaybeUnary(null,!1),"**",!1):n},X.parseExprSubscripts=function(e){var t=this.start,n=this.startLoc,i=this.parseExprAtom(e),r="ArrowFunctionExpression"===i.type&&")"!==this.input.slice(this.lastTokStart,this.lastTokEnd);if(this.checkExpressionErrors(e)||r)return i;var o=this.parseSubscripts(i,t,n);return e&&"MemberExpression"===o.type&&(e.parenthesizedAssign>=o.start&&(e.parenthesizedAssign=-1),e.parenthesizedBind>=o.start&&(e.parenthesizedBind=-1)),o},X.parseSubscripts=function(e,t,n,i){for(var r,o=this,s=this.options.ecmaVersion>=8&&"Identifier"===e.type&&"async"===e.name&&this.lastTokEnd==e.end&&!this.canInsertSemicolon();;)if((r=o.eat(L.bracketL))||o.eat(L.dot)){var a=o.startNodeAt(t,n);a.object=e,a.property=r?o.parseExpression():o.parseIdent(!0),a.computed=!!r,r&&o.expect(L.bracketR),e=o.finishNode(a,"MemberExpression")}else if(!i&&o.eat(L.parenL)){var l=new V,c=o.yieldPos,u=o.awaitPos;o.yieldPos=0,o.awaitPos=0;var h=o.parseExprList(L.parenR,o.options.ecmaVersion>=8,!1,l);if(s&&!o.canInsertSemicolon()&&o.eat(L.arrow))return o.checkPatternErrors(l,!1),o.checkYieldAwaitInDefaultParams(),o.yieldPos=c,o.awaitPos=u,o.parseArrowExpression(o.startNodeAt(t,n),h,!0);o.checkExpressionErrors(l,!0),o.yieldPos=c||o.yieldPos,o.awaitPos=u||o.awaitPos;var d=o.startNodeAt(t,n);d.callee=e,d.arguments=h,e=o.finishNode(d,"CallExpression")}else{if(o.type!==L.backQuote)return e;var f=o.startNodeAt(t,n);f.tag=e,f.quasi=o.parseTemplate(),e=o.finishNode(f,"TaggedTemplateExpression")}},X.parseExprAtom=function(e){var t,n=this.potentialArrowAt==this.start;switch(this.type){case L._super:this.inFunction||this.raise(this.start,"'super' outside of function or class");case L._this:var i=this.type===L._this?"ThisExpression":"Super";return t=this.startNode(),this.next(),this.finishNode(t,i);case L.name:var r=this.start,o=this.startLoc,s=this.parseIdent(this.type!==L.name);if(this.options.ecmaVersion>=8&&"async"===s.name&&!this.canInsertSemicolon()&&this.eat(L._function))return this.parseFunction(this.startNodeAt(r,o),!1,!1,!0);if(n&&!this.canInsertSemicolon()){if(this.eat(L.arrow))return this.parseArrowExpression(this.startNodeAt(r,o),[s],!1);if(this.options.ecmaVersion>=8&&"async"===s.name&&this.type===L.name)return s=this.parseIdent(),!this.canInsertSemicolon()&&this.eat(L.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(r,o),[s],!0)}return s;case L.regexp:var a=this.value;return t=this.parseLiteral(a.value),t.regex={pattern:a.pattern,flags:a.flags},t;case L.num:case L.string:return this.parseLiteral(this.value);case L._null:case L._true:case L._false:return t=this.startNode(),t.value=this.type===L._null?null:this.type===L._true,t.raw=this.type.keyword,this.next(),this.finishNode(t,"Literal");case L.parenL:var l=this.start,c=this.parseParenAndDistinguishExpression(n);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(c)&&(e.parenthesizedAssign=l),e.parenthesizedBind<0&&(e.parenthesizedBind=l)),c;case L.bracketL:return t=this.startNode(),this.next(),t.elements=this.parseExprList(L.bracketR,!0,!0,e),this.finishNode(t,"ArrayExpression");case L.braceL:return this.parseObj(!1,e);case L._function:return t=this.startNode(),this.next(),this.parseFunction(t,!1);case L._class:return this.parseClass(this.startNode(),!1);case L._new:return this.parseNew();case L.backQuote:return this.parseTemplate();default:this.unexpected()}},X.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.input.slice(this.start,this.end),this.next(),this.finishNode(t,"Literal")},X.parseParenExpression=function(){this.expect(L.parenL);var e=this.parseExpression();return this.expect(L.parenR),e},X.parseParenAndDistinguishExpression=function(e){var t,n=this,i=this.start,r=this.startLoc,o=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var s,a,l=this.start,c=this.startLoc,u=[],h=!0,d=!1,f=new V,p=this.yieldPos,g=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==L.parenR;){if(h?h=!1:n.expect(L.comma),o&&n.afterTrailingComma(L.parenR,!0)){d=!0;break}if(n.type===L.ellipsis){s=n.start,u.push(n.parseParenItem(n.parseRest())),n.type===L.comma&&n.raise(n.start,"Comma is not permitted after the rest element");break}n.type!==L.parenL||a||(a=n.start),u.push(n.parseMaybeAssign(!1,f,n.parseParenItem))}var m=this.start,v=this.startLoc;if(this.expect(L.parenR),e&&!this.canInsertSemicolon()&&this.eat(L.arrow))return this.checkPatternErrors(f,!1),this.checkYieldAwaitInDefaultParams(),a&&this.unexpected(a),this.yieldPos=p,this.awaitPos=g,this.parseParenArrowList(i,r,u);u.length&&!d||this.unexpected(this.lastTokStart),s&&this.unexpected(s),this.checkExpressionErrors(f,!0),this.yieldPos=p||this.yieldPos,this.awaitPos=g||this.awaitPos,u.length>1?(t=this.startNodeAt(l,c),t.expressions=u,this.finishNodeAt(t,"SequenceExpression",m,v)):t=u[0]}else t=this.parseParenExpression();if(this.options.preserveParens){var y=this.startNodeAt(i,r);return y.expression=t,this.finishNode(y,"ParenthesizedExpression")}return t},X.parseParenItem=function(e){return e},X.parseParenArrowList=function(e,t,n){return this.parseArrowExpression(this.startNodeAt(e,t),n)};var J=[];X.parseNew=function(){var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(L.dot))return e.meta=t,e.property=this.parseIdent(!0),"target"!==e.property.name&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is new.target"),this.inFunction||this.raiseRecoverable(e.start,"new.target can only be used in functions"),this.finishNode(e,"MetaProperty");var n=this.start,i=this.startLoc;return e.callee=this.parseSubscripts(this.parseExprAtom(),n,i,!0),this.eat(L.parenL)?e.arguments=this.parseExprList(L.parenR,this.options.ecmaVersion>=8,!1):e.arguments=J,this.finishNode(e,"NewExpression")},X.parseTemplateElement=function(){var e=this.startNode();return e.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),e.tail=this.type===L.backQuote,this.finishNode(e,"TemplateElement")},X.parseTemplate=function(){var e=this,t=this.startNode();this.next(),t.expressions=[];var n=this.parseTemplateElement();for(t.quasis=[n];!n.tail;)e.expect(L.dollarBraceL),t.expressions.push(e.parseExpression()),e.expect(L.braceR),t.quasis.push(n=e.parseTemplateElement());return this.next(),this.finishNode(t,"TemplateLiteral")},X.parseObj=function(e,t){var n=this,i=this.startNode(),r=!0,o={};for(i.properties=[],this.next();!this.eat(L.braceR);){if(r)r=!1;else if(n.expect(L.comma),n.afterTrailingComma(L.braceR))break;var s,a,l,c,u=n.startNode();n.options.ecmaVersion>=6&&(u.method=!1,u.shorthand=!1,(e||t)&&(l=n.start,c=n.startLoc),e||(s=n.eat(L.star))),n.parsePropertyName(u),e||!(n.options.ecmaVersion>=8)||s||u.computed||"Identifier"!==u.key.type||"async"!==u.key.name||n.type===L.parenL||n.type===L.colon||n.canInsertSemicolon()?a=!1:(a=!0,n.parsePropertyName(u,t)),n.parsePropertyValue(u,e,s,a,l,c,t),n.checkPropClash(u,o),i.properties.push(n.finishNode(u,"Property"))}return this.finishNode(i,e?"ObjectPattern":"ObjectExpression")},X.parsePropertyValue=function(e,t,n,i,r,o,s){if((n||i)&&this.type===L.colon&&this.unexpected(),this.eat(L.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,s),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===L.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(n,i);else if(this.options.ecmaVersion>=5&&!e.computed&&"Identifier"===e.key.type&&("get"===e.key.name||"set"===e.key.name)&&this.type!=L.comma&&this.type!=L.braceR){(n||i||t)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var a="get"===e.kind?0:1;if(e.value.params.length!==a){var l=e.value.start;"get"===e.kind?this.raiseRecoverable(l,"getter should have no params"):this.raiseRecoverable(l,"setter should have exactly one param")}else"set"===e.kind&&"RestElement"===e.value.params[0].type&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}else this.options.ecmaVersion>=6&&!e.computed&&"Identifier"===e.key.type?((this.keywords.test(e.key.name)||(this.strict?this.reservedWordsStrict:this.reservedWords).test(e.key.name)||this.inGenerator&&"yield"==e.key.name||this.inAsync&&"await"==e.key.name)&&this.raiseRecoverable(e.key.start,"'"+e.key.name+"' can not be used as shorthand property"),e.kind="init",t?e.value=this.parseMaybeDefault(r,o,e.key):this.type===L.eq&&s?(s.shorthandAssign<0&&(s.shorthandAssign=this.start),e.value=this.parseMaybeDefault(r,o,e.key)):e.value=e.key,e.shorthand=!0):this.unexpected()},X.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(L.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(L.bracketR),e.key;e.computed=!1}return e.key=this.type===L.num||this.type===L.string?this.parseExprAtom():this.parseIdent(!0)},X.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=!1,e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},X.parseMethod=function(e,t){var n=this.startNode(),i=this.inGenerator,r=this.inAsync,o=this.yieldPos,s=this.awaitPos,a=this.inFunction;return this.initFunction(n),this.options.ecmaVersion>=6&&(n.generator=e),this.options.ecmaVersion>=8&&(n.async=!!t),this.inGenerator=n.generator,this.inAsync=n.async,this.yieldPos=0,this.awaitPos=0,this.inFunction=!0,this.expect(L.parenL),n.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(n,!1),this.inGenerator=i,this.inAsync=r,this.yieldPos=o,this.awaitPos=s,this.inFunction=a,this.finishNode(n,"FunctionExpression")},X.parseArrowExpression=function(e,t,n){var i=this.inGenerator,r=this.inAsync,o=this.yieldPos,s=this.awaitPos,a=this.inFunction;return this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!n),this.inGenerator=!1,this.inAsync=e.async,this.yieldPos=0,this.awaitPos=0,this.inFunction=!0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0),this.inGenerator=i,this.inAsync=r,this.yieldPos=o,this.awaitPos=s,this.inFunction=a,this.finishNode(e,"ArrowFunctionExpression")},X.parseFunctionBody=function(e,t){var n=t&&this.type!==L.braceL,i=this.strict,r=!1;if(n)e.body=this.parseMaybeAssign(),e.expression=!0;else{var o=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);i&&!o||(r=this.strictDirective(this.end))&&o&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list");var s=this.labels;this.labels=[],r&&(this.strict=!0),e.body=this.parseBlock(!0),e.expression=!1,this.labels=s}i||r?(this.strict=!0,e.id&&this.checkLVal(e.id,!0),this.checkParams(e),this.strict=i):!t&&this.isSimpleParamList(e.params)||this.checkParams(e)},X.isSimpleParamList=function(e){for(var t=0;t<e.length;t++)if("Identifier"!==e[t].type)return!1;return!0},X.checkParams=function(e){for(var t=this,n={},i=0;i<e.params.length;i++)t.checkLVal(e.params[i],!0,n)},X.parseExprList=function(e,t,n,i){for(var r=this,o=[],s=!0;!this.eat(e);){if(s)s=!1;else if(r.expect(L.comma),t&&r.afterTrailingComma(e))break;var a;n&&r.type===L.comma?a=null:r.type===L.ellipsis?(a=r.parseSpread(i),i&&r.type===L.comma&&i.trailingComma<0&&(i.trailingComma=r.start)):a=r.parseMaybeAssign(!1,i),o.push(a)}return o},X.parseIdent=function(e){var t=this.startNode();return e&&"never"==this.options.allowReserved&&(e=!1),this.type===L.name?(!e&&(this.strict?this.reservedWordsStrict:this.reservedWords).test(this.value)&&(this.options.ecmaVersion>=6||-1==this.input.slice(this.start,this.end).indexOf("\\"))&&this.raiseRecoverable(this.start,"The keyword '"+this.value+"' is reserved"),this.inGenerator&&"yield"===this.value&&this.raiseRecoverable(this.start,"Can not use 'yield' as identifier inside a generator"),this.inAsync&&"await"===this.value&&this.raiseRecoverable(this.start,"Can not use 'await' as identifier inside an async function"),t.name=this.value):e&&this.type.keyword?t.name=this.type.keyword:this.unexpected(),this.next(),this.finishNode(t,"Identifier")},X.parseYield=function(){this.yieldPos||(this.yieldPos=this.start);var e=this.startNode();return this.next(),this.type==L.semi||this.canInsertSemicolon()||this.type!=L.star&&!this.type.startsExpr?(e.delegate=!1,e.argument=null):(e.delegate=this.eat(L.star),e.argument=this.parseMaybeAssign()),this.finishNode(e,"YieldExpression")},X.parseAwait=function(){this.awaitPos||(this.awaitPos=this.start);var e=this.startNode();return this.next(),e.argument=this.parseMaybeUnary(null,!0),this.finishNode(e,"AwaitExpression")};var Z=H.prototype;Z.raise=function(e,t){var n=c(this.input,e);t+=" ("+n.line+":"+n.column+")";var i=new SyntaxError(t);throw i.pos=e,i.loc=n,i.raisedAt=this.pos,i},Z.raiseRecoverable=Z.raise,Z.curPosition=function(){if(this.options.locations)return new I(this.curLine,this.pos-this.lineStart)};var ee=function(e,t,n){this.type="",this.start=t,this.end=0,e.options.locations&&(this.loc=new j(e,n)),e.options.directSourceFile&&(this.sourceFile=e.options.directSourceFile),e.options.ranges&&(this.range=[t,0])},te=H.prototype;te.startNode=function(){return new ee(this,this.start,this.startLoc)},te.startNodeAt=function(e,t){return new ee(this,e,t)},te.finishNode=function(e,t){return f.call(this,e,t,this.lastTokEnd,this.lastTokEndLoc)},te.finishNodeAt=function(e,t,n,i){return f.call(this,e,t,n,i)};var ne=function(e,t,n,i){this.token=e,this.isExpr=!!t,this.preserveSpace=!!n,this.override=i},ie={b_stat:new ne("{",!1),b_expr:new ne("{",!0),b_tmpl:new ne("${",!0),p_stat:new ne("(",!1),p_expr:new ne("(",!0),q_tmpl:new ne("`",!0,!0,function(e){return e.readTmplToken()}),f_expr:new ne("function",!0)},re=H.prototype;re.initialContext=function(){return[ie.b_stat]},re.braceIsBlock=function(e){if(e===L.colon){var t=this.curContext();if(t===ie.b_stat||t===ie.b_expr)return!t.isExpr}return e===L._return?O.test(this.input.slice(this.lastTokEnd,this.start)):e===L._else||e===L.semi||e===L.eof||e===L.parenR||(e==L.braceL?this.curContext()===ie.b_stat:!this.exprAllowed)},re.updateContext=function(e){var t,n=this.type;n.keyword&&e==L.dot?this.exprAllowed=!1:(t=n.updateContext)?t.call(this,e):this.exprAllowed=n.beforeExpr},L.parenR.updateContext=L.braceR.updateContext=function(){if(1==this.context.length)return void(this.exprAllowed=!0);var e=this.context.pop();e===ie.b_stat&&this.curContext()===ie.f_expr?(this.context.pop(),this.exprAllowed=!1):this.exprAllowed=e===ie.b_tmpl||!e.isExpr},L.braceL.updateContext=function(e){this.context.push(this.braceIsBlock(e)?ie.b_stat:ie.b_expr),this.exprAllowed=!0},L.dollarBraceL.updateContext=function(){this.context.push(ie.b_tmpl),this.exprAllowed=!0},L.parenL.updateContext=function(e){var t=e===L._if||e===L._for||e===L._with||e===L._while;this.context.push(t?ie.p_stat:ie.p_expr),this.exprAllowed=!0},L.incDec.updateContext=function(){},L._function.updateContext=function(e){e.beforeExpr&&e!==L.semi&&e!==L._else&&(e!==L.colon&&e!==L.braceL||this.curContext()!==ie.b_stat)&&this.context.push(ie.f_expr),this.exprAllowed=!1},L.backQuote.updateContext=function(){this.curContext()===ie.q_tmpl?this.context.pop():this.context.push(ie.q_tmpl),this.exprAllowed=!1};var oe=function(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,e.options.locations&&(this.loc=new j(e,e.startLoc,e.endLoc)),e.options.ranges&&(this.range=[e.start,e.end])},se=H.prototype,ae="object"==typeof Packages&&"[object JavaPackage]"==Object.prototype.toString.call(Packages);se.next=function(){this.options.onToken&&this.options.onToken(new oe(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},se.getToken=function(){return this.next(),new oe(this)},"undefined"!==typeof Symbol&&(se[Symbol.iterator]=function(){var e=this;return{next:function(){var t=e.getToken();return{done:t.type===L.eof,value:t}}}}),se.curContext=function(){return this.context[this.context.length-1]},se.nextToken=function(){var e=this.curContext();return e&&e.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(L.eof):e.override?e.override(this):void this.readToken(this.fullCharCodeAtPos())},se.readToken=function(e){return n(e,this.options.ecmaVersion>=6)||92===e?this.readWord():this.getTokenFromCode(e)},se.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);return e<=55295||e>=57344?e:(e<<10)+this.input.charCodeAt(this.pos+1)-56613888},se.skipBlockComment=function(){var e=this,t=this.options.onComment&&this.curPosition(),n=this.pos,i=this.input.indexOf("*/",this.pos+=2);if(-1===i&&this.raise(this.pos-2,"Unterminated comment"),this.pos=i+2,this.options.locations){R.lastIndex=n;for(var r;(r=R.exec(this.input))&&r.index<this.pos;)++e.curLine,e.lineStart=r.index+r[0].length}this.options.onComment&&this.options.onComment(!0,this.input.slice(n+2,i),n,this.pos,t,this.curPosition())},se.skipLineComment=function(e){for(var t=this,n=this.pos,i=this.options.onComment&&this.curPosition(),r=this.input.charCodeAt(this.pos+=e);this.pos<this.input.length&&10!==r&&13!==r&&8232!==r&&8233!==r;)++t.pos,r=t.input.charCodeAt(t.pos);this.options.onComment&&this.options.onComment(!1,this.input.slice(n+e,this.pos),n,this.pos,i,this.curPosition())},se.skipSpace=function(){var e=this;e:for(;this.pos<this.input.length;){var t=e.input.charCodeAt(e.pos);switch(t){case 32:case 160:++e.pos;break;case 13:10===e.input.charCodeAt(e.pos+1)&&++e.pos;case 10:case 8232:case 8233:++e.pos,e.options.locations&&(++e.curLine,e.lineStart=e.pos);break;case 47:switch(e.input.charCodeAt(e.pos+1)){case 42:e.skipBlockComment();break;case 47:e.skipLineComment(2);break;default:break e}break;default:if(!(t>8&&t<14||t>=5760&&M.test(String.fromCharCode(t))))break e;++e.pos}}},se.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var n=this.type;this.type=e,this.value=t,this.updateContext(n)},se.readToken_dot=function(){var e=this.input.charCodeAt(this.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===e&&46===t?(this.pos+=3,this.finishToken(L.ellipsis)):(++this.pos,this.finishToken(L.dot))},se.readToken_slash=function(){var e=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===e?this.finishOp(L.assign,2):this.finishOp(L.slash,1)},se.readToken_mult_modulo_exp=function(e){var t=this.input.charCodeAt(this.pos+1),n=1,i=42===e?L.star:L.modulo;return this.options.ecmaVersion>=7&&42===t&&(++n,i=L.starstar,t=this.input.charCodeAt(this.pos+2)),61===t?this.finishOp(L.assign,n+1):this.finishOp(i,n)},se.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?this.finishOp(124===e?L.logicalOR:L.logicalAND,2):61===t?this.finishOp(L.assign,2):this.finishOp(124===e?L.bitwiseOR:L.bitwiseAND,1)},se.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(L.assign,2):this.finishOp(L.bitwiseXOR,1)},se.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?45==t&&62==this.input.charCodeAt(this.pos+2)&&O.test(this.input.slice(this.lastTokEnd,this.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(L.incDec,2):61===t?this.finishOp(L.assign,2):this.finishOp(L.plusMin,1)},se.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.pos+1),n=1;return t===e?(n=62===e&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+n)?this.finishOp(L.assign,n+1):this.finishOp(L.bitShift,n)):33==t&&60==e&&45==this.input.charCodeAt(this.pos+2)&&45==this.input.charCodeAt(this.pos+3)?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(61===t&&(n=2),this.finishOp(L.relational,n))},se.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.pos+1);return 61===t?this.finishOp(L.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===e&&62===t&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(L.arrow)):this.finishOp(61===e?L.eq:L.prefix,1)},se.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(L.parenL);case 41:return++this.pos,this.finishToken(L.parenR);case 59:return++this.pos,this.finishToken(L.semi);case 44:return++this.pos,this.finishToken(L.comma);case 91:return++this.pos,this.finishToken(L.bracketL);case 93:return++this.pos,this.finishToken(L.bracketR);case 123:return++this.pos,this.finishToken(L.braceL);case 125:return++this.pos,this.finishToken(L.braceR);case 58:return++this.pos,this.finishToken(L.colon);case 63:return++this.pos,this.finishToken(L.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(L.backQuote);case 48:var t=this.input.charCodeAt(this.pos+1);if(120===t||88===t)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===t||79===t)return this.readRadixNumber(8);if(98===t||66===t)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 126:return this.finishOp(L.prefix,1)}this.raise(this.pos,"Unexpected character '"+g(e)+"'")},se.finishOp=function(e,t){var n=this.input.slice(this.pos,this.pos+t);return this.pos+=t,this.finishToken(e,n)};var le=!!p("\uffff","u");se.readRegexp=function(){for(var e,t,n=this,i=this.pos;;){n.pos>=n.input.length&&n.raise(i,"Unterminated regular expression");var r=n.input.charAt(n.pos);if(O.test(r)&&n.raise(i,"Unterminated regular expression"),e)e=!1;else{if("["===r)t=!0;else if("]"===r&&t)t=!1;else if("/"===r&&!t)break;e="\\"===r}++n.pos}var o=this.input.slice(i,this.pos);++this.pos;var s=this.readWord1(),a=o,l="";if(s){var c=/^[gim]*$/;this.options.ecmaVersion>=6&&(c=/^[gimuy]*$/),c.test(s)||this.raise(i,"Invalid regular expression flag"),s.indexOf("u")>=0&&(le?l="u":(a=a.replace(/\\u\{([0-9a-fA-F]+)\}/g,function(e,t,r){return t=Number("0x"+t),t>1114111&&n.raise(i+r+3,"Code point out of bounds"),"x"}),a=a.replace(/\\u([a-fA-F0-9]{4})|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"),l=l.replace("u","")))}var u=null;return ae||(p(a,l,i,this),u=p(o,s)),this.finishToken(L.regexp,{pattern:o,flags:s,value:u})},se.readInt=function(e,t){for(var n=this,i=this.pos,r=0,o=0,s=null==t?1/0:t;o<s;++o){var a,l=n.input.charCodeAt(n.pos);if((a=l>=97?l-97+10:l>=65?l-65+10:l>=48&&l<=57?l-48:1/0)>=e)break;++n.pos,r=r*e+a}return this.pos===i||null!=t&&this.pos-i!==t?null:r},se.readRadixNumber=function(e){this.pos+=2;var t=this.readInt(e);return null==t&&this.raise(this.start+2,"Expected number in radix "+e),n(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(L.num,t)},se.readNumber=function(e){var t=this.pos,i=!1,r=48===this.input.charCodeAt(this.pos);e||null!==this.readInt(10)||this.raise(t,"Invalid number"),r&&this.pos==t+1&&(r=!1);var o=this.input.charCodeAt(this.pos);46!==o||r||(++this.pos,this.readInt(10),i=!0,o=this.input.charCodeAt(this.pos)),69!==o&&101!==o||r||(o=this.input.charCodeAt(++this.pos),43!==o&&45!==o||++this.pos,null===this.readInt(10)&&this.raise(t,"Invalid number"),i=!0),n(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var s,a=this.input.slice(t,this.pos);return i?s=parseFloat(a):r&&1!==a.length?/[89]/.test(a)||this.strict?this.raise(t,"Invalid number"):s=parseInt(a,8):s=parseInt(a,10),this.finishToken(L.num,s)},se.readCodePoint=function(){var e,t=this.input.charCodeAt(this.pos);if(123===t){this.options.ecmaVersion<6&&this.unexpected();var n=++this.pos;e=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,e>1114111&&this.raise(n,"Code point out of bounds")}else e=this.readHexChar(4);return e},se.readString=function(e){for(var t=this,n="",i=++this.pos;;){t.pos>=t.input.length&&t.raise(t.start,"Unterminated string constant");var r=t.input.charCodeAt(t.pos);if(r===e)break;92===r?(n+=t.input.slice(i,t.pos),n+=t.readEscapedChar(!1),i=t.pos):(s(r)&&t.raise(t.start,"Unterminated string constant"),++t.pos)}return n+=this.input.slice(i,this.pos++),this.finishToken(L.string,n)},se.readTmplToken=function(){for(var e=this,t="",n=this.pos;;){e.pos>=e.input.length&&e.raise(e.start,"Unterminated template");var i=e.input.charCodeAt(e.pos);if(96===i||36===i&&123===e.input.charCodeAt(e.pos+1))return e.pos===e.start&&e.type===L.template?36===i?(e.pos+=2,e.finishToken(L.dollarBraceL)):(++e.pos,e.finishToken(L.backQuote)):(t+=e.input.slice(n,e.pos),e.finishToken(L.template,t));if(92===i)t+=e.input.slice(n,e.pos),t+=e.readEscapedChar(!0),n=e.pos;else if(s(i)){switch(t+=e.input.slice(n,e.pos),++e.pos,i){case 13:10===e.input.charCodeAt(e.pos)&&++e.pos;case 10:t+="\n";break;default:t+=String.fromCharCode(i)}e.options.locations&&(++e.curLine,e.lineStart=e.pos),n=e.pos}else++e.pos}},se.readEscapedChar=function(e){var t=this.input.charCodeAt(++this.pos);switch(++this.pos,t){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return g(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";default:if(t>=48&&t<=55){var n=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],i=parseInt(n,8);return i>255&&(n=n.slice(0,-1),i=parseInt(n,8)),"0"!==n&&(this.strict||e)&&this.raise(this.pos-2,"Octal literal in strict mode"),this.pos+=n.length-1,String.fromCharCode(i)}return String.fromCharCode(t)}},se.readHexChar=function(e){var t=this.pos,n=this.readInt(16,e);return null===n&&this.raise(t,"Bad character escape sequence"),n},se.readWord1=function(){var e=this;this.containsEsc=!1;for(var t="",r=!0,o=this.pos,s=this.options.ecmaVersion>=6;this.pos<this.input.length;){var a=e.fullCharCodeAtPos();if(i(a,s))e.pos+=a<=65535?1:2;else{if(92!==a)break;e.containsEsc=!0,t+=e.input.slice(o,e.pos);var l=e.pos;117!=e.input.charCodeAt(++e.pos)&&e.raise(e.pos,"Expecting Unicode escape sequence \\uXXXX"),++e.pos;var c=e.readCodePoint();(r?n:i)(c,s)||e.raise(l,"Invalid Unicode escape"),t+=g(c),o=e.pos}r=!1}return t+this.input.slice(o,this.pos)},se.readWord=function(){var e=this.readWord1(),t=L.name;return this.keywords.test(e)&&(this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword "+e),t=T[e]),this.finishToken(t,e)};e.version="4.0.11",e.parse=m,e.parseExpressionAt=v,e.tokenizer=y,e.addLooseExports=b,e.Parser=H,e.plugins=W,e.defaultOptions=N,e.Position=I,e.SourceLocation=j,e.getLineInfo=c,e.Node=ee,e.TokenType=_,e.tokTypes=L,e.keywordTypes=T,e.TokContext=ne,e.tokContexts=ie,e.isIdentifierChar=i,e.isIdentifierStart=n,e.Token=oe,e.isNewLine=s,e.lineBreak=O,e.lineBreakG=R,Object.defineProperty(e,"__esModule",{value:!0})})},function(e,t,n){"use strict";function i(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];Object(r.a)(i,arguments,a);var o=function e(){for(var n={},i=arguments.length,r=Array(i),o=0;o<i;o++)r[o]=arguments[o];for(var s=0;s<t.length;s++)n[t[s]]=r[s];return n.type=e,n};return o.generatedByVerse=!0,o}t.a=i;var r=n(3),o=n(11),s=n(1),a={variadic:!0,example:["name","highScore"],types:[Object(o.b)(s.i)]}},function(e,t,n){"use strict";function i(e){function t(e){return f(e),u(),m()}function n(e){return u(e),m()}function i(){return h(g),m()}function u(e){h(function(){return d(e)})}function h(e){if(!w)try{w=null,e()}catch(e){w=e}}function d(t){if(y>1e3)throw new Error("Infinite retry loop detected");if(v.length){var i=Object(l.a)(v).next(t),r=i.value;if(i.done)return p(),void u(r);if(Object(s.d)(r)||Object(s.e)(r))return y++,f(r),void u();switch(r.effectType){case"perform":return e.emit(r.action),void u(e.getState());case"waitForEvent":return void(y=0);case"putBackEvent":return u(),void n(r.event);case"jump":for(y++;v.length;)p();return f(r.generator),void u();case"retry":return y++,p(),f(r.generator),void u();case"startDisplay":return Object(l.a)(v).render=r.render,void u();case"showFormFields":return A=r.fields,b=o(),void u();case"redraw":return g(),void u();default:return void(w=new Error("You `yield`ed something weird: "+JSON.stringify(r)))}}}function f(e){var t=Object(s.e)(e)?e:e();t.render=null,v.push(t)}function p(){return g(),v.pop()}function g(){var t=void 0,n=void 0;for(n=v.length-1;n>=0;n--)if(v[n].render){t=v[n].render;break}C=Object(a.c)(t?t(e.getState()):[],r,Object(l.b)(c.b))}function m(){return{displayLines:C,error:w,form:A,formId:b}}var v=[],y=0,b=0,w=null,C=[],A=[];return{begin:t,receive:n,redraw:i}}function r(e){return Object(s.b)(e)?e:[e]}function o(){return Math.floor(Math.random()*u)}t.a=i;var s=n(1),a=n(13),l=n(31),c=n(10),u=Math.pow(2,53)},function(e,t,n){"use strict";function i(){return document.getElementById("user-code")}var r=function(){function e(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(i=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&a.return&&a.return()}finally{if(r)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}();t.a=function(){return{load:function(){var e={};return i()?{"main.js":i().innerText}:(Object.keys(localStorage).filter(function(e){return 0===e.indexOf("file:")}).map(function(e){return[e.slice("file:".length),localStorage[e]]}).forEach(function(t){var n=r(t,2),i=n[0],o=n[1];return e[i]=o}),e)},storeFile:function(e,t){localStorage["file:"+e]=t}}}()},function(e,t,n){(function(e,n){function i(e,t){for(var n=-1,i=null==e?0:e.length,r=0,o=[];++n<i;){var s=e[n];t(s,n,e)&&(o[r++]=s)}return o}function r(e,t){for(var n=-1,i=t.length,r=e.length;++n<i;)e[r+n]=t[n];return e}function o(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}function s(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}function a(e,t){return e.has(t)}function l(e,t){return null==e?void 0:e[t]}function c(e){var t=-1,n=Array(e.size);return e.forEach(function(e,i){n[++t]=[i,e]}),n}function u(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}function h(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function d(){this.__data__=Ft?Ft(null):{},this.size=0}function f(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}function p(e){var t=this.__data__;if(Ft){var n=t[e];return n===ye?void 0:n}return st.call(t,e)?t[e]:void 0}function g(e){var t=this.__data__;return Ft?void 0!==t[e]:st.call(t,e)}function m(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Ft&&void 0===t?ye:t,this}function v(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function y(){this.__data__=[],this.size=0}function b(e){var t=this.__data__,n=j(t,e);return!(n<0)&&(n==t.length-1?t.pop():pt.call(t,n,1),--this.size,!0)}function w(e){var t=this.__data__,n=j(t,e);return n<0?void 0:t[n][1]}function C(e){return j(this.__data__,e)>-1}function A(e,t){var n=this.__data__,i=j(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}function E(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function F(){this.size=0,this.__data__={hash:new h,map:new(wt||v),string:new h}}function x(e){var t=J(this,e).delete(e);return this.size-=t?1:0,t}function k(e){return J(this,e).get(e)}function S(e){return J(this,e).has(e)}function $(e,t){var n=J(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}function _(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new E;++t<n;)this.add(e[t])}function D(e){return this.__data__.set(e,ye),this}function B(e){return this.__data__.has(e)}function T(e){var t=this.__data__=new v(e);this.size=t.size}function L(){this.__data__=new v,this.size=0}function O(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function R(e){return this.__data__.get(e)}function M(e){return this.__data__.has(e)}function P(e,t){var n=this.__data__;if(n instanceof v){var i=n.__data__;if(!wt||i.length<ve-1)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new E(i)}return n.set(e,t),this.size=n.size,this}function I(e,t){var n=Rt(e),i=!n&&Ot(e),r=!n&&!i&&Mt(e),o=!n&&!i&&!r&&Pt(e),a=n||i||r||o,l=a?s(e.length,String):[],c=l.length;for(var u in e)!t&&!st.call(e,u)||a&&("length"==u||r&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||te(u,c))||l.push(u);return l}function j(e,t){for(var n=e.length;n--;)if(ae(e[n][0],t))return n;return-1}function N(e,t,n){var i=t(e);return Rt(e)?i:r(i,n(e))}function W(e){return null==e?void 0===e?je:Te:gt&> in Object(e)?ee(e):oe(e)}function H(e){return fe(e)&&W(e)==Ae}function z(e,t,n,i,r){return e===t||(null==e||null==t||!fe(e)&&!fe(t)?e!==e&&t!==t:U(e,t,n,i,z,r))}function U(e,t,n,i,r,o){var s=Rt(e),a=Rt(t),l=s?Ee:Lt(e),c=a?Ee:Lt(t);l=l==Ae?Le:l,c=c==Ae?Le:c;var u=l==Le,h=c==Le,d=l==c;if(d&&Mt(e)){if(!Mt(t))return!1;s=!0,u=!1}if(d&&!u)return o||(o=new T),s||Pt(e)?q(e,t,n,i,r,o):Y(e,t,l,n,i,r,o);if(!(n&be)){var f=u&&st.call(e,"__wrapped__"),p=h&&st.call(t,"__wrapped__");if(f||p){var g=f?e.value():e,m=p?t.value():t;return o||(o=new T),r(g,m,n,i,o)}}return!!d&&(o||(o=new T),Q(e,t,n,i,r,o))}function V(e){return!(!de(e)||ie(e))&&(ue(e)?ct:ze).test(se(e))}function K(e){return fe(e)&&he(e.length)&&!!Ve[W(e)]}function G(e){if(!re(e))return yt(e);var t=[];for(var n in Object(e))st.call(e,n)&&"constructor"!=n&&t.push(n);return t}function q(e,t,n,i,r,s){var l=n&be,c=e.length,u=t.length;if(c!=u&&!(l&&u>c))return!1;var h=s.get(e);if(h&&s.get(t))return h==t;var d=-1,f=!0,p=n&we?new _:void 0;for(s.set(e,t),s.set(t,e);++d<c;){var g=e[d],m=t[d];if(i)var v=l?i(m,g,d,t,e,s):i(g,m,d,e,t,s);if(void 0!==v){if(v)continue;f=!1;break}if(p){if(!o(t,function(e,t){if(!a(p,t)&&(g===e||r(g,e,n,i,s)))return p.push(t)})){f=!1;break}}else if(g!==m&&!r(g,m,n,i,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Y(e,t,n,i,r,o,s){switch(n){case We:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Ne:return!(e.byteLength!=t.byteLength||!o(new dt(e),new dt(t)));case xe:case ke:case Be:return ae(+e,+t);case Se:return e.name==t.name&&e.message==t.message;case Re:case Pe:return e==t+"";case De:var a=c;case Me:var l=i&be;if(a||(a=u),e.size!=t.size&&!l)return!1;var h=s.get(e);if(h)return h==t;i|=we,s.set(e,t);var d=q(a(e),a(t),i,r,o,s);return s.delete(e),d;case Ie:if(Bt)return Bt.call(e)==Bt.call(t)}return!1}function Q(e,t,n,i,r,o){var s=n&be,a=X(e),l=a.length;if(l!=X(t).length&&!s)return!1;for(var c=l;c--;){var u=a[c];if(!(s?u in t:st.call(t,u)))return!1}var h=o.get(e);if(h&&o.get(t))return h==t;var d=!0;o.set(e,t),o.set(t,e);for(var f=s;++c<l;){u=a[c];var p=e[u],g=t[u];if(i)var m=s?i(g,p,u,t,e,o):i(p,g,u,e,t,o);if(!(void 0===m?p===g||r(p,g,n,i,o):m)){d=!1;break}f||(f="constructor"==u)}if(d&&!f){var v=e.constructor,y=t.constructor;v!=y&&"constructor"in e&&"constructor"in t&&!("function"==typeof v&&v instanceof v&&"function"==typeof y&&y instanceof y)&&(d=!1)}return o.delete(e),o.delete(t),d}function X(e){return N(e,pe,Tt)}function J(e,t){var n=e.__data__;return ne(t)?n["string"==typeof t?"string":"hash"]:n.map}function Z(e,t){var n=l(e,t);return V(n)?n:void 0}function ee(e){var t=st.call(e,gt),n=e[gt];try{e[gt]=void 0;var i=!0}catch(e){}var r=lt.call(e);return i&&(t?e[gt]=n:delete e[gt]),r}function te(e,t){return!!(t=null==t?Ce:t)&&("number"==typeof e||Ue.test(e))&&e>-1&&e%1==0&&e<t}function ne(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function ie(e){return!!at&&at in e}function re(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||it)}function oe(e){return lt.call(e)}function se(e){if(null!=e){try{return ot.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function ae(e,t){return e===t||e!==e&&t!==t}function le(e){return null!=e&&he(e.length)&&!ue(e)}function ce(e,t){return z(e,t)}function ue(e){if(!de(e))return!1;var t=W(e);return t==$e||t==_e||t==Fe||t==Oe}function he(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=Ce}function de(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function fe(e){return null!=e&&"object"==typeof e}function pe(e){return le(e)?I(e):G(e)}function ge(){return[]}function me(){return!1}var ve=200,ye="__lodash_hash_undefined__",be=1,we=2,Ce=9007199254740991,Ae="[object Arguments]",Ee="[object Array]",Fe="[object AsyncFunction]",xe="[object Boolean]",ke="[object Date]",Se="[object Error]",$e="[object Function]",_e="[object GeneratorFunction]",De="[object Map]",Be="[object Number]",Te="[object Null]",Le="[object Object]",Oe="[object Proxy]",Re="[object RegExp]",Me="[object Set]",Pe="[object String]",Ie="[object Symbol]",je="[object Undefined]",Ne="[object ArrayBuffer]",We="[object DataView]",He=/[\\^$.*+?()[\]{}|]/g,ze=/^\[object .+?Constructor\]$/,Ue=/^(?:0|[1-9]\d*)$/,Ve={};Ve["[object Float32Array]"]=Ve["[object Float64Array]"]=Ve["[object Int8Array]"]=Ve["[object Int16Array]"]=Ve["[object Int32Array]"]=Ve["[object Uint8Array]"]=Ve["[object Uint8ClampedArray]"]=Ve["[object Uint16Array]"]=Ve["[object Uint32Array]"]=!0,Ve[Ae]=Ve[Ee]=Ve[Ne]=Ve[xe]=Ve[We]=Ve[ke]=Ve[Se]=Ve[$e]=Ve[De]=Ve[Be]=Ve[Le]=Ve[Re]=Ve[Me]=Ve[Pe]=Ve["[object WeakMap]"]=!1;var Ke="object"==typeof e&&e&&e.Object===Object&&e,Ge="object"==typeof self&&self&&self.Object===Object&&self,qe=Ke||Ge||Function("return this")(),Ye="object"==typeof t&&t&&!t.nodeType&&t,Qe=Ye&&"object"==typeof n&&n&&!n.nodeType&&n,Xe=Qe&&Qe.exports===Ye,Je=Xe&&Ke.process,Ze=function(){try{return Je&&Je.binding&&Je.binding("util")}catch(e){}}(),et=Ze&&Ze.isTypedArray,tt=Array.prototype,nt=Function.prototype,it=Object.prototype,rt=qe["__core-js_shared__"],ot=nt.toString,st=it.hasOwnProperty,at=function(){var e=/[^.]+$/.exec(rt&&rt.keys&&rt.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),lt=it.toString,ct=RegExp("^"+ot.call(st).replace(He,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ut=Xe?qe.Buffer:void 0,ht=qe.Symbol,dt=qe.Uint8Array,ft=it.propertyIsEnumerable,pt=tt.splice,gt=ht?ht.toStringTag:void 0,mt=Object.getOwnPropertySymbols,vt=ut?ut.isBuffer:void 0,yt=function(e,t){return function(n){return e(t(n))}}(Object.keys,Object),bt=Z(qe,"DataView"),wt=Z(qe,"Map"),Ct=Z(qe,"Promise"),At=Z(qe,"Set"),Et=Z(qe,"WeakMap"),Ft=Z(Object,"create"),xt=se(bt),kt=se(wt),St=se(Ct),$t=se(At),_t=se(Et),Dt=ht?ht.prototype:void 0,Bt=Dt?Dt.valueOf:void 0;h.prototype.clear=d,h.prototype.delete=f,h.prototype.get=p,h.prototype.has=g,h.prototype.set=m,v.prototype.clear=y,v.prototype.delete=b,v.prototype.get=w,v.prototype.has=C,v.prototype.set=A,E.prototype.clear=F,E.prototype.delete=x,E.prototype.get=k,E.prototype.has=S,E.prototype.set=$,_.prototype.add=_.prototype.push=D,_.prototype.has=B,T.prototype.clear=L,T.prototype.delete=O,T.prototype.get=R,T.prototype.has=M,T.prototype.set=P;var Tt=mt?function(e){return null==e?[]:(e=Object(e),i(mt(e),function(t){return ft.call(e,t)}))}:ge,Lt=W;(bt&&Lt(new bt(new ArrayBuffer(1)))!=We||wt&&Lt(new wt)!=De||Ct&&"[object Promise]"!=Lt(Ct.resolve())||At&&Lt(new At)!=Me||Et&&"[object WeakMap]"!=Lt(new Et))&&(Lt=function(e){var t=W(e),n=t==Le?e.constructor:void 0,i=n?se(n):"";if(i)switch(i){case xt:return We;case kt:return De;case St:return"[object Promise]";case $t:return Me;case _t:return"[object WeakMap]"}return t});var Ot=H(function(){return arguments}())?H:function(e){return fe(e)&&st.call(e,"callee")&&!ft.call(e,"callee")},Rt=Array.isArray,Mt=vt||me,Pt=et?function(e){return function(t){return e(t)}}(et):K;n.exports=ce}).call(t,n(7),n(149)(e))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=["minLines","maxLines","readOnly","highlightActiveLine","tabSize","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets"],r=["onChange","onFocus","onInput","onBlur","onCopy","onPaste","onSelectionChange","onCursorChange","onScroll","handleOptions","updateRef"];t.editorOptions=i,t.editorEvents=r},function(e,t,n){"use strict";var i=n(0),r=n.n(i);t.a=function(e){var t=e.If?{display:"none"}:{};return r.a.createElement("div",{style:t},e.children)}},function(e,t,n){n(62),e.exports=n(67)},function(e,t,n){"use strict";"undefined"===typeof Promise&&(n(63).enable(),window.Promise=n(65)),n(66),Object.assign=n(22)},function(e,t,n){"use strict";function i(){c=!1,a._47=null,a._71=null}function r(e){function t(t){(e.allRejections||s(h[t].error,e.whitelist||l))&&(h[t].displayId=u++,e.onUnhandled?(h[t].logged=!0,e.onUnhandled(h[t].displayId,h[t].error)):(h[t].logged=!0,o(h[t].displayId,h[t].error)))}function n(t){h[t].logged&&(e.onHandled?e.onHandled(h[t].displayId,h[t].error):h[t].onUnhandled||(console.warn("Promise Rejection Handled (id: "+h[t].displayId+"):"),console.warn(' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id '+h[t].displayId+".")))}e=e||{},c&&i(),c=!0;var r=0,u=0,h={};a._47=function(e){2===e._83&&h[e._56]&&(h[e._56].logged?n(e._56):clearTimeout(h[e._56].timeout),delete h[e._56])},a._71=function(e,n){0===e._75&&(e._56=r++,h[e._56]={displayId:null,error:n,timeout:setTimeout(t.bind(null,e._56),s(n,l)?100:2e3),logged:!1})}}function o(e,t){console.warn("Possible Unhandled Promise Rejection (id: "+e+"):"),((t&&(t.stack||t))+"").split("\n").forEach(function(e){console.warn(" "+e)})}function s(e,t){return t.some(function(t){return e instanceof t})}var a=n(36),l=[ReferenceError,TypeError,RangeError],c=!1;t.disable=i,t.enable=r},function(e,t,n){"use strict";(function(t){function n(e){s.length||(o(),a=!0),s[s.length]=e}function i(){for(;l<s.length;){var e=l;if(l+=1,s[e].call(),l>c){for(var t=0,n=s.length-l;t<n;t++)s[t]=s[t+l];s.length-=l,l=0}}s.length=0,l=0,a=!1}function r(e){return function(){function t(){clearTimeout(n),clearInterval(i),e()}var n=setTimeout(t,0),i=setInterval(t,50)}}e.exports=n;var o,s=[],a=!1,l=0,c=1024,u="undefined"!==typeof t?t:self,h=u.MutationObserver||u.WebKitMutationObserver;o="function"===typeof h?function(e){var t=1,n=new h(e),i=document.createTextNode("");return n.observe(i,{characterData:!0}),function(){t=-t,i.data=t}}(i):r(i),n.requestFlush=o,n.makeRequestCallFromTimer=r}).call(t,n(7))},function(e,t,n){"use strict";function i(e){var t=new r(r._44);return t._83=1,t._18=e,t}var r=n(36);e.exports=r;var o=i(!0),s=i(!1),a=i(null),l=i(void 0),c=i(0),u=i("");r.resolve=function(e){if(e instanceof r)return e;if(null===e)return a;if(void 0===e)return l;if(!0===e)return o;if(!1===e)return s;if(0===e)return c;if(""===e)return u;if("object"===typeof e||"function"===typeof e)try{var t=e.then;if("function"===typeof t)return new r(t.bind(e))}catch(e){return new r(function(t,n){n(e)})}return i(e)},r.all=function(e){var t=Array.prototype.slice.call(e);return new r(function(e,n){function i(s,a){if(a&&("object"===typeof a||"function"===typeof a)){if(a instanceof r&&a.then===r.prototype.then){for(;3===a._83;)a=a._18;return 1===a._83?i(s,a._18):(2===a._83&&n(a._18),void a.then(function(e){i(s,e)},n))}var l=a.then;if("function"===typeof l){return void new r(l.bind(a)).then(function(e){i(s,e)},n)}}t[s]=a,0===--o&&e(t)}if(0===t.length)return e([]);for(var o=t.length,s=0;s<t.length;s++)i(s,t[s])})},r.reject=function(e){return new r(function(t,n){n(e)})},r.race=function(e){return new r(function(t,n){e.forEach(function(e){r.resolve(e).then(t,n)})})},r.prototype.catch=function(e){return this.then(null,e)}},function(e,t){!function(e){"use strict";function t(e){if("string"!==typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function n(e){return"string"!==typeof e&&(e=String(e)),e}function i(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return v.iterable&&(t[Symbol.iterator]=function(){return t}),t}function r(e){this.map={},e instanceof r?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}function o(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function s(e){return new Promise(function(t,n){e.onload=function(){t(e.result)},e.onerror=function(){n(e.error)}})}function a(e){var t=new FileReader,n=s(t);return t.readAsArrayBuffer(e),n}function l(e){var t=new FileReader,n=s(t);return t.readAsText(e),n}function c(e){for(var t=new Uint8Array(e),n=new Array(t.length),i=0;i<t.length;i++)n[i]=String.fromCharCode(t[i]);return n.join("")}function u(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function h(){return this.bodyUsed=!1,this._initBody=function(e){if(this._bodyInit=e,e)if("string"===typeof e)this._bodyText=e;else if(v.blob&&Blob.prototype.isPrototypeOf(e))this._bodyBlob=e;else if(v.formData&&FormData.prototype.isPrototypeOf(e))this._bodyFormData=e;else if(v.searchParams&&URLSearchParams.prototype.isPrototypeOf(e))this._bodyText=e.toString();else if(v.arrayBuffer&&v.blob&&b(e))this._bodyArrayBuffer=u(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer]);else{if(!v.arrayBuffer||!ArrayBuffer.prototype.isPrototypeOf(e)&&!w(e))throw new Error("unsupported BodyInit type");this._bodyArrayBuffer=u(e)}else this._bodyText="";this.headers.get("content-type")||("string"===typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):v.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},v.blob&&(this.blob=function(){var e=o(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?o(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(a)}),this.text=function(){var e=o(this);if(e)return e;if(this._bodyBlob)return l(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(c(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},v.formData&&(this.formData=function(){return this.text().then(p)}),this.json=function(){return this.text().then(JSON.parse)},this}function d(e){var t=e.toUpperCase();return C.indexOf(t)>-1?t:e}function f(e,t){t=t||{};var n=t.body;if(e instanceof f){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new r(e.headers)),this.method=e.method,this.mode=e.mode,n||null==e._bodyInit||(n=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"omit",!t.headers&&this.headers||(this.headers=new r(t.headers)),this.method=d(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(n)}function p(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var n=e.split("="),i=n.shift().replace(/\+/g," "),r=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(i),decodeURIComponent(r))}}),t}function g(e){var t=new r;return e.split(/\r?\n/).forEach(function(e){var n=e.split(":"),i=n.shift().trim();if(i){var r=n.join(":").trim();t.append(i,r)}}),t}function m(e,t){t||(t={}),this.type="default",this.status="status"in t?t.status:200,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new r(t.headers),this.url=t.url||"",this._initBody(e)}if(!e.fetch){var v={searchParams:"URLSearchParams"in e,iterable:"Symbol"in e&&"iterator"in Symbol,blob:"FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in e,arrayBuffer:"ArrayBuffer"in e};if(v.arrayBuffer)var y=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],b=function(e){return e&&DataView.prototype.isPrototypeOf(e)},w=ArrayBuffer.isView||function(e){return e&&y.indexOf(Object.prototype.toString.call(e))>-1};r.prototype.append=function(e,i){e=t(e),i=n(i);var r=this.map[e];this.map[e]=r?r+","+i:i},r.prototype.delete=function(e){delete this.map[t(e)]},r.prototype.get=function(e){return e=t(e),this.has(e)?this.map[e]:null},r.prototype.has=function(e){return this.map.hasOwnProperty(t(e))},r.prototype.set=function(e,i){this.map[t(e)]=n(i)},r.prototype.forEach=function(e,t){for(var n in this.map)this.map.hasOwnProperty(n)&&e.call(t,this.map[n],n,this)},r.prototype.keys=function(){var e=[];return this.forEach(function(t,n){e.push(n)}),i(e)},r.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),i(e)},r.prototype.entries=function(){var e=[];return this.forEach(function(t,n){e.push([n,t])}),i(e)},v.iterable&&(r.prototype[Symbol.iterator]=r.prototype.entries);var C=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];f.prototype.clone=function(){return new f(this,{body:this._bodyInit})},h.call(f.prototype),h.call(m.prototype),m.prototype.clone=function(){return new m(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new r(this.headers),url:this.url})},m.error=function(){var e=new m(null,{status:0,statusText:""});return e.type="error",e};var A=[301,302,303,307,308];m.redirect=function(e,t){if(-1===A.indexOf(t))throw new RangeError("Invalid status code");return new m(null,{status:t,headers:{location:e}})},e.Headers=r,e.Request=f,e.Response=m,e.fetch=function(e,t){return new Promise(function(n,i){var r=new f(e,t),o=new XMLHttpRequest;o.onload=function(){var e={status:o.status,statusText:o.statusText,headers:g(o.getAllResponseHeaders()||"")};e.url="responseURL"in o?o.responseURL:e.headers.get("X-Request-URL");var t="response"in o?o.response:o.responseText;n(new m(t,e))},o.onerror=function(){i(new TypeError("Network request failed"))},o.ontimeout=function(){i(new TypeError("Network request failed"))},o.open(r.method,r.url,!0),"include"===r.credentials&&(o.withCredentials=!0),"responseType"in o&&v.blob&&(o.responseType="blob"),r.headers.forEach(function(e,t){o.setRequestHeader(t,e)}),o.send("undefined"===typeof r._bodyInit?null:r._bodyInit)})},e.fetch.polyfill=!0}}("undefined"!==typeof self?self:this)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(0),r=n.n(i),o=n(69),s=n.n(o),a=n(38),l=n(105),c=n(137),u=(n.n(c),n(138)),h=n(164),d=(n(165),n(167));window.exportStandaloneApp=d.a,s.a.render(r.a.createElement(a.a,{store:l.a},r.a.createElement(u.a,null)),document.getElementById("root")),Object(h.a)()},function(e,t,n){"use strict";function i(e){for(var t=arguments.length-1,n="Minified React error #"+e+"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant="+e,i=0;i<t;i++)n+="&args[]="+encodeURIComponent(arguments[i+1]);throw t=Error(n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."),t.name="Invariant Violation",t.framesToPop=1,t}function r(e,t,n){this.props=e,this.context=t,this.refs=y,this.updater=n||D}function o(){}function s(e,t,n){this.props=e,this.context=t,this.refs=y,this.updater=n||D}function a(e,t,n){var i=void 0,r={},o=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(o=""+t.key),t)L.call(t,i)&&!O.hasOwnProperty(i)&&(r[i]=t[i]);var a=arguments.length-2;if(1===a)r.children=n;else if(1<a){for(var l=Array(a),c=0;c<a;c++)l[c]=arguments[c+2];r.children=l}if(e&&e.defaultProps)for(i in a=e.defaultProps)void 0===r[i]&&(r[i]=a[i]);return{$$typeof:C,type:e,key:o,ref:s,props:r,_owner:T.current}}function l(e){return"object"===typeof e&&null!==e&&e.$$typeof===C}function c(e){var t={"=":"=0",":":"=2"};return"$"+(""+e).replace(/[=:]/g,function(e){return t[e]})}function u(e,t,n,i){if(M.length){var r=M.pop();return r.result=e,r.keyPrefix=t,r.func=n,r.context=i,r.count=0,r}return{result:e,keyPrefix:t,func:n,context:i,count:0}}function h(e){e.result=null,e.keyPrefix=null,e.func=null,e.context=null,e.count=0,10>M.length&&M.push(e)}function d(e,t,n,r){var o=typeof e;"undefined"!==o&&"boolean"!==o||(e=null);var s=!1;if(null===e)s=!0;else switch(o){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case C:case A:s=!0}}if(s)return n(r,e,""===t?"."+f(e,0):t),1;if(s=0,t=""===t?".":t+":",Array.isArray(e))for(var a=0;a<e.length;a++){o=e[a];var l=t+f(o,a);s+=d(o,l,n,r)}else if(null===e||"undefined"===typeof e?l=null:(l=_&&e[_]||e["@@iterator"],l="function"===typeof l?l:null),"function"===typeof l)for(e=l.call(e),a=0;!(o=e.next()).done;)o=o.value,l=t+f(o,a++),s+=d(o,l,n,r);else"object"===o&&(n=""+e,i("31","[object Object]"===n?"object with keys {"+Object.keys(e).join(", ")+"}":n,""));return s}function f(e,t){return"object"===typeof e&&null!==e&&null!=e.key?c(e.key):t.toString(36)}function p(e,t){e.func.call(e.context,t,e.count++)}function g(e,t,n){var i=e.result,r=e.keyPrefix;e=e.func.call(e.context,t,e.count++),Array.isArray(e)?m(e,i,n,b.thatReturnsArgument):null!=e&&(l(e)&&(t=r+(!e.key||t&&t.key===e.key?"":(""+e.key).replace(R,"$&/")+"/")+n,e={$$typeof:C,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}),i.push(e))}function m(e,t,n,i,r){var o="";null!=n&&(o=(""+n).replace(R,"$&/")+"/"),t=u(t,o,i,r),null==e||d(e,"",g,t),h(t)}var v=n(22),y=n(37),b=n(23),w="function"===typeof Symbol&&Symbol.for,C=w?Symbol.for("react.element"):60103,A=w?Symbol.for("react.portal"):60106,E=w?Symbol.for("react.fragment"):60107,F=w?Symbol.for("react.strict_mode"):60108,x=w?Symbol.for("react.provider"):60109,k=w?Symbol.for("react.context"):60110,S=w?Symbol.for("react.async_mode"):60111,$=w?Symbol.for("react.forward_ref"):60112,_="function"===typeof Symbol&&Symbol.iterator,D={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}};r.prototype.isReactComponent={},r.prototype.setState=function(e,t){"object"!==typeof e&&"function"!==typeof e&&null!=e&&i("85"),this.updater.enqueueSetState(this,e,t,"setState")},r.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},o.prototype=r.prototype;var B=s.prototype=new o;B.constructor=s,v(B,r.prototype),B.isPureReactComponent=!0;var T={current:null},L=Object.prototype.hasOwnProperty,O={key:!0,ref:!0,__self:!0,__source:!0},R=/\/+/g,M=[],P={Children:{map:function(e,t,n){if(null==e)return e;var i=[];return m(e,i,null,t,n),i},forEach:function(e,t,n){if(null==e)return e;t=u(null,null,t,n),null==e||d(e,"",p,t),h(t)},count:function(e){return null==e?0:d(e,"",b.thatReturnsNull,null)},toArray:function(e){var t=[];return m(e,t,null,b.thatReturnsArgument),t},only:function(e){return l(e)||i("143"),e}},createRef:function(){return{current:null}},Component:r,PureComponent:s,createContext:function(e,t){return void 0===t&&(t=null),e={$$typeof:k,_calculateChangedBits:t,_defaultValue:e,_currentValue:e,_changedBits:0,Provider:null,Consumer:null},e.Provider={$$typeof:x,_context:e},e.Consumer=e},forwardRef:function(e){return{$$typeof:$,render:e}},Fragment:E,StrictMode:F,unstable_AsyncMode:S,createElement:a,cloneElement:function(e,t,n){var i=void 0,r=v({},e.props),o=e.key,s=e.ref,a=e._owner;if(null!=t){void 0!==t.ref&&(s=t.ref,a=T.current),void 0!==t.key&&(o=""+t.key);var l=void 0;e.type&&e.type.defaultProps&&(l=e.type.defaultProps);for(i in t)L.call(t,i)&&!O.hasOwnProperty(i)&&(r[i]=void 0===t[i]&&void 0!==l?l[i]:t[i])}if(1===(i=arguments.length-2))r.children=n;else if(1<i){l=Array(i);for(var c=0;c<i;c++)l[c]=arguments[c+2];r.children=l}return{$$typeof:C,type:e.type,key:o,ref:s,props:r,_owner:a}},createFactory:function(e){var t=a.bind(null,e);return t.type=e,t},isValidElement:l,version:"16.3.1",__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{ReactCurrentOwner:T,assign:v}},I=Object.freeze({default:P}),j=I&&P||I;e.exports=j.default?j.default:j},function(e,t,n){"use strict";function i(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(e){console.error(e)}}i(),e.exports=n(70)},function(e,t,n){"use strict";function i(e){for(var t=arguments.length-1,n="Minified React error #"+e+"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant="+e,i=0;i<t;i++)n+="&args[]="+encodeURIComponent(arguments[i+1]);throw t=Error(n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."),t.name="Invariant Violation",t.framesToPop=1,t}function r(e,t,n,i,r,o,s,a,l){this._hasCaughtError=!1,this._caughtError=null;var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(e){this._caughtError=e,this._hasCaughtError=!0}}function o(){if(vn._hasRethrowError){var e=vn._rethrowError;throw vn._rethrowError=null,vn._hasRethrowError=!1,e}}function s(){if(yn)for(var e in bn){var t=bn[e],n=yn.indexOf(e);if(-1<n||i("96",e),!wn[n]){t.extractEvents||i("97",e),wn[n]=t,n=t.eventTypes;for(var r in n){var o=void 0,s=n[r],l=t,c=r;Cn.hasOwnProperty(c)&&i("99",c),Cn[c]=s;var u=s.phasedRegistrationNames;if(u){for(o in u)u.hasOwnProperty(o)&&a(u[o],l,c);o=!0}else s.registrationName?(a(s.registrationName,l,c),o=!0):o=!1;o||i("98",r,e)}}}}function a(e,t,n){An[e]&&i("100",e),An[e]=t,En[e]=t.eventTypes[n].dependencies}function l(e){yn&&i("101"),yn=Array.prototype.slice.call(e),s()}function c(e){var t,n=!1;for(t in e)if(e.hasOwnProperty(t)){var r=e[t];bn.hasOwnProperty(t)&&bn[t]===r||(bn[t]&&i("102",t),bn[t]=r,n=!0)}n&&s()}function u(e,t,n,i){t=e.type||"unknown-event",e.currentTarget=Sn(i),vn.invokeGuardedCallbackAndCatchFirstError(t,n,void 0,e),e.currentTarget=null}function h(e,t){return null==t&&i("30"),null==e?t:Array.isArray(e)?Array.isArray(t)?(e.push.apply(e,t),e):(e.push(t),e):Array.isArray(t)?[e].concat(t):[e,t]}function d(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)}function f(e,t){if(e){var n=e._dispatchListeners,i=e._dispatchInstances;if(Array.isArray(n))for(var r=0;r<n.length&&!e.isPropagationStopped();r++)u(e,t,n[r],i[r]);else n&&u(e,t,n,i);e._dispatchListeners=null,e._dispatchInstances=null,e.isPersistent()||e.constructor.release(e)}}function p(e){return f(e,!0)}function g(e){return f(e,!1)}function m(e,t){var n=e.stateNode;if(!n)return null;var r=xn(n);if(!r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":(r=!r.disabled)||(e=e.type,r=!("button"===e||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}return e?null:(n&&"function"!==typeof n&&i("231",t,typeof n),n)}function v(e,t){null!==e&&($n=h($n,e)),e=$n,$n=null,e&&(t?d(e,p):d(e,g),$n&&i("95"),vn.rethrowCaughtError())}function y(e,t,n,i){for(var r=null,o=0;o<wn.length;o++){var s=wn[o];s&&(s=s.extractEvents(e,t,n,i))&&(r=h(r,s))}v(r,!1)}function b(e){if(e[Tn])return e[Tn];for(;!e[Tn];){if(!e.parentNode)return null;e=e.parentNode}return e=e[Tn],5===e.tag||6===e.tag?e:null}function w(e){if(5===e.tag||6===e.tag)return e.stateNode;i("33")}function C(e){return e[Ln]||null}function A(e){do{e=e.return}while(e&&5!==e.tag);return e||null}function E(e,t,n){for(var i=[];e;)i.push(e),e=A(e);for(e=i.length;0<e--;)t(i[e],"captured",n);for(e=0;e<i.length;e++)t(i[e],"bubbled",n)}function F(e,t,n){(t=m(e,n.dispatchConfig.phasedRegistrationNames[t]))&&(n._dispatchListeners=h(n._dispatchListeners,t),n._dispatchInstances=h(n._dispatchInstances,e))}function x(e){e&&e.dispatchConfig.phasedRegistrationNames&&E(e._targetInst,F,e)}function k(e){if(e&&e.dispatchConfig.phasedRegistrationNames){var t=e._targetInst;t=t?A(t):null,E(t,F,e)}}function S(e,t,n){e&&n&&n.dispatchConfig.registrationName&&(t=m(e,n.dispatchConfig.registrationName))&&(n._dispatchListeners=h(n._dispatchListeners,t),n._dispatchInstances=h(n._dispatchInstances,e))}function $(e){e&&e.dispatchConfig.registrationName&&S(e._targetInst,null,e)}function _(e){d(e,x)}function D(e,t,n,i){if(n&&i)e:{for(var r=n,o=i,s=0,a=r;a;a=A(a))s++;a=0;for(var l=o;l;l=A(l))a++;for(;0<s-a;)r=A(r),s--;for(;0<a-s;)o=A(o),a--;for(;s--;){if(r===o||r===o.alternate)break e;r=A(r),o=A(o)}r=null}else r=null;for(o=r,r=[];n&&n!==o&&(null===(s=n.alternate)||s!==o);)r.push(n),n=A(n);for(n=[];i&&i!==o&&(null===(s=i.alternate)||s!==o);)n.push(i),i=A(i);for(i=0;i<r.length;i++)S(r[i],"bubbled",e);for(e=n.length;0<e--;)S(n[e],"captured",t)}function B(){return!Mn&&un.canUseDOM&&(Mn="textContent"in document.documentElement?"textContent":"innerText"),Mn}function T(){if(Pn._fallbackText)return Pn._fallbackText;var e,t,n=Pn._startText,i=n.length,r=L(),o=r.length;for(e=0;e<i&&n[e]===r[e];e++);var s=i-e;for(t=1;t<=s&&n[i-t]===r[o-t];t++);return Pn._fallbackText=r.slice(e,1<t?1-t:void 0),Pn._fallbackText}function L(){return"value"in Pn._root?Pn._root.value:Pn._root[B()]}function O(e,t,n,i){this.dispatchConfig=e,this._targetInst=t,this.nativeEvent=n,e=this.constructor.Interface;for(var r in e)e.hasOwnProperty(r)&&((t=e[r])?this[r]=t(n):"target"===r?this.target=i:this[r]=n[r]);return this.isDefaultPrevented=(null!=n.defaultPrevented?n.defaultPrevented:!1===n.returnValue)?dn.thatReturnsTrue:dn.thatReturnsFalse,this.isPropagationStopped=dn.thatReturnsFalse,this}function R(e,t,n,i){if(this.eventPool.length){var r=this.eventPool.pop();return this.call(r,e,t,n,i),r}return new this(e,t,n,i)}function M(e){e instanceof this||i("223"),e.destructor(),10>this.eventPool.length&&this.eventPool.push(e)}function P(e){e.eventPool=[],e.getPooled=R,e.release=M}function I(e,t){switch(e){case"topKeyUp":return-1!==Hn.indexOf(t.keyCode);case"topKeyDown":return 229!==t.keyCode;case"topKeyPress":case"topMouseDown":case"topBlur":return!0;default:return!1}}function j(e){return e=e.detail,"object"===typeof e&&"data"in e?e.data:null}function N(e,t){switch(e){case"topCompositionEnd":return j(t);case"topKeyPress":return 32!==t.which?null:(Yn=!0,Gn);case"topTextInput":return e=t.data,e===Gn&&Yn?null:e;default:return null}}function W(e,t){if(Qn)return"topCompositionEnd"===e||!zn&&I(e,t)?(e=T(),Pn._root=null,Pn._startText=null,Pn._fallbackText=null,Qn=!1,e):null;switch(e){case"topPaste":return null;case"topKeyPress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"topCompositionEnd":return Kn?null:t.data;default:return null}}function H(e){if(e=kn(e)){Jn&&"function"===typeof Jn.restoreControlledState||i("194");var t=xn(e.stateNode);Jn.restoreControlledState(e.stateNode,e.type,t)}}function z(e){Zn?ei?ei.push(e):ei=[e]:Zn=e}function U(){return null!==Zn||null!==ei}function V(){if(Zn){var e=Zn,t=ei;if(ei=Zn=null,H(e),t)for(e=0;e<t.length;e++)H(t[e])}}function K(e,t){return e(t)}function G(e,t,n){return e(t,n)}function q(){}function Y(e,t){if(ii)return e(t);ii=!0;try{return K(e,t)}finally{ii=!1,U()&&(q(),V())}}function Q(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!ri[e.type]:"textarea"===t}function X(e){return e=e.target||window,e.correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}function J(e,t){return!(!un.canUseDOM||t&&!("addEventListener"in document))&&(e="on"+e,t=e in document,t||(t=document.createElement("div"),t.setAttribute(e,"return;"),t="function"===typeof t[e]),t)}function Z(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function ee(e){var t=Z(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),i=""+e[t];if(!e.hasOwnProperty(t)&&"function"===typeof n.get&&"function"===typeof n.set)return Object.defineProperty(e,t,{configurable:!0,get:function(){return n.get.call(this)},set:function(e){i=""+e,n.set.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(e){i=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}function te(e){e._valueTracker||(e._valueTracker=ee(e))}function ne(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),i="";return e&&(i=Z(e)?e.checked?"true":"false":e.value),(e=i)!==n&&(t.setValue(e),!0)}function ie(e){return null===e||"undefined"===typeof e?null:(e=vi&&e[vi]||e["@@iterator"],"function"===typeof e?e:null)}function re(e){if("function"===typeof(e=e.type))return e.displayName||e.name;if("string"===typeof e)return e;switch(e){case hi:return"ReactFragment";case ui:return"ReactPortal";case li:return"ReactCall";case ci:return"ReactReturn"}return null}function oe(e){var t="";do{e:switch(e.tag){case 0:case 1:case 2:case 5:var n=e._debugOwner,i=e._debugSource,r=re(e),o=null;n&&(o=re(n)),n=i,r="\n in "+(r||"Unknown")+(n?" (at "+n.fileName.replace(/^.*[\\\/]/,"")+":"+n.lineNumber+")":o?" (created by "+o+")":"");break e;default:r=""}t+=r,e=e.return}while(e);return t}function se(e){return!!wi.hasOwnProperty(e)||!bi.hasOwnProperty(e)&&(yi.test(e)?wi[e]=!0:(bi[e]=!0,!1))}function ae(e,t,n,i){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!i&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}function le(e,t,n,i){if(null===t||"undefined"===typeof t||ae(e,t,n,i))return!0;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ce(e,t,n,i,r){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=i,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=e,this.type=t}function ue(e){return e[1].toUpperCase()}function he(e,t,n,i){var r=Ci.hasOwnProperty(t)?Ci[t]:null;(null!==r?0===r.type:!i&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(le(t,n,r,i)&&(n=null),i||null===r?se(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):r.mustUseProperty?e[r.propertyName]=null===n?3!==r.type&&"":n:(t=r.attributeName,i=r.attributeNamespace,null===n?e.removeAttribute(t):(r=r.type,n=3===r||4===r&&!0===n?"":""+n,i?e.setAttributeNS(i,t,n):e.setAttribute(t,n))))}function de(e,t){var n=t.checked;return hn({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function fe(e,t){var n=null==t.defaultValue?"":t.defaultValue,i=null!=t.checked?t.checked:t.defaultChecked;n=ye(null!=t.value?t.value:n),e._wrapperState={initialChecked:i,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function pe(e,t){null!=(t=t.checked)&&he(e,"checked",t,!1)}function ge(e,t){pe(e,t);var n=ye(t.value);null!=n&&("number"===t.type?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n)),t.hasOwnProperty("value")?ve(e,t.type,n):t.hasOwnProperty("defaultValue")&&ve(e,t.type,ye(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function me(e,t){(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue"))&&(""===e.value&&(e.value=""+e._wrapperState.initialValue),e.defaultValue=""+e._wrapperState.initialValue),t=e.name,""!==t&&(e.name=""),e.defaultChecked=!e.defaultChecked,e.defaultChecked=!e.defaultChecked,""!==t&&(e.name=t)}function ve(e,t,n){"number"===t&&e.ownerDocument.activeElement===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function ye(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function be(e,t,n){return e=O.getPooled(Ei.change,e,t,n),e.type="change",z(n),_(e),e}function we(e){v(e,!1)}function Ce(e){if(ne(w(e)))return e}function Ae(e,t){if("topChange"===e)return t}function Ee(){Fi&&(Fi.detachEvent("onpropertychange",Fe),xi=Fi=null)}function Fe(e){"value"===e.propertyName&&Ce(xi)&&(e=be(xi,e,X(e)),Y(we,e))}function xe(e,t,n){"topFocus"===e?(Ee(),Fi=t,xi=n,Fi.attachEvent("onpropertychange",Fe)):"topBlur"===e&&Ee()}function ke(e){if("topSelectionChange"===e||"topKeyUp"===e||"topKeyDown"===e)return Ce(xi)}function Se(e,t){if("topClick"===e)return Ce(t)}function $e(e,t){if("topInput"===e||"topChange"===e)return Ce(t)}function _e(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_i[e])&&!!t[e]}function De(){return _e}function Be(e){var t=e;if(e.alternate)for(;t.return;)t=t.return;else{if(0!==(2&t.effectTag))return 1;for(;t.return;)if(t=t.return,0!==(2&t.effectTag))return 1}return 3===t.tag?2:3}function Te(e){return!!(e=e._reactInternalFiber)&&2===Be(e)}function Le(e){2!==Be(e)&&i("188")}function Oe(e){var t=e.alternate;if(!t)return t=Be(e),3===t&&i("188"),1===t?null:e;for(var n=e,r=t;;){var o=n.return,s=o?o.alternate:null;if(!o||!s)break;if(o.child===s.child){for(var a=o.child;a;){if(a===n)return Le(o),e;if(a===r)return Le(o),t;a=a.sibling}i("188")}if(n.return!==r.return)n=o,r=s;else{a=!1;for(var l=o.child;l;){if(l===n){a=!0,n=o,r=s;break}if(l===r){a=!0,r=o,n=s;break}l=l.sibling}if(!a){for(l=s.child;l;){if(l===n){a=!0,n=s,r=o;break}if(l===r){a=!0,r=s,n=o;break}l=l.sibling}a||i("189")}}n.alternate!==r&&i("190")}return 3!==n.tag&&i("188"),n.stateNode.current===n?e:t}function Re(e){if(!(e=Oe(e)))return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Me(e){if(!(e=Oe(e)))return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child&&4!==t.tag)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Pe(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function Ie(e,t){var n=e[0].toUpperCase()+e.slice(1),i="on"+n;n="top"+n,t={phasedRegistrationNames:{bubbled:i,captured:i+"Capture"},dependencies:[n],isInteractive:t},zi[e]=t,Ui[n]=t}function je(e){var t=e.targetInst;do{if(!t){e.ancestors.push(t);break}var n;for(n=t;n.return;)n=n.return;if(!(n=3!==n.tag?null:n.stateNode.containerInfo))break;e.ancestors.push(t),t=b(n)}while(t);for(n=0;n<e.ancestors.length;n++)t=e.ancestors[n],y(e.topLevelType,t,e.nativeEvent,X(e.nativeEvent))}function Ne(e){qi=!!e}function We(e,t,n){if(!n)return null;e=(Ki(e)?ze:Ue).bind(null,e),n.addEventListener(t,e,!1)}function He(e,t,n){if(!n)return null;e=(Ki(e)?ze:Ue).bind(null,e),n.addEventListener(t,e,!0)}function ze(e,t){G(Ue,e,t)}function Ue(e,t){if(qi){var n=X(t);if(n=b(n),null!==n&&"number"===typeof n.tag&&2!==Be(n)&&(n=null),Gi.length){var i=Gi.pop();i.topLevelType=e,i.nativeEvent=t,i.targetInst=n,e=i}else e={topLevelType:e,nativeEvent:t,targetInst:n,ancestors:[]};try{Y(je,e)}finally{e.topLevelType=null,e.nativeEvent=null,e.targetInst=null,e.ancestors.length=0,10>Gi.length&&Gi.push(e)}}}function Ve(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n["ms"+e]="MS"+t,n["O"+e]="o"+t.toLowerCase(),n}function Ke(e){if(Xi[e])return Xi[e];if(!Qi[e])return e;var t,n=Qi[e];for(t in n)if(n.hasOwnProperty(t)&&t in Ji)return Xi[e]=n[t];return e}function Ge(e){return Object.prototype.hasOwnProperty.call(e,ir)||(e[ir]=nr++,tr[e[ir]]={}),tr[e[ir]]}function qe(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Ye(e,t){var n=qe(e);e=0;for(var i;n;){if(3===n.nodeType){if(i=e+n.textContent.length,e<=t&&i>=t)return{node:n,offset:t-e};e=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=qe(n)}}function Qe(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&"text"===e.type||"textarea"===t||"true"===e.contentEditable)}function Xe(e,t){if(cr||null==sr||sr!==fn())return null;var n=sr;return"selectionStart"in n&&Qe(n)?n={start:n.selectionStart,end:n.selectionEnd}:window.getSelection?(n=window.getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}):n=void 0,lr&&pn(lr,n)?null:(lr=n,e=O.getPooled(or.select,ar,e,t),e.type="select",e.target=sr,_(e),e)}function Je(e,t,n,i){this.tag=e,this.key=n,this.stateNode=this.type=null,this.sibling=this.child=this.return=null,this.index=0,this.ref=null,this.pendingProps=t,this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.effectTag=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.expirationTime=0,this.alternate=null}function Ze(e,t,n){var i=e.alternate;return null===i?(i=new Je(e.tag,t,e.key,e.mode),i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=t,i.effectTag=0,i.nextEffect=null,i.firstEffect=null,i.lastEffect=null),i.expirationTime=n,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i}function et(e,t,n){var r=e.type,o=e.key;e=e.props;var s=void 0;if("function"===typeof r)s=r.prototype&&r.prototype.isReactComponent?2:0;else if("string"===typeof r)s=5;else switch(r){case hi:return tt(e.children,t,n,o);case gi:s=11,t|=3;break;case di:s=11,t|=2;break;case li:s=7;break;case ci:s=9;break;default:if("object"===typeof r&&null!==r)switch(r.$$typeof){case fi:s=13;break;case pi:s=12;break;case mi:s=14;break;default:if("number"===typeof r.tag)return t=r,t.pendingProps=e,t.expirationTime=n,t;i("130",null==r?r:typeof r,"")}else i("130",null==r?r:typeof r,"")}return t=new Je(s,e,o,t),t.type=r,t.expirationTime=n,t}function tt(e,t,n,i){return e=new Je(10,e,i,t),e.expirationTime=n,e}function nt(e,t,n){return e=new Je(6,e,null,t),e.expirationTime=n,e}function it(e,t,n){return t=new Je(4,null!==e.children?e.children:[],e.key,t),t.expirationTime=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function rt(e){return function(t){try{return e(t)}catch(e){}}}function ot(e){if("undefined"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)return!0;try{var n=t.inject(e);hr=rt(function(e){return t.onCommitFiberRoot(n,e)}),dr=rt(function(e){return t.onCommitFiberUnmount(n,e)})}catch(e){}return!0}function st(e){"function"===typeof hr&&hr(e)}function at(e){"function"===typeof dr&&dr(e)}function lt(e){return{baseState:e,expirationTime:0,first:null,last:null,callbackList:null,hasForceUpdate:!1,isInitialized:!1,capturedValues:null}}function ct(e,t){null===e.last?e.first=e.last=t:(e.last.next=t,e.last=t),(0===e.expirationTime||e.expirationTime>t.expirationTime)&&(e.expirationTime=t.expirationTime)}function ut(e){fr=pr=null;var t=e.alternate,n=e.updateQueue;null===n&&(n=e.updateQueue=lt(null)),null!==t?null===(e=t.updateQueue)&&(e=t.updateQueue=lt(null)):e=null,fr=n,pr=e!==n?e:null}function ht(e,t){ut(e),e=fr;var n=pr;null===n?ct(e,t):null===e.last||null===n.last?(ct(e,t),ct(n,t)):(ct(e,t),n.last=t)}function dt(e,t,n,i){return e=e.partialState,"function"===typeof e?e.call(t,n,i):e}function ft(e,t,n,i,r,o){null!==e&&e.updateQueue===n&&(n=t.updateQueue={baseState:n.baseState,expirationTime:n.expirationTime,first:n.first,last:n.last,isInitialized:n.isInitialized,capturedValues:n.capturedValues,callbackList:null,hasForceUpdate:!1}),n.expirationTime=0,n.isInitialized?e=n.baseState:(e=n.baseState=t.memoizedState,n.isInitialized=!0);for(var s=!0,a=n.first,l=!1;null!==a;){var c=a.expirationTime;if(c>o){var u=n.expirationTime;(0===u||u>c)&&(n.expirationTime=c),l||(l=!0,n.baseState=e)}else l||(n.first=a.next,null===n.first&&(n.last=null)),a.isReplace?(e=dt(a,i,e,r),s=!0):(c=dt(a,i,e,r))&&(e=s?hn({},e,c):hn(e,c),s=!1),a.isForced&&(n.hasForceUpdate=!0),null!==a.callback&&(c=n.callbackList,null===c&&(c=n.callbackList=[]),c.push(a)),null!==a.capturedValue&&(c=n.capturedValues,null===c?n.capturedValues=[a.capturedValue]:c.push(a.capturedValue));a=a.next}return null!==n.callbackList?t.effectTag|=32:null!==n.first||n.hasForceUpdate||null!==n.capturedValues||(t.updateQueue=null),l||(n.baseState=e),e}function pt(e,t){var n=e.callbackList;if(null!==n)for(e.callbackList=null,e=0;e<n.length;e++){var r=n[e],o=r.callback;r.callback=null,"function"!==typeof o&&i("191",o),o.call(t)}}function gt(e,t,n,i,r){function o(e,t,n,i,r,o){if(null===t||null!==e.updateQueue&&e.updateQueue.hasForceUpdate)return!0;var s=e.stateNode;return e=e.type,"function"===typeof s.shouldComponentUpdate?s.shouldComponentUpdate(n,r,o):!e.prototype||!e.prototype.isPureReactComponent||(!pn(t,n)||!pn(i,r))}function s(e,t){t.updater=p,e.stateNode=t,t._reactInternalFiber=e}function a(e,t,n,i){e=t.state,"function"===typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,i),"function"===typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,i),t.state!==e&&p.enqueueReplaceState(t,t.state,null)}function l(e,t,n,i){if(e=e.type,"function"===typeof e.getDerivedStateFromProps)return e.getDerivedStateFromProps.call(null,n,i)}var c=e.cacheContext,u=e.getMaskedContext,h=e.getUnmaskedContext,d=e.isContextConsumer,f=e.hasContextChanged,p={isMounted:Te,enqueueSetState:function(e,i,r){e=e._reactInternalFiber,r=void 0===r?null:r;var o=n(e);ht(e,{expirationTime:o,partialState:i,callback:r,isReplace:!1,isForced:!1,capturedValue:null,next:null}),t(e,o)},enqueueReplaceState:function(e,i,r){e=e._reactInternalFiber,r=void 0===r?null:r;var o=n(e);ht(e,{expirationTime:o,partialState:i,callback:r,isReplace:!0,isForced:!1,capturedValue:null,next:null}),t(e,o)},enqueueForceUpdate:function(e,i){e=e._reactInternalFiber,i=void 0===i?null:i;var r=n(e);ht(e,{expirationTime:r,partialState:null,callback:i,isReplace:!1,isForced:!0,capturedValue:null,next:null}),t(e,r)}};return{adoptClassInstance:s,callGetDerivedStateFromProps:l,constructClassInstance:function(e,t){var n=e.type,i=h(e),r=d(e),o=r?u(e,i):mn;n=new n(t,o);var a=null!==n.state&&void 0!==n.state?n.state:null;return s(e,n),e.memoizedState=a,t=l(e,n,t,a),null!==t&&void 0!==t&&(e.memoizedState=hn({},e.memoizedState,t)),r&&c(e,i,o),n},mountClassInstance:function(e,t){var n=e.type,i=e.alternate,r=e.stateNode,o=e.pendingProps,s=h(e);r.props=o,r.state=e.memoizedState,r.refs=mn,r.context=u(e,s),"function"===typeof n.getDerivedStateFromProps||"function"===typeof r.getSnapshotBeforeUpdate||"function"!==typeof r.UNSAFE_componentWillMount&&"function"!==typeof r.componentWillMount||(n=r.state,"function"===typeof r.componentWillMount&&r.componentWillMount(),"function"===typeof r.UNSAFE_componentWillMount&&r.UNSAFE_componentWillMount(),n!==r.state&&p.enqueueReplaceState(r,r.state,null),null!==(n=e.updateQueue)&&(r.state=ft(i,e,n,r,o,t))),"function"===typeof r.componentDidMount&&(e.effectTag|=4)},resumeMountClassInstance:function(e,t){var n=e.type,s=e.stateNode;s.props=e.memoizedProps,s.state=e.memoizedState;var c=e.memoizedProps,d=e.pendingProps,p=s.context,g=h(e);g=u(e,g),(n="function"===typeof n.getDerivedStateFromProps||"function"===typeof s.getSnapshotBeforeUpdate)||"function"!==typeof s.UNSAFE_componentWillReceiveProps&&"function"!==typeof s.componentWillReceiveProps||(c!==d||p!==g)&&a(e,s,d,g),p=e.memoizedState,t=null!==e.updateQueue?ft(null,e,e.updateQueue,s,d,t):p;var m=void 0;if(c!==d&&(m=l(e,s,d,t)),null!==m&&void 0!==m){t=null===t||void 0===t?m:hn({},t,m);var v=e.updateQueue;null!==v&&(v.baseState=hn({},v.baseState,m))}return c!==d||p!==t||f()||null!==e.updateQueue&&e.updateQueue.hasForceUpdate?((c=o(e,c,d,p,t,g))?(n||"function"!==typeof s.UNSAFE_componentWillMount&&"function"!==typeof s.componentWillMount||("function"===typeof s.componentWillMount&&s.componentWillMount(),"function"===typeof s.UNSAFE_componentWillMount&&s.UNSAFE_componentWillMount()),"function"===typeof s.componentDidMount&&(e.effectTag|=4)):("function"===typeof s.componentDidMount&&(e.effectTag|=4),i(e,d),r(e,t)),s.props=d,s.state=t,s.context=g,c):("function"===typeof s.componentDidMount&&(e.effectTag|=4),!1)},updateClassInstance:function(e,t,n){var s=t.type,c=t.stateNode;c.props=t.memoizedProps,c.state=t.memoizedState;var d=t.memoizedProps,p=t.pendingProps,g=c.context,m=h(t);m=u(t,m),(s="function"===typeof s.getDerivedStateFromProps||"function"===typeof c.getSnapshotBeforeUpdate)||"function"!==typeof c.UNSAFE_componentWillReceiveProps&&"function"!==typeof c.componentWillReceiveProps||(d!==p||g!==m)&&a(t,c,p,m),g=t.memoizedState,n=null!==t.updateQueue?ft(e,t,t.updateQueue,c,p,n):g;var v=void 0;if(d!==p&&(v=l(t,c,p,n)),null!==v&&void 0!==v){n=null===n||void 0===n?v:hn({},n,v);var y=t.updateQueue;null!==y&&(y.baseState=hn({},y.baseState,v))}return d!==p||g!==n||f()||null!==t.updateQueue&&t.updateQueue.hasForceUpdate?((v=o(t,d,p,g,n,m))?(s||"function"!==typeof c.UNSAFE_componentWillUpdate&&"function"!==typeof c.componentWillUpdate||("function"===typeof c.componentWillUpdate&&c.componentWillUpdate(p,n,m),"function"===typeof c.UNSAFE_componentWillUpdate&&c.UNSAFE_componentWillUpdate(p,n,m)),"function"===typeof c.componentDidUpdate&&(t.effectTag|=4),"function"===typeof c.getSnapshotBeforeUpdate&&(t.effectTag|=2048)):("function"!==typeof c.componentDidUpdate||d===e.memoizedProps&&g===e.memoizedState||(t.effectTag|=4),"function"!==typeof c.getSnapshotBeforeUpdate||d===e.memoizedProps&&g===e.memoizedState||(t.effectTag|=2048),i(t,p),r(t,n)),c.props=p,c.state=n,c.context=m,v):("function"!==typeof c.componentDidUpdate||d===e.memoizedProps&&g===e.memoizedState||(t.effectTag|=4),"function"!==typeof c.getSnapshotBeforeUpdate||d===e.memoizedProps&&g===e.memoizedState||(t.effectTag|=2048),!1)}}}function mt(e,t,n){if(null!==(e=n.ref)&&"function"!==typeof e&&"object"!==typeof e){if(n._owner){n=n._owner;var r=void 0;n&&(2!==n.tag&&i("110"),r=n.stateNode),r||i("147",e);var o=""+e;return null!==t&&null!==t.ref&&t.ref._stringRef===o?t.ref:(t=function(e){var t=r.refs===mn?r.refs={}:r.refs;null===e?delete t[o]:t[o]=e},t._stringRef=o,t)}"string"!==typeof e&&i("148"),n._owner||i("254",e)}return e}function vt(e,t){"textarea"!==e.type&&i("31","[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t,"")}function yt(e){function t(t,n){if(e){var i=t.lastEffect;null!==i?(i.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.effectTag=8}}function n(n,i){if(!e)return null;for(;null!==i;)t(n,i),i=i.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t,n){return e=Ze(e,t,n),e.index=0,e.sibling=null,e}function s(t,n,i){return t.index=i,e?null!==(i=t.alternate)?(i=i.index,i<n?(t.effectTag=2,n):i):(t.effectTag=2,n):n}function a(t){return e&&null===t.alternate&&(t.effectTag=2),t}function l(e,t,n,i){return null===t||6!==t.tag?(t=nt(n,e.mode,i),t.return=e,t):(t=o(t,n,i),t.return=e,t)}function c(e,t,n,i){return null!==t&&t.type===n.type?(i=o(t,n.props,i),i.ref=mt(e,t,n),i.return=e,i):(i=et(n,e.mode,i),i.ref=mt(e,t,n),i.return=e,i)}function u(e,t,n,i){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=it(n,e.mode,i),t.return=e,t):(t=o(t,n.children||[],i),t.return=e,t)}function h(e,t,n,i,r){return null===t||10!==t.tag?(t=tt(n,e.mode,i,r),t.return=e,t):(t=o(t,n,i),t.return=e,t)}function d(e,t,n){if("string"===typeof t||"number"===typeof t)return t=nt(""+t,e.mode,n),t.return=e,t;if("object"===typeof t&&null!==t){switch(t.$$typeof){case ai:return n=et(t,e.mode,n),n.ref=mt(e,null,t),n.return=e,n;case ui:return t=it(t,e.mode,n),t.return=e,t}if(gr(t)||ie(t))return t=tt(t,e.mode,n,null),t.return=e,t;vt(e,t)}return null}function f(e,t,n,i){var r=null!==t?t.key:null;if("string"===typeof n||"number"===typeof n)return null!==r?null:l(e,t,""+n,i);if("object"===typeof n&&null!==n){switch(n.$$typeof){case ai:return n.key===r?n.type===hi?h(e,t,n.props.children,i,r):c(e,t,n,i):null;case ui:return n.key===r?u(e,t,n,i):null}if(gr(n)||ie(n))return null!==r?null:h(e,t,n,i,null);vt(e,n)}return null}function p(e,t,n,i,r){if("string"===typeof i||"number"===typeof i)return e=e.get(n)||null,l(t,e,""+i,r);if("object"===typeof i&&null!==i){switch(i.$$typeof){case ai:return e=e.get(null===i.key?n:i.key)||null,i.type===hi?h(t,e,i.props.children,r,i.key):c(t,e,i,r);case ui:return e=e.get(null===i.key?n:i.key)||null,u(t,e,i,r)}if(gr(i)||ie(i))return e=e.get(n)||null,h(t,e,i,r,null);vt(t,i)}return null}function g(i,o,a,l){for(var c=null,u=null,h=o,g=o=0,m=null;null!==h&&g<a.length;g++){h.index>g?(m=h,h=null):m=h.sibling;var v=f(i,h,a[g],l);if(null===v){null===h&&(h=m);break}e&&h&&null===v.alternate&&t(i,h),o=s(v,o,g),null===u?c=v:u.sibling=v,u=v,h=m}if(g===a.length)return n(i,h),c;if(null===h){for(;g<a.length;g++)(h=d(i,a[g],l))&&(o=s(h,o,g),null===u?c=h:u.sibling=h,u=h);return c}for(h=r(i,h);g<a.length;g++)(m=p(h,i,g,a[g],l))&&(e&&null!==m.alternate&&h.delete(null===m.key?g:m.key),o=s(m,o,g),null===u?c=m:u.sibling=m,u=m);return e&&h.forEach(function(e){return t(i,e)}),c}function m(o,a,l,c){var u=ie(l);"function"!==typeof u&&i("150"),null==(l=u.call(l))&&i("151");for(var h=u=null,g=a,m=a=0,v=null,y=l.next();null!==g&&!y.done;m++,y=l.next()){g.index>m?(v=g,g=null):v=g.sibling;var b=f(o,g,y.value,c);if(null===b){g||(g=v);break}e&&g&&null===b.alternate&&t(o,g),a=s(b,a,m),null===h?u=b:h.sibling=b,h=b,g=v}if(y.done)return n(o,g),u;if(null===g){for(;!y.done;m++,y=l.next())null!==(y=d(o,y.value,c))&&(a=s(y,a,m),null===h?u=y:h.sibling=y,h=y);return u}for(g=r(o,g);!y.done;m++,y=l.next())null!==(y=p(g,o,m,y.value,c))&&(e&&null!==y.alternate&&g.delete(null===y.key?m:y.key),a=s(y,a,m),null===h?u=y:h.sibling=y,h=y);return e&&g.forEach(function(e){return t(o,e)}),u}return function(e,r,s,l){"object"===typeof s&&null!==s&&s.type===hi&&null===s.key&&(s=s.props.children);var c="object"===typeof s&&null!==s;if(c)switch(s.$$typeof){case ai:e:{var u=s.key;for(c=r;null!==c;){if(c.key===u){if(10===c.tag?s.type===hi:c.type===s.type){n(e,c.sibling),r=o(c,s.type===hi?s.props.children:s.props,l),r.ref=mt(e,c,s),r.return=e,e=r;break e}n(e,c);break}t(e,c),c=c.sibling}s.type===hi?(r=tt(s.props.children,e.mode,l,s.key),r.return=e,e=r):(l=et(s,e.mode,l),l.ref=mt(e,r,s),l.return=e,e=l)}return a(e);case ui:e:{for(c=s.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===s.containerInfo&&r.stateNode.implementation===s.implementation){n(e,r.sibling),r=o(r,s.children||[],l),r.return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}r=it(s,e.mode,l),r.return=e,e=r}return a(e)}if("string"===typeof s||"number"===typeof s)return s=""+s,null!==r&&6===r.tag?(n(e,r.sibling),r=o(r,s,l)):(n(e,r),r=nt(s,e.mode,l)),r.return=e,e=r,a(e);if(gr(s))return g(e,r,s,l);if(ie(s))return m(e,r,s,l);if(c&&vt(e,s),"undefined"===typeof s)switch(e.tag){case 2:case 1:l=e.type,i("152",l.displayName||l.name||"Component")}return n(e,r)}}function bt(e,t,n,r,o,s,a){function l(e,t,n){c(e,t,n,t.expirationTime)}function c(e,t,n,i){t.child=null===e?vr(t,null,n,i):mr(t,e.child,n,i)}function u(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.effectTag|=128)}function h(e,t,n,i,r,o){if(u(e,t),!n&&!r)return i&&k(t,!1),g(e,t);n=t.stateNode,oi.current=t;var s=r?null:n.render();return t.effectTag|=1,r&&(c(e,t,null,o),t.child=null),c(e,t,s,o),t.memoizedState=n.state,t.memoizedProps=n.props,i&&k(t,!0),t.child}function d(e){var t=e.stateNode;t.pendingContext?x(e,t.pendingContext,t.pendingContext!==t.context):t.context&&x(e,t.context,!1),b(e,t.containerInfo)}function f(e,t,n,i){var r=e.child;for(null!==r&&(r.return=e);null!==r;){switch(r.tag){case 12:var o=0|r.stateNode;if(r.type===t&&0!==(o&n)){for(o=r;null!==o;){var s=o.alternate;if(0===o.expirationTime||o.expirationTime>i)o.expirationTime=i,null!==s&&(0===s.expirationTime||s.expirationTime>i)&&(s.expirationTime=i);else{if(null===s||!(0===s.expirationTime||s.expirationTime>i))break;s.expirationTime=i}o=o.return}o=null}else o=r.child;break;case 13:o=r.type===e.type?null:r.child;break;default:o=r.child}if(null!==o)o.return=r;else for(o=r;null!==o;){if(o===e){o=null;break}if(null!==(r=o.sibling)){o=r;break}o=o.return}r=o}}function p(e,t,n){var i=t.type._context,r=t.pendingProps,o=t.memoizedProps;if(!E()&&o===r)return t.stateNode=0,w(t),g(e,t);var s=r.value;if(t.memoizedProps=r,null===o)s=1073741823;else if(o.value===r.value){if(o.children===r.children)return t.stateNode=0,w(t),g(e,t);s=0}else{var a=o.value;if(a===s&&(0!==a||1/a===1/s)||a!==a&&s!==s){if(o.children===r.children)return t.stateNode=0,w(t),g(e,t);s=0}else if(s="function"===typeof i._calculateChangedBits?i._calculateChangedBits(a,s):1073741823,0===(s|=0)){if(o.children===r.children)return t.stateNode=0,w(t),g(e,t)}else f(t,i,s,n)}return t.stateNode=s,w(t),l(e,t,r.children),t.child}function g(e,t){if(null!==e&&t.child!==e.child&&i("153"),null!==t.child){e=t.child;var n=Ze(e,e.pendingProps,e.expirationTime);for(t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,n=n.sibling=Ze(e,e.pendingProps,e.expirationTime),n.return=t;n.sibling=null}return t.child}var m=e.shouldSetTextContent,v=e.shouldDeprioritizeSubtree,y=t.pushHostContext,b=t.pushHostContainer,w=r.pushProvider,C=n.getMaskedContext,A=n.getUnmaskedContext,E=n.hasContextChanged,F=n.pushContextProvider,x=n.pushTopLevelContextObject,k=n.invalidateContextProvider,S=o.enterHydrationState,$=o.resetHydrationState,_=o.tryToClaimNextHydratableInstance;e=gt(n,s,a,function(e,t){e.memoizedProps=t},function(e,t){e.memoizedState=t});var D=e.adoptClassInstance,B=e.callGetDerivedStateFromProps,T=e.constructClassInstance,L=e.mountClassInstance,O=e.resumeMountClassInstance,R=e.updateClassInstance;return{beginWork:function(e,t,n){if(0===t.expirationTime||t.expirationTime>n){switch(t.tag){case 3:d(t);break;case 2:F(t);break;case 4:b(t,t.stateNode.containerInfo);break;case 13:w(t)}return null}switch(t.tag){case 0:null!==e&&i("155");var r=t.type,o=t.pendingProps,s=A(t);return s=C(t,s),r=r(o,s),t.effectTag|=1,"object"===typeof r&&null!==r&&"function"===typeof r.render&&void 0===r.$$typeof?(s=t.type,t.tag=2,t.memoizedState=null!==r.state&&void 0!==r.state?r.state:null,"function"===typeof s.getDerivedStateFromProps&&null!==(o=B(t,r,o,t.memoizedState))&&void 0!==o&&(t.memoizedState=hn({},t.memoizedState,o)),o=F(t),D(t,r),L(t,n),e=h(e,t,!0,o,!1,n)):(t.tag=1,l(e,t,r),t.memoizedProps=o,e=t.child),e;case 1:return o=t.type,n=t.pendingProps,E()||t.memoizedProps!==n?(r=A(t),r=C(t,r),o=o(n,r),t.effectTag|=1,l(e,t,o),t.memoizedProps=n,e=t.child):e=g(e,t),e;case 2:o=F(t),null===e?null===t.stateNode?(T(t,t.pendingProps),L(t,n),r=!0):r=O(t,n):r=R(e,t,n),s=!1;var a=t.updateQueue;return null!==a&&null!==a.capturedValues&&(s=r=!0),h(e,t,r,o,s,n);case 3:e:if(d(t),null!==(r=t.updateQueue)){if(s=t.memoizedState,o=ft(e,t,r,null,null,n),t.memoizedState=o,null!==(r=t.updateQueue)&&null!==r.capturedValues)r=null;else{if(s===o){$(),e=g(e,t);break e}r=o.element}s=t.stateNode,(null===e||null===e.child)&&s.hydrate&&S(t)?(t.effectTag|=2,t.child=vr(t,null,r,n)):($(),l(e,t,r)),t.memoizedState=o,e=t.child}else $(),e=g(e,t);return e;case 5:return y(t),null===e&&_(t),o=t.type,a=t.memoizedProps,r=t.pendingProps,s=null!==e?e.memoizedProps:null,E()||a!==r||((a=1&t.mode&&v(o,r))&&(t.expirationTime=1073741823),a&&1073741823===n)?(a=r.children,m(o,r)?a=null:s&&m(o,s)&&(t.effectTag|=16),u(e,t),1073741823!==n&&1&t.mode&&v(o,r)?(t.expirationTime=1073741823,t.memoizedProps=r,e=null):(l(e,t,a),t.memoizedProps=r,e=t.child)):e=g(e,t),e;case 6:return null===e&&_(t),t.memoizedProps=t.pendingProps,null;case 8:t.tag=7;case 7:return o=t.pendingProps,E()||t.memoizedProps!==o||(o=t.memoizedProps),r=o.children,t.stateNode=null===e?vr(t,t.stateNode,r,n):mr(t,e.stateNode,r,n),t.memoizedProps=o,t.stateNode;case 9:return null;case 4:return b(t,t.stateNode.containerInfo),o=t.pendingProps,E()||t.memoizedProps!==o?(null===e?t.child=mr(t,null,o,n):l(e,t,o),t.memoizedProps=o,e=t.child):e=g(e,t),e;case 14:return n=t.type.render,n=n(t.pendingProps,t.ref),l(e,t,n),t.memoizedProps=n,t.child;case 10:return n=t.pendingProps,E()||t.memoizedProps!==n?(l(e,t,n),t.memoizedProps=n,e=t.child):e=g(e,t),e;case 11:return n=t.pendingProps.children,E()||null!==n&&t.memoizedProps!==n?(l(e,t,n),t.memoizedProps=n,e=t.child):e=g(e,t),e;case 13:return p(e,t,n);case 12:r=t.type,s=t.pendingProps;var c=t.memoizedProps;return o=r._currentValue,a=r._changedBits,E()||0!==a||c!==s?(t.memoizedProps=s,c=s.unstable_observedBits,void 0!==c&&null!==c||(c=1073741823),t.stateNode=c,0!==(a&c)&&f(t,r,a,n),n=s.children,n=n(o),l(e,t,n),e=t.child):e=g(e,t),e;default:i("156")}}}}function wt(e,t,n,r,o){function s(e){e.effectTag|=4}var a=e.createInstance,l=e.createTextInstance,c=e.appendInitialChild,u=e.finalizeInitialChildren,h=e.prepareUpdate,d=e.persistence,f=t.getRootHostContainer,p=t.popHostContext,g=t.getHostContext,m=t.popHostContainer,v=n.popContextProvider,y=n.popTopLevelContextObject,b=r.popProvider,w=o.prepareToHydrateHostInstance,C=o.prepareToHydrateHostTextInstance,A=o.popHydrationState,E=void 0,F=void 0,x=void 0;return e.mutation?(E=function(){},F=function(e,t,n){(t.updateQueue=n)&&s(t)},x=function(e,t,n,i){n!==i&&s(t)}):i(d?"235":"236"),{completeWork:function(e,t,n){var r=t.pendingProps;switch(t.tag){case 1:return null;case 2:return v(t),e=t.stateNode,r=t.updateQueue,null!==r&&null!==r.capturedValues&&(t.effectTag&=-65,"function"===typeof e.componentDidCatch?t.effectTag|=256:r.capturedValues=null),null;case 3:return m(t),y(t),r=t.stateNode,r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(A(t),t.effectTag&=-3),E(t),e=t.updateQueue,null!==e&&null!==e.capturedValues&&(t.effectTag|=256),null;case 5:p(t),n=f();var o=t.type;if(null!==e&&null!=t.stateNode){var d=e.memoizedProps,k=t.stateNode,S=g();k=h(k,o,d,r,n,S),F(e,t,k,o,d,r,n,S),e.ref!==t.ref&&(t.effectTag|=128)}else{if(!r)return null===t.stateNode&&i("166"),null;if(e=g(),A(t))w(t,n,e)&&s(t);else{d=a(o,r,n,e,t);e:for(S=t.child;null!==S;){if(5===S.tag||6===S.tag)c(d,S.stateNode);else if(4!==S.tag&&null!==S.child){S.child.return=S,S=S.child;continue}if(S===t)break;for(;null===S.sibling;){if(null===S.return||S.return===t)break e;S=S.return}S.sibling.return=S.return,S=S.sibling}u(d,o,r,n,e)&&s(t),t.stateNode=d}null!==t.ref&&(t.effectTag|=128)}return null;case 6:if(e&&null!=t.stateNode)x(e,t,e.memoizedProps,r);else{if("string"!==typeof r)return null===t.stateNode&&i("166"),null;e=f(),n=g(),A(t)?C(t)&&s(t):t.stateNode=l(r,e,n,t)}return null;case 7:(r=t.memoizedProps)||i("165"),t.tag=8,o=[];e:for((d=t.stateNode)&&(d.return=t);null!==d;){if(5===d.tag||6===d.tag||4===d.tag)i("247");else if(9===d.tag)o.push(d.pendingProps.value);else if(null!==d.child){d.child.return=d,d=d.child;continue}for(;null===d.sibling;){if(null===d.return||d.return===t)break e;d=d.return}d.sibling.return=d.return,d=d.sibling}return d=r.handler,r=d(r.props,o),t.child=mr(t,null!==e?e.child:null,r,n),t.child;case 8:return t.tag=7,null;case 9:case 14:case 10:case 11:return null;case 4:return m(t),E(t),null;case 13:return b(t),null;case 12:return null;case 0:i("167");default:i("156")}}}}function Ct(e,t,n,i,r){var o=e.popHostContainer,s=e.popHostContext,a=t.popContextProvider,l=t.popTopLevelContextObject,c=n.popProvider;return{throwException:function(e,t,n){t.effectTag|=512,t.firstEffect=t.lastEffect=null,t={value:n,source:t,stack:oe(t)};do{switch(e.tag){case 3:return ut(e),e.updateQueue.capturedValues=[t],void(e.effectTag|=1024);case 2:if(n=e.stateNode,0===(64&e.effectTag)&&null!==n&&"function"===typeof n.componentDidCatch&&!r(n)){ut(e),n=e.updateQueue;var i=n.capturedValues;return null===i?n.capturedValues=[t]:i.push(t),void(e.effectTag|=1024)}}e=e.return}while(null!==e)},unwindWork:function(e){switch(e.tag){case 2:a(e);var t=e.effectTag;return 1024&t?(e.effectTag=-1025&t|64,e):null;case 3:return o(e),l(e),t=e.effectTag,1024&t?(e.effectTag=-1025&t|64,e):null;case 5:return s(e),null;case 4:return o(e),null;case 13:return c(e),null;default:return null}},unwindInterruptedWork:function(e){switch(e.tag){case 2:a(e);break;case 3:o(e),l(e);break;case 5:s(e);break;case 4:o(e);break;case 13:c(e)}}}}function At(e,t){var n=t.source;null===t.stack&&oe(n),null!==n&&re(n),t=t.value,null!==e&&2===e.tag&&re(e);try{t&&t.suppressReactErrorLogging||console.error(t)}catch(e){e&&e.suppressReactErrorLogging||console.error(e)}}function Et(e,t,n,r,o){function s(e){var n=e.ref;if(null!==n)if("function"===typeof n)try{n(null)}catch(n){t(e,n)}else n.current=null}function a(e){switch("function"===typeof at&&at(e),e.tag){case 2:s(e);var n=e.stateNode;if("function"===typeof n.componentWillUnmount)try{n.props=e.memoizedProps,n.state=e.memoizedState,n.componentWillUnmount()}catch(n){t(e,n)}break;case 5:s(e);break;case 7:l(e.stateNode);break;case 4:d&&u(e)}}function l(e){for(var t=e;;)if(a(t),null===t.child||d&&4===t.tag){if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return;t=t.return}t.sibling.return=t.return,t=t.sibling}else t.child.return=t,t=t.child}function c(e){return 5===e.tag||3===e.tag||4===e.tag}function u(e){for(var t=e,n=!1,r=void 0,o=void 0;;){if(!n){n=t.return;e:for(;;){switch(null===n&&i("160"),n.tag){case 5:r=n.stateNode,o=!1;break e;case 3:case 4:r=n.stateNode.containerInfo,o=!0;break e}n=n.return}n=!0}if(5===t.tag||6===t.tag)l(t),o?A(r,t.stateNode):C(r,t.stateNode);else if(4===t.tag?r=t.stateNode.containerInfo:a(t),null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return;t=t.return,4===t.tag&&(n=!1)}t.sibling.return=t.return,t=t.sibling}}var h=e.getPublicInstance,d=e.mutation;e=e.persistence,d||i(e?"235":"236");var f=d.commitMount,p=d.commitUpdate,g=d.resetTextContent,m=d.commitTextUpdate,v=d.appendChild,y=d.appendChildToContainer,b=d.insertBefore,w=d.insertInContainerBefore,C=d.removeChild,A=d.removeChildFromContainer;return{commitBeforeMutationLifeCycles:function(e,t){switch(t.tag){case 2:if(2048&t.effectTag&&null!==e){var n=e.memoizedProps,r=e.memoizedState;e=t.stateNode,e.props=t.memoizedProps,e.state=t.memoizedState,t=e.getSnapshotBeforeUpdate(n,r),e.__reactInternalSnapshotBeforeUpdate=t}break;case 3:case 5:case 6:case 4:break;default:i("163")}},commitResetTextContent:function(e){g(e.stateNode)},commitPlacement:function(e){e:{for(var t=e.return;null!==t;){if(c(t)){var n=t;break e}t=t.return}i("160"),n=void 0}var r=t=void 0;switch(n.tag){case 5:t=n.stateNode,r=!1;break;case 3:case 4:t=n.stateNode.containerInfo,r=!0;break;default:i("161")}16&n.effectTag&&(g(t),n.effectTag&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||c(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag;){if(2&n.effectTag)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.effectTag)){n=n.stateNode;break e}}for(var o=e;;){if(5===o.tag||6===o.tag)n?r?w(t,o.stateNode,n):b(t,o.stateNode,n):r?y(t,o.stateNode):v(t,o.stateNode);else if(4!==o.tag&&null!==o.child){o.child.return=o,o=o.child;continue}if(o===e)break;for(;null===o.sibling;){if(null===o.return||o.return===e)return;o=o.return}o.sibling.return=o.return,o=o.sibling}},commitDeletion:function(e){u(e),e.return=null,e.child=null,e.alternate&&(e.alternate.child=null,e.alternate.return=null)},commitWork:function(e,t){switch(t.tag){case 2:break;case 5:var n=t.stateNode;if(null!=n){var r=t.memoizedProps;e=null!==e?e.memoizedProps:r;var o=t.type,s=t.updateQueue;t.updateQueue=null,null!==s&&p(n,s,o,e,r,t)}break;case 6:null===t.stateNode&&i("162"),n=t.memoizedProps,m(t.stateNode,null!==e?e.memoizedProps:n,n);break;case 3:break;default:i("163")}},commitLifeCycles:function(e,t,n){switch(n.tag){case 2:if(e=n.stateNode,4&n.effectTag)if(null===t)e.props=n.memoizedProps,e.state=n.memoizedState,e.componentDidMount();else{var r=t.memoizedProps;t=t.memoizedState,e.props=n.memoizedProps,e.state=n.memoizedState,e.componentDidUpdate(r,t,e.__reactInternalSnapshotBeforeUpdate)}n=n.updateQueue,null!==n&&pt(n,e);break;case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:e=h(n.child.stateNode);break;case 2:e=n.child.stateNode}pt(t,e)}break;case 5:e=n.stateNode,null===t&&4&n.effectTag&&f(e,n.type,n.memoizedProps,n);break;case 6:case 4:break;default:i("163")}},commitErrorLogging:function(e,t){switch(e.tag){case 2:var n=e.type;t=e.stateNode;var r=e.updateQueue;(null===r||null===r.capturedValues)&&i("264");var s=r.capturedValues;for(r.capturedValues=null,"function"!==typeof n.getDerivedStateFromCatch&&o(t),t.props=e.memoizedProps,t.state=e.memoizedState,n=0;n<s.length;n++){r=s[n];var a=r.value,l=r.stack;At(e,r),t.componentDidCatch(a,{componentStack:null!==l?l:""})}break;case 3:for(n=e.updateQueue,(null===n||null===n.capturedValues)&&i("264"),s=n.capturedValues,n.capturedValues=null,n=0;n<s.length;n++)r=s[n],At(e,r),t(r.value);break;default:i("265")}},commitAttachRef:function(e){var t=e.ref;if(null!==t){var n=e.stateNode;switch(e.tag){case 5:e=h(n);break;default:e=n}"function"===typeof t?t(e):t.current=e}},commitDetachRef:function(e){null!==(e=e.ref)&&("function"===typeof e?e(null):e.current=null)}}}function Ft(e,t){function n(e){return e===yr&&i("174"),e}var r=e.getChildHostContext,o=e.getRootHostContext;e=t.createCursor;var s=t.push,a=t.pop,l=e(yr),c=e(yr),u=e(yr);return{getHostContext:function(){return n(l.current)},getRootHostContainer:function(){return n(u.current)},popHostContainer:function(e){a(l,e),a(c,e),a(u,e)},popHostContext:function(e){c.current===e&&(a(l,e),a(c,e))},pushHostContainer:function(e,t){s(u,t,e),s(c,e,e),s(l,yr,e),t=o(t),a(l,e),s(l,t,e)},pushHostContext:function(e){var t=n(u.current),i=n(l.current);t=r(i,e.type,t),i!==t&&(s(c,e,e),s(l,t,e))}}}function xt(e){function t(e,t){var n=new Je(5,null,null,0);n.type="DELETED",n.stateNode=t,n.return=e,n.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function n(e,t){switch(e.tag){case 5:return null!==(t=s(t,e.type,e.pendingProps))&&(e.stateNode=t,!0);case 6:return null!==(t=a(t,e.pendingProps))&&(e.stateNode=t,!0);default:return!1}}function r(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag;)e=e.return;d=e}var o=e.shouldSetTextContent;if(!(e=e.hydration))return{enterHydrationState:function(){return!1},resetHydrationState:function(){},tryToClaimNextHydratableInstance:function(){},prepareToHydrateHostInstance:function(){i("175")},prepareToHydrateHostTextInstance:function(){i("176")},popHydrationState:function(){return!1}};var s=e.canHydrateInstance,a=e.canHydrateTextInstance,l=e.getNextHydratableSibling,c=e.getFirstHydratableChild,u=e.hydrateInstance,h=e.hydrateTextInstance,d=null,f=null,p=!1;return{enterHydrationState:function(e){return f=c(e.stateNode.containerInfo),d=e,p=!0},resetHydrationState:function(){f=d=null,p=!1},tryToClaimNextHydratableInstance:function(e){if(p){var i=f;if(i){if(!n(e,i)){if(!(i=l(i))||!n(e,i))return e.effectTag|=2,p=!1,void(d=e);t(d,f)}d=e,f=c(i)}else e.effectTag|=2,p=!1,d=e}},prepareToHydrateHostInstance:function(e,t,n){return t=u(e.stateNode,e.type,e.memoizedProps,t,n,e),e.updateQueue=t,null!==t},prepareToHydrateHostTextInstance:function(e){return h(e.stateNode,e.memoizedProps,e)},popHydrationState:function(e){if(e!==d)return!1;if(!p)return r(e),p=!0,!1;var n=e.type;if(5!==e.tag||"head"!==n&&"body"!==n&&!o(n,e.memoizedProps))for(n=f;n;)t(e,n),n=l(n);return r(e),f=d?l(e.stateNode):null,!0}}}function kt(e){function t(e,t,n){e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=n}function n(e){return 2===e.tag&&null!=e.type.childContextTypes}function r(e,t){var n=e.stateNode,r=e.type.childContextTypes;if("function"!==typeof n.getChildContext)return t;n=n.getChildContext();for(var o in n)o in r||i("108",re(e)||"Unknown",o);return hn({},t,n)}var o=e.createCursor,s=e.push,a=e.pop,l=o(mn),c=o(!1),u=mn;return{getUnmaskedContext:function(e){return n(e)?u:l.current},cacheContext:t,getMaskedContext:function(e,n){var i=e.type.contextTypes;if(!i)return mn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===n)return r.__reactInternalMemoizedMaskedChildContext;var o,s={};for(o in i)s[o]=n[o];return r&&t(e,n,s),s},hasContextChanged:function(){return c.current},isContextConsumer:function(e){return 2===e.tag&&null!=e.type.contextTypes},isContextProvider:n,popContextProvider:function(e){n(e)&&(a(c,e),a(l,e))},popTopLevelContextObject:function(e){a(c,e),a(l,e)},pushTopLevelContextObject:function(e,t,n){null!=l.cursor&&i("168"),s(l,t,e),s(c,n,e)},processChildContext:r,pushContextProvider:function(e){if(!n(e))return!1;var t=e.stateNode;return t=t&&t.__reactInternalMemoizedMergedChildContext||mn,u=l.current,s(l,t,e),s(c,c.current,e),!0},invalidateContextProvider:function(e,t){var n=e.stateNode;if(n||i("169"),t){var o=r(e,u);n.__reactInternalMemoizedMergedChildContext=o,a(c,e),a(l,e),s(l,o,e)}else a(c,e);s(c,t,e)},findCurrentUnmaskedContext:function(e){for(2!==Be(e)||2!==e.tag?i("170"):void 0;3!==e.tag;){if(n(e))return e.stateNode.__reactInternalMemoizedMergedChildContext;(e=e.return)||i("171")}return e.stateNode.context}}}function St(e){var t=e.createCursor,n=e.push,i=e.pop,r=t(null),o=t(null),s=t(0);return{pushProvider:function(e){var t=e.type._context;n(s,t._changedBits,e),n(o,t._currentValue,e),n(r,e,e),t._currentValue=e.pendingProps.value,t._changedBits=e.stateNode},popProvider:function(e){var t=s.current,n=o.current;i(r,e),i(o,e),i(s,e),e=e.type._context,e._currentValue=n,e._changedBits=t}}}function $t(){var e=[],t=-1;return{createCursor:function(e){return{current:e}},isEmpty:function(){return-1===t},pop:function(n){0>t||(n.current=e[t],e[t]=null,t--)},push:function(n,i){t++,e[t]=n.current,n.current=i},checkThatStackIsEmpty:function(){},resetStackAfterFatalErrorInDev:function(){}}}function _t(e){function t(){if(null!==Z)for(var e=Z.return;null!==e;)T(e),e=e.return;ee=null,te=0,Z=null,re=!1}function n(e){return null!==se&&se.has(e)}function r(e){for(;;){var t=e.alternate,n=e.return,i=e.sibling;if(0===(512&e.effectTag)){t=_(t,e,te);var r=e;if(1073741823===te||1073741823!==r.expirationTime){e:switch(r.tag){case 3:case 2:var o=r.updateQueue;o=null===o?0:o.expirationTime;break e;default:o=0}for(var s=r.child;null!==s;)0!==s.expirationTime&&(0===o||o>s.expirationTime)&&(o=s.expirationTime),s=s.sibling;r.expirationTime=o}if(null!==t)return t;if(null!==n&&0===(512&n.effectTag)&&(null===n.firstEffect&&(n.firstEffect=e.firstEffect),null!==e.lastEffect&&(null!==n.lastEffect&&(n.lastEffect.nextEffect=e.firstEffect),n.lastEffect=e.lastEffect),1<e.effectTag&&(null!==n.lastEffect?n.lastEffect.nextEffect=e:n.firstEffect=e,n.lastEffect=e)),null!==i)return i;if(null===n){re=!0;break}e=n}else{if(null!==(e=B(e)))return e.effectTag&=2559,e;if(null!==n&&(n.firstEffect=n.lastEffect=null,n.effectTag|=512),null!==i)return i;if(null===n)break;e=n}}return null}function o(e){var t=$(e.alternate,e,te);return null===t&&(t=r(e)),oi.current=null,t}function s(e,n,s){J&&i("243"),J=!0,n===te&&e===ee&&null!==Z||(t(),ee=e,te=n,Z=Ze(ee.current,null,te),e.pendingCommitExpirationTime=0);for(var a=!1;;){try{if(s)for(;null!==Z&&!A();)Z=o(Z);else for(;null!==Z;)Z=o(Z)}catch(e){if(null===Z){a=!0,E(e);break}s=Z;var l=s.return;if(null===l){a=!0,E(e);break}D(l,s,e),Z=r(s)}break}return J=!1,a||null!==Z?null:re?(e.pendingCommitExpirationTime=n,e.current.alternate):void i("262")}function a(e,t,n,i){e={value:n,source:e,stack:oe(e)},ht(t,{expirationTime:i,partialState:null,callback:null,isReplace:!1,isForced:!1,capturedValue:e,next:null}),u(t,i)}function l(e,t){e:{J&&!ie&&i("263");for(var r=e.return;null!==r;){switch(r.tag){case 2:var o=r.stateNode;if("function"===typeof r.type.getDerivedStateFromCatch||"function"===typeof o.componentDidCatch&&!n(o)){a(e,r,t,1),e=void 0;break e}break;case 3:a(e,r,t,1),e=void 0;break e}r=r.return}3===e.tag&&a(e,e,t,1),e=void 0}return e}function c(e){return e=0!==X?X:J?ie?1:te:1&e.mode?Ce?10*(1+((h()+50)/10|0)):25*(1+((h()+500)/25|0)):1,Ce&&(0===pe||e>pe)&&(pe=e),e}function u(e,n){e:{for(;null!==e;){if((0===e.expirationTime||e.expirationTime>n)&&(e.expirationTime=n),null!==e.alternate&&(0===e.alternate.expirationTime||e.alternate.expirationTime>n)&&(e.alternate.expirationTime=n),null===e.return){if(3!==e.tag){n=void 0;break e}var r=e.stateNode;!J&&0!==te&&n<te&&t(),J&&!ie&&ee===r||p(r,n),Fe>Ee&&i("185")}e=e.return}n=void 0}return n}function h(){return Y=H()-G,q=2+(Y/10|0)}function d(e,t,n,i,r){var o=X;X=1;try{return e(t,n,i,r)}finally{X=o}}function f(e){if(0!==ce){if(e>ce)return;U(ue)}var t=H()-G;ce=e,ue=z(m,{timeout:10*(e-2)-t})}function p(e,t){if(null===e.nextScheduledRoot)e.remainingExpirationTime=t,null===le?(ae=le=e,e.nextScheduledRoot=e):(le=le.nextScheduledRoot=e,le.nextScheduledRoot=ae);else{var n=e.remainingExpirationTime;(0===n||t<n)&&(e.remainingExpirationTime=t)}he||(be?we&&(de=e,fe=1,w(e,1,!1)):1===t?v():f(t))}function g(){var e=0,t=null;if(null!==le)for(var n=le,r=ae;null!==r;){var o=r.remainingExpirationTime;if(0===o){if((null===n||null===le)&&i("244"),r===r.nextScheduledRoot){ae=le=r.nextScheduledRoot=null;break}if(r===ae)ae=o=r.nextScheduledRoot,le.nextScheduledRoot=o,r.nextScheduledRoot=null;else{if(r===le){le=n,le.nextScheduledRoot=ae,r.nextScheduledRoot=null;break}n.nextScheduledRoot=r.nextScheduledRoot,r.nextScheduledRoot=null}r=n.nextScheduledRoot}else{if((0===e||o<e)&&(e=o,t=r),r===le)break;n=r,r=r.nextScheduledRoot}}n=de,null!==n&&n===t&&1===e?Fe++:Fe=0,de=t,fe=e}function m(e){y(0,!0,e)}function v(){y(1,!1,null)}function y(e,t,n){if(ye=n,g(),t)for(;null!==de&&0!==fe&&(0===e||e>=fe)&&(!ge||h()>=fe);)w(de,fe,!ge),g();else for(;null!==de&&0!==fe&&(0===e||e>=fe);)w(de,fe,!1),g();null!==ye&&(ce=0,ue=-1),0!==fe&&f(fe),ye=null,ge=!1,b()}function b(){if(Fe=0,null!==Ae){var e=Ae;Ae=null;for(var t=0;t<e.length;t++){var n=e[t];try{n._onComplete()}catch(e){me||(me=!0,ve=e)}}}if(me)throw e=ve,ve=null,me=!1,e}function w(e,t,n){he&&i("245"),he=!0,n?(n=e.finishedWork,null!==n?C(e,n,t):(e.finishedWork=null,null!==(n=s(e,t,!0))&&(A()?e.finishedWork=n:C(e,n,t)))):(n=e.finishedWork,null!==n?C(e,n,t):(e.finishedWork=null,null!==(n=s(e,t,!1))&&C(e,n,t))),he=!1}function C(e,t,n){var r=e.firstBatch;if(null!==r&&r._expirationTime<=n&&(null===Ae?Ae=[r]:Ae.push(r),r._defer))return e.finishedWork=t,void(e.remainingExpirationTime=0);e.finishedWork=null,ie=J=!0,n=t.stateNode,n.current===t&&i("177"),r=n.pendingCommitExpirationTime,0===r&&i("261"),n.pendingCommitExpirationTime=0;var o=h();if(oi.current=null,1<t.effectTag)if(null!==t.lastEffect){t.lastEffect.nextEffect=t;var s=t.firstEffect}else s=t;else s=t.firstEffect;for(V(n.containerInfo),ne=s;null!==ne;){var a=!1,c=void 0;try{for(;null!==ne;)2048&ne.effectTag&&L(ne.alternate,ne),ne=ne.nextEffect}catch(e){a=!0,c=e}a&&(null===ne&&i("178"),l(ne,c),null!==ne&&(ne=ne.nextEffect))}for(ne=s;null!==ne;){a=!1,c=void 0;try{for(;null!==ne;){var u=ne.effectTag;if(16&u&&O(ne),128&u){var d=ne.alternate;null!==d&&W(d)}switch(14&u){case 2:R(ne),ne.effectTag&=-3;break;case 6:R(ne),ne.effectTag&=-3,P(ne.alternate,ne);break;case 4:P(ne.alternate,ne);break;case 8:M(ne)}ne=ne.nextEffect}}catch(e){a=!0,c=e}a&&(null===ne&&i("178"),l(ne,c),null!==ne&&(ne=ne.nextEffect))}for(K(n.containerInfo),n.current=t,ne=s;null!==ne;){u=!1,d=void 0;try{for(s=n,a=o,c=r;null!==ne;){var f=ne.effectTag;36&f&&I(s,ne.alternate,ne,a,c),256&f&&j(ne,E),128&f&&N(ne);var p=ne.nextEffect;ne.nextEffect=null,ne=p}}catch(e){u=!0,d=e}u&&(null===ne&&i("178"),l(ne,d),null!==ne&&(ne=ne.nextEffect))}J=ie=!1,"function"===typeof st&&st(t.stateNode),t=n.current.expirationTime,0===t&&(se=null),e.remainingExpirationTime=t}function A(){return!(null===ye||ye.timeRemaining()>xe)&&(ge=!0)}function E(e){null===de&&i("246"),de.remainingExpirationTime=0,me||(me=!0,ve=e)}var F=$t(),x=Ft(e,F),k=kt(F);F=St(F);var S=xt(e),$=bt(e,x,k,F,S,u,c).beginWork,_=wt(e,x,k,F,S).completeWork;x=Ct(x,k,F,u,n);var D=x.throwException,B=x.unwindWork,T=x.unwindInterruptedWork;x=Et(e,l,u,c,function(e){null===se?se=new Set([e]):se.add(e)},h);var L=x.commitBeforeMutationLifeCycles,O=x.commitResetTextContent,R=x.commitPlacement,M=x.commitDeletion,P=x.commitWork,I=x.commitLifeCycles,j=x.commitErrorLogging,N=x.commitAttachRef,W=x.commitDetachRef,H=e.now,z=e.scheduleDeferredCallback,U=e.cancelDeferredCallback,V=e.prepareForCommit,K=e.resetAfterCommit,G=H(),q=2,Y=G,Q=0,X=0,J=!1,Z=null,ee=null,te=0,ne=null,ie=!1,re=!1,se=null,ae=null,le=null,ce=0,ue=-1,he=!1,de=null,fe=0,pe=0,ge=!1,me=!1,ve=null,ye=null,be=!1,we=!1,Ce=!1,Ae=null,Ee=1e3,Fe=0,xe=1;return{recalculateCurrentTime:h,computeExpirationForFiber:c,scheduleWork:u,requestWork:p,flushRoot:function(e,t){he&&i("253"),de=e,fe=t,w(e,t,!1),v(),b()},batchedUpdates:function(e,t){var n=be;be=!0;try{return e(t)}finally{(be=n)||he||v()}},unbatchedUpdates:function(e,t){if(be&&!we){we=!0;try{return e(t)}finally{we=!1}}return e(t)},flushSync:function(e,t){he&&i("187");var n=be;be=!0;try{return d(e,t)}finally{be=n,v()}},flushControlled:function(e){var t=be;be=!0;try{d(e)}finally{(be=t)||he||y(1,!1,null)}},deferredUpdates:function(e){var t=X;X=25*(1+((h()+500)/25|0));try{return e()}finally{X=t}},syncUpdates:d,interactiveUpdates:function(e,t,n){if(Ce)return e(t,n);be||he||0===pe||(y(pe,!1,null),pe=0);var i=Ce,r=be;be=Ce=!0;try{return e(t,n)}finally{Ce=i,(be=r)||he||v()}},flushInteractiveUpdates:function(){he||0===pe||(y(pe,!1,null),pe=0)},computeUniqueAsyncExpiration:function(){var e=25*(1+((h()+500)/25|0));return e<=Q&&(e=Q+1),Q=e},legacyContext:k}}function Dt(e){function t(e,t,n,i,r,o){if(i=t.current,n){n=n._reactInternalFiber;var a=l(n);n=c(n)?u(n,a):a}else n=mn;return null===t.context?t.context=n:t.pendingContext=n,t=o,ht(i,{expirationTime:r,partialState:{element:e},callback:void 0===t?null:t,isReplace:!1,isForced:!1,capturedValue:null,next:null}),s(i,r),r}function n(e){return e=Re(e),null===e?null:e.stateNode}var i=e.getPublicInstance;e=_t(e);var r=e.recalculateCurrentTime,o=e.computeExpirationForFiber,s=e.scheduleWork,a=e.legacyContext,l=a.findCurrentUnmaskedContext,c=a.isContextProvider,u=a.processChildContext;return{createContainer:function(e,t,n){return t=new Je(3,null,null,t?3:0),e={current:t,containerInfo:e,pendingChildren:null,pendingCommitExpirationTime:0,finishedWork:null,context:null,pendingContext:null,hydrate:n,remainingExpirationTime:0,firstBatch:null,nextScheduledRoot:null},t.stateNode=e},updateContainer:function(e,n,i,s){var a=n.current,l=r();return a=o(a),t(e,n,i,l,a,s)},updateContainerAtExpirationTime:function(e,n,i,o,s){return t(e,n,i,r(),o,s)},flushRoot:e.flushRoot,requestWork:e.requestWork,computeUniqueAsyncExpiration:e.computeUniqueAsyncExpiration,batchedUpdates:e.batchedUpdates,unbatchedUpdates:e.unbatchedUpdates,deferredUpdates:e.deferredUpdates,syncUpdates:e.syncUpdates,interactiveUpdates:e.interactiveUpdates,flushInteractiveUpdates:e.flushInteractiveUpdates,flushControlled:e.flushControlled,flushSync:e.flushSync,getPublicRootInstance:function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return i(e.child.stateNode);default:return e.child.stateNode}},findHostInstance:n,findHostInstanceWithNoPortals:function(e){return e=Me(e),null===e?null:e.stateNode},injectIntoDevTools:function(e){var t=e.findFiberByHostInstance;return ot(hn({},e,{findHostInstanceByFiber:function(e){return n(e)},findFiberByHostInstance:function(e){return t?t(e):null}}))}}}function Bt(e,t,n){var i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:ui,key:null==i?null:""+i,children:e,containerInfo:t,implementation:n}}function Tt(e){var t="";return cn.Children.forEach(e,function(e){null==e||"string"!==typeof e&&"number"!==typeof e||(t+=e)}),t}function Lt(e,t){return e=hn({children:void 0},t),(t=Tt(t.children))&&(e.children=t),e}function Ot(e,t,n,i){if(e=e.options,t){t={};for(var r=0;r<n.length;r++)t["$"+n[r]]=!0;for(n=0;n<e.length;n++)r=t.hasOwnProperty("$"+e[n].value),e[n].selected!==r&&(e[n].selected=r),r&&i&&(e[n].defaultSelected=!0)}else{for(n=""+n,t=null,r=0;r<e.length;r++){if(e[r].value===n)return e[r].selected=!0,void(i&&(e[r].defaultSelected=!0));null!==t||e[r].disabled||(t=e[r])}null!==t&&(t.selected=!0)}}function Rt(e,t){var n=t.value;e._wrapperState={initialValue:null!=n?n:t.defaultValue,wasMultiple:!!t.multiple}}function Mt(e,t){return null!=t.dangerouslySetInnerHTML&&i("91"),hn({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Pt(e,t){var n=t.value;null==n&&(n=t.defaultValue,t=t.children,null!=t&&(null!=n&&i("92"),Array.isArray(t)&&(1>=t.length||i("93"),t=t[0]),n=""+t),null==n&&(n="")),e._wrapperState={initialValue:""+n}}function It(e,t){var n=t.value;null!=n&&(n=""+n,n!==e.value&&(e.value=n),null==t.defaultValue&&(e.defaultValue=n)),null!=t.defaultValue&&(e.defaultValue=t.defaultValue)}function jt(e){var t=e.textContent;t===e._wrapperState.initialValue&&(e.value=t)}function Nt(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Wt(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?Nt(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}function Ht(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}function zt(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var i=0===n.indexOf("--"),r=n,o=t[n];r=null==o||"boolean"===typeof o||""===o?"":i||"number"!==typeof o||0===o||jr.hasOwnProperty(r)&&jr[r]?(""+o).trim():o+"px","float"===n&&(n="cssFloat"),i?e.setProperty(n,r):e[n]=r}}function Ut(e,t,n){t&&(Wr[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML)&&i("137",e,n()),null!=t.dangerouslySetInnerHTML&&(null!=t.children&&i("60"),"object"===typeof t.dangerouslySetInnerHTML&&"__html"in t.dangerouslySetInnerHTML||i("61")),null!=t.style&&"object"!==typeof t.style&&i("62",n()))}function Vt(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function Kt(e,t){e=9===e.nodeType||11===e.nodeType?e:e.ownerDocument;var n=Ge(e);t=En[t];for(var i=0;i<t.length;i++){var r=t[i];n.hasOwnProperty(r)&&n[r]||("topScroll"===r?He("topScroll","scroll",e):"topFocus"===r||"topBlur"===r?(He("topFocus","focus",e),He("topBlur","blur",e),n.topBlur=!0,n.topFocus=!0):"topCancel"===r?(J("cancel",!0)&&He("topCancel","cancel",e),n.topCancel=!0):"topClose"===r?(J("close",!0)&&He("topClose","close",e),n.topClose=!0):Zi.hasOwnProperty(r)&&We(r,Zi[r],e),n[r]=!0)}}function Gt(e,t,n,i){return n=9===n.nodeType?n:n.ownerDocument,i===Hr&&(i=Nt(e)),i===Hr?"script"===e?(e=n.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):e="string"===typeof t.is?n.createElement(e,{is:t.is}):n.createElement(e):e=n.createElementNS(i,e),e}function qt(e,t){return(9===t.nodeType?t:t.ownerDocument).createTextNode(e)}function Yt(e,t,n,i){var r=Vt(t,n);switch(t){case"iframe":case"object":We("topLoad","load",e);var o=n;break;case"video":case"audio":for(o in er)er.hasOwnProperty(o)&&We(o,er[o],e);o=n;break;case"source":We("topError","error",e),o=n;break;case"img":case"image":case"link":We("topError","error",e),We("topLoad","load",e),o=n;break;case"form":We("topReset","reset",e),We("topSubmit","submit",e),o=n;break;case"details":We("topToggle","toggle",e),o=n;break;case"input":fe(e,n),o=de(e,n),We("topInvalid","invalid",e),Kt(i,"onChange");break;case"option":o=Lt(e,n);break;case"select":Rt(e,n),o=hn({},n,{value:void 0}),We("topInvalid","invalid",e),Kt(i,"onChange");break;case"textarea":Pt(e,n),o=Mt(e,n),We("topInvalid","invalid",e),Kt(i,"onChange");break;default:o=n}Ut(t,o,zr);var s,a=o;for(s in a)if(a.hasOwnProperty(s)){var l=a[s];"style"===s?zt(e,l,zr):"dangerouslySetInnerHTML"===s?null!=(l=l?l.__html:void 0)&&Ir(e,l):"children"===s?"string"===typeof l?("textarea"!==t||""!==l)&&Ht(e,l):"number"===typeof l&&Ht(e,""+l):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(An.hasOwnProperty(s)?null!=l&&Kt(i,s):null!=l&&he(e,s,l,r))}switch(t){case"input":te(e),me(e,n);break;case"textarea":te(e),jt(e,n);break;case"option":null!=n.value&&e.setAttribute("value",n.value);break;case"select":e.multiple=!!n.multiple,t=n.value,null!=t?Ot(e,!!n.multiple,t,!1):null!=n.defaultValue&&Ot(e,!!n.multiple,n.defaultValue,!0);break;default:"function"===typeof o.onClick&&(e.onclick=dn)}}function Qt(e,t,n,i,r){var o=null;switch(t){case"input":n=de(e,n),i=de(e,i),o=[];break;case"option":n=Lt(e,n),i=Lt(e,i),o=[];break;case"select":n=hn({},n,{value:void 0}),i=hn({},i,{value:void 0}),o=[];break;case"textarea":n=Mt(e,n),i=Mt(e,i),o=[];break;default:"function"!==typeof n.onClick&&"function"===typeof i.onClick&&(e.onclick=dn)}Ut(t,i,zr),t=e=void 0;var s=null;for(e in n)if(!i.hasOwnProperty(e)&&n.hasOwnProperty(e)&&null!=n[e])if("style"===e){var a=n[e];for(t in a)a.hasOwnProperty(t)&&(s||(s={}),s[t]="")}else"dangerouslySetInnerHTML"!==e&&"children"!==e&&"suppressContentEditableWarning"!==e&&"suppressHydrationWarning"!==e&&"autoFocus"!==e&&(An.hasOwnProperty(e)?o||(o=[]):(o=o||[]).push(e,null));for(e in i){var l=i[e];if(a=null!=n?n[e]:void 0,i.hasOwnProperty(e)&&l!==a&&(null!=l||null!=a))if("style"===e)if(a){for(t in a)!a.hasOwnProperty(t)||l&&l.hasOwnProperty(t)||(s||(s={}),s[t]="");for(t in l)l.hasOwnProperty(t)&&a[t]!==l[t]&&(s||(s={}),s[t]=l[t])}else s||(o||(o=[]),o.push(e,s)),s=l;else"dangerouslySetInnerHTML"===e?(l=l?l.__html:void 0,a=a?a.__html:void 0,null!=l&&a!==l&&(o=o||[]).push(e,""+l)):"children"===e?a===l||"string"!==typeof l&&"number"!==typeof l||(o=o||[]).push(e,""+l):"suppressContentEditableWarning"!==e&&"suppressHydrationWarning"!==e&&(An.hasOwnProperty(e)?(null!=l&&Kt(r,e),o||a===l||(o=[])):(o=o||[]).push(e,l))}return s&&(o=o||[]).push("style",s),o}function Xt(e,t,n,i,r){"input"===n&&"radio"===r.type&&null!=r.name&&pe(e,r),Vt(n,i),i=Vt(n,r);for(var o=0;o<t.length;o+=2){var s=t[o],a=t[o+1];"style"===s?zt(e,a,zr):"dangerouslySetInnerHTML"===s?Ir(e,a):"children"===s?Ht(e,a):he(e,s,a,i)}switch(n){case"input":ge(e,r);break;case"textarea":It(e,r);break;case"select":e._wrapperState.initialValue=void 0,t=e._wrapperState.wasMultiple,e._wrapperState.wasMultiple=!!r.multiple,n=r.value,null!=n?Ot(e,!!r.multiple,n,!1):t!==!!r.multiple&&(null!=r.defaultValue?Ot(e,!!r.multiple,r.defaultValue,!0):Ot(e,!!r.multiple,r.multiple?[]:"",!1))}}function Jt(e,t,n,i,r){switch(t){case"iframe":case"object":We("topLoad","load",e);break;case"video":case"audio":for(var o in er)er.hasOwnProperty(o)&&We(o,er[o],e);break;case"source":We("topError","error",e);break;case"img":case"image":case"link":We("topError","error",e),We("topLoad","load",e);break;case"form":We("topReset","reset",e),We("topSubmit","submit",e);break;case"details":We("topToggle","toggle",e);break;case"input":fe(e,n),We("topInvalid","invalid",e),Kt(r,"onChange");break;case"select":Rt(e,n),We("topInvalid","invalid",e),Kt(r,"onChange");break;case"textarea":Pt(e,n),We("topInvalid","invalid",e),Kt(r,"onChange")}Ut(t,n,zr),i=null;for(var s in n)n.hasOwnProperty(s)&&(o=n[s],"children"===s?"string"===typeof o?e.textContent!==o&&(i=["children",o]):"number"===typeof o&&e.textContent!==""+o&&(i=["children",""+o]):An.hasOwnProperty(s)&&null!=o&&Kt(r,s));switch(t){case"input":te(e),me(e,n);break;case"textarea":te(e),jt(e,n);break;case"select":case"option":break;default:"function"===typeof n.onClick&&(e.onclick=dn)}return i}function Zt(e,t){return e.nodeValue!==t}function en(e){this._expirationTime=Gr.computeUniqueAsyncExpiration(),this._root=e,this._callbacks=this._next=null,this._hasChildren=this._didComplete=!1,this._children=null,this._defer=!0}function tn(){this._callbacks=null,this._didCommit=!1,this._onCommit=this._onCommit.bind(this)}function nn(e,t,n){this._internalRoot=Gr.createContainer(e,t,n)}function rn(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function on(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function sn(e,t){if(t||(t=e?9===e.nodeType?e.documentElement:e.firstChild:null,t=!(!t||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new nn(e,!1,t)}function an(e,t,n,r,o){rn(n)||i("200");var s=n._reactRootContainer;if(s){if("function"===typeof o){var a=o;o=function(){var e=Gr.getPublicRootInstance(s._internalRoot);a.call(e)}}null!=e?s.legacy_renderSubtreeIntoContainer(e,t,o):s.render(t,o)}else{if(s=n._reactRootContainer=sn(n,r),"function"===typeof o){var l=o;o=function(){var e=Gr.getPublicRootInstance(s._internalRoot);l.call(e)}}Gr.unbatchedUpdates(function(){null!=e?s.legacy_renderSubtreeIntoContainer(e,t,o):s.render(t,o)})}return Gr.getPublicRootInstance(s._internalRoot)}function ln(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;return rn(t)||i("200"),Bt(e,t,null,n)}var cn=n(0),un=n(71),hn=n(22),dn=n(23),fn=n(72),pn=n(73),gn=n(74),mn=n(37);cn||i("227");var vn={_caughtError:null,_hasCaughtError:!1,_rethrowError:null,_hasRethrowError:!1,invokeGuardedCallback:function(e,t,n,i,o,s,a,l,c){r.apply(vn,arguments)},invokeGuardedCallbackAndCatchFirstError:function(e,t,n,i,r,o,s,a,l){if(vn.invokeGuardedCallback.apply(this,arguments),vn.hasCaughtError()){var c=vn.clearCaughtError();vn._hasRethrowError||(vn._hasRethrowError=!0,vn._rethrowError=c)}},rethrowCaughtError:function(){return o.apply(vn,arguments)},hasCaughtError:function(){return vn._hasCaughtError},clearCaughtError:function(){if(vn._hasCaughtError){var e=vn._caughtError;return vn._caughtError=null,vn._hasCaughtError=!1,e}i("198")}},yn=null,bn={},wn=[],Cn={},An={},En={},Fn=Object.freeze({plugins:wn,eventNameDispatchConfigs:Cn,registrationNameModules:An,registrationNameDependencies:En,possibleRegistrationNames:null,injectEventPluginOrder:l,injectEventPluginsByName:c}),xn=null,kn=null,Sn=null,$n=null,_n={injectEventPluginOrder:l,injectEventPluginsByName:c},Dn=Object.freeze({injection:_n,getListener:m,runEventsInBatch:v,runExtractedEventsInBatch:y}),Bn=Math.random().toString(36).slice(2),Tn="__reactInternalInstance$"+Bn,Ln="__reactEventHandlers$"+Bn,On=Object.freeze({precacheFiberNode:function(e,t){t[Tn]=e},getClosestInstanceFromNode:b,getInstanceFromNode:function(e){return e=e[Tn],!e||5!==e.tag&&6!==e.tag?null:e},getNodeFromInstance:w,getFiberCurrentPropsFromNode:C,updateFiberProps:function(e,t){e[Ln]=t}}),Rn=Object.freeze({accumulateTwoPhaseDispatches:_,accumulateTwoPhaseDispatchesSkipTarget:function(e){d(e,k)},accumulateEnterLeaveDispatches:D,accumulateDirectDispatches:function(e){d(e,$)}}),Mn=null,Pn={_root:null,_startText:null,_fallbackText:null},In="dispatchConfig _targetInst nativeEvent isDefaultPrevented isPropagationStopped _dispatchListeners _dispatchInstances".split(" "),jn={type:null,target:null,currentTarget:dn.thatReturnsNull,eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null};hn(O.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!==typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=dn.thatReturnsTrue)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!==typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=dn.thatReturnsTrue)},persist:function(){this.isPersistent=dn.thatReturnsTrue},isPersistent:dn.thatReturnsFalse,destructor:function(){var e,t=this.constructor.Interface;for(e in t)this[e]=null;for(t=0;t<In.length;t++)this[In[t]]=null}}),O.Interface=jn,O.extend=function(e){function t(){}function n(){return i.apply(this,arguments)}var i=this;t.prototype=i.prototype;var r=new t;return hn(r,n.prototype),n.prototype=r,n.prototype.constructor=n,n.Interface=hn({},i.Interface,e),n.extend=i.extend,P(n),n},P(O);var Nn=O.extend({data:null}),Wn=O.extend({data:null}),Hn=[9,13,27,32],zn=un.canUseDOM&&"CompositionEvent"in window,Un=null;un.canUseDOM&&"documentMode"in document&&(Un=document.documentMode);var Vn=un.canUseDOM&&"TextEvent"in window&&!Un,Kn=un.canUseDOM&&(!zn||Un&&8<Un&&11>=Un),Gn=String.fromCharCode(32),qn={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:["topCompositionEnd","topKeyPress","topTextInput","topPaste"]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:"topBlur topCompositionEnd topKeyDown topKeyPress topKeyUp topMouseDown".split(" ")},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:"topBlur topCompositionStart topKeyDown topKeyPress topKeyUp topMouseDown".split(" ")},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:"topBlur topCompositionUpdate topKeyDown topKeyPress topKeyUp topMouseDown".split(" ")}},Yn=!1,Qn=!1,Xn={eventTypes:qn,extractEvents:function(e,t,n,i){var r=void 0,o=void 0;if(zn)e:{switch(e){case"topCompositionStart":r=qn.compositionStart;break e;case"topCompositionEnd":r=qn.compositionEnd;break e;case"topCompositionUpdate":r=qn.compositionUpdate;break e}r=void 0}else Qn?I(e,n)&&(r=qn.compositionEnd):"topKeyDown"===e&&229===n.keyCode&&(r=qn.compositionStart);return r?(Kn&&(Qn||r!==qn.compositionStart?r===qn.compositionEnd&&Qn&&(o=T()):(Pn._root=i,Pn._startText=L(),Qn=!0)),r=Nn.getPooled(r,t,n,i),o?r.data=o:null!==(o=j(n))&&(r.data=o),_(r),o=r):o=null,(e=Vn?N(e,n):W(e,n))?(t=Wn.getPooled(qn.beforeInput,t,n,i),t.data=e,_(t)):t=null,null===o?t:null===t?o:[o,t]}},Jn=null,Zn=null,ei=null,ti={injectFiberControlledHostComponent:function(e){Jn=e}},ni=Object.freeze({injection:ti,enqueueStateRestore:z,needsStateRestore:U,restoreStateIfNeeded:V}),ii=!1,ri={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0},oi=cn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,si="function"===typeof Symbol&&Symbol.for,ai=si?Symbol.for("react.element"):60103,li=si?Symbol.for("react.call"):60104,ci=si?Symbol.for("react.return"):60105,ui=si?Symbol.for("react.portal"):60106,hi=si?Symbol.for("react.fragment"):60107,di=si?Symbol.for("react.strict_mode"):60108,fi=si?Symbol.for("react.provider"):60109,pi=si?Symbol.for("react.context"):60110,gi=si?Symbol.for("react.async_mode"):60111,mi=si?Symbol.for("react.forward_ref"):60112,vi="function"===typeof Symbol&&Symbol.iterator,yi=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,bi={},wi={},Ci={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ci[e]=new ce(e,0,!1,e,null)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ci[t]=new ce(t,1,!1,e[1],null)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ci[e]=new ce(e,2,!1,e.toLowerCase(),null)}),["autoReverse","externalResourcesRequired","preserveAlpha"].forEach(function(e){Ci[e]=new ce(e,2,!1,e,null)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ci[e]=new ce(e,3,!1,e.toLowerCase(),null)}),["checked","multiple","muted","selected"].forEach(function(e){Ci[e]=new ce(e,3,!0,e.toLowerCase(),null)}),["capture","download"].forEach(function(e){Ci[e]=new ce(e,4,!1,e.toLowerCase(),null)}),["cols","rows","size","span"].forEach(function(e){Ci[e]=new ce(e,6,!1,e.toLowerCase(),null)}),["rowSpan","start"].forEach(function(e){Ci[e]=new ce(e,5,!1,e.toLowerCase(),null)});var Ai=/[\-\:]([a-z])/g;"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Ai,ue);Ci[t]=new ce(t,1,!1,e,null)}),"xlink:actuate xlink:arcrole xlink:href xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Ai,ue);Ci[t]=new ce(t,1,!1,e,"http://www.w3.org/1999/xlink")}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Ai,ue);Ci[t]=new ce(t,1,!1,e,"http://www.w3.org/XML/1998/namespace")}),Ci.tabIndex=new ce("tabIndex",1,!1,"tabindex",null);var Ei={change:{phasedRegistrationNames:{bubbled:"onChange",captured:"onChangeCapture"},dependencies:"topBlur topChange topClick topFocus topInput topKeyDown topKeyUp topSelectionChange".split(" ")}},Fi=null,xi=null,ki=!1;un.canUseDOM&&(ki=J("input")&&(!document.documentMode||9<document.documentMode));var Si={eventTypes:Ei,_isInputEventSupported:ki,extractEvents:function(e,t,n,i){var r=t?w(t):window,o=void 0,s=void 0,a=r.nodeName&&r.nodeName.toLowerCase();if("select"===a||"input"===a&&"file"===r.type?o=Ae:Q(r)?ki?o=$e:(o=ke,s=xe):!(a=r.nodeName)||"input"!==a.toLowerCase()||"checkbox"!==r.type&&"radio"!==r.type||(o=Se),o&&(o=o(e,t)))return be(o,n,i);s&&s(e,r,t),"topBlur"===e&&null!=t&&(e=t._wrapperState||r._wrapperState)&&e.controlled&&"number"===r.type&&ve(r,"number",r.value)}},$i=O.extend({view:null,detail:null}),_i={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"},Di=$i.extend({screenX:null,screenY:null,clientX:null,clientY:null,pageX:null,pageY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:De,button:null,buttons:null,relatedTarget:function(e){return e.relatedTarget||(e.fromElement===e.srcElement?e.toElement:e.fromElement)}}),Bi={mouseEnter:{registrationName:"onMouseEnter",dependencies:["topMouseOut","topMouseOver"]},mouseLeave:{registrationName:"onMouseLeave",dependencies:["topMouseOut","topMouseOver"]}},Ti={eventTypes:Bi,extractEvents:function(e,t,n,i){if("topMouseOver"===e&&(n.relatedTarget||n.fromElement)||"topMouseOut"!==e&&"topMouseOver"!==e)return null;var r=i.window===i?i:(r=i.ownerDocument)?r.defaultView||r.parentWindow:window;if("topMouseOut"===e?(e=t,t=(t=n.relatedTarget||n.toElement)?b(t):null):e=null,e===t)return null;var o=null==e?r:w(e);r=null==t?r:w(t);var s=Di.getPooled(Bi.mouseLeave,e,n,i);return s.type="mouseleave",s.target=o,s.relatedTarget=r,n=Di.getPooled(Bi.mouseEnter,t,n,i),n.type="mouseenter",n.target=r,n.relatedTarget=o,D(s,n,e,t),[s,n]}},Li=O.extend({animationName:null,elapsedTime:null,pseudoElement:null}),Oi=O.extend({clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Ri=$i.extend({relatedTarget:null}),Mi={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Pi={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Ii=$i.extend({key:function(e){if(e.key){var t=Mi[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?(e=Pe(e),13===e?"Enter":String.fromCharCode(e)):"keydown"===e.type||"keyup"===e.type?Pi[e.keyCode]||"Unidentified":""},location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:De,charCode:function(e){return"keypress"===e.type?Pe(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?Pe(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),ji=Di.extend({dataTransfer:null}),Ni=$i.extend({touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:De}),Wi=O.extend({propertyName:null,elapsedTime:null,pseudoElement:null}),Hi=Di.extend({deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:null,deltaMode:null}),zi={},Ui={};"blur cancel click close contextMenu copy cut doubleClick dragEnd dragStart drop focus input invalid keyDown keyPress keyUp mouseDown mouseUp paste pause play rateChange reset seeked submit touchCancel touchEnd touchStart volumeChange".split(" ").forEach(function(e){Ie(e,!0)}),"abort animationEnd animationIteration animationStart canPlay canPlayThrough drag dragEnter dragExit dragLeave dragOver durationChange emptied encrypted ended error load loadedData loadedMetadata loadStart mouseMove mouseOut mouseOver playing progress scroll seeking stalled suspend timeUpdate toggle touchMove transitionEnd waiting wheel".split(" ").forEach(function(e){Ie(e,!1)});var Vi={eventTypes:zi,isInteractiveTopLevelEventType:function(e){return void 0!==(e=Ui[e])&&!0===e.isInteractive},extractEvents:function(e,t,n,i){var r=Ui[e];if(!r)return null;switch(e){case"topKeyPress":if(0===Pe(n))return null;case"topKeyDown":case"topKeyUp":e=Ii;break;case"topBlur":case"topFocus":e=Ri;break;case"topClick":if(2===n.button)return null;case"topDoubleClick":case"topMouseDown":case"topMouseMove":case"topMouseUp":case"topMouseOut":case"topMouseOver":case"topContextMenu":e=Di;break;case"topDrag":case"topDragEnd":case"topDragEnter":case"topDragExit":case"topDragLeave":case"topDragOver":case"topDragStart":case"topDrop":e=ji;break;case"topTouchCancel":case"topTouchEnd":case"topTouchMove":case"topTouchStart":e=Ni;break;case"topAnimationEnd":case"topAnimationIteration":case"topAnimationStart":e=Li;break;case"topTransitionEnd":e=Wi;break;case"topScroll":e=$i;break;case"topWheel":e=Hi;break;case"topCopy":case"topCut":case"topPaste":e=Oi;break;default:e=O}return t=e.getPooled(r,t,n,i),_(t),t}},Ki=Vi.isInteractiveTopLevelEventType,Gi=[],qi=!0,Yi=Object.freeze({get _enabled(){return qi},setEnabled:Ne,isEnabled:function(){return qi},trapBubbledEvent:We,trapCapturedEvent:He,dispatchEvent:Ue}),Qi={animationend:Ve("Animation","AnimationEnd"),animationiteration:Ve("Animation","AnimationIteration"),animationstart:Ve("Animation","AnimationStart"),transitionend:Ve("Transition","TransitionEnd")},Xi={},Ji={};un.canUseDOM&&(Ji=document.createElement("div").style,"AnimationEvent"in window||(delete Qi.animationend.animation,delete Qi.animationiteration.animation,delete Qi.animationstart.animation),"TransitionEvent"in window||delete Qi.transitionend.transition);var Zi={topAnimationEnd:Ke("animationend"),topAnimationIteration:Ke("animationiteration"),topAnimationStart:Ke("animationstart"),topBlur:"blur",topCancel:"cancel",topChange:"change",topClick:"click",topClose:"close",topCompositionEnd:"compositionend",topCompositionStart:"compositionstart",topCompositionUpdate:"compositionupdate",topContextMenu:"contextmenu",topCopy:"copy",topCut:"cut",topDoubleClick:"dblclick",topDrag:"drag",topDragEnd:"dragend",topDragEnter:"dragenter",topDragExit:"dragexit",topDragLeave:"dragleave",topDragOver:"dragover",topDragStart:"dragstart",topDrop:"drop",topFocus:"focus",topInput:"input",topKeyDown:"keydown",topKeyPress:"keypress",topKeyUp:"keyup",topLoad:"load",topLoadStart:"loadstart",topMouseDown:"mousedown",topMouseMove:"mousemove",topMouseOut:"mouseout",topMouseOver:"mouseover",topMouseUp:"mouseup",topPaste:"paste",topScroll:"scroll",topSelectionChange:"selectionchange",topTextInput:"textInput",topToggle:"toggle",topTouchCancel:"touchcancel",topTouchEnd:"touchend",topTouchMove:"touchmove",topTouchStart:"touchstart",topTransitionEnd:Ke("transitionend"),topWheel:"wheel"},er={topAbort:"abort",topCanPlay:"canplay",topCanPlayThrough:"canplaythrough",topDurationChange:"durationchange",topEmptied:"emptied",topEncrypted:"encrypted",topEnded:"ended",topError:"error",topLoadedData:"loadeddata",topLoadedMetadata:"loadedmetadata",topLoadStart:"loadstart",topPause:"pause",topPlay:"play",topPlaying:"playing",topProgress:"progress",topRateChange:"ratechange",topSeeked:"seeked",topSeeking:"seeking",topStalled:"stalled",topSuspend:"suspend",topTimeUpdate:"timeupdate",topVolumeChange:"volumechange",topWaiting:"waiting"},tr={},nr=0,ir="_reactListenersID"+(""+Math.random()).slice(2),rr=un.canUseDOM&&"documentMode"in document&&11>=document.documentMode,or={select:{phasedRegistrationNames:{bubbled:"onSelect",captured:"onSelectCapture"},dependencies:"topBlur topContextMenu topFocus topKeyDown topKeyUp topMouseDown topMouseUp topSelectionChange".split(" ")}},sr=null,ar=null,lr=null,cr=!1,ur={eventTypes:or,extractEvents:function(e,t,n,i){var r,o=i.window===i?i.document:9===i.nodeType?i:i.ownerDocument;if(!(r=!o)){e:{o=Ge(o),r=En.onSelect;for(var s=0;s<r.length;s++){var a=r[s];if(!o.hasOwnProperty(a)||!o[a]){o=!1;break e}}o=!0}r=!o}if(r)return null;switch(o=t?w(t):window,e){case"topFocus":(Q(o)||"true"===o.contentEditable)&&(sr=o,ar=t,lr=null);break;case"topBlur":lr=ar=sr=null;break;case"topMouseDown":cr=!0;break;case"topContextMenu":case"topMouseUp":return cr=!1,Xe(n,i);case"topSelectionChange":if(rr)break;case"topKeyDown":case"topKeyUp":return Xe(n,i)}return null}};_n.injectEventPluginOrder("ResponderEventPlugin SimpleEventPlugin TapEventPlugin EnterLeaveEventPlugin ChangeEventPlugin SelectEventPlugin BeforeInputEventPlugin".split(" ")),xn=On.getFiberCurrentPropsFromNode,kn=On.getInstanceFromNode,Sn=On.getNodeFromInstance,_n.injectEventPluginsByName({SimpleEventPlugin:Vi,EnterLeaveEventPlugin:Ti,ChangeEventPlugin:Si,SelectEventPlugin:ur,BeforeInputEventPlugin:Xn});var hr=null,dr=null;new Set;var fr=void 0,pr=void 0,gr=Array.isArray,mr=yt(!0),vr=yt(!1),yr={},br=Object.freeze({default:Dt}),wr=br&&Dt||br,Cr=wr.default?wr.default:wr,Ar="object"===typeof performance&&"function"===typeof performance.now,Er=void 0;Er=Ar?function(){return performance.now()}:function(){return Date.now()};var Fr=void 0,xr=void 0;if(un.canUseDOM)if("function"!==typeof requestIdleCallback||"function"!==typeof cancelIdleCallback){var kr=null,Sr=!1,$r=-1,_r=!1,Dr=0,Br=33,Tr=33,Lr=void 0;Lr=Ar?{didTimeout:!1,timeRemaining:function(){var e=Dr-performance.now();return 0<e?e:0}}:{didTimeout:!1,timeRemaining:function(){var e=Dr-Date.now();return 0<e?e:0}};var Or="__reactIdleCallback$"+Math.random().toString(36).slice(2);window.addEventListener("message",function(e){if(e.source===window&&e.data===Or){if(Sr=!1,e=Er(),0>=Dr-e){if(!(-1!==$r&&$r<=e))return void(_r||(_r=!0,requestAnimationFrame(Rr)));Lr.didTimeout=!0}else Lr.didTimeout=!1;$r=-1,e=kr,kr=null,null!==e&&e(Lr)}},!1);var Rr=function(e){_r=!1;var t=e-Dr+Tr;t<Tr&&Br<Tr?(8>t&&(t=8),Tr=t<Br?Br:t):Br=t,Dr=e+Tr,Sr||(Sr=!0,window.postMessage(Or,"*"))};Fr=function(e,t){return kr=e,null!=t&&"number"===typeof t.timeout&&($r=Er()+t.timeout),_r||(_r=!0,requestAnimationFrame(Rr)),0},xr=function(){kr=null,Sr=!1,$r=-1}}else Fr=window.requestIdleCallback,xr=window.cancelIdleCallback;else Fr=function(e){return setTimeout(function(){e({timeRemaining:function(){return 1/0},didTimeout:!1})})},xr=function(e){clearTimeout(e)};var Mr={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"},Pr=void 0,Ir=function(e){return"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,i,r){MSApp.execUnsafeLocalFunction(function(){return e(t,n)})}:e}(function(e,t){if(e.namespaceURI!==Mr.svg||"innerHTML"in e)e.innerHTML=t;else{for(Pr=Pr||document.createElement("div"),Pr.innerHTML="<svg>"+t+"</svg>",t=Pr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}}),jr={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Nr=["Webkit","ms","Moz","O"];Object.keys(jr).forEach(function(e){Nr.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),jr[t]=jr[e]})});var Wr=hn({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),Hr=Mr.html,zr=dn.thatReturns(""),Ur=Object.freeze({createElement:Gt,createTextNode:qt,setInitialProperties:Yt,diffProperties:Qt,updateProperties:Xt,diffHydratedProperties:Jt,diffHydratedText:Zt,warnForUnmatchedText:function(){},warnForDeletedHydratableElement:function(){},warnForDeletedHydratableText:function(){},warnForInsertedHydratedElement:function(){},warnForInsertedHydratedText:function(){},restoreControlledState:function(e,t,n){switch(t){case"input":if(ge(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=C(r);o||i("90"),ne(r),ge(r,o)}}}break;case"textarea":It(e,n);break;case"select":null!=(t=n.value)&&Ot(e,!!n.multiple,t,!1)}}});ti.injectFiberControlledHostComponent(Ur);var Vr=null,Kr=null;en.prototype.render=function(e){this._defer||i("250"),this._hasChildren=!0,this._children=e;var t=this._root._internalRoot,n=this._expirationTime,r=new tn;return Gr.updateContainerAtExpirationTime(e,t,null,n,r._onCommit),r},en.prototype.then=function(e){if(this._didComplete)e();else{var t=this._callbacks;null===t&&(t=this._callbacks=[]),t.push(e)}},en.prototype.commit=function(){var e=this._root._internalRoot,t=e.firstBatch;if(this._defer&&null!==t||i("251"),this._hasChildren){var n=this._expirationTime;if(t!==this){this._hasChildren&&(n=this._expirationTime=t._expirationTime,this.render(this._children));for(var r=null,o=t;o!==this;)r=o,o=o._next;null===r&&i("251"),r._next=o._next,this._next=t,e.firstBatch=this}this._defer=!1,Gr.flushRoot(e,n),t=this._next,this._next=null,t=e.firstBatch=t,null!==t&&t._hasChildren&&t.render(t._children)}else this._next=null,this._defer=!1},en.prototype._onComplete=function(){if(!this._didComplete){this._didComplete=!0;var e=this._callbacks;if(null!==e)for(var t=0;t<e.length;t++)(0,e[t])()}},tn.prototype.then=function(e){if(this._didCommit)e();else{var t=this._callbacks;null===t&&(t=this._callbacks=[]),t.push(e)}},tn.prototype._onCommit=function(){if(!this._didCommit){this._didCommit=!0;var e=this._callbacks;if(null!==e)for(var t=0;t<e.length;t++){var n=e[t];"function"!==typeof n&&i("191",n),n()}}},nn.prototype.render=function(e,t){var n=this._internalRoot,i=new tn;return t=void 0===t?null:t,null!==t&&i.then(t),Gr.updateContainer(e,n,null,i._onCommit),i},nn.prototype.unmount=function(e){var t=this._internalRoot,n=new tn;return e=void 0===e?null:e,null!==e&&n.then(e),Gr.updateContainer(null,t,null,n._onCommit),n},nn.prototype.legacy_renderSubtreeIntoContainer=function(e,t,n){var i=this._internalRoot,r=new tn;return n=void 0===n?null:n,null!==n&&r.then(n),Gr.updateContainer(t,i,e,r._onCommit),r},nn.prototype.createBatch=function(){var e=new en(this),t=e._expirationTime,n=this._internalRoot,i=n.firstBatch;if(null===i)n.firstBatch=e,e._next=null;else{for(n=null;null!==i&&i._expirationTime<=t;)n=i,i=i._next;e._next=i,null!==n&&(n._next=e)}return e};var Gr=Cr({getRootHostContext:function(e){var t=e.nodeType;switch(t){case 9:case 11:e=(e=e.documentElement)?e.namespaceURI:Wt(null,"");break;default:t=8===t?e.parentNode:e,e=t.namespaceURI||null,t=t.tagName,e=Wt(e,t)}return e},getChildHostContext:function(e,t){return Wt(e,t)},getPublicInstance:function(e){return e},prepareForCommit:function(){Vr=qi;var e=fn();if(Qe(e)){if("selectionStart"in e)var t={start:e.selectionStart,end:e.selectionEnd};else e:{var n=window.getSelection&&window.getSelection();if(n&&0!==n.rangeCount){t=n.anchorNode;var i=n.anchorOffset,r=n.focusNode;n=n.focusOffset;try{t.nodeType,r.nodeType}catch(e){t=null;break e}var o=0,s=-1,a=-1,l=0,c=0,u=e,h=null;t:for(;;){for(var d;u!==t||0!==i&&3!==u.nodeType||(s=o+i),u!==r||0!==n&&3!==u.nodeType||(a=o+n),3===u.nodeType&&(o+=u.nodeValue.length),null!==(d=u.firstChild);)h=u,u=d;for(;;){if(u===e)break t;if(h===t&&++l===i&&(s=o),h===r&&++c===n&&(a=o),null!==(d=u.nextSibling))break;u=h,h=u.parentNode}u=d}t=-1===s||-1===a?null:{start:s,end:a}}else t=null}t=t||{start:0,end:0}}else t=null;Kr={focusedElem:e,selectionRange:t},Ne(!1)},resetAfterCommit:function(){var e=Kr,t=fn(),n=e.focusedElem,i=e.selectionRange;if(t!==n&&gn(document.documentElement,n)){if(Qe(n))if(t=i.start,e=i.end,void 0===e&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(window.getSelection){t=window.getSelection();var r=n[B()].length;e=Math.min(i.start,r),i=void 0===i.end?e:Math.min(i.end,r),!t.extend&&e>i&&(r=i,i=e,e=r),r=Ye(n,e);var o=Ye(n,i);if(r&&o&&(1!==t.rangeCount||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)){var s=document.createRange();s.setStart(r.node,r.offset),t.removeAllRanges(),e>i?(t.addRange(s),t.extend(o.node,o.offset)):(s.setEnd(o.node,o.offset),t.addRange(s))}}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}Kr=null,Ne(Vr),Vr=null},createInstance:function(e,t,n,i,r){return e=Gt(e,t,n,i),e[Tn]=r,e[Ln]=t,e},appendInitialChild:function(e,t){e.appendChild(t)},finalizeInitialChildren:function(e,t,n,i){return Yt(e,t,n,i),on(t,n)},prepareUpdate:function(e,t,n,i,r){return Qt(e,t,n,i,r)},shouldSetTextContent:function(e,t){return"textarea"===e||"string"===typeof t.children||"number"===typeof t.children||"object"===typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&"string"===typeof t.dangerouslySetInnerHTML.__html},shouldDeprioritizeSubtree:function(e,t){return!!t.hidden},createTextInstance:function(e,t,n,i){return e=qt(e,t),e[Tn]=i,e},now:Er,mutation:{commitMount:function(e,t,n){on(t,n)&&e.focus()},commitUpdate:function(e,t,n,i,r){e[Ln]=r,Xt(e,t,n,i,r)},resetTextContent:function(e){Ht(e,"")},commitTextUpdate:function(e,t,n){e.nodeValue=n},appendChild:function(e,t){e.appendChild(t)},appendChildToContainer:function(e,t){8===e.nodeType?e.parentNode.insertBefore(t,e):e.appendChild(t)},insertBefore:function(e,t,n){e.insertBefore(t,n)},insertInContainerBefore:function(e,t,n){8===e.nodeType?e.parentNode.insertBefore(t,n):e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},removeChildFromContainer:function(e,t){8===e.nodeType?e.parentNode.removeChild(t):e.removeChild(t)}},hydration:{canHydrateInstance:function(e,t){return 1!==e.nodeType||t.toLowerCase()!==e.nodeName.toLowerCase()?null:e},canHydrateTextInstance:function(e,t){return""===t||3!==e.nodeType?null:e},getNextHydratableSibling:function(e){for(e=e.nextSibling;e&&1!==e.nodeType&&3!==e.nodeType;)e=e.nextSibling;return e},getFirstHydratableChild:function(e){for(e=e.firstChild;e&&1!==e.nodeType&&3!==e.nodeType;)e=e.nextSibling;return e},hydrateInstance:function(e,t,n,i,r,o){return e[Tn]=o,e[Ln]=n,Jt(e,t,n,r,i)},hydrateTextInstance:function(e,t,n){return e[Tn]=n,Zt(e,t)},didNotMatchHydratedContainerTextInstance:function(){},didNotMatchHydratedTextInstance:function(){},didNotHydrateContainerInstance:function(){},didNotHydrateInstance:function(){},didNotFindHydratableContainerInstance:function(){},didNotFindHydratableContainerTextInstance:function(){},didNotFindHydratableInstance:function(){},didNotFindHydratableTextInstance:function(){}},scheduleDeferredCallback:Fr,cancelDeferredCallback:xr}),qr=Gr;K=qr.batchedUpdates,G=qr.interactiveUpdates,q=qr.flushInteractiveUpdates;var Yr={createPortal:ln,findDOMNode:function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternalFiber;if(t)return Gr.findHostInstance(t);"function"===typeof e.render?i("188"):i("213",Object.keys(e))},hydrate:function(e,t,n){return an(null,e,t,!0,n)},render:function(e,t,n){return an(null,e,t,!1,n)},unstable_renderSubtreeIntoContainer:function(e,t,n,r){return(null==e||void 0===e._reactInternalFiber)&&i("38"),an(e,t,n,!1,r)},unmountComponentAtNode:function(e){return rn(e)||i("40"),!!e._reactRootContainer&&(Gr.unbatchedUpdates(function(){an(null,null,e,!1,function(){e._reactRootContainer=null})}),!0)},unstable_createPortal:function(){return ln.apply(void 0,arguments)},unstable_batchedUpdates:Gr.batchedUpdates,unstable_deferredUpdates:Gr.deferredUpdates,flushSync:Gr.flushSync,unstable_flushControlled:Gr.flushControlled,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{EventPluginHub:Dn,EventPluginRegistry:Fn,EventPropagators:Rn,ReactControlledComponent:ni,ReactDOMComponentTree:On,ReactDOMEventListener:Yi},unstable_createRoot:function(e,t){return new nn(e,!0,null!=t&&!0===t.hydrate)}};Gr.injectIntoDevTools({findFiberByHostInstance:b,bundleType:0,version:"16.3.1",rendererPackageName:"react-dom"});var Qr=Object.freeze({default:Yr}),Xr=Qr&&Yr||Qr;e.exports=Xr.default?Xr.default:Xr},function(e,t,n){"use strict";var i=!("undefined"===typeof window||!window.document||!window.document.createElement),r={canUseDOM:i,canUseWorkers:"undefined"!==typeof Worker,canUseEventListeners:i&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:i&&!!window.screen,isInWorker:!i};e.exports=r},function(e,t,n){"use strict";function i(e){if("undefined"===typeof(e=e||("undefined"!==typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}e.exports=i},function(e,t,n){"use strict";function i(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function r(e,t){if(i(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var s=0;s<n.length;s++)if(!o.call(t,n[s])||!i(e[n[s]],t[n[s]]))return!1;return!0}var o=Object.prototype.hasOwnProperty;e.exports=r},function(e,t,n){"use strict";function i(e,t){return!(!e||!t)&&(e===t||!r(e)&&(r(t)?i(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}var r=n(75);e.exports=i},function(e,t,n){"use strict";function i(e){return r(e)&&3==e.nodeType}var r=n(76);e.exports=i},function(e,t,n){"use strict";function i(e){var t=e?e.ownerDocument||e:document,n=t.defaultView||window;return!(!e||!("function"===typeof n.Node?e instanceof n.Node:"object"===typeof e&&"number"===typeof e.nodeType&&"string"===typeof e.nodeName))}e.exports=i},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function o(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=n(0),a=(n.n(s),n(14)),l=n.n(a),c=n(39);n(24);t.a=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"store",n=arguments[1],a=n||t+"Subscription",u=function(e){function n(o,s){i(this,n);var a=r(this,e.call(this,o,s));return a[t]=o.store,a}return o(n,e),n.prototype.getChildContext=function(){var e;return e={},e[t]=this[t],e[a]=null,e},n.prototype.render=function(){return s.Children.only(this.props.children)},n}(s.Component);return u.propTypes={store:c.a.isRequired,children:l.a.element.isRequired},u.childContextTypes=(e={},e[t]=c.a.isRequired,e[a]=c.b,e),u}()},function(e,t,n){"use strict";var i=n(23),r=n(79),o=n(80);e.exports=function(){function e(e,t,n,i,s,a){a!==o&&r(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types")}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=i,n.PropTypes=n,n}},function(e,t,n){"use strict";function i(e,t,n,i,o,s,a,l){if(r(t),!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,i,o,s,a,l],h=0;c=new Error(t.replace(/%s/g,function(){return u[h++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}}var r=function(e){};e.exports=i},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){!function(t,n){e.exports=n()}(0,function(){"use strict";var e={childContextTypes:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},t={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},n=Object.defineProperty,i=Object.getOwnPropertyNames,r=Object.getOwnPropertySymbols,o=Object.getOwnPropertyDescriptor,s=Object.getPrototypeOf,a=s&&s(Object);return function l(c,u,h){if("string"!==typeof u){if(a){var d=s(u);d&&d!==a&&l(c,d,h)}var f=i(u);r&&(f=f.concat(r(u)));for(var p=0;p<f.length;++p){var g=f[p];if(!e[g]&&!t[g]&&(!h||!h[g])){var m=o(u,g);try{n(c,g,m)}catch(e){}}}return c}return c}})},function(e,t,n){"use strict";var i=function(e,t,n,i,r,o,s,a){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,i,r,o,s,a],u=0;l=new Error(t.replace(/%s/g,function(){return c[u++]})),l.name="Invariant Violation"}throw l.framesToPop=1,l}};e.exports=i},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(){var e=[],t=[];return{clear:function(){t=o,e=o},notify:function(){for(var n=e=t,i=0;i<n.length;i++)n[i]()},get:function(){return t},subscribe:function(n){var i=!0;return t===e&&(t=e.slice()),t.push(n),function(){i&&e!==o&&(i=!1,t===e&&(t=e.slice()),t.splice(t.indexOf(n),1))}}}}n.d(t,"a",function(){return a});var o=null,s={notify:function(){}},a=function(){function e(t,n,r){i(this,e),this.store=t,this.parentSub=n,this.onStateChange=r,this.unsubscribe=null,this.listeners=s}return e.prototype.addNestedSub=function(e){return this.trySubscribe(),this.listeners.subscribe(e)},e.prototype.notifyNestedSubs=function(){this.listeners.notify()},e.prototype.isSubscribed=function(){return Boolean(this.unsubscribe)},e.prototype.trySubscribe=function(){this.unsubscribe||(this.unsubscribe=this.parentSub?this.parentSub.addNestedSub(this.onStateChange):this.store.subscribe(this.onStateChange),this.listeners=r())},e.prototype.tryUnsubscribe=function(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null,this.listeners.clear(),this.listeners=s)},e}()},function(e,t,n){"use strict";function i(e,t){var n={};for(var i in e)t.indexOf(i)>=0||Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n}function r(e,t,n){for(var i=t.length-1;i>=0;i--){var r=t[i](e);if(r)return r}return function(t,i){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+i.wrappedComponentName+".")}}function o(e,t){return e===t}var s=n(40),a=n(85),l=n(86),c=n(101),u=n(102),h=n(103),d=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e};t.a=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.connectHOC,n=void 0===t?s.a:t,f=e.mapStateToPropsFactories,p=void 0===f?c.a:f,g=e.mapDispatchToPropsFactories,m=void 0===g?l.a:g,v=e.mergePropsFactories,y=void 0===v?u.a:v,b=e.selectorFactory,w=void 0===b?h.a:b;return function(e,t,s){var l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},c=l.pure,u=void 0===c||c,h=l.areStatesEqual,f=void 0===h?o:h,g=l.areOwnPropsEqual,v=void 0===g?a.a:g,b=l.areStatePropsEqual,C=void 0===b?a.a:b,A=l.areMergedPropsEqual,E=void 0===A?a.a:A,F=i(l,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),x=r(e,p,"mapStateToProps"),k=r(t,m,"mapDispatchToProps"),S=r(s,y,"mergeProps");return n(w,d({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:x,initMapDispatchToProps:k,initMergeProps:S,pure:u,areStatesEqual:f,areOwnPropsEqual:v,areStatePropsEqual:C,areMergedPropsEqual:E},F))}}()},function(e,t,n){"use strict";function i(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function r(e,t){if(i(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var s=0;s<n.length;s++)if(!o.call(t,n[s])||!i(e[n[s]],t[n[s]]))return!1;return!0}t.a=r;var o=Object.prototype.hasOwnProperty},function(e,t,n){"use strict";function i(e){return"function"===typeof e?Object(a.b)(e,"mapDispatchToProps"):void 0}function r(e){return e?void 0:Object(a.a)(function(e){return{dispatch:e}})}function o(e){return e&&"object"===typeof e?Object(a.a)(function(t){return Object(s.b)(e,t)}):void 0}var s=n(25),a=n(45);t.a=[i,r,o]},function(e,t,n){"use strict";function i(e){return null==e?void 0===e?l:a:c&&c in Object(e)?Object(o.a)(e):Object(s.a)(e)}var r=n(42),o=n(90),s=n(91),a="[object Null]",l="[object Undefined]",c=r.a?r.a.toStringTag:void 0;t.a=i},function(e,t,n){"use strict";var i=n(89),r="object"==typeof self&&self&&self.Object===Object&&self,o=i.a||r||Function("return this")();t.a=o},function(e,t,n){"use strict";(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.a=n}).call(t,n(7))},function(e,t,n){"use strict";function i(e){var t=s.call(e,l),n=e[l];try{e[l]=void 0;var i=!0}catch(e){}var r=a.call(e);return i&&(t?e[l]=n:delete e[l]),r}var r=n(42),o=Object.prototype,s=o.hasOwnProperty,a=o.toString,l=r.a?r.a.toStringTag:void 0;t.a=i},function(e,t,n){"use strict";function i(e){return o.call(e)}var r=Object.prototype,o=r.toString;t.a=i},function(e,t,n){"use strict";var i=n(93),r=Object(i.a)(Object.getPrototypeOf,Object);t.a=r},function(e,t,n){"use strict";function i(e,t){return function(n){return e(t(n))}}t.a=i},function(e,t,n){"use strict";function i(e){return null!=e&&"object"==typeof e}t.a=i},function(e,t,n){"use strict";(function(e,i){var r,o=n(97);r="undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof e?e:i;var s=Object(o.a)(r);t.a=s}).call(t,n(7),n(96)(e))},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}},function(e,t,n){"use strict";function i(e){var t,n=e.Symbol;return"function"===typeof n?n.observable?t=n.observable:(t=n("observable"),n.observable=t):t="@@observable",t}t.a=i},function(e,t,n){"use strict";function i(e,t){var n=t&&t.type;return"Given action "+(n&&'"'+n.toString()+'"'||"an action")+', reducer "'+e+'" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}function r(e){Object.keys(e).forEach(function(t){var n=e[t];if("undefined"===typeof n(void 0,{type:s.a.INIT}))throw new Error('Reducer "'+t+"\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.");if("undefined"===typeof n(void 0,{type:"@@redux/PROBE_UNKNOWN_ACTION_"+Math.random().toString(36).substring(7).split("").join(".")}))throw new Error('Reducer "'+t+"\" returned undefined when probed with a random type. Don't try to handle "+s.a.INIT+' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')})}function o(e){for(var t=Object.keys(e),n={},o=0;o<t.length;o++){var s=t[o];"function"===typeof e[s]&&(n[s]=e[s])}var a=Object.keys(n),l=void 0;try{r(n)}catch(e){l=e}return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1];if(l)throw l;for(var r=!1,o={},s=0;s<a.length;s++){var c=a[s],u=n[c],h=e[c],d=u(h,t);if("undefined"===typeof d){var f=i(c,t);throw new Error(f)}o[c]=d,r=r||d!==h}return r?o:e}}t.a=o;var s=n(41);n(26),n(43)},function(e,t,n){"use strict";function i(e,t){return function(){return t(e.apply(void 0,arguments))}}function r(e,t){if("function"===typeof e)return i(e,t);if("object"!==typeof e||null===e)throw new Error("bindActionCreators expected an object or a function, instead received "+(null===e?"null":typeof e)+'. Did you write "import ActionCreators from" instead of "import * as ActionCreators from"?');for(var n=Object.keys(e),r={},o=0;o<n.length;o++){var s=n[o],a=e[s];"function"===typeof a&&(r[s]=i(a,t))}return r}t.a=r},function(e,t,n){"use strict";function i(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return function(n,i,s){var a=e(n,i,s),l=a.dispatch,c=[],u={getState:a.getState,dispatch:function(e){return l(e)}};return c=t.map(function(e){return e(u)}),l=r.a.apply(void 0,c)(a.dispatch),o({},a,{dispatch:l})}}}t.a=i;var r=n(44),o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}},function(e,t,n){"use strict";function i(e){return"function"===typeof e?Object(o.b)(e,"mapStateToProps"):void 0}function r(e){return e?void 0:Object(o.a)(function(){return{}})}var o=n(45);t.a=[i,r]},function(e,t,n){"use strict";function i(e,t,n){return a({},n,e,t)}function r(e){return function(t,n){var i=(n.displayName,n.pure),r=n.areMergedPropsEqual,o=!1,s=void 0;return function(t,n,a){var l=e(t,n,a);return o?i&&r(l,s)||(s=l):(o=!0,s=l),s}}}function o(e){return"function"===typeof e?r(e):void 0}function s(e){return e?void 0:function(){return i}}var a=(n(46),Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e});t.a=[o,s]},function(e,t,n){"use strict";function i(e,t){var n={};for(var i in e)t.indexOf(i)>=0||Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n}function r(e,t,n,i){return function(r,o){return n(e(r,o),t(i,o),o)}}function o(e,t,n,i,r){function o(r,o){return p=r,g=o,m=e(p,g),v=t(i,g),y=n(m,v,g),f=!0,y}function s(){return m=e(p,g),t.dependsOnOwnProps&&(v=t(i,g)),y=n(m,v,g)}function a(){return e.dependsOnOwnProps&&(m=e(p,g)),t.dependsOnOwnProps&&(v=t(i,g)),y=n(m,v,g)}function l(){var t=e(p,g),i=!d(t,m);return m=t,i&&(y=n(m,v,g)),y}function c(e,t){var n=!h(t,g),i=!u(e,p);return p=e,g=t,n&&i?s():n?a():i?l():y}var u=r.areStatesEqual,h=r.areOwnPropsEqual,d=r.areStatePropsEqual,f=!1,p=void 0,g=void 0,m=void 0,v=void 0,y=void 0;return function(e,t){return f?c(e,t):o(e,t)}}function s(e,t){var n=t.initMapStateToProps,s=t.initMapDispatchToProps,a=t.initMergeProps,l=i(t,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),c=n(e,l),u=s(e,l),h=a(e,l);return(l.pure?o:r)(c,u,h,e,l)}t.a=s;n(104)},function(e,t,n){"use strict";n(24)},function(e,t,n){"use strict";var i=n(25),r=n(15),o=n(111),s=n(112),a=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__||i.d,l=Object(r.b)(),c=Object(i.e)(o.a,a(Object(i.a)(l)));l.run(s.a),t.a=c},function(e,t,n){"use strict";function i(e,t){var n={};for(var i in e)t.indexOf(i)>=0||Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i]);return n}function r(){function e(t){var n=t.getState,i=t.dispatch,d=Object(s.b)();return d.emit=(l.emitter||o.l)(d.emit),e.run=a.a.bind(null,{context:r,subscribe:d.subscribe,dispatch:i,getState:n,sagaMonitor:c,logger:u,onError:h}),function(e){return function(t){c&&c.actionDispatched&&c.actionDispatched(t);var n=e(t);return d.emit(t),n}}}var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.context,r=void 0===n?{}:n,l=i(t,["context"]),c=l.sagaMonitor,u=l.logger,h=l.onError;if(o.n.func(l))throw new Error("Saga middleware no longer accept Generator functions. Use sagaMiddleware.run instead");if(u&&!o.n.func(u))throw new Error("`options.logger` passed to the Saga middleware is not a function!");if(h&&!o.n.func(h))throw new Error("`options.onError` passed to the Saga middleware is not a function!");if(l.emitter&&!o.n.func(l.emitter))throw new Error("`options.emitter` passed to the Saga middleware is not a function!");return e.run=function(){throw new Error("Before running a Saga, you must mount the Saga middleware on the Store using applyMiddleware")},e.setContext=function(e){Object(o.g)(e,o.n.object,Object(o.h)("sagaMiddleware",e)),o.s.assign(r,e)},e}t.a=r;var o=n(2),s=n(8),a=n(48)},function(e,t,n){"use strict";function i(e,t){for(var n=arguments.length,i=Array(n>2?n-2:0),a=2;a<n;a++)i[a-2]=arguments[a];var l={done:!1,value:Object(o.h)(e)},c=function(e){return{done:!1,value:o.e.apply(void 0,[t].concat(i,[e]))}},u=void 0,h=function(e){return u=e};return Object(r.a)({q1:function(){return["q2",l,h]},q2:function(){return u===s.a?[r.b]:["q1",c(u)]}},"q1","takeEvery("+Object(r.c)(e)+", "+t.name+")")}t.a=i;var r=n(27),o=n(5),s=n(8)},function(e,t,n){"use strict";function i(e,t){for(var n=arguments.length,i=Array(n>2?n-2:0),a=2;a<n;a++)i[a-2]=arguments[a];var l={done:!1,value:Object(o.h)(e)},c=function(e){return{done:!1,value:o.e.apply(void 0,[t].concat(i,[e]))}},u=function(e){return{done:!1,value:Object(o.d)(e)}},h=void 0,d=void 0,f=function(e){return h=e},p=function(e){return d=e};return Object(r.a)({q1:function(){return["q2",l,p]},q2:function(){return d===s.a?[r.b]:h?["q3",u(h)]:["q1",c(d),f]},q3:function(){return["q1",c(d),f]}},"q1","takeLatest("+Object(r.c)(e)+", "+t.name+")")}t.a=i;var r=n(27),o=n(5),s=n(8)},function(e,t,n){"use strict";function i(e,t,n){for(var i=arguments.length,c=Array(i>3?i-3:0),u=3;u<i;u++)c[u-3]=arguments[u];var h=void 0,d=void 0,f={done:!1,value:Object(o.a)(t,a.a.sliding(1))},p=function(){return{done:!1,value:Object(o.h)(d)}},g=function(e){return{done:!1,value:o.e.apply(void 0,[n].concat(c,[e]))}},m={done:!1,value:Object(o.c)(l.j,e)},v=function(e){return h=e},y=function(e){return d=e};return Object(r.a)({q1:function(){return["q2",f,y]},q2:function(){return["q3",p(),v]},q3:function(){return h===s.a?[r.b]:["q4",g(h)]},q4:function(){return["q2",m]}},"q1","throttle("+Object(r.c)(t)+", "+n.name+")")}t.a=i;var r=n(27),o=n(5),s=n(8),a=n(16),l=n(2)},function(e,t,n){"use strict";n(2),n(5),n(49)},function(e,t,n){"use strict";function i(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(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];switch(arguments[1].type){case"allowJsToRun":return!0;default:return e}}function o(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1];switch(t.type){case"display":return t.displayLines;default:return e}}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1];switch(t.type){case"display":return t.form;default:return e}}function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=arguments[1];switch(t.type){case"display":return t.formId;default:return e}}function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1];switch(t.type){case"loadFiles":return p(function(e){return{text:e,syntaxError:null}},t.files);case"changeEditorText":var n=t.file,r=t.text;return Object.assign({},e,i({},n,Object.assign({},e[n],{text:r})));case"display":return p(function(e,n){var i=t.syntaxErrors[n]||null;return Object.assign({},e,{syntaxError:i})},e);default:return e}}function c(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"main.js";arguments[1];return e}function u(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments[1];switch(t.type){case"changeEditorText":return[];case"markSyntaxErrors":return t.syntaxErrorLocations;default:return e}}function h(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1];switch(t.type){case"display":return t.testResults;default:return e}}function d(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments[1];switch(t.type){case"display":return t.error;default:return e}}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"run",t=arguments[1];switch(t.type){case"inspectStage":return t.stage;default:return e}}function p(e,t){var n={};for(var i in t)t.hasOwnProperty(i)&&(n[i]=e(t[i],i));return n}var g=n(25);t.a=Object(g.c)({evalAllowed:r,appUi:Object(g.c)({screenLines:o,form:s,formId:a}),files:l,currentlyEditingFile:c,syntaxErrorLocations:u,testResults:h,crash:d,currentlyInspectingStage:f})},function(e,t,n){"use strict";function i(){return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(v.f)("allowJsToRun",s);case 2:return e.next=4,Object(v.f)("runApp",a);case 4:return e.next=6,Object(v.f)("changeEditorText",l);case 6:return e.next=8,Object(v.f)("loadFiles",c);case 8:return e.next=10,Object(v.e)("changeFormField",u);case 10:return e.next=12,Object(v.e)("submitForm",h);case 12:return e.next=14,Object(v.a)(d);case 14:return e.next=16,Object(v.a)(f);case 16:return e.delegateYield(r(),"t0",17);case 17:return e.delegateYield(o(),"t1",18);case 18:case"end":return e.stop()}},x,this)}function r(){return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(v.b)(Object(w.loadFiles)(F.a.load()));case 2:case"end":return e.stop()}},k,this)}function o(){var e;return g.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(m.c)(300);case 2:return t.next=4,Object(v.c)(C.c);case 4:return e=t.sent,t.next=7,Object(v.b)(Object(w.markSyntaxErrors)(Object(A.a)(e)));case 7:case"end":return t.stop()}},S,this)}function s(){var e;return g.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e=M.run(),t.next=3,Object(v.b)(Object(w.display)(e));case 3:case"end":return t.stop()}},$,this)}function a(){var e;return g.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Object(m.c)(1);case 2:return e=M.run(),t.next=5,Object(v.b)(Object(w.display)(e));case 5:case"end":return t.stop()}},_,this)}function l(e){var t,n,i=e.text,r=e.file;return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(m.c)(300);case 2:return t=M.deploy(r,i),e.next=5,Object(v.b)(Object(w.display)(t));case 5:if(!t.syntaxErrors[r]){e.next=13;break}return e.next=8,Object(m.c)(300);case 8:return n=Object(A.a)(i),e.next=11,Object(v.b)(Object(w.markSyntaxErrors)(n));case 11:e.next=16;break;case 13:return e.next=15,Object(m.c)(1e3);case 15:F.a.storeFile(r,i);case 16:case"end":return e.stop()}},D,this)}function c(e){var t,n=e.files;return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0===n["main.js"]){e.next=4;break}return t=M.deploy("main.js",n["main.js"]),e.next=4,Object(v.b)(Object(w.display)(t));case 4:case"end":return e.stop()}},B,this)}function u(e){var t,n=e.label,i=e.value;return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=M.changeFormField(n,i),e.next=3,Object(v.b)(Object(w.display)(t));case 3:case"end":return e.stop()}},T,this)}function h(e){var t,n=e.data;return g.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=M.submitForm(n),e.next=3,Object(v.b)(Object(w.display)(t));case 3:case"end":return e.stop()}},L,this)}function d(){var e,t,n;return g.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:e=Object(y.a)();case 1:return i.next=4,Object(v.d)(e);case 4:return t=i.sent,n=M.tickFrames(t),i.next=8,Object(v.b)(Object(w.display)(n));case 8:i.next=1;break;case 10:case"end":return i.stop()}},O,this)}function f(){var e,t,n;return g.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:e=Object(b.a)();case 1:return i.next=4,Object(v.d)(e);case 4:return t=i.sent,n=M.receiveKeydown(t),i.next=8,Object(v.b)(Object(w.display)(n));case 8:i.next=1;break;case 10:case"end":return i.stop()}},R,this)}t.a=i;var p=n(9),g=n.n(p),m=n(15),v=n(51),y=n(115),b=n(116),w=n(52),C=n(28),A=n(129),E=n(17),F=n(57),x=g.a.mark(i),k=g.a.mark(r),S=g.a.mark(o),$=g.a.mark(s),_=g.a.mark(a),D=g.a.mark(l),B=g.a.mark(c),T=g.a.mark(u),L=g.a.mark(h),O=g.a.mark(d),R=g.a.mark(f),M=Object(E.a)()},function(e,t,n){var i=function(){return this}()||Function("return this")(),r=i.regeneratorRuntime&&Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime")>=0,o=r&&i.regeneratorRuntime;if(i.regeneratorRuntime=void 0,e.exports=n(114),r)i.regeneratorRuntime=o;else try{delete i.regeneratorRuntime}catch(e){i.regeneratorRuntime=void 0}},function(e,t){!function(t){"use strict";function n(e,t,n,i){var o=t&&t.prototype instanceof r?t:r,s=Object.create(o.prototype),a=new f(i||[]);return s._invoke=c(e,n,a),s}function i(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function r(){}function o(){}function s(){}function a(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function l(e){function t(n,r,o,s){var a=i(e[n],e,r);if("throw"!==a.type){var l=a.arg,c=l.value;return c&&"object"===typeof c&&y.call(c,"__await")?Promise.resolve(c.__await).then(function(e){t("next",e,o,s)},function(e){t("throw",e,o,s)}):Promise.resolve(c).then(function(e){l.value=e,o(l)},s)}s(a.arg)}function n(e,n){function i(){return new Promise(function(i,r){t(e,n,i,r)})}return r=r?r.then(i,i):i()}var r;this._invoke=n}function c(e,t,n){var r=x;return function(o,s){if(r===S)throw new Error("Generator is already running");if(r===$){if("throw"===o)throw s;return g()}for(n.method=o,n.arg=s;;){var a=n.delegate;if(a){var l=u(a,n);if(l){if(l===_)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===x)throw r=$,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=S;var c=i(e,t,n);if("normal"===c.type){if(r=n.done?$:k,c.arg===_)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=$,n.method="throw",n.arg=c.arg)}}}function u(e,t){var n=e.iterator[t.method];if(n===m){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=m,u(e,t),"throw"===t.method))return _;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return _}var r=i(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,_;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=m),t.delegate=null,_):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,_)}function h(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function d(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function f(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(h,this),this.reset(!0)}function p(e){if(e){var t=e[w];if(t)return t.call(e);if("function"===typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(y.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=m,t.done=!0,t};return i.next=i}}return{next:g}}function g(){return{value:m,done:!0}}var m,v=Object.prototype,y=v.hasOwnProperty,b="function"===typeof Symbol?Symbol:{},w=b.iterator||"@@iterator",C=b.asyncIterator||"@@asyncIterator",A=b.toStringTag||"@@toStringTag",E="object"===typeof e,F=t.regeneratorRuntime;if(F)return void(E&&(e.exports=F));F=t.regeneratorRuntime=E?e.exports:{},F.wrap=n;var x="suspendedStart",k="suspendedYield",S="executing",$="completed",_={},D={};D[w]=function(){return this};var B=Object.getPrototypeOf,T=B&&B(B(p([])));T&&T!==v&&y.call(T,w)&&(D=T);var L=s.prototype=r.prototype=Object.create(D);o.prototype=L.constructor=s,s.constructor=o,s[A]=o.displayName="GeneratorFunction",F.isGeneratorFunction=function(e){var t="function"===typeof e&&e.constructor;return!!t&&(t===o||"GeneratorFunction"===(t.displayName||t.name))},F.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,s):(e.__proto__=s,A in e||(e[A]="GeneratorFunction")),e.prototype=Object.create(L),e},F.awrap=function(e){return{__await:e}},a(l.prototype),l.prototype[C]=function(){return this},F.AsyncIterator=l,F.async=function(e,t,i,r){var o=new l(n(e,t,i,r));return F.isGeneratorFunction(t)?o:o.next().then(function(e){return e.done?e.value:o.next()})},a(L),L[A]="Generator",L[w]=function(){return this},L.toString=function(){return"[object Generator]"},F.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var i=t.pop();if(i in e)return n.value=i,n.done=!1,n}return n.done=!0,n}},F.values=p,f.prototype={constructor:f,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=m,this.done=!1,this.delegate=null,this.method="next",this.arg=m,this.tryEntries.forEach(d),!e)for(var t in this)"t"===t.charAt(0)&&y.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=m)},stop:function(){this.done=!0;var e=this.tryEntries[0],t=e.completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){function t(t,i){return o.type="throw",o.arg=e,n.next=t,i&&(n.method="next",n.arg=m),!!i}if(this.done)throw e;for(var n=this,i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i],o=r.completion;if("root"===r.tryLoc)return t("end");if(r.tryLoc<=this.prev){var s=y.call(r,"catchLoc"),a=y.call(r,"finallyLoc");if(s&&a){if(this.prev<r.catchLoc)return t(r.catchLoc,!0);if(this.prev<r.finallyLoc)return t(r.finallyLoc)}else if(s){if(this.prev<r.catchLoc)return t(r.catchLoc,!0)}else{if(!a)throw new Error("try statement without catch or finally");if(this.prev<r.finallyLoc)return t(r.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&y.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var r=i;break}}r&&("break"===e||"continue"===e)&&r.tryLoc<=t&&t<=r.finallyLoc&&(r=null);var o=r?r.completion:{};return o.type=e,o.arg=t,r?(this.method="next",this.next=r.finallyLoc,_):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),_},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),d(n),_}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var i=n.completion;if("throw"===i.type){var r=i.arg;d(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:p(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=m),_}}}(function(){return this}()||Function("return this")())},function(e,t,n){"use strict";function i(){return Object(r.d)(function(e){function t(){var i=+new Date,r=i-n,s=Math.round(r/o);n=i,e(s),requestAnimationFrame(t)}var n=+new Date;return t(),function(){}},r.a.none())}t.a=i;var r=n(15),o=1e3/60},function(e,t,n){"use strict";function i(){return Object(a.d)(r,a.a.none())}function r(e){return document.body.addEventListener("keydown",function(t){t.target===document.body&&(s(t)||o(t)||(e(t),t.preventDefault()))}),function(){}}function o(e){return e.altKey||e.ctrlKey||e.metaKey}function s(e){return e.key.length>1&&"Backspace"!==e.key&&"Enter"!==e.key}t.a=i;var a=n(15)},function(e,t,n){"use strict";function i(){return{type:"allowJsToRun"}}t.a=i},function(e,t,n){"use strict";function i(e,t){return{type:"changeEditorText",text:e,file:t}}t.a=i},function(e,t,n){"use strict";function i(e,t){return{type:"changeFormField",label:e,value:t}}t.a=i},function(e,t,n){"use strict";function i(e){return Object.assign({type:"display"},e)}t.a=i},function(e,t,n){"use strict";function i(e,t){return{type:"loadFiles",files:e}}t.a=i},function(e,t,n){"use strict";function i(e){return{type:"markSyntaxErrors",syntaxErrorLocations:e}}t.a=i},function(e,t,n){"use strict";function i(e){return{type:"inspectStage",stage:e}}t.a=i},function(e,t,n){"use strict";function i(){return{type:"runApp"}}t.a=i},function(e,t,n){"use strict";function i(e){return{type:"submitForm",data:e}}t.a=i},function(e,t,n){"use strict";function i(e){return Object(r.a)(e).length>0}t.a=i;var r=n(53)},function(e,t,n){"use strict";function i(e){return Object.values(e.testResults).some(function(e){return e instanceof Error})}t.a=i},function(e,t,n){"use strict";function i(e){var t=e.files[e.currentlyEditingFile];return t?t.text:""}t.a=i},function(e,t,n){"use strict";function i(e){try{return new r.Parser({ecmaVersion:8},e,0).parse(),[]}catch(e){return[{line:e.loc.line-1,column:e.loc.column,pos:e.pos}]}}t.a=i;var r=n(54);n.n(r)},function(e,t,n){"use strict";function i(e){var t,n,r,o,s,h,d,w,C,A,E=arguments;return a.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:for(Object(f.a)(i,E,b),t=Object(l.c)(e,c.a,Object(u.b)(function(e){var t=v(e,2),n=t[0],i=t[1];return{label:n,type:i.type,value:i.value}})),n=!0,r=!1,o=void 0,a.prev=5,s=t[Symbol.iterator]();!(n=(h=s.next()).done);n=!0)d=h.value,e[d.label].receiveValue(d.value);a.next=13;break;case 9:a.prev=9,a.t0=a.catch(5),r=!0,o=a.t0;case 13:a.prev=13,a.prev=14,!n&&s.return&&s.return();case 16:if(a.prev=16,!r){a.next=19;break}throw o;case 19:return a.finish(16);case 20:return a.finish(13);case 21:return a.next=23,Object(p.d)();case 23:return a.next=25,Object(p.f)(t);case 25:return a.next=28,Object(p.j)();case 28:if(w=a.sent,!Object(g.f)(w)){a.next=35;break}return a.next=32,Object(p.f)([]);case 32:return a.abrupt("break",60);case 35:if(!Object(g.e)(w)){a.next=57;break}if(!e[w.label]){a.next=42;break}return e[w.label].receiveValue(w.value),a.next=40,Object(p.d)();case 40:a.next=54;break;case 42:C=Object.keys(e),A=void 0,a.t1=C.length,a.next=0===a.t1?47:1===a.t1?49:51;break;case 47:return A="There are no fields in the current form.",a.abrupt("break",53);case 49:return A="The only field that exists is "+Object(m.e)(C[0])+".",a.abrupt("break",53);case 51:return A="The fields that exist are "+Object(m.c)(C.map(m.e))+".",a.abrupt("break",53);case 53:throw Error("Received a formFieldChange event for unrecognized field "+Object(m.e)(w.label)+". "+A);case 54:case 57:return a.abrupt("continue",25);case 58:a.next=25;break;case 60:case"end":return a.stop()}},y,this,[[5,9,13,21],[14,,16,20]])}function r(e,t){return Object(f.a)(r,arguments,w),{type:"line",value:e,receiveValue:t}}function o(e,t){return Object(f.a)(o,arguments,w),{type:"text",value:e,receiveValue:t}}t.a=i,t.b=r,t.c=o;var s=n(9),a=n.n(s),l=n(13),c=n(12),u=n(31),h=n(11),d=n(1),f=n(3),p=n(30),g=n(19),m=n(10),v=function(){function e(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(i=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&a.return&&a.return()}finally{if(r)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),y=a.a.mark(i),b={example:[{Search:{type:"line",value:"",receiveValue:function(){}}}],types:[function(e){return Object.values(e).every(Object(h.f)({type:Object(h.e)("line","text"),value:d.i,receiveValue:d.c}))}]},w={example:["",function(){}],types:[d.i,d.c]}},function(e,t,n){"use strict";var i=n(132);n.d(t,"a",function(){return i.a})},function(e,t,n){"use strict";function i(e){return function t(n){function i(e){var t=v.redraw();h(t.error);for(var n=arguments.length,i=Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return l.a.apply(void 0,[t.displayLines.join("\n"),e].concat(i)),y}function r(e){return v.redraw().form}function o(e){return v.receive(e),y}function u(e){return e(y),y}function h(e){if(null!==e)throw Error("The simulated program crashed.\nThe error was:\n"+Object(c.a)(""+e))}Object(f.a)(t,arguments,p);var d=e.getStateType||function(){return{}},g=e.reducer,m=Object(a.a)(d(),g),v=Object(s.a)(m);h(v.begin(n).error);var y=void 0;return y={assertDisplay:i,form:r,receive:o,do:u}}}t.a=i;var r=n(9),o=n.n(r),s=n(56),a=n(32),l=n(18),c=n(29),u=n(1),h=n(6),d=n(4),f=n(3),p={example:[Object(d.b)(o.a.mark(function e(){return o.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e,this)}),function(){return"run"})],types:[Object(h.b)(u.d,u.e)]}},function(e,t,n){"use strict";function i(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(){function e(e,t){if(E){y(e,t);var n=s(a(window));x=Object.assign({},x,{testResults:n},E.redraw())}else F[e]=t;return x}function t(){x=C(x);for(var e in F)Object(c.d)(e,F)&&y(e,F[e]);if(!E){var t=s(a(window));x=Object.assign({},x,{testResults:t})}var n=window.getStateType||function(){return{}},i=window.reducer,r=void 0;try{r=n(),E=Object(h.a)(Object(u.a)(r,i))}catch(e){return x=Object.assign({},x,{error:e})}return F={},x=Object.assign({},x,E.begin(g.a))}function n(){A.deleteAllModules()}function r(e){return E&&(x=Object.assign({},x,E.receive(Object(p.h)(e.key)))),x}function d(e,t){return E&&(x=Object.assign({},x,E.receive(Object(p.b)(e,t)))),x}function m(){return E&&(x=Object.assign({},x,E.receive(Object(p.c)()))),x}function v(e){return E&&(x=Object.assign({},x,E.receive(Object(p.a)(e)))),x}function y(e,t){t='"use strict";\n'+t;try{var n=A.defineModule(e);A.withUserFunctionsDisallowed(function(){new Function("define",t)(n)}),x=b(x,e)}catch(t){x=w(x,e,t)}}function b(e,t){return Object.assign({},e,{syntaxErrors:o(t,e.syntaxErrors)})}function w(e,t,n){return Object.assign({},e,{syntaxErrors:Object.assign({},e.syntaxErrors,i({},t,n))})}function C(e){return Object.assign({},Object(f.a)(),{syntaxErrors:e.syntaxErrors,testResults:e.testResults})}var A=Object(l.a)(window),E=null,F={},x=Object(f.a)();return{deploy:e,run:t,clean:n,receiveKeydown:r,changeFormField:d,submitForm:m,tickFrames:v}}function o(e,t){var n=Object.assign({},t);return delete n[e],n}function s(e){function t(e){try{e()}catch(e){return e}return null}return e.map(Object(d.o)([Object(d.f)("name"),t])).reduce(function(e,t){var n=v(t,2),i=n[0],r=n[1];return e[i]=r,e},{})}function a(e){return Object.values(e).filter(m.c).filter(function(e){var t=e.name;return Object(d.n)("test ",t)})}t.a=r;var l=n(134),c=n(12),u=n(32),h=n(56),d=n(13),f=n(135),p=n(19),g=n(136),m=n(1),v=function(){function e(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(i=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&a.return&&a.return()}finally{if(r)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}()},function(e,t,n){"use strict";function i(e){function t(t){return function(n){Object.keys(n).forEach(function(n){if(Object(a.d)(n,e)&&!h(t).includes(n))throw Error("The definition of "+n+" in "+t+" overwrites another definition. Please rename "+n+" to something else.")}),i(t),d(t,Object.keys(n)),Object.assign(e,Object(a.f)(f,n))}}function n(e,t){if(!Object(a.d)(e,p))throw Error("No module named "+e+" exists");p[t]=p[e],delete p[e]}function i(t){h(t).forEach(function(t){delete e[t]}),delete p[t]}function o(){for(var e in p)Object(a.d)(e,p)&&i(e)}function u(e){try{g=!1,e()}finally{g=!0}}function h(e){return p[e]||[]}function d(e,t){p[e]=t}function f(e){if("function"!==typeof e)return e;if(e.generatedByVerse)return e;var t=null;return t=Object(l.d)(e)?s.a.mark(function t(){var n=arguments;return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.delegateYield(e.apply(null,n),"t0",2);case 2:return t.abrupt("return",t.t0);case 5:throw t.prev=5,t.t1=t.catch(0),t.t1.verseStack=t.t1.verseStack||[],t.t1.verseStack.push(e.name),t.t1;case 10:case"end":return t.stop()}},t,this,[[0,5]])}):function(){if(!g)throw r(e);try{return e.apply(null,arguments)}catch(t){throw t.verseStack=t.verseStack||[],t.verseStack.push(e.name),t}},Object(c.b)(t,function(){return e.name}),t}var p={},g=!0;return{defineModule:t,renameModule:n,deleteModule:i,deleteAllModules:o,withUserFunctionsDisallowed:u}}function r(e){return Error("Your code called your "+e.name+"() function while the code was still loading.\n\nThis usually means you called the function from somewhere that's not inside any other function.\n\nDoing that can cause Verse to get into a weird state, so it's not allowed.\n")}t.a=i;var o=n(9),s=n.n(o),a=n(12),l=n(1),c=n(4)},function(e,t,n){"use strict";function i(){return{displayLines:[],error:null,syntaxErrors:{},testResults:{},form:[],formId:0}}t.a=i},function(e,t,n){"use strict";function i(){return o.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(s.g)(function(){if(!window.displayText)return[];try{return[Object(a.b)(window.displayText())]}catch(e){return["ERROR: "+e.message]}});case 2:if(!window.run){e.next=12;break}if(!window.displayText){e.next=6;break}return e.next=6,Object(s.i)();case 6:return e.next=8,Object(s.g)(function(){return[]});case 8:return e.next=10,window.run;case 10:return e.next=12,Object(s.g)(function(){return["[Program finished]"]});case 12:return e.next=14,Object(s.h)(1/0);case 14:case"end":return e.stop()}},l,this)}t.a=i;var r=n(9),o=n.n(r),s=n(30),a=n(10),l=o.a.mark(i)},function(e,t){},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(139),s=(n.n(o),n(140)),a=n(142),l=n(144),c=n(157),u=n(35),h=u.a["--content-height"],d=u.a["--content-width"];t.a=function(){return r.a.createElement("div",{className:"Verse",style:u.a},r.a.createElement(s.a,null,r.a.createElement(a.a,{height:h,width:d,style:{boxShadow:"-6px -6px 0 #fff, -6px 6px 0 #fff, 6px -6px 0 #fff, 6px 6px 0 #fff"}},r.a.createElement(f,null),r.a.createElement(l.a,null),r.a.createElement(c.a,null))))};var f=function(){return r.a.createElement("div",{className:"links"},"Verse v2.0.0-alpha.1 |\xa0",r.a.createElement("a",{href:"https://benchristel.github.io/verse/docs"},"Documentation"))}},function(e,t){},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(141);n.n(o);t.a=function(e){return r.a.createElement("div",{className:"Backdrop"},e.children)}},function(e,t){},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(143);n.n(o);t.a=function(e){var t=Object.assign({width:e.width,height:e.height,top:"calc(50% - "+e.height+" / 2)",left:"calc(50% - "+e.width+" / 2)"},e.style);return r.a.createElement("div",{className:"CenteredContainer",style:t},e.children)}},function(e,t){},function(e,t,n){"use strict";n.d(t,"a",function(){return a});var i=n(0),r=n.n(i),o=n(20),s=n(146),a=function(){return r.a.createElement(o.a,{style:{width:"50%"}},r.a.createElement(s.a,null))}},function(e,t){},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function o(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){var t=e.getSession();t.setUseWorker(!1),t.setTabSize(2),t.setUseSoftTabs(!0),t.setUseWrapMode(!0),e.setBehavioursEnabled(!0),e.renderer.setShowGutter(!1),e.commands.removeCommand("gotoline"),e.commands.removeCommand("removewordleft"),e.commands.addCommand({name:"removeline",bindKey:{mac:"Cmd-Backspace",win:"Ctrl-Backspace"},multiSelectAction:"forEach",exec:function(e){e.removeLines()}}),e.commands.addCommand({name:"selectMoreAfter",bindKey:{mac:"Ctrl-G",win:"Ctrl-G"},exec:function(e){e.selectMore(1,!1)}}),e.commands.addCommand({name:"selectNextAfter",bindKey:{mac:"Ctrl-Shift-G",win:"Ctrl-Shift-G"},exec:function(e){e.selectMore(-1,!0)}})}function a(e){return function(t){var n=Object(f.getLineInfo)(e,l(t.pos,e)),i=Object(f.getLineInfo)(e,Object(m.a)(t.pos,e));return{startRow:n.line-1,startCol:n.column+1,endRow:i.line-1,endCol:i.column,className:"syntaxError",type:"background"}}}function l(e,t){for(var n=e-1;n>=0;n--){var i=t[n];if(" "!==i&&"\n"!==i&&"\t"!==i)return n}return 0}var c=n(0),u=n.n(c),h=n(147),d=n.n(h),f=n(54),p=(n.n(f),n(21)),g=n(28),m=n(153),v=n(35),y=(n(154),n(155)),b=(n.n(y),n(156)),w=(n.n(b),function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}()),C=v.a["--content-height"];t.a=Object(p.a)(function(e){function t(){return i(this,t),r(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return o(t,e),w(t,[{key:"shouldComponentUpdate",value:function(){return!this.debounceTimeout}},{key:"render",value:function(){var e=this,t=Object(g.c)(this.props);return u.a.createElement(d.a,{className:"Editor",mode:"javascript",theme:"xcode",focus:!0,value:t,onChange:function(t){e.debounceTimeout&&clearTimeout(e.debounceTimeout),e.debounceTimeout=setTimeout(function(){e.debounceTimeout=null,e.props.changeEditorText(t,e.props.currentlyEditingFile)},1)},onLoad:s,name:"AceEditor",editorProps:{$blockScrolling:1/0},style:{width:"100%",height:C,position:"absolute"},markers:this.props.syntaxErrorLocations.map(a(t))})}}]),t}(u.a.Component))},function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.split=void 0;var r=n(148),o=i(r),s=n(150),a=i(s);t.split=a.default,t.default=o.default},function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function s(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),c=n(33),u=i(c),h=n(0),d=i(h),f=n(14),p=i(f),g=n(58),m=i(g),v=n(59),y=u.default.acequire("ace/range"),b=y.Range,w=function(e){function t(e){r(this,t);var n=o(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return v.editorEvents.forEach(function(e){n[e]=n[e].bind(n)}),n}return s(t,e),l(t,[{key:"componentDidMount",value:function(){var e=this,t=this.props,n=t.className,i=t.onBeforeLoad,r=t.onValidate,o=t.mode,s=t.focus,a=t.theme,l=t.fontSize,c=t.value,h=t.defaultValue,d=t.cursorStart,f=t.showGutter,p=t.wrapEnabled,g=t.showPrintMargin,m=t.scrollMargin,y=void 0===m?[0,0,0,0]:m,b=t.keyboardHandler,w=t.onLoad,C=t.commands,A=t.annotations,E=t.markers;this.editor=u.default.edit(this.refEditor),i&&i(u.default);for(var F=Object.keys(this.props.editorProps),x=0;x<F.length;x++)this.editor[F[x]]=this.props.editorProps[F[x]];this.props.debounceChangePeriod&&(this.onChange=this.debounce(this.onChange,this.props.debounceChangePeriod)),this.editor.renderer.setScrollMargin(y[0],y[1],y[2],y[3]),this.editor.getSession().setMode("ace/mode/"+o),this.editor.setTheme("ace/theme/"+a),this.editor.setFontSize(l),this.editor.getSession().setValue(h||c,d),this.editor.navigateFileEnd(),this.editor.renderer.setShowGutter(f),this.editor.getSession().setUseWrapMode(p),this.editor.setShowPrintMargin(g),this.editor.on("focus",this.onFocus),this.editor.on("blur",this.onBlur),this.editor.on("copy",this.onCopy),this.editor.on("paste",this.onPaste),this.editor.on("change",this.onChange),this.editor.on("input",this.onInput),this.editor.getSession().selection.on("changeSelection",this.onSelectionChange),this.editor.getSession().selection.on("changeCursor",this.onCursorChange),r&&this.editor.getSession().on("changeAnnotation",function(){var t=e.editor.getSession().getAnnotations();e.props.onValidate(t)}),this.editor.session.on("changeScrollTop",this.onScroll),this.editor.getSession().setAnnotations(A||[]),E&&E.length>0&&this.handleMarkers(E);for(var k=this.editor.$options,S=0;S<v.editorOptions.length;S++){var $=v.editorOptions[S];k.hasOwnProperty($)?this.editor.setOption($,this.props[$]):this.props[$]&&console.warn("ReaceAce: editor option "+$+" was activated but not found. Did you need to import a related tool or did you possibly mispell the option?")}this.handleOptions(this.props),Array.isArray(C)&&C.forEach(function(t){"string"==typeof t.exec?e.editor.commands.bindKey(t.bindKey,t.exec):e.editor.commands.addCommand(t)}),b&&this.editor.setKeyboardHandler("ace/keyboard/"+b),n&&(this.refEditor.className+=" "+n),s&&this.editor.focus(),w&&w(this.editor),this.editor.resize()}},{key:"debounce",value:function(e,t){var n=null;return function(){var i=this,r=arguments;clearTimeout(n),n=setTimeout(function(){e.apply(i,r)},t)}}},{key:"componentWillReceiveProps",value:function(e){for(var t=this.props,n=0;n<v.editorOptions.length;n++){var i=v.editorOptions[n];e[i]!==t[i]&&this.editor.setOption(i,e[i])}if(e.className!==t.className){var r=this.refEditor.className,o=r.trim().split(" ");t.className.trim().split(" ").forEach(function(e){var t=o.indexOf(e);o.splice(t,1)}),this.refEditor.className=" "+e.className+" "+o.join(" ")}if(e.mode!==t.mode&&this.editor.getSession().setMode("ace/mode/"+e.mode),e.theme!==t.theme&&this.editor.setTheme("ace/theme/"+e.theme),e.keyboardHandler!==t.keyboardHandler&&(e.keyboardHandler?this.editor.setKeyboardHandler("ace/keyboard/"+e.keyboardHandler):this.editor.setKeyboardHandler(null)),e.fontSize!==t.fontSize&&this.editor.setFontSize(e.fontSize),e.wrapEnabled!==t.wrapEnabled&&this.editor.getSession().setUseWrapMode(e.wrapEnabled),e.showPrintMargin!==t.showPrintMargin&&this.editor.setShowPrintMargin(e.showPrintMargin),e.showGutter!==t.showGutter&&this.editor.renderer.setShowGutter(e.showGutter),(0,m.default)(e.setOptions,t.setOptions)||this.handleOptions(e),(0,m.default)(e.annotations,t.annotations)||this.editor.getSession().setAnnotations(e.annotations||[]),!(0,m.default)(e.markers,t.markers)&&Array.isArray(e.markers)&&this.handleMarkers(e.markers),(0,m.default)(e.scrollMargin,t.scrollMargin)||this.handleScrollMargins(e.scrollMargin),this.editor&&this.editor.getValue()!==e.value){this.silent=!0;var s=this.editor.session.selection.toJSON();this.editor.setValue(e.value,e.cursorStart),this.editor.session.selection.fromJSON(s),this.silent=!1}e.focus&&!t.focus&&this.editor.focus()}},{key:"componentDidUpdate",value:function(e){e.height===this.props.height&&e.width===this.props.width||this.editor.resize()}},{key:"handleScrollMargins",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[0,0,0,0];this.editor.renderer.setScrollMargins(e[0],e[1],e[2],e[3])}},{key:"componentWillUnmount",value:function(){this.editor.destroy(),this.editor=null}},{key:"onChange",value:function(e){if(this.props.onChange&&!this.silent){var t=this.editor.getValue();this.props.onChange(t,e)}}},{key:"onSelectionChange",value:function(e){if(this.props.onSelectionChange){var t=this.editor.getSelection();this.props.onSelectionChange(t,e)}}},{key:"onCursorChange",value:function(e){if(this.props.onCursorChange){var t=this.editor.getSelection();this.props.onCursorChange(t,e)}}},{key:"onInput",value:function(e){this.props.onInput&&this.props.onInput(e)}},{key:"onFocus",value:function(e){this.props.onFocus&&this.props.onFocus(e)}},{key:"onBlur",value:function(e){this.props.onBlur&&this.props.onBlur(e,this.editor)}},{key:"onCopy",value:function(e){this.props.onCopy&&this.props.onCopy(e)}},{key:"onPaste",value:function(e){this.props.onPaste&&this.props.onPaste(e)}},{key:"onScroll",value:function(){this.props.onScroll&&this.props.onScroll(this.editor)}},{key:"handleOptions",value:function(e){for(var t=Object.keys(e.setOptions),n=0;n<t.length;n++)this.editor.setOption(t[n],e.setOptions[t[n]])}},{key:"handleMarkers",value:function(e){var t=this,n=this.editor.getSession().getMarkers(!0);for(var i in n)n.hasOwnProperty(i)&&this.editor.getSession().removeMarker(n[i].id);n=this.editor.getSession().getMarkers(!1);for(var r in n)n.hasOwnProperty(r)&&this.editor.getSession().removeMarker(n[r].id);e.forEach(function(e){var n=e.startRow,i=e.startCol,r=e.endRow,o=e.endCol,s=e.className,a=e.type,l=e.inFront,c=void 0!==l&&l,u=new b(n,i,r,o);t.editor.getSession().addMarker(u,s,a,c)})}},{key:"updateRef",value:function(e){this.refEditor=e}},{key:"render",value:function(){var e=this.props,t=e.name,n=e.width,i=e.height,r=e.style,o=a({width:n,height:i},r);return d.default.createElement("div",{ref:this.updateRef,id:t,style:o})}}]),t}(h.Component);t.default=w,w.propTypes={mode:p.default.string,focus:p.default.bool,theme:p.default.string,name:p.default.string,className:p.default.string,height:p.default.string,width:p.default.string,fontSize:p.default.oneOfType([p.default.number,p.default.string]),showGutter:p.default.bool,onChange:p.default.func,onCopy:p.default.func,onPaste:p.default.func,onFocus:p.default.func,onInput:p.default.func,onBlur:p.default.func,onScroll:p.default.func,value:p.default.string,defaultValue:p.default.string,onLoad:p.default.func,onSelectionChange:p.default.func,onCursorChange:p.default.func,onBeforeLoad:p.default.func,onValidate:p.default.func,minLines:p.default.number,maxLines:p.default.number,readOnly:p.default.bool,highlightActiveLine:p.default.bool,tabSize:p.default.number,showPrintMargin:p.default.bool,cursorStart:p.default.number,debounceChangePeriod:p.default.number,editorProps:p.default.object,setOptions:p.default.object,style:p.default.object,scrollMargin:p.default.array,annotations:p.default.array,markers:p.default.array,keyboardHandler:p.default.string,wrapEnabled:p.default.bool,enableBasicAutocompletion:p.default.oneOfType([p.default.bool,p.default.array]),enableLiveAutocompletion:p.default.oneOfType([p.default.bool,p.default.array]),commands:p.default.array},w.defaultProps={name:"brace-editor",focus:!1,mode:"",theme:"",height:"500px",width:"500px",value:"",fontSize:12,showGutter:!0,onChange:null,onPaste:null,onLoad:null,onScroll:null,minLines:null,maxLines:null,readOnly:!1,highlightActiveLine:!0,showPrintMargin:!0,tabSize:4,cursorStart:1,editorProps:{},style:{},scrollMargin:[0,0,0,0],setOptions:{},wrapEnabled:!1,enableBasicAutocompletion:!1,enableLiveAutocompletion:!1}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function s(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},l=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),c=n(33),u=i(c),h=n(0),d=i(h),f=n(14),p=i(f),g=n(58),m=i(g),v=n(151),y=i(v),b=n(59);n(152);var w=u.default.acequire("ace/range"),C=w.Range,A=u.default.acequire("ace/split"),E=A.Split,F=function(e){function t(e){r(this,t);var n=o(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return b.editorEvents.forEach(function(e){n[e]=n[e].bind(n)}),n}return s(t,e),l(t,[{key:"componentDidMount",value:function(){var e=this,t=this.props,n=t.className,i=t.onBeforeLoad,r=t.mode,o=t.focus,s=t.theme,a=t.fontSize,l=t.value,h=t.defaultValue,d=t.cursorStart,f=t.showGutter,p=t.wrapEnabled,g=t.showPrintMargin,m=t.scrollMargin,v=void 0===m?[0,0,0,0]:m,w=t.keyboardHandler,C=t.onLoad,A=t.commands,F=t.annotations,x=t.markers,k=t.splits;this.editor=u.default.edit(this.refEditor),i&&i(u.default);var S=Object.keys(this.props.editorProps),$=new E(this.editor.container,"ace/theme/"+s,k);this.editor.env.split=$,this.splitEditor=$.getEditor(0),this.split=$,this.editor.setShowPrintMargin(!1),this.editor.renderer.setShowGutter(!1);var _=this.splitEditor.$options;$.forEach(function(t,n){for(var i=0;i<S.length;i++)t[S[i]]=e.props.editorProps[S[i]];var o=(0,y.default)(h,n),u=(0,y.default)(l,n,"");t.session.setUndoManager(new c.UndoManager),t.setTheme("ace/theme/"+s),t.renderer.setScrollMargin(v[0],v[1],v[2],v[3]),t.getSession().setMode("ace/mode/"+r),t.setFontSize(a),t.renderer.setShowGutter(f),t.getSession().setUseWrapMode(p),t.setShowPrintMargin(g),t.on("focus",e.onFocus),t.on("blur",e.onBlur),t.on("input",e.onInput),t.on("copy",e.onCopy),t.on("paste",e.onPaste),t.on("change",e.onChange),t.getSession().selection.on("changeSelection",e.onSelectionChange),t.getSession().selection.on("changeCursor",e.onCursorChange),t.session.on("changeScrollTop",e.onScroll),t.setValue(void 0===o?u:o,d);var m=(0,y.default)(F,n,[]),C=(0,y.default)(x,n,[]);t.getSession().setAnnotations(m),C&&C.length>0&&e.handleMarkers(C,t);for(var E=0;E<b.editorOptions.length;E++){var k=b.editorOptions[E];_.hasOwnProperty(k)?t.setOption(k,e.props[k]):e.props[k]&&console.warn("ReaceAce: editor option "+k+" was activated but not found. Did you need to import a related tool or did you possibly mispell the option?")}e.handleOptions(e.props,t),Array.isArray(A)&&A.forEach(function(e){"string"==typeof e.exec?t.commands.bindKey(e.bindKey,e.exec):t.commands.addCommand(e)}),w&&t.setKeyboardHandler("ace/keyboard/"+w)}),n&&(this.refEditor.className+=" "+n),o&&this.splitEditor.focus();var D=this.editor.env.split;D.setOrientation("below"===this.props.orientation?D.BELOW:D.BESIDE),D.resize(!0),C&&C(D)}},{key:"componentWillReceiveProps",value:function(e){var t=this,n=this.props,i=this.editor.env.split;if(e.splits!==n.splits&&i.setSplits(e.splits),e.orientation!==n.orientation&&i.setOrientation("below"===e.orientation?i.BELOW:i.BESIDE),i.forEach(function(i,r){e.mode!==n.mode&&i.getSession().setMode("ace/mode/"+e.mode),e.keyboardHandler!==n.keyboardHandler&&(e.keyboardHandler?i.setKeyboardHandler("ace/keyboard/"+e.keyboardHandler):i.setKeyboardHandler(null)),e.fontSize!==n.fontSize&&i.setFontSize(e.fontSize),e.wrapEnabled!==n.wrapEnabled&&i.getSession().setUseWrapMode(e.wrapEnabled),e.showPrintMargin!==n.showPrintMargin&&i.setShowPrintMargin(e.showPrintMargin),e.showGutter!==n.showGutter&&i.renderer.setShowGutter(e.showGutter);for(var o=0;o<b.editorOptions.length;o++){var s=b.editorOptions[o];e[s]!==n[s]&&i.setOption(s,e[s])}(0,m.default)(e.setOptions,n.setOptions)||t.handleOptions(e,i);var a=(0,y.default)(e.value,r,"");if(i.getValue()!==a){t.silent=!0;var l=i.session.selection.toJSON();i.setValue(a,e.cursorStart),i.session.selection.fromJSON(l),t.silent=!1}var c=(0,y.default)(e.annotations,r,[]),u=(0,y.default)(n.annotations,r,[]);(0,m.default)(c,u)||i.getSession().setAnnotations(c);var h=(0,y.default)(e.markers,r,[]),d=(0,y.default)(n.markers,r,[]);!(0,m.default)(h,d)&&Array.isArray(h)&&t.handleMarkers(h,i)}),e.className!==n.className){var r=this.refEditor.className,o=r.trim().split(" ");n.className.trim().split(" ").forEach(function(e){var t=o.indexOf(e);o.splice(t,1)}),this.refEditor.className=" "+e.className+" "+o.join(" ")}e.theme!==n.theme&&i.setTheme("ace/theme/"+e.theme),e.focus&&!n.focus&&this.splitEditor.focus(),e.height===this.props.height&&e.width===this.props.width||this.editor.resize()}},{key:"componentWillUnmount",value:function(){this.editor.destroy(),this.editor=null}},{key:"onChange",value:function(e){if(this.props.onChange&&!this.silent){var t=[];this.editor.env.split.forEach(function(e){t.push(e.getValue())}),this.props.onChange(t,e)}}},{key:"onSelectionChange",value:function(e){if(this.props.onSelectionChange){var t=[];this.editor.env.split.forEach(function(e){t.push(e.getSelection())}),this.props.onSelectionChange(t,e)}}},{key:"onCursorChange",value:function(e){if(this.props.onCursorChange){var t=[];this.editor.env.split.forEach(function(e){t.push(e.getSelection())}),this.props.onCursorChange(t,e)}}},{key:"onFocus",value:function(e){this.props.onFocus&&this.props.onFocus(e)}},{key:"onInput",value:function(e){this.props.onInput&&this.props.onInput(e)}},{key:"onBlur",value:function(e){this.props.onBlur&&this.props.onBlur(e)}},{key:"onCopy",value:function(e){this.props.onCopy&&this.props.onCopy(e)}},{key:"onPaste",value:function(e){this.props.onPaste&&this.props.onPaste(e)}},{key:"onScroll",value:function(){this.props.onScroll&&this.props.onScroll(this.editor)}},{key:"handleOptions",value:function(e,t){for(var n=Object.keys(e.setOptions),i=0;i<n.length;i++)t.setOption(n[i],e.setOptions[n[i]])}},{key:"handleMarkers",value:function(e,t){var n=t.getSession().getMarkers(!0);for(var i in n)n.hasOwnProperty(i)&&t.getSession().removeMarker(n[i].id);n=t.getSession().getMarkers(!1);for(var r in n)n.hasOwnProperty(r)&&t.getSession().removeMarker(n[r].id);e.forEach(function(e){var n=e.startRow,i=e.startCol,r=e.endRow,o=e.endCol,s=e.className,a=e.type,l=e.inFront,c=void 0!==l&&l,u=new C(n,i,r,o);t.getSession().addMarker(u,s,a,c)})}},{key:"updateRef",value:function(e){this.refEditor=e}},{key:"render",value:function(){var e=this.props,t=e.name,n=e.width,i=e.height,r=e.style,o=a({width:n,height:i},r);return d.default.createElement("div",{ref:this.updateRef,id:t,style:o})}}]),t}(h.Component);t.default=F,F.propTypes={mode:p.default.string,splits:p.default.number,orientation:p.default.string,focus:p.default.bool,theme:p.default.string,name:p.default.string,className:p.default.string,height:p.default.string,width:p.default.string,fontSize:p.default.oneOfType([p.default.number,p.default.string]),showGutter:p.default.bool,onChange:p.default.func,onCopy:p.default.func,onPaste:p.default.func,onFocus:p.default.func,onInput:p.default.func,onBlur:p.default.func,onScroll:p.default.func,value:p.default.arrayOf(p.default.string),defaultValue:p.default.arrayOf(p.default.string),onLoad:p.default.func,onSelectionChange:p.default.func,onCursorChange:p.default.func,onBeforeLoad:p.default.func,minLines:p.default.number,maxLines:p.default.number,readOnly:p.default.bool,highlightActiveLine:p.default.bool,tabSize:p.default.number,showPrintMargin:p.default.bool,cursorStart:p.default.number,editorProps:p.default.object,setOptions:p.default.object,style:p.default.object,scrollMargin:p.default.array,annotations:p.default.array,markers:p.default.array,keyboardHandler:p.default.string,wrapEnabled:p.default.bool,enableBasicAutocompletion:p.default.oneOfType([p.default.bool,p.default.array]),enableLiveAutocompletion:p.default.oneOfType([p.default.bool,p.default.array]),commands:p.default.array},F.defaultProps={name:"brace-editor",focus:!1,orientation:"beside",splits:2,mode:"",theme:"",height:"500px",width:"500px",value:[],fontSize:12,showGutter:!0,onChange:null,onPaste:null,onLoad:null,onScroll:null,minLines:null,maxLines:null,readOnly:!1,highlightActiveLine:!0,showPrintMargin:!0,tabSize:4,cursorStart:1,editorProps:{},style:{},scrollMargin:[0,0,0,0],setOptions:{},wrapEnabled:!1,enableBasicAutocompletion:!1,enableLiveAutocompletion:!1}},function(e,t,n){(function(t){function n(e,t){return null==e?void 0:e[t]}function i(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}function r(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function o(){this.__data__=me?me(null):{}}function s(e){return this.has(e)&&delete this.__data__[e]}function a(e){var t=this.__data__;if(me){var n=t[e];return n===z?void 0:n}return ue.call(t,e)?t[e]:void 0}function l(e){var t=this.__data__;return me?void 0!==t[e]:ue.call(t,e)}function c(e,t){return this.__data__[e]=me&&void 0===t?z:t,this}function u(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function h(){this.__data__=[]}function d(e){var t=this.__data__,n=A(t,e);return!(n<0)&&(n==t.length-1?t.pop():pe.call(t,n,1),!0)}function f(e){var t=this.__data__,n=A(t,e);return n<0?void 0:t[n][1]}function p(e){return A(this.__data__,e)>-1}function g(e,t){var n=this.__data__,i=A(n,e);return i<0?n.push([e,t]):n[i][1]=t,this}function m(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function v(){this.__data__={hash:new r,map:new(ge||u),string:new r}}function y(e){return S(this,e).delete(e)}function b(e){return S(this,e).get(e)}function w(e){return S(this,e).has(e)}function C(e,t){return S(this,e).set(e,t),this}function A(e,t){for(var n=e.length;n--;)if(R(e[n][0],t))return n;return-1}function E(e,t){t=_(t,e)?[t]:k(t);for(var n=0,i=t.length;null!=e&&n<i;)e=e[T(t[n++])];return n&&n==i?e:void 0}function F(e){return!(!P(e)||B(e))&&(M(e)||i(e)?de:ee).test(L(e))}function x(e){if("string"==typeof e)return e;if(j(e))return ye?ye.call(e):"";var t=e+"";return"0"==t&&1/e==-U?"-0":t}function k(e){return we(e)?e:be(e)}function S(e,t){var n=e.__data__;return D(t)?n["string"==typeof t?"string":"hash"]:n.map}function $(e,t){var i=n(e,t);return F(i)?i:void 0}function _(e,t){if(we(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!j(e))||(Y.test(e)||!q.test(e)||null!=t&&e in Object(t))}function D(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function B(e){return!!le&&le in e}function T(e){if("string"==typeof e||j(e))return e;var t=e+"";return"0"==t&&1/e==-U?"-0":t}function L(e){if(null!=e){try{return ce.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function O(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError(H);var n=function(){var i=arguments,r=t?t.apply(this,i):i[0],o=n.cache;if(o.has(r))return o.get(r);var s=e.apply(this,i);return n.cache=o.set(r,s),s};return n.cache=new(O.Cache||m),n}function R(e,t){return e===t||e!==e&&t!==t}function M(e){var t=P(e)?he.call(e):"";return t==V||t==K}function P(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function I(e){return!!e&&"object"==typeof e}function j(e){return"symbol"==typeof e||I(e)&&he.call(e)==G}function N(e){return null==e?"":x(e)}function W(e,t,n){var i=null==e?void 0:E(e,t);return void 0===i?n:i}var H="Expected a function",z="__lodash_hash_undefined__",U=1/0,V="[object Function]",K="[object GeneratorFunction]",G="[object Symbol]",q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Y=/^\w*$/,Q=/^\./,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,J=/[\\^$.*+?()[\]{}|]/g,Z=/\\(\\)?/g,ee=/^\[object .+?Constructor\]$/,te="object"==typeof t&&t&&t.Object===Object&&t,ne="object"==typeof self&&self&&self.Object===Object&&self,ie=te||ne||Function("return this")(),re=Array.prototype,oe=Function.prototype,se=Object.prototype,ae=ie["__core-js_shared__"],le=function(){var e=/[^.]+$/.exec(ae&&ae.keys&&ae.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ce=oe.toString,ue=se.hasOwnProperty,he=se.toString,de=RegExp("^"+ce.call(ue).replace(J,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),fe=ie.Symbol,pe=re.splice,ge=$(ie,"Map"),me=$(Object,"create"),ve=fe?fe.prototype:void 0,ye=ve?ve.toString:void 0;r.prototype.clear=o,r.prototype.delete=s,r.prototype.get=a,r.prototype.has=l,r.prototype.set=c,u.prototype.clear=h,u.prototype.delete=d,u.prototype.get=f,u.prototype.has=p,u.prototype.set=g,m.prototype.clear=v,m.prototype.delete=y,m.prototype.get=b,m.prototype.has=w,m.prototype.set=C;var be=O(function(e){e=N(e);var t=[];return Q.test(e)&&t.push(""),e.replace(X,function(e,n,i,r){t.push(i?r.replace(Z,"$1"):n||e)}),t});O.Cache=m;var we=Array.isArray;e.exports=W}).call(t,n(7))},function(e,t){ace.define("ace/split",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/editor","ace/virtual_renderer","ace/edit_session"],function(e,t,n){"use strict";function i(e,t){this.$u=e,this.$doc=t}var r=e("./lib/oop"),o=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,a=e("./editor").Editor,l=e("./virtual_renderer").VirtualRenderer,c=e("./edit_session").EditSession,u=function(e,t,n){this.BELOW=1,this.BESIDE=0,this.$container=e,this.$theme=t,this.$splits=0,this.$editorCSS="",this.$editors=[],this.$orientation=this.BESIDE,this.setSplits(n||1),this.$cEditor=this.$editors[0],this.on("focus",function(e){this.$cEditor=e}.bind(this))};(function(){r.implement(this,s),this.$createEditor=function(){var e=document.createElement("div");e.className=this.$editorCSS,e.style.cssText="position: absolute; top:0px; bottom:0px",this.$container.appendChild(e);var t=new a(new l(e,this.$theme));return t.on("focus",function(){this._emit("focus",t)}.bind(this)),this.$editors.push(t),t.setFontSize(this.$fontSize),t},this.setSplits=function(e){var t;if(e<1)throw"The number of splits have to be > 0!";if(e!=this.$splits){if(e>this.$splits){for(;this.$splits<this.$editors.length&&this.$splits<e;)t=this.$editors[this.$splits],this.$container.appendChild(t.container),t.setFontSize(this.$fontSize),this.$splits++;for(;this.$splits<e;)this.$createEditor(),this.$splits++}else for(;this.$splits>e;)t=this.$editors[this.$splits-1],this.$container.removeChild(t.container),this.$splits--;this.resize()}},this.getSplits=function(){return this.$splits},this.getEditor=function(e){return this.$editors[e]},this.getCurrentEditor=function(){return this.$cEditor},this.focus=function(){this.$cEditor.focus()},this.blur=function(){this.$cEditor.blur()},this.setTheme=function(e){this.$editors.forEach(function(t){t.setTheme(e)})},this.setKeyboardHandler=function(e){this.$editors.forEach(function(t){t.setKeyboardHandler(e)})},this.forEach=function(e,t){this.$editors.forEach(e,t)},this.$fontSize="",this.setFontSize=function(e){this.$fontSize=e,this.forEach(function(t){t.setFontSize(e)})},this.$cloneSession=function(e){var t=new c(e.getDocument(),e.getMode()),n=e.getUndoManager();if(n){var r=new i(n,t);t.setUndoManager(r)}return t.$informUndoManager=o.delayedCall(function(){t.$deltas=[]}),t.setTabSize(e.getTabSize()),t.setUseSoftTabs(e.getUseSoftTabs()),t.setOverwrite(e.getOverwrite()),t.setBreakpoints(e.getBreakpoints()),t.setUseWrapMode(e.getUseWrapMode()),t.setUseWorker(e.getUseWorker()),t.setWrapLimitRange(e.$wrapLimitRange.min,e.$wrapLimitRange.max),t.$foldData=e.$cloneFoldData(),t},this.setSession=function(e,t){var n;return n=null==t?this.$cEditor:this.$editors[t],this.$editors.some(function(t){return t.session===e})&&(e=this.$cloneSession(e)),n.setSession(e),e},this.getOrientation=function(){return this.$orientation},this.setOrientation=function(e){this.$orientation!=e&&(this.$orientation=e,this.resize())},this.resize=function(){var e,t=this.$container.clientWidth,n=this.$container.clientHeight;if(this.$orientation==this.BESIDE)for(var i=t/this.$splits,r=0;r<this.$splits;r++)e=this.$editors[r],e.container.style.width=i+"px",e.container.style.top="0px",e.container.style.left=r*i+"px",e.container.style.height=n+"px",e.resize();else for(var o=n/this.$splits,r=0;r<this.$splits;r++)e=this.$editors[r],e.container.style.width=t+"px",e.container.style.top=r*o+"px",e.container.style.left="0px",e.container.style.height=o+"px",e.resize()}}).call(u.prototype),function(){this.execute=function(e){this.$u.execute(e)},this.undo=function(){var e=this.$u.undo(!0);e&&this.$doc.selection.setSelectionRange(e)},this.redo=function(){var e=this.$u.redo(!0);e&&this.$doc.selection.setSelectionRange(e)},this.reset=function(){this.$u.reset()},this.hasUndo=function(){return this.$u.hasUndo()},this.hasRedo=function(){return this.$u.hasRedo()}}.call(i.prototype),t.Split=u}),ace.define("ace/ext/split",["require","exports","module","ace/split"],function(e,t,n){"use strict";n.exports=e("../split")}),function(){ace.acequire(["ace/ext/split"],function(){})}()},function(e,t,n){"use strict";function i(e,t){for(var n=/[A-Za-z0-9_$]/,i=/\s/,r=n.test(t[e]),o=e+1;o<t.length;o++){var s=t[o];if(i.test(s)||n.test(s)!==r)return o}return t.length}t.a=i},function(e,t,n){"use strict";var i=n(33);n.n(i);i.define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){var i=e("../lib/oop"),r=e("./text_highlight_rules").TextHighlightRules,o=function e(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},e.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};i.inherits(o,r),o.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},o.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},o.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=o}),i.define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){function i(){var e=l.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var i="/"===e.charAt(1)?2:1;return 1===i?(t!==this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++):2===i&&t===this.nextState&&(!--n[1]||n[1]<0)&&(n.shift(),n.shift()),[{type:"meta.tag.punctuation."+(1===i?"":"end-")+"tag-open.xml",value:e.slice(0,i)},{type:"meta.tag.tag-name.xml",value:e.substr(i)}]},regex:"</?"+e,next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t===n[0]&&n.shift(),2===e.length&&(n[0]===this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,r("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function r(e){return[{token:"comment",regex:/\/\*/,next:[s.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[s.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var o=e("../lib/oop"),s=e("./doc_comment_highlight_rules").DocCommentHighlightRules,a=e("./text_highlight_rules").TextHighlightRules,l="[a-zA-Z\\$_\xa1-\uffff][a-zA-Z\\d\\$_\xa1-\uffff]*",c=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[s.getStartRule("doc-start"),r("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+l+")(\\.)(prototype)(\\.)("+l+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+l+")(\\.)("+l+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+l+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+l+")(\\.)("+l+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+l+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+l+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void)\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:l},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/},{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+l+")(\\.)("+l+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:l},{regex:"",token:"empty",next:"no_regex"}],start:[s.getStartRule("doc-start"),r("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:l},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:n},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:n},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]},e&&e.noES6||(this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){if(this.next="{"===e?this.nextState:"","{"===e&&n.length)n.unshift("start",t);else if("}"===e&&n.length&&(n.shift(),this.next=n.shift(),-1!==this.next.indexOf("string")||-1!==this.next.indexOf("jsx")))return"paren.quasi.end";return"{"===e?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:n},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),e&&!1===e.jsx||i.call(this)),this.embedRules(s,"doc-",[s.getEndRule("no_regex")]),this.normalizeRules()};o.inherits(c,a),t.JavaScriptHighlightRules=c}),i.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){var i=e("../range").Range,r=function(){};(function(){this.checkOutdent=function(e,t){return!!/^\s+$/.test(e)&&/^\s*\}/.test(t)},this.autoOutdent=function(e,t){var n=e.getLine(t),r=n.match(/^(\s*\})/);if(!r)return 0;var o=r[1].length,s=e.findMatchingBracket({row:t,column:o});if(!s||s.row===t)return 0;var a=this.$getIndent(e.getLine(s.row));e.replace(new i(t,0,t,o-1),a)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(r.prototype),t.MatchingBraceOutdent=r}),i.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){var i=e("../../lib/oop"),r=e("../../range").Range,o=e("./fold_mode").FoldMode,s=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};i.inherits(s,o),function(){this.foldingStartMarker=/([{[(])[^}\])]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^[{(]*([}\])])|^[\s*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var i=e.getLine(n);if(this.singleLineBlockCommentRe.test(i)&&!this.startRegionRe.test(i)&&!this.tripleStarBlockCommentRe.test(i))return"";var r=this._getFoldWidgetBase(e,t,n);return!r&&this.startRegionRe.test(i)?"start":r},this.getFoldWidgetRange=function(e,t,n,i){var r=e.getLine(n);if(this.startRegionRe.test(r))return this.getCommentRegionBlock(e,r,n);var o=r.match(this.foldingStartMarker);if(o){var s=o.index;if(o[1])return this.openingBracketBlock(e,o[1],n,s);var a=e.getCommentFoldRange(n,s+o[0].length,1);return a&&!a.isMultiLine()&&(i?a=this.getSectionRange(e,n):"all"!==t&&(a=null)),a}if("markbegin"!==t)return o=r.match(this.foldingStopMarker),o?(s=o.index+o[0].length,o[1]?this.closingBracketBlock(e,o[1],n,s):e.getCommentFoldRange(n,s,-1)):void 0},this.getSectionRange=function(e,t){var n=e.getLine(t),i=n.search(/\S/),o=t,s=n.length;t+=1;for(var a=t,l=e.getLength();++t<l;){n=e.getLine(t);var c=n.search(/\S/);if(-1!==c){if(i>c)break;var u=this.getFoldWidgetRange(e,"all",t);if(u){if(u.start.row<=o)break;if(u.isMultiLine())t=u.end.row;else if(i===c)break}a=t}}return new r(o,s,a,e.getLine(a).length)},this.getCommentRegionBlock=function(e,t,n){for(var i=t.search(/\s*$/),o=e.getLength(),s=n,a=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,l=1;++n<o;){t=e.getLine(n);var c=a.exec(t);if(c&&(c[1]?l--:l++,!l))break}var u=n;if(u>s)return new r(s,i,u,t.length)}}.call(s.prototype)}),i.define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){var i=e("../lib/oop"),r=e("./text").Mode,o=e("./javascript_highlight_rules").JavaScriptHighlightRules,s=e("./matching_brace_outdent").MatchingBraceOutdent,a=e("./behaviour/cstyle").CstyleBehaviour,l=e("./folding/cstyle").FoldMode,c=function(){this.HighlightRules=o,this.$outdent=new s,this.$behaviour=new a,this.foldingRules=new l};i.inherits(c,r),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var i=this.$getIndent(t),r=this.getTokenizer().getLineTokens(t,e),o=r.tokens,s=r.state;if(o.length&&"comment"===o[o.length-1].type)return i;if("start"===e||"no_regex"===e){var a=t.match(/^.*(?:\bcase\b.*:|[{([])\s*$/);a&&(i+=n)}else if("doc-start"===e){if("start"===s||"no_regex"===s)return"";a=t.match(/^\s*(\/?)\*/),a&&(a[1]&&(i+=" "),i+="* ")}return i},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){},this.$id="ace/mode/javascript"}.call(c.prototype),t.Mode=c})},function(e,t){ace.define("ace/theme/xcode",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-xcode",t.cssText=".ace-xcode .ace_gutter {background: #e8e8e8;color: #333}.ace-xcode .ace_print-margin {width: 1px;background: #e8e8e8}.ace-xcode {background-color: #FFFFFF;color: #000000}.ace-xcode .ace_cursor {color: #000000}.ace-xcode .ace_marker-layer .ace_selection {background: #B5D5FF}.ace-xcode.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px #FFFFFF;}.ace-xcode .ace_marker-layer .ace_step {background: rgb(198, 219, 174)}.ace-xcode .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid #BFBFBF}.ace-xcode .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.071)}.ace-xcode .ace_gutter-active-line {background-color: rgba(0, 0, 0, 0.071)}.ace-xcode .ace_marker-layer .ace_selected-word {border: 1px solid #B5D5FF}.ace-xcode .ace_constant.ace_language,.ace-xcode .ace_keyword,.ace-xcode .ace_meta,.ace-xcode .ace_variable.ace_language {color: #C800A4}.ace-xcode .ace_invisible {color: #BFBFBF}.ace-xcode .ace_constant.ace_character,.ace-xcode .ace_constant.ace_other {color: #275A5E}.ace-xcode .ace_constant.ace_numeric {color: #3A00DC}.ace-xcode .ace_entity.ace_other.ace_attribute-name,.ace-xcode .ace_support.ace_constant,.ace-xcode .ace_support.ace_function {color: #450084}.ace-xcode .ace_fold {background-color: #C800A4;border-color: #000000}.ace-xcode .ace_entity.ace_name.ace_tag,.ace-xcode .ace_support.ace_class,.ace-xcode .ace_support.ace_type {color: #790EAD}.ace-xcode .ace_storage {color: #C900A4}.ace-xcode .ace_string {color: #DF0002}.ace-xcode .ace_comment {color: #008E00}.ace-xcode .ace_indent-guide {background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) right repeat-y}",e("../lib/dom").importCssString(t.cssText,t.cssClass)})},function(e,t){},function(e,t,n){"use strict";function i(e){return Object(w.a)(e)?"#b90":$}function r(e){return Object(w.b)(e)?"#920":$}function o(e){return e.crash?"#000":$}function s(e){var t=F(e,2);return"\n-------------------------------------------------\n"+t[0]+"\n\n"+t[1]+"\n"}function a(e){switch(e){case 1:return"One test";default:return e+" tests"}}function l(e){switch(e){case 1:return"a bug";default:return"bugs"}}function c(e){switch(e){case 0:return"No tests to run.";case 1:return"One test ran, and found no issues.";default:return e+" tests ran, and found no issues."}}function u(e){return e.verseStack?"at function "+e.verseStack.join("()\n called from ")+"()":""}function h(e,t){return t.currentlyInspectingStage===e}function d(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){return t.reduce(function(e,t){return t(e)},e)}}n.d(t,"a",function(){return _});var f=n(0),p=n.n(f),g=n(20),m=n(158),v=n(60),y=n(160),b=n(162),w=n(28),C=n(17),A=n(35),E=n(21),F=function(){function e(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(i=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&a.return&&a.return()}finally{if(r)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),x=A.a["--content-height"],k=A.a["--basic-gray"],S=A.a["--pooh"],$=A.a["--scrubs"],_=Object(E.a)(function(e){return p.a.createElement(g.a,{style:{width:"50%",left:"50%",height:x}},p.a.createElement(g.a,{style:{height:"32px",top:0,backgroundColor:k,zIndex:10,padding:"4px 0 4px 13px"}},p.a.createElement(m.a,{color:i(e),onClick:function(){return e.inspectStage("load")},className:h("load",e)?"selected":""},"Load"),p.a.createElement(m.a,{color:r(e),onClick:function(){return e.inspectStage("test")},className:h("test",e)?"selected":""},"Test"),p.a.createElement(m.a,{color:o(e),onClick:function(){e.runApp(),e.inspectStage("run")},className:h("run",e)?"selected":""},"Run")),p.a.createElement(g.a,{style:{top:"32px"}},p.a.createElement(b.a,null),p.a.createElement(v.a,{If:!h("load",e)},p.a.createElement(g.a,{className:"scroll",style:{backgroundColor:S,zIndex:20}},p.a.createElement(D,null))),p.a.createElement(v.a,{If:!h("test",e)},p.a.createElement(g.a,{className:"scroll",style:{zIndex:20}},p.a.createElement(B,null))),p.a.createElement(v.a,{If:!h("run",e)||!e.crash},p.a.createElement(g.a,{className:"scroll",style:{backgroundColor:"#000",color:"#fff",zIndex:20}},p.a.createElement(T,null)))),p.a.createElement(y.a,null))}),D=Object(E.a)(function(e){return Object(w.d)(e).length>0?p.a.createElement("div",{className:"ErrorPanel"},Object(w.d)(e).map(function(e){return e.error.toString()+"\n\n"+u(e.error)}).join("\n\n")):p.a.createElement("div",{className:"ErrorPanel"},"All code loaded successfully.")}),B=Object(E.a)(function(e){var t=Object.keys(e.testResults).map(function(t){return[t,e.testResults[t]]}),n=t.filter(d(Object(C.m)(1),C.B));return n.length?p.a.createElement("div",{className:"TestResultsPanel"},a(n.length)," found ",l(n.length),"!",n.map(s).join("\n")):p.a.createElement("div",{className:"TestResultsPanel"},c(t.length))}),T=Object(E.a)(function(e){return p.a.createElement("div",{className:"ErrorPanel"},e.crash?"Crashed! The error was:\n\n"+e.crash.message+"\n\n"+u(e.crash):"")})},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(159);n.n(o);t.a=function(e){return r.a.createElement("div",{className:"Tab "+e.className,style:{borderColor:e.color,color:e.color},onClick:e.onClick},e.children)}},function(e,t){},function(e,t,n){"use strict";var i=n(0),r=n.n(i),o=n(21),s=n(20),a=n(60),l=n(161);n.n(l);t.a=Object(o.a)(function(e){return r.a.createElement(a.a,{If:e.evalAllowed},r.a.createElement(s.a,{className:"DustCover",onClick:e.allowJsToRun},r.a.createElement("div",null,"START")))})},function(e,t){},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==typeof t&&"function"!==typeof t?e:t}function o(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=n(0),a=n.n(s),l=n(21),c=n(163),u=(n.n(c),n(20)),h=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}();t.a=Object(l.a)(function(e){function t(){return i(this,t),r(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return o(t,e),h(t,[{key:"screenLines",value:function(){return this.props.appUi.screenLines}},{key:"render",value:function(){return a.a.createElement(u.a,{style:{width:"100%"}},a.a.createElement("div",{className:"Terminal"},a.a.createElement("div",{className:"screen"},this.screenLines().map(function(e,t){return a.a.createElement("div",{className:"line",key:t},e)}),a.a.createElement(d,{key:this.props.appUi.formId}))))}}]),t}(a.a.Component));var d=Object(l.a)(function(e){function t(){var e,n,o,s;i(this,t);for(var a=arguments.length,l=Array(a),c=0;c<a;c++)l[c]=arguments[c];return n=o=r(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(l))),o.onChange=function(e){return function(t){o.props.changeFormField(e,t.target.value)}},s=n,r(o,s)}return o(t,e),h(t,[{key:"submit",value:function(){this.props.submitForm()}},{key:"render",value:function(){var e=this,t=this.props.appUi.form;return a.a.createElement("div",{className:"InputForm"},t.map(function(t,n){return a.a.createElement(f,{type:t.type,label:t.label,autoFocus:0===n,onChange:e.onChange(t.label).bind(e),key:n})}),t.length?a.a.createElement("div",null,a.a.createElement("button",{onClick:this.submit.bind(this)},"[ OK ]")):null)}}]),t}(a.a.Component)),f=Object(l.a)(function(e){function t(){return i(this,t),r(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return o(t,e),h(t,[{key:"setElement",value:function(e){this.element=e}},{key:"render",value:function(){switch(this.props.type){case"line":return a.a.createElement("div",{className:"Input"},a.a.createElement("label",{htmlFor:this.props.label},this.props.label),a.a.createElement("input",{type:"text",name:this.props.label,ref:this.setElement.bind(this),autoFocus:this.props.autoFocus,onChange:this.props.onChange}));case"text":return a.a.createElement("div",{className:"Input"},a.a.createElement("textarea",{ref:this.setElement.bind(this),autoFocus:this.props.autoFocus,onChange:this.props.onChange}));default:return a.a.createElement("div",{className:"Input"},"Unknown input type: ",this.props.type)}}}]),t}(a.a.Component))},function(e,t){},function(e,t,n){"use strict";function i(){if("serviceWorker"in navigator){if(new URL("",window.location).origin!==window.location.origin)return;window.addEventListener("load",function(){var e="/service-worker.js";s?(o(e),navigator.serviceWorker.ready.then(function(){console.log("This web app is being served cache-first by a service worker. To learn more, visit https://goo.gl/SC7cgQ")})):r(e)})}}function r(e){navigator.serviceWorker.register(e).then(function(e){e.onupdatefound=function(){var t=e.installing;t.onstatechange=function(){"installed"===t.state&&(navigator.serviceWorker.controller?console.log("New content is available; please refresh."):console.log("Content is cached for offline use."))}}}).catch(function(e){console.error("Error during service worker registration:",e)})}function o(e){fetch(e).then(function(t){404===t.status||-1===t.headers.get("content-type").indexOf("javascript")?navigator.serviceWorker.ready.then(function(e){e.unregister().then(function(){window.location.reload()})}):r(e)}).catch(function(){console.log("No internet connection found. App is running in offline mode.")})}t.a=i;var s=Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))},function(e,t,n){"use strict";function i(e,t){if("undefined"===typeof e)throw new Error("Tried to add undefined value "+t+" to the API");window[t]=o.N(e,function(){return t})}var r=n(55),o=n(17),s=n(166);n.n(s);i(o.g,"doWith"),i(o.g,"_"),i(o.W,"uppercase"),i(o.G,"lowercase"),i(o.R,"reverse"),i(o.O,"replace"),i(o.i,"firstOf"),i(o.P,"restOf"),i(o.E,"lastOf"),i(o.m,"get"),i(o.f,"count"),i(o.M,"range"),i(o.U,"startsWith"),i(o.p,"hasKey"),i(o.o,"hasEntry"),i(o.n,"has"),i(o.v,"isIn"),i(o.h,"equals"),i(o.s,"is"),i(o.B,"isTruthy"),i(o.r,"isEmpty"),i(o.I,"not"),i(o.J,"or"),i(o.H,"mapObject"),i(o.e,"contains"),i(o.d,"assert"),i(o.S,"satisfies"),i(o.A,"isString"),i(o.y,"isNumber"),i(o.u,"isGeneratorFunction"),i(o.w,"isIterator"),i(o.z,"isObject"),i(o.t,"isFunction"),i(o.q,"isArrayOf"),i(o.x,"isNullOr"),i(r.a,"action"),i(o.Z,"waitForEvent"),i(o.X,"wait"),i(o.Y,"waitForChar"),i(o.T,"startDisplay"),i(o.K,"output"),i(o.C,"jump"),i(o.Q,"retry"),i(o.L,"perform"),i(o.j,"form"),i(o.F,"lineInput"),i(o.V,"textInput"),i(o.b(window),"simulate"),i(o.D,"keyDown"),i(o.c,"animationFrame"),i(o.k,"formFieldChange"),i(o.l,"formSubmission")},function(e,t,n){(function(e){"undefined"===typeof window&&(e.window=e)}).call(t,n(7))},function(e,t,n){"use strict";function i(){var e=a.a.load()["main.js"],t=o("main-script").innerText,n=o("main-css").innerText;Object(l.saveAs)(Object(s.g)(c,u("$CODE_GOES_HERE$"),d([n,e,t]),h(""),r),"verse-app.html")}function r(e){return new Blob([e],{type:"text/plain;charset=utf-8"})}function o(e){return document.getElementById(e)}t.a=i;var s=n(17),a=n(57),l=n(168),c=(n.n(l),'<!DOCTYPE html>\n<html lang="en">\n <head>\n <meta charset="utf-8">\n <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">\n <meta name="theme-color" content="#000000">\n <title>Verse</title>\n <link rel="manifest" href="/manifest.json">\n <link rel="shortcut icon" href="/favicon.ico">\n </head>\n <body>\n <noscript>\n You need to enable JavaScript to run this app.\n </noscript>\n <div id="root"></div>\n <style id="main-css" type="text/css">$CODE_GOES_HERE$</style>\n <script id="user-code" type="text/x-verse">$CODE_GOES_HERE$<\/script>\n <script id="main-script" type="text/javascript">$CODE_GOES_HERE$<\/script>\n </body>\n</html>\n'),u=function(e){return function(t){return t.split(e)}},h=function(e){return function(t){return t.join(e)}},d=function(e){return function(t){for(var n=[],i=0;i<t.length;i++)n.push(t[i]),i<e.length&&n.push(e[i]);return n}}},function(e,t,n){var i,r=r||function(e){"use strict";if(!("undefined"===typeof e||"undefined"!==typeof navigator&&/MSIE [1-9]\./.test(navigator.userAgent))){var t=e.document,n=function(){return e.URL||e.webkitURL||e},i=t.createElementNS("http://www.w3.org/1999/xhtml","a"),r="download"in i,o=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},s=/constructor/i.test(e.HTMLElement)||e.safari,a=/CriOS\/[\d]+/.test(navigator.userAgent),l=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},c=function(e){var t=function(){"string"===typeof e?n().revokeObjectURL(e):e.remove()};setTimeout(t,4e4)},u=function(e,t,n){t=[].concat(t);for(var i=t.length;i--;){var r=e["on"+t[i]];if("function"===typeof r)try{r.call(e,n||e)}catch(e){l(e)}}},h=function(e){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([String.fromCharCode(65279),e],{type:e.type}):e},d=function(t,l,d){d||(t=h(t));var f,p=this,g=t.type,m="application/octet-stream"===g,v=function(){u(p,"writestart progress write writeend".split(" "))};if(p.readyState=p.INIT,r)return f=n().createObjectURL(t),void setTimeout(function(){i.href=f,i.download=l,o(i),v(),c(f),p.readyState=p.DONE});!function(){if((a||m&&s)&&e.FileReader){var i=new FileReader;return i.onloadend=function(){var t=a?i.result:i.result.replace(/^data:[^;]*;/,"data:attachment/file;");e.open(t,"_blank")||(e.location.href=t),t=void 0,p.readyState=p.DONE,v()},i.readAsDataURL(t),void(p.readyState=p.INIT)}if(f||(f=n().createObjectURL(t)),m)e.location.href=f;else{e.open(f,"_blank")||(e.location.href=f)}p.readyState=p.DONE,v(),c(f)}()},f=d.prototype,p=function(e,t,n){return new d(e,t||e.name||"download",n)};return"undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob?function(e,t,n){return t=t||e.name||"download",n||(e=h(e)),navigator.msSaveOrOpenBlob(e,t)}:(f.abort=function(){},f.readyState=f.INIT=0,f.WRITING=1,f.DONE=2,f.error=f.onwritestart=f.onprogress=f.onwrite=f.onabort=f.onerror=f.onwriteend=null,p)}}("undefined"!==typeof self&&self||"undefined"!==typeof window&&window||this.content);"undefined"!==typeof e&&e.exports?e.exports.saveAs=r:null!==n(34)&&null!==n(169)&&void 0!==(i=function(){return r}.call(t,n,t,e))&&(e.exports=i)},function(e,t){(function(t){e.exports=t}).call(t,{})}]);
//# sourceMappingURL=main.2b3f45ea.js.map </script>
</body>
</html>