openc3-cosmos-tool-tablemanager 6.5.1 → 6.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/tools/tablemanager/{ArrayWidget-Ck6pzAyW-28f53b2e231383188636.js → ArrayWidget-BSG8KEtf-ffbd215e541fe6e3bfb5.js} +2 -2
  3. data/tools/tablemanager/ArrayplotWidget-WVu76Kqn-4bb10120bf43c782965b.js +1 -0
  4. data/tools/tablemanager/{BarColumn-Bgz2YJ59-580a372c79dca63b2c51.js → BarColumn-Cflh9pUz-92c816baf95f140f8461.js} +1 -1
  5. data/tools/tablemanager/BlockWidget-B7ryWGCq-f548869ae714b3f8f7ed.js +2 -0
  6. data/tools/tablemanager/{ButtonWidget-D_tupiPB-573b156891d2534e0a09.js → ButtonWidget-BKih3ix9-b43110620ea9af5a2341.js} +2 -2
  7. data/tools/tablemanager/CanvasWidget-DT9xMSfb-8f17a46d7712307be51c.js +1 -0
  8. data/tools/tablemanager/CanvasdotWidget-7H5Hvcn--2250a6bf72542e9acddb.js +1 -0
  9. data/tools/tablemanager/{CanvasimageWidget-CNJlzLqo-70f4c49c7b6e85fd072a.js → CanvasimageWidget-BbWYx6Gj-341bef976df5f8c6858c.js} +1 -1
  10. data/tools/tablemanager/{CanvasimagevalueWidget-DudwwOD6-14c90cceed678d069746.js → CanvasimagevalueWidget-Blvoe2X4-dd32fad72d2abce1534d.js} +1 -1
  11. data/tools/tablemanager/{CanvaslabelWidget-BZQp16dH-2a14f8cf4ebf1c79853b.js → CanvaslabelWidget-BPx_Rm4o-93c6966462ba0607d5f9.js} +1 -1
  12. data/tools/tablemanager/{CanvaslabelvalueWidget-CHS36Te9-1b8a626e98dc5b64efa8.js → CanvaslabelvalueWidget-DzdWvL0W-721a7bed10024f8053e3.js} +1 -1
  13. data/tools/tablemanager/{CanvaslineWidget-nhKEAGhs-ee4fa7aa18d5dee9fe97.js → CanvaslineWidget-CqskilGk-9df7d0af1d23df663b05.js} +1 -1
  14. data/tools/tablemanager/{CanvaslinevalueWidget-DsyIDkJy-af029e0fb4dc73cd5072.js → CanvaslinevalueWidget-C0JIKdvZ-33a85199574733f7ad88.js} +1 -1
  15. data/tools/tablemanager/{CheckbuttonWidget-DCam7Jd0-a70b4ef34a3cd20763e3.js → CheckbuttonWidget-C9FbJx2v-a00d3bbc4287651bf0de.js} +1 -1
  16. data/tools/tablemanager/{ComboboxWidget-ZX-k-_aK-a31e31100d5a5c23ff6f.js → ComboboxWidget-BbNKT0s8-8e14626993651c64f769.js} +1 -1
  17. data/tools/tablemanager/{DateWidget-DuJ5uC2t-a3e540ca71104322d257.js → DateWidget-CBMsdRUE-325501a8da82f29642be.js} +1 -1
  18. data/tools/tablemanager/DetailsDialog-DRVahE5z-27cad8e7054bc36fda45.js +1 -0
  19. data/tools/tablemanager/{DynamicWidget-CfMtj7H8-28476007b7e83ff5c420.js → DynamicWidget-CfMtj7H8-54342d69279082f08b8e.js} +1 -1
  20. data/tools/tablemanager/{FormatvalueWidget-DYICPNcx-c016228fb667ca3a962c.js → FormatvalueWidget-BLWsqhIZ-901db1658a863e9bd5ab.js} +1 -1
  21. data/tools/tablemanager/Graph-BiU56Qj2-fbaa710f820714fcd00a.js +1 -0
  22. data/tools/tablemanager/GraphWidget-Ga0AEfrJ-e7d5c6761914a351d845.js +1 -0
  23. data/tools/tablemanager/HorizontalWidget-CsVhLwZO-2fea3a827040d35923a1.js +1 -0
  24. data/tools/tablemanager/HorizontalboxWidget-xC6PADl3-79d65ebf195affff7fcc.js +1 -0
  25. data/tools/tablemanager/{HorizontallineWidget-DEODVJCk-f763fe020e34915f3ee0.js → HorizontallineWidget-NZIxmRVN-36379b001ed815ea345c.js} +1 -1
  26. data/tools/tablemanager/{IframeWidget-n8lNXrpt-d2688388af8d8168cd7e.js → IframeWidget-BgzjSfag-9bf85a1a605e0b1a33e0.js} +1 -1
  27. data/tools/tablemanager/{ImageLoader-CfcErydq-922b520d565a3e83e617.js → ImageLoader-DbFVK1Ui-d255060703626756ad15.js} +1 -1
  28. data/tools/tablemanager/{ImageviewerWidget-DE8fj06Z-81f5e584e4d035e9db6a.js → ImageviewerWidget-BnT5m-nw-d080c5165838b44d1d8b.js} +1 -1
  29. data/tools/tablemanager/{LabelWidget-iUIJLhdA-ba88ca89e3260d015397.js → LabelWidget-DSDYmz6X-13be3cd4dd21d820c104.js} +1 -1
  30. data/tools/tablemanager/LabelledWidget-DMb-myxs-f3ec614c5d4c772d1767.js +1 -0
  31. data/tools/tablemanager/LabelprogressbarWidget-CkjDJBao-7cec8ce1a36bd931ad55.js +1 -0
  32. data/tools/tablemanager/LabelsparklineWidget-DBYPFz3Y-708d7b397fb0163f8192.js +1 -0
  33. data/tools/tablemanager/{LabelvalueWidget-oiW-JDw6-56d44428268e64b618f4.js → LabelvalueWidget-DlTkJC4i-3cfa1d515587fa0b6253.js} +1 -1
  34. data/tools/tablemanager/{LabelvaluedescWidget-Ck0AJ9g0-1f76917c955923770b06.js → LabelvaluedescWidget-dRqnGZub-cfbb39c31dfe18c23250.js} +1 -1
  35. data/tools/tablemanager/LabelvaluelimitsbarWidget-CS4NAPJ1-a88d6c71d105453f2be5.js +1 -0
  36. data/tools/tablemanager/LabelvaluelimitscolumnWidget-D9x4Ppv8-d94f85d3e221b0a921a2.js +1 -0
  37. data/tools/tablemanager/{LabelvaluerangebarWidget-Bs9locqu-eafcaa12a7ec9cf8ecdf.js → LabelvaluerangebarWidget-Dhyng4-n-41df67f88fd850224e8d.js} +1 -1
  38. data/tools/tablemanager/{Layout-1z8iJV5--c72c882558defa55ff1e.js → Layout-mWR35VAD-cf426567a38a8e94cba5.js} +1 -1
  39. data/tools/tablemanager/LedWidget-D8cq4pUv-31520f0a03ee2bbb0c17.js +1 -0
  40. data/tools/tablemanager/{LimitsbarWidget-BxxoKTjp-a10c97d925a0a8163338.js → LimitsbarWidget-VGJnDuVM-f37131515d12c8f1b2cb.js} +1 -1
  41. data/tools/tablemanager/{LimitscolorWidget-DFDwf4In-4e9607349ae9acf54268.js → LimitscolorWidget-CG6Pqi12-741775a4b02b6d87ada4.js} +1 -1
  42. data/tools/tablemanager/{LimitscolumnWidget-CdBh2mJu-72f9ae93e4480321dc54.js → LimitscolumnWidget-DjovQdiT-2d74d6821f3a6612bce4.js} +1 -1
  43. data/tools/tablemanager/LinegraphWidget-DSWAhXgZ-83408139ed1c1edf6863.js +1 -0
  44. data/tools/tablemanager/MatrixbycolumnsWidget-C3cuhRxz-fad8cab22f54fe36f361.js +1 -0
  45. data/tools/tablemanager/{ProgressbarWidget-Cdu5nJC3-b1b2523c112a4faa2a18.js → ProgressbarWidget-oCgAEFBO-bf8b1e1423b7a63a8aa8.js} +1 -1
  46. data/tools/tablemanager/{RadiobuttonWidget-CZZGbvdG-87a9ce5ed939773247c0.js → RadiobuttonWidget-D4Dak3lc-155d25fd92a72ae820d6.js} +1 -1
  47. data/tools/tablemanager/{RadiogroupWidget-CQN3v8Ip-d01e9d2a8db6ccb3d120.js → RadiogroupWidget-Dbe9T4fp-c176e762d4bf6a5171f1.js} +1 -1
  48. data/tools/tablemanager/{RangebarWidget-dZN9WjoZ-ee27972bd77c18a8289e.js → RangebarWidget-CIVrgqrW-ceb17d0f22596e76fdd6.js} +1 -1
  49. data/tools/tablemanager/{RollupWidget-i9DnNJl6-107a25194b1eef6befe8.js → RollupWidget-CH1-XNLV-2a9f597d7cdf317e75c0.js} +1 -1
  50. data/tools/tablemanager/ScrollwindowWidget-BwFG6Wn8-8cf5724b75cdbb975bce.js +1 -0
  51. data/tools/tablemanager/{SignalWidget-B_kA9eCJ-ef76c8cbab9442507d1c.js → SignalWidget-Gz2gHrUm-cd3cd1b9939cbd421b81.js} +1 -1
  52. data/tools/tablemanager/SpacerWidget-Bg7VDB0k-44a58ae4089b78e1b87e.js +1 -0
  53. data/tools/tablemanager/{SparklineWidget-DQNsvEj9-60b287cc8874f1bbbcaf.js → SparklineWidget-D_b5rfJv-70e08d6e7df157990af1.js} +1 -1
  54. data/tools/tablemanager/TabbookWidget-C30f9B6z-23b4352dc672fa90a740.js +1 -0
  55. data/tools/tablemanager/TableManager-fb0cd8539b34dc365e93.js +13 -0
  56. data/tools/tablemanager/TextboxWidget-CDqxsgys-25263da6e2fbfbeb81d1.js +1 -0
  57. data/tools/tablemanager/{TextfieldWidget-BXr9MkVW-4d4d81d21fe9a95bf10e.js → TextfieldWidget-CAyjKJs6-daba192b8d297bcd6ea5.js} +1 -1
  58. data/tools/tablemanager/{TimeWidget-C67uwMGH-d24ea1ac16e2cba8c3f9.js → TimeWidget-BQsP0G2X-7d0af478f1341db89bf4.js} +1 -1
  59. data/tools/tablemanager/{TitleWidget-t_YLgUMB-4c6b751294e782982c88.js → TitleWidget-DXVba53S-d12071a14d8ef54a27c2.js} +1 -1
  60. data/tools/tablemanager/{VWidget-j2GIGGSX-b89a412e86461c000a38.js → VWidget-CFTCukCL-ec90e9c92c6a9430ec81.js} +1 -1
  61. data/tools/tablemanager/ValueWidget-B-TWLPdM-6399ecb6c9a94065ea7d.js +1 -0
  62. data/tools/tablemanager/ValuelimitsbarWidget-jsDXdPdC-b513f1cda82e10c18843.js +1 -0
  63. data/tools/tablemanager/{ValuelimitscolumnWidget-HR1TNHwQ-5437e6482e7ec06e033c.js → ValuelimitscolumnWidget-I-uwnXM2-3102c7943199789b3c24.js} +1 -1
  64. data/tools/tablemanager/ValuerangebarWidget-OyhSTScu-449549dd7c88dd2ed322.js +1 -0
  65. data/tools/tablemanager/VerticalWidget-CkFbX1Gq-1edfad789edaf379b3da.js +1 -0
  66. data/tools/tablemanager/VerticalboxWidget-FEQgPM9r-479ed30ae5b95444a53f.js +1 -0
  67. data/tools/tablemanager/{Widget-Bn_S-zBo-de5a561ea102bd76ab56.js → Widget-C3-TBgP7-919de08f4636dd2d85af.js} +1 -1
  68. data/tools/tablemanager/main-66284a48e4cd33b4989f.js +1502 -0
  69. data/tools/tablemanager/main.js +1 -1
  70. metadata +69 -69
  71. data/tools/tablemanager/ArrayplotWidget-ntRLh6-B-81d1ff115e51bfda20e1.js +0 -1
  72. data/tools/tablemanager/BlockWidget-DGH3Zz5p-610a35407ba29c677391.js +0 -2
  73. data/tools/tablemanager/CanvasWidget-CzG2jYQb-219e985165cf18e96f92.js +0 -1
  74. data/tools/tablemanager/CanvasdotWidget-0FAaw4G2-655eb33a8907c325a52c.js +0 -1
  75. data/tools/tablemanager/DetailsDialog-BQE0TraI-fa10632e738ad1f117db.js +0 -1
  76. data/tools/tablemanager/Graph-DCihpnT0-381078364c475984bebb.js +0 -1
  77. data/tools/tablemanager/GraphWidget-cTVq29cY-d9d0e8d77573cbae030b.js +0 -1
  78. data/tools/tablemanager/HorizontalWidget-v1pfd94Z-21ed917c6076bbb51b9f.js +0 -1
  79. data/tools/tablemanager/HorizontalboxWidget-B06-c_n4-c7a3def85c25cedcb5a1.js +0 -1
  80. data/tools/tablemanager/LabelledWidget-KI6fMlsr-5fe02382f35ab815bdcb.js +0 -1
  81. data/tools/tablemanager/LabelprogressbarWidget-C2lzmqBH-54ceb804cb7e51a972f0.js +0 -1
  82. data/tools/tablemanager/LabelsparklineWidget-Ci6GGm29-a720d11622a420815650.js +0 -1
  83. data/tools/tablemanager/LabelvaluelimitsbarWidget-aaVLaejn-d57460f658a164a4d642.js +0 -1
  84. data/tools/tablemanager/LabelvaluelimitscolumnWidget-Uur6aqOg-211545a9007fd9d8bb47.js +0 -1
  85. data/tools/tablemanager/LedWidget-BN8IgAxJ-877b6b7e853e76326854.js +0 -1
  86. data/tools/tablemanager/LinegraphWidget-jXksfbPb-a2b957723cdfb454b7f8.js +0 -1
  87. data/tools/tablemanager/MatrixbycolumnsWidget-DCwxPjwS-3624fadec168ed477ac0.js +0 -1
  88. data/tools/tablemanager/ScrollwindowWidget-54GU96Ve-5ea4108b6622dfbb9382.js +0 -1
  89. data/tools/tablemanager/SpacerWidget-XoMPHak8-78c4122da7f00b9265fb.js +0 -1
  90. data/tools/tablemanager/TabbookWidget-_HVA72t5-8245f2c077521f8623b4.js +0 -1
  91. data/tools/tablemanager/TableManager-25dbba4d0f0647fdf9f4.js +0 -13
  92. data/tools/tablemanager/TextboxWidget-0JXn4bMH-ffe6fb45494fa1aacfa6.js +0 -1
  93. data/tools/tablemanager/ValueWidget-3jNtnh5i-7ca60d38500d8ee176ed.js +0 -1
  94. data/tools/tablemanager/ValuelimitsbarWidget-JSceOzGS-24a043cc8b2968a7c955.js +0 -1
  95. data/tools/tablemanager/ValuerangebarWidget-DnZrho8S-1abc67f3c5574b01ee03.js +0 -1
  96. data/tools/tablemanager/VerticalWidget-DJvoxqLE-8794acabc9d3aa4df13b.js +0 -1
  97. data/tools/tablemanager/VerticalboxWidget-CYYyLBoO-c72984d795a292fdb835.js +0 -1
  98. data/tools/tablemanager/main-670e43d54bf848cd3a0f.js +0 -1501
@@ -0,0 +1,1502 @@
1
+ System.register(["vue","vue-router","single-spa","vuex","vuetify"],function(kr,tt){"use strict";var bn,$o,Vn,er,pn,si,ji,Zd,Jd,Os,va,Mo,ai,li,ep,tp,np,Gc,rp,ip,op,sp,ap,Kc,lp,qc,cp,up,hp,dp,pp,gp,fp,mp;return{setters:[kt=>{bn=kt.resolveComponent,$o=kt.createBlock,Vn=kt.openBlock,er=kt.withCtx,pn=kt.createVNode,si=kt.createElementBlock,ji=kt.createElementVNode,Zd=kt.useCssVars,Jd=kt.defineAsyncComponent,Os=kt.h,va=kt.normalizeStyle,Mo=kt.createCommentVNode,ai=kt.createTextVNode,li=kt.toDisplayString,ep=kt.defineComponent,tp=kt.warn,np=kt.inject,Gc=kt.computed,rp=kt.shallowRef,ip=kt.watchEffect,op=kt.normalizeClass,sp=kt.getCurrentInstance,ap=kt.provide,Kc=kt.createApp,lp=kt.withDirectives,qc=kt.Fragment,cp=kt.withModifiers,up=kt.vShow,hp=kt.mergeProps},kt=>{dp=kt.createRouter,pp=kt.createWebHistory},kt=>{gp=kt.getMountedApps},kt=>{fp=kt.createStore},kt=>{mp=kt.createVuetify}],execute:function(){kr({$:Ap,c:DM,f:pr,l:cn,y:Fn,z:Zh});var kt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function vp(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter(function(v){return Object.getOwnPropertyDescriptor(n,v).enumerable})),e.push.apply(e,r)}return e}function Zo(n){for(var t=1;t<arguments.length;t++){var e=arguments[t]!=null?arguments[t]:{};t%2?vp(Object(e),!0).forEach(function(r){b0(n,r,e[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(e)):vp(Object(e)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(e,r))})}return n}function b0(n,t,e){return(t=function(r){var v=function(f,y){if(Jo(f)!=="object"||f===null)return f;var C=f[Symbol.toPrimitive];if(C!==void 0){var h=C.call(f,y);if(Jo(h)!=="object")return h;throw new TypeError("@@toPrimitive must return a primitive value.")}return(y==="string"?String:Number)(f)}(r,"string");return Jo(v)==="symbol"?v:String(v)}(t))in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}function Jo(n){return Jo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jo(n)}(function(n){if(n.CSS&&n.CSS.escape)return n.CSS.escape;var t=function(e){if(arguments.length==0)throw new TypeError("`CSS.escape` requires an argument.");for(var r,v=String(e),f=v.length,y=-1,C="",h=v.charCodeAt(0);++y<f;)(r=v.charCodeAt(y))!=0?C+=r>=1&&r<=31||r==127||y==0&&r>=48&&r<=57||y==1&&r>=48&&r<=57&&h==45?"\\"+r.toString(16)+" ":y==0&&f==1&&r==45||!(r>=128||r==45||r==95||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122)?"\\"+v.charAt(y):v.charAt(y):C+="�";return C};n.CSS||(n.CSS={}),n.CSS.escape=t})(kt);var x0={appOptions:null,template:null,Vue:null,createApp:null,handleInstance:null};function C0(n){if(Jo(n)!=="object")throw new Error("single-spa-vue requires a configuration object");var t=Zo(Zo({},x0),n);if(!t.Vue&&!t.createApp)throw Error("single-spa-vue must be passed opts.Vue or opts.createApp");if(!t.appOptions)throw Error("single-spa-vue must be passed opts.appOptions");if(t.appOptions.el&&typeof t.appOptions.el!="string"&&!(t.appOptions.el instanceof HTMLElement))throw Error("single-spa-vue: appOptions.el must be a string CSS selector, an HTMLElement, or not provided at all. Was given ".concat(Jo(t.appOptions.el)));t.createApp=t.createApp||t.Vue&&t.Vue.createApp;var e={};return{bootstrap:k0.bind(null,t,e),mount:A0.bind(null,t,e),unmount:S0.bind(null,t,e),update:_0.bind(null,t,e)}}function k0(n){return n.loadRootComponent?n.loadRootComponent().then(function(t){return n.rootComponent=t}):Promise.resolve()}function A0(n,t,e){var r={};return Promise.resolve().then(function(){return function(v,f){return typeof v.appOptions=="function"?v.appOptions(f):Promise.resolve(Zo({},v.appOptions))}(n,e).then(function(v){var f;if(e.domElement&&!v.el&&(v.el=e.domElement),v.el)if(typeof v.el=="string"){if(!(f=document.querySelector(v.el)))throw Error("If appOptions.el is provided to single-spa-vue, the dom element must exist in the dom. Was provided as ".concat(v.el))}else(f=v.el).id||(f.id="single-spa-application:".concat(e.name)),v.el="#".concat(CSS.escape(f.id));else{var y="single-spa-application:".concat(e.name);v.el="#".concat(CSS.escape(y)),(f=document.getElementById(y))||((f=document.createElement("div")).id=y,document.body.appendChild(f))}if(!n.replaceMode&&(v.el=v.el+" .single-spa-container",!f.querySelector(".single-spa-container"))){var C=document.createElement("div");C.className="single-spa-container",f.appendChild(C)}r.domEl=f,v.render||v.template||!n.rootComponent||(v.render=function(p){return p(n.rootComponent)}),v.data||(v.data={});var h=v.data;if(v.data=function(){return Zo(Zo({},typeof h=="function"?h.call(this,this):h),e)},n.createApp){if(r.vueInstance=n.createApp(v),n.handleInstance)return Promise.resolve(n.handleInstance(r.vueInstance,e)).then(function(){return r.root=r.vueInstance.mount(v.el),t[e.name]=r,r.vueInstance});r.root=r.vueInstance.mount(v.el)}else if(r.vueInstance=new n.Vue(v),r.vueInstance.bind&&(r.vueInstance=r.vueInstance.bind(r.vueInstance)),n.handleInstance)return Promise.resolve(n.handleInstance(r.vueInstance,e)).then(function(){return t[e.name]=r,r.vueInstance});return t[e.name]=r,r.vueInstance})})}function _0(n,t,e){return Promise.resolve().then(function(){var r=t[e.name],v=Zo(Zo({},n.appOptions.data||{}),e),f=r.root||r.vueInstance;for(var y in v)f[y]=v[y]})}function S0(n,t,e){return Promise.resolve().then(function(){var r=t[e.name];n.createApp?r.vueInstance.unmount(r.domEl):(r.vueInstance.$destroy(),r.vueInstance.$el.innerHTML=""),delete r.vueInstance,r.domEl&&(r.domEl.innerHTML="",delete r.domEl)})}const $0=kr("_",(n,t)=>{const e=n.__vccOpts||n;for(const[r,v]of t)e[r]=v;return e}),M0={};function T0(n,t){const e=bn("router-view"),r=bn("v-app");return Vn(),$o(r,{id:"innerapp"},{default:er(()=>[pn(e)]),_:1})}const E0=$0(M0,[["render",T0]]),E2="modulepreload",I2=function(n){return"/"+n},R2={},nt=function(t,e,r){let v=Promise.resolve();function f(y){const C=new Event("vite:preloadError",{cancelable:!0});if(C.payload=y,window.dispatchEvent(C),!C.defaultPrevented)throw y}return v.then(y=>{for(const C of y||[])C.status==="rejected"&&f(C.reason);return t().catch(f)})},yp=function(n){var t;!n.name!=="NotFound"&&(n.path=`/tools/tablemanager/${n.path.replace(/^\//,"")}`),(t=n.children)==null||t.forEach(yp)},Ns=kr("d",(n,t)=>{const e=n.__vccOpts||n;for(const[r,v]of t)e[r]=v;return e}),I0="/icons/customIcons.svg",Yc={props:{icon:{type:String},size:{type:String,default:"small"},color:{type:String,default:"white"}},computed:{iconSrc:function(){return I0+"#"+this.icon}}},wp=()=>{Zd(n=>({"259824e2":n.color}))},bp=Yc.setup;Yc.setup=bp?(n,t)=>(wp(),bp(n,t)):wp;const R0={class:"cosmos-custom-icon"},L0={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",preserveAspectRatio:"xMidYMid meet",focusable:"false"},O0=["href"];function N0(n,t,e,r,v,f){return Vn(),si("span",R0,[(Vn(),si("svg",L0,[ji("use",{href:f.iconSrc},null,8,O0)]))])}const D0=Ns(Yc,[["render",N0],["__scopeId","data-v-4b6f1199"]]),ul=6e4,Xc=36e5,F0=1e3,xp=Symbol.for("constructDateFrom");function Fn(n,t){return typeof n=="function"?n(t):n&&typeof n=="object"&&xp in n?n[xp](t):n instanceof Date?new n.constructor(t):new Date(t)}function cn(n,t){return Fn(t||n,n)}let P0={};function Ds(){return P0}function To(n,t){var e,r,v,f;const y=Ds(),C=(t==null?void 0:t.weekStartsOn)??((r=(e=t==null?void 0:t.locale)==null?void 0:e.options)==null?void 0:r.weekStartsOn)??y.weekStartsOn??((f=(v=y.locale)==null?void 0:v.options)==null?void 0:f.weekStartsOn)??0,h=cn(n,t==null?void 0:t.in),p=h.getDay(),s=(p<C?7:0)+p-C;return h.setDate(h.getDate()-s),h.setHours(0,0,0,0),h}function Fs(n,t){return To(n,{...t,weekStartsOn:1})}function Cp(n,t){const e=cn(n,void 0),r=e.getFullYear(),v=Fn(e,0);v.setFullYear(r+1,0,4),v.setHours(0,0,0,0);const f=Fs(v),y=Fn(e,0);y.setFullYear(r,0,4),y.setHours(0,0,0,0);const C=Fs(y);return e.getTime()>=f.getTime()?r+1:e.getTime()>=C.getTime()?r:r-1}function hl(n){const t=cn(n),e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),+n-+e}function W0(n,...t){const e=Fn.bind(null,t.find(r=>typeof r=="object"));return t.map(e)}function kp(n,t){const e=cn(n,void 0);return e.setHours(0,0,0,0),e}function B0(n,t,e){const[r,v]=W0(void 0,n,t),f=kp(r),y=kp(v),C=+f-hl(f),h=+y-hl(y);return Math.round((C-h)/864e5)}function z0(n,t){const e=Cp(n),r=Fn(n,0);return r.setFullYear(e,0,4),r.setHours(0,0,0,0),Fs(r)}function j0(n){return n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]"}function Ap(n){return!(!j0(n)&&typeof n!="number"||isNaN(+cn(n)))}function H0(n,t){const e=cn(n,void 0);return e.setFullYear(e.getFullYear(),0,1),e.setHours(0,0,0,0),e}const U0={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},V0=(n,t,e)=>{let r;const v=U0[n];return typeof v=="string"?r=v:t===1?r=v.one:r=v.other.replace("{{count}}",t.toString()),e!=null&&e.addSuffix?e.comparison&&e.comparison>0?"in "+r:r+" ago":r};function Qc(n){return(t={})=>{const e=t.width?String(t.width):n.defaultWidth;return n.formats[e]||n.formats[n.defaultWidth]}}const G0={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},K0={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},q0={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Y0={date:Qc({formats:G0,defaultWidth:"full"}),time:Qc({formats:K0,defaultWidth:"full"}),dateTime:Qc({formats:q0,defaultWidth:"full"})},X0={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Q0=(n,t,e,r)=>X0[n];function ya(n){return(t,e)=>{const r=e!=null&&e.context?String(e.context):"standalone";let v;if(r==="formatting"&&n.formattingValues){const y=n.defaultFormattingWidth||n.defaultWidth,C=e!=null&&e.width?String(e.width):y;v=n.formattingValues[C]||n.formattingValues[y]}else{const y=n.defaultWidth,C=e!=null&&e.width?String(e.width):n.defaultWidth;v=n.values[C]||n.values[y]}const f=n.argumentCallback?n.argumentCallback(t):t;return v[f]}}const Z0={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},J0={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},eb={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},tb={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},nb={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},rb={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},ib=(n,t)=>{const e=Number(n),r=e%100;if(r>20||r<10)switch(r%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},ob={ordinalNumber:ib,era:ya({values:Z0,defaultWidth:"wide"}),quarter:ya({values:J0,defaultWidth:"wide",argumentCallback:n=>n-1}),month:ya({values:eb,defaultWidth:"wide"}),day:ya({values:tb,defaultWidth:"wide"}),dayPeriod:ya({values:nb,defaultWidth:"wide",formattingValues:rb,defaultFormattingWidth:"wide"})};function wa(n){return(t,e={})=>{const r=e.width,v=r&&n.matchPatterns[r]||n.matchPatterns[n.defaultMatchWidth],f=t.match(v);if(!f)return null;const y=f[0],C=r&&n.parsePatterns[r]||n.parsePatterns[n.defaultParseWidth],h=Array.isArray(C)?ab(C,a=>a.test(y)):sb(C,a=>a.test(y));let p;p=n.valueCallback?n.valueCallback(h):h,p=e.valueCallback?e.valueCallback(p):p;const s=t.slice(y.length);return{value:p,rest:s}}}function sb(n,t){for(const e in n)if(Object.prototype.hasOwnProperty.call(n,e)&&t(n[e]))return e}function ab(n,t){for(let e=0;e<n.length;e++)if(t(n[e]))return e}function lb(n){return(t,e={})=>{const r=t.match(n.matchPattern);if(!r)return null;const v=r[0],f=t.match(n.parsePattern);if(!f)return null;let y=n.valueCallback?n.valueCallback(f[0]):f[0];y=e.valueCallback?e.valueCallback(y):y;const C=t.slice(v.length);return{value:y,rest:C}}}const cb=/^(\d+)(th|st|nd|rd)?/i,ub=/\d+/i,hb={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},db={any:[/^b/i,/^(a|c)/i]},pb={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},gb={any:[/1/i,/2/i,/3/i,/4/i]},fb={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},mb={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},vb={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},yb={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},wb={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},bb={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},xb={ordinalNumber:lb({matchPattern:cb,parsePattern:ub,valueCallback:n=>parseInt(n,10)}),era:wa({matchPatterns:hb,defaultMatchWidth:"wide",parsePatterns:db,defaultParseWidth:"any"}),quarter:wa({matchPatterns:pb,defaultMatchWidth:"wide",parsePatterns:gb,defaultParseWidth:"any",valueCallback:n=>n+1}),month:wa({matchPatterns:fb,defaultMatchWidth:"wide",parsePatterns:mb,defaultParseWidth:"any"}),day:wa({matchPatterns:vb,defaultMatchWidth:"wide",parsePatterns:yb,defaultParseWidth:"any"}),dayPeriod:wa({matchPatterns:wb,defaultMatchWidth:"any",parsePatterns:bb,defaultParseWidth:"any"})},_p={code:"en-US",formatDistance:V0,formatLong:Y0,formatRelative:Q0,localize:ob,match:xb,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Cb(n,t){const e=cn(n,void 0);return B0(e,H0(e))+1}function Sp(n,t){const e=cn(n,void 0),r=+Fs(e)-+z0(e);return Math.round(r/6048e5)+1}function Zc(n,t){var e,r,v,f;const y=cn(n,t==null?void 0:t.in),C=y.getFullYear(),h=Ds(),p=(t==null?void 0:t.firstWeekContainsDate)??((r=(e=t==null?void 0:t.locale)==null?void 0:e.options)==null?void 0:r.firstWeekContainsDate)??h.firstWeekContainsDate??((f=(v=h.locale)==null?void 0:v.options)==null?void 0:f.firstWeekContainsDate)??1,s=Fn((t==null?void 0:t.in)||n,0);s.setFullYear(C+1,0,p),s.setHours(0,0,0,0);const a=To(s,t),c=Fn((t==null?void 0:t.in)||n,0);c.setFullYear(C,0,p),c.setHours(0,0,0,0);const l=To(c,t);return+y>=+a?C+1:+y>=+l?C:C-1}function kb(n,t){var e,r,v,f;const y=Ds(),C=(t==null?void 0:t.firstWeekContainsDate)??((r=(e=t==null?void 0:t.locale)==null?void 0:e.options)==null?void 0:r.firstWeekContainsDate)??y.firstWeekContainsDate??((f=(v=y.locale)==null?void 0:v.options)==null?void 0:f.firstWeekContainsDate)??1,h=Zc(n,t),p=Fn((t==null?void 0:t.in)||n,0);return p.setFullYear(h,0,C),p.setHours(0,0,0,0),To(p,t)}function $p(n,t){const e=cn(n,t==null?void 0:t.in),r=+To(e,t)-+kb(e,t);return Math.round(r/6048e5)+1}function Kt(n,t){const e=n<0?"-":"",r=Math.abs(n).toString().padStart(t,"0");return e+r}const Eo={y(n,t){const e=n.getFullYear(),r=e>0?e:1-e;return Kt(t==="yy"?r%100:r,t.length)},M(n,t){const e=n.getMonth();return t==="M"?String(e+1):Kt(e+1,2)},d(n,t){return Kt(n.getDate(),t.length)},a(n,t){const e=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.toUpperCase();case"aaa":return e;case"aaaaa":return e[0];case"aaaa":default:return e==="am"?"a.m.":"p.m."}},h(n,t){return Kt(n.getHours()%12||12,t.length)},H(n,t){return Kt(n.getHours(),t.length)},m(n,t){return Kt(n.getMinutes(),t.length)},s(n,t){return Kt(n.getSeconds(),t.length)},S(n,t){const e=t.length,r=n.getMilliseconds(),v=Math.trunc(r*Math.pow(10,e-3));return Kt(v,t.length)}},Ps={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Mp={G:function(n,t,e){const r=n.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return e.era(r,{width:"abbreviated"});case"GGGGG":return e.era(r,{width:"narrow"});case"GGGG":default:return e.era(r,{width:"wide"})}},y:function(n,t,e){if(t==="yo"){const r=n.getFullYear(),v=r>0?r:1-r;return e.ordinalNumber(v,{unit:"year"})}return Eo.y(n,t)},Y:function(n,t,e,r){const v=Zc(n,r),f=v>0?v:1-v;if(t==="YY"){const y=f%100;return Kt(y,2)}return t==="Yo"?e.ordinalNumber(f,{unit:"year"}):Kt(f,t.length)},R:function(n,t){const e=Cp(n);return Kt(e,t.length)},u:function(n,t){const e=n.getFullYear();return Kt(e,t.length)},Q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return Kt(r,2);case"Qo":return e.ordinalNumber(r,{unit:"quarter"});case"QQQ":return e.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return e.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return e.quarter(r,{width:"wide",context:"formatting"})}},q:function(n,t,e){const r=Math.ceil((n.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return Kt(r,2);case"qo":return e.ordinalNumber(r,{unit:"quarter"});case"qqq":return e.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return e.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return e.quarter(r,{width:"wide",context:"standalone"})}},M:function(n,t,e){const r=n.getMonth();switch(t){case"M":case"MM":return Eo.M(n,t);case"Mo":return e.ordinalNumber(r+1,{unit:"month"});case"MMM":return e.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return e.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return e.month(r,{width:"wide",context:"formatting"})}},L:function(n,t,e){const r=n.getMonth();switch(t){case"L":return String(r+1);case"LL":return Kt(r+1,2);case"Lo":return e.ordinalNumber(r+1,{unit:"month"});case"LLL":return e.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return e.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return e.month(r,{width:"wide",context:"standalone"})}},w:function(n,t,e,r){const v=$p(n,r);return t==="wo"?e.ordinalNumber(v,{unit:"week"}):Kt(v,t.length)},I:function(n,t,e){const r=Sp(n);return t==="Io"?e.ordinalNumber(r,{unit:"week"}):Kt(r,t.length)},d:function(n,t,e){return t==="do"?e.ordinalNumber(n.getDate(),{unit:"date"}):Eo.d(n,t)},D:function(n,t,e){const r=Cb(n);return t==="Do"?e.ordinalNumber(r,{unit:"dayOfYear"}):Kt(r,t.length)},E:function(n,t,e){const r=n.getDay();switch(t){case"E":case"EE":case"EEE":return e.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return e.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return e.day(r,{width:"short",context:"formatting"});case"EEEE":default:return e.day(r,{width:"wide",context:"formatting"})}},e:function(n,t,e,r){const v=n.getDay(),f=(v-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(f);case"ee":return Kt(f,2);case"eo":return e.ordinalNumber(f,{unit:"day"});case"eee":return e.day(v,{width:"abbreviated",context:"formatting"});case"eeeee":return e.day(v,{width:"narrow",context:"formatting"});case"eeeeee":return e.day(v,{width:"short",context:"formatting"});case"eeee":default:return e.day(v,{width:"wide",context:"formatting"})}},c:function(n,t,e,r){const v=n.getDay(),f=(v-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(f);case"cc":return Kt(f,t.length);case"co":return e.ordinalNumber(f,{unit:"day"});case"ccc":return e.day(v,{width:"abbreviated",context:"standalone"});case"ccccc":return e.day(v,{width:"narrow",context:"standalone"});case"cccccc":return e.day(v,{width:"short",context:"standalone"});case"cccc":default:return e.day(v,{width:"wide",context:"standalone"})}},i:function(n,t,e){const r=n.getDay(),v=r===0?7:r;switch(t){case"i":return String(v);case"ii":return Kt(v,t.length);case"io":return e.ordinalNumber(v,{unit:"day"});case"iii":return e.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return e.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return e.day(r,{width:"short",context:"formatting"});case"iiii":default:return e.day(r,{width:"wide",context:"formatting"})}},a:function(n,t,e){const r=n.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return e.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return e.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return e.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(n,t,e){const r=n.getHours();let v;switch(r===12?v=Ps.noon:r===0?v=Ps.midnight:v=r/12>=1?"pm":"am",t){case"b":case"bb":return e.dayPeriod(v,{width:"abbreviated",context:"formatting"});case"bbb":return e.dayPeriod(v,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return e.dayPeriod(v,{width:"narrow",context:"formatting"});case"bbbb":default:return e.dayPeriod(v,{width:"wide",context:"formatting"})}},B:function(n,t,e){const r=n.getHours();let v;switch(r>=17?v=Ps.evening:r>=12?v=Ps.afternoon:r>=4?v=Ps.morning:v=Ps.night,t){case"B":case"BB":case"BBB":return e.dayPeriod(v,{width:"abbreviated",context:"formatting"});case"BBBBB":return e.dayPeriod(v,{width:"narrow",context:"formatting"});case"BBBB":default:return e.dayPeriod(v,{width:"wide",context:"formatting"})}},h:function(n,t,e){if(t==="ho"){let r=n.getHours()%12;return r===0&&(r=12),e.ordinalNumber(r,{unit:"hour"})}return Eo.h(n,t)},H:function(n,t,e){return t==="Ho"?e.ordinalNumber(n.getHours(),{unit:"hour"}):Eo.H(n,t)},K:function(n,t,e){const r=n.getHours()%12;return t==="Ko"?e.ordinalNumber(r,{unit:"hour"}):Kt(r,t.length)},k:function(n,t,e){let r=n.getHours();return r===0&&(r=24),t==="ko"?e.ordinalNumber(r,{unit:"hour"}):Kt(r,t.length)},m:function(n,t,e){return t==="mo"?e.ordinalNumber(n.getMinutes(),{unit:"minute"}):Eo.m(n,t)},s:function(n,t,e){return t==="so"?e.ordinalNumber(n.getSeconds(),{unit:"second"}):Eo.s(n,t)},S:function(n,t){return Eo.S(n,t)},X:function(n,t,e){const r=n.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return Ep(r);case"XXXX":case"XX":return es(r);case"XXXXX":case"XXX":default:return es(r,":")}},x:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"x":return Ep(r);case"xxxx":case"xx":return es(r);case"xxxxx":case"xxx":default:return es(r,":")}},O:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Tp(r,":");case"OOOO":default:return"GMT"+es(r,":")}},z:function(n,t,e){const r=n.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Tp(r,":");case"zzzz":default:return"GMT"+es(r,":")}},t:function(n,t,e){const r=Math.trunc(+n/1e3);return Kt(r,t.length)},T:function(n,t,e){return Kt(+n,t.length)}};function Tp(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),v=Math.trunc(r/60),f=r%60;return f===0?e+String(v):e+String(v)+t+Kt(f,2)}function Ep(n,t){return n%60===0?(n>0?"-":"+")+Kt(Math.abs(n)/60,2):es(n,t)}function es(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),v=Kt(Math.trunc(r/60),2),f=Kt(r%60,2);return e+v+t+f}const Ip=(n,t)=>{switch(n){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},Rp=(n,t)=>{switch(n){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},Ab=(n,t)=>{const e=n.match(/(P+)(p+)?/)||[],r=e[1],v=e[2];if(!v)return Ip(n,t);let f;switch(r){case"P":f=t.dateTime({width:"short"});break;case"PP":f=t.dateTime({width:"medium"});break;case"PPP":f=t.dateTime({width:"long"});break;case"PPPP":default:f=t.dateTime({width:"full"});break}return f.replace("{{date}}",Ip(r,t)).replace("{{time}}",Rp(v,t))},Jc={p:Rp,P:Ab},_b=/^D+$/,Sb=/^Y+$/,$b=["D","DD","YY","YYYY"];function Lp(n){return _b.test(n)}function Op(n){return Sb.test(n)}function eu(n,t,e){const r=Mb(n,t,e);if(console.warn(r),$b.includes(n))throw new RangeError(r)}function Mb(n,t,e){const r=n[0]==="Y"?"years":"days of the month";return`Use \`${n.toLowerCase()}\` instead of \`${n}\` (in \`${t}\`) for formatting ${r} to the input \`${e}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Tb=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Eb=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ib=/^'([^]*?)'?$/,Rb=/''/g,Lb=/[a-zA-Z]/;function ts(n,t,e){var r,v,f,y,C,h,p,s;const a=Ds(),c=(e==null?void 0:e.locale)??a.locale??_p,l=(e==null?void 0:e.firstWeekContainsDate)??((v=(r=e==null?void 0:e.locale)==null?void 0:r.options)==null?void 0:v.firstWeekContainsDate)??a.firstWeekContainsDate??((y=(f=a.locale)==null?void 0:f.options)==null?void 0:y.firstWeekContainsDate)??1,o=(e==null?void 0:e.weekStartsOn)??((h=(C=e==null?void 0:e.locale)==null?void 0:C.options)==null?void 0:h.weekStartsOn)??a.weekStartsOn??((s=(p=a.locale)==null?void 0:p.options)==null?void 0:s.weekStartsOn)??0,u=cn(n,e==null?void 0:e.in);if(!Ap(u))throw new RangeError("Invalid time value");let d=t.match(Eb).map(b=>{const R=b[0];if(R==="p"||R==="P"){const M=Jc[R];return M(b,c.formatLong)}return b}).join("").match(Tb).map(b=>{if(b==="''")return{isToken:!1,value:"'"};const R=b[0];if(R==="'")return{isToken:!1,value:Ob(b)};if(Mp[R])return{isToken:!0,value:b};if(R.match(Lb))throw new RangeError("Format string contains an unescaped latin alphabet character `"+R+"`");return{isToken:!1,value:b}});c.localize.preprocessor&&(d=c.localize.preprocessor(u,d));const w={firstWeekContainsDate:l,weekStartsOn:o,locale:c};return d.map(b=>{if(!b.isToken)return b.value;const R=b.value;(!(e!=null&&e.useAdditionalWeekYearTokens)&&Op(R)||!(e!=null&&e.useAdditionalDayOfYearTokens)&&Lp(R))&&eu(R,t,String(n));const M=Mp[R[0]];return M(u,R,c.localize,w)}).join("")}function Ob(n){const t=n.match(Ib);return t?t[1].replace(Rb,"'"):n}var Io=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function dl(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Np={exports:{}},Dp;function Nb(){return Dp||(Dp=1,function(n,t){(function(){var e="ace",r=function(){return this}();!r&&typeof window<"u"&&(r=window);var v=function(s,a,c){if(typeof s!="string"){v.original?v.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(c=a),v.modules[s]||(v.payloads[s]=c,v.modules[s]=null)};v.modules={},v.payloads={};var f=function(s,a,c){if(typeof a=="string"){var l=h(s,a);if(l!=null)return c&&c(),l}else if(Object.prototype.toString.call(a)==="[object Array]"){for(var o=[],u=0,d=a.length;u<d;++u){var w=h(s,a[u]);if(w==null&&y.original)return;o.push(w)}return c&&c.apply(null,o)||!0}},y=function(s,a){var c=f("",s,a);return c==null&&y.original?y.original.apply(this,arguments):c},C=function(s,a){if(a.indexOf("!")!==-1){var c=a.split("!");return C(s,c[0])+"!"+C(s,c[1])}if(a.charAt(0)=="."){var l=s.split("/").slice(0,-1).join("/");for(a=l+"/"+a;a.indexOf(".")!==-1&&o!=a;){var o=a;a=a.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return a},h=function(s,a){a=C(s,a);var c=v.modules[a];if(!c){if(c=v.payloads[a],typeof c=="function"){var l={},o={id:a,uri:"",exports:l,packaged:!0},u=function(w,b){return f(a,w,b)},d=c(u,l,o);l=d||o.exports,v.modules[a]=l,delete v.payloads[a]}c=v.modules[a]=l||c}return c};function p(s){var a=r;r[s]||(r[s]={}),a=r[s],(!a.define||!a.define.packaged)&&(v.original=a.define,a.define=v,a.define.packaged=!0),(!a.require||!a.require.packaged)&&(y.original=a.require,a.require=y,a.require.packaged=!0)}p(e)})(),ace.define("ace/lib/es6-shim",["require","exports","module"],function(e,r,v){function f(y,C,h){Object.defineProperty(y,C,{value:h,enumerable:!1,writable:!0,configurable:!0})}String.prototype.startsWith||f(String.prototype,"startsWith",function(y,C){return C=C||0,this.lastIndexOf(y,C)===C}),String.prototype.endsWith||f(String.prototype,"endsWith",function(y,C){var h=this;(C===void 0||C>h.length)&&(C=h.length),C-=y.length;var p=h.indexOf(y,C);return p!==-1&&p===C}),String.prototype.repeat||f(String.prototype,"repeat",function(y){for(var C="",h=this;y>0;)y&1&&(C+=h),(y>>=1)&&(h+=h);return C}),String.prototype.includes||f(String.prototype,"includes",function(y,C){return this.indexOf(y,C)!=-1}),Object.assign||(Object.assign=function(y){if(y==null)throw new TypeError("Cannot convert undefined or null to object");for(var C=Object(y),h=1;h<arguments.length;h++){var p=arguments[h];p!=null&&Object.keys(p).forEach(function(s){C[s]=p[s]})}return C}),Object.values||(Object.values=function(y){return Object.keys(y).map(function(C){return y[C]})}),Array.prototype.find||f(Array.prototype,"find",function(y){for(var C=this.length,h=arguments[1],p=0;p<C;p++){var s=this[p];if(y.call(h,s,p,this))return s}}),Array.prototype.findIndex||f(Array.prototype,"findIndex",function(y){for(var C=this.length,h=arguments[1],p=0;p<C;p++){var s=this[p];if(y.call(h,s,p,this))return p}}),Array.prototype.includes||f(Array.prototype,"includes",function(y,C){return this.indexOf(y,C)!=-1}),Array.prototype.fill||f(Array.prototype,"fill",function(y){for(var C=this,h=C.length>>>0,p=arguments[1],s=p>>0,a=s<0?Math.max(h+s,0):Math.min(s,h),c=arguments[2],l=c===void 0?h:c>>0,o=l<0?Math.max(h+l,0):Math.min(l,h);a<o;)C[a]=y,a++;return C}),Array.of||f(Array,"of",function(){return Array.prototype.slice.call(arguments)})}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/es6-shim"],function(e,r,v){e("./es6-shim")}),ace.define("ace/lib/deep_copy",["require","exports","module"],function(e,r,v){r.deepCopy=function f(y){if(typeof y!="object"||!y)return y;var C;if(Array.isArray(y)){C=[];for(var h=0;h<y.length;h++)C[h]=f(y[h]);return C}if(Object.prototype.toString.call(y)!=="[object Object]")return y;C={};for(var h in y)C[h]=f(y[h]);return C}}),ace.define("ace/lib/lang",["require","exports","module","ace/lib/deep_copy"],function(e,r,v){r.last=function(C){return C[C.length-1]},r.stringReverse=function(C){return C.split("").reverse().join("")},r.stringRepeat=function(C,h){for(var p="";h>0;)h&1&&(p+=C),(h>>=1)&&(C+=C);return p};var f=/^\s\s*/,y=/\s\s*$/;r.stringTrimLeft=function(C){return C.replace(f,"")},r.stringTrimRight=function(C){return C.replace(y,"")},r.copyObject=function(C){var h={};for(var p in C)h[p]=C[p];return h},r.copyArray=function(C){for(var h=[],p=0,s=C.length;p<s;p++)C[p]&&typeof C[p]=="object"?h[p]=this.copyObject(C[p]):h[p]=C[p];return h},r.deepCopy=e("./deep_copy").deepCopy,r.arrayToMap=function(C){for(var h={},p=0;p<C.length;p++)h[C[p]]=1;return h},r.createMap=function(C){var h=Object.create(null);for(var p in C)h[p]=C[p];return h},r.arrayRemove=function(C,h){for(var p=0;p<=C.length;p++)h===C[p]&&C.splice(p,1)},r.escapeRegExp=function(C){return C.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},r.escapeHTML=function(C){return(""+C).replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},r.getMatchOffsets=function(C,h){var p=[];return C.replace(h,function(s){p.push({offset:arguments[arguments.length-2],length:s.length})}),p},r.deferredCall=function(C){var h=null,p=function(){h=null,C()},s=function(a){return s.cancel(),h=setTimeout(p,a||0),s};return s.schedule=s,s.call=function(){return this.cancel(),C(),s},s.cancel=function(){return clearTimeout(h),h=null,s},s.isPending=function(){return h},s},r.delayedCall=function(C,h){var p=null,s=function(){p=null,C()},a=function(c){p==null&&(p=setTimeout(s,c||h))};return a.delay=function(c){p&&clearTimeout(p),p=setTimeout(s,c||h)},a.schedule=a,a.call=function(){this.cancel(),C()},a.cancel=function(){p&&clearTimeout(p),p=null},a.isPending=function(){return p},a},r.supportsLookbehind=function(){try{new RegExp("(?<=.)")}catch{return!1}return!0},r.skipEmptyMatch=function(C,h,p){return p&&C.codePointAt(h)>65535?2:1}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,r,v){r.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},r.getOS=function(){return r.isMac?r.OS.MAC:r.isLinux?r.OS.LINUX:r.OS.WINDOWS};var f=typeof navigator=="object"?navigator:{},y=(/mac|win|linux/i.exec(f.platform)||["other"])[0].toLowerCase(),C=f.userAgent||"",h=f.appName||"";r.isWin=y=="win",r.isMac=y=="mac",r.isLinux=y=="linux",r.isIE=h=="Microsoft Internet Explorer"||h.indexOf("MSAppHost")>=0?parseFloat((C.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((C.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),r.isOldIE=r.isIE&&r.isIE<9,r.isGecko=r.isMozilla=C.match(/ Gecko\/\d+/),r.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",r.isWebKit=parseFloat(C.split("WebKit/")[1])||void 0,r.isChrome=parseFloat(C.split(" Chrome/")[1])||void 0,r.isSafari=parseFloat(C.split(" Safari/")[1])&&!r.isChrome||void 0,r.isEdge=parseFloat(C.split(" Edge/")[1])||void 0,r.isAIR=C.indexOf("AdobeAIR")>=0,r.isAndroid=C.indexOf("Android")>=0,r.isChromeOS=C.indexOf(" CrOS ")>=0,r.isIOS=/iPad|iPhone|iPod/.test(C)&&!window.MSStream,r.isIOS&&(r.isMac=!0),r.isMobile=r.isIOS||r.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,r,v){var f=e("./useragent"),y="http://www.w3.org/1999/xhtml";r.buildDom=function c(l,o,u){if(typeof l=="string"&&l){var d=document.createTextNode(l);return o&&o.appendChild(d),d}if(!Array.isArray(l))return l&&l.appendChild&&o&&o.appendChild(l),l;if(typeof l[0]!="string"||!l[0]){for(var w=[],b=0;b<l.length;b++){var R=c(l[b],o,u);R&&w.push(R)}return w}var M=document.createElement(l[0]),k=l[1],x=1;k&&typeof k=="object"&&!Array.isArray(k)&&(x=2);for(var b=x;b<l.length;b++)c(l[b],M,u);return x==2&&Object.keys(k).forEach(function(L){var O=k[L];L==="class"?M.className=Array.isArray(O)?O.join(" "):O:typeof O=="function"||L=="value"||L[0]=="$"?M[L]=O:L==="ref"?u&&(u[O]=M):L==="style"?typeof O=="string"&&(M.style.cssText=O):O!=null&&M.setAttribute(L,O)}),o&&o.appendChild(M),M},r.getDocumentHead=function(c){return c||(c=document),c.head||c.getElementsByTagName("head")[0]||c.documentElement},r.createElement=function(c,l){return document.createElementNS?document.createElementNS(l||y,c):document.createElement(c)},r.removeChildren=function(c){c.innerHTML=""},r.createTextNode=function(c,l){var o=l?l.ownerDocument:document;return o.createTextNode(c)},r.createFragment=function(c){var l=c?c.ownerDocument:document;return l.createDocumentFragment()},r.hasCssClass=function(c,l){var o=(c.className+"").split(/\s+/g);return o.indexOf(l)!==-1},r.addCssClass=function(c,l){r.hasCssClass(c,l)||(c.className+=" "+l)},r.removeCssClass=function(c,l){for(var o=c.className.split(/\s+/g);;){var u=o.indexOf(l);if(u==-1)break;o.splice(u,1)}c.className=o.join(" ")},r.toggleCssClass=function(c,l){for(var o=c.className.split(/\s+/g),u=!0;;){var d=o.indexOf(l);if(d==-1)break;u=!1,o.splice(d,1)}return u&&o.push(l),c.className=o.join(" "),u},r.setCssClass=function(c,l,o){o?r.addCssClass(c,l):r.removeCssClass(c,l)},r.hasCssString=function(c,l){var o=0,u;if(l=l||document,u=l.querySelectorAll("style")){for(;o<u.length;)if(u[o++].id===c)return!0}},r.removeElementById=function(c,l){l=l||document,l.getElementById(c)&&l.getElementById(c).remove()};var C,h=[];r.useStrictCSP=function(c){C=c,c==!1?p():h||(h=[])};function p(){var c=h;h=null,c&&c.forEach(function(l){s(l[0],l[1])})}function s(c,l,o){if(!(typeof document>"u")){if(h){if(o)p();else if(o===!1)return h.push([c,l])}if(!C){var u=o;!o||!o.getRootNode?u=document:(u=o.getRootNode(),(!u||u==o)&&(u=document));var d=u.ownerDocument||u;if(l&&r.hasCssString(l,u))return null;l&&(c+=`
2
+ /*# sourceURL=ace/css/`+l+" */");var w=r.createElement("style");w.appendChild(d.createTextNode(c)),l&&(w.id=l),u==d&&(u=r.getDocumentHead(d)),u.insertBefore(w,u.firstChild)}}}if(r.importCssString=s,r.importCssStylsheet=function(c,l){r.buildDom(["link",{rel:"stylesheet",href:c}],r.getDocumentHead(l))},r.scrollbarWidth=function(c){var l=r.createElement("ace_inner");l.style.width="100%",l.style.minWidth="0px",l.style.height="200px",l.style.display="block";var o=r.createElement("ace_outer"),u=o.style;u.position="absolute",u.left="-10000px",u.overflow="hidden",u.width="200px",u.minWidth="0px",u.height="150px",u.display="block",o.appendChild(l);var d=c&&c.documentElement||document&&document.documentElement;if(!d)return 0;d.appendChild(o);var w=l.offsetWidth;u.overflow="scroll";var b=l.offsetWidth;return w===b&&(b=o.clientWidth),d.removeChild(o),w-b},r.computedStyle=function(c,l){return window.getComputedStyle(c,"")||{}},r.setStyle=function(c,l,o){c[l]!==o&&(c[l]=o)},r.HAS_CSS_ANIMATION=!1,r.HAS_CSS_TRANSFORMS=!1,r.HI_DPI=f.isWin?typeof window<"u"&&window.devicePixelRatio>=1.5:!0,f.isChromeOS&&(r.HI_DPI=!1),typeof document<"u"){var a=document.createElement("div");r.HI_DPI&&a.style.transform!==void 0&&(r.HAS_CSS_TRANSFORMS=!0),!f.isEdge&&typeof a.style.animationName<"u"&&(r.HAS_CSS_ANIMATION=!0),a=null}r.HAS_CSS_TRANSFORMS?r.translate=function(c,l,o){c.style.transform="translate("+Math.round(l)+"px, "+Math.round(o)+"px)"}:r.translate=function(c,l,o){c.style.top=Math.round(o)+"px",c.style.left=Math.round(l)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,r,v){/*
3
+ * based on code from:
4
+ *
5
+ * @license RequireJS text 0.25.0 Copyright (c) 2010-2011, The Dojo Foundation All Rights Reserved.
6
+ * Available via the MIT or new BSD license.
7
+ * see: http://github.com/jrburke/requirejs for details
8
+ */var f=e("./dom");r.get=function(y,C){var h=new XMLHttpRequest;h.open("GET",y,!0),h.onreadystatechange=function(){h.readyState===4&&C(h.responseText)},h.send(null)},r.loadScript=function(y,C){var h=f.getDocumentHead(),p=document.createElement("script");p.src=y,h.appendChild(p),p.onload=p.onreadystatechange=function(s,a){(a||!p.readyState||p.readyState=="loaded"||p.readyState=="complete")&&(p=p.onload=p.onreadystatechange=null,a||C())}},r.qualifyURL=function(y){var C=document.createElement("a");return C.href=y,C.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,r,v){r.inherits=function(f,y){f.super_=y,f.prototype=Object.create(y.prototype,{constructor:{value:f,enumerable:!1,writable:!0,configurable:!0}})},r.mixin=function(f,y){for(var C in y)f[C]=y[C];return f},r.implement=function(f,y){r.mixin(f,y)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,r,v){var f={},y=function(){this.propagationStopped=!0},C=function(){this.defaultPrevented=!0};f._emit=f._dispatchEvent=function(h,p){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var s=this._eventRegistry[h]||[],a=this._defaultHandlers[h];if(!(!s.length&&!a)){(typeof p!="object"||!p)&&(p={}),p.type||(p.type=h),p.stopPropagation||(p.stopPropagation=y),p.preventDefault||(p.preventDefault=C),s=s.slice();for(var c=0;c<s.length&&(s[c](p,this),!p.propagationStopped);c++);if(a&&!p.defaultPrevented)return a(p,this)}},f._signal=function(h,p){var s=(this._eventRegistry||{})[h];if(s){s=s.slice();for(var a=0;a<s.length;a++)s[a](p,this)}},f.once=function(h,p){var s=this;if(this.on(h,function a(){s.off(h,a),p.apply(null,arguments)}),!p)return new Promise(function(a){p=a})},f.setDefaultHandler=function(h,p){var s=this._defaultHandlers;if(s||(s=this._defaultHandlers={_disabled_:{}}),s[h]){var a=s[h],c=s._disabled_[h];c||(s._disabled_[h]=c=[]),c.push(a);var l=c.indexOf(p);l!=-1&&c.splice(l,1)}s[h]=p},f.removeDefaultHandler=function(h,p){var s=this._defaultHandlers;if(s){var a=s._disabled_[h];if(s[h]==p)a&&this.setDefaultHandler(h,a.pop());else if(a){var c=a.indexOf(p);c!=-1&&a.splice(c,1)}}},f.on=f.addEventListener=function(h,p,s){this._eventRegistry=this._eventRegistry||{};var a=this._eventRegistry[h];return a||(a=this._eventRegistry[h]=[]),a.indexOf(p)==-1&&a[s?"unshift":"push"](p),p},f.off=f.removeListener=f.removeEventListener=function(h,p){this._eventRegistry=this._eventRegistry||{};var s=this._eventRegistry[h];if(s){var a=s.indexOf(p);a!==-1&&s.splice(a,1)}},f.removeAllListeners=function(h){h||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[h]=void 0),this._defaultHandlers&&(this._defaultHandlers[h]=void 0)},r.EventEmitter=f}),ace.define("ace/lib/report_error",["require","exports","module"],function(e,r,v){r.reportError=function(f,y){var C=new Error(f);C.data=y,typeof console=="object"&&console.error&&console.error(C),setTimeout(function(){throw C})}}),ace.define("ace/lib/default_english_messages",["require","exports","module"],function(e,r,v){var f={"autocomplete.popup.aria-roledescription":"Autocomplete suggestions","autocomplete.popup.aria-label":"Autocomplete suggestions","autocomplete.popup.item.aria-roledescription":"item","autocomplete.loading":"Loading...","editor.scroller.aria-roledescription":"editor","editor.scroller.aria-label":"Editor content, press Enter to start editing, press Escape to exit","editor.gutter.aria-roledescription":"editor gutter","editor.gutter.aria-label":"Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit","error-marker.good-state":"Looks good!","prompt.recently-used":"Recently used","prompt.other-commands":"Other commands","prompt.no-matching-commands":"No matching commands","search-box.find.placeholder":"Search for","search-box.find-all.text":"All","search-box.replace.placeholder":"Replace with","search-box.replace-next.text":"Replace","search-box.replace-all.text":"All","search-box.toggle-replace.title":"Toggle Replace mode","search-box.toggle-regexp.title":"RegExp Search","search-box.toggle-case.title":"CaseSensitive Search","search-box.toggle-whole-word.title":"Whole Word Search","search-box.toggle-in-selection.title":"Search In Selection","search-box.search-counter":"$0 of $1","text-input.aria-roledescription":"editor","text-input.aria-label":"Cursor at row $0","gutter.code-folding.range.aria-label":"Toggle code folding, rows $0 through $1","gutter.code-folding.closed.aria-label":"Toggle code folding, rows $0 through $1","gutter.code-folding.open.aria-label":"Toggle code folding, row $0","gutter.code-folding.closed.title":"Unfold code","gutter.code-folding.open.title":"Fold code","gutter.annotation.aria-label.error":"Error, read annotations row $0","gutter.annotation.aria-label.warning":"Warning, read annotations row $0","gutter.annotation.aria-label.info":"Info, read annotations row $0","inline-fold.closed.title":"Unfold code","gutter-tooltip.aria-label.error.singular":"error","gutter-tooltip.aria-label.error.plural":"errors","gutter-tooltip.aria-label.warning.singular":"warning","gutter-tooltip.aria-label.warning.plural":"warnings","gutter-tooltip.aria-label.info.singular":"information message","gutter-tooltip.aria-label.info.plural":"information messages","gutter.annotation.aria-label.security":"Security finding, read annotations row $0","gutter.annotation.aria-label.hint":"Suggestion, read annotations row $0","gutter-tooltip.aria-label.security.singular":"security finding","gutter-tooltip.aria-label.security.plural":"security findings","gutter-tooltip.aria-label.hint.singular":"suggestion","gutter-tooltip.aria-label.hint.plural":"suggestions","editor.tooltip.disable-editing":"Editing is disabled"};r.defaultEnglishMessages=f}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/lib/report_error","ace/lib/default_english_messages"],function(e,r,v){"no use strict";var f=e("./oop"),y=e("./event_emitter").EventEmitter,C=e("./report_error").reportError,h=e("./default_english_messages").defaultEnglishMessages,p={setOptions:function(o){Object.keys(o).forEach(function(u){this.setOption(u,o[u])},this)},getOptions:function(o){var u={};if(o)Array.isArray(o)||(o=Object.keys(o));else{var d=this.$options;o=Object.keys(d).filter(function(w){return!d[w].hidden})}return o.forEach(function(w){u[w]=this.getOption(w)},this),u},setOption:function(o,u){if(this["$"+o]!==u){var d=this.$options[o];if(!d)return s('misspelled option "'+o+'"');if(d.forwardTo)return this[d.forwardTo]&&this[d.forwardTo].setOption(o,u);d.handlesSet||(this["$"+o]=u),d&&d.set&&d.set.call(this,u)}},getOption:function(o){var u=this.$options[o];return u?u.forwardTo?this[u.forwardTo]&&this[u.forwardTo].getOption(o):u&&u.get?u.get.call(this):this["$"+o]:s('misspelled option "'+o+'"')}};function s(o){typeof console<"u"&&console.warn&&console.warn.apply(console,arguments)}var a,c,l=function(){function o(){this.$defaultOptions={},a=h,c="dollarSigns"}return o.prototype.defineOptions=function(u,d,w){return u.$options||(this.$defaultOptions[d]=u.$options={}),Object.keys(w).forEach(function(b){var R=w[b];typeof R=="string"&&(R={forwardTo:R}),R.name||(R.name=b),u.$options[R.name]=R,"initialValue"in R&&(u["$"+R.name]=R.initialValue)}),f.implement(u,p),this},o.prototype.resetOptions=function(u){Object.keys(u.$options).forEach(function(d){var w=u.$options[d];"value"in w&&u.setOption(d,w.value)})},o.prototype.setDefaultValue=function(u,d,w){if(!u){for(u in this.$defaultOptions)if(this.$defaultOptions[u][d])break;if(!this.$defaultOptions[u][d])return!1}var b=this.$defaultOptions[u]||(this.$defaultOptions[u]={});b[d]&&(b.forwardTo?this.setDefaultValue(b.forwardTo,d,w):b[d].value=w)},o.prototype.setDefaultValues=function(u,d){Object.keys(d).forEach(function(w){this.setDefaultValue(u,w,d[w])},this)},o.prototype.setMessages=function(u,d){a=u,d&&d.placeholders&&(c=d.placeholders)},o.prototype.nls=function(u,d,w){a[u]||(s("No message found for the key '"+u+"' in messages with id "+a.$id+", trying to find a translation for the default string '"+d+"'."),a[d]||s("No message found for the default string '"+d+"' in the provided messages. Falling back to the default English message."));var b=a[u]||a[d]||d;return w&&(c==="dollarSigns"&&(b=b.replace(/\$(\$|[\d]+)/g,function(R,M){return M=="$"?"$":w[M]})),c==="curlyBrackets"&&(b=b.replace(/\{([^\}]+)\}/g,function(R,M){return w[M]}))),b},o}();l.prototype.warn=s,l.prototype.reportError=C,f.implement(l.prototype,y),r.AppConfig=l}),ace.define("ace/theme/textmate-css",["require","exports","module"],function(e,r,v){v.exports=`.ace-tm .ace_gutter {
9
+ background: #f0f0f0;
10
+ color: #333;
11
+ }
12
+
13
+ .ace-tm .ace_print-margin {
14
+ width: 1px;
15
+ background: #e8e8e8;
16
+ }
17
+
18
+ .ace-tm .ace_fold {
19
+ background-color: #6B72E6;
20
+ }
21
+
22
+ .ace-tm {
23
+ background-color: #FFFFFF;
24
+ color: black;
25
+ }
26
+
27
+ .ace-tm .ace_cursor {
28
+ color: black;
29
+ }
30
+
31
+ .ace-tm .ace_invisible {
32
+ color: rgb(191, 191, 191);
33
+ }
34
+
35
+ .ace-tm .ace_storage,
36
+ .ace-tm .ace_keyword {
37
+ color: blue;
38
+ }
39
+
40
+ .ace-tm .ace_constant {
41
+ color: rgb(197, 6, 11);
42
+ }
43
+
44
+ .ace-tm .ace_constant.ace_buildin {
45
+ color: rgb(88, 72, 246);
46
+ }
47
+
48
+ .ace-tm .ace_constant.ace_language {
49
+ color: rgb(88, 92, 246);
50
+ }
51
+
52
+ .ace-tm .ace_constant.ace_library {
53
+ color: rgb(6, 150, 14);
54
+ }
55
+
56
+ .ace-tm .ace_invalid {
57
+ background-color: rgba(255, 0, 0, 0.1);
58
+ color: red;
59
+ }
60
+
61
+ .ace-tm .ace_support.ace_function {
62
+ color: rgb(60, 76, 114);
63
+ }
64
+
65
+ .ace-tm .ace_support.ace_constant {
66
+ color: rgb(6, 150, 14);
67
+ }
68
+
69
+ .ace-tm .ace_support.ace_type,
70
+ .ace-tm .ace_support.ace_class {
71
+ color: rgb(109, 121, 222);
72
+ }
73
+
74
+ .ace-tm .ace_keyword.ace_operator {
75
+ color: rgb(104, 118, 135);
76
+ }
77
+
78
+ .ace-tm .ace_string {
79
+ color: rgb(3, 106, 7);
80
+ }
81
+
82
+ .ace-tm .ace_comment {
83
+ color: rgb(76, 136, 107);
84
+ }
85
+
86
+ .ace-tm .ace_comment.ace_doc {
87
+ color: rgb(0, 102, 255);
88
+ }
89
+
90
+ .ace-tm .ace_comment.ace_doc.ace_tag {
91
+ color: rgb(128, 159, 191);
92
+ }
93
+
94
+ .ace-tm .ace_constant.ace_numeric {
95
+ color: rgb(0, 0, 205);
96
+ }
97
+
98
+ .ace-tm .ace_variable {
99
+ color: rgb(49, 132, 149);
100
+ }
101
+
102
+ .ace-tm .ace_xml-pe {
103
+ color: rgb(104, 104, 91);
104
+ }
105
+
106
+ .ace-tm .ace_entity.ace_name.ace_function {
107
+ color: #0000A2;
108
+ }
109
+
110
+
111
+ .ace-tm .ace_heading {
112
+ color: rgb(12, 7, 255);
113
+ }
114
+
115
+ .ace-tm .ace_list {
116
+ color:rgb(185, 6, 144);
117
+ }
118
+
119
+ .ace-tm .ace_meta.ace_tag {
120
+ color:rgb(0, 22, 142);
121
+ }
122
+
123
+ .ace-tm .ace_string.ace_regex {
124
+ color: rgb(255, 0, 0)
125
+ }
126
+
127
+ .ace-tm .ace_marker-layer .ace_selection {
128
+ background: rgb(181, 213, 255);
129
+ }
130
+ .ace-tm.ace_multiselect .ace_selection.ace_start {
131
+ box-shadow: 0 0 3px 0px white;
132
+ }
133
+ .ace-tm .ace_marker-layer .ace_step {
134
+ background: rgb(252, 255, 0);
135
+ }
136
+
137
+ .ace-tm .ace_marker-layer .ace_stack {
138
+ background: rgb(164, 229, 101);
139
+ }
140
+
141
+ .ace-tm .ace_marker-layer .ace_bracket {
142
+ margin: -1px 0 0 -1px;
143
+ border: 1px solid rgb(192, 192, 192);
144
+ }
145
+
146
+ .ace-tm .ace_marker-layer .ace_active-line {
147
+ background: rgba(0, 0, 0, 0.07);
148
+ }
149
+
150
+ .ace-tm .ace_gutter-active-line {
151
+ background-color : #dcdcdc;
152
+ }
153
+
154
+ .ace-tm .ace_marker-layer .ace_selected-word {
155
+ background: rgb(250, 250, 255);
156
+ border: 1px solid rgb(200, 200, 250);
157
+ }
158
+
159
+ .ace-tm .ace_indent-guide {
160
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;
161
+ }
162
+
163
+ .ace-tm .ace_indent-guide-active {
164
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y;
165
+ }
166
+ `}),ace.define("ace/theme/textmate",["require","exports","module","ace/theme/textmate-css","ace/lib/dom"],function(e,r,v){r.isDark=!1,r.cssClass="ace-tm",r.cssText=e("./textmate-css"),r.$id="ace/theme/textmate";var f=e("../lib/dom");f.importCssString(r.cssText,r.cssClass,!1)}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/net","ace/lib/dom","ace/lib/app_config","ace/theme/textmate"],function(e,r,v){"no use strict";var f=e("./lib/lang"),y=e("./lib/net"),C=e("./lib/dom"),h=e("./lib/app_config").AppConfig;v.exports=r=new h;var p={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{},loadWorkerFromBlob:!0,sharedPopups:!1,useStrictCSP:null};r.get=function(l){if(!p.hasOwnProperty(l))throw new Error("Unknown config key: "+l);return p[l]},r.set=function(l,o){if(p.hasOwnProperty(l))p[l]=o;else if(this.setDefaultValue("",l,o)==!1)throw new Error("Unknown config key: "+l);l=="useStrictCSP"&&C.useStrictCSP(o)},r.all=function(){return f.copyObject(p)},r.$modes={},r.moduleUrl=function(l,o){if(p.$moduleUrls[l])return p.$moduleUrls[l];var u=l.split("/");o=o||u[u.length-2]||"";var d=o=="snippets"?"/":"-",w=u[u.length-1];if(o=="worker"&&d=="-"){var b=new RegExp("^"+o+"[\\-_]|[\\-_]"+o+"$","g");w=w.replace(b,"")}(!w||w==o)&&u.length>1&&(w=u[u.length-2]);var R=p[o+"Path"];return R==null?R=p.basePath:d=="/"&&(o=d=""),R&&R.slice(-1)!="/"&&(R+="/"),R+o+d+w+this.get("suffix")},r.setModuleUrl=function(l,o){return p.$moduleUrls[l]=o};var s=function(l,o){if(l==="ace/theme/textmate"||l==="./theme/textmate")return o(null,e("./theme/textmate"));if(a)return a(l,o);console.error("loader is not configured")},a;r.setLoader=function(l){a=l},r.dynamicModules=Object.create(null),r.$loading={},r.$loaded={},r.loadModule=function(l,o){var u;if(Array.isArray(l))var d=l[0],w=l[1];else if(typeof l=="string")var w=l;var b=function(R){if(R&&!r.$loading[w])return o&&o(R);if(r.$loading[w]||(r.$loading[w]=[]),r.$loading[w].push(o),!(r.$loading[w].length>1)){var M=function(){s(w,function(k,x){x&&(r.$loaded[w]=x),r._emit("load.module",{name:w,module:x});var L=r.$loading[w];r.$loading[w]=null,L.forEach(function(O){O&&O(x)})})};if(!r.get("packaged"))return M();y.loadScript(r.moduleUrl(w,d),M),c()}};if(r.dynamicModules[w])r.dynamicModules[w]().then(function(R){R.default?b(R.default):b(R)});else{try{u=this.$require(w)}catch{}b(u||r.$loaded[w])}},r.$require=function(l){if(typeof v.require=="function"){var o="require";return v[o](l)}},r.setModuleLoader=function(l,o){r.dynamicModules[l]=o};var c=function(){!p.basePath&&!p.workerPath&&!p.modePath&&!p.themePath&&!Object.keys(p.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),c=function(){})};r.version="1.43.2"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(e,r,v){e("./lib/fixoldbrowsers");var f=e("./config");f.setLoader(function(p,s){e([p],function(a){s(null,a)})});var y=function(){return this||typeof window<"u"&&window}();v.exports=function(p){f.init=C,f.$require=e,p.require=e},C(!0);function C(p){if(!(!y||!y.document)){f.set("packaged",p||e.packaged||v.packaged||y.define&&(void 0).packaged);var s={},a="",c=document.currentScript||document._currentScript,l=c&&c.ownerDocument||document;c&&c.src&&(a=c.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var o=l.getElementsByTagName("script"),u=0;u<o.length;u++){var d=o[u],w=d.src||d.getAttribute("src");if(w){for(var b=d.attributes,R=0,M=b.length;R<M;R++){var k=b[R];k.name.indexOf("data-ace-")===0&&(s[h(k.name.replace(/^data-ace-/,""))]=k.value)}var x=w.match(/^(.*)\/ace([\-.]\w+)?\.js(\?|$)/);x&&(a=x[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 L in s)typeof s[L]<"u"&&f.set(L,s[L])}}function h(p){return p.replace(/-(.)/g,function(s,a){return a.toUpperCase()})}}),ace.define("ace/range",["require","exports","module"],function(e,r,v){var f=function(){function y(C,h,p,s){this.start={row:C,column:h},this.end={row:p,column:s}}return y.prototype.isEqual=function(C){return this.start.row===C.start.row&&this.end.row===C.end.row&&this.start.column===C.start.column&&this.end.column===C.end.column},y.prototype.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},y.prototype.contains=function(C,h){return this.compare(C,h)==0},y.prototype.compareRange=function(C){var h,p=C.end,s=C.start;return h=this.compare(p.row,p.column),h==1?(h=this.compare(s.row,s.column),h==1?2:h==0?1:0):h==-1?-2:(h=this.compare(s.row,s.column),h==-1?-1:h==1?42:0)},y.prototype.comparePoint=function(C){return this.compare(C.row,C.column)},y.prototype.containsRange=function(C){return this.comparePoint(C.start)==0&&this.comparePoint(C.end)==0},y.prototype.intersects=function(C){var h=this.compareRange(C);return h==-1||h==0||h==1},y.prototype.isEnd=function(C,h){return this.end.row==C&&this.end.column==h},y.prototype.isStart=function(C,h){return this.start.row==C&&this.start.column==h},y.prototype.setStart=function(C,h){typeof C=="object"?(this.start.column=C.column,this.start.row=C.row):(this.start.row=C,this.start.column=h)},y.prototype.setEnd=function(C,h){typeof C=="object"?(this.end.column=C.column,this.end.row=C.row):(this.end.row=C,this.end.column=h)},y.prototype.inside=function(C,h){return this.compare(C,h)==0?!(this.isEnd(C,h)||this.isStart(C,h)):!1},y.prototype.insideStart=function(C,h){return this.compare(C,h)==0?!this.isEnd(C,h):!1},y.prototype.insideEnd=function(C,h){return this.compare(C,h)==0?!this.isStart(C,h):!1},y.prototype.compare=function(C,h){return!this.isMultiLine()&&C===this.start.row?h<this.start.column?-1:h>this.end.column?1:0:C<this.start.row?-1:C>this.end.row?1:this.start.row===C?h>=this.start.column?0:-1:this.end.row===C?h<=this.end.column?0:1:0},y.prototype.compareStart=function(C,h){return this.start.row==C&&this.start.column==h?-1:this.compare(C,h)},y.prototype.compareEnd=function(C,h){return this.end.row==C&&this.end.column==h?1:this.compare(C,h)},y.prototype.compareInside=function(C,h){return this.end.row==C&&this.end.column==h?1:this.start.row==C&&this.start.column==h?-1:this.compare(C,h)},y.prototype.clipRows=function(C,h){if(this.end.row>h)var p={row:h+1,column:0};else if(this.end.row<C)var p={row:C,column:0};if(this.start.row>h)var s={row:h+1,column:0};else if(this.start.row<C)var s={row:C,column:0};return y.fromPoints(s||this.start,p||this.end)},y.prototype.extend=function(C,h){var p=this.compare(C,h);if(p==0)return this;if(p==-1)var s={row:C,column:h};else var a={row:C,column:h};return y.fromPoints(s||this.start,a||this.end)},y.prototype.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},y.prototype.isMultiLine=function(){return this.start.row!==this.end.row},y.prototype.clone=function(){return y.fromPoints(this.start,this.end)},y.prototype.collapseRows=function(){return this.end.column==0?new y(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new y(this.start.row,0,this.end.row,0)},y.prototype.toScreenRange=function(C){var h=C.documentToScreenPosition(this.start),p=C.documentToScreenPosition(this.end);return new y(h.row,h.column,p.row,p.column)},y.prototype.moveBy=function(C,h){this.start.row+=C,this.start.column+=h,this.end.row+=C,this.end.column+=h},y}();f.fromPoints=function(y,C){return new f(y.row,y.column,C.row,C.column)},f.comparePoints=function(y,C){return y.row-C.row||y.column-C.column},r.Range=f}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(e,r,v){for(var f=e("./oop"),y={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta",91:"MetaLeft",92:"MetaRight",93:"ContextMenu"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8,control:1},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","-13":"NumpadEnter",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",59:";",61:"=",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}},C={Command:224,Backspace:8,Tab:9,Return:13,Enter:13,Pause:19,Escape:27,PageUp:33,PageDown:34,End:35,Home:36,Insert:45,Delete:46,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,Backquote:192,Minus:189,Equal:187,BracketLeft:219,Backslash:220,BracketRight:221,Semicolon:186,Quote:222,Comma:188,Period:190,Slash:191,Space:32,NumpadAdd:107,NumpadDecimal:110,NumpadSubtract:109,NumpadDivide:111,NumpadMultiply:106},h=0;h<10;h++)C["Digit"+h]=48+h,C["Numpad"+h]=96+h,y.PRINTABLE_KEYS[48+h]=""+h,y.FUNCTION_KEYS[96+h]="Numpad"+h;for(var h=65;h<91;h++){var p=String.fromCharCode(h+32);C["Key"+p.toUpperCase()]=h,y.PRINTABLE_KEYS[h]=p}for(var h=1;h<13;h++)C["F"+h]=111+h,y.FUNCTION_KEYS[111+h]="F"+h;var s={Shift:16,Control:17,Alt:18,Meta:224};for(var a in s)C[a]=C[a+"Left"]=C[a+"Right"]=s[a];r.$codeToKeyCode=C,y.PRINTABLE_KEYS[173]="-";for(var c in y.FUNCTION_KEYS){var l=y.FUNCTION_KEYS[c].toLowerCase();y[l]=parseInt(c,10)}for(var c in y.PRINTABLE_KEYS){var l=y.PRINTABLE_KEYS[c].toLowerCase();y[l]=parseInt(c,10)}f.mixin(y,y.MODIFIER_KEYS),f.mixin(y,y.PRINTABLE_KEYS),f.mixin(y,y.FUNCTION_KEYS),y.enter=y.return,y.escape=y.esc,y.del=y.delete,function(){for(var o=["cmd","ctrl","alt","shift"],u=Math.pow(2,o.length);u--;)y.KEY_MODS[u]=o.filter(function(d){return u&y.KEY_MODS[d]}).join("-")+"-"}(),y.KEY_MODS[0]="",y.KEY_MODS[-1]="input-",f.mixin(r,y),r.default=r,r.keyCodeToString=function(o){var u=y[o];return typeof u!="string"&&(u=String.fromCharCode(o)),u.toLowerCase()}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,r,v){var f=e("./keys"),y=e("./useragent"),C=null,h=0,p;function s(){p=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){return p={passive:!1},!0}})}catch{}}function a(){return p==null&&s(),p}function c(R,M,k){this.elem=R,this.type=M,this.callback=k}c.prototype.destroy=function(){o(this.elem,this.type,this.callback),this.elem=this.type=this.callback=void 0};var l=r.addListener=function(R,M,k,x){R.addEventListener(M,k,a()),x&&x.$toDestroy.push(new c(R,M,k))},o=r.removeListener=function(R,M,k){R.removeEventListener(M,k,a())};r.stopEvent=function(R){return r.stopPropagation(R),r.preventDefault(R),!1},r.stopPropagation=function(R){R.stopPropagation&&R.stopPropagation()},r.preventDefault=function(R){R.preventDefault&&R.preventDefault()},r.getButton=function(R){return R.type=="dblclick"?0:R.type=="contextmenu"||y.isMac&&R.ctrlKey&&!R.altKey&&!R.shiftKey?2:R.button},r.capture=function(R,M,k){var x=R&&R.ownerDocument||document;function L(O){M&&M(O),k&&k(O),o(x,"mousemove",M),o(x,"mouseup",L),o(x,"dragstart",L)}return l(x,"mousemove",M),l(x,"mouseup",L),l(x,"dragstart",L),L},r.addMouseWheelListener=function(R,M,k){l(R,"wheel",function(x){var L=.15,O=x.deltaX||0,I=x.deltaY||0;switch(x.deltaMode){case x.DOM_DELTA_PIXEL:x.wheelX=O*L,x.wheelY=I*L;break;case x.DOM_DELTA_LINE:var E=15;x.wheelX=O*E,x.wheelY=I*E;break;case x.DOM_DELTA_PAGE:var z=150;x.wheelX=O*z,x.wheelY=I*z;break}M(x)},k)},r.addMultiMouseDownListener=function(R,M,k,x,L){var O=0,I,E,z,P={2:"dblclick",3:"tripleclick",4:"quadclick"};function N(S){if(r.getButton(S)!==0?O=0:S.detail>1?(O++,O>4&&(O=1)):O=1,y.isIE){var A=Math.abs(S.clientX-I)>5||Math.abs(S.clientY-E)>5;(!z||A)&&(O=1),z&&clearTimeout(z),z=setTimeout(function(){z=null},M[O-1]||600),O==1&&(I=S.clientX,E=S.clientY)}if(S._clicks=O,k[x]("mousedown",S),O>4)O=0;else if(O>1)return k[x](P[O],S)}Array.isArray(R)||(R=[R]),R.forEach(function(S){l(S,"mousedown",N,L)})};function u(R){return 0|(R.ctrlKey?1:0)|(R.altKey?2:0)|(R.shiftKey?4:0)|(R.metaKey?8:0)}r.getModifierString=function(R){return f.KEY_MODS[u(R)]};function d(R,M,k){var x=u(M);if(!k&&M.code&&(k=f.$codeToKeyCode[M.code]||k),!y.isMac&&C){if(M.getModifierState&&(M.getModifierState("OS")||M.getModifierState("Win"))&&(x|=8),C.altGr)if((3&x)!=3)C.altGr=0;else return;if(k===18||k===17){var L=M.location;if(k===17&&L===1)C[k]==1&&(h=M.timeStamp);else if(k===18&&x===3&&L===2){var O=M.timeStamp-h;O<50&&(C.altGr=!0)}}}if(k in f.MODIFIER_KEYS&&(k=-1),!(!x&&k===13&&M.location===3&&(R(M,x,-k),M.defaultPrevented))){if(y.isChromeOS&&x&8){if(R(M,x,k),M.defaultPrevented)return;x&=-9}return!x&&!(k in f.FUNCTION_KEYS)&&!(k in f.PRINTABLE_KEYS)?!1:R(M,x,k)}}r.addCommandKeyListener=function(R,M,k){var x=null;l(R,"keydown",function(L){C[L.keyCode]=(C[L.keyCode]||0)+1;var O=d(M,L,L.keyCode);return x=L.defaultPrevented,O},k),l(R,"keypress",function(L){x&&(L.ctrlKey||L.altKey||L.shiftKey||L.metaKey)&&(r.stopEvent(L),x=null)},k),l(R,"keyup",function(L){C[L.keyCode]=null},k),C||(w(),l(window,"focus",w))};function w(){C=Object.create(null)}if(typeof window=="object"&&window.postMessage&&!y.isOldIE){var b=1;r.nextTick=function(R,M){M=M||window;var k="zero-timeout-message-"+b++,x=function(L){L.data==k&&(r.stopPropagation(L),o(M,"message",x),R())};l(M,"message",x),M.postMessage(k,"*")}}r.$idleBlocked=!1,r.onIdle=function(R,M){return setTimeout(function k(){r.$idleBlocked?setTimeout(k,100):R()},M)},r.$idleBlockId=null,r.blockIdle=function(R){r.$idleBlockId&&clearTimeout(r.$idleBlockId),r.$idleBlocked=!0,r.$idleBlockId=setTimeout(function(){r.$idleBlocked=!1},R||100)},r.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),r.nextFrame?r.nextFrame=r.nextFrame.bind(window):r.nextFrame=function(R){setTimeout(R,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(e,r,v){var f;v.exports={lineMode:!1,pasteCancelled:function(){return f&&f>Date.now()-50?!0:f=!1},cancel:function(){f=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,r,v){var f=e("../lib/event"),y=e("../config").nls,C=e("../lib/useragent"),h=e("../lib/dom"),p=e("../lib/lang"),s=e("../clipboard"),a=C.isChrome<18,c=C.isIE,l=C.isChrome>63,o=400,u=e("../lib/keys"),d=u.KEY_MODS,w=C.isIOS,b=w?/\s/:/\n/,R=C.isMobile,M=function(){function k(x,L){var O=this;this.host=L,this.text=h.createElement("textarea"),this.text.className="ace_text-input",this.text.setAttribute("wrap","off"),this.text.setAttribute("autocorrect","off"),this.text.setAttribute("autocapitalize","off"),this.text.setAttribute("spellcheck","false"),this.text.style.opacity="0",x.insertBefore(this.text,x.firstChild),this.copied=!1,this.pasted=!1,this.inComposition=!1,this.sendingText=!1,this.tempStyle="",R||(this.text.style.fontSize="1px"),this.commandMode=!1,this.ignoreFocusEvents=!1,this.lastValue="",this.lastSelectionStart=0,this.lastSelectionEnd=0,this.lastRestoreEnd=0,this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,this.numberOfExtraLines=0;try{this.$isFocused=document.activeElement===this.text}catch{}this.cancelComposition=this.cancelComposition.bind(this),this.setAriaOptions({role:"textbox"}),f.addListener(this.text,"blur",function(I){O.ignoreFocusEvents||(L.onBlur(I),O.$isFocused=!1)},L),f.addListener(this.text,"focus",function(I){if(!O.ignoreFocusEvents){if(O.$isFocused=!0,C.isEdge)try{if(!document.hasFocus())return}catch{}L.onFocus(I),C.isEdge?setTimeout(O.resetSelection.bind(O)):O.resetSelection()}},L),this.$focusScroll=!1,L.on("beforeEndOperation",function(){var I=L.curOp,E=I&&I.command&&I.command.name;if(E!="insertstring"){var z=E&&(I.docChanged||I.selectionChanged);O.inComposition&&z&&(O.lastValue=O.text.value="",O.onCompositionEnd()),O.resetSelection()}}),L.on("changeSelection",this.setAriaLabel.bind(this)),this.resetSelection=w?this.$resetSelectionIOS:this.$resetSelection,this.$isFocused&&L.onFocus(),this.inputHandler=null,this.afterContextMenu=!1,f.addCommandKeyListener(this.text,function(I,E,z){if(!O.inComposition)return L.onCommandKey(I,E,z)},L),f.addListener(this.text,"select",this.onSelect.bind(this),L),f.addListener(this.text,"input",this.onInput.bind(this),L),f.addListener(this.text,"cut",this.onCut.bind(this),L),f.addListener(this.text,"copy",this.onCopy.bind(this),L),f.addListener(this.text,"paste",this.onPaste.bind(this),L),(!("oncut"in this.text)||!("oncopy"in this.text)||!("onpaste"in this.text))&&f.addListener(x,"keydown",function(I){if(!(C.isMac&&!I.metaKey||!I.ctrlKey))switch(I.keyCode){case 67:O.onCopy(I);break;case 86:O.onPaste(I);break;case 88:O.onCut(I);break}},L),this.syncComposition=p.delayedCall(this.onCompositionUpdate.bind(this),50).schedule.bind(null,null),f.addListener(this.text,"compositionstart",this.onCompositionStart.bind(this),L),f.addListener(this.text,"compositionupdate",this.onCompositionUpdate.bind(this),L),f.addListener(this.text,"keyup",this.onKeyup.bind(this),L),f.addListener(this.text,"keydown",this.syncComposition.bind(this),L),f.addListener(this.text,"compositionend",this.onCompositionEnd.bind(this),L),this.closeTimeout,f.addListener(this.text,"mouseup",this.$onContextMenu.bind(this),L),f.addListener(this.text,"mousedown",function(I){I.preventDefault(),O.onContextMenuClose()},L),f.addListener(L.renderer.scroller,"contextmenu",this.$onContextMenu.bind(this),L),f.addListener(this.text,"contextmenu",this.$onContextMenu.bind(this),L),w&&this.addIosSelectionHandler(x,L,this.text)}return k.prototype.addIosSelectionHandler=function(x,L,O){var I=this,E=null,z=!1;O.addEventListener("keydown",function(N){E&&clearTimeout(E),z=!0},!0),O.addEventListener("keyup",function(N){E=setTimeout(function(){z=!1},100)},!0);var P=function(N){if(document.activeElement===O&&!(z||I.inComposition||L.$mouseHandler.isMousePressed)&&!I.copied){var S=O.selectionStart,A=O.selectionEnd,D=null,j=0;if(S==0?D=u.up:S==1?D=u.home:A>I.lastSelectionEnd&&I.lastValue[A]==`
167
+ `?D=u.end:S<I.lastSelectionStart&&I.lastValue[S-1]==" "?(D=u.left,j=d.option):S<I.lastSelectionStart||S==I.lastSelectionStart&&I.lastSelectionEnd!=I.lastSelectionStart&&S==A?D=u.left:A>I.lastSelectionEnd&&I.lastValue.slice(0,A).split(`
168
+ `).length>2?D=u.down:A>I.lastSelectionEnd&&I.lastValue[A-1]==" "?(D=u.right,j=d.option):(A>I.lastSelectionEnd||A==I.lastSelectionEnd&&I.lastSelectionEnd!=I.lastSelectionStart&&S==A)&&(D=u.right),S!==A&&(j|=d.shift),D){var U=L.onCommandKey({},j,D);if(!U&&L.commands){D=u.keyCodeToString(D);var q=L.commands.findKeyCommand(j,D);q&&L.execCommand(q)}I.lastSelectionStart=S,I.lastSelectionEnd=A,I.resetSelection("")}}};document.addEventListener("selectionchange",P),L.on("destroy",function(){document.removeEventListener("selectionchange",P)})},k.prototype.onContextMenuClose=function(){var x=this;clearTimeout(this.closeTimeout),this.closeTimeout=setTimeout(function(){x.tempStyle&&(x.text.style.cssText=x.tempStyle,x.tempStyle=""),x.host.renderer.$isMousePressed=!1,x.host.renderer.$keepTextAreaAtCursor&&x.host.renderer.$moveTextAreaToCursor()},0)},k.prototype.$onContextMenu=function(x){this.host.textInput.onContextMenu(x),this.onContextMenuClose()},k.prototype.onKeyup=function(x){x.keyCode==27&&this.text.value.length<this.text.selectionStart&&(this.inComposition||(this.lastValue=this.text.value),this.lastSelectionStart=this.lastSelectionEnd=-1,this.resetSelection()),this.syncComposition()},k.prototype.cancelComposition=function(){this.ignoreFocusEvents=!0,this.text.blur(),this.text.focus(),this.ignoreFocusEvents=!1},k.prototype.onCompositionStart=function(x){if(!(this.inComposition||!this.host.onCompositionStart||this.host.$readOnly)&&(this.inComposition={},!this.commandMode)){x.data&&(this.inComposition.useTextareaForIME=!1),setTimeout(this.onCompositionUpdate.bind(this),0),this.host._signal("compositionStart"),this.host.on("mousedown",this.cancelComposition);var L=this.host.getSelectionRange();L.end.row=L.start.row,L.end.column=L.start.column,this.inComposition.markerRange=L,this.inComposition.selectionStart=this.lastSelectionStart,this.host.onCompositionStart(this.inComposition),this.inComposition.useTextareaForIME?(this.lastValue=this.text.value="",this.lastSelectionStart=0,this.lastSelectionEnd=0):(this.text.msGetInputContext&&(this.inComposition.context=this.text.msGetInputContext()),this.text.getInputContext&&(this.inComposition.context=this.text.getInputContext()))}},k.prototype.onCompositionUpdate=function(){if(!(!this.inComposition||!this.host.onCompositionUpdate||this.host.$readOnly)){if(this.commandMode)return this.cancelComposition();if(this.inComposition.useTextareaForIME)this.host.onCompositionUpdate(this.text.value);else{var x=this.text.value;this.sendText(x),this.inComposition.markerRange&&(this.inComposition.context&&(this.inComposition.markerRange.start.column=this.inComposition.selectionStart=this.inComposition.context.compositionStartOffset),this.inComposition.markerRange.end.column=this.inComposition.markerRange.start.column+this.lastSelectionEnd-this.inComposition.selectionStart+this.lastRestoreEnd)}}},k.prototype.onCompositionEnd=function(x){!this.host.onCompositionEnd||this.host.$readOnly||(this.inComposition=!1,this.host.onCompositionEnd(),this.host.off("mousedown",this.cancelComposition),x&&this.onInput())},k.prototype.onCut=function(x){this.doCopy(x,!0)},k.prototype.onCopy=function(x){this.doCopy(x,!1)},k.prototype.onPaste=function(x){var L=this.handleClipboardData(x);s.pasteCancelled()||(typeof L=="string"?(L&&this.host.onPaste(L,x),C.isIE&&setTimeout(this.resetSelection),f.preventDefault(x)):(this.text.value="",this.pasted=!0))},k.prototype.doCopy=function(x,L){var O=this,I=this.host.getCopyText();if(!I)return f.preventDefault(x);this.handleClipboardData(x,I)?(w&&(this.resetSelection(I),this.copied=I,setTimeout(function(){O.copied=!1},10)),L?this.host.onCut():this.host.onCopy(),f.preventDefault(x)):(this.copied=!0,this.text.value=I,this.text.select(),setTimeout(function(){O.copied=!1,O.resetSelection(),L?O.host.onCut():O.host.onCopy()}))},k.prototype.handleClipboardData=function(x,L,O){var I=x.clipboardData||window.clipboardData;if(!(!I||a)){var E=c||O?"Text":"text/plain";try{return L?I.setData(E,L)!==!1:I.getData(E)}catch(z){if(!O)return this.handleClipboardData(z,L,!0)}}},k.prototype.onInput=function(x){if(this.inComposition)return this.onCompositionUpdate();if(x&&x.inputType){if(x.inputType=="historyUndo")return this.host.execCommand("undo");if(x.inputType=="historyRedo")return this.host.execCommand("redo")}var L=this.text.value,O=this.sendText(L,!0);(L.length>o+100||b.test(O)||R&&this.lastSelectionStart<1&&this.lastSelectionStart==this.lastSelectionEnd)&&this.resetSelection()},k.prototype.sendText=function(x,L){if(this.afterContextMenu&&(this.afterContextMenu=!1),this.pasted)return this.resetSelection(),x&&this.host.onPaste(x),this.pasted=!1,"";for(var O=this.text.selectionStart,I=this.text.selectionEnd,E=this.lastSelectionStart,z=this.lastValue.length-this.lastSelectionEnd,P=x,N=x.length-O,S=x.length-I,A=0;E>0&&this.lastValue[A]==x[A];)A++,E--;for(P=P.slice(A),A=1;z>0&&this.lastValue.length-A>this.lastSelectionStart-1&&this.lastValue[this.lastValue.length-A]==x[x.length-A];)A++,z--;N-=A-1,S-=A-1;var D=P.length-A+1;if(D<0&&(E=-D,D=0),P=P.slice(0,D),!L&&!P&&!N&&!E&&!z&&!S)return"";this.sendingText=!0;var j=!1;return C.isAndroid&&P==". "&&(P=" ",j=!0),P&&!E&&!z&&!N&&!S||this.commandMode?this.host.onTextInput(P):this.host.onTextInput(P,{extendLeft:E,extendRight:z,restoreStart:N,restoreEnd:S}),this.sendingText=!1,this.lastValue=x,this.lastSelectionStart=O,this.lastSelectionEnd=I,this.lastRestoreEnd=S,j?`
169
+ `:P},k.prototype.onSelect=function(x){var L=this;if(!this.inComposition){var O=function(I){return I.selectionStart===0&&I.selectionEnd>=L.lastValue.length&&I.value===L.lastValue&&L.lastValue&&I.selectionEnd!==L.lastSelectionEnd};this.copied?this.copied=!1:O(this.text)?(this.host.selectAll(),this.resetSelection()):R&&this.text.selectionStart!=this.lastSelectionStart&&this.resetSelection()}},k.prototype.$resetSelectionIOS=function(x){if(!(!this.$isFocused||this.copied&&!x||this.sendingText)){x||(x="");var L=`
170
+ ab`+x+`cde fg
171
+ `;L!=this.text.value&&(this.text.value=this.lastValue=L);var O=4,I=4+(x.length||(this.host.selection.isEmpty()?0:1));(this.lastSelectionStart!=O||this.lastSelectionEnd!=I)&&this.text.setSelectionRange(O,I),this.lastSelectionStart=O,this.lastSelectionEnd=I}},k.prototype.$resetSelection=function(){var x=this;if(!(this.inComposition||this.sendingText)&&!(!this.$isFocused&&!this.afterContextMenu)){this.inComposition=!0;var L=0,O=0,I="",E=function(q,Z){for(var te=Z,he=1;he<=q-x.rowStart&&he<2*x.numberOfExtraLines+1;he++)te+=x.host.session.getLine(q-he).length+1;return te};if(this.host.session){var z=this.host.selection,P=z.getRange(),N=z.cursor.row;N===this.rowEnd+1?(this.rowStart=this.rowEnd+1,this.rowEnd=this.rowStart+2*this.numberOfExtraLines):N===this.rowStart-1?(this.rowEnd=this.rowStart-1,this.rowStart=this.rowEnd-2*this.numberOfExtraLines):(N<this.rowStart-1||N>this.rowEnd+1)&&(this.rowStart=N>this.numberOfExtraLines?N-this.numberOfExtraLines:0,this.rowEnd=N>this.numberOfExtraLines?N+this.numberOfExtraLines:2*this.numberOfExtraLines);for(var S=[],A=this.rowStart;A<=this.rowEnd;A++)S.push(this.host.session.getLine(A));if(I=S.join(`
172
+ `),L=E(P.start.row,P.start.column),O=E(P.end.row,P.end.column),P.start.row<this.rowStart){var D=this.host.session.getLine(this.rowStart-1);L=P.start.row<this.rowStart-1?0:L,O+=D.length+1,I=D+`
173
+ `+I}else if(P.end.row>this.rowEnd){var j=this.host.session.getLine(this.rowEnd+1);O=P.end.row>this.rowEnd+1?j.length:P.end.column,O+=I.length+1,I=I+`
174
+ `+j}else R&&N>0&&(I=`
175
+ `+I,O+=1,L+=1);I.length>o&&(L<o&&O<o?I=I.slice(0,o):(I=`
176
+ `,L==O?L=O=0:(L=0,O=1)));var U=I+`
177
+
178
+ `;U!=this.lastValue&&(this.text.value=this.lastValue=U,this.lastSelectionStart=this.lastSelectionEnd=U.length)}if(this.afterContextMenu&&(this.lastSelectionStart=this.text.selectionStart,this.lastSelectionEnd=this.text.selectionEnd),this.lastSelectionEnd!=O||this.lastSelectionStart!=L||this.text.selectionEnd!=this.lastSelectionEnd)try{this.text.setSelectionRange(L,O),this.lastSelectionStart=L,this.lastSelectionEnd=O}catch{}this.inComposition=!1}},k.prototype.setHost=function(x){this.host=x},k.prototype.setNumberOfExtraLines=function(x){if(this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,x<0){this.numberOfExtraLines=0;return}this.numberOfExtraLines=x},k.prototype.setAriaLabel=function(){var x="";if(this.host.$textInputAriaLabel&&(x+="".concat(this.host.$textInputAriaLabel,", ")),this.host.session){var L=this.host.session.selection.cursor.row;x+=y("text-input.aria-label","Cursor at row $0",[L+1])}this.text.setAttribute("aria-label",x)},k.prototype.setAriaOptions=function(x){x.activeDescendant?(this.text.setAttribute("aria-haspopup","true"),this.text.setAttribute("aria-autocomplete",x.inline?"both":"list"),this.text.setAttribute("aria-activedescendant",x.activeDescendant)):(this.text.setAttribute("aria-haspopup","false"),this.text.setAttribute("aria-autocomplete","both"),this.text.removeAttribute("aria-activedescendant")),x.role&&this.text.setAttribute("role",x.role),x.setLabel&&(this.text.setAttribute("aria-roledescription",y("text-input.aria-roledescription","editor")),this.setAriaLabel())},k.prototype.focus=function(){var x=this;if(this.setAriaOptions({setLabel:this.host.renderer.enableKeyboardAccessibility}),this.tempStyle||l||this.$focusScroll=="browser")return this.text.focus({preventScroll:!0});var L=this.text.style.top;this.text.style.position="fixed",this.text.style.top="0px";try{var O=this.text.getBoundingClientRect().top!=0}catch{return}var I=[];if(O)for(var E=this.text.parentElement;E&&E.nodeType==1;)I.push(E),E.setAttribute("ace_nocontext","true"),!E.parentElement&&E.getRootNode?E=E.getRootNode().host:E=E.parentElement;this.text.focus({preventScroll:!0}),O&&I.forEach(function(z){z.removeAttribute("ace_nocontext")}),setTimeout(function(){x.text.style.position="",x.text.style.top=="0px"&&(x.text.style.top=L)},0)},k.prototype.blur=function(){this.text.blur()},k.prototype.isFocused=function(){return this.$isFocused},k.prototype.setInputHandler=function(x){this.inputHandler=x},k.prototype.getInputHandler=function(){return this.inputHandler},k.prototype.getElement=function(){return this.text},k.prototype.setCommandMode=function(x){this.commandMode=x,this.text.readOnly=!1},k.prototype.setReadOnly=function(x){this.commandMode||(this.text.readOnly=x)},k.prototype.setCopyWithEmptySelection=function(x){},k.prototype.onContextMenu=function(x){this.afterContextMenu=!0,this.resetSelection(),this.host._emit("nativecontextmenu",{target:this.host,domEvent:x}),this.moveToMouse(x,!0)},k.prototype.moveToMouse=function(x,L){var O=this;this.tempStyle||(this.tempStyle=this.text.style.cssText),this.text.style.cssText=(L?"z-index:100000;":"")+(C.isIE?"opacity:0.1;":"")+"text-indent: -"+(this.lastSelectionStart+this.lastSelectionEnd)*this.host.renderer.characterWidth*.5+"px;";var I=this.host.container.getBoundingClientRect(),E=h.computedStyle(this.host.container),z=I.top+(parseInt(E.borderTopWidth)||0),P=I.left+(parseInt(E.borderLeftWidth)||0),N=I.bottom-z-this.text.clientHeight-2,S=function(A){h.translate(O.text,A.clientX-P-2,Math.min(A.clientY-z-2,N))};S(x),x.type=="mousedown"&&(this.host.renderer.$isMousePressed=!0,clearTimeout(this.closeTimeout),C.isWin&&f.capture(this.host.container,S,this.onContextMenuClose.bind(this)))},k.prototype.destroy=function(){this.text.parentElement&&this.text.parentElement.removeChild(this.text)},k}();r.TextInput=M,r.$setUserAgentForTests=function(k,x){R=k,w=x}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(e,r,v){var f=e("../lib/useragent"),y=0,C=550,h=function(){function a(c){c.$clickSelection=null;var l=c.editor;l.setDefaultHandler("mousedown",this.onMouseDown.bind(c)),l.setDefaultHandler("dblclick",this.onDoubleClick.bind(c)),l.setDefaultHandler("tripleclick",this.onTripleClick.bind(c)),l.setDefaultHandler("quadclick",this.onQuadClick.bind(c)),l.setDefaultHandler("mousewheel",this.onMouseWheel.bind(c));var o=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];o.forEach(function(u){c[u]=this[u]},this),c.selectByLines=this.extendSelectionBy.bind(c,"getLineRange"),c.selectByWords=this.extendSelectionBy.bind(c,"getWordRange")}return a.prototype.onMouseDown=function(c){var l=c.inSelection(),o=c.getDocumentPosition();this.mousedownEvent=c;var u=this.editor,d=c.getButton();if(d!==0){var w=u.getSelectionRange(),b=w.isEmpty();(b||d==1)&&u.selection.moveToPosition(o),d==2&&(u.textInput.onContextMenu(c.domEvent),f.isMozilla||c.preventDefault());return}if(this.mousedownEvent.time=Date.now(),l&&!u.isFocused()&&(u.focus(),this.$focusTimeout&&!this.$clickSelection&&!u.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(c);return}return this.captureMouse(c),this.startSelect(o,c.domEvent._clicks>1),c.preventDefault()},a.prototype.startSelect=function(c,l){c=c||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var o=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?o.selection.selectToPosition(c):l||o.selection.moveToPosition(c),l||this.select(),o.setStyle("ace_selecting"),this.setState("select"))},a.prototype.select=function(){var c,l=this.editor,o=l.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var u=this.$clickSelection.comparePoint(o);if(u==-1)c=this.$clickSelection.end;else if(u==1)c=this.$clickSelection.start;else{var d=s(this.$clickSelection,o);o=d.cursor,c=d.anchor}l.selection.setSelectionAnchor(c.row,c.column)}l.selection.selectToPosition(o),l.renderer.scrollCursorIntoView()},a.prototype.extendSelectionBy=function(c){var l,o=this.editor,u=o.renderer.screenToTextCoordinates(this.x,this.y),d=o.selection[c](u.row,u.column);if(this.$clickSelection){var w=this.$clickSelection.comparePoint(d.start),b=this.$clickSelection.comparePoint(d.end);if(w==-1&&b<=0)l=this.$clickSelection.end,(d.end.row!=u.row||d.end.column!=u.column)&&(u=d.start);else if(b==1&&w>=0)l=this.$clickSelection.start,(d.start.row!=u.row||d.start.column!=u.column)&&(u=d.end);else if(w==-1&&b==1)u=d.end,l=d.start;else{var R=s(this.$clickSelection,u);u=R.cursor,l=R.anchor}o.selection.setSelectionAnchor(l.row,l.column)}o.selection.selectToPosition(u),o.renderer.scrollCursorIntoView()},a.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},a.prototype.focusWait=function(){var c=p(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),l=Date.now();(c>y||l-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},a.prototype.onDoubleClick=function(c){var l=c.getDocumentPosition(),o=this.editor,u=o.session,d=u.getBracketRange(l);d?(d.isEmpty()&&(d.start.column--,d.end.column++),this.setState("select")):(d=o.selection.getWordRange(l.row,l.column),this.setState("selectByWords")),this.$clickSelection=d,this.select()},a.prototype.onTripleClick=function(c){var l=c.getDocumentPosition(),o=this.editor;this.setState("selectByLines");var u=o.getSelectionRange();u.isMultiLine()&&u.contains(l.row,l.column)?(this.$clickSelection=o.selection.getLineRange(u.start.row),this.$clickSelection.end=o.selection.getLineRange(u.end.row).end):this.$clickSelection=o.selection.getLineRange(l.row),this.select()},a.prototype.onQuadClick=function(c){var l=this.editor;l.selectAll(),this.$clickSelection=l.getSelectionRange(),this.setState("selectAll")},a.prototype.onMouseWheel=function(c){if(!c.getAccelKey()){c.getShiftKey()&&c.wheelY&&!c.wheelX&&(c.wheelX=c.wheelY,c.wheelY=0);var l=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var o=this.$lastScroll,u=c.domEvent.timeStamp,d=u-o.t,w=d?c.wheelX/d:o.vx,b=d?c.wheelY/d:o.vy;d<C&&(w=(w+o.vx)/2,b=(b+o.vy)/2);var R=Math.abs(w/b),M=!1;if(R>=1&&l.renderer.isScrollableBy(c.wheelX*c.speed,0)&&(M=!0),R<=1&&l.renderer.isScrollableBy(0,c.wheelY*c.speed)&&(M=!0),M)o.allowed=u;else if(u-o.allowed<C){var k=Math.abs(w)<=1.5*Math.abs(o.vx)&&Math.abs(b)<=1.5*Math.abs(o.vy);k?(M=!0,o.allowed=u):o.allowed=0}if(o.t=u,o.vx=w,o.vy=b,M)return l.renderer.scrollBy(c.wheelX*c.speed,c.wheelY*c.speed),c.stop()}},a}();h.prototype.selectEnd=h.prototype.selectByLinesEnd,h.prototype.selectAllEnd=h.prototype.selectByLinesEnd,h.prototype.selectByWordsEnd=h.prototype.selectByLinesEnd,r.DefaultHandlers=h;function p(a,c,l,o){return Math.sqrt(Math.pow(l-a,2)+Math.pow(o-c,2))}function s(a,c){if(a.start.row==a.end.row)var l=2*c.column-a.start.column-a.end.column;else if(a.start.row==a.end.row-1&&!a.start.column&&!a.end.column)var l=c.column-4;else var l=2*c.row-a.start.row-a.end.row;return l<0?{cursor:a.start,anchor:a.end}:{cursor:a.end,anchor:a.start}}}),ace.define("ace/lib/scroll",["require","exports","module"],function(e,r,v){r.preventParentScroll=function(f){f.stopPropagation();var y=f.currentTarget,C=y.scrollHeight>y.clientHeight;C||f.preventDefault()}}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(e,r,v){var f=this&&this.__extends||function(){var u=function(d,w){return u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,R){b.__proto__=R}||function(b,R){for(var M in R)Object.prototype.hasOwnProperty.call(R,M)&&(b[M]=R[M])},u(d,w)};return function(d,w){if(typeof w!="function"&&w!==null)throw new TypeError("Class extends value "+String(w)+" is not a constructor or null");u(d,w);function b(){this.constructor=d}d.prototype=w===null?Object.create(w):(b.prototype=w.prototype,new b)}}(),y=this&&this.__values||function(u){var d=typeof Symbol=="function"&&Symbol.iterator,w=d&&u[d],b=0;if(w)return w.call(u);if(u&&typeof u.length=="number")return{next:function(){return u&&b>=u.length&&(u=void 0),{value:u&&u[b++],done:!u}}};throw new TypeError(d?"Object is not iterable.":"Symbol.iterator is not defined.")},C=e("./lib/dom");e("./lib/event");var h=e("./range").Range,p=e("./lib/scroll").preventParentScroll,s="ace_tooltip",a=function(){function u(d){this.isOpen=!1,this.$element=null,this.$parentNode=d}return u.prototype.$init=function(){return this.$element=C.createElement("div"),this.$element.className=s,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},u.prototype.getElement=function(){return this.$element||this.$init()},u.prototype.setText=function(d){this.getElement().textContent=d},u.prototype.setHtml=function(d){this.getElement().innerHTML=d},u.prototype.setPosition=function(d,w){this.getElement().style.left=d+"px",this.getElement().style.top=w+"px"},u.prototype.setClassName=function(d){C.addCssClass(this.getElement(),d)},u.prototype.setTheme=function(d){this.$element.className=s+" "+(d.isDark?"ace_dark ":"")+(d.cssClass||"")},u.prototype.show=function(d,w,b){d!=null&&this.setText(d),w!=null&&b!=null&&this.setPosition(w,b),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},u.prototype.hide=function(d){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=s,this.isOpen=!1)},u.prototype.getHeight=function(){return this.getElement().offsetHeight},u.prototype.getWidth=function(){return this.getElement().offsetWidth},u.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},u}(),c=function(){function u(){this.popups=[]}return u.prototype.addPopup=function(d){this.popups.push(d),this.updatePopups()},u.prototype.removePopup=function(d){var w=this.popups.indexOf(d);w!==-1&&(this.popups.splice(w,1),this.updatePopups())},u.prototype.updatePopups=function(){var d,w,b,R;this.popups.sort(function(P,N){return N.priority-P.priority});var M=[];try{for(var k=y(this.popups),x=k.next();!x.done;x=k.next()){var L=x.value,O=!0;try{for(var I=(b=void 0,y(M)),E=I.next();!E.done;E=I.next()){var z=E.value;if(this.doPopupsOverlap(z,L)){O=!1;break}}}catch(P){b={error:P}}finally{try{E&&!E.done&&(R=I.return)&&R.call(I)}finally{if(b)throw b.error}}O?M.push(L):L.hide()}}catch(P){d={error:P}}finally{try{x&&!x.done&&(w=k.return)&&w.call(k)}finally{if(d)throw d.error}}},u.prototype.doPopupsOverlap=function(d,w){var b=d.getElement().getBoundingClientRect(),R=w.getElement().getBoundingClientRect();return b.left<R.right&&b.right>R.left&&b.top<R.bottom&&b.bottom>R.top},u}(),l=new c;r.popupManager=l,r.Tooltip=a;var o=function(u){f(d,u);function d(w){w===void 0&&(w=document.body);var b=u.call(this,w)||this;b.timeout=void 0,b.lastT=0,b.idleTime=350,b.lastEvent=void 0,b.onMouseOut=b.onMouseOut.bind(b),b.onMouseMove=b.onMouseMove.bind(b),b.waitForHover=b.waitForHover.bind(b),b.hide=b.hide.bind(b);var R=b.getElement();return R.style.whiteSpace="pre-wrap",R.style.pointerEvents="auto",R.addEventListener("mouseout",b.onMouseOut),R.tabIndex=-1,R.addEventListener("blur",(function(){R.contains(document.activeElement)||this.hide()}).bind(b)),R.addEventListener("wheel",p),b}return d.prototype.addToEditor=function(w){w.on("mousemove",this.onMouseMove),w.on("mousedown",this.hide),w.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},d.prototype.removeFromEditor=function(w){w.off("mousemove",this.onMouseMove),w.off("mousedown",this.hide),w.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},d.prototype.onMouseMove=function(w,b){this.lastEvent=w,this.lastT=Date.now();var R=b.$mouseHandler.isMousePressed;if(this.isOpen){var M=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(M.row,M.column)||R||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||R||(this.lastEvent=w,this.timeout=setTimeout(this.waitForHover,this.idleTime))},d.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var w=Date.now()-this.lastT;if(this.idleTime-w>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-w);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},d.prototype.isOutsideOfText=function(w){var b=w.editor,R=w.getDocumentPosition(),M=b.session.getLine(R.row);if(R.column==M.length){var k=b.renderer.pixelToScreenCoordinates(w.clientX,w.clientY),x=b.session.documentToScreenPosition(R.row,R.column);if(x.column!=k.column||x.row!=k.row)return!0}return!1},d.prototype.setDataProvider=function(w){this.$gatherData=w},d.prototype.showForRange=function(w,b,R,M){var k=10;if(!(M&&M!=this.lastEvent)&&!(this.isOpen&&document.activeElement==this.getElement())){var x=w.renderer;this.isOpen||(l.addPopup(this),this.$registerCloseEvents(),this.setTheme(x.theme)),this.isOpen=!0,this.addMarker(b,w.session),this.range=h.fromPoints(b.start,b.end);var L=x.textToScreenCoordinates(b.start.row,b.start.column),O=x.scroller.getBoundingClientRect();L.pageX<O.left&&(L.pageX=O.left);var I=this.getElement();I.innerHTML="",I.appendChild(R),I.style.maxHeight="",I.style.display="block";var E=I.clientHeight,z=I.clientWidth,P=window.innerHeight-L.pageY-x.lineHeight,N=!0;L.pageY-E<0&&L.pageY<P&&(N=!1),I.style.maxHeight=(N?L.pageY:P)-k+"px",I.style.top=N?"":L.pageY+x.lineHeight+"px",I.style.bottom=N?window.innerHeight-L.pageY+"px":"",I.style.left=Math.min(L.pageX,window.innerWidth-z-k)+"px"}},d.prototype.addMarker=function(w,b){this.marker&&this.$markerSession.removeMarker(this.marker),this.$markerSession=b,this.marker=b&&b.addMarker(w,"ace_highlight-marker","text")},d.prototype.hide=function(w){!w&&document.activeElement==this.getElement()||w&&w.target&&(w.type!="keydown"||w.ctrlKey||w.metaKey)&&this.$element.contains(w.target)||(this.lastEvent=null,this.timeout&&clearTimeout(this.timeout),this.timeout=null,this.addMarker(null),this.isOpen&&(this.$removeCloseEvents(),this.getElement().style.display="none",this.isOpen=!1,l.removePopup(this)))},d.prototype.$registerCloseEvents=function(){window.addEventListener("keydown",this.hide,!0),window.addEventListener("wheel",this.hide,!0),window.addEventListener("mousedown",this.hide,!0)},d.prototype.$removeCloseEvents=function(){window.removeEventListener("keydown",this.hide,!0),window.removeEventListener("wheel",this.hide,!0),window.removeEventListener("mousedown",this.hide,!0)},d.prototype.onMouseOut=function(w){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.lastEvent=null,this.isOpen&&(!w.relatedTarget||this.getElement().contains(w.relatedTarget)||w&&w.currentTarget.contains(w.relatedTarget)||w.relatedTarget.classList.contains("ace_content")||this.hide())},d}(a);r.HoverTooltip=o}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/tooltip","ace/config"],function(e,r,v){var f=this&&this.__extends||function(){var u=function(d,w){return u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,R){b.__proto__=R}||function(b,R){for(var M in R)Object.prototype.hasOwnProperty.call(R,M)&&(b[M]=R[M])},u(d,w)};return function(d,w){if(typeof w!="function"&&w!==null)throw new TypeError("Class extends value "+String(w)+" is not a constructor or null");u(d,w);function b(){this.constructor=d}d.prototype=w===null?Object.create(w):(b.prototype=w.prototype,new b)}}(),y=this&&this.__values||function(u){var d=typeof Symbol=="function"&&Symbol.iterator,w=d&&u[d],b=0;if(w)return w.call(u);if(u&&typeof u.length=="number")return{next:function(){return u&&b>=u.length&&(u=void 0),{value:u&&u[b++],done:!u}}};throw new TypeError(d?"Object is not iterable.":"Symbol.iterator is not defined.")},C=e("../lib/dom"),h=e("../lib/event"),p=e("../tooltip").Tooltip,s=e("../config").nls,a=5,c=3;r.GUTTER_TOOLTIP_LEFT_OFFSET=a,r.GUTTER_TOOLTIP_TOP_OFFSET=c;function l(u){var d=u.editor,w=d.renderer.$gutterLayer,b=new o(d,!0);u.editor.setDefaultHandler("guttermousedown",function(O){if(!(!d.isFocused()||O.getButton()!=0)){var I=w.getRegion(O);if(I!="foldWidgets"){var E=O.getDocumentPosition().row,z=d.session.selection;if(O.getShiftKey())z.selectTo(E,0);else{if(O.domEvent.detail==2)return d.selectAll(),O.preventDefault();u.$clickSelection=d.selection.getLineRange(E)}return u.setState("selectByLines"),u.captureMouse(O),O.preventDefault()}}});var R,M;function k(){var O=M.getDocumentPosition().row,I=d.session.getLength();if(O==I){var E=d.renderer.pixelToScreenCoordinates(0,M.y).row,z=M.$pos;if(E>d.session.documentToScreenRow(z.row,z.column))return x()}if(b.showTooltip(O),!!b.isOpen)if(d.on("mousewheel",x),d.on("changeSession",x),window.addEventListener("keydown",x,!0),u.$tooltipFollowsMouse)L(M);else{var P=M.getGutterRow(),N=w.$lines.get(P);if(N){var S=N.element.querySelector(".ace_gutter_annotation"),A=S.getBoundingClientRect(),D=b.getElement().style;D.left=A.right-a+"px",D.top=A.bottom-c+"px"}else L(M)}}function x(O){O&&O.type==="keydown"&&(O.ctrlKey||O.metaKey)||O&&O.type==="mouseout"&&(!O.relatedTarget||b.getElement().contains(O.relatedTarget))||(R&&(R=clearTimeout(R)),b.isOpen&&(b.hideTooltip(),d.off("mousewheel",x),d.off("changeSession",x),window.removeEventListener("keydown",x,!0)))}function L(O){b.setPosition(O.x,O.y)}u.editor.setDefaultHandler("guttermousemove",function(O){var I=O.domEvent.target||O.domEvent.srcElement;if(C.hasCssClass(I,"ace_fold-widget")||C.hasCssClass(I,"ace_custom-widget"))return x();b.isOpen&&u.$tooltipFollowsMouse&&L(O),M=O,!R&&(R=setTimeout(function(){R=null,M&&!u.isMousePressed&&k()},50))}),h.addListener(d.renderer.$gutter,"mouseout",function(O){M=null,b.isOpen&&(R=setTimeout(function(){R=null,x(O)},50))},d)}r.GutterHandler=l;var o=function(u){f(d,u);function d(w,b){b===void 0&&(b=!1);var R=u.call(this,w.container)||this;R.id="gt"+ ++d.$uid,R.editor=w,R.visibleTooltipRow;var M=R.getElement();return M.setAttribute("role","tooltip"),M.setAttribute("id",R.id),M.style.pointerEvents="auto",b&&(R.onMouseOut=R.onMouseOut.bind(R),M.addEventListener("mouseout",R.onMouseOut)),R}return d.prototype.onMouseOut=function(w){this.isOpen&&(!w.relatedTarget||this.getElement().contains(w.relatedTarget)||w&&w.currentTarget.contains(w.relatedTarget)||this.hideTooltip())},d.prototype.setPosition=function(w,b){var R=window.innerWidth||document.documentElement.clientWidth,M=window.innerHeight||document.documentElement.clientHeight,k=this.getWidth(),x=this.getHeight();w+=15,b+=15,w+k>R&&(w-=w+k-R),b+x>M&&(b-=20+x),p.prototype.setPosition.call(this,w,b)},Object.defineProperty(d,"annotationLabels",{get:function(){return{error:{singular:s("gutter-tooltip.aria-label.error.singular","error"),plural:s("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:s("gutter-tooltip.aria-label.security.singular","security finding"),plural:s("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:s("gutter-tooltip.aria-label.warning.singular","warning"),plural:s("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:s("gutter-tooltip.aria-label.info.singular","information message"),plural:s("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:s("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:s("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),d.prototype.showTooltip=function(w){var b,R=this.editor.renderer.$gutterLayer,M=R.$annotations[w],k;M?k={displayText:Array.from(M.displayText),type:Array.from(M.type)}:k={displayText:[],type:[]};var x=R.session.getFoldLine(w);if(x&&R.$showFoldedAnnotations){for(var L={error:[],security:[],warning:[],info:[],hint:[]},O={error:1,security:2,warning:3,info:4,hint:5},I,E=w+1;E<=x.end.row;E++)if(R.$annotations[E])for(var z=0;z<R.$annotations[E].text.length;z++){var P=R.$annotations[E].type[z];L[P].push(R.$annotations[E].text[z]),(!I||O[P]<O[I])&&(I=P)}if(["error","security","warning"].includes(I)){var N="".concat(d.annotationsToSummaryString(L)," in folded code.");k.displayText.push(N),k.type.push(I+"_fold")}}if(k.displayText.length===0)return this.hideTooltip();for(var S={error:[],security:[],warning:[],info:[],hint:[]},A=R.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",E=0;E<k.displayText.length;E++){var D=C.createElement("span"),j=C.createElement("span");(b=j.classList).add.apply(b,["ace_".concat(k.type[E]),A]),j.setAttribute("aria-label","".concat(d.annotationLabels[k.type[E].replace("_fold","")].singular)),j.setAttribute("role","img"),j.appendChild(C.createTextNode(" ")),D.appendChild(j),D.appendChild(C.createTextNode(k.displayText[E])),D.appendChild(C.createElement("br")),S[k.type[E].replace("_fold","")].push(D)}var U=this.getElement();C.removeChildren(U),S.error.forEach(function(Z){return U.appendChild(Z)}),S.security.forEach(function(Z){return U.appendChild(Z)}),S.warning.forEach(function(Z){return U.appendChild(Z)}),S.info.forEach(function(Z){return U.appendChild(Z)}),S.hint.forEach(function(Z){return U.appendChild(Z)}),U.setAttribute("aria-live","polite"),this.isOpen||(this.setTheme(this.editor.renderer.theme),this.setClassName("ace_gutter-tooltip"));var q=this.$findLinkedAnnotationNode(w);q&&q.setAttribute("aria-describedby",this.id),this.show(),this.visibleTooltipRow=w,this.editor._signal("showGutterTooltip",this)},d.prototype.$findLinkedAnnotationNode=function(w){var b=this.$findCellByRow(w);if(b){var R=b.element;if(R.childNodes.length>2)return R.childNodes[2]}},d.prototype.$findCellByRow=function(w){return this.editor.renderer.$gutterLayer.$lines.cells.find(function(b){return b.row===w})},d.prototype.hideTooltip=function(){if(this.isOpen){if(this.$element.removeAttribute("aria-live"),this.hide(),this.visibleTooltipRow!=null){var w=this.$findLinkedAnnotationNode(this.visibleTooltipRow);w&&w.removeAttribute("aria-describedby")}this.visibleTooltipRow=void 0,this.editor._signal("hideGutterTooltip",this)}},d.annotationsToSummaryString=function(w){var b,R,M=[],k=["error","security","warning","info","hint"];try{for(var x=y(k),L=x.next();!L.done;L=x.next()){var O=L.value;if(w[O].length){var I=w[O].length===1?d.annotationLabels[O].singular:d.annotationLabels[O].plural;M.push("".concat(w[O].length," ").concat(I))}}}catch(E){b={error:E}}finally{try{L&&!L.done&&(R=x.return)&&R.call(x)}finally{if(b)throw b.error}}return M.join(", ")},d}(p);o.$uid=0,r.GutterTooltip=o}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,r,v){var f=e("../lib/event"),y=e("../lib/useragent"),C=function(){function h(p,s){this.speed,this.wheelX,this.wheelY,this.domEvent=p,this.editor=s,this.x=this.clientX=p.clientX,this.y=this.clientY=p.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return h.prototype.stopPropagation=function(){f.stopPropagation(this.domEvent),this.propagationStopped=!0},h.prototype.preventDefault=function(){f.preventDefault(this.domEvent),this.defaultPrevented=!0},h.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},h.prototype.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},h.prototype.getGutterRow=function(){var p=this.getDocumentPosition().row,s=this.editor.session.documentToScreenRow(p,0),a=this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0);return s-a},h.prototype.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var p=this.editor,s=p.getSelectionRange();if(s.isEmpty())this.$inSelection=!1;else{var a=this.getDocumentPosition();this.$inSelection=s.contains(a.row,a.column)}return this.$inSelection},h.prototype.getButton=function(){return f.getButton(this.domEvent)},h.prototype.getShiftKey=function(){return this.domEvent.shiftKey},h.prototype.getAccelKey=function(){return y.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},h}();r.MouseEvent=C}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,r,v){var f=e("../lib/dom"),y=e("../lib/event"),C=e("../lib/useragent"),h=200,p=200,s=5;function a(l){var o=l.editor,u=f.createElement("div");u.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",u.textContent=" ";var d=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];d.forEach(function(ne){l[ne]=this[ne]},this),o.on("mousedown",this.onMouseDown.bind(l));var w=o.container,b,R,M,k,x,L,O=0,I,E,z,P,N;this.onDragStart=function(ne){if(this.cancelDrag||!w.draggable){var le=this;return setTimeout(function(){le.startSelect(),le.captureMouse(ne)},0),ne.preventDefault()}x=o.getSelectionRange();var ue=ne.dataTransfer;ue.effectAllowed=o.getReadOnly()?"copy":"copyMove",o.container.appendChild(u),ue.setDragImage&&ue.setDragImage(u,0,0),setTimeout(function(){o.container.removeChild(u)}),ue.clearData(),ue.setData("Text",o.session.getTextRange()),E=!0,this.setState("drag")},this.onDragEnd=function(ne){if(w.draggable=!1,E=!1,this.setState(null),!o.getReadOnly()){var le=ne.dataTransfer.dropEffect;!I&&le=="move"&&o.session.remove(o.getSelectionRange()),o.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(ne){if(!(o.getReadOnly()||!te(ne.dataTransfer)))return R=ne.clientX,M=ne.clientY,b||j(),O++,ne.dataTransfer.dropEffect=I=he(ne),y.preventDefault(ne)},this.onDragOver=function(ne){if(!(o.getReadOnly()||!te(ne.dataTransfer)))return R=ne.clientX,M=ne.clientY,b||(j(),O++),q!==null&&(q=null),ne.dataTransfer.dropEffect=I=he(ne),y.preventDefault(ne)},this.onDragLeave=function(ne){if(O--,O<=0&&b)return U(),I=null,y.preventDefault(ne)},this.onDrop=function(ne){if(L){var le=ne.dataTransfer;if(E)switch(I){case"move":x.contains(L.row,L.column)?x={start:L,end:L}:x=o.moveText(x,L);break;case"copy":x=o.moveText(x,L,!0);break}else{var ue=le.getData("Text");x={start:L,end:o.session.insert(L,ue)},o.focus(),I=null}return U(),y.preventDefault(ne)}},y.addListener(w,"dragstart",this.onDragStart.bind(l),o),y.addListener(w,"dragend",this.onDragEnd.bind(l),o),y.addListener(w,"dragenter",this.onDragEnter.bind(l),o),y.addListener(w,"dragover",this.onDragOver.bind(l),o),y.addListener(w,"dragleave",this.onDragLeave.bind(l),o),y.addListener(w,"drop",this.onDrop.bind(l),o);function S(ne,le){var ue=Date.now(),ce=!le||ne.row!=le.row,fe=!le||ne.column!=le.column;if(!P||ce||fe)o.moveCursorToPosition(ne),P=ue,N={x:R,y:M};else{var Se=c(N.x,N.y,R,M);Se>s?P=null:ue-P>=p&&(o.renderer.scrollCursorIntoView(),P=null)}}function A(ne,le){var ue=Date.now(),ce=o.renderer.layerConfig.lineHeight,fe=o.renderer.layerConfig.characterWidth,Se=o.renderer.scroller.getBoundingClientRect(),$e={x:{left:R-Se.left,right:Se.right-R},y:{top:M-Se.top,bottom:Se.bottom-M}},Te=Math.min($e.x.left,$e.x.right),qe=Math.min($e.y.top,$e.y.bottom),Ve={row:ne.row,column:ne.column};Te/fe<=2&&(Ve.column+=$e.x.left<$e.x.right?-3:2),qe/ce<=1&&(Ve.row+=$e.y.top<$e.y.bottom?-1:1);var lt=ne.row!=Ve.row,Je=ne.column!=Ve.column,ht=!le||ne.row!=le.row;lt||Je&&!ht?z?ue-z>=h&&o.renderer.scrollCursorIntoView(Ve):z=ue:z=null}function D(){var ne=L;L=o.renderer.screenToTextCoordinates(R,M),S(L,ne),A(L,ne)}function j(){x=o.selection.toOrientedRange(),b=o.session.addMarker(x,"ace_selection",o.getSelectionStyle()),o.clearSelection(),o.isFocused()&&o.renderer.$cursorLayer.setBlinking(!1),clearInterval(k),D(),k=setInterval(D,20),O=0,y.addListener(document,"mousemove",Z)}function U(){clearInterval(k),o.session.removeMarker(b),b=null,o.selection.fromOrientedRange(x),o.isFocused()&&!E&&o.$resetCursorStyle(),x=null,L=null,O=0,z=null,P=null,y.removeListener(document,"mousemove",Z)}var q=null;function Z(){q==null&&(q=setTimeout(function(){q!=null&&b&&U()},20))}function te(ne){var le=ne.types;return!le||Array.prototype.some.call(le,function(ue){return ue=="text/plain"||ue=="Text"})}function he(ne){var le=["copy","copymove","all","uninitialized"],ue=["move","copymove","linkmove","all","uninitialized"],ce=C.isMac?ne.altKey:ne.ctrlKey,fe="uninitialized";try{fe=ne.dataTransfer.effectAllowed.toLowerCase()}catch{}var Se="none";return ce&&le.indexOf(fe)>=0?Se="copy":ue.indexOf(fe)>=0?Se="move":le.indexOf(fe)>=0&&(Se="copy"),Se}}(function(){this.dragWait=function(){var l=Date.now()-this.mousedownEvent.time;l>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var l=this.editor.container;l.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(l){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var l=this.editor,o=l.container;o.draggable=!0,l.renderer.$cursorLayer.setBlinking(!1),l.setStyle("ace_dragging");var u=C.isWin?"default":"move";l.renderer.setCursorStyle(u),this.setState("dragReady")},this.onMouseDrag=function(l){var o=this.editor.container;if(C.isIE&&this.state=="dragReady"){var u=c(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);u>3&&o.dragDrop()}if(this.state==="dragWait"){var u=c(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);u>0&&(o.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(l){if(this.$dragEnabled){this.mousedownEvent=l;var o=this.editor,u=l.inSelection(),d=l.getButton(),w=l.domEvent.detail||1;if(w===1&&d===0&&u){if(l.editor.inMultiSelectMode&&(l.getAccelKey()||l.getShiftKey()))return;this.mousedownEvent.time=Date.now();var b=l.domEvent.target||l.domEvent.srcElement;if("unselectable"in b&&(b.unselectable="on"),o.getDragDelay()){if(C.isWebKit){this.cancelDrag=!0;var R=o.container;R.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(l,this.onMouseDrag.bind(this)),l.defaultPrevented=!0}}}}).call(a.prototype);function c(l,o,u,d){return Math.sqrt(Math.pow(u-l,2)+Math.pow(d-o,2))}r.DragdropHandler=a}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,r,v){var f=e("./mouse_event").MouseEvent,y=e("../lib/event"),C=e("../lib/dom");r.addTouchListeners=function(h,p){var s="scroll",a,c,l,o,u,d,w=0,b,R=0,M=0,k=0,x,L;function O(){var S=window.navigator&&window.navigator.clipboard,A=!1,D=function(){var q=p.getCopyText(),Z=p.session.getUndoManager().hasUndo();L.replaceChild(C.buildDom(A?["span",!q&&j("selectall")&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],q&&j("copy")&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],q&&j("cut")&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],S&&j("paste")&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],Z&&j("undo")&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],j("find")&&["span",{class:"ace_mobile-button",action:"find"},"Find"],j("openCommandPalette")&&["span",{class:"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),L.firstChild)},j=function(q){return p.commands.canExecute(q,p)},U=function(q){var Z=q.target.getAttribute("action");if(Z=="more"||!A)return A=!A,D();Z=="paste"?S.readText().then(function(te){p.execCommand(Z,te)}):Z&&((Z=="cut"||Z=="copy")&&(S?S.writeText(p.getCopyText()):document.execCommand("copy")),p.execCommand(Z)),L.firstChild.style.display="none",A=!1,Z!="openCommandPalette"&&p.focus()};L=C.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(q){s="menu",q.stopPropagation(),q.preventDefault(),p.textInput.focus()},ontouchend:function(q){q.stopPropagation(),q.preventDefault(),U(q)},onclick:U},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],p.container)}function I(){if(!p.getOption("enableMobileMenu")){L&&E();return}L||O();var S=p.selection.cursor,A=p.renderer.textToScreenCoordinates(S.row,S.column),D=p.renderer.textToScreenCoordinates(0,0).pageX,j=p.renderer.scrollLeft,U=p.container.getBoundingClientRect();L.style.top=A.pageY-U.top-3+"px",A.pageX-U.left<U.width-70?(L.style.left="",L.style.right="10px"):(L.style.right="",L.style.left=D+j-U.left+"px"),L.style.display="",L.firstChild.style.display="none",p.on("input",E)}function E(S){L&&(L.style.display="none"),p.off("input",E)}function z(){u=null,clearTimeout(u);var S=p.selection.getRange(),A=S.contains(b.row,b.column);(S.isEmpty()||!A)&&(p.selection.moveToPosition(b),p.selection.selectWord()),s="wait",I()}function P(){u=null,clearTimeout(u),p.selection.moveToPosition(b);var S=R>=2?p.selection.getLineRange(b.row):p.session.getBracketRange(b);S&&!S.isEmpty()?p.selection.setRange(S):p.selection.selectWord(),s="wait"}y.addListener(h,"contextmenu",function(S){if(x){var A=p.textInput.getElement();A.focus()}},p),y.addListener(h,"touchstart",function(S){var A=S.touches;if(u||A.length>1){clearTimeout(u),u=null,l=-1,s="zoom";return}x=p.$mouseHandler.isMousePressed=!0;var D=p.renderer.layerConfig.lineHeight,j=p.renderer.layerConfig.lineHeight,U=S.timeStamp;o=U;var q=A[0],Z=q.clientX,te=q.clientY;Math.abs(a-Z)+Math.abs(c-te)>D&&(l=-1),a=S.clientX=Z,c=S.clientY=te,M=k=0;var he=new f(S,p);if(b=he.getDocumentPosition(),U-l<500&&A.length==1&&!w)R++,S.preventDefault(),S.button=0,P();else{R=0;var ne=p.selection.cursor,le=p.selection.isEmpty()?ne:p.selection.anchor,ue=p.renderer.$cursorLayer.getPixelPosition(ne,!0),ce=p.renderer.$cursorLayer.getPixelPosition(le,!0),fe=p.renderer.scroller.getBoundingClientRect(),Se=p.renderer.layerConfig.offset,$e=p.renderer.scrollLeft,Te=function(lt,Je){return lt=lt/j,Je=Je/D-.75,lt*lt+Je*Je};if(S.clientX<fe.left){s="zoom";return}var qe=Te(S.clientX-fe.left-ue.left+$e,S.clientY-fe.top-ue.top+Se),Ve=Te(S.clientX-fe.left-ce.left+$e,S.clientY-fe.top-ce.top+Se);qe<3.5&&Ve<3.5&&(s=qe>Ve?"cursor":"anchor"),Ve<3.5?s="anchor":qe<3.5?s="cursor":s="scroll",u=setTimeout(z,450)}l=U},p),y.addListener(h,"touchend",function(S){x=p.$mouseHandler.isMousePressed=!1,d&&clearInterval(d),s=="zoom"?(s="",w=0):u?(p.selection.moveToPosition(b),w=0,I()):s=="scroll"?(N(),E()):I(),clearTimeout(u),u=null},p),y.addListener(h,"touchmove",function(S){u&&(clearTimeout(u),u=null);var A=S.touches;if(!(A.length>1||s=="zoom")){var D=A[0],j=a-D.clientX,U=c-D.clientY;if(s=="wait")if(j*j+U*U>4)s="cursor";else return S.preventDefault();a=D.clientX,c=D.clientY,S.clientX=D.clientX,S.clientY=D.clientY;var q=S.timeStamp,Z=q-o;if(o=q,s=="scroll"){var te=new f(S,p);te.speed=1,te.wheelX=j,te.wheelY=U,10*Math.abs(j)<Math.abs(U)&&(j=0),10*Math.abs(U)<Math.abs(j)&&(U=0),Z!=0&&(M=j/Z,k=U/Z),p._emit("mousewheel",te),te.propagationStopped||(M=k=0)}else{var he=new f(S,p),ne=he.getDocumentPosition();s=="cursor"?p.selection.moveCursorToPosition(ne):s=="anchor"&&p.selection.setSelectionAnchor(ne.row,ne.column),p.renderer.scrollCursorIntoView(ne),S.preventDefault()}}},p);function N(){w+=60,d=setInterval(function(){w--<=0&&(clearInterval(d),d=null),Math.abs(M)<.01&&(M=0),Math.abs(k)<.01&&(k=0),w<20&&(M=.9*M),w<20&&(k=.9*k);var S=p.session.getScrollTop();p.renderer.scrollBy(10*M,10*k),S==p.session.getScrollTop()&&(w=0)},10)}}}),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/mouse/touch_handler","ace/config"],function(e,r,v){var f=e("../lib/event"),y=e("../lib/useragent"),C=e("./default_handlers").DefaultHandlers,h=e("./default_gutter_handler").GutterHandler,p=e("./mouse_event").MouseEvent,s=e("./dragdrop_handler").DragdropHandler,a=e("./touch_handler").addTouchListeners,c=e("../config"),l=function(){function o(u){this.$dragDelay,this.$dragEnabled,this.$mouseMoved,this.mouseEvent,this.$focusTimeout;var d=this;this.editor=u,new C(this),new h(this),new s(this);var w=function(M){var k=!document.hasFocus||!document.hasFocus()||!u.isFocused()&&document.activeElement==(u.textInput&&u.textInput.getElement());k&&window.focus(),u.focus(),setTimeout(function(){u.isFocused()||u.focus()})},b=u.renderer.getMouseEventTarget();f.addListener(b,"click",this.onMouseEvent.bind(this,"click"),u),f.addListener(b,"mousemove",this.onMouseMove.bind(this,"mousemove"),u),f.addMultiMouseDownListener([b,u.renderer.scrollBarV&&u.renderer.scrollBarV.inner,u.renderer.scrollBarH&&u.renderer.scrollBarH.inner,u.textInput&&u.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent",u),f.addMouseWheelListener(u.container,this.onMouseWheel.bind(this,"mousewheel"),u),a(u.container,u);var R=u.renderer.$gutter;f.addListener(R,"mousedown",this.onMouseEvent.bind(this,"guttermousedown"),u),f.addListener(R,"click",this.onMouseEvent.bind(this,"gutterclick"),u),f.addListener(R,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick"),u),f.addListener(R,"mousemove",this.onMouseEvent.bind(this,"guttermousemove"),u),f.addListener(b,"mousedown",w,u),f.addListener(R,"mousedown",w,u),y.isIE&&u.renderer.scrollBarV&&(f.addListener(u.renderer.scrollBarV.element,"mousedown",w,u),f.addListener(u.renderer.scrollBarH.element,"mousedown",w,u)),u.on("mousemove",function(M){if(!(d.state||d.$dragDelay||!d.$dragEnabled)){var k=u.renderer.screenToTextCoordinates(M.x,M.y),x=u.session.selection.getRange(),L=u.renderer;!x.isEmpty()&&x.insideStart(k.row,k.column)?L.setCursorStyle("default"):L.setCursorStyle("")}},u)}return o.prototype.onMouseEvent=function(u,d){this.editor.session&&this.editor._emit(u,new p(d,this.editor))},o.prototype.onMouseMove=function(u,d){var w=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;!w||!w.length||this.editor._emit(u,new p(d,this.editor))},o.prototype.onMouseWheel=function(u,d){var w=new p(d,this.editor);w.speed=this.$scrollSpeed*2,w.wheelX=d.wheelX,w.wheelY=d.wheelY,this.editor._emit(u,w)},o.prototype.setState=function(u){this.state=u},o.prototype.captureMouse=function(u,d){this.x=u.x,this.y=u.y,this.isMousePressed=!0;var w=this.editor,b=this.editor.renderer;b.$isMousePressed=!0;var R=this,M=!0,k=function(E){if(E){if(y.isWebKit&&!E.which&&R.releaseMouse)return R.releaseMouse();R.x=E.clientX,R.y=E.clientY,d&&d(E),R.mouseEvent=new p(E,R.editor),R.$mouseMoved=!0}},x=function(E){w.off("beforeEndOperation",I),M=!1,w.session&&L(),R[R.state+"End"]&&R[R.state+"End"](E),R.state="",R.isMousePressed=b.$isMousePressed=!1,b.$keepTextAreaAtCursor&&b.$moveTextAreaToCursor(),R.$onCaptureMouseMove=R.releaseMouse=null,E&&R.onMouseEvent("mouseup",E),w.endOperation()},L=function(){R[R.state]&&R[R.state](),R.$mouseMoved=!1},O=function(){M&&(L(),f.nextFrame(O))};if(y.isOldIE&&u.domEvent.type=="dblclick")return setTimeout(function(){x(u)});var I=function(E){R.releaseMouse&&w.curOp.command.name&&w.curOp.selectionChanged&&(R[R.state+"End"]&&R[R.state+"End"](),R.state="",R.releaseMouse())};w.on("beforeEndOperation",I),w.startOperation({command:{name:"mouse"}}),R.$onCaptureMouseMove=k,R.releaseMouse=f.capture(this.editor.container,k,x),O()},o.prototype.cancelContextMenu=function(){var u=(function(d){d&&d.domEvent&&d.domEvent.type!="contextmenu"||(this.editor.off("nativecontextmenu",u),d&&d.domEvent&&f.stopEvent(d.domEvent))}).bind(this);setTimeout(u,10),this.editor.on("nativecontextmenu",u)},o.prototype.destroy=function(){this.releaseMouse&&this.releaseMouse()},o}();l.prototype.releaseMouse=null,c.defineOptions(l.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:y.isMac?150:0},dragEnabled:{initialValue:!0},focusTimeout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),r.MouseHandler=l}),ace.define("ace/mouse/fold_handler",["require","exports","module","ace/lib/dom"],function(e,r,v){var f=e("../lib/dom"),y=function(){function C(h){h.on("click",function(p){var s=p.getDocumentPosition(),a=h.session,c=a.getFoldAt(s.row,s.column,1);c&&(p.getAccelKey()?a.removeFold(c):a.expandFold(c),p.stop());var l=p.domEvent&&p.domEvent.target;l&&f.hasCssClass(l,"ace_inline_button")&&f.hasCssClass(l,"ace_toggle_wrap")&&(a.setOption("wrap",!a.getUseWrapMode()),h.renderer.scrollCursorIntoView())}),h.on("gutterclick",function(p){var s=h.renderer.$gutterLayer.getRegion(p);if(s=="foldWidgets"){var a=p.getDocumentPosition().row,c=h.session;c.foldWidgets&&c.foldWidgets[a]&&h.session.onFoldWidgetClick(a,p),h.isFocused()||h.focus(),p.stop()}}),h.on("gutterdblclick",function(p){var s=h.renderer.$gutterLayer.getRegion(p);if(s=="foldWidgets"){var a=p.getDocumentPosition().row,c=h.session,l=c.getParentFoldRangeData(a,!0),o=l.range||l.firstRange;if(o){a=o.start.row;var u=c.getFoldAt(a,c.getLine(a).length,1);u?c.removeFold(u):(c.addFold("...",o),h.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}p.stop()}})}return C}();r.FoldHandler=y}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,r,v){var f=e("../lib/keys"),y=e("../lib/event"),C=function(){function h(p){this.$editor=p,this.$data={editor:p},this.$handlers=[],this.setDefaultHandler(p.commands)}return h.prototype.setDefaultHandler=function(p){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=p,this.addKeyboardHandler(p,0)},h.prototype.setKeyboardHandler=function(p){var s=this.$handlers;if(s[s.length-1]!=p){for(;s[s.length-1]&&s[s.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(s[s.length-1]);this.addKeyboardHandler(p,1)}},h.prototype.addKeyboardHandler=function(p,s){if(p){typeof p=="function"&&!p.handleKeyboard&&(p.handleKeyboard=p);var a=this.$handlers.indexOf(p);a!=-1&&this.$handlers.splice(a,1),s==null?this.$handlers.push(p):this.$handlers.splice(s,0,p),a==-1&&p.attach&&p.attach(this.$editor)}},h.prototype.removeKeyboardHandler=function(p){var s=this.$handlers.indexOf(p);return s==-1?!1:(this.$handlers.splice(s,1),p.detach&&p.detach(this.$editor),!0)},h.prototype.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},h.prototype.getStatusText=function(){var p=this.$data,s=p.editor;return this.$handlers.map(function(a){return a.getStatusText&&a.getStatusText(s,p)||""}).filter(Boolean).join(" ")},h.prototype.$callKeyboardHandlers=function(p,s,a,c){for(var l,o=!1,u=this.$editor.commands,d=this.$handlers.length;d--&&(l=this.$handlers[d].handleKeyboard(this.$data,p,s,a,c),!(!(!l||!l.command)&&(l.command=="null"?o=!0:o=u.exec(l.command,this.$editor,l.args,c),o&&c&&p!=-1&&l.passEvent!=!0&&l.command.passEvent!=!0&&y.stopEvent(c),o))););return!o&&p==-1&&(l={command:"insertstring"},o=u.exec("insertstring",this.$editor,s)),o&&this.$editor._signal&&this.$editor._signal("keyboardActivity",l),o},h.prototype.onCommandKey=function(p,s,a){var c=f.keyCodeToString(a);return this.$callKeyboardHandlers(s,c,a,p)},h.prototype.onTextInput=function(p){return this.$callKeyboardHandlers(-1,p)},h}();r.KeyBinding=C}),ace.define("ace/lib/bidiutil",["require","exports","module"],function(e,r,v){var f=0,y=0,C=!1,h=!1,p=!1,s=[[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]],a=[[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]],c=0,l=1,o=0,u=1,d=2,w=3,b=4,R=5,M=6,k=7,x=8,L=9,O=10,I=11,E=12,z=13,P=14,N=15,S=16,A=17,D=18,j=[D,D,D,D,D,D,D,D,D,M,R,M,x,R,D,D,D,D,D,D,D,D,D,D,D,D,D,D,R,R,R,M,x,b,b,I,I,I,b,b,b,b,b,O,L,O,L,L,d,d,d,d,d,d,d,d,d,d,L,b,b,b,b,b,b,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,b,b,b,b,b,b,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,b,b,b,b,D,D,D,D,D,D,R,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,L,b,I,I,I,I,b,b,b,b,o,b,b,D,b,b,I,I,d,d,b,o,b,b,b,d,o,b,b,b,b,b],U=[x,x,x,x,x,x,x,x,x,x,x,D,D,D,o,u,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,x,R,z,P,N,S,A,L,I,I,I,I,I,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,L,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,x];function q(ne,le,ue,ce){var fe=f?a:s,Se=null,$e=null,Te=null,qe=0,Ve=null,lt=null,Je=-1,ht=null,qt=null,In=[];if(!ce)for(ht=0,ce=[];ht<ue;ht++)ce[ht]=he(ne[ht]);for(y=f,C=!1,h=!1,p=!1,qt=0;qt<ue;qt++){if(Se=qe,In[qt]=$e=te(ne,ce,In,qt),qe=fe[Se][$e],Ve=qe&240,qe&=15,le[qt]=Te=fe[qe][5],Ve>0)if(Ve==16){for(ht=Je;ht<qt;ht++)le[ht]=1;Je=-1}else Je=-1;if(lt=fe[qe][6],lt)Je==-1&&(Je=qt);else if(Je>-1){for(ht=Je;ht<qt;ht++)le[ht]=Te;Je=-1}ce[qt]==R&&(le[qt]=0),y|=Te}if(p){for(ht=0;ht<ue;ht++)if(ce[ht]==M){le[ht]=f;for(var Vt=ht-1;Vt>=0&&ce[Vt]==x;Vt--)le[Vt]=f}}}function Z(ne,le,ue){if(!(y<ne)){if(ne==1&&f==l&&!h){ue.reverse();return}for(var ce=ue.length,fe=0,Se,$e,Te,qe;fe<ce;){if(le[fe]>=ne){for(Se=fe+1;Se<ce&&le[Se]>=ne;)Se++;for($e=fe,Te=Se-1;$e<Te;$e++,Te--)qe=ue[$e],ue[$e]=ue[Te],ue[Te]=qe;fe=Se}fe++}}}function te(ne,le,ue,ce){var fe=le[ce],Se,$e,Te,qe;switch(fe){case o:case u:C=!1;case b:case w:return fe;case d:return C?w:d;case k:return C=!0,u;case x:return b;case L:return ce<1||ce+1>=le.length||(Se=ue[ce-1])!=d&&Se!=w||($e=le[ce+1])!=d&&$e!=w?b:(C&&($e=w),$e==Se?$e:b);case O:return Se=ce>0?ue[ce-1]:R,Se==d&&ce+1<le.length&&le[ce+1]==d?d:b;case I:if(ce>0&&ue[ce-1]==d)return d;if(C)return b;for(qe=ce+1,Te=le.length;qe<Te&&le[qe]==I;)qe++;return qe<Te&&le[qe]==d?d:b;case E:for(Te=le.length,qe=ce+1;qe<Te&&le[qe]==E;)qe++;if(qe<Te){var Ve=ne[ce],lt=Ve>=1425&&Ve<=2303||Ve==64286;if(Se=le[qe],lt&&(Se==u||Se==k))return u}return ce<1||(Se=le[ce-1])==R?b:ue[ce-1];case R:return C=!1,h=!0,f;case M:return p=!0,b;case z:case P:case S:case A:case N:C=!1;case D:return b}}function he(ne){var le=ne.charCodeAt(0),ue=le>>8;return ue==0?le>191?o:j[le]:ue==5?/[\u0591-\u05f4]/.test(ne)?u:o:ue==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(ne)?E:/[\u0660-\u0669\u066b-\u066c]/.test(ne)?w:le==1642?I:/[\u06f0-\u06f9]/.test(ne)?d:k:ue==32&&le<=8287?U[le&255]:ue==254&&le>=65136?k:b}r.L=o,r.R=u,r.EN=d,r.ON_R=3,r.AN=4,r.R_H=5,r.B=6,r.RLE=7,r.DOT="·",r.doBidiReorder=function(ne,le,ue){if(ne.length<2)return{};var ce=ne.split(""),fe=new Array(ce.length),Se=new Array(ce.length),$e=[];f=ue?l:c,q(ce,$e,ce.length,le);for(var Te=0;Te<fe.length;fe[Te]=Te,Te++);Z(2,$e,fe),Z(1,$e,fe);for(var Te=0;Te<fe.length-1;Te++)le[Te]===w?$e[Te]=r.AN:$e[Te]===u&&(le[Te]>k&&le[Te]<z||le[Te]===b||le[Te]===D)?$e[Te]=r.ON_R:Te>0&&ce[Te-1]==="ل"&&/\u0622|\u0623|\u0625|\u0627/.test(ce[Te])&&($e[Te-1]=$e[Te]=r.R_H,Te++);ce[ce.length-1]===r.DOT&&($e[ce.length-1]=r.B),ce[0]==="‫"&&($e[0]=r.RLE);for(var Te=0;Te<fe.length;Te++)Se[Te]=$e[fe[Te]];return{logicalFromVisual:fe,bidiLevels:Se}},r.hasBidiCharacters=function(ne,le){for(var ue=!1,ce=0;ce<ne.length;ce++)le[ce]=he(ne.charAt(ce)),!ue&&(le[ce]==u||le[ce]==k||le[ce]==w)&&(ue=!0);return ue},r.getVisualFromLogicalIdx=function(ne,le){for(var ue=0;ue<le.logicalFromVisual.length;ue++)if(le.logicalFromVisual[ue]==ne)return ue;return 0}}),ace.define("ace/bidihandler",["require","exports","module","ace/lib/bidiutil","ace/lib/lang"],function(e,r,v){var f=e("./lib/bidiutil"),y=e("./lib/lang"),C=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\u202B]/,h=function(){function p(s){this.session=s,this.bidiMap={},this.currentRow=null,this.bidiUtil=f,this.charWidths=[],this.EOL="¬",this.showInvisibles=!0,this.isRtlDir=!1,this.$isRtl=!1,this.line="",this.wrapIndent=0,this.EOF="¶",this.RLE="‫",this.contentWidth=0,this.fontMetrics=null,this.rtlLineOffset=0,this.wrapOffset=0,this.isMoveLeftOperation=!1,this.seenBidi=C.test(s.getValue())}return p.prototype.isBidiRow=function(s,a,c){return this.seenBidi?(s!==this.currentRow&&(this.currentRow=s,this.updateRowLine(a,c),this.updateBidiMap()),this.bidiMap.bidiLevels):!1},p.prototype.onChange=function(s){this.seenBidi?this.currentRow=null:s.action=="insert"&&C.test(s.lines.join(`
179
+ `))&&(this.seenBidi=!0,this.currentRow=null)},p.prototype.getDocumentRow=function(){var s=0,a=this.session.$screenRowCache;if(a.length){var c=this.session.$getRowCacheIndex(a,this.currentRow);c>=0&&(s=this.session.$docRowCache[c])}return s},p.prototype.getSplitIndex=function(){var s=0,a=this.session.$screenRowCache;if(a.length)for(var c,l=this.session.$getRowCacheIndex(a,this.currentRow);this.currentRow-s>0&&(c=this.session.$getRowCacheIndex(a,this.currentRow-s-1),c===l);)l=c,s++;else s=this.currentRow;return s},p.prototype.updateRowLine=function(s,a){s===void 0&&(s=this.getDocumentRow());var c=s===this.session.getLength()-1,l=c?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(s),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var o=this.session.$wrapData[s];o&&(a===void 0&&(a=this.getSplitIndex()),a>0&&o.length?(this.wrapIndent=o.indent,this.wrapOffset=this.wrapIndent*this.charWidths[f.L],this.line=a<o.length?this.line.substring(o[a-1],o[a]):this.line.substring(o[o.length-1])):this.line=this.line.substring(0,o[a]),a==o.length&&(this.line+=this.showInvisibles?l:f.DOT))}else this.line+=this.showInvisibles?l:f.DOT;var u=this.session,d=0,w;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function(b,R){return b===" "||u.isFullWidth(b.charCodeAt(0))?(w=b===" "?u.getScreenTabSize(R+d):2,d+=w-1,y.stringRepeat(f.DOT,w)):b}),this.isRtlDir&&(this.fontMetrics.$main.textContent=this.line.charAt(this.line.length-1)==f.DOT?this.line.substr(0,this.line.length-1):this.line,this.rtlLineOffset=this.contentWidth-this.fontMetrics.$main.getBoundingClientRect().width)},p.prototype.updateBidiMap=function(){var s=[];f.hasBidiCharacters(this.line,s)||this.isRtlDir?this.bidiMap=f.doBidiReorder(this.line,s,this.isRtlDir):this.bidiMap={}},p.prototype.markAsDirty=function(){this.currentRow=null},p.prototype.updateCharacterWidths=function(s){if(this.characterWidth!==s.$characterSize.width){this.fontMetrics=s;var a=this.characterWidth=s.$characterSize.width,c=s.$measureCharWidth("ה");this.charWidths[f.L]=this.charWidths[f.EN]=this.charWidths[f.ON_R]=a,this.charWidths[f.R]=this.charWidths[f.AN]=c,this.charWidths[f.R_H]=c*.45,this.charWidths[f.B]=this.charWidths[f.RLE]=0,this.currentRow=null}},p.prototype.setShowInvisibles=function(s){this.showInvisibles=s,this.currentRow=null},p.prototype.setEolChar=function(s){this.EOL=s},p.prototype.setContentWidth=function(s){this.contentWidth=s},p.prototype.isRtlLine=function(s){return this.$isRtl?!0:s!=null?this.session.getLine(s).charAt(0)==this.RLE:this.isRtlDir},p.prototype.setRtlDirection=function(s,a){for(var c=s.getCursorPosition(),l=s.selection.getSelectionAnchor().row;l<=c.row;l++)!a&&s.session.getLine(l).charAt(0)===s.session.$bidiHandler.RLE?s.session.doc.removeInLine(l,0,1):a&&s.session.getLine(l).charAt(0)!==s.session.$bidiHandler.RLE&&s.session.doc.insert({column:0,row:l},s.session.$bidiHandler.RLE)},p.prototype.getPosLeft=function(s){s-=this.wrapIndent;var a=this.line.charAt(0)===this.RLE?1:0,c=s>a?this.session.getOverwrite()?s:s-1:a,l=f.getVisualFromLogicalIdx(c,this.bidiMap),o=this.bidiMap.bidiLevels,u=0;!this.session.getOverwrite()&&s<=a&&o[l]%2!==0&&l++;for(var d=0;d<l;d++)u+=this.charWidths[o[d]];return!this.session.getOverwrite()&&s>a&&o[l]%2===0&&(u+=this.charWidths[o[l]]),this.wrapIndent&&(u+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(u+=this.rtlLineOffset),u},p.prototype.getSelections=function(s,a){var c=this.bidiMap,l=c.bidiLevels,o,u=[],d=0,w=Math.min(s,a)-this.wrapIndent,b=Math.max(s,a)-this.wrapIndent,R=!1,M=!1,k=0;this.wrapIndent&&(d+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var x,L=0;L<l.length;L++)x=c.logicalFromVisual[L],o=l[L],R=x>=w&&x<b,R&&!M?k=d:!R&&M&&u.push({left:k,width:d-k}),d+=this.charWidths[o],M=R;if(R&&L===l.length&&u.push({left:k,width:d-k}),this.isRtlDir)for(var O=0;O<u.length;O++)u[O].left+=this.rtlLineOffset;return u},p.prototype.offsetToCol=function(c){this.isRtlDir&&(c-=this.rtlLineOffset);var a=0,c=Math.max(c,0),l=0,o=0,u=this.bidiMap.bidiLevels,d=this.charWidths[u[o]];for(this.wrapIndent&&(c-=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);c>l+d/2;){if(l+=d,o===u.length-1){d=0;break}d=this.charWidths[u[++o]]}return o>0&&u[o-1]%2!==0&&u[o]%2===0?(c<l&&o--,a=this.bidiMap.logicalFromVisual[o]):o>0&&u[o-1]%2===0&&u[o]%2!==0?a=1+(c>l?this.bidiMap.logicalFromVisual[o]:this.bidiMap.logicalFromVisual[o-1]):this.isRtlDir&&o===u.length-1&&d===0&&u[o-1]%2===0||!this.isRtlDir&&o===0&&u[o]%2!==0?a=1+this.bidiMap.logicalFromVisual[o]:(o>0&&u[o-1]%2!==0&&d!==0&&o--,a=this.bidiMap.logicalFromVisual[o]),a===0&&this.isRtlDir&&a++,a+this.wrapIndent},p}();r.BidiHandler=h}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,r,v){var f=e("./lib/oop"),y=e("./lib/lang"),C=e("./lib/event_emitter").EventEmitter,h=e("./range").Range,p=function(){function s(a){this.session=a,this.doc=a.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var c=this;this.cursor.on("change",function(l){c.$cursorChanged=!0,c.$silent||c._emit("changeCursor"),!c.$isEmpty&&!c.$silent&&c._emit("changeSelection"),!c.$keepDesiredColumnOnChange&&l.old.column!=l.value.column&&(c.$desiredColumn=null)}),this.anchor.on("change",function(){c.$anchorChanged=!0,!c.$isEmpty&&!c.$silent&&c._emit("changeSelection")})}return s.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},s.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},s.prototype.getCursor=function(){return this.lead.getPosition()},s.prototype.setAnchor=function(a,c){this.$isEmpty=!1,this.anchor.setPosition(a,c)},s.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},s.prototype.getSelectionLead=function(){return this.lead.getPosition()},s.prototype.isBackwards=function(){var a=this.anchor,c=this.lead;return a.row>c.row||a.row==c.row&&a.column>c.column},s.prototype.getRange=function(){var a=this.anchor,c=this.lead;return this.$isEmpty?h.fromPoints(c,c):this.isBackwards()?h.fromPoints(c,a):h.fromPoints(a,c)},s.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},s.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},s.prototype.setRange=function(a,c){var l=c?a.end:a.start,o=c?a.start:a.end;this.$setSelection(l.row,l.column,o.row,o.column)},s.prototype.$setSelection=function(a,c,l,o){if(!this.$silent){var u=this.$isEmpty,d=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(a,c),this.cursor.setPosition(l,o),this.$isEmpty=!h.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||u!=this.$isEmpty||d)&&this._emit("changeSelection")}},s.prototype.$moveSelection=function(a){var c=this.lead;this.$isEmpty&&this.setSelectionAnchor(c.row,c.column),a.call(this)},s.prototype.selectTo=function(a,c){this.$moveSelection(function(){this.moveCursorTo(a,c)})},s.prototype.selectToPosition=function(a){this.$moveSelection(function(){this.moveCursorToPosition(a)})},s.prototype.moveTo=function(a,c){this.clearSelection(),this.moveCursorTo(a,c)},s.prototype.moveToPosition=function(a){this.clearSelection(),this.moveCursorToPosition(a)},s.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},s.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},s.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},s.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},s.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},s.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},s.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},s.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},s.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},s.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},s.prototype.getWordRange=function(a,c){if(typeof c>"u"){var l=a||this.lead;a=l.row,c=l.column}return this.session.getWordRange(a,c)},s.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},s.prototype.selectAWord=function(){var a=this.getCursor(),c=this.session.getAWordRange(a.row,a.column);this.setSelectionRange(c)},s.prototype.getLineRange=function(a,c){var l=typeof a=="number"?a:this.lead.row,o,u=this.session.getFoldLine(l);return u?(l=u.start.row,o=u.end.row):o=l,c===!0?new h(l,0,o,this.session.getLine(o).length):new h(l,0,o+1,0)},s.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},s.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},s.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},s.prototype.wouldMoveIntoSoftTab=function(a,c,l){var o=a.column,u=a.column+c;return l<0&&(o=a.column-c,u=a.column),this.session.isTabStop(a)&&this.doc.getLine(a.row).slice(o,u).split(" ").length-1==c},s.prototype.moveCursorLeft=function(){var a=this.lead.getPosition(),c;if(c=this.session.getFoldAt(a.row,a.column,-1))this.moveCursorTo(c.start.row,c.start.column);else if(a.column===0)a.row>0&&this.moveCursorTo(a.row-1,this.doc.getLine(a.row-1).length);else{var l=this.session.getTabSize();this.wouldMoveIntoSoftTab(a,l,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-l):this.moveCursorBy(0,-1)}},s.prototype.moveCursorRight=function(){var a=this.lead.getPosition(),c;if(c=this.session.getFoldAt(a.row,a.column,1))this.moveCursorTo(c.end.row,c.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 l=this.session.getTabSize(),a=this.lead;this.wouldMoveIntoSoftTab(a,l,1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,l):this.moveCursorBy(0,1)}},s.prototype.moveCursorLineStart=function(){var a=this.lead.row,c=this.lead.column,l=this.session.documentToScreenRow(a,c),o=this.session.screenToDocumentPosition(l,0),u=this.session.getDisplayLine(a,null,o.row,o.column),d=u.match(/^\s*/);d[0].length!=c&&!this.session.$useEmacsStyleLineStart&&(o.column+=d[0].length),this.moveCursorToPosition(o)},s.prototype.moveCursorLineEnd=function(){var a=this.lead,c=this.session.getDocumentLastRowColumnPosition(a.row,a.column);if(this.lead.column==c.column){var l=this.session.getLine(c.row);if(c.column==l.length){var o=l.search(/\s+$/);o>0&&(c.column=o)}}this.moveCursorTo(c.row,c.column)},s.prototype.moveCursorFileEnd=function(){var a=this.doc.getLength()-1,c=this.doc.getLine(a).length;this.moveCursorTo(a,c)},s.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},s.prototype.moveCursorLongWordRight=function(){var a=this.lead.row,c=this.lead.column,l=this.doc.getLine(a),o=l.substring(c);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var u=this.session.getFoldAt(a,c,1);if(u){this.moveCursorTo(u.end.row,u.end.column);return}if(this.session.nonTokenRe.exec(o)&&(c+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,o=l.substring(c)),c>=l.length){this.moveCursorTo(a,l.length),this.moveCursorRight(),a<this.doc.getLength()-1&&this.moveCursorWordRight();return}this.session.tokenRe.exec(o)&&(c+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(a,c)},s.prototype.moveCursorLongWordLeft=function(){var a=this.lead.row,c=this.lead.column,l;if(l=this.session.getFoldAt(a,c,-1)){this.moveCursorTo(l.start.row,l.start.column);return}var o=this.session.getFoldStringAt(a,c,-1);o==null&&(o=this.doc.getLine(a).substring(0,c));var u=y.stringReverse(o);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(u)&&(c-=this.session.nonTokenRe.lastIndex,u=u.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),c<=0){this.moveCursorTo(a,0),this.moveCursorLeft(),a>0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(u)&&(c-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(a,c)},s.prototype.$shortWordEndIndex=function(a){var c=0,l,o=/\s/,u=this.session.tokenRe;if(u.lastIndex=0,this.session.tokenRe.exec(a))c=this.session.tokenRe.lastIndex;else{for(;(l=a[c])&&o.test(l);)c++;if(c<1){for(u.lastIndex=0;(l=a[c])&&!u.test(l);)if(u.lastIndex=0,c++,o.test(l))if(c>2){c--;break}else{for(;(l=a[c])&&o.test(l);)c++;if(c>2)break}}}return u.lastIndex=0,c},s.prototype.moveCursorShortWordRight=function(){var a=this.lead.row,c=this.lead.column,l=this.doc.getLine(a),o=l.substring(c),u=this.session.getFoldAt(a,c,1);if(u)return this.moveCursorTo(u.end.row,u.end.column);if(c==l.length){var d=this.doc.getLength();do a++,o=this.doc.getLine(a);while(a<d&&/^\s*$/.test(o));/^\s+/.test(o)||(o=""),c=0}var w=this.$shortWordEndIndex(o);this.moveCursorTo(a,c+w)},s.prototype.moveCursorShortWordLeft=function(){var a=this.lead.row,c=this.lead.column,l;if(l=this.session.getFoldAt(a,c,-1))return this.moveCursorTo(l.start.row,l.start.column);var o=this.session.getLine(a).substring(0,c);if(c===0){do a--,o=this.doc.getLine(a);while(a>0&&/^\s*$/.test(o));c=o.length,/\s+$/.test(o)||(o="")}var u=y.stringReverse(o),d=this.$shortWordEndIndex(u);return this.moveCursorTo(a,c-d)},s.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},s.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},s.prototype.moveCursorBy=function(a,c){var l=this.session.documentToScreenPosition(this.lead.row,this.lead.column),o;if(c===0&&(a!==0&&(this.session.$bidiHandler.isBidiRow(l.row,this.lead.row)?(o=this.session.$bidiHandler.getPosLeft(l.column),l.column=Math.round(o/this.session.$bidiHandler.charWidths[0])):o=l.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?l.column=this.$desiredColumn:this.$desiredColumn=l.column),a!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var u=this.session.lineWidgets[this.lead.row];a<0?a-=u.rowsAbove||0:a>0&&(a+=u.rowCount-(u.rowsAbove||0))}var d=this.session.screenToDocumentPosition(l.row+a,l.column,o);a!==0&&c===0&&d.row===this.lead.row&&(d.column,this.lead.column),this.moveCursorTo(d.row,d.column+c,c===0)},s.prototype.moveCursorToPosition=function(a){this.moveCursorTo(a.row,a.column)},s.prototype.moveCursorTo=function(a,c,l){var o=this.session.getFoldAt(a,c,1);o&&(a=o.start.row,c=o.start.column),this.$keepDesiredColumnOnChange=!0;var u=this.session.getLine(a);/[\uDC00-\uDFFF]/.test(u.charAt(c))&&u.charAt(c-1)&&(this.lead.row==a&&this.lead.column==c+1?c=c-1:c=c+1),this.lead.setPosition(a,c),this.$keepDesiredColumnOnChange=!1,l||(this.$desiredColumn=null)},s.prototype.moveCursorToScreen=function(a,c,l){var o=this.session.screenToDocumentPosition(a,c);this.moveCursorTo(o.row,o.column,l)},s.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},s.prototype.fromOrientedRange=function(a){this.setSelectionRange(a,a.cursor==a.start),this.$desiredColumn=a.desiredColumn||this.$desiredColumn},s.prototype.toOrientedRange=function(a){var c=this.getRange();return a?(a.start.column=c.start.column,a.start.row=c.start.row,a.end.column=c.end.column,a.end.row=c.end.row):a=c,a.cursor=this.isBackwards()?a.start:a.end,a.desiredColumn=this.$desiredColumn,a},s.prototype.getRangeOfMovements=function(a){var c=this.getCursor();try{a(this);var l=this.getCursor();return h.fromPoints(c,l)}catch{return h.fromPoints(c,c)}finally{this.moveCursorToPosition(c)}},s.prototype.toJSON=function(){if(this.rangeCount)var a=this.ranges.map(function(c){var l=c.clone();return l.isBackwards=c.cursor==c.start,l});else{var a=this.getRange();a.isBackwards=this.isBackwards()}return a},s.prototype.fromJSON=function(a){if(a.start==null)if(this.rangeList&&a.length>1){this.toSingleRange(a[0]);for(var c=a.length;c--;){var l=h.fromPoints(a[c].start,a[c].end);a[c].isBackwards&&(l.cursor=l.start),this.addRange(l,!0)}return}else a=a[0];this.rangeList&&this.toSingleRange(a),this.setSelectionRange(a,a.isBackwards)},s.prototype.isEqual=function(a){if((a.length||this.rangeCount)&&a.length!=this.rangeCount)return!1;if(!a.length||!this.ranges)return this.getRange().isEqual(a);for(var c=this.ranges.length;c--;)if(!this.ranges[c].isEqual(a[c]))return!1;return!0},s}();p.prototype.setSelectionAnchor=p.prototype.setAnchor,p.prototype.getSelectionAnchor=p.prototype.getAnchor,p.prototype.setSelectionRange=p.prototype.setRange,f.implement(p.prototype,C),r.Selection=p}),ace.define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(e,r,v){var f=e("./lib/report_error").reportError,y=2e3,C=function(){function h(p){this.splitRegex,this.states=p,this.regExps={},this.matchMappings={};for(var s in this.states){for(var a=this.states[s],c=[],l=0,o=this.matchMappings[s]={defaultToken:"text"},u="g",d=[],w=0;w<a.length;w++){var b=a[w];if(b.defaultToken&&(o.defaultToken=b.defaultToken),b.caseInsensitive&&u.indexOf("i")===-1&&(u+="i"),b.unicode&&u.indexOf("u")===-1&&(u+="u"),b.regex!=null){b.regex instanceof RegExp&&(b.regex=b.regex.toString().slice(1,-1));var R=b.regex,M=new RegExp("(?:("+R+")|(.))").exec("a").length-2;Array.isArray(b.token)?b.token.length==1||M==1?b.token=b.token[0]:M-1!=b.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:b,groupCount:M-1}),b.token=b.token[0]):(b.tokenArray=b.token,b.token=null,b.onMatch=this.$arrayTokens):typeof b.token=="function"&&!b.onMatch&&(M>1?b.onMatch=this.$applyToken:b.onMatch=b.token),M>1&&(/\\\d/.test(b.regex)?R=b.regex.replace(/\\([0-9]+)/g,function(k,x){return"\\"+(parseInt(x,10)+l+1)}):(M=1,R=this.removeCapturingGroups(b.regex)),!b.splitRegex&&typeof b.token!="string"&&d.push(b)),o[l]=w,l+=M,c.push(R),b.onMatch||(b.onMatch=null)}}c.length||(o[0]=0,c.push("$")),d.forEach(function(k){k.splitRegex=this.createSplitterRegexp(k.regex,u)},this),this.regExps[s]=new RegExp("("+c.join(")|(")+")|($)",u)}}return h.prototype.$setMaxTokenCount=function(p){y=p|0},h.prototype.$applyToken=function(p){var s=this.splitRegex.exec(p).slice(1),a=this.token.apply(this,s);if(typeof a=="string")return[{type:a,value:p}];for(var c=[],l=0,o=a.length;l<o;l++)s[l]&&(c[c.length]={type:a[l],value:s[l]});return c},h.prototype.$arrayTokens=function(p){if(!p)return[];var s=this.splitRegex.exec(p);if(!s)return"text";for(var a=[],c=this.tokenArray,l=0,o=c.length;l<o;l++)s[l+1]&&(a[a.length]={type:c[l],value:s[l+1]});return a},h.prototype.removeCapturingGroups=function(p){var s=p.replace(/\\.|\[(?:\\.|[^\\\]])*|\(\?[:=!<]|(\()/g,function(a,c){return c?"(?:":a});return s},h.prototype.createSplitterRegexp=function(p,s){if(p.indexOf("(?=")!=-1){var a=0,c=!1,l={};p.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(o,u,d,w,b,R){return c?c=b!="]":b?c=!0:w?(a==l.stack&&(l.end=R+1,l.stack=-1),a--):d&&(a++,d.length!=1&&(l.stack=a,l.start=R)),o}),l.end!=null&&/^\)*$/.test(p.substr(l.end))&&(p=p.substring(0,l.start)+p.substr(l.end))}return p.charAt(0)!="^"&&(p="^"+p),p.charAt(p.length-1)!="$"&&(p+="$"),new RegExp(p,(s||"").replace("g",""))},h.prototype.getLineTokens=function(p,s){if(s&&typeof s!="string"){var a=s.slice(0);s=a[0],s==="#tmp"&&(a.shift(),s=a.shift())}else var a=[];var c=s||"start",l=this.states[c];l||(c="start",l=this.states[c]);var o=this.matchMappings[c],u=this.regExps[c];u.lastIndex=0;for(var d,w=[],b=0,R=0,M={type:null,value:""};d=u.exec(p);){var k=o.defaultToken,x=null,L=d[0],O=u.lastIndex;if(O-L.length>b){var I=p.substring(b,O-L.length);M.type==k?M.value+=I:(M.type&&w.push(M),M={type:k,value:I})}for(var E=0;E<d.length-2;E++)if(d[E+1]!==void 0){x=l[o[E]],x.onMatch?k=x.onMatch(L,c,a,p):k=x.token,x.next&&(typeof x.next=="string"?c=x.next:c=x.next(c,a),l=this.states[c],l||(this.reportError("state doesn't exist",c),c="start",l=this.states[c]),o=this.matchMappings[c],b=O,u=this.regExps[c],u.lastIndex=O),x.consumeLineEnd&&(b=O);break}if(L){if(typeof k=="string")(!x||x.merge!==!1)&&M.type===k?M.value+=L:(M.type&&w.push(M),M={type:k,value:L});else if(k){M.type&&w.push(M),M={type:null,value:""};for(var E=0;E<k.length;E++)w.push(k[E])}}if(b==p.length)break;if(b=O,R++>y){for(R>2*p.length&&this.reportError("infinite loop with in ace tokenizer",{startState:s,line:p});b<p.length;)M.type&&w.push(M),M={value:p.substring(b,b+=500),type:"overflow"};c="start",a=[];break}}return M.type&&w.push(M),a.length>1&&a[0]!==c&&a.unshift("#tmp",c),{tokens:w,state:a.length?a:c}},h}();C.prototype.reportError=f,r.Tokenizer=C}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(e,r,v){var f=e("../lib/deep_copy").deepCopy,y;y=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},(function(){this.addRules=function(p,s){if(!s){for(var a in p)this.$rules[a]=p[a];return}for(var a in p){for(var c=p[a],l=0;l<c.length;l++){var o=c[l];(o.next||o.onMatch)&&(typeof o.next=="string"&&o.next.indexOf(s)!==0&&(o.next=s+o.next),o.nextState&&o.nextState.indexOf(s)!==0&&(o.nextState=s+o.nextState))}this.$rules[s+a]=c}},this.getRules=function(){return this.$rules},this.embedRules=function(p,s,a,c,l){var o=typeof p=="function"?new p().getRules():p;if(c)for(var u=0;u<c.length;u++)c[u]=s+c[u];else{c=[];for(var d in o)c.push(s+d)}if(this.addRules(o,s),a)for(var w=Array.prototype[l?"push":"unshift"],u=0;u<c.length;u++)w.apply(this.$rules[c[u]],f(a));this.$embeds||(this.$embeds=[]),this.$embeds.push(s)},this.getEmbeds=function(){return this.$embeds};var C=function(p,s){return(p!="start"||s.length)&&s.unshift(this.nextState,p),this.nextState},h=function(p,s){return s.shift(),s.shift()||"start"};this.normalizeRules=function(){var p=0,s=this.$rules;function a(c){var l=s[c];l.processed=!0;for(var o=0;o<l.length;o++){var u=l[o],d=null;Array.isArray(u)&&(d=u,u={}),!u.regex&&u.start&&(u.regex=u.start,u.next||(u.next=[]),u.next.push({defaultToken:u.token},{token:u.token+".end",regex:u.end||u.start,next:"pop"}),u.token=u.token+".start",u.push=!0);var w=u.next||u.push;if(w&&Array.isArray(w)){var b=u.stateName;b||(b=u.token,typeof b!="string"&&(b=b[0]||""),s[b]&&(b+=p++)),s[b]=w,u.next=b,a(b)}else w=="pop"&&(u.next=h);if(u.push&&(u.nextState=u.next||u.push,u.next=C,delete u.push),u.rules)for(var R in u.rules)s[R]?s[R].push&&s[R].push.apply(s[R],u.rules[R]):s[R]=u.rules[R];var M=typeof u=="string"?u:u.include;if(M&&(M==="$self"&&(M="start"),Array.isArray(M)?d=M.map(function(x){return s[x]}):d=s[M]),d){var k=[o,1].concat(d);u.noEscape&&(k=k.filter(function(x){return!x.next})),l.splice.apply(l,k),o--}u.keywordMap&&(u.token=this.createKeywordMapper(u.keywordMap,u.defaultToken||"text",u.caseInsensitive),delete u.defaultToken)}}Object.keys(s).forEach(a,this)},this.createKeywordMapper=function(p,s,a,c){var l=Object.create(null);return this.$keywordList=[],Object.keys(p).forEach(function(o){for(var u=p[o],d=u.split(c||"|"),w=d.length;w--;){var b=d[w];this.$keywordList.push(b),a&&(b=b.toLowerCase()),l[b]=o}},this),p=null,a?function(o){return l[o.toLowerCase()]||s}:function(o){return l[o]||s}},this.getKeywords=function(){return this.$keywords}}).call(y.prototype),r.TextHighlightRules=y}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,r,v){var f;f=function(){this.$behaviours={}},(function(){this.add=function(y,C,h){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[y]:this.$behaviours[y]={}}this.$behaviours[y][C]=h},this.addBehaviours=function(y){for(var C in y)for(var h in y[C])this.add(C,h,y[C][h])},this.remove=function(y){this.$behaviours&&this.$behaviours[y]&&delete this.$behaviours[y]},this.inherit=function(y,C){if(typeof y=="function")var h=new y().getBehaviours(C);else var h=y.getBehaviours(C);this.addBehaviours(h)},this.getBehaviours=function(y){if(y){for(var C={},h=0;h<y.length;h++)this.$behaviours[y[h]]&&(C[y[h]]=this.$behaviours[y[h]]);return C}else return this.$behaviours}}).call(f.prototype),r.Behaviour=f}),ace.define("ace/token_iterator",["require","exports","module","ace/range"],function(e,r,v){var f=e("./range").Range,y=function(){function C(h,p,s){this.$session=h,this.$row=p,this.$rowTokens=h.getTokens(p);var a=h.getTokenAt(p,s);this.$tokenIndex=a?a.index:-1}return C.prototype.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]},C.prototype.stepForward=function(){this.$tokenIndex+=1;for(var h;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,h||(h=this.$session.getLength()),this.$row>=h)return this.$row=h-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},C.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},C.prototype.getCurrentTokenRow=function(){return this.$row},C.prototype.getCurrentTokenColumn=function(){var h=this.$rowTokens,p=this.$tokenIndex,s=h[p].start;if(s!==void 0)return s;for(s=0;p>0;)p-=1,s+=h[p].value.length;return s},C.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},C.prototype.getCurrentTokenRange=function(){var h=this.$rowTokens[this.$tokenIndex],p=this.getCurrentTokenColumn();return new f(this.$row,p,this.$row,p+h.value.length)},C}();r.TokenIterator=y}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,r,v){var f=e("../../lib/oop"),y=e("../behaviour").Behaviour,C=e("../../token_iterator").TokenIterator,h=e("../../lib/lang"),p=["text","paren.rparen","rparen","paren","punctuation.operator"],s=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],a,c={},l={'"':'"',"'":"'"},o=function(w){var b=-1;if(w.multiSelect&&(b=w.selection.index,c.rangeCount!=w.multiSelect.rangeCount&&(c={rangeCount:w.multiSelect.rangeCount})),c[b])return a=c[b];a=c[b]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},u=function(w,b,R,M){var k=w.end.row-w.start.row;return{text:R+b+M,selection:[0,w.start.column+1,k,w.end.column+(k?0:1)]}},d;d=function(w){w=w||{},this.add("braces","insertion",function(b,R,M,k,x){var L=M.getCursorPosition(),O=k.doc.getLine(L.row);if(x=="{"){o(M);var I=M.getSelectionRange(),E=k.doc.getTextRange(I),z=k.getTokenAt(L.row,L.column);if(E!==""&&E!=="{"&&M.getWrapBehavioursEnabled())return u(I,E,"{","}");if(z&&/(?:string)\.quasi|\.xml/.test(z.type)){var P=[/tag\-(?:open|name)/,/attribute\-name/];return P.some(function(q){return q.test(z.type)})||/(string)\.quasi/.test(z.type)&&z.value[L.column-z.start-1]!=="$"?void 0:(d.recordAutoInsert(M,k,"}"),{text:"{}",selection:[1,1]})}else if(d.isSaneInsertion(M,k))return/[\]\}\)]/.test(O[L.column])||M.inMultiSelectMode||w.braces?(d.recordAutoInsert(M,k,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(M,k,"{"),{text:"{",selection:[1,1]})}else if(x=="}"){o(M);var N=O.substring(L.column,L.column+1);if(N=="}"){var S=k.$findOpeningBracket("}",{column:L.column+1,row:L.row});if(S!==null&&d.isAutoInsertedClosing(L,O,x))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if(x==`
180
+ `||x==`\r
181
+ `){o(M);var A="";d.isMaybeInsertedClosing(L,O)&&(A=h.stringRepeat("}",a.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var N=O.substring(L.column,L.column+1);if(N==="}"){var D=k.findMatchingBracket({row:L.row,column:L.column+1},"}");if(!D)return null;var j=this.$getIndent(k.getLine(D.row))}else if(A)var j=this.$getIndent(O);else{d.clearMaybeInsertedClosing();return}var U=j+k.getTabString();return{text:`
182
+ `+U+`
183
+ `+j+A,selection:[1,U.length,1,U.length]}}else d.clearMaybeInsertedClosing()}),this.add("braces","deletion",function(b,R,M,k,x){var L=k.doc.getTextRange(x);if(!x.isMultiLine()&&L=="{"){o(M);var O=k.doc.getLine(x.start.row),I=O.substring(x.end.column,x.end.column+1);if(I=="}")return x.end.column++,x;a.maybeInsertedBrackets--}}),this.add("parens","insertion",function(b,R,M,k,x){if(x=="("){o(M);var L=M.getSelectionRange(),O=k.doc.getTextRange(L);if(O!==""&&M.getWrapBehavioursEnabled())return u(L,O,"(",")");if(d.isSaneInsertion(M,k))return d.recordAutoInsert(M,k,")"),{text:"()",selection:[1,1]}}else if(x==")"){o(M);var I=M.getCursorPosition(),E=k.doc.getLine(I.row),z=E.substring(I.column,I.column+1);if(z==")"){var P=k.$findOpeningBracket(")",{column:I.column+1,row:I.row});if(P!==null&&d.isAutoInsertedClosing(I,E,x))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(b,R,M,k,x){var L=k.doc.getTextRange(x);if(!x.isMultiLine()&&L=="("){o(M);var O=k.doc.getLine(x.start.row),I=O.substring(x.start.column+1,x.start.column+2);if(I==")")return x.end.column++,x}}),this.add("brackets","insertion",function(b,R,M,k,x){if(x=="["){o(M);var L=M.getSelectionRange(),O=k.doc.getTextRange(L);if(O!==""&&M.getWrapBehavioursEnabled())return u(L,O,"[","]");if(d.isSaneInsertion(M,k))return d.recordAutoInsert(M,k,"]"),{text:"[]",selection:[1,1]}}else if(x=="]"){o(M);var I=M.getCursorPosition(),E=k.doc.getLine(I.row),z=E.substring(I.column,I.column+1);if(z=="]"){var P=k.$findOpeningBracket("]",{column:I.column+1,row:I.row});if(P!==null&&d.isAutoInsertedClosing(I,E,x))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(b,R,M,k,x){var L=k.doc.getTextRange(x);if(!x.isMultiLine()&&L=="["){o(M);var O=k.doc.getLine(x.start.row),I=O.substring(x.start.column+1,x.start.column+2);if(I=="]")return x.end.column++,x}}),this.add("string_dquotes","insertion",function(b,R,M,k,x){var L=k.$mode.$quotes||l;if(x.length==1&&L[x]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(x)!=-1)return;o(M);var O=x,I=M.getSelectionRange(),E=k.doc.getTextRange(I);if(E!==""&&(E.length!=1||!L[E])&&M.getWrapBehavioursEnabled())return u(I,E,O,O);if(!E){var z=M.getCursorPosition(),P=k.doc.getLine(z.row),N=P.substring(z.column-1,z.column),S=P.substring(z.column,z.column+1),A=k.getTokenAt(z.row,z.column),D=k.getTokenAt(z.row,z.column+1);if(N=="\\"&&A&&/escape/.test(A.type))return null;var j=A&&/string|escape/.test(A.type),U=!D||/string|escape/.test(D.type),q;if(S==O)q=j!==U,q&&/string\.end/.test(D.type)&&(q=!1);else{if(j&&!U||j&&U)return null;var Z=k.$mode.tokenRe;Z.lastIndex=0;var te=Z.test(N);Z.lastIndex=0;var he=Z.test(S),ne=k.$mode.$pairQuotesAfter,le=ne&&ne[O]&&ne[O].test(N);if(!le&&te||he||S&&!/[\s;,.})\]\\]/.test(S))return null;var ue=P[z.column-2];if(N==O&&(ue==O||Z.test(ue)))return null;q=!0}return{text:q?O+O:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(b,R,M,k,x){var L=k.$mode.$quotes||l,O=k.doc.getTextRange(x);if(!x.isMultiLine()&&L.hasOwnProperty(O)){o(M);var I=k.doc.getLine(x.start.row),E=I.substring(x.start.column+1,x.start.column+2);if(E==O)return x.end.column++,x}}),w.closeDocComment!==!1&&this.add("doc comment end","insertion",function(b,R,M,k,x){if(b==="doc-start"&&(x===`
184
+ `||x===`\r
185
+ `)&&M.selection.isEmpty()){var L=M.getCursorPosition();if(L.column===0)return;for(var O=k.doc.getLine(L.row),I=k.doc.getLine(L.row+1),E=k.getTokens(L.row),z=0,P=0;P<E.length;P++){z+=E[P].value.length;var N=E[P];if(z>=L.column){if(z===L.column){if(!/\.doc/.test(N.type))return;if(/\*\//.test(N.value)){var S=E[P+1];if(!S||!/\.doc/.test(S.type))return}}var A=L.column-(z-N.value.length),D=N.value.indexOf("*/"),j=N.value.indexOf("/**",D>-1?D+2:0);if(j!==-1&&A>j&&A<j+3||D!==-1&&j!==-1&&A>=D&&A<=j||!/\.doc/.test(N.type))return;break}}var U=this.$getIndent(O);if(/\s*\*/.test(I))return/^\s*\*/.test(O)?{text:x+U+"* ",selection:[1,2+U.length,1,2+U.length]}:{text:x+U+" * ",selection:[1,3+U.length,1,3+U.length]};if(/\/\*\*/.test(O.substring(0,L.column)))return{text:x+U+" * "+x+" "+U+"*/",selection:[1,4+U.length,1,4+U.length]}}})},d.isSaneInsertion=function(w,b){var R=w.getCursorPosition(),M=new C(b,R.row,R.column);if(!this.$matchTokenType(M.getCurrentToken()||"text",p)){if(/[)}\]]/.test(w.session.getLine(R.row)[R.column]))return!0;var k=new C(b,R.row,R.column+1);if(!this.$matchTokenType(k.getCurrentToken()||"text",p))return!1}return M.stepForward(),M.getCurrentTokenRow()!==R.row||this.$matchTokenType(M.getCurrentToken()||"text",s)},d.$matchTokenType=function(w,b){return b.indexOf(w.type||w)>-1},d.recordAutoInsert=function(w,b,R){var M=w.getCursorPosition(),k=b.doc.getLine(M.row);this.isAutoInsertedClosing(M,k,a.autoInsertedLineEnd[0])||(a.autoInsertedBrackets=0),a.autoInsertedRow=M.row,a.autoInsertedLineEnd=R+k.substr(M.column),a.autoInsertedBrackets++},d.recordMaybeInsert=function(w,b,R){var M=w.getCursorPosition(),k=b.doc.getLine(M.row);this.isMaybeInsertedClosing(M,k)||(a.maybeInsertedBrackets=0),a.maybeInsertedRow=M.row,a.maybeInsertedLineStart=k.substr(0,M.column)+R,a.maybeInsertedLineEnd=k.substr(M.column),a.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(w,b,R){return a.autoInsertedBrackets>0&&w.row===a.autoInsertedRow&&R===a.autoInsertedLineEnd[0]&&b.substr(w.column)===a.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(w,b){return a.maybeInsertedBrackets>0&&w.row===a.maybeInsertedRow&&b.substr(w.column)===a.maybeInsertedLineEnd&&b.substr(0,w.column)==a.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){a.autoInsertedLineEnd=a.autoInsertedLineEnd.substr(1),a.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){a&&(a.maybeInsertedBrackets=0,a.maybeInsertedRow=-1)},f.inherits(d,y),r.CstyleBehaviour=d}),ace.define("ace/unicode",["require","exports","module"],function(e,r,v){for(var f=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],y=0,C=[],h=0;h<f.length;h+=2)C.push(y+=f[h]),f[h+1]&&C.push(45,y+=f[h+1]);r.wordChars=String.fromCharCode.apply(null,C)}),ace.define("ace/mode/text",["require","exports","module","ace/config","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour/cstyle","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,r,v){var f=e("../config"),y=e("../tokenizer").Tokenizer,C=e("./text_highlight_rules").TextHighlightRules,h=e("./behaviour/cstyle").CstyleBehaviour,p=e("../unicode"),s=e("../lib/lang"),a=e("../token_iterator").TokenIterator,c=e("../range").Range,l;l=function(){this.HighlightRules=C},(function(){this.$defaultBehaviour=new h,this.tokenRe=new RegExp("^["+p.wordChars+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+p.wordChars+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new y(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(o,u,d,w){var b=u.doc,R=!0,M=!0,k=1/0,x=u.getTabSize(),L=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var O=this.lineCommentStart.map(s.escapeRegExp).join("|"),I=this.lineCommentStart[0];else var O=s.escapeRegExp(this.lineCommentStart),I=this.lineCommentStart;O=new RegExp("^(\\s*)(?:"+O+") ?"),L=u.getUseSoftTabs();var E=function(q,Z){var te=q.match(O);if(te){var he=te[1].length,ne=te[0].length;!S(q,he,ne)&&te[0][ne-1]==" "&&ne--,b.removeInLine(Z,he,ne)}},z=I+" ",P=function(q,Z){(!R||/\S/.test(q))&&(S(q,k,k)?b.insertInLine({row:Z,column:k},z):b.insertInLine({row:Z,column:k},I))},N=function(q,Z){return O.test(q)},S=function(q,Z,te){for(var he=0;Z--&&q.charAt(Z)==" ";)he++;if(he%x!=0)return!1;for(var he=0;q.charAt(te++)==" ";)he++;return x>2?he%x!=x-1:he%x==0}}else{if(!this.blockComment)return!1;var I=this.blockComment.start,A=this.blockComment.end,O=new RegExp("^(\\s*)(?:"+s.escapeRegExp(I)+")"),D=new RegExp("(?:"+s.escapeRegExp(A)+")\\s*$"),P=function(le,ue){N(le,ue)||(!R||/\S/.test(le))&&(b.insertInLine({row:ue,column:le.length},A),b.insertInLine({row:ue,column:k},I))},E=function(le,ue){var ce;(ce=le.match(D))&&b.removeInLine(ue,le.length-ce[0].length,le.length),(ce=le.match(O))&&b.removeInLine(ue,ce[1].length,ce[0].length)},N=function(le,ue){if(O.test(le))return!0;for(var ce=u.getTokens(ue),fe=0;fe<ce.length;fe++)if(ce[fe].type==="comment")return!0}}function j(q){for(var Z=d;Z<=w;Z++)q(b.getLine(Z),Z)}var U=1/0;j(function(q,Z){var te=q.search(/\S/);te!==-1?(te<k&&(k=te),M&&!N(q,Z)&&(M=!1)):U>q.length&&(U=q.length)}),k==1/0&&(k=U,R=!1,M=!1),L&&k%x!=0&&(k=Math.floor(k/x)*x),j(M?E:P)},this.toggleBlockComment=function(o,u,d,w){var b=this.blockComment;if(b){!b.start&&b[0]&&(b=b[0]);var R=new a(u,w.row,w.column),M=R.getCurrentToken();u.selection;var k=u.selection.toOrientedRange(),x,L;if(M&&/comment/.test(M.type)){for(var O,I;M&&/comment/.test(M.type);){var E=M.value.indexOf(b.start);if(E!=-1){var z=R.getCurrentTokenRow(),P=R.getCurrentTokenColumn()+E;O=new c(z,P,z,P+b.start.length);break}M=R.stepBackward()}for(var R=new a(u,w.row,w.column),M=R.getCurrentToken();M&&/comment/.test(M.type);){var E=M.value.indexOf(b.end);if(E!=-1){var z=R.getCurrentTokenRow(),P=R.getCurrentTokenColumn()+E;I=new c(z,P,z,P+b.end.length);break}M=R.stepForward()}I&&u.remove(I),O&&(u.remove(O),x=O.start.row,L=-b.start.length)}else L=b.start.length,x=d.start.row,u.insert(d.end,b.end),u.insert(d.start,b.start);k.start.row==x&&(k.start.column+=L),k.end.row==x&&(k.end.column+=L),u.selection.fromOrientedRange(k)}},this.getNextLineIndent=function(o,u,d){return this.$getIndent(u)},this.checkOutdent=function(o,u,d){return!1},this.autoOutdent=function(o,u,d){},this.$getIndent=function(o){return o.match(/^\s*/)[0]},this.createWorker=function(o){return null},this.createModeDelegates=function(o){this.$embeds=[],this.$modes={};for(var u in o)if(o[u]){var d=o[u],w=d.prototype.$id,b=f.$modes[w];b||(f.$modes[w]=b=new d),f.$modes[u]||(f.$modes[u]=b),this.$embeds.push(u),this.$modes[u]=b}for(var R=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],M=function(L){(function(O){var I=R[L],E=O[I];O[R[L]]=function(){return this.$delegator(I,arguments,E)}})(k)},k=this,u=0;u<R.length;u++)M(u)},this.$delegator=function(o,u,d){var w=u[0]||"start";if(typeof w!="string"){if(Array.isArray(w[2])){var b=w[2][w[2].length-1],R=this.$modes[b];if(R)return R[o].apply(R,[w[1]].concat([].slice.call(u,1)))}w=w[0]||"start"}for(var M=0;M<this.$embeds.length;M++)if(this.$modes[this.$embeds[M]]){var k=w.split(this.$embeds[M]);if(!k[0]&&k[1]){u[0]=k[1];var R=this.$modes[this.$embeds[M]];return R[o].apply(R,u)}}var x=d.apply(this,u);return d?x:void 0},this.transformAction=function(o,u,d,w,b){if(this.$behaviour){var R=this.$behaviour.getBehaviours();for(var M in R)if(R[M][u]){var k=R[M][u].apply(this,arguments);if(k)return k}}},this.getKeywords=function(o){if(!this.completionKeywords){var u=this.$tokenizer.rules,d=[];for(var w in u)for(var b=u[w],R=0,M=b.length;R<M;R++)if(typeof b[R].token=="string")/keyword|support|storage/.test(b[R].token)&&d.push(b[R].regex);else if(typeof b[R].token=="object"){for(var k=0,x=b[R].token.length;k<x;k++)if(/keyword|support|storage/.test(b[R].token[k])){var w=b[R].regex.match(/\(.+?\)/g)[k];d.push(w.substr(1,w.length-2))}}this.completionKeywords=d}return o?d.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(o,u,d,w){var b=this.$keywordList||this.$createKeywordList();return b.map(function(R){return{name:R,value:R,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(l.prototype),r.Mode=l}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(e,r,v){var f=e("./lib/dom"),y=function(){function C(h){this.session=h,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)}return C.prototype.getRowLength=function(h){var p;return this.lineWidgets?p=this.lineWidgets[h]&&this.lineWidgets[h].rowCount||0:p=0,!this.$useWrapMode||!this.$wrapData[h]?1+p:this.$wrapData[h].length+1+p},C.prototype.$getWidgetScreenLength=function(){var h=0;return this.lineWidgets.forEach(function(p){p&&p.rowCount&&!p.hidden&&(h+=p.rowCount)}),h},C.prototype.$onChangeEditor=function(h){this.attach(h.editor)},C.prototype.attach=function(h){h&&h.widgetManager&&h.widgetManager!=this&&h.widgetManager.detach(),this.editor!=h&&(this.detach(),this.editor=h,h&&(h.widgetManager=this,h.renderer.on("beforeRender",this.measureWidgets),h.renderer.on("afterRender",this.renderWidgets)))},C.prototype.detach=function(h){var p=this.editor;if(p){this.editor=null,p.widgetManager=null,p.renderer.off("beforeRender",this.measureWidgets),p.renderer.off("afterRender",this.renderWidgets);var s=this.session.lineWidgets;s&&s.forEach(function(a){a&&a.el&&a.el.parentNode&&(a._inDocument=!1,a.el.parentNode.removeChild(a.el))})}},C.prototype.updateOnFold=function(h,p){var s=p.lineWidgets;if(!(!s||!h.action)){for(var a=h.data,c=a.start.row,l=a.end.row,o=h.action=="add",u=c+1;u<l;u++)s[u]&&(s[u].hidden=o);s[l]&&(o?s[c]?s[l].hidden=o:s[c]=s[l]:(s[c]==s[l]&&(s[c]=void 0),s[l].hidden=o))}},C.prototype.updateOnChange=function(h){var p=this.session.lineWidgets;if(p){var s=h.start.row,a=h.end.row-s;if(a!==0)if(h.action=="remove"){var c=p.splice(s+1,a);!p[s]&&c[c.length-1]&&(p[s]=c.pop()),c.forEach(function(o){o&&this.removeLineWidget(o)},this),this.$updateRows()}else{var l=new Array(a);p[s]&&p[s].column!=null&&h.start.column>p[s].column&&s++,l.unshift(s,0),p.splice.apply(p,l),this.$updateRows()}}},C.prototype.$updateRows=function(){var h=this.session.lineWidgets;if(h){var p=!0;h.forEach(function(s,a){if(s)for(p=!1,s.row=a;s.$oldWidget;)s.$oldWidget.row=a,s=s.$oldWidget}),p&&(this.session.lineWidgets=null)}},C.prototype.$registerLineWidget=function(h){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var p=this.session.lineWidgets[h.row];return p&&(h.$oldWidget=p,p.el&&p.el.parentNode&&(p.el.parentNode.removeChild(p.el),p._inDocument=!1)),this.session.lineWidgets[h.row]=h,h},C.prototype.addLineWidget=function(h){if(this.$registerLineWidget(h),h.session=this.session,!this.editor)return h;var p=this.editor.renderer;h.html&&!h.el&&(h.el=f.createElement("div"),h.el.innerHTML=h.html),h.text&&!h.el&&(h.el=f.createElement("div"),h.el.textContent=h.text),h.el&&(f.addCssClass(h.el,"ace_lineWidgetContainer"),h.className&&f.addCssClass(h.el,h.className),h.el.style.position="absolute",h.el.style.zIndex="5",p.container.appendChild(h.el),h._inDocument=!0,h.coverGutter||(h.el.style.zIndex="3"),h.pixelHeight==null&&(h.pixelHeight=h.el.offsetHeight)),h.rowCount==null&&(h.rowCount=h.pixelHeight/p.layerConfig.lineHeight);var s=this.session.getFoldAt(h.row,0);if(h.$fold=s,s){var a=this.session.lineWidgets;h.row==s.end.row&&!a[s.start.row]?a[s.start.row]=h:h.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:h.row}}}),this.$updateRows(),this.renderWidgets(null,p),this.onWidgetChanged(h),h},C.prototype.removeLineWidget=function(h){if(h._inDocument=!1,h.session=null,h.el&&h.el.parentNode&&h.el.parentNode.removeChild(h.el),h.editor&&h.editor.destroy)try{h.editor.destroy()}catch{}if(this.session.lineWidgets){var p=this.session.lineWidgets[h.row];if(p==h)this.session.lineWidgets[h.row]=h.$oldWidget,h.$oldWidget&&this.onWidgetChanged(h.$oldWidget);else for(;p;){if(p.$oldWidget==h){p.$oldWidget=h.$oldWidget;break}p=p.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:h.row}}}),this.$updateRows()},C.prototype.getWidgetsAtRow=function(h){for(var p=this.session.lineWidgets,s=p&&p[h],a=[];s;)a.push(s),s=s.$oldWidget;return a},C.prototype.onWidgetChanged=function(h){this.session._changedWidgets.push(h),this.editor&&this.editor.renderer.updateFull()},C.prototype.measureWidgets=function(h,p){var s=this.session._changedWidgets,a=p.layerConfig;if(!(!s||!s.length)){for(var c=1/0,l=0;l<s.length;l++){var o=s[l];if(!(!o||!o.el)&&o.session==this.session){if(!o._inDocument){if(this.session.lineWidgets[o.row]!=o)continue;o._inDocument=!0,p.container.appendChild(o.el)}o.h=o.el.offsetHeight,o.fixedWidth||(o.w=o.el.offsetWidth,o.screenWidth=Math.ceil(o.w/a.characterWidth));var u=o.h/a.lineHeight;o.coverLine&&(u-=this.session.getRowLineCount(o.row),u<0&&(u=0)),o.rowCount!=u&&(o.rowCount=u,o.row<c&&(c=o.row))}}c!=1/0&&(this.session._emit("changeFold",{data:{start:{row:c}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},C.prototype.renderWidgets=function(h,p){var s=p.layerConfig,a=this.session.lineWidgets;if(a){for(var c=Math.min(this.firstRow,s.firstRow),l=Math.max(this.lastRow,s.lastRow,a.length);c>0&&!a[c];)c--;this.firstRow=s.firstRow,this.lastRow=s.lastRow,p.$cursorLayer.config=s;for(var o=c;o<=l;o++){var u=a[o];if(!(!u||!u.el)){if(u.hidden){u.el.style.top=-100-(u.pixelHeight||0)+"px";continue}u._inDocument||(u._inDocument=!0,p.container.appendChild(u.el));var d=p.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(d+=s.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=d-s.offset+"px";var w=u.coverGutter?0:p.gutterWidth;u.fixedWidth||(w-=p.scrollLeft),u.el.style.left=w+"px",u.fullWidth&&u.screenWidth&&(u.el.style.minWidth=s.width+2*s.padding+"px"),u.fixedWidth?u.el.style.right=p.scrollBar.getWidth()+"px":u.el.style.right=""}}}},C}();r.LineWidgets=y}),ace.define("ace/apply_delta",["require","exports","module"],function(e,r,v){r.applyDelta=function(f,y,C){var h=y.start.row,p=y.start.column,s=f[h]||"";switch(y.action){case"insert":var a=y.lines;if(a.length===1)f[h]=s.substring(0,p)+y.lines[0]+s.substring(p);else{var c=[h,1].concat(y.lines);f.splice.apply(f,c),f[h]=s.substring(0,p)+f[h],f[h+y.lines.length-1]+=s.substring(p)}break;case"remove":var l=y.end.column,o=y.end.row;h===o?f[h]=s.substring(0,p)+s.substring(l):f.splice(h,o-h+1,s.substring(0,p)+f[o].substring(l));break}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,r,v){var f=e("./lib/oop"),y=e("./lib/event_emitter").EventEmitter,C=function(){function s(a,c,l){this.$onChange=this.onChange.bind(this),this.attach(a),typeof c!="number"?this.setPosition(c.row,c.column):this.setPosition(c,l)}return s.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},s.prototype.getDocument=function(){return this.document},s.prototype.onChange=function(a){if(!(a.start.row==a.end.row&&a.start.row!=this.row)&&!(a.start.row>this.row)){var c=p(a,{row:this.row,column:this.column},this.$insertRight);this.setPosition(c.row,c.column,!0)}},s.prototype.setPosition=function(a,c,l){var o;if(l?o={row:a,column:c}:o=this.$clipPositionToDocument(a,c),!(this.row==o.row&&this.column==o.column)){var u={row:this.row,column:this.column};this.row=o.row,this.column=o.column,this._signal("change",{old:u,value:o})}},s.prototype.detach=function(){this.document.off("change",this.$onChange)},s.prototype.attach=function(a){this.document=a||this.document,this.document.on("change",this.$onChange)},s.prototype.$clipPositionToDocument=function(a,c){var l={};return a>=this.document.getLength()?(l.row=Math.max(0,this.document.getLength()-1),l.column=this.document.getLine(l.row).length):a<0?(l.row=0,l.column=0):(l.row=a,l.column=Math.min(this.document.getLine(l.row).length,Math.max(0,c))),c<0&&(l.column=0),l},s}();C.prototype.$insertRight=!1,f.implement(C.prototype,y);function h(s,a,c){var l=c?s.column<=a.column:s.column<a.column;return s.row<a.row||s.row==a.row&&l}function p(s,a,c){var l=s.action=="insert",o=(l?1:-1)*(s.end.row-s.start.row),u=(l?1:-1)*(s.end.column-s.start.column),d=s.start,w=l?d:s.end;return h(a,d,c)?{row:a.row,column:a.column}:h(w,a,!c)?{row:a.row+o,column:a.column+(a.row==w.row?u:0)}:{row:d.row,column:d.column}}r.Anchor=C}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,r,v){var f=e("./lib/oop"),y=e("./apply_delta").applyDelta,C=e("./lib/event_emitter").EventEmitter,h=e("./range").Range,p=e("./anchor").Anchor,s=function(){function a(c){this.$lines=[""],c.length===0?this.$lines=[""]:Array.isArray(c)?this.insertMergedLines({row:0,column:0},c):this.insert({row:0,column:0},c)}return a.prototype.setValue=function(c){var l=this.getLength()-1;this.remove(new h(0,0,l,this.getLine(l).length)),this.insert({row:0,column:0},c||"")},a.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},a.prototype.createAnchor=function(c,l){return new p(this,c,l)},a.prototype.$detectNewLine=function(c){var l=c.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=l?l[1]:`
186
+ `,this._signal("changeNewLineMode")},a.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return`\r
187
+ `;case"unix":return`
188
+ `;default:return this.$autoNewLine||`
189
+ `}},a.prototype.setNewLineMode=function(c){this.$newLineMode!==c&&(this.$newLineMode=c,this._signal("changeNewLineMode"))},a.prototype.getNewLineMode=function(){return this.$newLineMode},a.prototype.isNewLine=function(c){return c==`\r
190
+ `||c=="\r"||c==`
191
+ `},a.prototype.getLine=function(c){return this.$lines[c]||""},a.prototype.getLines=function(c,l){return this.$lines.slice(c,l+1)},a.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},a.prototype.getLength=function(){return this.$lines.length},a.prototype.getTextRange=function(c){return this.getLinesForRange(c).join(this.getNewLineCharacter())},a.prototype.getLinesForRange=function(c){var l;if(c.start.row===c.end.row)l=[this.getLine(c.start.row).substring(c.start.column,c.end.column)];else{l=this.getLines(c.start.row,c.end.row),l[0]=(l[0]||"").substring(c.start.column);var o=l.length-1;c.end.row-c.start.row==o&&(l[o]=l[o].substring(0,c.end.column))}return l},a.prototype.insertLines=function(c,l){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(c,l)},a.prototype.removeLines=function(c,l){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(c,l)},a.prototype.insertNewLine=function(c){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(c,["",""])},a.prototype.insert=function(c,l){return this.getLength()<=1&&this.$detectNewLine(l),this.insertMergedLines(c,this.$split(l))},a.prototype.insertInLine=function(c,l){var o=this.clippedPos(c.row,c.column),u=this.pos(c.row,c.column+l.length);return this.applyDelta({start:o,end:u,action:"insert",lines:[l]},!0),this.clonePos(u)},a.prototype.clippedPos=function(c,l){var o=this.getLength();c===void 0?c=o:c<0?c=0:c>=o&&(c=o-1,l=void 0);var u=this.getLine(c);return l==null&&(l=u.length),l=Math.min(Math.max(l,0),u.length),{row:c,column:l}},a.prototype.clonePos=function(c){return{row:c.row,column:c.column}},a.prototype.pos=function(c,l){return{row:c,column:l}},a.prototype.$clipPosition=function(c){var l=this.getLength();return c.row>=l?(c.row=Math.max(0,l-1),c.column=this.getLine(l-1).length):(c.row=Math.max(0,c.row),c.column=Math.min(Math.max(c.column,0),this.getLine(c.row).length)),c},a.prototype.insertFullLines=function(c,l){c=Math.min(Math.max(c,0),this.getLength());var o=0;c<this.getLength()?(l=l.concat([""]),o=0):(l=[""].concat(l),c--,o=this.$lines[c].length),this.insertMergedLines({row:c,column:o},l)},a.prototype.insertMergedLines=function(c,l){var o=this.clippedPos(c.row,c.column),u={row:o.row+l.length-1,column:(l.length==1?o.column:0)+l[l.length-1].length};return this.applyDelta({start:o,end:u,action:"insert",lines:l}),this.clonePos(u)},a.prototype.remove=function(c){var l=this.clippedPos(c.start.row,c.start.column),o=this.clippedPos(c.end.row,c.end.column);return this.applyDelta({start:l,end:o,action:"remove",lines:this.getLinesForRange({start:l,end:o})}),this.clonePos(l)},a.prototype.removeInLine=function(c,l,o){var u=this.clippedPos(c,l),d=this.clippedPos(c,o);return this.applyDelta({start:u,end:d,action:"remove",lines:this.getLinesForRange({start:u,end:d})},!0),this.clonePos(u)},a.prototype.removeFullLines=function(c,l){c=Math.min(Math.max(0,c),this.getLength()-1),l=Math.min(Math.max(0,l),this.getLength()-1);var o=l==this.getLength()-1&&c>0,u=l<this.getLength()-1,d=o?c-1:c,w=o?this.getLine(d).length:0,b=u?l+1:l,R=u?0:this.getLine(b).length,M=new h(d,w,b,R),k=this.$lines.slice(c,l+1);return this.applyDelta({start:M.start,end:M.end,action:"remove",lines:this.getLinesForRange(M)}),k},a.prototype.removeNewLine=function(c){c<this.getLength()-1&&c>=0&&this.applyDelta({start:this.pos(c,this.getLine(c).length),end:this.pos(c+1,0),action:"remove",lines:["",""]})},a.prototype.replace=function(c,l){if(c instanceof h||(c=h.fromPoints(c.start,c.end)),l.length===0&&c.isEmpty())return c.start;if(l==this.getTextRange(c))return c.end;this.remove(c);var o;return l?o=this.insert(c.start,l):o=c.start,o},a.prototype.applyDeltas=function(c){for(var l=0;l<c.length;l++)this.applyDelta(c[l])},a.prototype.revertDeltas=function(c){for(var l=c.length-1;l>=0;l--)this.revertDelta(c[l])},a.prototype.applyDelta=function(c,l){var o=c.action=="insert";(o?c.lines.length<=1&&!c.lines[0]:!h.comparePoints(c.start,c.end))||(o&&c.lines.length>2e4?this.$splitAndapplyLargeDelta(c,2e4):(y(this.$lines,c,l),this._signal("change",c)))},a.prototype.$safeApplyDelta=function(c){var l=this.$lines.length;(c.action=="remove"&&c.start.row<l&&c.end.row<l||c.action=="insert"&&c.start.row<=l)&&this.applyDelta(c)},a.prototype.$splitAndapplyLargeDelta=function(c,l){for(var o=c.lines,u=o.length-l+1,d=c.start.row,w=c.start.column,b=0,R=0;b<u;b=R){R+=l-1;var M=o.slice(b,R);M.push(""),this.applyDelta({start:this.pos(d+b,w),end:this.pos(d+R,w=0),action:c.action,lines:M},!0)}c.lines=o.slice(b),c.start.row=d+b,c.start.column=w,this.applyDelta(c,!0)},a.prototype.revertDelta=function(c){this.$safeApplyDelta({start:this.clonePos(c.start),end:this.clonePos(c.end),action:c.action=="insert"?"remove":"insert",lines:c.lines.slice()})},a.prototype.indexToPosition=function(c,l){for(var o=this.$lines||this.getAllLines(),u=this.getNewLineCharacter().length,d=l||0,w=o.length;d<w;d++)if(c-=o[d].length+u,c<0)return{row:d,column:c+o[d].length+u};return{row:w-1,column:c+o[w-1].length+u}},a.prototype.positionToIndex=function(c,l){for(var o=this.$lines||this.getAllLines(),u=this.getNewLineCharacter().length,d=0,w=Math.min(c.row,o.length),b=l||0;b<w;++b)d+=o[b].length+u;return d+c.column},a.prototype.$split=function(c){return c.split(/\r\n|\r|\n/)},a}();s.prototype.$autoNewLine="",s.prototype.$newLineMode="auto",f.implement(s.prototype,C),r.Document=s}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,r,v){var f=e("./lib/oop"),y=e("./lib/event_emitter").EventEmitter,C=function(){function h(p,s){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=p;var a=this;this.$worker=function(){if(a.running){for(var c=new Date,l=a.currentLine,o=-1,u=a.doc,d=l;a.lines[l];)l++;var w=u.getLength(),b=0;for(a.running=!1;l<w;){a.$tokenizeRow(l),o=l;do l++;while(a.lines[l]);if(b++,b%5===0&&new Date-c>20){a.running=setTimeout(a.$worker,20);break}}a.currentLine=l,o==-1&&(o=l),d<=o&&a.fireUpdateEvent(d,o)}}}return h.prototype.setTokenizer=function(p){this.tokenizer=p,this.lines=[],this.states=[],this.start(0)},h.prototype.setDocument=function(p){this.doc=p,this.lines=[],this.states=[],this.stop()},h.prototype.fireUpdateEvent=function(p,s){var a={first:p,last:s};this._signal("update",{data:a})},h.prototype.start=function(p){this.currentLine=Math.min(p||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)},h.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},h.prototype.$updateOnChange=function(p){var s=p.start.row,a=p.end.row-s;if(a===0)this.lines[s]=null;else if(p.action=="remove")this.lines.splice(s,a+1,null),this.states.splice(s,a+1,null);else{var c=Array(a+1);c.unshift(s,1),this.lines.splice.apply(this.lines,c),this.states.splice.apply(this.states,c)}this.currentLine=Math.min(s,this.currentLine,this.doc.getLength()),this.stop()},h.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},h.prototype.getTokens=function(p){return this.lines[p]||this.$tokenizeRow(p)},h.prototype.getState=function(p){return this.currentLine==p&&this.$tokenizeRow(p),this.states[p]||"start"},h.prototype.$tokenizeRow=function(p){var s=this.doc.getLine(p),a=this.states[p-1],c=this.tokenizer.getLineTokens(s,a,p);return this.states[p]+""!=c.state+""?(this.states[p]=c.state,this.lines[p+1]=null,this.currentLine>p+1&&(this.currentLine=p+1)):this.currentLine==p&&(this.currentLine=p+1),this.lines[p]=c.tokens},h.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},h}();f.implement(C.prototype,y),r.BackgroundTokenizer=C}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(e,r,v){var f=e("./lib/lang"),y=e("./range").Range,C=function(){function h(p,s,a){a===void 0&&(a="text"),this.setRegexp(p),this.clazz=s,this.type=a,this.docLen=0}return h.prototype.setRegexp=function(p){this.regExp+""!=p+""&&(this.regExp=p,this.cache=[])},h.prototype.update=function(p,s,a,c){if(this.regExp){for(var l=c.firstRow,o=c.lastRow,u={},d=a.$editor&&a.$editor.$search,w=d&&d.$isMultilineSearch(a.$editor.getLastSearchOptions()),b=l;b<=o;b++){var R=this.cache[b];if(R==null||a.getValue().length!=this.docLen){if(w){R=[];var M=d.$multiLineForward(a,this.regExp,b,o);if(M){var k=M.endRow<=o?M.endRow-1:o;k>b&&(b=k),R.push(new y(M.startRow,M.startCol,M.endRow,M.endCol))}R.length>this.MAX_RANGES&&(R=R.slice(0,this.MAX_RANGES))}else R=f.getMatchOffsets(a.getLine(b),this.regExp),R.length>this.MAX_RANGES&&(R=R.slice(0,this.MAX_RANGES)),R=R.map(function(I){return new y(b,I.offset,b,I.offset+I.length)});this.cache[b]=R.length?R:""}if(R.length!==0)for(var x=R.length;x--;){var L=R[x].toScreenRange(a),O=L.toString();u[O]||(u[O]=!0,s.drawSingleLineMarker(p,L,this.clazz,c))}}this.docLen=a.getValue().length}},h}();C.prototype.MAX_RANGES=500,r.SearchHighlight=C}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(e,r,v){var f=function(){function k(){this.$keepRedoStack,this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return k.prototype.addSession=function(x){this.$session=x},k.prototype.add=function(x,L,O){if(!this.$fromUndo&&x!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),L===!1||!this.lastDeltas){this.lastDeltas=[];var I=this.$undoStack.length;I>this.$undoDepth-1&&this.$undoStack.splice(0,I-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),x.id=this.$rev=++this.$maxRev}(x.action=="remove"||x.action=="insert")&&(this.$lastDelta=x),this.lastDeltas.push(x)}},k.prototype.addSelection=function(x,L){this.selections.push({value:x,rev:L||this.$rev})},k.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},k.prototype.markIgnored=function(x,L){L==null&&(L=this.$rev+1);for(var O=this.$undoStack,I=O.length;I--;){var E=O[I][0];if(E.id<=x)break;E.id<L&&(E.ignore=!0)}this.lastDeltas=null},k.prototype.getSelection=function(x,L){for(var O=this.selections,I=O.length;I--;){var E=O[I];if(E.rev<x)return L&&(E=O[I+1]),E}},k.prototype.getRevision=function(){return this.$rev},k.prototype.getDeltas=function(x,L){L==null&&(L=this.$rev+1);for(var O=this.$undoStack,I=null,E=0,z=O.length;z--;){var P=O[z][0];if(P.id<L&&!I&&(I=z+1),P.id<=x){E=z+1;break}}return O.slice(E,I)},k.prototype.getChangedRanges=function(x,L){L==null&&(L=this.$rev+1)},k.prototype.getChangedLines=function(x,L){L==null&&(L=this.$rev+1)},k.prototype.undo=function(x,L){this.lastDeltas=null;var O=this.$undoStack;if(y(O,O.length)){x||(x=this.$session),this.$redoStackBaseRev!==this.$rev&&this.$redoStack.length&&(this.$redoStack=[]),this.$fromUndo=!0;var I=O.pop(),E=null;return I&&(E=x.undoChanges(I,L),this.$redoStack.push(I),this.$syncRev()),this.$fromUndo=!1,E}},k.prototype.redo=function(x,L){if(this.lastDeltas=null,x||(x=this.$session),this.$fromUndo=!0,this.$redoStackBaseRev!=this.$rev){var O=this.getDeltas(this.$redoStackBaseRev,this.$rev+1);M(this.$redoStack,O),this.$redoStackBaseRev=this.$rev,this.$redoStack.forEach(function(z){z[0].id=++this.$maxRev},this)}var I=this.$redoStack.pop(),E=null;return I&&(E=x.redoChanges(I,L),this.$undoStack.push(I),this.$syncRev()),this.$fromUndo=!1,E},k.prototype.$syncRev=function(){var x=this.$undoStack,L=x[x.length-1],O=L&&L[0].id||0;this.$redoStackBaseRev=O,this.$rev=O},k.prototype.reset=function(){this.lastDeltas=null,this.$lastDelta=null,this.$undoStack=[],this.$redoStack=[],this.$rev=0,this.mark=0,this.$redoStackBaseRev=this.$rev,this.selections=[]},k.prototype.canUndo=function(){return this.$undoStack.length>0},k.prototype.canRedo=function(){return this.$redoStack.length>0},k.prototype.bookmark=function(x){x==null&&(x=this.$rev),this.mark=x},k.prototype.isAtBookmark=function(){return this.$rev===this.mark},k.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},k.prototype.fromJSON=function(x){this.reset(),this.$undoStack=x.$undoStack,this.$redoStack=x.$redoStack},k.prototype.$prettyPrint=function(x){return x?a(x):a(this.$undoStack)+`
192
+ ---
193
+ `+a(this.$redoStack)},k}();f.prototype.hasUndo=f.prototype.canUndo,f.prototype.hasRedo=f.prototype.canRedo,f.prototype.isClean=f.prototype.isAtBookmark,f.prototype.markClean=f.prototype.bookmark;function y(k,x){for(var L=x;L--;){var O=k[L];if(O&&!O[0].ignore){for(;L<x-1;){var I=o(k[L],k[L+1]);k[L]=I[0],k[L+1]=I[1],L++}return!0}}}var C=e("./range").Range,h=C.comparePoints;C.comparePoints;function p(k){return{row:k.row,column:k.column}}function s(k){return{start:p(k.start),end:p(k.end),action:k.action,lines:k.lines.slice()}}function a(k){if(k=k||this,Array.isArray(k))return k.map(a).join(`
194
+ `);var x="";return k.action?(x=k.action=="insert"?"+":"-",x+="["+k.lines+"]"):k.value&&(Array.isArray(k.value)?x=k.value.map(c).join(`
195
+ `):x=c(k.value)),k.start&&(x+=c(k)),(k.id||k.rev)&&(x+=" ("+(k.id||k.rev)+")"),x}function c(k){return k.start.row+":"+k.start.column+"=>"+k.end.row+":"+k.end.column}function l(k,x){var L=k.action=="insert",O=x.action=="insert";if(L&&O)if(h(x.start,k.end)>=0)d(x,k,-1);else if(h(x.start,k.start)<=0)d(k,x,1);else return null;else if(L&&!O)if(h(x.start,k.end)>=0)d(x,k,-1);else if(h(x.end,k.start)<=0)d(k,x,-1);else return null;else if(!L&&O)if(h(x.start,k.start)>=0)d(x,k,1);else if(h(x.start,k.start)<=0)d(k,x,1);else return null;else if(!L&&!O)if(h(x.start,k.start)>=0)d(x,k,1);else if(h(x.end,k.start)<=0)d(k,x,-1);else return null;return[x,k]}function o(k,x){for(var L=k.length;L--;)for(var O=0;O<x.length;O++)if(!l(k[L],x[O])){for(;L<k.length;){for(;O--;)l(x[O],k[L]);O=x.length,L++}return[k,x]}return k.selectionBefore=x.selectionBefore=k.selectionAfter=x.selectionAfter=null,[x,k]}function u(k,x){var L=k.action=="insert",O=x.action=="insert";if(L&&O)h(k.start,x.start)<0?d(x,k,1):d(k,x,1);else if(L&&!O)h(k.start,x.end)>=0?d(k,x,-1):(h(k.start,x.start)<=0||d(k,C.fromPoints(x.start,k.start),-1),d(x,k,1));else if(!L&&O)h(x.start,k.end)>=0?d(x,k,-1):(h(x.start,k.start)<=0||d(x,C.fromPoints(k.start,x.start),-1),d(k,x,1));else if(!L&&!O)if(h(x.start,k.end)>=0)d(x,k,-1);else if(h(x.end,k.start)<=0)d(k,x,-1);else{var I,E;return h(k.start,x.start)<0&&(I=k,k=b(k,x.start)),h(k.end,x.end)>0&&(E=b(k,x.end)),w(x.end,k.start,k.end,-1),E&&!I&&(k.lines=E.lines,k.start=E.start,k.end=E.end,E=k),[x,I,E].filter(Boolean)}return[x,k]}function d(k,x,L){w(k.start,x.start,x.end,L),w(k.end,x.start,x.end,L)}function w(k,x,L,O){k.row==(O==1?x:L).row&&(k.column+=O*(L.column-x.column)),k.row+=O*(L.row-x.row)}function b(k,x){var L=k.lines,O=k.end;k.end=p(x);var I=k.end.row-k.start.row,E=L.splice(I,L.length),z=I?x.column:x.column-k.start.column;L.push(E[0].substring(0,z)),E[0]=E[0].substr(z);var P={start:p(x),end:O,lines:E,action:k.action};return P}function R(k,x){x=s(x);for(var L=k.length;L--;){for(var O=k[L],I=0;I<O.length;I++){var E=O[I],z=u(E,x);x=z[0],z.length!=2&&(z[2]?(O.splice(I+1,1,z[1],z[2]),I++):z[1]||(O.splice(I,1),I--))}O.length||k.splice(L,1)}return k}function M(k,x){for(var L=0;L<x.length;L++)for(var O=x[L],I=0;I<O.length;I++)R(k,O[I])}r.UndoManager=f}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,r,v){var f=e("../range").Range,y=function(){function C(h,p){this.foldData=h,Array.isArray(p)?this.folds=p:p=this.folds=[p];var s=p[p.length-1];this.range=new f(p[0].start.row,p[0].start.column,s.end.row,s.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(a){a.setFoldLine(this)},this)}return C.prototype.shiftRow=function(h){this.start.row+=h,this.end.row+=h,this.folds.forEach(function(p){p.start.row+=h,p.end.row+=h})},C.prototype.addFold=function(h){if(h.sameRow){if(h.start.row<this.startRow||h.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(h),this.folds.sort(function(p,s){return-p.range.compareEnd(s.start.row,s.start.column)}),this.range.compareEnd(h.start.row,h.start.column)>0?(this.end.row=h.end.row,this.end.column=h.end.column):this.range.compareStart(h.end.row,h.end.column)<0&&(this.start.row=h.start.row,this.start.column=h.start.column)}else if(h.start.row==this.end.row)this.folds.push(h),this.end.row=h.end.row,this.end.column=h.end.column;else if(h.end.row==this.start.row)this.folds.unshift(h),this.start.row=h.start.row,this.start.column=h.start.column;else throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");h.foldLine=this},C.prototype.containsRow=function(h){return h>=this.start.row&&h<=this.end.row},C.prototype.walk=function(h,p,s){var a=0,c=this.folds,l,o,u,d=!0;p==null&&(p=this.end.row,s=this.end.column);for(var w=0;w<c.length;w++){if(l=c[w],o=l.range.compareStart(p,s),o==-1){h(null,p,s,a,d);return}if(u=h(null,l.start.row,l.start.column,a,d),u=!u&&h(l.placeholder,l.start.row,l.start.column,a),u||o===0)return;d=!l.sameRow,a=l.end.column}h(null,p,s,a,d)},C.prototype.getNextFoldTo=function(h,p){for(var s,a,c=0;c<this.folds.length;c++){if(s=this.folds[c],a=s.range.compareEnd(h,p),a==-1)return{fold:s,kind:"after"};if(a===0)return{fold:s,kind:"inside"}}return null},C.prototype.addRemoveChars=function(h,p,s){var a=this.getNextFoldTo(h,p),c,l;if(a){if(c=a.fold,a.kind=="inside"&&c.start.column!=p&&c.start.row!=h)window.console&&window.console.log(h,p,c);else if(c.start.row==h){l=this.folds;var o=l.indexOf(c);for(o===0&&(this.start.column+=s),o;o<l.length;o++){if(c=l[o],c.start.column+=s,!c.sameRow)return;c.end.column+=s}this.end.column+=s}}},C.prototype.split=function(h,p){var s=this.getNextFoldTo(h,p);if(!s||s.kind=="inside")return null;var a=s.fold,c=this.folds,l=this.foldData,o=c.indexOf(a),u=c[o-1];this.end.row=u.end.row,this.end.column=u.end.column,c=c.splice(o,c.length-o);var d=new C(l,c);return l.splice(l.indexOf(this)+1,0,d),d},C.prototype.merge=function(h){for(var p=h.folds,s=0;s<p.length;s++)this.addFold(p[s]);var a=this.foldData;a.splice(a.indexOf(h),1)},C.prototype.toString=function(){var h=[this.range.toString()+": ["];return this.folds.forEach(function(p){h.push(" "+p.toString())}),h.push("]"),h.join(`
196
+ `)},C.prototype.idxToPosition=function(h){for(var p=0,s=0;s<this.folds.length;s++){var a=this.folds[s];if(h-=a.start.column-p,h<0)return{row:a.start.row,column:a.start.column+h};if(h-=a.placeholder.length,h<0)return a.start;p=a.end.column}return{row:this.end.row,column:this.end.column+h}},C}();r.FoldLine=y}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,r,v){var f=e("./range").Range,y=f.comparePoints,C=function(){function h(){this.ranges=[],this.$bias=1}return h.prototype.pointIndex=function(p,s,a){for(var c=this.ranges,l=a||0;l<c.length;l++){var o=c[l],u=y(p,o.end);if(!(u>0)){var d=y(p,o.start);return u===0?s&&d!==0?-l-2:l:d>0||d===0&&!s?l:-l-1}}return-l-1},h.prototype.add=function(p){var s=!p.isEmpty(),a=this.pointIndex(p.start,s);a<0&&(a=-a-1);var c=this.pointIndex(p.end,s,a);return c<0?c=-c-1:c++,this.ranges.splice(a,c-a,p)},h.prototype.addList=function(p){for(var s=[],a=p.length;a--;)s.push.apply(s,this.add(p[a]));return s},h.prototype.substractPoint=function(p){var s=this.pointIndex(p);if(s>=0)return this.ranges.splice(s,1)},h.prototype.merge=function(){var p=[],s=this.ranges;s=s.sort(function(u,d){return y(u.start,d.start)});for(var a=s[0],c,l=1;l<s.length;l++){c=a,a=s[l];var o=y(c.end,a.start);o<0||o==0&&!c.isEmpty()&&!a.isEmpty()||(y(c.end,a.end)<0&&(c.end.row=a.end.row,c.end.column=a.end.column),s.splice(l,1),p.push(a),a=c,l--)}return this.ranges=s,p},h.prototype.contains=function(p,s){return this.pointIndex({row:p,column:s})>=0},h.prototype.containsPoint=function(p){return this.pointIndex(p)>=0},h.prototype.rangeAtPoint=function(p){var s=this.pointIndex(p);if(s>=0)return this.ranges[s]},h.prototype.clipRows=function(p,s){var a=this.ranges;if(a[0].start.row>s||a[a.length-1].start.row<p)return[];var c=this.pointIndex({row:p,column:0});c<0&&(c=-c-1);var l=this.pointIndex({row:s,column:0},c);l<0&&(l=-l-1);for(var o=[],u=c;u<l;u++)o.push(a[u]);return o},h.prototype.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},h.prototype.attach=function(p){this.session&&this.detach(),this.session=p,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},h.prototype.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},h.prototype.$onChange=function(p){for(var s=p.start,a=p.end,c=s.row,l=a.row,o=this.ranges,u=0,d=o.length;u<d;u++){var w=o[u];if(w.end.row>=c)break}if(p.action=="insert")for(var b=l-c,R=-s.column+a.column;u<d;u++){var w=o[u];if(w.start.row>c)break;if(w.start.row==c&&w.start.column>=s.column&&(w.start.column==s.column&&this.$bias<=0||(w.start.column+=R,w.start.row+=b)),w.end.row==c&&w.end.column>=s.column){if(w.end.column==s.column&&this.$bias<0)continue;w.end.column==s.column&&R>0&&u<d-1&&w.end.column>w.start.column&&w.end.column==o[u+1].start.column&&(w.end.column-=R),w.end.column+=R,w.end.row+=b}}else for(var b=c-l,R=s.column-a.column;u<d;u++){var w=o[u];if(w.start.row>l)break;w.end.row<l&&(c<w.end.row||c==w.end.row&&s.column<w.end.column)?(w.end.row=c,w.end.column=s.column):w.end.row==l?w.end.column<=a.column?(b||w.end.column>s.column)&&(w.end.column=s.column,w.end.row=s.row):(w.end.column+=R,w.end.row+=b):w.end.row>l&&(w.end.row+=b),w.start.row<l&&(c<w.start.row||c==w.start.row&&s.column<w.start.column)?(w.start.row=c,w.start.column=s.column):w.start.row==l?w.start.column<=a.column?(b||w.start.column>s.column)&&(w.start.column=s.column,w.start.row=s.row):(w.start.column+=R,w.start.row+=b):w.start.row>l&&(w.start.row+=b)}if(b!=0&&u<d)for(;u<d;u++){var w=o[u];w.start.row+=b,w.end.row+=b}},h}();C.prototype.comparePoints=y,r.RangeList=C}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range_list"],function(e,r,v){var f=this&&this.__extends||function(){var c=function(l,o){return c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(u,d){u.__proto__=d}||function(u,d){for(var w in d)Object.prototype.hasOwnProperty.call(d,w)&&(u[w]=d[w])},c(l,o)};return function(l,o){if(typeof o!="function"&&o!==null)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");c(l,o);function u(){this.constructor=l}l.prototype=o===null?Object.create(o):(u.prototype=o.prototype,new u)}}(),y=e("../range_list").RangeList,C=function(c){f(l,c);function l(o,u){var d=c.call(this)||this;return d.foldLine=null,d.placeholder=u,d.range=o,d.start=o.start,d.end=o.end,d.sameRow=o.start.row==o.end.row,d.subFolds=d.ranges=[],d}return l.prototype.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},l.prototype.setFoldLine=function(o){this.foldLine=o,this.subFolds.forEach(function(u){u.setFoldLine(o)})},l.prototype.clone=function(){var o=this.range.clone(),u=new l(o,this.placeholder);return this.subFolds.forEach(function(d){u.subFolds.push(d.clone())}),u.collapseChildren=this.collapseChildren,u},l.prototype.addSubFold=function(o){if(!this.range.isEqual(o)){p(o,this.start);for(var u=o.start.row,d=o.start.column,w=0,b=-1;w<this.subFolds.length&&(b=this.subFolds[w].range.compare(u,d),b==1);w++);var R=this.subFolds[w],M=0;if(b==0){if(R.range.containsRange(o))return R.addSubFold(o);M=1}for(var u=o.range.end.row,d=o.range.end.column,k=w,b=-1;k<this.subFolds.length&&(b=this.subFolds[k].range.compare(u,d),b==1);k++);b==0&&k++;for(var x=this.subFolds.splice(w,k-w,o),L=b==0?x.length-1:x.length,O=M;O<L;O++)o.addSubFold(x[O]);return o.setFoldLine(this.foldLine),o}},l.prototype.restoreRange=function(o){return a(o,this.start)},l}(y);function h(c,l){c.row-=l.row,c.row==0&&(c.column-=l.column)}function p(c,l){h(c.start,l),h(c.end,l)}function s(c,l){c.row==0&&(c.column+=l.column),c.row+=l.row}function a(c,l){s(c.start,l),s(c.end,l)}r.Fold=C}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator","ace/mouse/mouse_event"],function(e,r,v){var f=e("../range").Range,y=e("./fold_line").FoldLine,C=e("./fold").Fold,h=e("../token_iterator").TokenIterator,p=e("../mouse/mouse_event").MouseEvent;function s(){this.getFoldAt=function(a,c,l){var o=this.getFoldLine(a);if(!o)return null;for(var u=o.folds,d=0;d<u.length;d++){var w=u[d].range;if(w.contains(a,c)){if(l==1&&w.isEnd(a,c)&&!w.isEmpty()||l==-1&&w.isStart(a,c)&&!w.isEmpty())continue;return u[d]}}},this.getFoldsInRange=function(a){var c=a.start,l=a.end,o=this.$foldData,u=[];c.column+=1,l.column-=1;for(var d=0;d<o.length;d++){var w=o[d].range.compareRange(a);if(w!=2){if(w==-2)break;for(var b=o[d].folds,R=0;R<b.length;R++){var M=b[R];if(w=M.range.compareRange(a),w==-2)break;if(w!=2){if(w==42)break;u.push(M)}}}}return c.column-=1,l.column+=1,u},this.getFoldsInRangeList=function(a){if(Array.isArray(a)){var c=[];a.forEach(function(o){c=c.concat(this.getFoldsInRange(o))},this)}else var c=this.getFoldsInRange(a);return c},this.getAllFolds=function(){for(var a=[],c=this.$foldData,l=0;l<c.length;l++)for(var o=0;o<c[l].folds.length;o++)a.push(c[l].folds[o]);return a},this.getFoldStringAt=function(a,c,l,o){if(o=o||this.getFoldLine(a),!o)return null;for(var u={end:{column:0}},d,w,b=0;b<o.folds.length;b++){w=o.folds[b];var R=w.range.compareEnd(a,c);if(R==-1){d=this.getLine(w.start.row).substring(u.end.column,w.start.column);break}else if(R===0)return null;u=w}return d||(d=this.getLine(w.start.row).substring(u.end.column)),l==-1?d.substring(0,c-u.end.column):l==1?d.substring(c-u.end.column):d},this.getFoldLine=function(a,c){var l=this.$foldData,o=0;for(c&&(o=l.indexOf(c)),o==-1&&(o=0),o;o<l.length;o++){var u=l[o];if(u.start.row<=a&&u.end.row>=a)return u;if(u.end.row>a)return null}return null},this.getNextFoldLine=function(a,c){var l=this.$foldData,o=0;for(c&&(o=l.indexOf(c)),o==-1&&(o=0),o;o<l.length;o++){var u=l[o];if(u.end.row>=a)return u}return null},this.getFoldedRowCount=function(a,c){for(var l=this.$foldData,o=c-a+1,u=0;u<l.length;u++){var d=l[u],w=d.end.row,b=d.start.row;if(w>=c){b<c&&(b>=a?o-=c-b:o=0);break}else w>=a&&(b>=a?o-=w-b:o-=w-a+1)}return o},this.$addFoldLine=function(a){return this.$foldData.push(a),this.$foldData.sort(function(c,l){return c.start.row-l.start.row}),a},this.addFold=function(a,c){var l=this.$foldData,o=!1,u;a instanceof C?u=a:(u=new C(c,a),u.collapseChildren=c.collapseChildren),this.$clipRangeToDocument(u.range);var d=u.start.row,w=u.start.column,b=u.end.row,R=u.end.column,M=this.getFoldAt(d,w,1),k=this.getFoldAt(b,R,-1);if(M&&k==M)return M.addSubFold(u);M&&!M.range.isStart(d,w)&&this.removeFold(M),k&&!k.range.isEnd(b,R)&&this.removeFold(k);var x=this.getFoldsInRange(u.range);x.length>0&&(this.removeFolds(x),u.collapseChildren||x.forEach(function(E){u.addSubFold(E)}));for(var L=0;L<l.length;L++){var O=l[L];if(b==O.start.row){O.addFold(u),o=!0;break}else if(d==O.end.row){if(O.addFold(u),o=!0,!u.sameRow){var I=l[L+1];if(I&&I.start.row==b){O.merge(I);break}}break}else if(b<=O.start.row)break}return o||(O=this.$addFoldLine(new y(this.$foldData,u))),this.$useWrapMode?this.$updateWrapData(O.start.row,O.start.row):this.$updateRowLengthCache(O.start.row,O.start.row),this.$modified=!0,this._signal("changeFold",{data:u,action:"add"}),u},this.addFolds=function(a){a.forEach(function(c){this.addFold(c)},this)},this.removeFold=function(a){var c=a.foldLine,l=c.start.row,o=c.end.row,u=this.$foldData,d=c.folds;if(d.length==1)u.splice(u.indexOf(c),1);else if(c.range.isEnd(a.end.row,a.end.column))d.pop(),c.end.row=d[d.length-1].end.row,c.end.column=d[d.length-1].end.column;else if(c.range.isStart(a.start.row,a.start.column))d.shift(),c.start.row=d[0].start.row,c.start.column=d[0].start.column;else if(a.sameRow)d.splice(d.indexOf(a),1);else{var w=c.split(a.start.row,a.start.column);d=w.folds,d.shift(),w.start.row=d[0].start.row,w.start.column=d[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(l,o):this.$updateRowLengthCache(l,o)),this.$modified=!0,this._signal("changeFold",{data:a,action:"remove"})},this.removeFolds=function(a){for(var c=[],l=0;l<a.length;l++)c.push(a[l]);c.forEach(function(o){this.removeFold(o)},this),this.$modified=!0},this.expandFold=function(a){this.removeFold(a),a.subFolds.forEach(function(c){a.restoreRange(c),this.addFold(c)},this),a.collapseChildren>0&&this.foldAll(a.start.row+1,a.end.row,a.collapseChildren-1),a.subFolds=[]},this.expandFolds=function(a){a.forEach(function(c){this.expandFold(c)},this)},this.unfold=function(a,c){var l,o;if(a==null)l=new f(0,0,this.getLength(),0),c==null&&(c=!0);else if(typeof a=="number")l=new f(a,0,a,this.getLine(a).length);else if("row"in a)l=f.fromPoints(a,a);else{if(Array.isArray(a))return o=[],a.forEach(function(d){o=o.concat(this.unfold(d))},this),o;l=a}o=this.getFoldsInRangeList(l);for(var u=o;o.length==1&&f.comparePoints(o[0].start,l.start)<0&&f.comparePoints(o[0].end,l.end)>0;)this.expandFolds(o),o=this.getFoldsInRangeList(l);if(c!=!1?this.removeFolds(o):this.expandFolds(o),u.length)return u},this.isRowFolded=function(a,c){return!!this.getFoldLine(a,c)},this.getRowFoldEnd=function(a,c){var l=this.getFoldLine(a,c);return l?l.end.row:a},this.getRowFoldStart=function(a,c){var l=this.getFoldLine(a,c);return l?l.start.row:a},this.getFoldDisplayLine=function(a,c,l,o,u){o==null&&(o=a.start.row),u==null&&(u=0),c==null&&(c=a.end.row),l==null&&(l=this.getLine(c).length);var d=this.doc,w="";return a.walk(function(b,R,M,k){if(!(R<o)){if(R==o){if(M<u)return;k=Math.max(u,k)}b!=null?w+=b:w+=d.getLine(R).substring(k,M)}},c,l),w},this.getDisplayLine=function(a,c,l,o){var u=this.getFoldLine(a);if(u)return this.getFoldDisplayLine(u,a,c,l,o);var d;return d=this.doc.getLine(a),d.substring(o||0,c||d.length)},this.$cloneFoldData=function(){var a=[];return a=this.$foldData.map(function(c){var l=c.folds.map(function(o){return o.clone()});return new y(a,l)}),a},this.toggleFold=function(a){var c=this.selection,l=c.getRange(),o,u;if(l.isEmpty()){var d=l.start;if(o=this.getFoldAt(d.row,d.column),o){this.expandFold(o);return}else if(a){var w=this.getFoldLine(d.row);w&&this.expandFolds(w.folds);return}else(u=this.findMatchingBracket(d))?l.comparePoint(u)==1?l.end=u:(l.start=u,l.start.column++,l.end.column--):(u=this.findMatchingBracket({row:d.row,column:d.column+1}))?(l.comparePoint(u)==1?l.end=u:l.start=u,l.start.column++):l=this.getCommentFoldRange(d.row,d.column)||l}else{var b=this.getFoldsInRange(l);if(a&&b.length){this.expandFolds(b);return}else b.length==1&&(o=b[0])}if(o||(o=this.getFoldAt(l.start.row,l.start.column)),o&&o.range.toString()==l.toString()){this.expandFold(o);return}var R="...";if(!l.isMultiLine()){if(R=this.getTextRange(l),R.length<4)return;R=R.trim().substring(0,2)+".."}this.addFold(R,l)},this.getCommentFoldRange=function(a,c,l){var o=new h(this,a,c),u=o.getCurrentToken(),d=u&&u.type;if(u&&/^comment|string/.test(d)){d=d.match(/comment|string/)[0],d=="comment"&&(d+="|doc-start|\\.doc");var w=new RegExp(d),b=new f;if(l!=1){do u=o.stepBackward();while(u&&w.test(u.type));u=o.stepForward()}b.start.row=o.getCurrentTokenRow(),b.start.column=o.getCurrentTokenColumn()+u.value.length,o=new h(this,a,c);var R=this.getState(o.$row);if(l!=-1){var M=-1;do if(u=o.stepForward(),M==-1){var k=this.getState(o.$row);R.toString()!==k.toString()&&(M=o.$row)}else if(o.$row>M)break;while(u&&w.test(u.type));u=o.stepBackward()}else u=o.getCurrentToken();return b.end.row=o.getCurrentTokenRow(),b.end.column=o.getCurrentTokenColumn(),b.start.row==b.end.row&&b.start.column>b.end.column?void 0:b}},this.foldAll=function(a,c,l,o){l==null&&(l=1e5);var u=this.foldWidgets;if(u){c=c||this.getLength(),a=a||0;for(var d=a;d<c;d++)if(u[d]==null&&(u[d]=this.getFoldWidget(d)),u[d]=="start"&&!(o&&!o(d))){var w=this.getFoldWidgetRange(d);w&&w.isMultiLine()&&w.end.row<=c&&w.start.row>=a&&(d=w.end.row,w.collapseChildren=l,this.addFold("...",w))}}},this.foldToLevel=function(a){for(this.foldAll();a-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var a=this;this.foldAll(null,null,null,function(c){for(var l=a.getTokens(c),o=0;o<l.length;o++){var u=l[o];if(!(u.type=="text"&&/^\s+$/.test(u.value)))return!!/comment/.test(u.type)}})},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(a){if(!this.$foldStyles[a])throw new Error("invalid fold style: "+a+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=a){this.$foldStyle=a,a=="manual"&&this.unfold();var c=this.$foldMode;this.$setFolding(null),this.$setFolding(c)}},this.$setFolding=function(a){if(this.$foldMode!=a){if(this.$foldMode=a,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),!a||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[],this.getFoldWidget=a.getFoldWidget.bind(a,this,this.$foldStyle),this.getFoldWidgetRange=a.getFoldWidgetRange.bind(a,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(a,c){var l=this.foldWidgets;if(!l||c&&l[a])return{};for(var o=a-1,u;o>=0;){var d=l[o];if(d==null&&(d=l[o]=this.getFoldWidget(o)),d=="start"){var w=this.getFoldWidgetRange(o);if(u||(u=w),w&&w.end.row>=a)break}o--}return{range:o!==-1&&w,firstRange:u}},this.onFoldWidgetClick=function(a,c){c instanceof p&&(c=c.domEvent);var l={children:c.shiftKey,all:c.ctrlKey||c.metaKey,siblings:c.altKey},o=this.$toggleFoldWidget(a,l);if(!o){var u=c.target||c.srcElement;u&&/ace_fold-widget/.test(u.className)&&(u.className+=" ace_invalid")}},this.$toggleFoldWidget=function(a,c){if(this.getFoldWidget){var l=this.getFoldWidget(a),o=this.getLine(a),u=l==="end"?-1:1,d=this.getFoldAt(a,u===-1?0:o.length,u);if(d)return c.children||c.all?this.removeFold(d):this.expandFold(d),d;var w=this.getFoldWidgetRange(a,!0);if(w&&!w.isMultiLine()&&(d=this.getFoldAt(w.start.row,w.start.column,1),d&&w.isEqual(d.range)))return this.removeFold(d),d;if(c.siblings){var b=this.getParentFoldRangeData(a);if(b.range)var R=b.range.start.row+1,M=b.range.end.row;this.foldAll(R,M,c.all?1e4:0)}else c.children?(M=w?w.end.row:this.getLength(),this.foldAll(a+1,M,c.all?1e4:0)):w&&(c.all&&(w.collapseChildren=1e4),this.addFold("...",w));return w}},this.toggleFoldWidget=function(a){var c=this.selection.getCursor().row;c=this.getRowFoldStart(c);var l=this.$toggleFoldWidget(c,{});if(!l){var o=this.getParentFoldRangeData(c,!0);if(l=o.range||o.firstRange,l){c=l.start.row;var u=this.getFoldAt(c,this.getLine(c).length,1);u?this.removeFold(u):this.addFold("...",l)}}},this.updateFoldWidgets=function(a){var c=a.start.row,l=a.end.row-c;if(l===0)this.foldWidgets[c]=null;else if(a.action=="remove")this.foldWidgets.splice(c,l+1,null);else{var o=Array(l+1);o.unshift(c,1),this.foldWidgets.splice.apply(this.foldWidgets,o)}},this.tokenizerUpdateFoldWidgets=function(a){var c=a.data;c.first!=c.last&&this.foldWidgets.length>c.first&&this.foldWidgets.splice(c.first,this.foldWidgets.length)}}r.Folding=s}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,r,v){var f=e("../token_iterator").TokenIterator,y=e("../range").Range;function C(){this.findMatchingBracket=function(h,p){if(h.column==0)return null;var s=p||this.getLine(h.row).charAt(h.column-1);if(s=="")return null;var a=s.match(/([\(\[\{])|([\)\]\}])/);return a?a[1]?this.$findClosingBracket(a[1],h):this.$findOpeningBracket(a[2],h):null},this.getBracketRange=function(h){var p=this.getLine(h.row),s=!0,a,c=p.charAt(h.column-1),l=c&&c.match(/([\(\[\{])|([\)\]\}])/);if(l||(c=p.charAt(h.column),h={row:h.row,column:h.column+1},l=c&&c.match(/([\(\[\{])|([\)\]\}])/),s=!1),!l)return null;if(l[1]){var o=this.$findClosingBracket(l[1],h);if(!o)return null;a=y.fromPoints(h,o),s||(a.end.column++,a.start.column--),a.cursor=a.end}else{var o=this.$findOpeningBracket(l[2],h);if(!o)return null;a=y.fromPoints(o,h),s||(a.start.column++,a.end.column--),a.cursor=a.start}return a},this.getMatchingBracketRanges=function(h,p){var s=this.getLine(h.row),a=/([\(\[\{])|([\)\]\}])/,c=!p&&s.charAt(h.column-1),l=c&&c.match(a);if(l||(c=(p===void 0||p)&&s.charAt(h.column),h={row:h.row,column:h.column+1},l=c&&c.match(a)),!l)return null;var o=new y(h.row,h.column-1,h.row,h.column),u=l[1]?this.$findClosingBracket(l[1],h):this.$findOpeningBracket(l[2],h);if(!u)return[o];var d=new y(u.row,u.column,u.row,u.column+1);return[o,d]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(h,p,s){var a=this.$brackets[h],c=1,l=new f(this,p.row,p.column),o=l.getCurrentToken();if(o||(o=l.stepForward()),!!o){s||(s=new RegExp("(\\.?"+o.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var u=p.column-l.getCurrentTokenColumn()-2,d=o.value;;){for(;u>=0;){var w=d.charAt(u);if(w==a){if(c-=1,c==0)return{row:l.getCurrentTokenRow(),column:u+l.getCurrentTokenColumn()}}else w==h&&(c+=1);u-=1}do o=l.stepBackward();while(o&&!s.test(o.type));if(o==null)break;d=o.value,u=d.length-1}return null}},this.$findClosingBracket=function(h,p,s){var a=this.$brackets[h],c=1,l=new f(this,p.row,p.column),o=l.getCurrentToken();if(o||(o=l.stepForward()),!!o){s||(s=new RegExp("(\\.?"+o.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var u=p.column-l.getCurrentTokenColumn();;){for(var d=o.value,w=d.length;u<w;){var b=d.charAt(u);if(b==a){if(c-=1,c==0)return{row:l.getCurrentTokenRow(),column:u+l.getCurrentTokenColumn()}}else b==h&&(c+=1);u+=1}do o=l.stepForward();while(o&&!s.test(o.type));if(o==null)break;u=0}return null}},this.getMatchingTags=function(h){var p=new f(this,h.row,h.column),s=this.$findTagName(p);if(s){var a=p.stepBackward();return a.value==="<"?this.$findClosingTag(p,s):this.$findOpeningTag(p,s)}},this.$findTagName=function(h){var p=h.getCurrentToken(),s=!1,a=!1;if(p&&p.type.indexOf("tag-name")===-1)do a?p=h.stepBackward():p=h.stepForward(),p&&(p.value==="/>"?a=!0:p.type.indexOf("tag-name")!==-1&&(s=!0));while(p&&!s);return p},this.$findClosingTag=function(h,p){var s,a=p.value,c=p.value,l=0,o=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);p=h.stepForward();var u=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+p.value.length),d=!1;do{if(s=p,s.type.indexOf("tag-close")!==-1&&!d){var w=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);d=!0}if(p=h.stepForward(),p){if(p.value===">"&&!d){var w=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);d=!0}if(p.type.indexOf("tag-name")!==-1){if(a=p.value,c===a){if(s.value==="<")l++;else if(s.value==="</"&&(l--,l<0)){h.stepBackward();var b=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+2);p=h.stepForward();var R=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+p.value.length);if(p.type.indexOf("tag-close")===-1&&(p=h.stepForward()),p&&p.value===">")var M=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);else return}}}else if(c===a&&p.value==="/>"&&(l--,l<0))var b=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+2),R=b,M=R,w=new y(u.end.row,u.end.column,u.end.row,u.end.column+1)}}while(p&&l>=0);if(o&&w&&b&&M&&u&&R)return{openTag:new y(o.start.row,o.start.column,w.end.row,w.end.column),closeTag:new y(b.start.row,b.start.column,M.end.row,M.end.column),openTagName:u,closeTagName:R}},this.$findOpeningTag=function(h,p){var s=h.getCurrentToken(),a=p.value,c=0,l=h.getCurrentTokenRow(),o=h.getCurrentTokenColumn(),u=o+2,d=new y(l,o,l,u);h.stepForward();var w=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+p.value.length);if(p.type.indexOf("tag-close")===-1&&(p=h.stepForward()),!(!p||p.value!==">")){var b=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);h.stepBackward(),h.stepBackward();do if(p=s,l=h.getCurrentTokenRow(),o=h.getCurrentTokenColumn(),u=o+p.value.length,s=h.stepBackward(),p){if(p.type.indexOf("tag-name")!==-1){if(a===p.value)if(s.value==="<"){if(c++,c>0){var R=new y(l,o,l,u),M=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1);do p=h.stepForward();while(p&&p.value!==">");var k=new y(h.getCurrentTokenRow(),h.getCurrentTokenColumn(),h.getCurrentTokenRow(),h.getCurrentTokenColumn()+1)}}else s.value==="</"&&c--}else if(p.value==="/>"){for(var x=0,L=s;L;){if(L.type.indexOf("tag-name")!==-1&&L.value===a){c--;break}else if(L.value==="<")break;L=h.stepBackward(),x++}for(var O=0;O<x;O++)h.stepForward()}}while(s&&c<=0);if(M&&k&&d&&b&&R&&w)return{openTag:new y(M.start.row,M.start.column,k.end.row,k.end.column),closeTag:new y(d.start.row,d.start.column,b.end.row,b.end.column),openTagName:R,closeTagName:w}}}}r.BracketMatch=C}),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/line_widgets","ace/document","ace/background_tokenizer","ace/search_highlight","ace/undomanager","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,r,v){var f=e("./lib/oop"),y=e("./lib/lang"),C=e("./bidihandler").BidiHandler,h=e("./config"),p=e("./lib/event_emitter").EventEmitter,s=e("./selection").Selection,a=e("./mode/text").Mode,c=e("./range").Range,l=e("./line_widgets").LineWidgets,o=e("./document").Document,u=e("./background_tokenizer").BackgroundTokenizer,d=e("./search_highlight").SearchHighlight,w=e("./undomanager").UndoManager,b=function(){function P(N,S){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$editor=null,this.prevOp={},this.$foldData=[],this.id="session"+ ++P.$uid,this.$foldData.toString=function(){return this.join(`
197
+ `)},this.$gutterCustomWidgets={},this.bgTokenizer=new u(new a().getTokenizer(),this);var A=this;this.bgTokenizer.on("update",function(D){A._signal("tokenizerUpdate",D)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),(typeof N!="object"||!N.getLine)&&(N=new o(N)),this.setDocument(N),this.selection=new s(this),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.selection.on("changeCursor",this.$onSelectionChange),this.$bidiHandler=new C(this),h.resetOptions(this),this.setMode(S),h._signal("session",this),this.destroyed=!1,this.$initOperationListeners()}return P.prototype.$initOperationListeners=function(){var N=this;this.curOp=null,this.on("change",function(){N.curOp||(N.startOperation(),N.curOp.selectionBefore=N.$lastSel),N.curOp.docChanged=!0},!0),this.on("changeSelection",function(){N.curOp||(N.startOperation(),N.curOp.selectionBefore=N.$lastSel),N.curOp.selectionChanged=!0},!0),this.$operationResetTimer=y.delayedCall(this.endOperation.bind(this,!0))},P.prototype.startOperation=function(N){if(this.curOp){if(!N||this.curOp.command)return;this.prevOp=this.curOp}N||(N={}),this.$operationResetTimer.schedule(),this.curOp={command:N.command||{},args:N.args},this.curOp.selectionBefore=this.selection.toJSON(),this._signal("startOperation",N)},P.prototype.endOperation=function(N){if(this.curOp){if(N&&N.returnValue===!1){this.curOp=null,this._signal("endOperation",N);return}if(N==!0&&this.curOp.command&&this.curOp.command.name=="mouse")return;var S=this.selection.toJSON();this.curOp.selectionAfter=S,this.$lastSel=this.selection.toJSON(),this.getUndoManager().addSelection(S),this._signal("beforeEndOperation"),this.prevOp=this.curOp,this.curOp=null,this._signal("endOperation",N)}},P.prototype.setDocument=function(N){this.doc&&this.doc.off("change",this.$onChange),this.doc=N,N.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},P.prototype.getDocument=function(){return this.doc},Object.defineProperty(P.prototype,"widgetManager",{get:function(){var N=new l(this);return this.widgetManager=N,this.$editor&&N.attach(this.$editor),N},set:function(N){Object.defineProperty(this,"widgetManager",{writable:!0,enumerable:!0,configurable:!0,value:N})},enumerable:!1,configurable:!0}),P.prototype.$resetRowCache=function(N){if(!N){this.$docRowCache=[],this.$screenRowCache=[];return}var S=this.$docRowCache.length,A=this.$getRowCacheIndex(this.$docRowCache,N)+1;S>A&&(this.$docRowCache.splice(A,S),this.$screenRowCache.splice(A,S))},P.prototype.$getRowCacheIndex=function(N,S){for(var A=0,D=N.length-1;A<=D;){var j=A+D>>1,U=N[j];if(S>U)A=j+1;else if(S<U)D=j-1;else return j}return A-1},P.prototype.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.destroyed||this.bgTokenizer.start(0)},P.prototype.onChangeFold=function(N){var S=N.data;this.$resetRowCache(S.start.row)},P.prototype.onChange=function(N){this.$modified=!0,this.$bidiHandler.onChange(N),this.$resetRowCache(N.start.row);var S=this.$updateInternalDataOnChange(N);!this.$fromUndo&&this.$undoManager&&(S&&S.length&&(this.$undoManager.add({action:"removeFolds",folds:S},this.mergeUndoDeltas),this.mergeUndoDeltas=!0),this.$undoManager.add(N,this.mergeUndoDeltas),this.mergeUndoDeltas=!0,this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(N),this._signal("change",N)},P.prototype.onSelectionChange=function(){this._signal("changeSelection")},P.prototype.setValue=function(N){this.doc.setValue(N),this.selection.moveTo(0,0),this.$resetRowCache(0),this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},P.fromJSON=function(N){typeof N=="string"&&(N=JSON.parse(N));var S=new w;S.$undoStack=N.history.undo,S.$redoStack=N.history.redo,S.mark=N.history.mark,S.$rev=N.history.rev;var A=new P(N.value);return N.folds.forEach(function(D){A.addFold("...",c.fromPoints(D.start,D.end))}),A.setAnnotations(N.annotations),A.setBreakpoints(N.breakpoints),A.setMode(N.mode),A.setScrollLeft(N.scrollLeft),A.setScrollTop(N.scrollTop),A.setUndoManager(S),A.selection.fromJSON(N.selection),A},P.prototype.toJSON=function(){return{annotations:this.$annotations,breakpoints:this.$breakpoints,folds:this.getAllFolds().map(function(N){return N.range}),history:this.getUndoManager(),mode:this.$mode.$id,scrollLeft:this.$scrollLeft,scrollTop:this.$scrollTop,selection:this.selection.toJSON(),value:this.doc.getValue()}},P.prototype.toString=function(){return this.doc.getValue()},P.prototype.getSelection=function(){return this.selection},P.prototype.getState=function(N){return this.bgTokenizer.getState(N)},P.prototype.getTokens=function(N){return this.bgTokenizer.getTokens(N)},P.prototype.getTokenAt=function(N,S){var A=this.bgTokenizer.getTokens(N),D,j=0;if(S==null){var U=A.length-1;j=this.getLine(N).length}else for(var U=0;U<A.length&&(j+=A[U].value.length,!(j>=S));U++);return D=A[U],D?(D.index=U,D.start=j-D.value.length,D):null},P.prototype.setUndoManager=function(N){if(this.$undoManager=N,this.$informUndoManager&&this.$informUndoManager.cancel(),N){var S=this;N.addSession(this),this.$syncInformUndoManager=function(){S.$informUndoManager.cancel(),S.mergeUndoDeltas=!1},this.$informUndoManager=y.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},P.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},P.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},P.prototype.getTabString=function(){return this.getUseSoftTabs()?y.stringRepeat(" ",this.getTabSize()):" "},P.prototype.setUseSoftTabs=function(N){this.setOption("useSoftTabs",N)},P.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},P.prototype.setTabSize=function(N){this.setOption("tabSize",N)},P.prototype.getTabSize=function(){return this.$tabSize},P.prototype.isTabStop=function(N){return this.$useSoftTabs&&N.column%this.$tabSize===0},P.prototype.setNavigateWithinSoftTabs=function(N){this.setOption("navigateWithinSoftTabs",N)},P.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},P.prototype.setOverwrite=function(N){this.setOption("overwrite",N)},P.prototype.getOverwrite=function(){return this.$overwrite},P.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},P.prototype.addGutterDecoration=function(N,S){this.$decorations[N]||(this.$decorations[N]=""),this.$decorations[N]+=" "+S,this._signal("changeBreakpoint",{})},P.prototype.removeGutterCustomWidget=function(N){this.$editor&&this.$editor.renderer.$gutterLayer.$removeCustomWidget(N)},P.prototype.addGutterCustomWidget=function(N,S){this.$editor&&this.$editor.renderer.$gutterLayer.$addCustomWidget(N,S)},P.prototype.removeGutterDecoration=function(N,S){this.$decorations[N]=(this.$decorations[N]||"").replace(" "+S,""),this._signal("changeBreakpoint",{})},P.prototype.getBreakpoints=function(){return this.$breakpoints},P.prototype.setBreakpoints=function(N){this.$breakpoints=[];for(var S=0;S<N.length;S++)this.$breakpoints[N[S]]="ace_breakpoint";this._signal("changeBreakpoint",{})},P.prototype.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},P.prototype.setBreakpoint=function(N,S){S===void 0&&(S="ace_breakpoint"),S?this.$breakpoints[N]=S:delete this.$breakpoints[N],this._signal("changeBreakpoint",{})},P.prototype.clearBreakpoint=function(N){delete this.$breakpoints[N],this._signal("changeBreakpoint",{})},P.prototype.addMarker=function(N,S,A,D){var j=this.$markerId++,U={range:N,type:A||"line",renderer:typeof A=="function"?A:null,clazz:S,inFront:!!D,id:j};return D?(this.$frontMarkers[j]=U,this._signal("changeFrontMarker")):(this.$backMarkers[j]=U,this._signal("changeBackMarker")),j},P.prototype.addDynamicMarker=function(N,S){if(N.update){var A=this.$markerId++;return N.id=A,N.inFront=!!S,S?(this.$frontMarkers[A]=N,this._signal("changeFrontMarker")):(this.$backMarkers[A]=N,this._signal("changeBackMarker")),N}},P.prototype.removeMarker=function(N){var S=this.$frontMarkers[N]||this.$backMarkers[N];if(S){var A=S.inFront?this.$frontMarkers:this.$backMarkers;delete A[N],this._signal(S.inFront?"changeFrontMarker":"changeBackMarker")}},P.prototype.getMarkers=function(N){return N?this.$frontMarkers:this.$backMarkers},P.prototype.highlight=function(N){if(!this.$searchHighlight){var S=new d(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(S)}this.$searchHighlight.setRegexp(N)},P.prototype.highlightLines=function(N,S,A,D){typeof S!="number"&&(A=S,S=N),A||(A="ace_step");var j=new c(N,0,S,1/0);return j.id=this.addMarker(j,A,"fullLine",D),j},P.prototype.setAnnotations=function(N){this.$annotations=N,this._signal("changeAnnotation",{})},P.prototype.getAnnotations=function(){return this.$annotations||[]},P.prototype.clearAnnotations=function(){this.setAnnotations([])},P.prototype.$detectNewLine=function(N){var S=N.match(/^.*?(\r?\n)/m);S?this.$autoNewLine=S[1]:this.$autoNewLine=`
198
+ `},P.prototype.getWordRange=function(N,S){var A=this.getLine(N),D=!1;if(S>0&&(D=!!A.charAt(S-1).match(this.tokenRe)),D||(D=!!A.charAt(S).match(this.tokenRe)),D)var j=this.tokenRe;else if(/^\s+$/.test(A.slice(S-1,S+1)))var j=/\s/;else var j=this.nonTokenRe;var U=S;if(U>0){do U--;while(U>=0&&A.charAt(U).match(j));U++}for(var q=S;q<A.length&&A.charAt(q).match(j);)q++;return new c(N,U,N,q)},P.prototype.getAWordRange=function(N,S){for(var A=this.getWordRange(N,S),D=this.getLine(A.end.row);D.charAt(A.end.column).match(/[ \t]/);)A.end.column+=1;return A},P.prototype.setNewLineMode=function(N){this.doc.setNewLineMode(N)},P.prototype.getNewLineMode=function(){return this.doc.getNewLineMode()},P.prototype.setUseWorker=function(N){this.setOption("useWorker",N)},P.prototype.getUseWorker=function(){return this.$useWorker},P.prototype.onReloadTokenizer=function(N){var S=N.data;this.bgTokenizer.start(S.first),this._signal("tokenizerUpdate",N)},P.prototype.setMode=function(N,S){if(N&&typeof N=="object"){if(N.getTokenizer)return this.$onChangeMode(N);var A=N,D=A.path}else D=N||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new a),this.$modes[D]&&!A){this.$onChangeMode(this.$modes[D]),S&&S();return}this.$modeId=D,h.loadModule(["mode",D],(function(j){if(!this.destroyed){if(this.$modeId!==D)return S&&S();this.$modes[D]&&!A?this.$onChangeMode(this.$modes[D]):j&&j.Mode&&(j=new j.Mode(A),A||(this.$modes[D]=j,j.$id=D),this.$onChangeMode(j)),S&&S()}}).bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},P.prototype.$onChangeMode=function(N,S){if(S||(this.$modeId=N.$id),this.$mode!==N){var A=this.$mode;this.$mode=N,this.$stopWorker(),this.$useWorker&&this.$startWorker();var D=N.getTokenizer();if(D.on!==void 0){var j=this.onReloadTokenizer.bind(this);D.on("update",j)}this.bgTokenizer.setTokenizer(D),this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=N.tokenRe,this.nonTokenRe=N.nonTokenRe,S||(N.attachToSession&&N.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(N.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode",{oldMode:A,mode:N}))}},P.prototype.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},P.prototype.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(N){h.warn("Could not load worker",N),this.$worker=null}},P.prototype.getMode=function(){return this.$mode},P.prototype.setScrollTop=function(N){this.$scrollTop===N||isNaN(N)||(this.$scrollTop=N,this._signal("changeScrollTop",N))},P.prototype.getScrollTop=function(){return this.$scrollTop},P.prototype.setScrollLeft=function(N){this.$scrollLeft===N||isNaN(N)||(this.$scrollLeft=N,this._signal("changeScrollLeft",N))},P.prototype.getScrollLeft=function(){return this.$scrollLeft},P.prototype.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},P.prototype.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var N=0;return this.lineWidgets.forEach(function(S){S&&S.screenWidth>N&&(N=S.screenWidth)}),this.lineWidgetWidth=N},P.prototype.$computeWidth=function(N){if(this.$modified||N){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var S=this.doc.getAllLines(),A=this.$rowLengthCache,D=0,j=0,U=this.$foldData[j],q=U?U.start.row:1/0,Z=S.length,te=0;te<Z;te++){if(te>q){if(te=U.end.row+1,te>=Z)break;U=this.$foldData[j++],q=U?U.start.row:1/0}A[te]==null&&(A[te]=this.$getStringScreenWidth(S[te])[0]),A[te]>D&&(D=A[te])}this.screenWidth=D}},P.prototype.getLine=function(N){return this.doc.getLine(N)},P.prototype.getLines=function(N,S){return this.doc.getLines(N,S)},P.prototype.getLength=function(){return this.doc.getLength()},P.prototype.getTextRange=function(N){return this.doc.getTextRange(N||this.selection.getRange())},P.prototype.insert=function(N,S){return this.doc.insert(N,S)},P.prototype.remove=function(N){return this.doc.remove(N)},P.prototype.removeFullLines=function(N,S){return this.doc.removeFullLines(N,S)},P.prototype.undoChanges=function(N,S){if(N.length){this.$fromUndo=!0;for(var A=N.length-1;A!=-1;A--){var D=N[A];D.action=="insert"||D.action=="remove"?this.doc.revertDelta(D):D.folds&&this.addFolds(D.folds)}!S&&this.$undoSelect&&(N.selectionBefore?this.selection.fromJSON(N.selectionBefore):this.selection.setRange(this.$getUndoSelection(N,!0))),this.$fromUndo=!1}},P.prototype.redoChanges=function(N,S){if(N.length){this.$fromUndo=!0;for(var A=0;A<N.length;A++){var D=N[A];(D.action=="insert"||D.action=="remove")&&this.doc.$safeApplyDelta(D)}!S&&this.$undoSelect&&(N.selectionAfter?this.selection.fromJSON(N.selectionAfter):this.selection.setRange(this.$getUndoSelection(N,!1))),this.$fromUndo=!1}},P.prototype.setUndoSelect=function(N){this.$undoSelect=N},P.prototype.$getUndoSelection=function(N,S){function A(Z){return S?Z.action!=="insert":Z.action==="insert"}for(var D,j,U=0;U<N.length;U++){var q=N[U];if(q.start){if(!D){A(q)?D=c.fromPoints(q.start,q.end):D=c.fromPoints(q.start,q.start);continue}A(q)?(j=q.start,D.compare(j.row,j.column)==-1&&D.setStart(j),j=q.end,D.compare(j.row,j.column)==1&&D.setEnd(j)):(j=q.start,D.compare(j.row,j.column)==-1&&(D=c.fromPoints(q.start,q.start)))}}return D},P.prototype.replace=function(N,S){return this.doc.replace(N,S)},P.prototype.moveText=function(N,S,A){var D=this.getTextRange(N),j=this.getFoldsInRange(N),U=c.fromPoints(S,S);if(!A){this.remove(N);var q=N.start.row-N.end.row,Z=q?-N.end.column:N.start.column-N.end.column;Z&&(U.start.row==N.end.row&&U.start.column>N.end.column&&(U.start.column+=Z),U.end.row==N.end.row&&U.end.column>N.end.column&&(U.end.column+=Z)),q&&U.start.row>=N.end.row&&(U.start.row+=q,U.end.row+=q)}if(U.end=this.insert(U.start,D),j.length){var te=N.start,he=U.start,q=he.row-te.row,Z=he.column-te.column;this.addFolds(j.map(function(ue){return ue=ue.clone(),ue.start.row==te.row&&(ue.start.column+=Z),ue.end.row==te.row&&(ue.end.column+=Z),ue.start.row+=q,ue.end.row+=q,ue}))}return U},P.prototype.indentRows=function(N,S,A){A=A.replace(/\t/g,this.getTabString());for(var D=N;D<=S;D++)this.doc.insertInLine({row:D,column:0},A)},P.prototype.outdentRows=function(N){for(var S=N.collapseRows(),A=new c(0,0,0,0),D=this.getTabSize(),j=S.start.row;j<=S.end.row;++j){var U=this.getLine(j);A.start.row=j,A.end.row=j;for(var q=0;q<D&&U.charAt(q)==" ";++q);q<D&&U.charAt(q)==" "?(A.start.column=q,A.end.column=q+1):(A.start.column=0,A.end.column=q),this.remove(A)}},P.prototype.$moveLines=function(N,S,A){if(N=this.getRowFoldStart(N),S=this.getRowFoldEnd(S),A<0){var D=this.getRowFoldStart(N+A);if(D<0)return 0;var j=D-N}else if(A>0){var D=this.getRowFoldEnd(S+A);if(D>this.doc.getLength()-1)return 0;var j=D-S}else{N=this.$clipRowToDocument(N),S=this.$clipRowToDocument(S);var j=S-N+1}var U=new c(N,0,S,Number.MAX_VALUE),q=this.getFoldsInRange(U).map(function(te){return te=te.clone(),te.start.row+=j,te.end.row+=j,te}),Z=A==0?this.doc.getLines(N,S):this.doc.removeFullLines(N,S);return this.doc.insertFullLines(N+j,Z),q.length&&this.addFolds(q),j},P.prototype.moveLinesUp=function(N,S){return this.$moveLines(N,S,-1)},P.prototype.moveLinesDown=function(N,S){return this.$moveLines(N,S,1)},P.prototype.duplicateLines=function(N,S){return this.$moveLines(N,S,0)},P.prototype.$clipRowToDocument=function(N){return Math.max(0,Math.min(N,this.doc.getLength()-1))},P.prototype.$clipColumnToRow=function(N,S){return S<0?0:Math.min(this.doc.getLine(N).length,S)},P.prototype.$clipPositionToDocument=function(N,S){if(S=Math.max(0,S),N<0)N=0,S=0;else{var A=this.doc.getLength();N>=A?(N=A-1,S=this.doc.getLine(A-1).length):S=Math.min(this.doc.getLine(N).length,S)}return{row:N,column:S}},P.prototype.$clipRangeToDocument=function(N){N.start.row<0?(N.start.row=0,N.start.column=0):N.start.column=this.$clipColumnToRow(N.start.row,N.start.column);var S=this.doc.getLength()-1;return N.end.row>S?(N.end.row=S,N.end.column=this.doc.getLine(S).length):N.end.column=this.$clipColumnToRow(N.end.row,N.end.column),N},P.prototype.setUseWrapMode=function(N){if(N!=this.$useWrapMode){if(this.$useWrapMode=N,this.$modified=!0,this.$resetRowCache(0),N){var S=this.getLength();this.$wrapData=Array(S),this.$updateWrapData(0,S-1)}this._signal("changeWrapMode")}},P.prototype.getUseWrapMode=function(){return this.$useWrapMode},P.prototype.setWrapLimitRange=function(N,S){(this.$wrapLimitRange.min!==N||this.$wrapLimitRange.max!==S)&&(this.$wrapLimitRange={min:N,max:S},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},P.prototype.adjustWrapLimit=function(N,S){var A=this.$wrapLimitRange;A.max<0&&(A={min:S,max:S});var D=this.$constrainWrapLimit(N,A.min,A.max);return D!=this.$wrapLimit&&D>1?(this.$wrapLimit=D,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},P.prototype.$constrainWrapLimit=function(N,S,A){return S&&(N=Math.max(S,N)),A&&(N=Math.min(A,N)),N},P.prototype.getWrapLimit=function(){return this.$wrapLimit},P.prototype.setWrapLimit=function(N){this.setWrapLimitRange(N,N)},P.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},P.prototype.$updateInternalDataOnChange=function(N){var S=this.$useWrapMode,A=N.action,D=N.start,j=N.end,U=D.row,q=j.row,Z=q-U,te=null;if(this.$updating=!0,Z!=0)if(A==="remove"){this[S?"$wrapData":"$rowLengthCache"].splice(U,Z);var he=this.$foldData;te=this.getFoldsInRange(N),this.removeFolds(te);var ne=this.getFoldLine(j.row),le=0;if(ne){ne.addRemoveChars(j.row,j.column,D.column-j.column),ne.shiftRow(-Z);var ue=this.getFoldLine(U);ue&&ue!==ne&&(ue.merge(ne),ne=ue),le=he.indexOf(ne)+1}for(le;le<he.length;le++){var ne=he[le];ne.start.row>=j.row&&ne.shiftRow(-Z)}q=U}else{var ce=Array(Z);ce.unshift(U,0);var fe=S?this.$wrapData:this.$rowLengthCache;fe.splice.apply(fe,ce);var he=this.$foldData,ne=this.getFoldLine(U),le=0;if(ne){var Se=ne.range.compareInside(D.row,D.column);Se==0?(ne=ne.split(D.row,D.column),ne&&(ne.shiftRow(Z),ne.addRemoveChars(q,0,j.column-D.column))):Se==-1&&(ne.addRemoveChars(U,0,j.column-D.column),ne.shiftRow(Z)),le=he.indexOf(ne)+1}for(le;le<he.length;le++){var ne=he[le];ne.start.row>=U&&ne.shiftRow(Z)}}else{Z=Math.abs(N.start.column-N.end.column),A==="remove"&&(te=this.getFoldsInRange(N),this.removeFolds(te),Z=-Z);var ne=this.getFoldLine(U);ne&&ne.addRemoveChars(U,D.column,Z)}return S&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,S?this.$updateWrapData(U,q):this.$updateRowLengthCache(U,q),te},P.prototype.$updateRowLengthCache=function(N,S){this.$rowLengthCache[N]=null,this.$rowLengthCache[S]=null},P.prototype.$updateWrapData=function(N,S){var A=this.doc.getAllLines(),D=this.getTabSize(),j=this.$wrapData,U=this.$wrapLimit,q,Z,te=N;for(S=Math.min(S,A.length-1);te<=S;)Z=this.getFoldLine(te,Z),Z?(q=[],Z.walk((function(he,ne,le,ue){var ce;if(he!=null){ce=this.$getDisplayTokens(he,q.length),ce[0]=k;for(var fe=1;fe<ce.length;fe++)ce[fe]=x}else ce=this.$getDisplayTokens(A[ne].substring(ue,le),q.length);q=q.concat(ce)}).bind(this),Z.end.row,A[Z.end.row].length+1),j[Z.start.row]=this.$computeWrapSplits(q,U,D),te=Z.end.row+1):(q=this.$getDisplayTokens(A[te]),j[te]=this.$computeWrapSplits(q,U,D),te++)},P.prototype.$computeWrapSplits=function(N,S,A){if(N.length==0)return[];var D=[],j=N.length,U=0,q=0,Z=this.$wrapAsCode,te=this.$indentedSoftWrap,he=S<=Math.max(2*A,8)||te===!1?0:Math.floor(S/2);function ne(){var Se=0;if(he===0)return Se;if(te)for(var $e=0;$e<N.length;$e++){var Te=N[$e];if(Te==O)Se+=1;else if(Te==I)Se+=A;else{if(Te==E)continue;break}}return Z&&te!==!1&&(Se+=A),Math.min(Se,he)}function le(Se){for(var $e=Se-U,Te=U;Te<Se;Te++){var qe=N[Te];(qe===12||qe===2)&&($e-=1)}D.length||(ue=ne(),D.indent=ue),q+=$e,D.push(q),U=Se}for(var ue=0;j-U>S-ue;){var ce=U+S-ue;if(N[ce-1]>=O&&N[ce]>=O){le(ce);continue}if(N[ce]==k||N[ce]==x){for(ce;ce!=U-1&&N[ce]!=k;ce--);if(ce>U){le(ce);continue}for(ce=U+S,ce;ce<N.length&&N[ce]==x;ce++);if(ce==N.length)break;le(ce);continue}for(var fe=Math.max(ce-(S-(S>>2)),U-1);ce>fe&&N[ce]<k;)ce--;if(Z){for(;ce>fe&&N[ce]<k;)ce--;for(;ce>fe&&N[ce]==L;)ce--}else for(;ce>fe&&N[ce]<O;)ce--;if(ce>fe){le(++ce);continue}ce=U+S,N[ce]==M&&ce--,le(ce-ue)}return D},P.prototype.$getDisplayTokens=function(N,S){var A=[],D;S=S||0;for(var j=0;j<N.length;j++){var U=N.charCodeAt(j);if(U==9){D=this.getScreenTabSize(A.length+S),A.push(I);for(var q=1;q<D;q++)A.push(E)}else U==32?A.push(O):U>39&&U<48||U>57&&U<64?A.push(L):U>=4352&&z(U)?A.push(R,M):A.push(R)}return A},P.prototype.$getStringScreenWidth=function(N,S,A){if(S==0)return[0,0];S==null&&(S=1/0),A=A||0;var D,j;for(j=0;j<N.length&&(D=N.charCodeAt(j),D==9?A+=this.getScreenTabSize(A):D>=4352&&z(D)?A+=2:A+=1,!(A>S));j++);return[A,j]},P.prototype.getRowLength=function(N){var S=1;return this.lineWidgets&&(S+=this.lineWidgets[N]&&this.lineWidgets[N].rowCount||0),!this.$useWrapMode||!this.$wrapData[N]?S:this.$wrapData[N].length+S},P.prototype.getRowLineCount=function(N){return!this.$useWrapMode||!this.$wrapData[N]?1:this.$wrapData[N].length+1},P.prototype.getRowWrapIndent=function(N){if(this.$useWrapMode){var S=this.screenToDocumentPosition(N,Number.MAX_VALUE),A=this.$wrapData[S.row];return A.length&&A[0]<S.column?A.indent:0}else return 0},P.prototype.getScreenLastRowColumn=function(N){var S=this.screenToDocumentPosition(N,Number.MAX_VALUE);return this.documentToScreenColumn(S.row,S.column)},P.prototype.getDocumentLastRowColumn=function(N,S){var A=this.documentToScreenRow(N,S);return this.getScreenLastRowColumn(A)},P.prototype.getDocumentLastRowColumnPosition=function(N,S){var A=this.documentToScreenRow(N,S);return this.screenToDocumentPosition(A,Number.MAX_VALUE/10)},P.prototype.getRowSplitData=function(N){if(this.$useWrapMode)return this.$wrapData[N]},P.prototype.getScreenTabSize=function(N){return this.$tabSize-(N%this.$tabSize|0)},P.prototype.screenToDocumentRow=function(N,S){return this.screenToDocumentPosition(N,S).row},P.prototype.screenToDocumentColumn=function(N,S){return this.screenToDocumentPosition(N,S).column},P.prototype.screenToDocumentPosition=function(N,S,A){if(N<0)return{row:0,column:0};var D,le=0,j=0,U,ne=0,q=0,Z=this.$screenRowCache,te=this.$getRowCacheIndex(Z,N),he=Z.length;if(he&&te>=0)var ne=Z[te],le=this.$docRowCache[te],ue=N>Z[he-1];else var ue=!he;for(var ce=this.getLength()-1,fe=this.getNextFoldLine(le),Se=fe?fe.start.row:1/0;ne<=N&&(q=this.getRowLength(le),!(ne+q>N||le>=ce));)ne+=q,le++,le>Se&&(le=fe.end.row+1,fe=this.getNextFoldLine(le,fe),Se=fe?fe.start.row:1/0),ue&&(this.$docRowCache.push(le),this.$screenRowCache.push(ne));if(fe&&fe.start.row<=le)D=this.getFoldDisplayLine(fe),le=fe.start.row;else{if(ne+q<=N||le>ce)return{row:ce,column:this.getLine(ce).length};D=this.getLine(le),fe=null}var $e=0,Te=Math.floor(N-ne);if(this.$useWrapMode){var qe=this.$wrapData[le];qe&&(U=qe[Te],Te>0&&qe.length&&($e=qe.indent,j=qe[Te-1]||qe[qe.length-1],D=D.substring(j)))}return A!==void 0&&this.$bidiHandler.isBidiRow(ne+Te,le,Te)&&(S=this.$bidiHandler.offsetToCol(A)),j+=this.$getStringScreenWidth(D,S-$e)[1],this.$useWrapMode&&j>=U&&(j=U-1),fe?fe.idxToPosition(j):{row:le,column:j}},P.prototype.documentToScreenPosition=function(N,S){if(typeof S>"u")var A=this.$clipPositionToDocument(N.row,N.column);else A=this.$clipPositionToDocument(N,S);N=A.row,S=A.column;var ne=0,D=null,j=null;j=this.getFoldAt(N,S,1),j&&(N=j.start.row,S=j.start.column);var U,he=0,q=this.$docRowCache,Z=this.$getRowCacheIndex(q,N),te=q.length;if(te&&Z>=0)var he=q[Z],ne=this.$screenRowCache[Z],le=N>q[te-1];else var le=!te;for(var ue=this.getNextFoldLine(he),ce=ue?ue.start.row:1/0;he<N;){if(he>=ce){if(U=ue.end.row+1,U>N)break;ue=this.getNextFoldLine(U,ue),ce=ue?ue.start.row:1/0}else U=he+1;ne+=this.getRowLength(he),he=U,le&&(this.$docRowCache.push(he),this.$screenRowCache.push(ne))}var fe="";ue&&he>=ce?(fe=this.getFoldDisplayLine(ue,N,S),D=ue.start.row):(fe=this.getLine(N).substring(0,S),D=N);var Se=0;if(this.$useWrapMode){var $e=this.$wrapData[D];if($e){for(var Te=0;fe.length>=$e[Te];)ne++,Te++;fe=fe.substring($e[Te-1]||0,fe.length),Se=Te>0?$e.indent:0}}return this.lineWidgets&&this.lineWidgets[he]&&this.lineWidgets[he].rowsAbove&&(ne+=this.lineWidgets[he].rowsAbove),{row:ne,column:Se+this.$getStringScreenWidth(fe)[0]}},P.prototype.documentToScreenColumn=function(N,S){return this.documentToScreenPosition(N,S).column},P.prototype.documentToScreenRow=function(N,S){return this.documentToScreenPosition(N,S).row},P.prototype.getScreenLength=function(){var N=0,S=null;if(this.$useWrapMode)for(var A=this.$wrapData.length,D=0,j=0,S=this.$foldData[j++],U=S?S.start.row:1/0;D<A;){var q=this.$wrapData[D];N+=q?q.length+1:1,D++,D>U&&(D=S.end.row+1,S=this.$foldData[j++],U=S?S.start.row:1/0)}else{N=this.getLength();for(var Z=this.$foldData,j=0;j<Z.length;j++)S=Z[j],N-=S.end.row-S.start.row}return this.lineWidgets&&(N+=this.$getWidgetScreenLength()),N},P.prototype.$setFontMetrics=function(N){this.$enableVarChar&&(this.$getStringScreenWidth=function(S,A,D){if(A===0)return[0,0];A||(A=1/0),D=D||0;var j,U;for(U=0;U<S.length&&(j=S.charAt(U),j===" "?D+=this.getScreenTabSize(D):D+=N.getCharacterWidth(j),!(D>A));U++);return[D,U]})},P.prototype.getPrecedingCharacter=function(){var N=this.selection.getCursor();if(N.column===0)return N.row===0?"":this.doc.getNewLineCharacter();var S=this.getLine(N.row);return S[N.column-1]},P.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.endOperation(),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection&&(this.selection.off("changeCursor",this.$onSelectionChange),this.selection.off("changeSelection",this.$onSelectionChange)),this.selection.detach()},P}();b.$uid=0,b.prototype.$modes=h.$modes,b.prototype.getValue=b.prototype.toString,b.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},b.prototype.$overwrite=!1,b.prototype.$mode=null,b.prototype.$modeId=null,b.prototype.$scrollTop=0,b.prototype.$scrollLeft=0,b.prototype.$wrapLimit=80,b.prototype.$useWrapMode=!1,b.prototype.$wrapLimitRange={min:null,max:null},b.prototype.lineWidgets=null,b.prototype.isFullWidth=z,f.implement(b.prototype,p);var R=1,M=2,k=3,x=4,L=9,O=10,I=11,E=12;function z(P){return P<4352?!1:P>=4352&&P<=4447||P>=4515&&P<=4519||P>=4602&&P<=4607||P>=9001&&P<=9002||P>=11904&&P<=11929||P>=11931&&P<=12019||P>=12032&&P<=12245||P>=12272&&P<=12283||P>=12288&&P<=12350||P>=12353&&P<=12438||P>=12441&&P<=12543||P>=12549&&P<=12589||P>=12593&&P<=12686||P>=12688&&P<=12730||P>=12736&&P<=12771||P>=12784&&P<=12830||P>=12832&&P<=12871||P>=12880&&P<=13054||P>=13056&&P<=19903||P>=19968&&P<=42124||P>=42128&&P<=42182||P>=43360&&P<=43388||P>=44032&&P<=55203||P>=55216&&P<=55238||P>=55243&&P<=55291||P>=63744&&P<=64255||P>=65040&&P<=65049||P>=65072&&P<=65106||P>=65108&&P<=65126||P>=65128&&P<=65131||P>=65281&&P<=65376||P>=65504&&P<=65510}e("./edit_session/folding").Folding.call(b.prototype),e("./edit_session/bracket_match").BracketMatch.call(b.prototype),h.defineOptions(b.prototype,"session",{wrap:{set:function(P){if(!P||P=="off"?P=!1:P=="free"?P=!0:P=="printMargin"?P=-1:typeof P=="string"&&(P=parseInt(P,10)||!1),this.$wrap!=P)if(this.$wrap=P,!P)this.setUseWrapMode(!1);else{var N=typeof P=="number"?P:null;this.setWrapLimitRange(N,N),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(P){P=P=="auto"?this.$mode.type!="text":P!="text",P!=this.$wrapAsCode&&(this.$wrapAsCode=P,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(P){this.$useWorker=P,this.$stopWorker(),P&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(P){P=parseInt(P),P>0&&this.$tabSize!==P&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=P,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(P){this.setFoldStyle(P)},handlesSet:!0},overwrite:{set:function(P){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(P){this.doc.setNewLineMode(P)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(P){this.setMode(P)},get:function(){return this.$modeId},handlesSet:!0}}),r.EditSession=b}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,r,v){var f=e("./lib/lang"),y=e("./lib/oop"),C=e("./range").Range,h=function(){function c(){this.$options={}}return c.prototype.set=function(l){return y.mixin(this.$options,l),this},c.prototype.getOptions=function(){return f.copyObject(this.$options)},c.prototype.setOptions=function(l){this.$options=l},c.prototype.find=function(l){var o=this.$options,u=this.$matchIterator(l,o);if(!u)return!1;var d=null;return u.forEach(function(w,b,R,M){return d=new C(w,b,R,M),b==M&&o.start&&o.start.start&&o.skipCurrent!=!1&&d.isEqual(o.start)?(d=null,!1):!0}),d},c.prototype.findAll=function(l){var o=this.$options;if(!o.needle)return[];this.$assembleRegExp(o);var u=o.range,d=u?l.getLines(u.start.row,u.end.row):l.doc.getAllLines(),w=[],b=o.re;if(o.$isMultiLine){var R=b.length,M=d.length-R,k;e:for(var x=b.offset||0;x<=M;x++){for(var L=0;L<R;L++)if(d[x+L].search(b[L])==-1)continue e;var O=d[x],I=d[x+R-1],E=O.length-O.match(b[0])[0].length,z=I.match(b[R-1])[0].length;k&&k.end.row===x&&k.end.column>E||(w.push(k=new C(x,E,x+R-1,z)),R>2&&(x=x+R-2))}}else for(var P,N=0;N<d.length;N++)if(this.$isMultilineSearch(o)){var S=d.length-1;if(P=this.$multiLineForward(l,b,N,S),P){var A=P.endRow<=S?P.endRow-1:S;A>N&&(N=A),w.push(new C(P.startRow,P.startCol,P.endRow,P.endCol))}}else{P=f.getMatchOffsets(d[N],b);for(var L=0;L<P.length;L++){var D=P[L];w.push(new C(N,D.offset,N,D.offset+D.length))}}if(u){for(var j=u.start.column,U=u.end.column,N=0,L=w.length-1;N<L&&w[N].start.column<j&&w[N].start.row==0;)N++;for(var q=u.end.row-u.start.row;N<L&&w[L].end.column>U&&w[L].end.row==q;)L--;for(w=w.slice(N,L+1),N=0,L=w.length;N<L;N++)w[N].start.row+=u.start.row,w[N].end.row+=u.start.row}return w},c.prototype.parseReplaceString=function(l){for(var o={DollarSign:36,Ampersand:38,Digit0:48,Digit1:49,Digit9:57,Backslash:92,n:110,t:116},u="",d=0,w=l.length;d<w;d++){var b=l.charCodeAt(d);if(b===o.Backslash){if(d++,d>=w){u+="\\";break}var R=l.charCodeAt(d);switch(R){case o.Backslash:u+="\\";break;case o.n:u+=`
199
+ `;break;case o.t:u+=" ";break}continue}if(b===o.DollarSign){if(d++,d>=w){u+="$";break}var M=l.charCodeAt(d);if(M===o.DollarSign){u+="$$";continue}if(M===o.Digit0||M===o.Ampersand){u+="$&";continue}if(o.Digit1<=M&&M<=o.Digit9){u+="$"+l[d];continue}}u+=l[d]}return u||l},c.prototype.replace=function(l,o){var u=this.$options,d=this.$assembleRegExp(u);if(u.$isMultiLine)return o;if(d){var w=this.$isMultilineSearch(u);w&&(l=l.replace(/\r\n|\r|\n/g,`
200
+ `));var b=d.exec(l);if(!b||!w&&b[0].length!=l.length)return null;if(o=u.regExp?this.parseReplaceString(o):o.replace(/\$/g,"$$$$"),o=l.replace(d,o),u.preserveCase){o=o.split("");for(var R=Math.min(l.length,l.length);R--;){var M=l[R];M&&M.toLowerCase()!=M?o[R]=o[R].toUpperCase():o[R]=o[R].toLowerCase()}o=o.join("")}return o}},c.prototype.$assembleRegExp=function(l,o){if(l.needle instanceof RegExp)return l.re=l.needle;var u=l.needle;if(!l.needle)return l.re=!1;l.regExp||(u=f.escapeRegExp(u));var d=l.caseSensitive?"gm":"gmi";try{new RegExp(u,"u"),l.$supportsUnicodeFlag=!0,d+="u"}catch{l.$supportsUnicodeFlag=!1}if(l.wholeWord&&(u=p(u,l)),l.$isMultiLine=!o&&/[\n\r]/.test(u),l.$isMultiLine)return l.re=this.$assembleMultilineRegExp(u,d);try{var w=new RegExp(u,d)}catch{w=!1}return l.re=w},c.prototype.$assembleMultilineRegExp=function(l,o){for(var u=l.replace(/\r\n|\r|\n/g,`$
201
+ ^`).split(`
202
+ `),d=[],w=0;w<u.length;w++)try{d.push(new RegExp(u[w],o))}catch{return!1}return d},c.prototype.$isMultilineSearch=function(l){return l.re&&/\\r\\n|\\r|\\n/.test(l.re.source)&&l.regExp&&!l.$isMultiLine},c.prototype.$multiLineForward=function(l,o,u,d){for(var w,b=a(l,u),R=u;R<=d;){for(var M=0;M<b&&!(R>d);M++){var k=l.getLine(R++);w=w==null?k:w+`
203
+ `+k}var x=o.exec(w);if(o.lastIndex=0,x){var L=w.slice(0,x.index).split(`
204
+ `),O=x[0].split(`
205
+ `),I=u+L.length-1,E=L[L.length-1].length,z=I+O.length-1,P=O.length==1?E+O[0].length:O[O.length-1].length;return{startRow:I,startCol:E,endRow:z,endCol:P}}}return null},c.prototype.$multiLineBackward=function(l,o,u,d,w){for(var b,R=a(l,d),M=l.getLine(d).length-u,k=d;k>=w;){for(var x=0;x<R&&k>=w;x++){var L=l.getLine(k--);b=b==null?L:L+`
206
+ `+b}var O=s(b,o,M);if(O){var I=b.slice(0,O.index).split(`
207
+ `),E=O[0].split(`
208
+ `),z=k+I.length,P=I[I.length-1].length,N=z+E.length-1,S=E.length==1?P+E[0].length:E[E.length-1].length;return{startRow:z,startCol:P,endRow:N,endCol:S}}}return null},c.prototype.$matchIterator=function(l,o){var u=this.$assembleRegExp(o);if(!u)return!1;var d=this.$isMultilineSearch(o),w=this.$multiLineForward,b=this.$multiLineBackward,R=o.backwards==!0,M=o.skipCurrent!=!1,k=u.unicode,x=o.range,L=o.start;L||(L=x?x[R?"end":"start"]:l.selection.getRange()),L.start&&(L=L[M!=R?"end":"start"]);var O=x?x.start.row:0,I=x?x.end.row:l.getLength()-1;if(R)var E=function(N){var S=L.row;if(!P(S,L.column,N)){for(S--;S>=O;S--)if(P(S,Number.MAX_VALUE,N))return;if(o.wrap!=!1){for(S=I,O=L.row;S>=O;S--)if(P(S,Number.MAX_VALUE,N))return}}};else var E=function(N){var S=L.row;if(!P(S,L.column,N)){for(S=S+1;S<=I;S++)if(P(S,0,N))return;if(o.wrap!=!1){for(S=O,I=L.row;S<=I;S++)if(P(S,0,N))return}}};if(o.$isMultiLine)var z=u.length,P=function(N,S,A){var D=R?N-z+1:N;if(!(D<0||D+z>l.getLength())){var j=l.getLine(D),U=j.search(u[0]);if(!(!R&&U<S||U===-1)){for(var q=1;q<z;q++)if(j=l.getLine(D+q),j.search(u[q])==-1)return;var Z=j.match(u[z-1])[0].length;if(!(R&&Z>S)&&A(D,U,D+z-1,Z))return!0}}};else if(R)var P=function(N,S,A){if(d){var D=b(l,u,S,N,O);if(!D)return!1;if(A(D.startRow,D.startCol,D.endRow,D.endCol))return!0}else{var j=l.getLine(N),U=[],q,Z=0;for(u.lastIndex=0;q=u.exec(j);){var te=q[0].length;if(Z=q.index,!te){if(Z>=j.length)break;u.lastIndex=Z+=f.skipEmptyMatch(j,Z,k)}if(q.index+te>S)break;U.push(q.index,te)}for(var he=U.length-1;he>=0;he-=2){var ne=U[he-1],te=U[he];if(A(N,ne,N,ne+te))return!0}}};else var P=function(N,S,A){if(u.lastIndex=S,d){var D=w(l,u,N,I);if(D){var j=D.endRow<=I?D.endRow-1:I;j>N&&(N=j)}if(!D)return!1;if(A(D.startRow,D.startCol,D.endRow,D.endCol))return!0}else for(var U=l.getLine(N),q,Z;Z=u.exec(U);){var te=Z[0].length;if(q=Z.index,A(N,q,N,q+te))return!0;if(!te&&(u.lastIndex=q+=f.skipEmptyMatch(U,q,k),q>=U.length))return!1}};return{forEach:E}},c}();function p(c,l){var o=f.supportsLookbehind();function u(R,M){M===void 0&&(M=!0);var k=o&&l.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");return k.test(R)||l.regExp?o&&l.$supportsUnicodeFlag?M?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b":""}var d=Array.from(c),w=d[0],b=d[d.length-1];return u(w)+c+u(b,!1)}function s(c,l,o){for(var u=null,d=0;d<=c.length;){l.lastIndex=d;var w=l.exec(c);if(!w)break;var b=w.index+w[0].length;if(b>c.length-o)break;(!u||b>u.index+u[0].length)&&(u=w),d=w.index+1}return u}function a(c,l){var o=5e3,u={row:l,column:0},d=c.doc.positionToIndex(u),w=d+o,b=c.doc.indexToPosition(w),R=b.row;return R+1}r.Search=h}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,r,v){var f=this&&this.__extends||function(){var c=function(l,o){return c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(u,d){u.__proto__=d}||function(u,d){for(var w in d)Object.prototype.hasOwnProperty.call(d,w)&&(u[w]=d[w])},c(l,o)};return function(l,o){if(typeof o!="function"&&o!==null)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");c(l,o);function u(){this.constructor=l}l.prototype=o===null?Object.create(o):(u.prototype=o.prototype,new u)}}(),y=e("../lib/keys"),C=e("../lib/useragent"),h=y.KEY_MODS,p=function(){function c(l,o){this.$init(l,o,!1)}return c.prototype.$init=function(l,o,u){this.platform=o||(C.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(l),this.$singleCommand=u},c.prototype.addCommand=function(l){this.commands[l.name]&&this.removeCommand(l),this.commands[l.name]=l,l.bindKey&&this._buildKeyHash(l)},c.prototype.removeCommand=function(l,o){var u=l&&(typeof l=="string"?l:l.name);l=this.commands[u],o||delete this.commands[u];var d=this.commandKeyBinding;for(var w in d){var b=d[w];if(b==l)delete d[w];else if(Array.isArray(b)){var R=b.indexOf(l);R!=-1&&(b.splice(R,1),b.length==1&&(d[w]=b[0]))}}},c.prototype.bindKey=function(l,o,u){if(typeof l=="object"&&l&&(u==null&&(u=l.position),l=l[this.platform]),!!l){if(typeof o=="function")return this.addCommand({exec:o,bindKey:l,name:o.name||l});l.split("|").forEach(function(d){var w="";if(d.indexOf(" ")!=-1){var b=d.split(/\s+/);d=b.pop(),b.forEach(function(k){var x=this.parseKeys(k),L=h[x.hashId]+x.key;w+=(w?" ":"")+L,this._addCommandToBinding(w,"chainKeys")},this),w+=" "}var R=this.parseKeys(d),M=h[R.hashId]+R.key;this._addCommandToBinding(w+M,o,u)},this)}},c.prototype._addCommandToBinding=function(l,o,u){var d=this.commandKeyBinding,w;if(!o)delete d[l];else if(!d[l]||this.$singleCommand)d[l]=o;else{Array.isArray(d[l])?(w=d[l].indexOf(o))!=-1&&d[l].splice(w,1):d[l]=[d[l]],typeof u!="number"&&(u=s(o));var b=d[l];for(w=0;w<b.length;w++){var R=b[w],M=s(R);if(M>u)break}b.splice(w,0,o)}},c.prototype.addCommands=function(l){l&&Object.keys(l).forEach(function(o){var u=l[o];if(u){if(typeof u=="string")return this.bindKey(u,o);typeof u=="function"&&(u={exec:u}),typeof u=="object"&&(u.name||(u.name=o),this.addCommand(u))}},this)},c.prototype.removeCommands=function(l){Object.keys(l).forEach(function(o){this.removeCommand(l[o])},this)},c.prototype.bindKeys=function(l){Object.keys(l).forEach(function(o){this.bindKey(o,l[o])},this)},c.prototype._buildKeyHash=function(l){this.bindKey(l.bindKey,l)},c.prototype.parseKeys=function(l){var o=l.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(M){return M}),u=o.pop(),d=y[u];if(y.FUNCTION_KEYS[d])u=y.FUNCTION_KEYS[d].toLowerCase();else if(o.length){if(o.length==1&&o[0]=="shift")return{key:u.toUpperCase(),hashId:-1}}else return{key:u,hashId:-1};for(var w=0,b=o.length;b--;){var R=y.KEY_MODS[o[b]];if(R==null)return typeof console<"u"&&console.error("invalid modifier "+o[b]+" in "+l),!1;w|=R}return{key:u,hashId:w}},c.prototype.findKeyCommand=function(l,o){var u=h[l]+o;return this.commandKeyBinding[u]},c.prototype.handleKeyboard=function(l,o,u,d){if(!(d<0)){var w=h[o]+u,b=this.commandKeyBinding[w];return l.$keyChain&&(l.$keyChain+=" "+w,b=this.commandKeyBinding[l.$keyChain]||b),b&&(b=="chainKeys"||b[b.length-1]=="chainKeys")?(l.$keyChain=l.$keyChain||w,{command:"null"}):(l.$keyChain&&((!o||o==4)&&u.length==1?l.$keyChain=l.$keyChain.slice(0,-w.length-1):(o==-1||d>0)&&(l.$keyChain="")),{command:b})}},c.prototype.getStatusText=function(l,o){return o.$keyChain||""},c}();function s(c){return typeof c=="object"&&c.bindKey&&c.bindKey.position||(c.isDefault?-100:0)}var a=function(c){f(l,c);function l(o,u){var d=c.call(this,o,u)||this;return d.$singleCommand=!0,d}return l}(p);a.call=function(c,l,o){p.prototype.$init.call(c,l,o,!0)},p.call=function(c,l,o){p.prototype.$init.call(c,l,o,!1)},r.HashHandler=a,r.MultiHashHandler=p}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,r,v){var f=this&&this.__extends||function(){var s=function(a,c){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(l,o){l.__proto__=o}||function(l,o){for(var u in o)Object.prototype.hasOwnProperty.call(o,u)&&(l[u]=o[u])},s(a,c)};return function(a,c){if(typeof c!="function"&&c!==null)throw new TypeError("Class extends value "+String(c)+" is not a constructor or null");s(a,c);function l(){this.constructor=a}a.prototype=c===null?Object.create(c):(l.prototype=c.prototype,new l)}}(),y=e("../lib/oop"),C=e("../keyboard/hash_handler").MultiHashHandler,h=e("../lib/event_emitter").EventEmitter,p=function(s){f(a,s);function a(c,l){var o=s.call(this,l,c)||this;return o.byName=o.commands,o.setDefaultHandler("exec",function(u){return u.args?u.command.exec(u.editor,u.args,u.event,!1):u.command.exec(u.editor,{},u.event,!0)}),o}return a.prototype.exec=function(c,l,o){if(Array.isArray(c)){for(var u=c.length;u--;)if(this.exec(c[u],l,o))return!0;return!1}typeof c=="string"&&(c=this.commands[c]);var d={editor:l,command:c,args:o};return this.canExecute(c,l)?(d.returnValue=this._emit("exec",d),this._signal("afterExec",d),d.returnValue!==!1):(this._signal("commandUnavailable",d),!1)},a.prototype.canExecute=function(c,l){return typeof c=="string"&&(c=this.commands[c]),!(!c||l&&l.$readOnly&&!c.readOnly||this.$checkCommandState!=!1&&c.isAvailable&&!c.isAvailable(l))},a.prototype.toggleRecording=function(c){if(!this.$inReplay)return c&&c._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=(function(l){this.macro.push([l.command,l.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},a.prototype.replay=function(c){if(!(this.$inReplay||!this.macro)){if(this.recording)return this.toggleRecording(c);try{this.$inReplay=!0,this.macro.forEach(function(l){typeof l=="string"?this.exec(l,c):this.exec(l[0],c,l[1])},this)}finally{this.$inReplay=!1}}},a.prototype.trimMacro=function(c){return c.map(function(l){return typeof l[0]!="string"&&(l[0]=l[0].name),l[1]||(l=l[0]),l})},a}(C);y.implement(p.prototype,h),r.CommandManager=p}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,r,v){var f=e("../lib/lang"),y=e("../config"),C=e("../range").Range;function h(s,a){return{win:s,mac:a}}r.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:h("Ctrl-,","Command-,"),exec:function(s){y.loadModule("ace/ext/settings_menu",function(a){a.init(s),s.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:h("Alt-E","F4"),exec:function(s){y.loadModule("ace/ext/error_marker",function(a){a.showErrorMarker(s,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:h("Alt-Shift-E","Shift-F4"),exec:function(s){y.loadModule("ace/ext/error_marker",function(a){a.showErrorMarker(s,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:h("Ctrl-A","Command-A"),exec:function(s){s.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:h(null,"Ctrl-L"),exec:function(s){s.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:h("Ctrl-L","Command-L"),exec:function(s,a){typeof a=="number"&&!isNaN(a)&&s.gotoLine(a),s.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:h("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(s){s.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:h("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(s){s.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:h("F2","F2"),exec:function(s){s.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:h("Alt-F2","Alt-F2"),exec:function(s){s.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:h(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:h(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:h("Alt-0","Command-Option-0"),exec:function(s){s.session.foldAll(),s.session.unfold(s.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:h("Alt-Shift-0","Command-Option-Shift-0"),exec:function(s){s.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:h("Ctrl-K","Command-G"),exec:function(s){s.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:h("Ctrl-Shift-K","Command-Shift-G"),exec:function(s){s.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:h("Alt-K","Ctrl-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:h("Alt-Shift-K","Ctrl-Shift-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:h("Ctrl-F","Command-F"),exec:function(s){y.loadModule("ace/ext/searchbox",function(a){a.Search(s)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(s){s.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:h("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(s){s.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:h("Ctrl-Home","Command-Home|Command-Up"),exec:function(s){s.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:h("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(s){s.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:h("Up","Up|Ctrl-P"),exec:function(s,a){s.navigateUp(a.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:h("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(s){s.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:h("Ctrl-End","Command-End|Command-Down"),exec:function(s){s.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:h("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(s){s.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:h("Down","Down|Ctrl-N"),exec:function(s,a){s.navigateDown(a.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:h("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(s){s.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:h("Ctrl-Left","Option-Left"),exec:function(s){s.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:h("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:h("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(s){s.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:h("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(s){s.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:h("Left","Left|Ctrl-B"),exec:function(s,a){s.navigateLeft(a.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:h("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(s){s.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:h("Ctrl-Right","Option-Right"),exec:function(s){s.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:h("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:h("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(s){s.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:h("Shift-Right","Shift-Right"),exec:function(s){s.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:h("Right","Right|Ctrl-F"),exec:function(s,a){s.navigateRight(a.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(s){s.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:h(null,"Option-PageDown"),exec:function(s){s.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:h("PageDown","PageDown|Ctrl-V"),exec:function(s){s.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(s){s.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:h(null,"Option-PageUp"),exec:function(s){s.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(s){s.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:h("Ctrl-Up",null),exec:function(s){s.renderer.scrollBy(0,-2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:h("Ctrl-Down",null),exec:function(s){s.renderer.scrollBy(0,2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:h("Ctrl-Alt-E","Command-Option-E"),exec:function(s){s.commands.toggleRecording(s)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:h("Ctrl-Shift-E","Command-Shift-E"),exec:function(s){s.commands.replay(s)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:h("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(s){s.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:h("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(s){s.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:h("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(s){s.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:h(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(s){},readOnly:!0},{name:"cut",description:"Cut",exec:function(s){var a=s.$copyWithEmptySelection&&s.selection.isEmpty(),c=a?s.selection.getLineRange():s.selection.getRange();s._emit("cut",c),c.isEmpty()||s.session.remove(c),s.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(s,a){s.$handlePaste(a)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:h("Ctrl-D","Command-D"),exec:function(s){s.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:h("Ctrl-Shift-D","Command-Shift-D"),exec:function(s){s.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:h("Ctrl-Alt-S","Command-Alt-S"),exec:function(s){s.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:h("Ctrl-/","Command-/"),exec:function(s){s.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:h("Ctrl-Shift-/","Command-Shift-/"),exec:function(s){s.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:h("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(s){s.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:h("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(s){s.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:h("Ctrl-H","Command-Option-F"),exec:function(s){y.loadModule("ace/ext/searchbox",function(a){a.Search(s,!0)})}},{name:"undo",description:"Undo",bindKey:h("Ctrl-Z","Command-Z"),exec:function(s){s.undo()}},{name:"redo",description:"Redo",bindKey:h("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(s){s.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:h("Alt-Shift-Up","Command-Option-Up"),exec:function(s){s.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:h("Alt-Up","Option-Up"),exec:function(s){s.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:h("Alt-Shift-Down","Command-Option-Down"),exec:function(s){s.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:h("Alt-Down","Option-Down"),exec:function(s){s.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:h("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(s){s.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:h("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(s){s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:h("Shift-Delete",null),exec:function(s){if(s.selection.isEmpty())s.remove("left");else return!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:h("Alt-Backspace","Command-Backspace"),exec:function(s){s.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:h("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(s){s.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:h("Ctrl-Shift-Backspace",null),exec:function(s){var a=s.selection.getRange();a.start.column=0,s.session.remove(a)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:h("Ctrl-Shift-Delete",null),exec:function(s){var a=s.selection.getRange();a.end.column=Number.MAX_VALUE,s.session.remove(a)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:h("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(s){s.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:h("Ctrl-Delete","Alt-Delete"),exec:function(s){s.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:h("Shift-Tab","Shift-Tab"),exec:function(s){s.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:h("Tab","Tab"),exec:function(s){s.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:h("Ctrl-[","Ctrl-["),exec:function(s){s.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:h("Ctrl-]","Ctrl-]"),exec:function(s){s.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(s,a){s.insert(a)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(s,a){s.insert(f.stringRepeat(a.text||"",a.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:h(null,"Ctrl-O"),exec:function(s){s.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:h("Alt-Shift-X","Ctrl-T"),exec:function(s){s.transposeLetters()},multiSelectAction:function(s){s.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:h("Ctrl-U","Ctrl-U"),exec:function(s){s.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:h("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(s){s.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:h(null,null),exec:function(s){s.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:h("Ctrl-Shift-L","Command-Shift-L"),exec:function(s){var a=s.selection.getRange();a.start.column=a.end.column=0,a.end.row++,s.selection.setRange(a,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:h("Ctrl+F3","F3"),exec:function(s){s.openLink()}},{name:"joinlines",description:"Join lines",bindKey:h(null,null),exec:function(s){for(var a=s.selection.isBackwards(),c=a?s.selection.getSelectionLead():s.selection.getSelectionAnchor(),l=a?s.selection.getSelectionAnchor():s.selection.getSelectionLead(),o=s.session.doc.getLine(c.row).length,u=s.session.doc.getTextRange(s.selection.getRange()),d=u.replace(/\n\s*/," ").length,w=s.session.doc.getLine(c.row),b=c.row+1;b<=l.row+1;b++){var R=f.stringTrimLeft(f.stringTrimRight(s.session.doc.getLine(b)));R.length!==0&&(R=" "+R),w+=R}l.row+1<s.session.doc.getLength()-1&&(w+=s.session.doc.getNewLineCharacter()),s.clearSelection(),s.session.doc.replace(new C(c.row,0,l.row+2,0),w),d>0?(s.selection.moveCursorTo(c.row,c.column),s.selection.selectTo(c.row,c.column+d)):(o=s.session.doc.getLine(c.row).length>o?o+1:o,s.selection.moveCursorTo(c.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:h(null,null),exec:function(s){var a=s.session.doc.getLength()-1,c=s.session.doc.getLine(a).length,l=s.selection.rangeList.ranges,o=[];l.length<1&&(l=[s.selection.getRange()]);for(var u=0;u<l.length;u++)u==l.length-1&&(l[u].end.row===a&&l[u].end.column===c||o.push(new C(l[u].end.row,l[u].end.column,a,c))),u===0?l[u].start.row===0&&l[u].start.column===0||o.push(new C(0,0,l[u].start.row,l[u].start.column)):o.push(new C(l[u-1].end.row,l[u-1].end.column,l[u].start.row,l[u].start.column));s.exitMultiSelectMode(),s.clearSelection();for(var u=0;u<o.length;u++)s.selection.addRange(o[u],!1)},readOnly:!0,scrollIntoView:"none"},{name:"addLineAfter",description:"Add new line after the current line",exec:function(s){s.selection.clearSelection(),s.navigateLineEnd(),s.insert(`
209
+ `)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"addLineBefore",description:"Add new line before the current line",exec:function(s){s.selection.clearSelection();var a=s.getCursorPosition();s.selection.moveTo(a.row-1,Number.MAX_VALUE),s.insert(`
210
+ `),a.row===0&&s.navigateUp()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"openCommandPallete",exec:function(s){console.warn("This is an obsolete command. Please use `openCommandPalette` instead."),s.prompt({$type:"commands"})},readOnly:!0},{name:"openCommandPalette",description:"Open command palette",bindKey:h("F1","F1"),exec:function(s){s.prompt({$type:"commands"})},readOnly:!0},{name:"modeSelect",description:"Change language mode...",bindKey:h(null,null),exec:function(s){s.prompt({$type:"modes"})},readOnly:!0}];for(var p=1;p<9;p++)r.commands.push({name:"foldToLevel"+p,description:"Fold To Level "+p,level:p,exec:function(s){s.session.foldToLevel(this.level)},scrollIntoView:"center",readOnly:!0})}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(e,r,v){var f=e("../lib/keys"),y=e("../mouse/default_gutter_handler").GutterTooltip,C=function(){function p(s){this.editor=s,this.gutterLayer=s.renderer.$gutterLayer,this.element=s.renderer.$gutter,this.lines=s.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new y(this.editor)}return p.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},p.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},p.prototype.$onGutterKeyDown=function(s){if(this.annotationTooltip.isOpen){s.preventDefault(),s.keyCode===f.escape&&this.annotationTooltip.hideTooltip();return}if(s.target===this.element){if(s.keyCode!=f.enter)return;s.preventDefault();var a=this.editor.getCursorPosition().row;this.editor.isRowVisible(a)||this.editor.scrollToLine(a,!0,!0),setTimeout((function(){var c=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),l=this.$findNearestFoldLaneWidget(c),o=this.$findNearestAnnotation(c);if(!(l===null&&o===null)){var u=this.$findClosestNumber(l,o,c);if(u===l)if(this.activeLane="fold",this.activeRowIndex=l,this.$isCustomWidgetVisible(l)){this.$focusCustomWidget(this.activeRowIndex);return}else{this.$focusFoldWidget(this.activeRowIndex);return}else{this.activeRowIndex=o,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}}}).bind(this),10);return}this.$handleGutterKeyboardInteraction(s),setTimeout((function(){this.editor._signal("gutterkeydown",new h(s,this))}).bind(this),10)},p.prototype.$handleGutterKeyboardInteraction=function(s){if(s.keyCode===f.tab){s.preventDefault();return}if(s.keyCode===f.escape){s.preventDefault(),this.$blurGutter(),this.element.focus(),this.lane=null;return}if(s.keyCode===f.up){switch(s.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetUp();break;case"annotation":this.$moveAnnotationUp();break}return}if(s.keyCode===f.down){switch(s.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetDown();break;case"annotation":this.$moveAnnotationDown();break}return}if(s.keyCode===f.left){s.preventDefault(),this.$switchLane("annotation");return}if(s.keyCode===f.right){s.preventDefault(),this.$switchLane("fold");return}if(s.keyCode===f.enter||s.keyCode===f.space){switch(s.preventDefault(),this.activeLane){case"fold":var a=this.$rowIndexToRow(this.activeRowIndex),c=this.editor.session.$gutterCustomWidgets[a];if(c)c.callbacks&&c.callbacks.onClick&&c.callbacks.onClick(s,a);else if(this.gutterLayer.session.foldWidgets[a]==="start"){this.editor.session.onFoldWidgetClick(this.$rowIndexToRow(this.activeRowIndex),s),setTimeout((function(){this.$rowIndexToRow(this.activeRowIndex)!==a&&(this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=this.$rowToRowIndex(a),this.$focusFoldWidget(this.activeRowIndex))}).bind(this),10);break}else if(this.gutterLayer.session.foldWidgets[this.$rowIndexToRow(this.activeRowIndex)]==="end")break;return;case"annotation":var l=this.lines.cells[this.activeRowIndex].element.childNodes[2],o=l.getBoundingClientRect(),u=this.annotationTooltip.getElement().style;u.left=o.right+"px",u.top=o.bottom+"px",this.annotationTooltip.showTooltip(this.$rowIndexToRow(this.activeRowIndex));break}return}},p.prototype.$blurGutter=function(){if(this.activeRowIndex!==null)switch(this.activeLane){case"fold":this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex);break;case"annotation":this.$blurAnnotation(this.activeRowIndex);break}this.annotationTooltip.isOpen&&this.annotationTooltip.hideTooltip()},p.prototype.$isFoldWidgetVisible=function(s){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(s)),c=this.$getFoldWidget(s).style.display!=="none";return a&&c},p.prototype.$isCustomWidgetVisible=function(s){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(s)),c=!!this.$getCustomWidget(s);return a&&c},p.prototype.$isAnnotationVisible=function(s){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(s)),c=this.$getAnnotation(s).style.display!=="none";return a&&c},p.prototype.$getFoldWidget=function(s){var a=this.lines.get(s),c=a.element;return c.childNodes[1]},p.prototype.$getCustomWidget=function(s){var a=this.lines.get(s),c=a.element;return c.childNodes[3]},p.prototype.$getAnnotation=function(s){var a=this.lines.get(s),c=a.element;return c.childNodes[2]},p.prototype.$findNearestFoldLaneWidget=function(s){if(this.$isCustomWidgetVisible(s)||this.$isFoldWidgetVisible(s))return s;for(var a=0;s-a>0||s+a<this.lines.getLength()-1;){if(a++,s-a>=0&&this.$isCustomWidgetVisible(s-a))return s-a;if(s+a<=this.lines.getLength()-1&&this.$isCustomWidgetVisible(s+a))return s+a;if(s-a>=0&&this.$isFoldWidgetVisible(s-a))return s-a;if(s+a<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(s+a))return s+a}return null},p.prototype.$findNearestAnnotation=function(s){if(this.$isAnnotationVisible(s))return s;for(var a=0;s-a>0||s+a<this.lines.getLength()-1;){if(a++,s-a>=0&&this.$isAnnotationVisible(s-a))return s-a;if(s+a<=this.lines.getLength()-1&&this.$isAnnotationVisible(s+a))return s+a}return null},p.prototype.$focusFoldWidget=function(s){if(s!=null){var a=this.$getFoldWidget(s);a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus()}},p.prototype.$focusCustomWidget=function(s){if(s!=null){var a=this.$getCustomWidget(s);a&&(a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus())}},p.prototype.$focusAnnotation=function(s){if(s!=null){var a=this.$getAnnotation(s);a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus()}},p.prototype.$blurFoldWidget=function(s){var a=this.$getFoldWidget(s);a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur()},p.prototype.$blurCustomWidget=function(s){var a=this.$getCustomWidget(s);a&&(a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur())},p.prototype.$blurAnnotation=function(s){var a=this.$getAnnotation(s);a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur()},p.prototype.$moveFoldWidgetUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isFoldWidgetVisible(s)||this.$isCustomWidgetVisible(s)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=s,this.$isFoldWidgetVisible(s)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}},p.prototype.$moveFoldWidgetDown=function(){for(var s=this.activeRowIndex;s<this.lines.getLength()-1;)if(s++,this.$isFoldWidgetVisible(s)||this.$isCustomWidgetVisible(s)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=s,this.$isFoldWidgetVisible(s)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}},p.prototype.$moveAnnotationUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isAnnotationVisible(s)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,this.$focusAnnotation(this.activeRowIndex);return}},p.prototype.$moveAnnotationDown=function(){for(var s=this.activeRowIndex;s<this.lines.getLength()-1;)if(s++,this.$isAnnotationVisible(s)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,this.$focusAnnotation(this.activeRowIndex);return}},p.prototype.$findClosestNumber=function(s,a,c){return s===null?a:a===null||Math.abs(c-s)<=Math.abs(c-a)?s:a},p.prototype.$switchLane=function(s){switch(s){case"annotation":if(this.activeLane==="annotation")break;var a=this.$findNearestAnnotation(this.activeRowIndex);if(a==null)break;this.activeLane="annotation",this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=a,this.$focusAnnotation(this.activeRowIndex);break;case"fold":if(this.activeLane==="fold")break;var c=this.$findNearestFoldLaneWidget(this.activeRowIndex);if(c===null)break;this.activeLane="fold",this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=c,this.$isCustomWidgetVisible(c)?this.$focusCustomWidget(this.activeRowIndex):this.$focusFoldWidget(this.activeRowIndex);break}},p.prototype.$rowIndexToRow=function(s){var a=this.lines.get(s);return a?a.row:null},p.prototype.$rowToRowIndex=function(s){for(var a=0;a<this.lines.getLength();a++){var c=this.lines.get(a);if(c.row==s)return a}return null},p}();r.GutterKeyboardHandler=C;var h=function(){function p(s,a){this.gutterKeyboardHandler=a,this.domEvent=s}return p.prototype.getKey=function(){return f.keyCodeToString(this.domEvent.keyCode)},p.prototype.getRow=function(){return this.gutterKeyboardHandler.$rowIndexToRow(this.gutterKeyboardHandler.activeRowIndex)},p.prototype.isInAnnotationLane=function(){return this.gutterKeyboardHandler.activeLane==="annotation"},p.prototype.isInFoldLane=function(){return this.gutterKeyboardHandler.activeLane==="fold"},p}();r.GutterKeyboardEvent=h}),ace.define("ace/editor",["require","exports","module","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","ace/keyboard/gutter_handler","ace/config","ace/clipboard","ace/lib/keys","ace/lib/event","ace/tooltip"],function(e,r,v){var f=this&&this.__values||function(S){var A=typeof Symbol=="function"&&Symbol.iterator,D=A&&S[A],j=0;if(D)return D.call(S);if(S&&typeof S.length=="number")return{next:function(){return S&&j>=S.length&&(S=void 0),{value:S&&S[j++],done:!S}}};throw new TypeError(A?"Object is not iterable.":"Symbol.iterator is not defined.")},y=e("./lib/oop"),C=e("./lib/dom"),h=e("./lib/lang"),p=e("./lib/useragent"),s=e("./keyboard/textinput").TextInput,a=e("./mouse/mouse_handler").MouseHandler,c=e("./mouse/fold_handler").FoldHandler,l=e("./keyboard/keybinding").KeyBinding,o=e("./edit_session").EditSession,u=e("./search").Search,d=e("./range").Range,w=e("./lib/event_emitter").EventEmitter,b=e("./commands/command_manager").CommandManager,R=e("./commands/default_commands").commands,M=e("./config"),k=e("./token_iterator").TokenIterator,x=e("./keyboard/gutter_handler").GutterKeyboardHandler,L=e("./config").nls,O=e("./clipboard"),I=e("./lib/keys"),E=e("./lib/event"),z=e("./tooltip").HoverTooltip,P=function(){function S(A,D,j){this.id="editor"+ ++S.$uid,this.session,this.$toDestroy=[];var U=A.getContainerElement();this.container=U,this.renderer=A,this.commands=new b(p.isMac?"mac":"win",R),typeof document=="object"&&(this.textInput=new s(A.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new a(this),new c(this)),this.keyBinding=new l(this),this.$search=new u().set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=h.delayedCall((function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}).bind(this)),this.on("change",function(q,Z){Z._$emitInputEvent.schedule(31)}),this.setSession(D||j&&j.session||new o("")),M.resetOptions(this),j&&this.setOptions(j),M._signal("editor",this)}return S.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0)},S.prototype.startOperation=function(A){this.session.startOperation(A)},S.prototype.endOperation=function(A){this.session.endOperation(A)},S.prototype.onStartOperation=function(A){this.curOp=this.session.curOp,this.curOp.scrollTop=this.renderer.scrollTop,this.prevOp=this.session.prevOp,A||(this.previousCommand=null)},S.prototype.onEndOperation=function(A){if(this.curOp&&this.session){if(A&&A.returnValue===!1){this.curOp=null;return}if(this._signal("beforeEndOperation"),!this.curOp)return;var D=this.curOp.command,j=D&&D.scrollIntoView;if(j){switch(j){case"center-animate":j="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var U=this.selection.getRange(),q=this.renderer.layerConfig;(U.start.row>=q.lastRow||U.end.row<=q.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break}j=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.$lastSel=this.session.selection.toJSON(),this.prevOp=this.curOp,this.curOp=null}},S.prototype.$historyTracker=function(A){if(this.$mergeUndoDeltas){var D=this.prevOp,j=this.$mergeableCommands,U=D.command&&A.command.name==D.command.name;if(A.command.name=="insertstring"){var q=A.args;this.mergeNextCommand===void 0&&(this.mergeNextCommand=!0),U=U&&this.mergeNextCommand&&(!/\s/.test(q)||/\s/.test(D.args)),this.mergeNextCommand=!0}else U=U&&j.indexOf(A.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(U=!1),U?this.session.mergeUndoDeltas=!0:j.indexOf(A.command.name)!==-1&&(this.sequenceStartTime=Date.now())}},S.prototype.setKeyboardHandler=function(A,D){if(A&&typeof A=="string"&&A!="ace"){this.$keybindingId=A;var j=this;M.loadModule(["keybinding",A],function(U){j.$keybindingId==A&&j.keyBinding.setKeyboardHandler(U&&U.handler),D&&D()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(A),D&&D()},S.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},S.prototype.setSession=function(A){if(this.session!=A){this.curOp&&this.endOperation(),this.curOp={};var D=this.session;if(D){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),this.session.off("startOperation",this.$onStartOperation),this.session.off("endOperation",this.$onEndOperation);var j=this.session.getSelection();j.off("changeCursor",this.$onCursorChange),j.off("changeSelection",this.$onSelectionChange)}this.session=A,A?(this.$onDocumentChange=this.onDocumentChange.bind(this),A.on("change",this.$onDocumentChange),this.renderer.setSession(A),this.$onChangeMode=this.onChangeMode.bind(this),A.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),A.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),A.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),A.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),A.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),A.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=A.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.$onStartOperation=this.onStartOperation.bind(this),this.session.on("startOperation",this.$onStartOperation),this.$onEndOperation=this.onEndOperation.bind(this),this.session.on("endOperation",this.$onEndOperation),this.onChangeMode(),this.onCursorChange(),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(A)),this._signal("changeSession",{session:A,oldSession:D}),this.curOp=null,D&&D._signal("changeEditor",{oldEditor:this}),D&&(D.$editor=null),A&&A._signal("changeEditor",{editor:this}),A&&(A.$editor=this),A&&!A.destroyed&&A.bgTokenizer.scheduleStart()}},S.prototype.getSession=function(){return this.session},S.prototype.setValue=function(A,D){return this.session.doc.setValue(A),D?D==1?this.navigateFileEnd():D==-1&&this.navigateFileStart():this.selectAll(),A},S.prototype.getValue=function(){return this.session.getValue()},S.prototype.getSelection=function(){return this.selection},S.prototype.resize=function(A){this.renderer.onResize(A)},S.prototype.setTheme=function(A,D){this.renderer.setTheme(A,D)},S.prototype.getTheme=function(){return this.renderer.getTheme()},S.prototype.setStyle=function(A,D){this.renderer.setStyle(A,D)},S.prototype.unsetStyle=function(A){this.renderer.unsetStyle(A)},S.prototype.getFontSize=function(){return this.getOption("fontSize")||C.computedStyle(this.container).fontSize},S.prototype.setFontSize=function(A){this.setOption("fontSize",A)},S.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var A=this;this.$highlightPending=!0,setTimeout(function(){A.$highlightPending=!1;var D=A.session;if(!(!D||D.destroyed)){D.$bracketHighlight&&(D.$bracketHighlight.markerIds.forEach(function(ue){D.removeMarker(ue)}),D.$bracketHighlight=null);var j=A.getCursorPosition(),U=A.getKeyboardHandler(),q=U&&U.$getDirectionForHighlight&&U.$getDirectionForHighlight(A),Z=D.getMatchingBracketRanges(j,q);if(!Z){var te=new k(D,j.row,j.column),he=te.getCurrentToken();if(he&&/\b(?:tag-open|tag-name)/.test(he.type)){var ne=D.getMatchingTags(j);ne&&(Z=[ne.openTagName.isEmpty()?ne.openTag:ne.openTagName,ne.closeTagName.isEmpty()?ne.closeTag:ne.closeTagName])}}if(!Z&&D.$mode.getMatching&&(Z=D.$mode.getMatching(A.session)),!Z){A.getHighlightIndentGuides()&&A.renderer.$textLayer.$highlightIndentGuide();return}var le="ace_bracket";Array.isArray(Z)?Z.length==1&&(le="ace_error_bracket"):Z=[Z],Z.length==2&&(d.comparePoints(Z[0].end,Z[1].start)==0?Z=[d.fromPoints(Z[0].start,Z[1].end)]:d.comparePoints(Z[0].start,Z[1].end)==0&&(Z=[d.fromPoints(Z[1].start,Z[0].end)])),D.$bracketHighlight={ranges:Z,markerIds:Z.map(function(ue){return D.addMarker(ue,le,"text")})},A.getHighlightIndentGuides()&&A.renderer.$textLayer.$highlightIndentGuide()}},50)}},S.prototype.focus=function(){this.textInput.focus()},S.prototype.isFocused=function(){return this.textInput.isFocused()},S.prototype.blur=function(){this.textInput.blur()},S.prototype.onFocus=function(A){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",A))},S.prototype.onBlur=function(A){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",A))},S.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},S.prototype.onDocumentChange=function(A){var D=this.session.$useWrapMode,j=A.start.row==A.end.row?A.end.row:1/0;this.renderer.updateLines(A.start.row,j,D),this._signal("change",A),this.$cursorChange()},S.prototype.onTokenizerUpdate=function(A){var D=A.data;this.renderer.updateLines(D.first,D.last)},S.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},S.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},S.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},S.prototype.$updateHighlightActiveLine=function(){var A=this.getSession(),D;if(this.$highlightActiveLine&&((this.$selectionStyle!="line"||!this.selection.isMultiLine())&&(D=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(D=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(D=!1)),A.$highlightLineMarker&&!D)A.removeMarker(A.$highlightLineMarker.id),A.$highlightLineMarker=null;else if(!A.$highlightLineMarker&&D){var j=new d(D.row,D.column,D.row,1/0);j.id=A.addMarker(j,"ace_active-line","screenLine"),A.$highlightLineMarker=j}else D&&(A.$highlightLineMarker.start.row=D.row,A.$highlightLineMarker.end.row=D.row,A.$highlightLineMarker.start.column=D.column,A._signal("changeBackMarker"))},S.prototype.onSelectionChange=function(A){var D=this.session;if(D.$selectionMarker&&D.removeMarker(D.$selectionMarker),D.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var j=this.selection.getRange(),U=this.getSelectionStyle();D.$selectionMarker=D.addMarker(j,"ace_selection",U)}var q=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(q),this._signal("changeSelection")},S.prototype.$getSelectionHighLightRegexp=function(){var A=this.session,D=this.getSelectionRange();if(!(D.isEmpty()||D.isMultiLine())){var j=D.start.column,U=D.end.column,q=A.getLine(D.start.row),Z=q.substring(j,U);if(!(Z.length>5e3||!/[\w\d]/.test(Z))){var te=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:Z}),he=q.substring(j-1,U+1);if(te.test(he))return te}}},S.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},S.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},S.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},S.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},S.prototype.onChangeMode=function(A){this.renderer.updateText(),this._emit("changeMode",A)},S.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},S.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},S.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},S.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},S.prototype.getCopyText=function(){var A=this.getSelectedText(),D=this.session.doc.getNewLineCharacter(),j=!1;if(!A&&this.$copyWithEmptySelection){j=!0;for(var U=this.selection.getAllRanges(),q=0;q<U.length;q++){var Z=U[q];q&&U[q-1].start.row==Z.start.row||(A+=this.session.getLine(Z.start.row)+D)}}var te={text:A};return this._signal("copy",te),O.lineMode=j?te.text:!1,te.text},S.prototype.onCopy=function(){this.commands.exec("copy",this)},S.prototype.onCut=function(){this.commands.exec("cut",this)},S.prototype.onPaste=function(A,D){var j={text:A,event:D};this.commands.exec("paste",this,j)},S.prototype.$handlePaste=function(A){typeof A=="string"&&(A={text:A}),this._signal("paste",A);var D=A.text,j=D===O.lineMode,U=this.session;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)j?U.insert({row:this.selection.lead.row,column:0},D):this.insert(D);else if(j)this.selection.rangeList.ranges.forEach(function(le){U.insert({row:le.start.row,column:0},D)});else{var q=D.split(/\r\n|\r|\n/),Z=this.selection.rangeList.ranges,te=q.length==2&&(!q[0]||!q[1]);if(q.length!=Z.length||te)return this.commands.exec("insertstring",this,D);for(var he=Z.length;he--;){var ne=Z[he];ne.isEmpty()||U.remove(ne),U.insert(ne.start,q[he])}}},S.prototype.execCommand=function(A,D){return this.commands.exec(A,this,D)},S.prototype.insert=function(A,D){var j=this.session,U=j.getMode(),q=this.getCursorPosition();if(this.getBehavioursEnabled()&&!D){var Z=U.transformAction(j.getState(q.row),"insertion",this,j,A);Z&&(A!==Z.text&&(this.inVirtualSelectionMode||(this.session.mergeUndoDeltas=!1,this.mergeNextCommand=!1)),A=Z.text)}if(A==" "&&(A=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()&&A.indexOf(`
211
+ `)==-1){var te=d.fromPoints(q,q);te.end.column+=A.length,this.session.remove(te)}}else{var te=this.getSelectionRange();q=this.session.remove(te),this.clearSelection()}if(A==`
212
+ `||A==`\r
213
+ `){var ue=j.getLine(q.row);if(q.column>ue.search(/\S|$/)){var he=ue.substr(q.column).search(/\S|$/);j.doc.removeInLine(q.row,q.column,q.column+he)}}this.clearSelection();var ne=q.column,le=j.getState(q.row),ue=j.getLine(q.row),ce=U.checkOutdent(le,ue,A);if(j.insert(q,A),Z&&Z.selection&&(Z.selection.length==2?this.selection.setSelectionRange(new d(q.row,ne+Z.selection[0],q.row,ne+Z.selection[1])):this.selection.setSelectionRange(new d(q.row+Z.selection[0],Z.selection[1],q.row+Z.selection[2],Z.selection[3]))),this.$enableAutoIndent){if(j.getDocument().isNewLine(A)){var fe=U.getNextLineIndent(le,ue.slice(0,q.column),j.getTabString());j.insert({row:q.row+1,column:0},fe)}ce&&U.autoOutdent(le,j,q.row)}},S.prototype.autoIndent=function(){for(var A=this.session,D=A.getMode(),j=this.selection.isEmpty()?[new d(0,0,A.doc.getLength()-1,0)]:this.selection.getAllRanges(),U="",q="",Z="",te=A.getTabString(),he=0;he<j.length;he++)for(var ne=j[he].start.row,le=j[he].end.row,ue=ne;ue<=le;ue++){ue>0&&(U=A.getState(ue-1),q=A.getLine(ue-1),Z=D.getNextLineIndent(U,q,te));var ce=A.getLine(ue),fe=D.$getIndent(ce);if(Z!==fe){if(fe.length>0){var Se=new d(ue,0,ue,fe.length);A.remove(Se)}Z.length>0&&A.insert({row:ue,column:0},Z)}D.autoOutdent(U,A,ue)}},S.prototype.onTextInput=function(A,D){if(!D)return this.keyBinding.onTextInput(A);this.startOperation({command:{name:"insertstring"}});var j=this.applyComposition.bind(this,A,D);this.selection.rangeCount?this.forEachSelection(j):j(),this.endOperation()},S.prototype.applyComposition=function(A,D){if(D.extendLeft||D.extendRight){var j=this.selection.getRange();j.start.column-=D.extendLeft,j.end.column+=D.extendRight,j.start.column<0&&(j.start.row--,j.start.column+=this.session.getLine(j.start.row).length+1),this.selection.setRange(j),!A&&!j.isEmpty()&&this.remove()}if((A||!this.selection.isEmpty())&&this.insert(A,!0),D.restoreStart||D.restoreEnd){var j=this.selection.getRange();j.start.column-=D.restoreStart,j.end.column-=D.restoreEnd,this.selection.setRange(j)}},S.prototype.onCommandKey=function(A,D,j){return this.keyBinding.onCommandKey(A,D,j)},S.prototype.setOverwrite=function(A){this.session.setOverwrite(A)},S.prototype.getOverwrite=function(){return this.session.getOverwrite()},S.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},S.prototype.setScrollSpeed=function(A){this.setOption("scrollSpeed",A)},S.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},S.prototype.setDragDelay=function(A){this.setOption("dragDelay",A)},S.prototype.getDragDelay=function(){return this.getOption("dragDelay")},S.prototype.setSelectionStyle=function(A){this.setOption("selectionStyle",A)},S.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},S.prototype.setHighlightActiveLine=function(A){this.setOption("highlightActiveLine",A)},S.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},S.prototype.setHighlightGutterLine=function(A){this.setOption("highlightGutterLine",A)},S.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},S.prototype.setHighlightSelectedWord=function(A){this.setOption("highlightSelectedWord",A)},S.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},S.prototype.setAnimatedScroll=function(A){this.renderer.setAnimatedScroll(A)},S.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},S.prototype.setShowInvisibles=function(A){this.renderer.setShowInvisibles(A)},S.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},S.prototype.setDisplayIndentGuides=function(A){this.renderer.setDisplayIndentGuides(A)},S.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},S.prototype.setHighlightIndentGuides=function(A){this.renderer.setHighlightIndentGuides(A)},S.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},S.prototype.setShowPrintMargin=function(A){this.renderer.setShowPrintMargin(A)},S.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},S.prototype.setPrintMarginColumn=function(A){this.renderer.setPrintMarginColumn(A)},S.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},S.prototype.setReadOnly=function(A){this.setOption("readOnly",A)},S.prototype.getReadOnly=function(){return this.getOption("readOnly")},S.prototype.setBehavioursEnabled=function(A){this.setOption("behavioursEnabled",A)},S.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},S.prototype.setWrapBehavioursEnabled=function(A){this.setOption("wrapBehavioursEnabled",A)},S.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},S.prototype.setShowFoldWidgets=function(A){this.setOption("showFoldWidgets",A)},S.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},S.prototype.setFadeFoldWidgets=function(A){this.setOption("fadeFoldWidgets",A)},S.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},S.prototype.remove=function(A){this.selection.isEmpty()&&(A=="left"?this.selection.selectLeft():this.selection.selectRight());var D=this.getSelectionRange();if(this.getBehavioursEnabled()){var j=this.session,U=j.getState(D.start.row),q=j.getMode().transformAction(U,"deletion",this,j,D);if(D.end.column===0){var Z=j.getTextRange(D);if(Z[Z.length-1]==`
214
+ `){var te=j.getLine(D.end.row);/^\s+$/.test(te)&&(D.end.column=te.length)}}q&&(D=q)}this.session.remove(D),this.clearSelection()},S.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},S.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},S.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},S.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var A=this.getSelectionRange();A.start.column==A.end.column&&A.start.row==A.end.row&&(A.end.column=0,A.end.row++),this.session.remove(A),this.clearSelection()},S.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var A=this.getCursorPosition();this.insert(`
215
+ `),this.moveCursorToPosition(A)},S.prototype.setGhostText=function(A,D){this.renderer.setGhostText(A,D)},S.prototype.removeGhostText=function(){this.renderer.removeGhostText()},S.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var A=this.getCursorPosition(),D=A.column;if(D!==0){var j=this.session.getLine(A.row),U,q;D<j.length?(U=j.charAt(D)+j.charAt(D-1),q=new d(A.row,D-1,A.row,D+1)):(U=j.charAt(D-1)+j.charAt(D-2),q=new d(A.row,D-2,A.row,D)),this.session.replace(q,U),this.session.selection.moveToPosition(q.end)}}},S.prototype.toLowerCase=function(){var A=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var D=this.getSelectionRange(),j=this.session.getTextRange(D);this.session.replace(D,j.toLowerCase()),this.selection.setSelectionRange(A)},S.prototype.toUpperCase=function(){var A=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var D=this.getSelectionRange(),j=this.session.getTextRange(D);this.session.replace(D,j.toUpperCase()),this.selection.setSelectionRange(A)},S.prototype.indent=function(){var A=this.session,D=this.getSelectionRange();if(D.start.row<D.end.row){var j=this.$getSelectedRows();A.indentRows(j.first,j.last," ");return}else if(D.start.column<D.end.column){var U=A.getTextRange(D);if(!/^\s+$/.test(U)){var j=this.$getSelectedRows();A.indentRows(j.first,j.last," ");return}}var q=A.getLine(D.start.row),Z=D.start,te=A.getTabSize(),he=A.documentToScreenColumn(Z.row,Z.column);if(this.session.getUseSoftTabs())var ne=te-he%te,le=h.stringRepeat(" ",ne);else{for(var ne=he%te;q[D.start.column-1]==" "&&ne;)D.start.column--,ne--;this.selection.setSelectionRange(D),le=" "}return this.insert(le)},S.prototype.blockIndent=function(){var A=this.$getSelectedRows();this.session.indentRows(A.first,A.last," ")},S.prototype.blockOutdent=function(){var A=this.session.getSelection();this.session.outdentRows(A.getRange())},S.prototype.sortLines=function(){for(var A=this.$getSelectedRows(),D=this.session,j=[],U=A.first;U<=A.last;U++)j.push(D.getLine(U));j.sort(function(te,he){return te.toLowerCase()<he.toLowerCase()?-1:te.toLowerCase()>he.toLowerCase()?1:0});for(var q=new d(0,0,0,0),U=A.first;U<=A.last;U++){var Z=D.getLine(U);q.start.row=U,q.end.row=U,q.end.column=Z.length,D.replace(q,j[U-A.first])}},S.prototype.toggleCommentLines=function(){var A=this.session.getState(this.getCursorPosition().row),D=this.$getSelectedRows();this.session.getMode().toggleCommentLines(A,this.session,D.first,D.last)},S.prototype.toggleBlockComment=function(){var A=this.getCursorPosition(),D=this.session.getState(A.row),j=this.getSelectionRange();this.session.getMode().toggleBlockComment(D,this.session,j,A)},S.prototype.getNumberAt=function(A,D){var j=/[\-]?[0-9]+(?:\.[0-9]+)?/g;j.lastIndex=0;for(var U=this.session.getLine(A);j.lastIndex<D;){var q=j.exec(U);if(q.index<=D&&q.index+q[0].length>=D){var Z={value:q[0],start:q.index,end:q.index+q[0].length};return Z}}return null},S.prototype.modifyNumber=function(A){var D=this.selection.getCursor().row,j=this.selection.getCursor().column,U=new d(D,j-1,D,j),q=this.session.getTextRange(U);if(!isNaN(parseFloat(q))&&isFinite(q)){var Z=this.getNumberAt(D,j);if(Z){var te=Z.value.indexOf(".")>=0?Z.start+Z.value.indexOf(".")+1:Z.end,he=Z.start+Z.value.length-te,ne=parseFloat(Z.value);ne*=Math.pow(10,he),te!==Z.end&&j<te?A*=Math.pow(10,Z.end-j-1):A*=Math.pow(10,Z.end-j),ne+=A,ne/=Math.pow(10,he);var le=ne.toFixed(he),ue=new d(D,Z.start,D,Z.end);this.session.replace(ue,le),this.moveCursorTo(D,Math.max(Z.start+1,j+le.length-Z.value.length))}}else this.toggleWord()},S.prototype.toggleWord=function(){var A=this.selection.getCursor().row,D=this.selection.getCursor().column;this.selection.selectWord();var j=this.getSelectedText(),U=this.selection.getWordRange().start.column,q=j.replace(/([a-z]+|[A-Z]+)(?=[A-Z_]|$)/g,"$1 ").split(/\s/),Z=D-U-1;Z<0&&(Z=0);var te=0,he=0,ne=this;j.match(/[A-Za-z0-9_]+/)&&q.forEach(function(Ve,lt){he=te+Ve.length,Z>=te&&Z<=he&&(j=Ve,ne.selection.clearSelection(),ne.moveCursorTo(A,te+U),ne.selection.selectTo(A,he+U)),te=he});for(var le=this.$toggleWordPairs,ue,ce=0;ce<le.length;ce++)for(var fe=le[ce],Se=0;Se<=1;Se++){var $e=+!Se,Te=j.match(new RegExp("^\\s?_?("+h.escapeRegExp(fe[Se])+")\\s?$","i"));if(Te){var qe=j.match(new RegExp("([_]|^|\\s)("+h.escapeRegExp(Te[1])+")($|\\s)","g"));qe&&(ue=j.replace(new RegExp(h.escapeRegExp(fe[Se]),"i"),function(Ve){var lt=fe[$e];return Ve.toUpperCase()==Ve?lt=lt.toUpperCase():Ve.charAt(0).toUpperCase()==Ve.charAt(0)&&(lt=lt.substr(0,0)+fe[$e].charAt(0).toUpperCase()+lt.substr(1)),lt}),this.insert(ue),ue="")}}},S.prototype.findLinkAt=function(A,D){var j,U,q=this.session.getLine(A),Z=q.split(/((?:https?|ftp):\/\/[\S]+)/),te=D;te<0&&(te=0);var he=0,ne=0,le;try{for(var ue=f(Z),ce=ue.next();!ce.done;ce=ue.next()){var fe=ce.value;if(ne=he+fe.length,te>=he&&te<=ne&&fe.match(/((?:https?|ftp):\/\/[\S]+)/)){le=fe.replace(/[\s:.,'";}\]]+$/,"");break}he=ne}}catch(Se){j={error:Se}}finally{try{ce&&!ce.done&&(U=ue.return)&&U.call(ue)}finally{if(j)throw j.error}}return le},S.prototype.openLink=function(){var A=this.selection.getCursor(),D=this.findLinkAt(A.row,A.column);return D&&window.open(D,"_blank"),D!=null},S.prototype.removeLines=function(){var A=this.$getSelectedRows();this.session.removeFullLines(A.first,A.last),this.clearSelection()},S.prototype.duplicateSelection=function(){var A=this.selection,D=this.session,j=A.getRange(),U=A.isBackwards();if(j.isEmpty()){var q=j.start.row;D.duplicateLines(q,q)}else{var Z=U?j.start:j.end,te=D.insert(Z,D.getTextRange(j));j.start=Z,j.end=te,A.setSelectionRange(j,U)}},S.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},S.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},S.prototype.moveText=function(A,D,j){return this.session.moveText(A,D,j)},S.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},S.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},S.prototype.$moveLines=function(A,D){var j,U,q=this.selection;if(!q.inMultiSelectMode||this.inVirtualSelectionMode){var Z=q.toOrientedRange();j=this.$getSelectedRows(Z),U=this.session.$moveLines(j.first,j.last,D?0:A),D&&A==-1&&(U=0),Z.moveBy(U,0),q.fromOrientedRange(Z)}else{var te=q.rangeList.ranges;q.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var he=0,ne=0,le=te.length,ue=0;ue<le;ue++){var ce=ue;te[ue].moveBy(he,0),j=this.$getSelectedRows(te[ue]);for(var fe=j.first,Se=j.last;++ue<le;){ne&&te[ue].moveBy(ne,0);var $e=this.$getSelectedRows(te[ue]);if(D&&$e.first!=Se||!D&&$e.first>Se+1)break;Se=$e.last}for(ue--,he=this.session.$moveLines(fe,Se,D?0:A),D&&A==-1&&(ce=ue+1);ce<=ue;)te[ce].moveBy(he,0),ce++;D||(he=0),ne+=he}q.fromOrientedRange(q.ranges[0]),q.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},S.prototype.$getSelectedRows=function(A){return A=(A||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(A.start.row),last:this.session.getRowFoldEnd(A.end.row)}},S.prototype.onCompositionStart=function(A){this.renderer.showComposition(A)},S.prototype.onCompositionUpdate=function(A){this.renderer.setCompositionText(A)},S.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},S.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},S.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},S.prototype.isRowVisible=function(A){return A>=this.getFirstVisibleRow()&&A<=this.getLastVisibleRow()},S.prototype.isRowFullyVisible=function(A){return A>=this.renderer.getFirstFullyVisibleRow()&&A<=this.renderer.getLastFullyVisibleRow()},S.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},S.prototype.$moveByPage=function(A,D){var j=this.renderer,U=this.renderer.layerConfig,q=A*Math.floor(U.height/U.lineHeight);D===!0?this.selection.$moveSelection(function(){this.moveCursorBy(q,0)}):D===!1&&(this.selection.moveCursorBy(q,0),this.selection.clearSelection());var Z=j.scrollTop;j.scrollBy(0,q*U.lineHeight),D!=null&&j.scrollCursorIntoView(null,.5),j.animateScrolling(Z)},S.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},S.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},S.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},S.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},S.prototype.scrollPageDown=function(){this.$moveByPage(1)},S.prototype.scrollPageUp=function(){this.$moveByPage(-1)},S.prototype.scrollToRow=function(A){this.renderer.scrollToRow(A)},S.prototype.scrollToLine=function(A,D,j,U){this.renderer.scrollToLine(A,D,j,U)},S.prototype.centerSelection=function(){var A=this.getSelectionRange(),D={row:Math.floor(A.start.row+(A.end.row-A.start.row)/2),column:Math.floor(A.start.column+(A.end.column-A.start.column)/2)};this.renderer.alignCursor(D,.5)},S.prototype.getCursorPosition=function(){return this.selection.getCursor()},S.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},S.prototype.getSelectionRange=function(){return this.selection.getRange()},S.prototype.selectAll=function(){this.selection.selectAll()},S.prototype.clearSelection=function(){this.selection.clearSelection()},S.prototype.moveCursorTo=function(A,D){this.selection.moveCursorTo(A,D)},S.prototype.moveCursorToPosition=function(A){this.selection.moveCursorToPosition(A)},S.prototype.jumpToMatching=function(A,D){var j=this.getCursorPosition(),U=new k(this.session,j.row,j.column),q=U.getCurrentToken(),Z=0;q&&q.type.indexOf("tag-name")!==-1&&(q=U.stepBackward());var te=q||U.stepForward();if(te){var he,ne=!1,le={},ue=j.column-te.start,ce,fe={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(te.value.match(/[{}()\[\]]/g)){for(;ue<te.value.length&&!ne;ue++)if(fe[te.value[ue]])switch(ce=fe[te.value[ue]]+"."+te.type.replace("rparen","lparen"),isNaN(le[ce])&&(le[ce]=0),te.value[ue]){case"(":case"[":case"{":le[ce]++;break;case")":case"]":case"}":le[ce]--,le[ce]===-1&&(he="bracket",ne=!0);break}}else te.type.indexOf("tag-name")!==-1&&(isNaN(le[te.value])&&(le[te.value]=0),q.value==="<"&&Z>1?le[te.value]++:q.value==="</"&&le[te.value]--,le[te.value]===-1&&(he="tag",ne=!0));ne||(q=te,Z++,te=U.stepForward(),ue=0)}while(te&&!ne);if(he){var Se,$e;if(he==="bracket")Se=this.session.getBracketRange(j),Se||(Se=new d(U.getCurrentTokenRow(),U.getCurrentTokenColumn()+ue-1,U.getCurrentTokenRow(),U.getCurrentTokenColumn()+ue-1),$e=Se.start,(D||$e.row===j.row&&Math.abs($e.column-j.column)<2)&&(Se=this.session.getBracketRange($e)));else if(he==="tag"){if(!te||te.type.indexOf("tag-name")===-1)return;if(Se=new d(U.getCurrentTokenRow(),U.getCurrentTokenColumn()-2,U.getCurrentTokenRow(),U.getCurrentTokenColumn()-2),Se.compare(j.row,j.column)===0){var Te=this.session.getMatchingTags(j);Te&&(Te.openTag.contains(j.row,j.column)?(Se=Te.closeTag,$e=Se.start):(Se=Te.openTag,Te.closeTag.start.row===j.row&&Te.closeTag.start.column===j.column?$e=Se.end:$e=Se.start))}$e=$e||Se.start}$e=Se&&Se.cursor||$e,$e&&(A?Se&&D?this.selection.setRange(Se):Se&&Se.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo($e.row,$e.column):this.selection.moveTo($e.row,$e.column))}}},S.prototype.gotoLine=function(A,D,j){this.selection.clearSelection(),this.session.unfold({row:A-1,column:D||0}),this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(A-1,D||0),this.isRowFullyVisible(A-1)||this.scrollToLine(A-1,!0,j)},S.prototype.navigateTo=function(A,D){this.selection.moveTo(A,D)},S.prototype.navigateUp=function(A){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var D=this.selection.anchor.getPosition();return this.moveCursorToPosition(D)}this.selection.clearSelection(),this.selection.moveCursorBy(-A||-1,0)},S.prototype.navigateDown=function(A){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var D=this.selection.anchor.getPosition();return this.moveCursorToPosition(D)}this.selection.clearSelection(),this.selection.moveCursorBy(A||1,0)},S.prototype.navigateLeft=function(A){if(this.selection.isEmpty())for(A=A||1;A--;)this.selection.moveCursorLeft();else{var D=this.getSelectionRange().start;this.moveCursorToPosition(D)}this.clearSelection()},S.prototype.navigateRight=function(A){if(this.selection.isEmpty())for(A=A||1;A--;)this.selection.moveCursorRight();else{var D=this.getSelectionRange().end;this.moveCursorToPosition(D)}this.clearSelection()},S.prototype.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},S.prototype.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},S.prototype.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},S.prototype.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},S.prototype.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},S.prototype.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},S.prototype.replace=function(A,D){D&&this.$search.set(D);var j=this.$search.find(this.session),U=0;return j&&(this.$tryReplace(j,A)&&(U=1),this.selection.setSelectionRange(j),this.renderer.scrollSelectionIntoView(j.start,j.end)),U},S.prototype.replaceAll=function(A,D){D&&this.$search.set(D);var j=this.$search.findAll(this.session),U=0;if(!j.length)return U;var q=this.getSelectionRange();this.selection.moveTo(0,0);for(var Z=j.length-1;Z>=0;--Z)this.$tryReplace(j[Z],A)&&U++;return this.selection.setSelectionRange(q),U},S.prototype.$tryReplace=function(A,D){var j=this.session.getTextRange(A);return D=this.$search.replace(j,D),D!==null?(A.end=this.session.replace(A,D),A):null},S.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},S.prototype.find=function(A,D,j){D||(D={}),typeof A=="string"||A instanceof RegExp?D.needle=A:typeof A=="object"&&y.mixin(D,A);var U=this.selection.getRange();D.needle==null&&(A=this.session.getTextRange(U)||this.$search.$options.needle,A||(U=this.session.getWordRange(U.start.row,U.start.column),A=this.session.getTextRange(U)),this.$search.set({needle:A})),this.$search.set(D),D.start||this.$search.set({start:U});var q=this.$search.find(this.session);if(D.preventScroll)return q;if(q)return this.revealRange(q,j),q;D.backwards?U.start=U.end:U.end=U.start,this.selection.setRange(U)},S.prototype.findNext=function(A,D){this.find({skipCurrent:!0,backwards:!1},A,D)},S.prototype.findPrevious=function(A,D){this.find(A,{skipCurrent:!0,backwards:!0},D)},S.prototype.revealRange=function(A,D){this.session.unfold(A),this.selection.setSelectionRange(A);var j=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(A.start,A.end,.5),D!==!1&&this.renderer.animateScrolling(j)},S.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},S.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},S.prototype.destroy=function(){this.destroyed=!0,this.$toDestroy&&(this.$toDestroy.forEach(function(A){A.destroy()}),this.$toDestroy=[]),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},S.prototype.setAutoScrollEditorIntoView=function(A){if(A){var D,j=this,U=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var q=this.$scrollAnchor;q.style.cssText="position:absolute",this.container.insertBefore(q,this.container.firstChild);var Z=this.on("changeSelection",function(){U=!0}),te=this.renderer.on("beforeRender",function(){U&&(D=j.renderer.container.getBoundingClientRect())}),he=this.renderer.on("afterRender",function(){if(U&&D&&(j.isFocused()||j.searchBox&&j.searchBox.isFocused())){var ne=j.renderer,le=ne.$cursorLayer.$pixelPos,ue=ne.layerConfig,ce=le.top-ue.offset;le.top>=0&&ce+D.top<0?U=!0:le.top<ue.height&&le.top+D.top+ue.lineHeight>window.innerHeight?U=!1:U=null,U!=null&&(q.style.top=ce+"px",q.style.left=le.left+"px",q.style.height=ue.lineHeight+"px",q.scrollIntoView(U)),U=D=null}});this.setAutoScrollEditorIntoView=function(ne){ne||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",Z),this.renderer.off("afterRender",he),this.renderer.off("beforeRender",te))}}},S.prototype.$resetCursorStyle=function(){var A=this.$cursorStyle||"ace",D=this.renderer.$cursorLayer;D&&(D.setSmoothBlinking(/smooth/.test(A)),D.isBlinking=!this.$readOnly&&A!="wide",C.setCssClass(D.element,"ace_slim-cursors",/slim/.test(A)))},S.prototype.prompt=function(A,D,j){var U=this;M.loadModule("ace/ext/prompt",function(q){q.prompt(U,A,D,j)})},S}();P.$uid=0,P.prototype.curOp=null,P.prototype.prevOp={},P.prototype.$mergeableCommands=["backspace","del","insertstring"],P.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],y.implement(P.prototype,w),M.defineOptions(P.prototype,"editor",{selectionStyle:{set:function(S){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:S})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(S){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(S){var A=this;if(this.textInput.setReadOnly(S),!this.destroyed){this.$resetCursorStyle(),this.$readOnlyCallback||(this.$readOnlyCallback=function(j){var U=!1;if(j&&j.type=="keydown"){if(j&&j.key&&!j.ctrlKey&&!j.metaKey&&(j.key==" "&&j.preventDefault(),U=j.key.length==1),!U)return}else j&&j.type!=="exec"&&(U=!0);if(U){A.hoverTooltip||(A.hoverTooltip=new z);var q=C.createElement("div");q.textContent=L("editor.tooltip.disable-editing","Editing is disabled"),A.hoverTooltip.isOpen||A.hoverTooltip.showForRange(A,A.getSelectionRange(),q)}else A.hoverTooltip&&A.hoverTooltip.isOpen&&A.hoverTooltip.hide()});var D=this.textInput.getElement();S?(E.addListener(D,"keydown",this.$readOnlyCallback,this),this.commands.on("exec",this.$readOnlyCallback),this.commands.on("commandUnavailable",this.$readOnlyCallback)):(E.removeListener(D,"keydown",this.$readOnlyCallback),this.commands.off("exec",this.$readOnlyCallback),this.commands.off("commandUnavailable",this.$readOnlyCallback),this.hoverTooltip&&(this.hoverTooltip.destroy(),this.hoverTooltip=null))}},initialValue:!1},copyWithEmptySelection:{set:function(S){this.textInput.setCopyWithEmptySelection(S)},initialValue:!1},cursorStyle:{set:function(S){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(S){this.setAutoScrollEditorIntoView(S)}},keyboardHandler:{set:function(S){this.setKeyboardHandler(S)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(S){this.session.setValue(S)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(S){this.setSession(S)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(S){this.renderer.$gutterLayer.setShowLineNumbers(S),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),S&&this.$relativeLineNumbers?N.attach(this):N.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(S){this.$showLineNumbers&&S?N.attach(this):N.detach(this)}},placeholder:{set:function(S){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var A=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(A&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),C.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!A&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),C.addCssClass(this.container,"ace_hasPlaceholder");var D=C.createElement("div");D.className="ace_placeholder",D.textContent=this.$placeholder||"",this.renderer.placeholderNode=D,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!A&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(S){var A={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(U){U.blur(),U.renderer.scroller.focus()},readOnly:!0},D=function(U){if(U.target==this.renderer.scroller&&U.keyCode===I.enter){U.preventDefault();var q=this.getCursorPosition().row;this.isRowVisible(q)||this.scrollToLine(q,!0,!0),this.focus()}},j;S?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(p.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",L("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",L("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",D.bind(this)),this.commands.addCommand(A),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",L("editor.gutter.aria-roledescription","editor gutter")),this.renderer.$gutter.setAttribute("aria-label",L("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),j||(j=new x(this)),j.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",D.bind(this)),this.commands.removeCommand(A),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),j&&j.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(S){this.$textInputAriaLabel=S},initialValue:""},enableMobileMenu:{set:function(S){this.$enableMobileMenu=S},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var N={getText:function(S,A){return(Math.abs(S.selection.lead.row-A)||A+1+(A<9?"·":""))+""},getWidth:function(S,A,D){return Math.max(A.toString().length,(D.lastRow+1).toString().length,2)*D.characterWidth},update:function(S,A){A.renderer.$loop.schedule(A.renderer.CHANGE_GUTTER)},attach:function(S){S.renderer.$gutterLayer.$renderer=this,S.on("changeSelection",this.update),this.update(null,S)},detach:function(S){S.renderer.$gutterLayer.$renderer==this&&(S.renderer.$gutterLayer.$renderer=null),S.off("changeSelection",this.update),this.update(null,S)}};r.Editor=P}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,r,v){var f=e("../lib/dom"),y=function(){function C(h,p){this.element=h,this.canvasHeight=p||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return C.prototype.moveContainer=function(h){f.translate(this.element,0,-(h.firstRowScreen*h.lineHeight%this.canvasHeight)-h.offset*this.$offsetCoefficient)},C.prototype.pageChanged=function(h,p){return Math.floor(h.firstRowScreen*h.lineHeight/this.canvasHeight)!==Math.floor(p.firstRowScreen*p.lineHeight/this.canvasHeight)},C.prototype.computeLineTop=function(h,p,s){var a=p.firstRowScreen*p.lineHeight,c=Math.floor(a/this.canvasHeight),l=s.documentToScreenRow(h,0)*p.lineHeight;return l-c*this.canvasHeight},C.prototype.computeLineHeight=function(h,p,s){return p.lineHeight*s.getRowLineCount(h)},C.prototype.getLength=function(){return this.cells.length},C.prototype.get=function(h){return this.cells[h]},C.prototype.shift=function(){this.$cacheCell(this.cells.shift())},C.prototype.pop=function(){this.$cacheCell(this.cells.pop())},C.prototype.push=function(h){if(Array.isArray(h)){this.cells.push.apply(this.cells,h);for(var p=f.createFragment(this.element),s=0;s<h.length;s++)p.appendChild(h[s].element);this.element.appendChild(p)}else this.cells.push(h),this.element.appendChild(h.element)},C.prototype.unshift=function(h){if(Array.isArray(h)){this.cells.unshift.apply(this.cells,h);for(var p=f.createFragment(this.element),s=0;s<h.length;s++)p.appendChild(h[s].element);this.element.firstChild?this.element.insertBefore(p,this.element.firstChild):this.element.appendChild(p)}else this.cells.unshift(h),this.element.insertAdjacentElement("afterbegin",h.element)},C.prototype.last=function(){return this.cells.length?this.cells[this.cells.length-1]:null},C.prototype.$cacheCell=function(h){h&&(h.element.remove(),this.cellCache.push(h))},C.prototype.createCell=function(h,p,s,a){var c=this.cellCache.pop();if(!c){var l=f.createElement("div");a&&a(l),this.element.appendChild(l),c={element:l,text:"",row:h}}return c.row=h,c},C}();r.Lines=y}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/layer/lines","ace/config"],function(e,r,v){var f=e("../lib/dom"),y=e("../lib/oop"),C=e("../lib/lang"),h=e("../lib/event_emitter").EventEmitter,p=e("./lines").Lines,s=e("../config").nls,a=function(){function l(o){this.element=f.createElement("div"),this.element.className="ace_layer ace_gutter-layer",o.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$lines=new p(this.element),this.$lines.$offsetCoefficient=1}return l.prototype.setSession=function(o){this.session&&this.session.off("change",this.$updateAnnotations),this.session=o,o&&o.on("change",this.$updateAnnotations)},l.prototype.addGutterDecoration=function(o,u){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(o,u)},l.prototype.removeGutterDecoration=function(o,u){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(o,u)},l.prototype.setAnnotations=function(o){this.$annotations=[];for(var u=0;u<o.length;u++){var d=o[u],w=d.row,b=this.$annotations[w];b||(b=this.$annotations[w]={text:[],type:[],displayText:[]});var R=d.text,M=d.text,k=d.type;R=R?C.escapeHTML(R):d.html||"",M=M||d.html||"",b.text.indexOf(R)===-1&&(b.text.push(R),b.type.push(k),b.displayText.push(M));var x=d.className;x?b.className=x:k==="error"?b.className=" ace_error":k==="security"&&!/\bace_error\b/.test(b.className)?b.className=" ace_security":k==="warning"&&!/\bace_(error|security)\b/.test(b.className)?b.className=" ace_warning":k==="info"&&!b.className?b.className=" ace_info":k==="hint"&&!b.className&&(b.className=" ace_hint")}},l.prototype.$updateAnnotations=function(o){if(this.$annotations.length){var u=o.start.row,d=o.end.row-u;if(d!==0)if(o.action=="remove")this.$annotations.splice(u,d+1,null);else{var w=new Array(d+1);w.unshift(u,1),this.$annotations.splice.apply(this.$annotations,w)}}},l.prototype.update=function(o){this.config=o;var u=this.session,d=o.firstRow,w=Math.min(o.lastRow+o.gutterOffset,u.getLength()-1);this.oldLastRow=w,this.config=o,this.$lines.moveContainer(o),this.$updateCursorRow();for(var b=u.getNextFoldLine(d),R=b?b.start.row:1/0,M=null,k=-1,x=d;;){if(x>R&&(x=b.end.row+1,b=u.getNextFoldLine(x,b),R=b?b.start.row:1/0),x>w){for(;this.$lines.getLength()>k+1;)this.$lines.pop();break}M=this.$lines.get(++k),M?M.row=x:(M=this.$lines.createCell(x,o,this.session,c),this.$lines.push(M)),this.$renderCell(M,o,b,x),x++}this._signal("afterRender"),this.$updateGutterWidth(o)},l.prototype.$updateGutterWidth=function(o){var u=this.session,d=u.gutterRenderer||this.$renderer,w=u.$firstLineNumber,b=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||u.$useWrapMode)&&(b=u.getLength()+w-1);var R=d?d.getWidth(u,b,o):b.toString().length*o.characterWidth,M=this.$padding||this.$computePadding();R+=M.left+M.right,R!==this.gutterWidth&&!isNaN(R)&&(this.gutterWidth=R,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",R))},l.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var o=this.session.selection.getCursor();this.$cursorRow!==o.row&&(this.$cursorRow=o.row)}},l.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var o=this.session.selection.cursor.row;if(this.$cursorRow=o,!(this.$cursorCell&&this.$cursorCell.row==o)){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var u=this.$lines.cells;this.$cursorCell=null;for(var d=0;d<u.length;d++){var w=u[d];if(w.row>=this.$cursorRow){if(w.row>this.$cursorRow){var b=this.session.getFoldLine(this.$cursorRow);if(d>0&&b&&b.start.row==u[d-1].row)w=u[d-1];else break}w.element.className="ace_gutter-active-line "+w.element.className,this.$cursorCell=w;break}}}}},l.prototype.scrollLines=function(o){var u=this.config;if(this.config=o,this.$updateCursorRow(),this.$lines.pageChanged(u,o))return this.update(o);this.$lines.moveContainer(o);var d=Math.min(o.lastRow+o.gutterOffset,this.session.getLength()-1),w=this.oldLastRow;if(this.oldLastRow=d,!u||w<o.firstRow)return this.update(o);if(d<u.firstRow)return this.update(o);if(u.firstRow<o.firstRow)for(var b=this.session.getFoldedRowCount(u.firstRow,o.firstRow-1);b>0;b--)this.$lines.shift();if(w>d)for(var b=this.session.getFoldedRowCount(d+1,w);b>0;b--)this.$lines.pop();o.firstRow<u.firstRow&&this.$lines.unshift(this.$renderLines(o,o.firstRow,u.firstRow-1)),d>w&&this.$lines.push(this.$renderLines(o,w+1,d)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(o)},l.prototype.$renderLines=function(o,u,d){for(var w=[],b=u,R=this.session.getNextFoldLine(b),M=R?R.start.row:1/0;b>M&&(b=R.end.row+1,R=this.session.getNextFoldLine(b,R),M=R?R.start.row:1/0),!(b>d);){var k=this.$lines.createCell(b,o,this.session,c);this.$renderCell(k,o,R,b),w.push(k),b++}return w},l.prototype.$renderCell=function(o,u,d,w){var b=o.element,R=this.session,M=b.childNodes[0],k=b.childNodes[1],x=b.childNodes[2],L=b.childNodes[3],O=x.firstChild,I=R.$firstLineNumber,E=R.$breakpoints,z=R.$decorations,P=R.gutterRenderer||this.$renderer,N=this.$showFoldWidgets&&R.foldWidgets,S=d?d.start.row:Number.MAX_VALUE,A=u.lineHeight+"px",D=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",j=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",U=(P?P.getText(R,w):w+I).toString();if(this.$highlightGutterLine&&(w==this.$cursorRow||d&&w<this.$cursorRow&&w>=S&&this.$cursorRow<=d.end.row)&&(D+="ace_gutter-active-line ",this.$cursorCell!=o&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=o)),E[w]&&(D+=E[w]),z[w]&&(D+=z[w]),this.$annotations[w]&&w!==S&&(D+=this.$annotations[w].className),N){var q=N[w];q==null&&(q=N[w]=R.getFoldWidget(w))}if(q){var Z="ace_fold-widget ace_"+q,te=q=="start"&&w==S&&w<d.end.row;if(te){Z+=" ace_closed";for(var he="",ne=!1,le=w+1;le<=d.end.row;le++)if(this.$annotations[le]){if(this.$annotations[le].className===" ace_error"){ne=!0,he=" ace_error_fold";break}this.$annotations[le].className===" ace_security"?(ne=!0,he=" ace_security_fold"):this.$annotations[le].className===" ace_warning"&&he!==" ace_security_fold"&&(ne=!0,he=" ace_warning_fold")}D+=he}else Z+=" ace_open";k.className!=Z&&(k.className=Z),f.setStyle(k.style,"height",A),f.setStyle(k.style,"display","inline-block"),k.setAttribute("role","button"),k.setAttribute("tabindex","-1");var ue=R.getFoldWidgetRange(w);ue?k.setAttribute("aria-label",s("gutter.code-folding.range.aria-label","Toggle code folding, rows $0 through $1",[ue.start.row+1,ue.end.row+1])):d?k.setAttribute("aria-label",s("gutter.code-folding.closed.aria-label","Toggle code folding, rows $0 through $1",[d.start.row+1,d.end.row+1])):k.setAttribute("aria-label",s("gutter.code-folding.open.aria-label","Toggle code folding, row $0",[w+1])),te?(k.setAttribute("aria-expanded","false"),k.setAttribute("title",s("gutter.code-folding.closed.title","Unfold code"))):(k.setAttribute("aria-expanded","true"),k.setAttribute("title",s("gutter.code-folding.open.title","Fold code")))}else k&&(f.setStyle(k.style,"display","none"),k.setAttribute("tabindex","0"),k.removeAttribute("role"),k.removeAttribute("aria-label"));var ce=this.session.$gutterCustomWidgets[w];if(ce?this.$addCustomWidget(w,ce,o):L&&this.$removeCustomWidget(w,o),ne&&this.$showFoldedAnnotations){x.className="ace_gutter_annotation",O.className=j,O.className+=he,f.setStyle(O.style,"height",A),f.setStyle(x.style,"display","block"),f.setStyle(x.style,"height",A);var fe;switch(he){case" ace_error_fold":fe=s("gutter.annotation.aria-label.error","Error, read annotations row $0",[U]);break;case" ace_security_fold":fe=s("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[U]);break;case" ace_warning_fold":fe=s("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[U]);break}x.setAttribute("aria-label",fe),x.setAttribute("tabindex","-1"),x.setAttribute("role","button")}else if(this.$annotations[w]){x.className="ace_gutter_annotation",O.className=j,this.$useSvgGutterIcons?O.className+=this.$annotations[w].className:b.classList.add(this.$annotations[w].className.replace(" ","")),f.setStyle(O.style,"height",A),f.setStyle(x.style,"display","block"),f.setStyle(x.style,"height",A);var fe;switch(this.$annotations[w].className){case" ace_error":fe=s("gutter.annotation.aria-label.error","Error, read annotations row $0",[U]);break;case" ace_security":fe=s("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[U]);break;case" ace_warning":fe=s("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[U]);break;case" ace_info":fe=s("gutter.annotation.aria-label.info","Info, read annotations row $0",[U]);break;case" ace_hint":fe=s("gutter.annotation.aria-label.hint","Suggestion, read annotations row $0",[U]);break}x.setAttribute("aria-label",fe),x.setAttribute("tabindex","-1"),x.setAttribute("role","button")}else f.setStyle(x.style,"display","none"),x.removeAttribute("aria-label"),x.removeAttribute("role"),x.setAttribute("tabindex","0");return U!==M.data&&(M.data=U),b.className!=D&&(b.className=D),f.setStyle(o.element.style,"height",this.$lines.computeLineHeight(w,u,R)+"px"),f.setStyle(o.element.style,"top",this.$lines.computeLineTop(w,u,R)+"px"),o.text=U,x.style.display==="none"&&k.style.display==="none"&&!ce?o.element.setAttribute("aria-hidden",!0):o.element.setAttribute("aria-hidden",!1),o},l.prototype.setHighlightGutterLine=function(o){this.$highlightGutterLine=o},l.prototype.setShowLineNumbers=function(o){this.$renderer=!o&&{getWidth:function(){return 0},getText:function(){return""}}},l.prototype.getShowLineNumbers=function(){return this.$showLineNumbers},l.prototype.setShowFoldWidgets=function(o){o?f.addCssClass(this.element,"ace_folding-enabled"):f.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=o,this.$padding=null},l.prototype.getShowFoldWidgets=function(){return this.$showFoldWidgets},l.prototype.$hideFoldWidget=function(o,u){var d=u||this.$getGutterCell(o);if(d&&d.element){var w=d.element.childNodes[1];w&&f.setStyle(w.style,"display","none")}},l.prototype.$showFoldWidget=function(o,u){var d=u||this.$getGutterCell(o);if(d&&d.element){var w=d.element.childNodes[1];w&&this.session.foldWidgets&&this.session.foldWidgets[d.row]&&f.setStyle(w.style,"display","inline-block")}},l.prototype.$getGutterCell=function(o){var u=this.$lines.cells,d=this.session.documentToScreenRow(o,0);return u[o-this.config.firstRowScreen-(o-d)]},l.prototype.$addCustomWidget=function(o,u,d){var w=u.className,b=u.label,R=u.title,M=u.callbacks;this.session.$gutterCustomWidgets[o]={className:w,label:b,title:R,callbacks:M},this.$hideFoldWidget(o,d);var k=d||this.$getGutterCell(o);if(k&&k.element){var x=k.element.querySelector(".ace_custom-widget");x&&x.remove(),x=f.createElement("span"),x.className="ace_custom-widget ".concat(w),x.setAttribute("tabindex","-1"),x.setAttribute("role","button"),x.setAttribute("aria-label",b),x.setAttribute("title",R),f.setStyle(x.style,"display","inline-block"),f.setStyle(x.style,"height","inherit"),M&&M.onClick&&x.addEventListener("click",function(L){M.onClick(L,o),L.stopPropagation()}),k.element.appendChild(x)}},l.prototype.$removeCustomWidget=function(o,u){delete this.session.$gutterCustomWidgets[o],this.$showFoldWidget(o,u);var d=u||this.$getGutterCell(o);if(d&&d.element){var w=d.element.querySelector(".ace_custom-widget");w&&d.element.removeChild(w)}},l.prototype.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var o=f.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=(parseInt(o.borderLeftWidth)||0)+(parseInt(o.paddingLeft)||0)+1,this.$padding.right=(parseInt(o.borderRightWidth)||0)+(parseInt(o.paddingRight)||0),this.$padding},l.prototype.getRegion=function(o){var u=this.$padding||this.$computePadding(),d=this.element.getBoundingClientRect();if(o.x<u.left+d.left)return"markers";if(this.$showFoldWidgets&&o.x>d.right-u.right)return"foldWidgets"},l}();a.prototype.$fixedWidth=!1,a.prototype.$highlightGutterLine=!0,a.prototype.$renderer="",a.prototype.$showLineNumbers=!0,a.prototype.$showFoldWidgets=!0,y.implement(a.prototype,h);function c(l){var o=document.createTextNode("");l.appendChild(o);var u=f.createElement("span");l.appendChild(u);var d=f.createElement("span");l.appendChild(d);var w=f.createElement("span");return d.appendChild(w),l}r.Gutter=a}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,r,v){var f=e("../range").Range,y=e("../lib/dom"),C=function(){function p(s){this.element=y.createElement("div"),this.element.className="ace_layer ace_marker-layer",s.appendChild(this.element)}return p.prototype.setPadding=function(s){this.$padding=s},p.prototype.setSession=function(s){this.session=s},p.prototype.setMarkers=function(s){this.markers=s},p.prototype.elt=function(s,a){var c=this.i!=-1&&this.element.childNodes[this.i];c?this.i++:(c=document.createElement("div"),this.element.appendChild(c),this.i=-1),c.style.cssText=a,c.className=s},p.prototype.update=function(s){if(s){this.config=s,this.i=0;var a;for(var c in this.markers){var l=this.markers[c];if(!l.range){l.update(a,this,this.session,s);continue}var o=l.range.clipRows(s.firstRow,s.lastRow);if(!o.isEmpty())if(o=o.toScreenRange(this.session),l.renderer){var u=this.$getTop(o.start.row,s),d=this.$padding+o.start.column*s.characterWidth;l.renderer(a,o,d,u,s)}else l.type=="fullLine"?this.drawFullLineMarker(a,o,l.clazz,s):l.type=="screenLine"?this.drawScreenLineMarker(a,o,l.clazz,s):o.isMultiLine()?l.type=="text"?this.drawTextMarker(a,o,l.clazz,s):this.drawMultiLineMarker(a,o,l.clazz,s):this.drawSingleLineMarker(a,o,l.clazz+" ace_start ace_br15",s)}if(this.i!=-1)for(;this.i<this.element.childElementCount;)this.element.removeChild(this.element.lastChild)}},p.prototype.$getTop=function(s,a){return(s-a.firstRowScreen)*a.lineHeight},p.prototype.drawTextMarker=function(s,a,c,l,o){for(var u=this.session,d=a.start.row,w=a.end.row,b=d,R=0,M=0,k=u.getScreenLastRowColumn(b),x=new f(b,a.start.column,b,M);b<=w;b++)x.start.row=x.end.row=b,x.start.column=b==d?a.start.column:u.getRowWrapIndent(b),x.end.column=k,R=M,M=k,k=b+1<w?u.getScreenLastRowColumn(b+1):b==w?0:a.end.column,this.drawSingleLineMarker(s,x,c+(b==d?" ace_start":"")+" ace_br"+h(b==d||b==d+1&&a.start.column,R<M,M>k,b==w),l,b==w?0:1,o)},p.prototype.drawMultiLineMarker=function(s,a,c,l,o){var u=this.$padding,d=l.lineHeight,w=this.$getTop(a.start.row,l),b=u+a.start.column*l.characterWidth;if(o=o||"",this.session.$bidiHandler.isBidiRow(a.start.row)){var R=a.clone();R.end.row=R.start.row,R.end.column=this.session.getLine(R.start.row).length,this.drawBidiSingleLineMarker(s,R,c+" ace_br1 ace_start",l,null,o)}else this.elt(c+" ace_br1 ace_start","height:"+d+"px;right:"+u+"px;top:"+w+"px;left:"+b+"px;"+(o||""));if(this.session.$bidiHandler.isBidiRow(a.end.row)){var R=a.clone();R.start.row=R.end.row,R.start.column=0,this.drawBidiSingleLineMarker(s,R,c+" ace_br12",l,null,o)}else{w=this.$getTop(a.end.row,l);var M=a.end.column*l.characterWidth;this.elt(c+" ace_br12","height:"+d+"px;width:"+M+"px;top:"+w+"px;left:"+u+"px;"+(o||""))}if(d=(a.end.row-a.start.row-1)*l.lineHeight,!(d<=0)){w=this.$getTop(a.start.row+1,l);var k=(a.start.column?1:0)|(a.end.column?0:8);this.elt(c+(k?" ace_br"+k:""),"height:"+d+"px;right:"+u+"px;top:"+w+"px;left:"+u+"px;"+(o||""))}},p.prototype.drawSingleLineMarker=function(s,a,c,l,o,u){if(this.session.$bidiHandler.isBidiRow(a.start.row))return this.drawBidiSingleLineMarker(s,a,c,l,o,u);var d=l.lineHeight,w=(a.end.column+(o||0)-a.start.column)*l.characterWidth,b=this.$getTop(a.start.row,l),R=this.$padding+a.start.column*l.characterWidth;this.elt(c,"height:"+d+"px;width:"+w+"px;top:"+b+"px;left:"+R+"px;"+(u||""))},p.prototype.drawBidiSingleLineMarker=function(s,a,c,l,o,u){var d=l.lineHeight,w=this.$getTop(a.start.row,l),b=this.$padding,R=this.session.$bidiHandler.getSelections(a.start.column,a.end.column);R.forEach(function(M){this.elt(c,"height:"+d+"px;width:"+(M.width+(o||0))+"px;top:"+w+"px;left:"+(b+M.left)+"px;"+(u||""))},this)},p.prototype.drawFullLineMarker=function(s,a,c,l,o){var u=this.$getTop(a.start.row,l),d=l.lineHeight;a.start.row!=a.end.row&&(d+=this.$getTop(a.end.row,l)-u),this.elt(c,"height:"+d+"px;top:"+u+"px;left:0;right:0;"+(o||""))},p.prototype.drawScreenLineMarker=function(s,a,c,l,o){var u=this.$getTop(a.start.row,l),d=l.lineHeight;this.elt(c,"height:"+d+"px;top:"+u+"px;left:0;right:0;"+(o||""))},p}();C.prototype.$padding=0;function h(p,s,a,c){return(p?1:0)|(s?2:0)|(a?4:0)|(c?8:0)}r.Marker=C}),ace.define("ace/layer/text_util",["require","exports","module"],function(e,r,v){var f=new Set(["text","rparen","lparen"]);r.isTextToken=function(y){return f.has(y)}}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/dom"),C=e("../lib/lang"),h=e("./lines").Lines,p=e("../lib/event_emitter").EventEmitter,s=e("../config").nls,a=e("./text_util").isTextToken,c=function(){function l(o){this.dom=y,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",o.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new h(this.element)}return l.prototype.$updateEolChar=function(){var o=this.session.doc,u=o.getNewLineCharacter()==`
216
+ `&&o.getNewLineMode()!="windows",d=u?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=d)return this.EOL_CHAR=d,!0},l.prototype.setPadding=function(o){this.$padding=o,this.element.style.margin="0 "+o+"px"},l.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},l.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},l.prototype.$setFontMetrics=function(o){this.$fontMetrics=o,this.$fontMetrics.on("changeCharacterSize",(function(u){this._signal("changeCharacterSize",u)}).bind(this)),this.$pollSizeChanges()},l.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},l.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},l.prototype.setSession=function(o){this.session=o,o&&this.$computeTabString()},l.prototype.setShowInvisibles=function(o){return this.showInvisibles==o?!1:(this.showInvisibles=o,typeof o=="string"?(this.showSpaces=/tab/i.test(o),this.showTabs=/space/i.test(o),this.showEOL=/eol/i.test(o)):this.showSpaces=this.showTabs=this.showEOL=o,this.$computeTabString(),!0)},l.prototype.setDisplayIndentGuides=function(o){return this.displayIndentGuides==o?!1:(this.displayIndentGuides=o,this.$computeTabString(),!0)},l.prototype.setHighlightIndentGuides=function(o){return this.$highlightIndentGuides===o?!1:(this.$highlightIndentGuides=o,o)},l.prototype.$computeTabString=function(){var o=this.session.getTabSize();this.tabSize=o;for(var u=this.$tabStrings=[0],d=1;d<o+1;d++)if(this.showTabs){var w=this.dom.createElement("span");w.className="ace_invisible ace_invisible_tab",w.textContent=C.stringRepeat(this.TAB_CHAR,d),u.push(w)}else u.push(this.dom.createTextNode(C.stringRepeat(" ",d),this.element));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var b="ace_indent-guide",R=this.showSpaces?" ace_invisible ace_invisible_space":"",M=this.showSpaces?C.stringRepeat(this.SPACE_CHAR,this.tabSize):C.stringRepeat(" ",this.tabSize),k=this.showTabs?" ace_invisible ace_invisible_tab":"",x=this.showTabs?C.stringRepeat(this.TAB_CHAR,this.tabSize):M,w=this.dom.createElement("span");w.className=b+R,w.textContent=M,this.$tabStrings[" "]=w;var w=this.dom.createElement("span");w.className=b+k,w.textContent=x,this.$tabStrings[" "]=w}},l.prototype.updateLines=function(o,u,d){if(this.config.lastRow!=o.lastRow||this.config.firstRow!=o.firstRow)return this.update(o);this.config=o;for(var w=Math.max(u,o.firstRow),b=Math.min(d,o.lastRow),R=this.element.childNodes,M=0,k=o.firstRow;k<w;k++){var x=this.session.getFoldLine(k);if(x)if(x.containsRow(w)){w=x.start.row;break}else k=x.end.row;M++}for(var L=!1,k=w,x=this.session.getNextFoldLine(k),O=x?x.start.row:1/0;k>O&&(k=x.end.row+1,x=this.session.getNextFoldLine(k,x),O=x?x.start.row:1/0),!(k>b);){var I=R[M++];if(I){this.dom.removeChildren(I),this.$renderLine(I,k,k==O?x:!1),L&&(I.style.top=this.$lines.computeLineTop(k,o,this.session)+"px");var E=o.lineHeight*this.session.getRowLength(k)+"px";I.style.height!=E&&(L=!0,I.style.height=E)}k++}if(L)for(;M<this.$lines.cells.length;){var z=this.$lines.cells[M++];z.element.style.top=this.$lines.computeLineTop(z.row,o,this.session)+"px"}},l.prototype.scrollLines=function(o){var u=this.config;if(this.config=o,this.$lines.pageChanged(u,o))return this.update(o);this.$lines.moveContainer(o);var d=o.lastRow,w=u?u.lastRow:-1;if(!u||w<o.firstRow)return this.update(o);if(d<u.firstRow)return this.update(o);if(!u||u.lastRow<o.firstRow)return this.update(o);if(o.lastRow<u.firstRow)return this.update(o);if(u.firstRow<o.firstRow)for(var b=this.session.getFoldedRowCount(u.firstRow,o.firstRow-1);b>0;b--)this.$lines.shift();if(u.lastRow>o.lastRow)for(var b=this.session.getFoldedRowCount(o.lastRow+1,u.lastRow);b>0;b--)this.$lines.pop();o.firstRow<u.firstRow&&this.$lines.unshift(this.$renderLinesFragment(o,o.firstRow,u.firstRow-1)),o.lastRow>u.lastRow&&this.$lines.push(this.$renderLinesFragment(o,u.lastRow+1,o.lastRow)),this.$highlightIndentGuide()},l.prototype.$renderLinesFragment=function(o,u,d){for(var w=[],b=u,R=this.session.getNextFoldLine(b),M=R?R.start.row:1/0;b>M&&(b=R.end.row+1,R=this.session.getNextFoldLine(b,R),M=R?R.start.row:1/0),!(b>d);){var k=this.$lines.createCell(b,o,this.session),x=k.element;this.dom.removeChildren(x),y.setStyle(x.style,"height",this.$lines.computeLineHeight(b,o,this.session)+"px"),y.setStyle(x.style,"top",this.$lines.computeLineTop(b,o,this.session)+"px"),this.$renderLine(x,b,b==M?R:!1),this.$useLineGroups()?x.className="ace_line_group":x.className="ace_line",w.push(k),b++}return w},l.prototype.update=function(o){this.$lines.moveContainer(o),this.config=o;for(var u=o.firstRow,d=o.lastRow,w=this.$lines;w.getLength();)w.pop();w.push(this.$renderLinesFragment(o,u,d))},l.prototype.$renderToken=function(o,u,d,w){for(var b=this,R=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069\u2060\u2061\u2062\u2063\u2064\u206A\u206B\u206B\u206C\u206D\u206E\u206F]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\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,M=this.dom.createFragment(this.element),k,x=0;k=R.exec(w);){var L=k[1],O=k[2],I=k[3],E=k[4],z=k[5];if(!(!b.showSpaces&&O)){var P=x!=k.index?w.slice(x,k.index):"";if(x=k.index+k[0].length,P&&M.appendChild(this.dom.createTextNode(P,this.element)),L){var N=b.session.getScreenTabSize(u+k.index),S=b.$tabStrings[N].cloneNode(!0);S.charCount=1,M.appendChild(S),u+=N-1}else if(O)if(b.showSpaces){var A=this.dom.createElement("span");A.className="ace_invisible ace_invisible_space",A.textContent=C.stringRepeat(b.SPACE_CHAR,O.length),M.appendChild(A)}else M.appendChild(this.dom.createTextNode(O,this.element));else if(I){var A=this.dom.createElement("span");A.className="ace_invisible ace_invisible_space ace_invalid",A.textContent=C.stringRepeat(b.SPACE_CHAR,I.length),M.appendChild(A)}else if(E){u+=1;var A=this.dom.createElement("span");A.style.width=b.config.characterWidth*2+"px",A.className=b.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",A.textContent=b.showSpaces?b.SPACE_CHAR:E,M.appendChild(A)}else if(z){u+=1;var A=this.dom.createElement("span");A.style.width=b.config.characterWidth*2+"px",A.className="ace_cjk",A.textContent=z,M.appendChild(A)}}}if(M.appendChild(this.dom.createTextNode(x?w.slice(x):w,this.element)),a(d.type))o.appendChild(M);else{var D="ace_"+d.type.replace(/\./g," ace_"),A=this.dom.createElement("span");d.type=="fold"&&(A.style.width=d.value.length*this.config.characterWidth+"px",A.setAttribute("title",s("inline-fold.closed.title","Unfold code"))),A.className=D,A.appendChild(M),o.appendChild(A)}return u+w.length},l.prototype.renderIndentGuide=function(o,u,d){var w=u.search(this.$indentGuideRe);if(w<=0||w>=d)return u;if(u[0]==" "){w-=w%this.tabSize;for(var b=w/this.tabSize,R=0;R<b;R++)o.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),u.substr(w)}else if(u[0]==" "){for(var R=0;R<w;R++)o.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),u.substr(w)}return this.$highlightIndentGuide(),u},l.prototype.$highlightIndentGuide=function(){if(!(!this.$highlightIndentGuides||!this.displayIndentGuides)){this.$highlightIndentGuideMarker={indentLevel:void 0,start:void 0,end:void 0,dir:void 0};var o=this.session.doc.$lines;if(o){var u=this.session.selection.getCursor(),d=/^\s*/.exec(this.session.doc.getLine(u.row))[0].length,w=Math.floor(d/this.tabSize);this.$highlightIndentGuideMarker={indentLevel:w,start:u.row};var b=this.session.$bracketHighlight;if(b){for(var R=this.session.$bracketHighlight.ranges,M=0;M<R.length;M++)if(u.row!==R[M].start.row){this.$highlightIndentGuideMarker.end=R[M].start.row+1,u.row>R[M].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&o[u.row]!==""&&u.column===o[u.row].length){this.$highlightIndentGuideMarker.dir=1;for(var M=u.row+1;M<o.length;M++){var k=o[M],x=/^\s*/.exec(k)[0].length;if(k!==""&&(this.$highlightIndentGuideMarker.end=M,x<=d))break}}this.$renderHighlightIndentGuide()}}},l.prototype.$clearActiveIndentGuide=function(){for(var o=this.element.querySelectorAll(".ace_indent-guide-active"),u=0;u<o.length;u++)o[u].classList.remove("ace_indent-guide-active")},l.prototype.$setIndentGuideActive=function(o,u){var d=this.session.doc.getLine(o.row);if(d!==""){var w=o.element;if(o.element.classList&&o.element.classList.contains("ace_line_group"))if(o.element.childNodes.length>0)w=o.element.childNodes[0];else return;var b=w.childNodes;if(b){var R=b[u-1];R&&R.classList&&R.classList.contains("ace_indent-guide")&&R.classList.add("ace_indent-guide-active")}}},l.prototype.$renderHighlightIndentGuide=function(){if(this.$lines){var o=this.$lines.cells;this.$clearActiveIndentGuide();var u=this.$highlightIndentGuideMarker.indentLevel;if(u!==0)if(this.$highlightIndentGuideMarker.dir===1)for(var d=0;d<o.length;d++){var w=o[d];if(this.$highlightIndentGuideMarker.end&&w.row>=this.$highlightIndentGuideMarker.start+1){if(w.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(w,u)}}else for(var d=o.length-1;d>=0;d--){var w=o[d];if(this.$highlightIndentGuideMarker.end&&w.row<this.$highlightIndentGuideMarker.start){if(w.row<this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(w,u)}}}},l.prototype.$createLineElement=function(o){var u=this.dom.createElement("div");return u.className="ace_line",u.style.height=this.config.lineHeight+"px",u},l.prototype.$renderWrappedLine=function(o,u,d){var w=0,b=0,R=d[0],M=0,k=this.$createLineElement();o.appendChild(k);for(var x=0;x<u.length;x++){var L=u[x],O=L.value;if(x==0&&this.displayIndentGuides){if(w=O.length,O=this.renderIndentGuide(k,O,R),!O)continue;w-=O.length}if(w+O.length<R)M=this.$renderToken(k,M,L,O),w+=O.length;else{for(;w+O.length>=R;){M=this.$renderToken(k,M,L,O.substring(0,R-w)),O=O.substring(R-w),w=R,k=this.$createLineElement(),o.appendChild(k);var I=this.dom.createTextNode(C.stringRepeat(" ",d.indent),this.element);I.charCount=0,k.appendChild(I),b++,M=0,R=d[b]||Number.MAX_VALUE}O.length!=0&&(w+=O.length,M=this.$renderToken(k,M,L,O))}}d[d.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(k,M,null,"",!0)},l.prototype.$renderSimpleLine=function(o,u){for(var d=0,w=0;w<u.length;w++){var b=u[w],R=b.value;if(!(w==0&&this.displayIndentGuides&&(R=this.renderIndentGuide(o,R),!R))){if(d+R.length>this.MAX_LINE_LENGTH)return this.$renderOverflowMessage(o,d,b,R);d=this.$renderToken(o,d,b,R)}}},l.prototype.$renderOverflowMessage=function(o,u,d,w,b){d&&this.$renderToken(o,u,d,w.slice(0,this.MAX_LINE_LENGTH-u));var R=this.dom.createElement("span");R.className="ace_inline_button ace_keyword ace_toggle_wrap",R.textContent=b?"<hide>":"<click to see more...>",o.appendChild(R)},l.prototype.$renderLine=function(o,u,d){if(!d&&d!=!1&&(d=this.session.getFoldLine(u)),d)var w=this.$getFoldLineTokens(u,d);else var w=this.session.getTokens(u);var b=o;if(w.length){var R=this.session.getRowSplitData(u);if(R&&R.length){this.$renderWrappedLine(o,w,R);var b=o.lastChild}else{var b=o;this.$useLineGroups()&&(b=this.$createLineElement(),o.appendChild(b)),this.$renderSimpleLine(b,w)}}else this.$useLineGroups()&&(b=this.$createLineElement(),o.appendChild(b));if(this.showEOL&&b){d&&(u=d.end.row);var M=this.dom.createElement("span");M.className="ace_invisible ace_invisible_eol",M.textContent=u==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,b.appendChild(M)}},l.prototype.$getFoldLineTokens=function(o,u){var d=this.session,w=[];function b(M,k,x){for(var L=0,O=0;O+M[L].value.length<k;)if(O+=M[L].value.length,L++,L==M.length)return;if(O!=k){var I=M[L].value.substring(k-O);I.length>x-k&&(I=I.substring(0,x-k)),w.push({type:M[L].type,value:I}),O=k+I.length,L+=1}for(;O<x&&L<M.length;){var I=M[L].value;I.length+O>x?w.push({type:M[L].type,value:I.substring(0,x-O)}):w.push(M[L]),O+=I.length,L+=1}}var R=d.getTokens(o);return u.walk(function(M,k,x,L,O){M!=null?w.push({type:"fold",value:M}):(O&&(R=d.getTokens(k)),R.length&&b(R,L,x))},u.end.row,this.session.getLine(u.end.row).length),w},l.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},l}();c.prototype.EOF_CHAR="¶",c.prototype.EOL_CHAR_LF="¬",c.prototype.EOL_CHAR_CRLF="¤",c.prototype.EOL_CHAR=c.prototype.EOL_CHAR_LF,c.prototype.TAB_CHAR="—",c.prototype.SPACE_CHAR="·",c.prototype.$padding=0,c.prototype.MAX_LINE_LENGTH=1e4,c.prototype.showInvisibles=!1,c.prototype.showSpaces=!1,c.prototype.showTabs=!1,c.prototype.showEOL=!1,c.prototype.displayIndentGuides=!0,c.prototype.$highlightIndentGuides=!0,c.prototype.$tabStrings=[],c.prototype.destroy={},c.prototype.onChangeTabSize=c.prototype.$computeTabString,f.implement(c.prototype,p),r.Text=c}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,r,v){var f=e("../lib/dom"),y=function(){function C(h){this.element=f.createElement("div"),this.element.className="ace_layer ace_cursor-layer",h.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),f.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return C.prototype.$updateOpacity=function(h){for(var p=this.cursors,s=p.length;s--;)f.setStyle(p[s].style,"opacity",h?"":"0")},C.prototype.$startCssAnimation=function(){for(var h=this.cursors,p=h.length;p--;)h[p].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout((function(){this.$isAnimating&&f.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},C.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,f.removeCssClass(this.element,"ace_animate-blinking")},C.prototype.setPadding=function(h){this.$padding=h},C.prototype.setSession=function(h){this.session=h},C.prototype.setBlinking=function(h){h!=this.isBlinking&&(this.isBlinking=h,this.restartTimer())},C.prototype.setBlinkInterval=function(h){h!=this.blinkInterval&&(this.blinkInterval=h,this.restartTimer())},C.prototype.setSmoothBlinking=function(h){h!=this.smoothBlinking&&(this.smoothBlinking=h,f.setCssClass(this.element,"ace_smooth-blinking",h),this.$updateCursors(!0),this.restartTimer())},C.prototype.addCursor=function(){var h=f.createElement("div");return h.className="ace_cursor",this.element.appendChild(h),this.cursors.push(h),h},C.prototype.removeCursor=function(){if(this.cursors.length>1){var h=this.cursors.pop();return h.parentNode.removeChild(h),h}},C.prototype.hideCursor=function(){this.isVisible=!1,f.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},C.prototype.showCursor=function(){this.isVisible=!0,f.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},C.prototype.restartTimer=function(){var h=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,f.removeCssClass(this.element,"ace_smooth-blinking")),h(!0),!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout((function(){this.$isSmoothBlinking&&f.addCssClass(this.element,"ace_smooth-blinking")}).bind(this))),f.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var p=(function(){this.timeoutId=setTimeout(function(){h(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){h(!0),p()},this.blinkInterval),p()}},C.prototype.getPixelPosition=function(h,p){if(!this.config||!this.session)return{left:0,top:0};h||(h=this.session.selection.getCursor());var s=this.session.documentToScreenPosition(h),a=this.$padding+(this.session.$bidiHandler.isBidiRow(s.row,h.row)?this.session.$bidiHandler.getPosLeft(s.column):s.column*this.config.characterWidth),c=(s.row-(p?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:a,top:c}},C.prototype.isCursorInView=function(h,p){return h.top>=0&&h.top<p.maxHeight},C.prototype.update=function(h){this.config=h;var p=this.session.$selectionMarkers,s=0,a=0;(p===void 0||p.length===0)&&(p=[{cursor:null}]);for(var s=0,c=p.length;s<c;s++){var l=this.getPixelPosition(p[s].cursor,!0);if(!((l.top>h.height+h.offset||l.top<0)&&s>1)){var o=this.cursors[a++]||this.addCursor(),u=o.style;this.drawCursor?this.drawCursor(o,l,h,p[s],this.session):this.isCursorInView(l,h)?(f.setStyle(u,"display","block"),f.translate(o,l.left,l.top),f.setStyle(u,"width",Math.round(h.characterWidth)+"px"),f.setStyle(u,"height",h.lineHeight+"px")):f.setStyle(u,"display","none")}}for(;this.cursors.length>a;)this.removeCursor();var d=this.session.getOverwrite();this.$setOverwrite(d),this.$pixelPos=l,this.restartTimer()},C.prototype.$setOverwrite=function(h){h!=this.overwrite&&(this.overwrite=h,h?f.addCssClass(this.element,"ace_overwrite-cursors"):f.removeCssClass(this.element,"ace_overwrite-cursors"))},C.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},C}();y.prototype.$padding=0,y.prototype.drawCursor=null,r.Cursor=y}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,r,v){var f=this&&this.__extends||function(){var o=function(u,d){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(w,b){w.__proto__=b}||function(w,b){for(var R in b)Object.prototype.hasOwnProperty.call(b,R)&&(w[R]=b[R])},o(u,d)};return function(u,d){if(typeof d!="function"&&d!==null)throw new TypeError("Class extends value "+String(d)+" is not a constructor or null");o(u,d);function w(){this.constructor=u}u.prototype=d===null?Object.create(d):(w.prototype=d.prototype,new w)}}(),y=e("./lib/oop"),C=e("./lib/dom"),h=e("./lib/event"),p=e("./lib/event_emitter").EventEmitter,s=32768,a=function(){function o(u,d){this.element=C.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+d,this.inner=C.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent=" ",this.element.appendChild(this.inner),u.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,h.addListener(this.element,"scroll",this.onScroll.bind(this)),h.addListener(this.element,"mousedown",h.preventDefault)}return o.prototype.setVisible=function(u){this.element.style.display=u?"":"none",this.isVisible=u,this.coeff=1},o}();y.implement(a.prototype,p);var c=function(o){f(u,o);function u(d,w){var b=o.call(this,d,"-v")||this;return b.scrollTop=0,b.scrollHeight=0,w.$scrollbarWidth=b.width=C.scrollbarWidth(d.ownerDocument),b.inner.style.width=b.element.style.width=(b.width||15)+5+"px",b.$minWidth=0,b}return u.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var d=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-d)/(this.coeff-d)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},u.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},u.prototype.setHeight=function(d){this.element.style.height=d+"px"},u.prototype.setScrollHeight=function(d){this.scrollHeight=d,d>s?(this.coeff=s/d,d=s):this.coeff!=1&&(this.coeff=1),this.inner.style.height=d+"px"},u.prototype.setScrollTop=function(d){this.scrollTop!=d&&(this.skipEvent=!0,this.scrollTop=d,this.element.scrollTop=d*this.coeff)},u}(a);c.prototype.setInnerHeight=c.prototype.setScrollHeight;var l=function(o){f(u,o);function u(d,w){var b=o.call(this,d,"-h")||this;return b.scrollLeft=0,b.height=w.$scrollbarWidth,b.inner.style.height=b.element.style.height=(b.height||15)+5+"px",b}return u.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},u.prototype.getHeight=function(){return this.isVisible?this.height:0},u.prototype.setWidth=function(d){this.element.style.width=d+"px"},u.prototype.setInnerWidth=function(d){this.inner.style.width=d+"px"},u.prototype.setScrollWidth=function(d){this.inner.style.width=d+"px"},u.prototype.setScrollLeft=function(d){this.scrollLeft!=d&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=d)},u}(a);r.ScrollBar=c,r.ScrollBarV=c,r.ScrollBarH=l,r.VScrollBar=c,r.HScrollBar=l}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,r,v){var f=this&&this.__extends||function(){var l=function(o,u){return l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,w){d.__proto__=w}||function(d,w){for(var b in w)Object.prototype.hasOwnProperty.call(w,b)&&(d[b]=w[b])},l(o,u)};return function(o,u){if(typeof u!="function"&&u!==null)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");l(o,u);function d(){this.constructor=o}o.prototype=u===null?Object.create(u):(d.prototype=u.prototype,new d)}}(),y=e("./lib/oop"),C=e("./lib/dom"),h=e("./lib/event"),p=e("./lib/event_emitter").EventEmitter;C.importCssString(`.ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{
217
+ position: absolute;
218
+ background: rgba(128, 128, 128, 0.6);
219
+ -moz-box-sizing: border-box;
220
+ box-sizing: border-box;
221
+ border: 1px solid #bbb;
222
+ border-radius: 2px;
223
+ z-index: 8;
224
+ }
225
+ .ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {
226
+ position: absolute;
227
+ z-index: 6;
228
+ background: none;
229
+ overflow: hidden!important;
230
+ }
231
+ .ace_editor>.ace_sb-v {
232
+ z-index: 6;
233
+ right: 0;
234
+ top: 0;
235
+ width: 12px;
236
+ }
237
+ .ace_editor>.ace_sb-v div {
238
+ z-index: 8;
239
+ right: 0;
240
+ width: 100%;
241
+ }
242
+ .ace_editor>.ace_sb-h {
243
+ bottom: 0;
244
+ left: 0;
245
+ height: 12px;
246
+ }
247
+ .ace_editor>.ace_sb-h div {
248
+ bottom: 0;
249
+ height: 100%;
250
+ }
251
+ .ace_editor>.ace_sb_grabbed {
252
+ z-index: 8;
253
+ background: #000;
254
+ }`,"ace_scrollbar.css",!1);var s=function(){function l(o,u){this.element=C.createElement("div"),this.element.className="ace_sb"+u,this.inner=C.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,o.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,h.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return l.prototype.setVisible=function(o){this.element.style.display=o?"":"none",this.isVisible=o,this.coeff=1},l}();y.implement(s.prototype,p);var a=function(l){f(o,l);function o(u,d){var w=l.call(this,u,"-v")||this;return w.scrollTop=0,w.scrollHeight=0,w.parent=u,w.width=w.VScrollWidth,w.renderer=d,w.inner.style.width=w.element.style.width=(w.width||15)+"px",w.$minWidth=0,w}return o.prototype.onMouseDown=function(u,d){if(u==="mousedown"&&!(h.getButton(d)!==0||d.detail===2)){if(d.target===this.inner){var w=this,b=d.clientY,R=function(E){b=E.clientY},M=function(){clearInterval(O)},k=d.clientY,x=this.thumbTop,L=function(){if(b!==void 0){var E=w.scrollTopFromThumbTop(x+b-k);E!==w.scrollTop&&w._emit("scroll",{data:E})}};h.capture(this.inner,R,M);var O=setInterval(L,20);return h.preventDefault(d)}var I=d.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(I)}),h.preventDefault(d)}},o.prototype.getHeight=function(){return this.height},o.prototype.scrollTopFromThumbTop=function(u){var d=u*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return d=d>>0,d<0?d=0:d>this.pageHeight-this.viewHeight&&(d=this.pageHeight-this.viewHeight),d},o.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},o.prototype.setHeight=function(u){this.height=Math.max(0,u),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},o.prototype.setScrollHeight=function(u,d){this.pageHeight===u&&!d||(this.pageHeight=u,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},o.prototype.setScrollTop=function(u){this.scrollTop=u,u<0&&(u=0),this.thumbTop=u*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},o}(s);a.prototype.setInnerHeight=a.prototype.setScrollHeight;var c=function(l){f(o,l);function o(u,d){var w=l.call(this,u,"-h")||this;return w.scrollLeft=0,w.scrollWidth=0,w.height=w.HScrollHeight,w.inner.style.height=w.element.style.height=(w.height||12)+"px",w.renderer=d,w}return o.prototype.onMouseDown=function(u,d){if(u==="mousedown"&&!(h.getButton(d)!==0||d.detail===2)){if(d.target===this.inner){var w=this,b=d.clientX,R=function(E){b=E.clientX},M=function(){clearInterval(O)},k=d.clientX,x=this.thumbLeft,L=function(){if(b!==void 0){var E=w.scrollLeftFromThumbLeft(x+b-k);E!==w.scrollLeft&&w._emit("scroll",{data:E})}};h.capture(this.inner,R,M);var O=setInterval(L,20);return h.preventDefault(d)}var I=d.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(I)}),h.preventDefault(d)}},o.prototype.getHeight=function(){return this.isVisible?this.height:0},o.prototype.scrollLeftFromThumbLeft=function(u){var d=u*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return d=d>>0,d<0?d=0:d>this.pageWidth-this.viewWidth&&(d=this.pageWidth-this.viewWidth),d},o.prototype.setWidth=function(u){this.width=Math.max(0,u),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},o.prototype.setScrollWidth=function(u,d){this.pageWidth===u&&!d||(this.pageWidth=u,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},o.prototype.setScrollLeft=function(u){this.scrollLeft=u,u<0&&(u=0),this.thumbLeft=u*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},o}(s);c.prototype.setInnerWidth=c.prototype.setScrollWidth,r.ScrollBar=a,r.ScrollBarV=a,r.ScrollBarH=c,r.VScrollBar=a,r.HScrollBar=c}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,r,v){var f=e("./lib/event"),y=function(){function C(h,p){this.onRender=h,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=p||window;var s=this;this._flush=function(a){s.pending=!1;var c=s.changes;if(c&&(f.blockIdle(100),s.changes=0,s.onRender(c)),s.changes){if(s.$recursionLimit--<0)return;s.schedule()}else s.$recursionLimit=2}}return C.prototype.schedule=function(h){this.changes=this.changes|h,this.changes&&!this.pending&&(f.nextFrame(this._flush),this.pending=!0)},C.prototype.clear=function(h){var p=this.changes;return this.changes=0,p},C}();r.RenderLoop=y}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/dom"),C=e("../lib/lang"),h=e("../lib/event"),p=e("../lib/useragent"),s=e("../lib/event_emitter").EventEmitter,a=512,c=typeof ResizeObserver=="function",l=200,o=function(){function u(d){this.el=y.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=y.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=y.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),d.appendChild(this.el),this.$measureNode.textContent=C.stringRepeat("X",a),this.$characterSize={width:0,height:0},c?this.$addObserver():this.checkForSizeChanges()}return u.prototype.$setMeasureNodeStyles=function(d,w){d.width=d.height="auto",d.left=d.top="0px",d.visibility="hidden",d.position="absolute",d.whiteSpace="pre",p.isIE<8?d["font-family"]="inherit":d.font="inherit",d.overflow=w?"hidden":"visible"},u.prototype.checkForSizeChanges=function(d){if(d===void 0&&(d=this.$measureSizes()),d&&(this.$characterSize.width!==d.width||this.$characterSize.height!==d.height)){this.$measureNode.style.fontWeight="bold";var w=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=d,this.charSizes=Object.create(null),this.allowBoldFonts=w&&w.width===d.width&&w.height===d.height,this._emit("changeCharacterSize",{data:d})}},u.prototype.$addObserver=function(){var d=this;this.$observer=new window.ResizeObserver(function(w){d.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},u.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var d=this;return this.$pollSizeChangesTimer=h.onIdle(function w(){d.checkForSizeChanges(),h.onIdle(w,500)},500)},u.prototype.setPolling=function(d){d?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},u.prototype.$measureSizes=function(d){var w={height:(d||this.$measureNode).clientHeight,width:(d||this.$measureNode).clientWidth/a};return w.width===0||w.height===0?null:w},u.prototype.$measureCharWidth=function(d){this.$main.textContent=C.stringRepeat(d,a);var w=this.$main.getBoundingClientRect();return w.width/a},u.prototype.getCharacterWidth=function(d){var w=this.charSizes[d];return w===void 0&&(w=this.charSizes[d]=this.$measureCharWidth(d)/this.$characterSize.width),w},u.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},u.prototype.$getZoom=function(d){return!d||!d.parentElement?1:(Number(window.getComputedStyle(d).zoom)||1)*this.$getZoom(d.parentElement)},u.prototype.$initTransformMeasureNodes=function(){var d=function(w,b){return["div",{style:"position: absolute;top:"+w+"px;left:"+b+"px;"}]};this.els=y.buildDom([d(0,0),d(l,0),d(0,l),d(l,l)],this.el)},u.prototype.transformCoordinates=function(d,w){if(d){var b=this.$getZoom(this.el);d=x(1/b,d)}function R(Z,te,he){var ne=Z[1]*te[0]-Z[0]*te[1];return[(-te[1]*he[0]+te[0]*he[1])/ne,(+Z[1]*he[0]-Z[0]*he[1])/ne]}function M(Z,te){return[Z[0]-te[0],Z[1]-te[1]]}function k(Z,te){return[Z[0]+te[0],Z[1]+te[1]]}function x(Z,te){return[Z*te[0],Z*te[1]]}this.els||this.$initTransformMeasureNodes();function L(Z){var te=Z.getBoundingClientRect();return[te.left,te.top]}var O=L(this.els[0]),I=L(this.els[1]),E=L(this.els[2]),z=L(this.els[3]),P=R(M(z,I),M(z,E),M(k(I,E),k(z,O))),N=x(1+P[0],M(I,O)),S=x(1+P[1],M(E,O));if(w){var A=w,D=P[0]*A[0]/l+P[1]*A[1]/l+1,j=k(x(A[0],N),x(A[1],S));return k(x(1/D/l,j),O)}var U=M(d,O),q=R(M(N,x(P[0],U)),M(S,x(P[1],U)),U);return x(l,q)},u}();o.prototype.$characterSize={width:0,height:0},f.implement(o.prototype,s),r.FontMetrics=o}),ace.define("ace/css/editor-css",["require","exports","module"],function(e,r,v){v.exports=`
255
+ .ace_br1 {border-top-left-radius : 3px;}
256
+ .ace_br2 {border-top-right-radius : 3px;}
257
+ .ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}
258
+ .ace_br4 {border-bottom-right-radius: 3px;}
259
+ .ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}
260
+ .ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}
261
+ .ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
262
+ .ace_br8 {border-bottom-left-radius : 3px;}
263
+ .ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}
264
+ .ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}
265
+ .ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}
266
+ .ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
267
+ .ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
268
+ .ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
269
+ .ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
270
+
271
+
272
+ .ace_editor {
273
+ position: relative;
274
+ overflow: hidden;
275
+ padding: 0;
276
+ font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace;
277
+ direction: ltr;
278
+ text-align: left;
279
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
280
+ forced-color-adjust: none;
281
+ }
282
+
283
+ .ace_scroller {
284
+ position: absolute;
285
+ overflow: hidden;
286
+ top: 0;
287
+ bottom: 0;
288
+ background-color: inherit;
289
+ -ms-user-select: none;
290
+ -moz-user-select: none;
291
+ -webkit-user-select: none;
292
+ user-select: none;
293
+ cursor: text;
294
+ }
295
+
296
+ .ace_content {
297
+ position: absolute;
298
+ box-sizing: border-box;
299
+ min-width: 100%;
300
+ contain: style size layout;
301
+ font-variant-ligatures: no-common-ligatures;
302
+ }
303
+ .ace_invisible {
304
+ font-variant-ligatures: none;
305
+ }
306
+
307
+ .ace_keyboard-focus:focus {
308
+ box-shadow: inset 0 0 0 2px #5E9ED6;
309
+ outline: none;
310
+ }
311
+
312
+ .ace_dragging .ace_scroller:before{
313
+ position: absolute;
314
+ top: 0;
315
+ left: 0;
316
+ right: 0;
317
+ bottom: 0;
318
+ content: '';
319
+ background: rgba(250, 250, 250, 0.01);
320
+ z-index: 1000;
321
+ }
322
+ .ace_dragging.ace_dark .ace_scroller:before{
323
+ background: rgba(0, 0, 0, 0.01);
324
+ }
325
+
326
+ .ace_gutter {
327
+ position: absolute;
328
+ overflow : hidden;
329
+ width: auto;
330
+ top: 0;
331
+ bottom: 0;
332
+ left: 0;
333
+ cursor: default;
334
+ z-index: 4;
335
+ -ms-user-select: none;
336
+ -moz-user-select: none;
337
+ -webkit-user-select: none;
338
+ user-select: none;
339
+ contain: style size layout;
340
+ }
341
+
342
+ .ace_gutter-active-line {
343
+ position: absolute;
344
+ left: 0;
345
+ right: 0;
346
+ }
347
+
348
+ .ace_scroller.ace_scroll-left:after {
349
+ content: "";
350
+ position: absolute;
351
+ top: 0;
352
+ right: 0;
353
+ bottom: 0;
354
+ left: 0;
355
+ box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;
356
+ pointer-events: none;
357
+ }
358
+
359
+ .ace_gutter-cell, .ace_gutter-cell_svg-icons {
360
+ position: absolute;
361
+ top: 0;
362
+ left: 0;
363
+ right: 0;
364
+ padding-left: 19px;
365
+ padding-right: 6px;
366
+ background-repeat: no-repeat;
367
+ }
368
+
369
+ .ace_gutter-cell_svg-icons .ace_gutter_annotation {
370
+ margin-left: -14px;
371
+ float: left;
372
+ }
373
+
374
+ .ace_gutter-cell .ace_gutter_annotation {
375
+ margin-left: -19px;
376
+ float: left;
377
+ }
378
+
379
+ .ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold, .ace_gutter-cell.ace_security, .ace_icon.ace_security, .ace_icon.ace_security_fold {
380
+ 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==");
381
+ background-repeat: no-repeat;
382
+ background-position: 2px center;
383
+ }
384
+
385
+ .ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {
386
+ 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==");
387
+ background-repeat: no-repeat;
388
+ background-position: 2px center;
389
+ }
390
+
391
+ .ace_gutter-cell.ace_info, .ace_icon.ace_info, .ace_gutter-cell.ace_hint, .ace_icon.ace_hint {
392
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");
393
+ background-repeat: no-repeat;
394
+ background-position: 2px center;
395
+ }
396
+
397
+ .ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info, .ace_dark .ace_gutter-cell.ace_hint, .ace_dark .ace_icon.ace_hint {
398
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");
399
+ }
400
+
401
+ .ace_icon_svg.ace_error {
402
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");
403
+ background-color: crimson;
404
+ }
405
+ .ace_icon_svg.ace_security {
406
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+");
407
+ background-color: crimson;
408
+ }
409
+ .ace_icon_svg.ace_warning {
410
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");
411
+ background-color: darkorange;
412
+ }
413
+ .ace_icon_svg.ace_info {
414
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");
415
+ background-color: royalblue;
416
+ }
417
+ .ace_icon_svg.ace_hint {
418
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg==");
419
+ background-color: silver;
420
+ }
421
+
422
+ .ace_icon_svg.ace_error_fold {
423
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
424
+ background-color: crimson;
425
+ }
426
+ .ace_icon_svg.ace_security_fold {
427
+ -webkit-mask-image: url("data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
428
+ background-color: crimson;
429
+ }
430
+ .ace_icon_svg.ace_warning_fold {
431
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");
432
+ background-color: darkorange;
433
+ }
434
+
435
+ .ace_scrollbar {
436
+ contain: strict;
437
+ position: absolute;
438
+ right: 0;
439
+ bottom: 0;
440
+ z-index: 6;
441
+ }
442
+
443
+ .ace_scrollbar-inner {
444
+ position: absolute;
445
+ cursor: text;
446
+ left: 0;
447
+ top: 0;
448
+ }
449
+
450
+ .ace_scrollbar-v{
451
+ overflow-x: hidden;
452
+ overflow-y: scroll;
453
+ top: 0;
454
+ }
455
+
456
+ .ace_scrollbar-h {
457
+ overflow-x: scroll;
458
+ overflow-y: hidden;
459
+ left: 0;
460
+ }
461
+
462
+ .ace_print-margin {
463
+ position: absolute;
464
+ height: 100%;
465
+ }
466
+
467
+ .ace_text-input {
468
+ position: absolute;
469
+ z-index: 0;
470
+ width: 0.5em;
471
+ height: 1em;
472
+ opacity: 0;
473
+ background: transparent;
474
+ -moz-appearance: none;
475
+ appearance: none;
476
+ border: none;
477
+ resize: none;
478
+ outline: none;
479
+ overflow: hidden;
480
+ font: inherit;
481
+ padding: 0 1px;
482
+ margin: 0 -1px;
483
+ contain: strict;
484
+ -ms-user-select: text;
485
+ -moz-user-select: text;
486
+ -webkit-user-select: text;
487
+ user-select: text;
488
+ /*with \`pre-line\` chrome inserts &nbsp; instead of space*/
489
+ white-space: pre!important;
490
+ }
491
+ .ace_text-input.ace_composition {
492
+ background: transparent;
493
+ color: inherit;
494
+ z-index: 1000;
495
+ opacity: 1;
496
+ }
497
+ .ace_composition_placeholder { color: transparent }
498
+ .ace_composition_marker {
499
+ border-bottom: 1px solid;
500
+ position: absolute;
501
+ border-radius: 0;
502
+ margin-top: 1px;
503
+ }
504
+
505
+ [ace_nocontext=true] {
506
+ transform: none!important;
507
+ filter: none!important;
508
+ clip-path: none!important;
509
+ mask : none!important;
510
+ contain: none!important;
511
+ perspective: none!important;
512
+ mix-blend-mode: initial!important;
513
+ z-index: auto;
514
+ }
515
+
516
+ .ace_layer {
517
+ z-index: 1;
518
+ position: absolute;
519
+ overflow: hidden;
520
+ /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/
521
+ word-wrap: normal;
522
+ white-space: pre;
523
+ height: 100%;
524
+ width: 100%;
525
+ box-sizing: border-box;
526
+ /* setting pointer-events: auto; on node under the mouse, which changes
527
+ during scroll, will break mouse wheel scrolling in Safari */
528
+ pointer-events: none;
529
+ }
530
+
531
+ .ace_gutter-layer {
532
+ position: relative;
533
+ width: auto;
534
+ text-align: right;
535
+ pointer-events: auto;
536
+ height: 1000000px;
537
+ contain: style size layout;
538
+ }
539
+
540
+ .ace_text-layer {
541
+ font: inherit !important;
542
+ position: absolute;
543
+ height: 1000000px;
544
+ width: 1000000px;
545
+ contain: style size layout;
546
+ }
547
+
548
+ .ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {
549
+ contain: style size layout;
550
+ position: absolute;
551
+ top: 0;
552
+ left: 0;
553
+ right: 0;
554
+ }
555
+
556
+ .ace_hidpi .ace_text-layer,
557
+ .ace_hidpi .ace_gutter-layer,
558
+ .ace_hidpi .ace_content,
559
+ .ace_hidpi .ace_gutter {
560
+ contain: strict;
561
+ }
562
+ .ace_hidpi .ace_text-layer > .ace_line,
563
+ .ace_hidpi .ace_text-layer > .ace_line_group {
564
+ contain: strict;
565
+ }
566
+
567
+ .ace_cjk {
568
+ display: inline-block;
569
+ text-align: center;
570
+ }
571
+
572
+ .ace_cursor-layer {
573
+ z-index: 4;
574
+ }
575
+
576
+ .ace_cursor {
577
+ z-index: 4;
578
+ position: absolute;
579
+ box-sizing: border-box;
580
+ border-left: 2px solid;
581
+ /* workaround for smooth cursor repaintng whole screen in chrome */
582
+ transform: translatez(0);
583
+ }
584
+
585
+ .ace_multiselect .ace_cursor {
586
+ border-left-width: 1px;
587
+ }
588
+
589
+ .ace_slim-cursors .ace_cursor {
590
+ border-left-width: 1px;
591
+ }
592
+
593
+ .ace_overwrite-cursors .ace_cursor {
594
+ border-left-width: 0;
595
+ border-bottom: 1px solid;
596
+ }
597
+
598
+ .ace_hidden-cursors .ace_cursor {
599
+ opacity: 0.2;
600
+ }
601
+
602
+ .ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {
603
+ opacity: 0;
604
+ }
605
+
606
+ .ace_smooth-blinking .ace_cursor {
607
+ transition: opacity 0.18s;
608
+ }
609
+
610
+ .ace_animate-blinking .ace_cursor {
611
+ animation-duration: 1000ms;
612
+ animation-timing-function: step-end;
613
+ animation-name: blink-ace-animate;
614
+ animation-iteration-count: infinite;
615
+ }
616
+
617
+ .ace_animate-blinking.ace_smooth-blinking .ace_cursor {
618
+ animation-duration: 1000ms;
619
+ animation-timing-function: ease-in-out;
620
+ animation-name: blink-ace-animate-smooth;
621
+ }
622
+
623
+ @keyframes blink-ace-animate {
624
+ from, to { opacity: 1; }
625
+ 60% { opacity: 0; }
626
+ }
627
+
628
+ @keyframes blink-ace-animate-smooth {
629
+ from, to { opacity: 1; }
630
+ 45% { opacity: 1; }
631
+ 60% { opacity: 0; }
632
+ 85% { opacity: 0; }
633
+ }
634
+
635
+ .ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {
636
+ position: absolute;
637
+ z-index: 3;
638
+ }
639
+
640
+ .ace_marker-layer .ace_selection {
641
+ position: absolute;
642
+ z-index: 5;
643
+ }
644
+
645
+ .ace_marker-layer .ace_bracket {
646
+ position: absolute;
647
+ z-index: 6;
648
+ }
649
+
650
+ .ace_marker-layer .ace_error_bracket {
651
+ position: absolute;
652
+ border-bottom: 1px solid #DE5555;
653
+ border-radius: 0;
654
+ }
655
+
656
+ .ace_marker-layer .ace_active-line {
657
+ position: absolute;
658
+ z-index: 2;
659
+ }
660
+
661
+ .ace_marker-layer .ace_selected-word {
662
+ position: absolute;
663
+ z-index: 4;
664
+ box-sizing: border-box;
665
+ }
666
+
667
+ .ace_line .ace_fold {
668
+ box-sizing: border-box;
669
+
670
+ display: inline-block;
671
+ height: 11px;
672
+ margin-top: -2px;
673
+ vertical-align: middle;
674
+
675
+ background-image:
676
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
677
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");
678
+ background-repeat: no-repeat, repeat-x;
679
+ background-position: center center, top left;
680
+ color: transparent;
681
+
682
+ border: 1px solid black;
683
+ border-radius: 2px;
684
+
685
+ cursor: pointer;
686
+ pointer-events: auto;
687
+ }
688
+
689
+ .ace_dark .ace_fold {
690
+ }
691
+
692
+ .ace_fold:hover{
693
+ background-image:
694
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
695
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");
696
+ }
697
+
698
+ .ace_tooltip {
699
+ background-color: #f5f5f5;
700
+ border: 1px solid gray;
701
+ border-radius: 1px;
702
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
703
+ color: black;
704
+ padding: 3px 4px;
705
+ position: fixed;
706
+ z-index: 999999;
707
+ box-sizing: border-box;
708
+ cursor: default;
709
+ white-space: pre-wrap;
710
+ word-wrap: break-word;
711
+ line-height: normal;
712
+ font-style: normal;
713
+ font-weight: normal;
714
+ letter-spacing: normal;
715
+ pointer-events: none;
716
+ overflow: auto;
717
+ max-width: min(33em, 66vw);
718
+ overscroll-behavior: contain;
719
+ }
720
+ .ace_tooltip pre {
721
+ white-space: pre-wrap;
722
+ }
723
+
724
+ .ace_tooltip.ace_dark {
725
+ background-color: #636363;
726
+ color: #fff;
727
+ }
728
+
729
+ .ace_tooltip:focus {
730
+ outline: 1px solid #5E9ED6;
731
+ }
732
+
733
+ .ace_icon {
734
+ display: inline-block;
735
+ width: 18px;
736
+ vertical-align: top;
737
+ }
738
+
739
+ .ace_icon_svg {
740
+ display: inline-block;
741
+ width: 12px;
742
+ vertical-align: top;
743
+ -webkit-mask-repeat: no-repeat;
744
+ -webkit-mask-size: 12px;
745
+ -webkit-mask-position: center;
746
+ }
747
+
748
+ .ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {
749
+ padding-right: 13px;
750
+ }
751
+
752
+ .ace_fold-widget, .ace_custom-widget {
753
+ box-sizing: border-box;
754
+
755
+ margin: 0 -12px 0 1px;
756
+ display: none;
757
+ width: 11px;
758
+ vertical-align: top;
759
+
760
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");
761
+ background-repeat: no-repeat;
762
+ background-position: center;
763
+
764
+ border-radius: 3px;
765
+
766
+ border: 1px solid transparent;
767
+ cursor: pointer;
768
+ pointer-events: auto;
769
+ }
770
+
771
+ .ace_custom-widget {
772
+ background: none;
773
+ }
774
+
775
+ .ace_folding-enabled .ace_fold-widget {
776
+ display: inline-block;
777
+ }
778
+
779
+ .ace_fold-widget.ace_end {
780
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");
781
+ }
782
+
783
+ .ace_fold-widget.ace_closed {
784
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");
785
+ }
786
+
787
+ .ace_fold-widget:hover {
788
+ border: 1px solid rgba(0, 0, 0, 0.3);
789
+ background-color: rgba(255, 255, 255, 0.2);
790
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
791
+ }
792
+
793
+ .ace_fold-widget:active {
794
+ border: 1px solid rgba(0, 0, 0, 0.4);
795
+ background-color: rgba(0, 0, 0, 0.05);
796
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
797
+ }
798
+ /**
799
+ * Dark version for fold widgets
800
+ */
801
+ .ace_dark .ace_fold-widget {
802
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");
803
+ }
804
+ .ace_dark .ace_fold-widget.ace_end {
805
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");
806
+ }
807
+ .ace_dark .ace_fold-widget.ace_closed {
808
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");
809
+ }
810
+ .ace_dark .ace_fold-widget:hover {
811
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
812
+ background-color: rgba(255, 255, 255, 0.1);
813
+ }
814
+ .ace_dark .ace_fold-widget:active {
815
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
816
+ }
817
+
818
+ .ace_inline_button {
819
+ border: 1px solid lightgray;
820
+ display: inline-block;
821
+ margin: -1px 8px;
822
+ padding: 0 5px;
823
+ pointer-events: auto;
824
+ cursor: pointer;
825
+ }
826
+ .ace_inline_button:hover {
827
+ border-color: gray;
828
+ background: rgba(200,200,200,0.2);
829
+ display: inline-block;
830
+ pointer-events: auto;
831
+ }
832
+
833
+ .ace_fold-widget.ace_invalid {
834
+ background-color: #FFB4B4;
835
+ border-color: #DE5555;
836
+ }
837
+
838
+ .ace_fade-fold-widgets .ace_fold-widget {
839
+ transition: opacity 0.4s ease 0.05s;
840
+ opacity: 0;
841
+ }
842
+
843
+ .ace_fade-fold-widgets:hover .ace_fold-widget {
844
+ transition: opacity 0.05s ease 0.05s;
845
+ opacity:1;
846
+ }
847
+
848
+ .ace_underline {
849
+ text-decoration: underline;
850
+ }
851
+
852
+ .ace_bold {
853
+ font-weight: bold;
854
+ }
855
+
856
+ .ace_nobold .ace_bold {
857
+ font-weight: normal;
858
+ }
859
+
860
+ .ace_italic {
861
+ font-style: italic;
862
+ }
863
+
864
+
865
+ .ace_error-marker {
866
+ background-color: rgba(255, 0, 0,0.2);
867
+ position: absolute;
868
+ z-index: 9;
869
+ }
870
+
871
+ .ace_highlight-marker {
872
+ background-color: rgba(255, 255, 0,0.2);
873
+ position: absolute;
874
+ z-index: 8;
875
+ }
876
+
877
+ .ace_mobile-menu {
878
+ position: absolute;
879
+ line-height: 1.5;
880
+ border-radius: 4px;
881
+ -ms-user-select: none;
882
+ -moz-user-select: none;
883
+ -webkit-user-select: none;
884
+ user-select: none;
885
+ background: white;
886
+ box-shadow: 1px 3px 2px grey;
887
+ border: 1px solid #dcdcdc;
888
+ color: black;
889
+ }
890
+ .ace_dark > .ace_mobile-menu {
891
+ background: #333;
892
+ color: #ccc;
893
+ box-shadow: 1px 3px 2px grey;
894
+ border: 1px solid #444;
895
+
896
+ }
897
+ .ace_mobile-button {
898
+ padding: 2px;
899
+ cursor: pointer;
900
+ overflow: hidden;
901
+ }
902
+ .ace_mobile-button:hover {
903
+ background-color: #eee;
904
+ opacity:1;
905
+ }
906
+ .ace_mobile-button:active {
907
+ background-color: #ddd;
908
+ }
909
+
910
+ .ace_placeholder {
911
+ position: relative;
912
+ font-family: arial;
913
+ transform: scale(0.9);
914
+ transform-origin: left;
915
+ white-space: pre;
916
+ opacity: 0.7;
917
+ margin: 0 10px;
918
+ z-index: 1;
919
+ }
920
+
921
+ .ace_ghost_text {
922
+ opacity: 0.5;
923
+ font-style: italic;
924
+ }
925
+
926
+ .ace_ghost_text_container > div {
927
+ white-space: pre;
928
+ }
929
+
930
+ .ghost_text_line_wrapped::after {
931
+ content: "↩";
932
+ position: absolute;
933
+ }
934
+
935
+ .ace_lineWidgetContainer.ace_ghost_text {
936
+ margin: 0px 4px
937
+ }
938
+
939
+ .ace_screenreader-only {
940
+ position:absolute;
941
+ left:-10000px;
942
+ top:auto;
943
+ width:1px;
944
+ height:1px;
945
+ overflow:hidden;
946
+ }
947
+
948
+ .ace_hidden_token {
949
+ display: none;
950
+ }`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(e,r,v){var f=e("../lib/dom"),y=e("../lib/oop"),C=e("../lib/event_emitter").EventEmitter,h=function(){function p(s,a){this.renderer=a,this.pixelRatio=1,this.maxHeight=a.layerConfig.maxHeight,this.lineHeight=a.layerConfig.lineHeight,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},this.setScrollBarV(s)}return p.prototype.$createCanvas=function(){this.canvas=f.createElement("canvas"),this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7",this.canvas.style.position="absolute"},p.prototype.setScrollBarV=function(s){this.$createCanvas(),this.scrollbarV=s,s.element.appendChild(this.canvas),this.setDimensions()},p.prototype.$updateDecorators=function(s){if(typeof this.canvas.getContext!="function")return;var a=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;this.setDimensions(s);var c=this.canvas.getContext("2d");function l(N,S){return N.priority<S.priority?-1:N.priority>S.priority?1:0}var o=this.renderer.session.$annotations;if(c.clearRect(0,0,this.canvas.width,this.canvas.height),o){var u={info:1,warning:2,error:3};o.forEach(function(N){N.priority=u[N.type]||null}),o=o.sort(l);for(var d=0;d<o.length;d++){var w=o[d].row,b=this.getVerticalOffsetForRow(w),R=b+this.lineHeight,M=Math.round(this.heightRatio*b),k=Math.round(this.heightRatio*R),x=Math.round((M+k)/2),L=k-x;L<this.halfMinDecorationHeight&&(L=this.halfMinDecorationHeight),x-L<0&&(x=L),x+L>this.canvasHeight&&(x=this.canvasHeight-L);var O=x-L,I=x+L,E=I-O;c.fillStyle=a[o[d].type]||null,c.fillRect(0,O,Math.round(this.oneZoneWidth-1),E)}}var z=this.renderer.session.selection.getCursor();if(z){var P=Math.round(this.getVerticalOffsetForRow(z.row)*this.heightRatio);c.fillStyle="rgba(0, 0, 0, 0.5)",c.fillRect(0,P,this.canvasWidth,2)}},p.prototype.getVerticalOffsetForRow=function(s){s=s|0;var a=this.renderer.session.documentToScreenRow(s,0)*this.lineHeight;return a},p.prototype.setDimensions=function(s){s=s||this.renderer.layerConfig,this.maxHeight=s.maxHeight,this.lineHeight=s.lineHeight,this.canvasHeight=s.height,this.canvasWidth=this.scrollbarV.width||this.canvasWidth,this.setZoneWidth(),this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.maxHeight<this.canvasHeight?this.heightRatio=1:this.heightRatio=this.canvasHeight/this.maxHeight},p.prototype.setZoneWidth=function(){this.oneZoneWidth=this.canvasWidth},p.prototype.destroy=function(){this.canvas.parentNode.removeChild(this.canvas)},p}();y.implement(h.prototype,C),r.Decorator=h}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent","ace/layer/text_util"],function(e,r,v){var f=e("./lib/oop"),y=e("./lib/dom"),C=e("./lib/lang"),h=e("./config"),p=e("./layer/gutter").Gutter,s=e("./layer/marker").Marker,a=e("./layer/text").Text,c=e("./layer/cursor").Cursor,l=e("./scrollbar").HScrollBar,o=e("./scrollbar").VScrollBar,u=e("./scrollbar_custom").HScrollBar,d=e("./scrollbar_custom").VScrollBar,w=e("./renderloop").RenderLoop,b=e("./layer/font_metrics").FontMetrics,R=e("./lib/event_emitter").EventEmitter,M=e("./css/editor-css"),k=e("./layer/decorators").Decorator,x=e("./lib/useragent"),L=e("./layer/text_util").isTextToken;y.importCssString(M,"ace_editor.css",!1);var O=function(){function I(E,z){var P=this;this.container=E||y.createElement("div"),y.addCssClass(this.container,"ace_editor"),y.HI_DPI&&y.addCssClass(this.container,"ace_hidpi"),this.setTheme(z),h.get("useStrictCSP")==null&&h.set("useStrictCSP",!1),this.$gutter=y.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=y.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=y.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new p(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new s(this.content);var N=this.$textLayer=new a(this.content);this.canvas=N.element,this.$markerFront=new s(this.content),this.$cursorLayer=new c(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new o(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.on("scroll",function(S){P.$scrollAnimation||P.session.setScrollTop(S.data-P.scrollMargin.top)}),this.scrollBarH.on("scroll",function(S){P.$scrollAnimation||P.session.setScrollLeft(S.data-P.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new b(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(S){P.updateCharacterSize(),P.onResize(!0,P.gutterWidth,P.$size.width,P.$size.height),P._signal("changeCharacterSize",S)}),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.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!x.isIOS,this.$loop=new w(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),h.resetOptions(this),h._signal("renderer",this)}return I.prototype.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(),y.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},I.prototype.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))},I.prototype.updateLines=function(E,z,P){if(z===void 0&&(z=1/0),this.$changedLines?(this.$changedLines.firstRow>E&&(this.$changedLines.firstRow=E),this.$changedLines.lastRow<z&&(this.$changedLines.lastRow=z)):this.$changedLines={firstRow:E,lastRow:z},this.$changedLines.lastRow<this.layerConfig.firstRow)if(P)this.$changedLines.lastRow=this.layerConfig.lastRow;else return;this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},I.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},I.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},I.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},I.prototype.updateFull=function(E){E?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},I.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},I.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},I.prototype.onResize=function(E,z,P,N){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=E?1:0;var S=this.container;N||(N=S.clientHeight||S.scrollHeight),!N&&this.$maxLines&&this.lineHeight>1&&(!S.style.height||S.style.height=="0px")&&(S.style.height="1px",N=S.clientHeight||S.scrollHeight),P||(P=S.clientWidth||S.scrollWidth);var A=this.$updateCachedSize(E,z,P,N);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!P&&!N)return this.resizing=0;E&&(this.$gutterLayer.$padding=null),E?this.$renderChanges(A|this.$changes,!0):this.$loop.schedule(A|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},I.prototype.$updateCachedSize=function(E,z,P,N){N-=this.$extraHeight||0;var S=0,A=this.$size,D={width:A.width,height:A.height,scrollerHeight:A.scrollerHeight,scrollerWidth:A.scrollerWidth};if(N&&(E||A.height!=N)&&(A.height=N,S|=this.CHANGE_SIZE,A.scrollerHeight=A.height,this.$horizScroll&&(A.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(A.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",S=S|this.CHANGE_SCROLL),P&&(E||A.width!=P)){S|=this.CHANGE_SIZE,A.width=P,z==null&&(z=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=z,y.setStyle(this.scrollBarH.element.style,"left",z+"px"),y.setStyle(this.scroller.style,"left",z+this.margin.left+"px"),A.scrollerWidth=Math.max(0,P-z-this.scrollBarV.getWidth()-this.margin.h),y.setStyle(this.$gutter.style,"left",this.margin.left+"px");var j=this.scrollBarV.getWidth()+"px";y.setStyle(this.scrollBarH.element.style,"right",j),y.setStyle(this.scroller.style,"right",j),y.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(A.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||E)&&(S|=this.CHANGE_FULL)}return A.$dirty=!P||!N,S&&this._signal("resize",D),S},I.prototype.onGutterResize=function(E){var z=this.$showGutter?E:0;z!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,z,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()},I.prototype.adjustWrapLimit=function(){var E=this.$size.scrollerWidth-this.$padding*2,z=Math.floor(E/this.characterWidth);return this.session.adjustWrapLimit(z,this.$showPrintMargin&&this.$printMarginColumn)},I.prototype.setAnimatedScroll=function(E){this.setOption("animatedScroll",E)},I.prototype.getAnimatedScroll=function(){return this.$animatedScroll},I.prototype.setShowInvisibles=function(E){this.setOption("showInvisibles",E),this.session.$bidiHandler.setShowInvisibles(E)},I.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},I.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},I.prototype.setDisplayIndentGuides=function(E){this.setOption("displayIndentGuides",E)},I.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},I.prototype.setHighlightIndentGuides=function(E){this.setOption("highlightIndentGuides",E)},I.prototype.setShowPrintMargin=function(E){this.setOption("showPrintMargin",E)},I.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},I.prototype.setPrintMarginColumn=function(E){this.setOption("printMarginColumn",E)},I.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},I.prototype.getShowGutter=function(){return this.getOption("showGutter")},I.prototype.setShowGutter=function(E){return this.setOption("showGutter",E)},I.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},I.prototype.setFadeFoldWidgets=function(E){this.setOption("fadeFoldWidgets",E)},I.prototype.setHighlightGutterLine=function(E){this.setOption("highlightGutterLine",E)},I.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},I.prototype.$updatePrintMargin=function(){if(!(!this.$showPrintMargin&&!this.$printMarginEl)){if(!this.$printMarginEl){var E=y.createElement("div");E.className="ace_layer ace_print-margin-layer",this.$printMarginEl=y.createElement("div"),this.$printMarginEl.className="ace_print-margin",E.appendChild(this.$printMarginEl),this.content.insertBefore(E,this.content.firstChild)}var z=this.$printMarginEl.style;z.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",z.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()}},I.prototype.getContainerElement=function(){return this.container},I.prototype.getMouseEventTarget=function(){return this.scroller},I.prototype.getTextAreaContainer=function(){return this.container},I.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var E=this.textarea.style,z=this.$composition;if(!this.$keepTextAreaAtCursor&&!z){y.translate(this.textarea,-100,0);return}var P=this.$cursorLayer.$pixelPos;if(P){z&&z.markerRange&&(P=this.$cursorLayer.getPixelPosition(z.markerRange.start,!0));var N=this.layerConfig,S=P.top,A=P.left;S-=N.offset;var D=z&&z.useTextareaForIME||x.isMobile?this.lineHeight:1;if(S<0||S>N.height-D){y.translate(this.textarea,0,0);return}var j=1,U=this.$size.height-D;if(!z)S+=this.lineHeight;else if(z.useTextareaForIME){var q=this.textarea.value;j=this.characterWidth*this.session.$getStringScreenWidth(q)[0]}else S+=this.lineHeight+2;A-=this.scrollLeft,A>this.$size.scrollerWidth-j&&(A=this.$size.scrollerWidth-j),A+=this.gutterWidth+this.margin.left,y.setStyle(E,"height",D+"px"),y.setStyle(E,"width",j+"px"),y.translate(this.textarea,Math.min(A,this.$size.scrollerWidth-j),Math.min(S,U))}}},I.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},I.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},I.prototype.getLastFullyVisibleRow=function(){var E=this.layerConfig,z=E.lastRow,P=this.session.documentToScreenRow(z,0)*E.lineHeight;return P-this.session.getScrollTop()>E.height-E.lineHeight?z-1:z},I.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},I.prototype.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()},I.prototype.setScrollMargin=function(E,z,P,N){var S=this.scrollMargin;S.top=E|0,S.bottom=z|0,S.right=N|0,S.left=P|0,S.v=S.top+S.bottom,S.h=S.left+S.right,S.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-S.top),this.updateFull()},I.prototype.setMargin=function(E,z,P,N){var S=this.margin;S.top=E|0,S.bottom=z|0,S.right=N|0,S.left=P|0,S.v=S.top+S.bottom,S.h=S.left+S.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},I.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},I.prototype.setHScrollBarAlwaysVisible=function(E){this.setOption("hScrollBarAlwaysVisible",E)},I.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},I.prototype.setVScrollBarAlwaysVisible=function(E){this.setOption("vScrollBarAlwaysVisible",E)},I.prototype.$updateScrollBarV=function(){var E=this.layerConfig.maxHeight,z=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(E-=(z-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>E-z&&(E=this.scrollTop+z,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(E+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},I.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},I.prototype.freeze=function(){this.$frozen=!0},I.prototype.unfreeze=function(){this.$frozen=!1},I.prototype.$renderChanges=function(E,z){if(this.$changes&&(E|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!E&&!z){this.$changes|=E;return}if(this.$size.$dirty)return this.$changes|=E,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",E),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var P=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()|this.$loop.clear(),P.firstRow!=this.layerConfig.firstRow&&P.firstRowScreen==this.layerConfig.firstRowScreen){var N=this.scrollTop+(P.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;N>0&&(this.scrollTop=N,E=E|this.CHANGE_SCROLL,E|=this.$computeLayerConfig()|this.$loop.clear())}P=this.layerConfig,this.$updateScrollBarV(),E&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),y.translate(this.content,-this.scrollLeft,-P.offset);var S=P.width+2*this.$padding+"px",A=P.minHeight+"px";y.setStyle(this.content.style,"width",S),y.setStyle(this.content.style,"height",A)}if(E&this.CHANGE_H_SCROLL&&(y.translate(this.content,-this.scrollLeft,-P.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),E&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(P),this.$showGutter&&this.$gutterLayer.update(P),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P),this.$markerBack.update(P),this.$markerFront.update(P),this.$cursorLayer.update(P),this.$moveTextAreaToCursor(),this._signal("afterRender",E);return}if(E&this.CHANGE_SCROLL){this.$changedLines=null,E&this.CHANGE_TEXT||E&this.CHANGE_LINES?this.$textLayer.update(P):this.$textLayer.scrollLines(P),this.$showGutter&&(E&this.CHANGE_GUTTER||E&this.CHANGE_LINES?this.$gutterLayer.update(P):this.$gutterLayer.scrollLines(P)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P),this.$markerBack.update(P),this.$markerFront.update(P),this.$cursorLayer.update(P),this.$moveTextAreaToCursor(),this._signal("afterRender",E);return}E&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(P),this.$showGutter&&this.$gutterLayer.update(P),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P)):E&this.CHANGE_LINES?((this.$updateLines()||E&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(P),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P)):E&this.CHANGE_TEXT||E&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(P),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P)):E&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(P),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(P)),E&this.CHANGE_CURSOR&&(this.$cursorLayer.update(P),this.$moveTextAreaToCursor()),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(P),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(P),this._signal("afterRender",E)},I.prototype.$autosize=function(){var E=this.session.getScreenLength()*this.lineHeight,z=this.$maxLines*this.lineHeight,P=Math.min(z,Math.max((this.$minLines||1)*this.lineHeight,E))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(P+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&P>this.$maxPixelHeight&&(P=this.$maxPixelHeight);var N=P<=2*this.lineHeight,S=!N&&E>z;if(P!=this.desiredHeight||this.$size.height!=this.desiredHeight||S!=this.$vScroll){S!=this.$vScroll&&(this.$vScroll=S,this.scrollBarV.setVisible(S));var A=this.container.clientWidth;this.container.style.height=P+"px",this.$updateCachedSize(!0,this.$gutterWidth,A,P),this.desiredHeight=P,this._signal("autosize")}},I.prototype.$computeLayerConfig=function(){var E=this.session,z=this.$size,P=z.height<=2*this.lineHeight,N=this.session.getScreenLength(),S=N*this.lineHeight,A=this.$getLongestLine(),D=!P&&(this.$hScrollBarAlwaysVisible||z.scrollerWidth-A-2*this.$padding<0),j=this.$horizScroll!==D;j&&(this.$horizScroll=D,this.scrollBarH.setVisible(D));var U=this.$vScroll;this.$maxLines&&this.lineHeight>1&&(this.$autosize(),P=z.height<=2*this.lineHeight);var q=z.scrollerHeight+this.lineHeight,Z=!this.$maxLines&&this.$scrollPastEnd?(z.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;S+=Z;var te=this.scrollMargin;this.session.setScrollTop(Math.max(-te.top,Math.min(this.scrollTop,S-z.scrollerHeight+te.bottom))),this.session.setScrollLeft(Math.max(-te.left,Math.min(this.scrollLeft,A+2*this.$padding-z.scrollerWidth+te.right)));var he=!P&&(this.$vScrollBarAlwaysVisible||z.scrollerHeight-S+Z<0||this.scrollTop>te.top),ne=U!==he;ne&&(this.$vScroll=he,this.scrollBarV.setVisible(he));var le=this.scrollTop%this.lineHeight,ue=Math.ceil(q/this.lineHeight)-1,ce=Math.max(0,Math.round((this.scrollTop-le)/this.lineHeight)),fe=ce+ue,Se,$e,Te=this.lineHeight;ce=E.screenToDocumentRow(ce,0);var qe=E.getFoldLine(ce);qe&&(ce=qe.start.row),Se=E.documentToScreenRow(ce,0),$e=E.getRowLength(ce)*Te,fe=Math.min(E.screenToDocumentRow(fe,0),E.getLength()-1),q=z.scrollerHeight+E.getRowLength(fe)*Te+$e,le=this.scrollTop-Se*Te,le<0&&Se>0&&(Se=Math.max(0,Se+Math.floor(le/Te)),le=this.scrollTop-Se*Te);var Ve=0;return(this.layerConfig.width!=A||j)&&(Ve=this.CHANGE_H_SCROLL),(j||ne)&&(Ve|=this.$updateCachedSize(!0,this.gutterWidth,z.width,z.height),this._signal("scrollbarVisibilityChanged"),ne&&(A=this.$getLongestLine())),this.layerConfig={width:A,padding:this.$padding,firstRow:ce,firstRowScreen:Se,lastRow:fe,lineHeight:Te,characterWidth:this.characterWidth,minHeight:q,maxHeight:S,offset:le,gutterOffset:Te?Math.max(0,Math.ceil((le+z.height-z.scrollerHeight)/Te)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(A-this.$padding),Ve},I.prototype.$updateLines=function(){if(this.$changedLines){var E=this.$changedLines.firstRow,z=this.$changedLines.lastRow;this.$changedLines=null;var P=this.layerConfig;if(!(E>P.lastRow+1)&&!(z<P.firstRow)){if(z===1/0){this.$showGutter&&this.$gutterLayer.update(P),this.$textLayer.update(P);return}return this.$textLayer.updateLines(P,E,z),!0}}},I.prototype.$getLongestLine=function(){var E=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(E+=1),this.$textLayer&&E>this.$textLayer.MAX_LINE_LENGTH&&(E=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(E*this.characterWidth))},I.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},I.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},I.prototype.addGutterDecoration=function(E,z){this.$gutterLayer.addGutterDecoration(E,z)},I.prototype.removeGutterDecoration=function(E,z){this.$gutterLayer.removeGutterDecoration(E,z)},I.prototype.updateBreakpoints=function(E){this._rows=E,this.$loop.schedule(this.CHANGE_GUTTER)},I.prototype.setAnnotations=function(E){this.$gutterLayer.setAnnotations(E),this.$loop.schedule(this.CHANGE_GUTTER)},I.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},I.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},I.prototype.showCursor=function(){this.$cursorLayer.showCursor()},I.prototype.scrollSelectionIntoView=function(E,z,P){this.scrollCursorIntoView(E,P),this.scrollCursorIntoView(z,P)},I.prototype.scrollCursorIntoView=function(E,z,P){if(this.$size.scrollerHeight!==0){var N=this.$cursorLayer.getPixelPosition(E),S=N.left,A=N.top,D=P&&P.top||0,j=P&&P.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var U=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;U+D>A?(z&&U+D>A+this.lineHeight&&(A-=z*this.$size.scrollerHeight),A===0&&(A=-this.scrollMargin.top),this.session.setScrollTop(A)):U+this.$size.scrollerHeight-j<A+this.lineHeight&&(z&&U+this.$size.scrollerHeight-j<A-this.lineHeight&&(A+=z*this.$size.scrollerHeight),this.session.setScrollTop(A+this.lineHeight+j-this.$size.scrollerHeight));var q=this.scrollLeft,Z=2*this.layerConfig.characterWidth;S-Z<q?(S-=Z,S<this.$padding+Z&&(S=-this.scrollMargin.left),this.session.setScrollLeft(S)):(S+=Z,q+this.$size.scrollerWidth<S+this.characterWidth?this.session.setScrollLeft(Math.round(S+this.characterWidth-this.$size.scrollerWidth)):q<=this.$padding&&S-q<this.characterWidth&&this.session.setScrollLeft(0))}},I.prototype.getScrollTop=function(){return this.session.getScrollTop()},I.prototype.getScrollLeft=function(){return this.session.getScrollLeft()},I.prototype.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},I.prototype.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},I.prototype.scrollToRow=function(E){this.session.setScrollTop(E*this.lineHeight)},I.prototype.alignCursor=function(E,z){typeof E=="number"&&(E={row:E,column:0});var P=this.$cursorLayer.getPixelPosition(E),N=this.$size.scrollerHeight-this.lineHeight,S=P.top-N*(z||0);return this.session.setScrollTop(S),S},I.prototype.$calcSteps=function(E,z){var P=0,N=this.STEPS,S=[],A=function(D,j,U){return U*(Math.pow(D-1,3)+1)+j};for(P=0;P<N;++P)S.push(A(P/this.STEPS,E,z-E));return S},I.prototype.scrollToLine=function(E,z,P,N){var S=this.$cursorLayer.getPixelPosition({row:E,column:0}),A=S.top;z&&(A-=this.$size.scrollerHeight/2);var D=this.scrollTop;this.session.setScrollTop(A),P!==!1&&this.animateScrolling(D,N)},I.prototype.animateScrolling=function(E,z){var P=this.scrollTop;if(!this.$animatedScroll)return;var N=this;if(E==P)return;if(this.$scrollAnimation){var S=this.$scrollAnimation.steps;if(S.length&&(E=S[0],E==P))return}var A=N.$calcSteps(E,P);this.$scrollAnimation={from:E,to:P,steps:A},clearInterval(this.$timer),N.session.setScrollTop(A.shift()),N.session.$scrollTop=P;function D(){N.$timer=clearInterval(N.$timer),N.$scrollAnimation=null,N.$stopAnimation=!1,z&&z()}this.$timer=setInterval(function(){if(N.$stopAnimation){D();return}if(!N.session)return clearInterval(N.$timer);A.length?(N.session.setScrollTop(A.shift()),N.session.$scrollTop=P):P!=null?(N.session.$scrollTop=-1,N.session.setScrollTop(P),P=null):D()},10)},I.prototype.scrollToY=function(E){this.scrollTop!==E&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=E)},I.prototype.scrollToX=function(E){this.scrollLeft!==E&&(this.scrollLeft=E),this.$loop.schedule(this.CHANGE_H_SCROLL)},I.prototype.scrollTo=function(E,z){this.session.setScrollTop(z),this.session.setScrollLeft(E)},I.prototype.scrollBy=function(E,z){z&&this.session.setScrollTop(this.session.getScrollTop()+z),E&&this.session.setScrollLeft(this.session.getScrollLeft()+E)},I.prototype.isScrollableBy=function(E,z){if(z<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||z>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)return!0},I.prototype.pixelToScreenCoordinates=function(E,z){var P;if(this.$hasCssTransforms){P={top:0,left:0};var N=this.$fontMetrics.transformCoordinates([E,z]);E=N[1]-this.gutterWidth-this.margin.left,z=N[0]}else P=this.scroller.getBoundingClientRect();var S=E+this.scrollLeft-P.left-this.$padding,A=S/this.characterWidth,D=Math.floor((z+this.scrollTop-P.top)/this.lineHeight),j=this.$blockCursor?Math.floor(A):Math.round(A);return{row:D,column:j,side:A-j>0?1:-1,offsetX:S}},I.prototype.screenToTextCoordinates=function(E,z){var P;if(this.$hasCssTransforms){P={top:0,left:0};var N=this.$fontMetrics.transformCoordinates([E,z]);E=N[1]-this.gutterWidth-this.margin.left,z=N[0]}else P=this.scroller.getBoundingClientRect();var S=E+this.scrollLeft-P.left-this.$padding,A=S/this.characterWidth,D=this.$blockCursor?Math.floor(A):Math.round(A),j=Math.floor((z+this.scrollTop-P.top)/this.lineHeight);return this.session.screenToDocumentPosition(j,Math.max(D,0),S)},I.prototype.textToScreenCoordinates=function(E,z){var P=this.scroller.getBoundingClientRect(),N=this.session.documentToScreenPosition(E,z),S=this.$padding+(this.session.$bidiHandler.isBidiRow(N.row,E)?this.session.$bidiHandler.getPosLeft(N.column):Math.round(N.column*this.characterWidth)),A=N.row*this.lineHeight;return{pageX:P.left+S-this.scrollLeft,pageY:P.top+A-this.scrollTop}},I.prototype.visualizeFocus=function(){y.addCssClass(this.container,"ace_focus")},I.prototype.visualizeBlur=function(){y.removeCssClass(this.container,"ace_focus")},I.prototype.showComposition=function(E){this.$composition=E,E.cssText||(E.cssText=this.textarea.style.cssText),E.useTextareaForIME==null&&(E.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(y.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):E.markerId=this.session.addMarker(E.markerRange,"ace_composition_marker","text")},I.prototype.setCompositionText=function(E){var z=this.session.selection.cursor;this.addToken(E,"composition_placeholder",z.row,z.column),this.$moveTextAreaToCursor()},I.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),y.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var E=this.session.selection.cursor;this.removeExtraToken(E.row,E.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},I.prototype.setGhostText=function(E,z){var P=this.session.selection.cursor,N=z||{row:P.row,column:P.column};this.removeGhostText();var S=this.$calculateWrappedTextChunks(E,N);this.addToken(S[0].text,"ghost_text",N.row,N.column),this.$ghostText={text:E,position:{row:N.row,column:N.column}};var A=y.createElement("div");if(S.length>1){var D=this.hideTokensAfterPosition(N.row,N.column),j;S.slice(1).forEach(function(ne){var le=y.createElement("div"),ue=y.createElement("span");ue.className="ace_ghost_text",ne.wrapped&&(le.className="ghost_text_line_wrapped"),ne.text.length===0&&(ne.text=" "),ue.appendChild(y.createTextNode(ne.text)),le.appendChild(ue),A.appendChild(le),j=le}),D.forEach(function(ne){var le=y.createElement("span");L(ne.type)||(le.className="ace_"+ne.type.replace(/\./g," ace_")),le.appendChild(y.createTextNode(ne.value)),j.appendChild(le)}),this.$ghostTextWidget={el:A,row:N.row,column:N.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var U=this.$cursorLayer.getPixelPosition(N,!0),q=this.container,Z=q.getBoundingClientRect().height,te=S.length*this.lineHeight,he=te<Z-U.top;if(he)return;te<Z?this.scrollBy(0,(S.length-1)*this.lineHeight):this.scrollToRow(N.row)}},I.prototype.$calculateWrappedTextChunks=function(E,z){var P=this.$size.scrollerWidth-this.$padding*2,N=Math.floor(P/this.characterWidth)-2;N=N<=0?60:N;for(var S=E.split(/\r?\n/),A=[],D=0;D<S.length;D++){var j=this.session.$getDisplayTokens(S[D],z.column),U=this.session.$computeWrapSplits(j,N,this.session.$tabSize);if(U.length>0){var q=0;U.push(S[D].length);for(var Z=0;Z<U.length;Z++){var te=S[D].slice(q,U[Z]);A.push({text:te,wrapped:!0}),q=U[Z]}}else A.push({text:S[D],wrapped:!1})}return A},I.prototype.removeGhostText=function(){if(this.$ghostText){var E=this.$ghostText.position;this.removeExtraToken(E.row,E.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},I.prototype.addToken=function(E,z,P,N){var S=this.session;S.bgTokenizer.lines[P]=null;var A={type:z,value:E},D=S.getTokens(P);if(N==null||!D.length)D.push(A);else for(var j=0,U=0;U<D.length;U++){var q=D[U];if(j+=q.value.length,N<=j){var Z=q.value.length-(j-N),te=q.value.slice(0,Z),he=q.value.slice(Z);D.splice(U,1,{type:q.type,value:te},A,{type:q.type,value:he});break}}this.updateLines(P,P)},I.prototype.hideTokensAfterPosition=function(E,z){for(var P=this.session.getTokens(E),N=0,S=!1,A=[],D=0;D<P.length;D++){var j=P[D];if(N+=j.value.length,j.type!=="ghost_text"){if(S){A.push({type:j.type,value:j.value}),j.type="hidden_token";continue}N===z&&(S=!0)}}return this.updateLines(E,E),A},I.prototype.removeExtraToken=function(E,z){this.session.bgTokenizer.lines[E]=null,this.updateLines(E,E)},I.prototype.setTheme=function(E,z){var P=this;if(this.$themeId=E,P._dispatchEvent("themeChange",{theme:E}),!E||typeof E=="string"){var N=E||this.$options.theme.initialValue;h.loadModule(["theme",N],S)}else S(E);function S(A){if(P.$themeId!=E)return z&&z();if(!A||!A.cssClass)throw new Error("couldn't load module "+E+" or it didn't call define");A.$id&&(P.$themeId=A.$id),y.importCssString(A.cssText,A.cssClass,P.container),P.theme&&y.removeCssClass(P.container,P.theme.cssClass);var D="padding"in A?A.padding:"padding"in(P.theme||{})?4:P.$padding;P.$padding&&D!=P.$padding&&P.setPadding(D),P.$theme=A.cssClass,P.theme=A,y.addCssClass(P.container,A.cssClass),y.setCssClass(P.container,"ace_dark",A.isDark),P.$size&&(P.$size.width=0,P.$updateSizeAsync()),P._dispatchEvent("themeLoaded",{theme:A}),z&&z(),x.isSafari&&P.scroller&&(P.scroller.style.background="red",P.scroller.style.background="")}},I.prototype.getTheme=function(){return this.$themeId},I.prototype.setStyle=function(E,z){y.setCssClass(this.container,E,z!==!1)},I.prototype.unsetStyle=function(E){y.removeCssClass(this.container,E)},I.prototype.setCursorStyle=function(E){y.setStyle(this.scroller.style,"cursor",E)},I.prototype.setMouseCursor=function(E){y.setStyle(this.scroller.style,"cursor",E)},I.prototype.attachToShadowRoot=function(){y.importCssString(M,"ace_editor.css",this.container)},I.prototype.destroy=function(){this.freeze(),this.$fontMetrics.destroy(),this.$cursorLayer.destroy(),this.removeAllListeners(),this.container.textContent="",this.setOption("useResizeObserver",!1)},I.prototype.$updateCustomScrollbar=function(E){var z=this;this.$horizScroll=this.$vScroll=null,this.scrollBarV.element.remove(),this.scrollBarH.element.remove(),E===!0?(this.scrollBarV=new d(this.container,this),this.scrollBarH=new u(this.container,this),this.scrollBarV.setHeight(this.$size.scrollerHeight),this.scrollBarH.setWidth(this.$size.scrollerWidth),this.scrollBarV.addEventListener("scroll",function(P){z.$scrollAnimation||z.session.setScrollTop(P.data-z.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(P){z.$scrollAnimation||z.session.setScrollLeft(P.data-z.scrollMargin.left)}),this.$scrollDecorator?(this.$scrollDecorator.setScrollBarV(this.scrollBarV),this.$scrollDecorator.$updateDecorators()):(this.$scrollDecorator=new k(this.scrollBarV,this),this.$scrollDecorator.$updateDecorators())):(this.scrollBarV=new o(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.addEventListener("scroll",function(P){z.$scrollAnimation||z.session.setScrollTop(P.data-z.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(P){z.$scrollAnimation||z.session.setScrollLeft(P.data-z.scrollMargin.left)}))},I.prototype.$addResizeObserver=function(){if(!(!window.ResizeObserver||this.$resizeObserver)){var E=this;this.$resizeTimer=C.delayedCall(function(){E.destroyed||E.onResize()},50),this.$resizeObserver=new window.ResizeObserver(function(z){var P=z[0].contentRect.width,N=z[0].contentRect.height;Math.abs(E.$size.width-P)>1||Math.abs(E.$size.height-N)>1?E.$resizeTimer.delay():E.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},I}();O.prototype.CHANGE_CURSOR=1,O.prototype.CHANGE_MARKER=2,O.prototype.CHANGE_GUTTER=4,O.prototype.CHANGE_SCROLL=8,O.prototype.CHANGE_LINES=16,O.prototype.CHANGE_TEXT=32,O.prototype.CHANGE_SIZE=64,O.prototype.CHANGE_MARKER_BACK=128,O.prototype.CHANGE_MARKER_FRONT=256,O.prototype.CHANGE_FULL=512,O.prototype.CHANGE_H_SCROLL=1024,O.prototype.$changes=0,O.prototype.$padding=null,O.prototype.$frozen=!1,O.prototype.STEPS=8,f.implement(O.prototype,R),h.defineOptions(O.prototype,"renderer",{useResizeObserver:{set:function(I){!I&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):I&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(I){this.$textLayer.setShowInvisibles(I)&&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(I){typeof I=="number"&&(this.$printMarginColumn=I),this.$showPrintMargin=!!I,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(I){this.$gutter.style.display=I?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(I){this.$gutterLayer.$useSvgGutterIcons=I},initialValue:!1},showFoldedAnnotations:{set:function(I){this.$gutterLayer.$showFoldedAnnotations=I},initialValue:!1},fadeFoldWidgets:{set:function(I){y.setCssClass(this.$gutter,"ace_fade-fold-widgets",I)},initialValue:!1},showFoldWidgets:{set:function(I){this.$gutterLayer.setShowFoldWidgets(I),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(I){this.$textLayer.setDisplayIndentGuides(I)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(I){this.$textLayer.setHighlightIndentGuides(I)==!0?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(I){this.$gutterLayer.setHighlightGutterLine(I),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(I){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(I){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(I){typeof I=="number"&&(I=I+"px"),this.container.style.fontSize=I,this.updateFontSize()},initialValue:12},fontFamily:{set:function(I){this.container.style.fontFamily=I,this.updateFontSize()}},maxLines:{set:function(I){this.updateFull()}},minLines:{set:function(I){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(I){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(I){I=+I||0,this.$scrollPastEnd!=I&&(this.$scrollPastEnd=I,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(I){this.$gutterLayer.$fixedWidth=!!I,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(I){this.$updateCustomScrollbar(I)},initialValue:!1},theme:{set:function(I){this.setTheme(I)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!x.isMobile&&!x.isIE}}),r.VirtualRenderer=O}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/net"),C=e("../lib/event_emitter").EventEmitter,h=e("../config");function p(l){var o="importScripts('"+y.qualifyURL(l)+"');";try{return new Blob([o],{type:"application/javascript"})}catch{var u=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,d=new u;return d.append(o),d.getBlob("application/javascript")}}function s(l){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(h.get("loadWorkerFromBlob")){var o=p(l),u=window.URL||window.webkitURL,d=u.createObjectURL(o);return new Worker(d)}return new Worker(l)}var a=function(l){l.postMessage||(l=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=l,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){f.implement(this,C),this.$createWorkerFromOldConfig=function(l,o,u,d,w){if(e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),h.get("packaged")||!e.toUrl)d=d||h.moduleUrl(o,"worker");else{var b=this.$normalizePath;d=d||b(e.toUrl("ace/worker/worker.js",null,"_"));var R={};l.forEach(function(M){R[M]=b(e.toUrl(M,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=s(d),w&&this.send("importScripts",w),this.$worker.postMessage({init:!0,tlns:R,module:o,classname:u}),this.$worker},this.onMessage=function(l){var o=l.data;switch(o.type){case"event":this._signal(o.name,{data:o.data});break;case"call":var u=this.callbacks[o.id];u&&(u(o.data),delete this.callbacks[o.id]);break;case"error":this.reportError(o.data);break;case"log":window.console&&console.log&&console.log.apply(console,o.data);break}},this.reportError=function(l){window.console&&console.error&&console.error(l)},this.$normalizePath=function(l){return y.qualifyURL(l)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(l){l.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(l,o){this.$worker.postMessage({command:l,args:o})},this.call=function(l,o,u){if(u){var d=this.callbackId++;this.callbacks[d]=u,o.push(d)}this.send(l,o)},this.emit=function(l,o){try{o.data&&o.data.err&&(o.data.err={message:o.data.err.message,stack:o.data.err.stack,code:o.data.err.code}),this.$worker&&this.$worker.postMessage({event:l,data:{data:o.data}})}catch(u){console.error(u.stack)}},this.attachToDocument=function(l){this.$doc&&this.terminate(),this.$doc=l,this.call("setValue",[l.getValue()]),l.on("change",this.changeListener,!0)},this.changeListener=function(l){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),l.action=="insert"?this.deltaQueue.push(l.start,l.lines):this.deltaQueue.push(l.start,l.end)},this.$sendDeltaQueue=function(){var l=this.deltaQueue;l&&(this.deltaQueue=null,l.length>50&&l.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:l}))}}).call(a.prototype);var c=function(l,o,u){var d=null,w=!1,b=Object.create(C),R=[],M=new a({messageBuffer:R,terminate:function(){},postMessage:function(x){R.push(x),d&&(w?setTimeout(k):k())}});M.setEmitSync=function(x){w=x};var k=function(){var x=R.shift();x.command?d[x.command].apply(d,x.args):x.event&&b._signal(x.event,x.data)};return b.postMessage=function(x){M.onMessage({data:x})},b.callback=function(x,L){this.postMessage({type:"call",id:L,data:x})},b.emit=function(x,L){this.postMessage({type:"event",name:x,data:L})},h.loadModule(["worker",o],function(x){for(d=new x[u](b);R.length;)k()}),M};r.UIWorkerClient=c,r.WorkerClient=a,r.createWorker=s}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,r,v){var f=e("./range").Range,y=e("./lib/event_emitter").EventEmitter,C=e("./lib/oop"),h=function(){function p(s,a,c,l,o,u){var d=this;this.length=a,this.session=s,this.doc=s.getDocument(),this.mainClass=o,this.othersClass=u,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=l,this.$onCursorChange=function(){setTimeout(function(){d.onCursorChange()})},this.$pos=c;var w=s.getUndoManager().$undoStack||s.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=w.length,this.setup(),s.selection.on("changeCursor",this.$onCursorChange)}return p.prototype.setup=function(){var s=this,a=this.doc,c=this.session;this.selectionBefore=c.selection.toJSON(),c.selection.inMultiSelectMode&&c.selection.toSingleRange(),this.pos=a.createAnchor(this.$pos.row,this.$pos.column);var l=this.pos;l.$insertRight=!0,l.detach(),l.markerId=c.addMarker(new f(l.row,l.column,l.row,l.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(o){var u=a.createAnchor(o.row,o.column);u.$insertRight=!0,u.detach(),s.others.push(u)}),c.setUndoSelect(!1)},p.prototype.showOtherMarkers=function(){if(!this.othersActive){var s=this.session,a=this;this.othersActive=!0,this.others.forEach(function(c){c.markerId=s.addMarker(new f(c.row,c.column,c.row,c.column+a.length),a.othersClass,null,!1)})}},p.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var s=0;s<this.others.length;s++)this.session.removeMarker(this.others[s].markerId)}},p.prototype.onUpdate=function(s){if(this.$updating)return this.updateAnchors(s);var a=s;if(a.start.row===a.end.row&&a.start.row===this.pos.row){this.$updating=!0;var c=s.action==="insert"?a.end.column-a.start.column:a.start.column-a.end.column,l=a.start.column>=this.pos.column&&a.start.column<=this.pos.column+this.length+1,o=a.start.column-this.pos.column;if(this.updateAnchors(s),l&&(this.length+=c),l&&!this.session.$fromUndo){if(s.action==="insert")for(var u=this.others.length-1;u>=0;u--){var d=this.others[u],w={row:d.row,column:d.column+o};this.doc.insertMergedLines(w,s.lines)}else if(s.action==="remove")for(var u=this.others.length-1;u>=0;u--){var d=this.others[u],w={row:d.row,column:d.column+o};this.doc.remove(new f(w.row,w.column,w.row,w.column-c))}}this.$updating=!1,this.updateMarkers()}},p.prototype.updateAnchors=function(s){this.pos.onChange(s);for(var a=this.others.length;a--;)this.others[a].onChange(s);this.updateMarkers()},p.prototype.updateMarkers=function(){if(!this.$updating){var s=this,a=this.session,c=function(o,u){a.removeMarker(o.markerId),o.markerId=a.addMarker(new f(o.row,o.column,o.row,o.column+s.length),u,null,!1)};c(this.pos,this.mainClass);for(var l=this.others.length;l--;)c(this.others[l],this.othersClass)}},p.prototype.onCursorChange=function(s){if(!(this.$updating||!this.session)){var a=this.session.selection.getCursor();a.row===this.pos.row&&a.column>=this.pos.column&&a.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",s)):(this.hideOtherMarkers(),this._emit("cursorLeave",s))}},p.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},p.prototype.cancel=function(){if(this.$undoStackDepth!==-1){for(var s=this.session.getUndoManager(),a=(s.$undoStack||s.$undostack).length-this.$undoStackDepth,c=0;c<a;c++)s.undo(this.session,!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}},p}();C.implement(h.prototype,y),r.PlaceHolder=h}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,r,v){var f=e("../lib/event"),y=e("../lib/useragent");function C(p,s){return p.row==s.row&&p.column==s.column}function h(p){var s=p.domEvent,a=s.altKey,c=s.shiftKey,l=s.ctrlKey,o=p.getAccelKey(),u=p.getButton();if(l&&y.isMac&&(u=s.button),p.editor.inMultiSelectMode&&u==2){p.editor.textInput.onContextMenu(p.domEvent);return}if(!l&&!a&&!o){u===0&&p.editor.inMultiSelectMode&&p.editor.exitMultiSelectMode();return}if(u===0){var d=p.editor,w=d.selection,b=d.inMultiSelectMode,R=p.getDocumentPosition(),M=w.getCursor(),k=p.inSelection()||w.isEmpty()&&C(R,M),x=p.x,L=p.y,O=function(te){x=te.clientX,L=te.clientY},I=d.session,E=d.renderer.pixelToScreenCoordinates(x,L),z=E,P;if(d.$mouseHandler.$enableJumpToDef)l&&a||o&&a?P=c?"block":"add":a&&d.$blockSelectEnabled&&(P="block");else if(o&&!a){if(P="add",!b&&c)return}else a&&d.$blockSelectEnabled&&(P="block");if(P&&y.isMac&&s.ctrlKey&&d.$mouseHandler.cancelContextMenu(),P=="add"){if(!b&&k)return;if(!b){var N=w.toOrientedRange();d.addSelectionMarker(N)}var S=w.rangeList.rangeAtPoint(R);d.inVirtualSelectionMode=!0,c&&(S=null,N=w.ranges[0]||N,d.removeSelectionMarker(N)),d.once("mouseup",function(){var te=w.toOrientedRange();S&&te.isEmpty()&&C(S.cursor,te.cursor)?w.substractPoint(te.cursor):(c?w.substractPoint(N.cursor):N&&(d.removeSelectionMarker(N),w.addRange(N)),w.addRange(te)),d.inVirtualSelectionMode=!1})}else if(P=="block"){p.stop(),d.inVirtualSelectionMode=!0;var A,D=[],j=function(){var te=d.renderer.pixelToScreenCoordinates(x,L),he=I.screenToDocumentPosition(te.row,te.column,te.offsetX);C(z,te)&&C(he,w.lead)||(z=te,d.selection.moveToPosition(he),d.renderer.scrollCursorIntoView(),d.removeSelectionMarkers(D),D=w.rectangularRangeBlock(z,E),d.$mouseHandler.$clickSelection&&D.length==1&&D[0].isEmpty()&&(D[0]=d.$mouseHandler.$clickSelection.clone()),D.forEach(d.addSelectionMarker,d),d.updateSelectionMarkers())};b&&!o?w.toSingleRange():!b&&o&&(A=w.toOrientedRange(),d.addSelectionMarker(A)),c?E=I.documentToScreenPosition(w.lead):w.moveToPosition(R),z={row:-1,column:-1};var U=function(te){j(),clearInterval(Z),d.removeSelectionMarkers(D),D.length||(D=[w.toOrientedRange()]),A&&(d.removeSelectionMarker(A),w.toSingleRange(A));for(var he=0;he<D.length;he++)w.addRange(D[he]);d.inVirtualSelectionMode=!1,d.$mouseHandler.$clickSelection=null},q=j;f.capture(d.container,O,U);var Z=setInterval(function(){q()},20);return p.preventDefault()}}}r.onMouseDown=h}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,r,v){r.defaultCommands=[{name:"addCursorAbove",description:"Add cursor above",exec:function(y){y.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",description:"Add cursor below",exec:function(y){y.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",description:"Add cursor above (skip current)",exec:function(y){y.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",description:"Add cursor below (skip current)",exec:function(y){y.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",description:"Select more before",exec:function(y){y.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",description:"Select more after",exec:function(y){y.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",description:"Select next before",exec:function(y){y.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",description:"Select next after",exec:function(y){y.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"toggleSplitSelectionIntoLines",description:"Split selection into lines",exec:function(y){y.multiSelect.rangeCount>1?y.multiSelect.joinSelections():y.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(y){y.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(y){y.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(y){y.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],r.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(y){y.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(y){return y&&y.inMultiSelectMode}}];var f=e("../keyboard/hash_handler").HashHandler;r.keyboardHandler=new f(r.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,r,v){var f=e("./range_list").RangeList,y=e("./range").Range,C=e("./selection").Selection,h=e("./mouse/multi_select_handler").onMouseDown,p=e("./lib/event"),s=e("./lib/lang"),a=e("./commands/multi_select_commands");r.commands=a.defaultCommands.concat(a.multiSelectCommands);var c=e("./search").Search,l=new c;function o(M,k,x){return l.$options.wrap=!0,l.$options.needle=k,l.$options.backwards=x==-1,l.find(M)}var u=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(u.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(M,k){if(M){if(!this.inMultiSelectMode&&this.rangeCount===0){var x=this.toOrientedRange();if(this.rangeList.add(x),this.rangeList.add(M),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),k||this.fromOrientedRange(M);this.rangeList.removeAll(),this.rangeList.add(x),this.$onAddRange(x)}M.cursor||(M.cursor=M.end);var L=this.rangeList.add(M);return this.$onAddRange(M),L.length&&this.$onRemoveRange(L),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),k||this.fromOrientedRange(M)}},this.toSingleRange=function(M){M=M||this.ranges[0];var k=this.rangeList.removeAll();k.length&&this.$onRemoveRange(k),M&&this.fromOrientedRange(M)},this.substractPoint=function(M){var k=this.rangeList.substractPoint(M);if(k)return this.$onRemoveRange(k),k[0]},this.mergeOverlappingRanges=function(){var M=this.rangeList.merge();M.length&&this.$onRemoveRange(M)},this.$onAddRange=function(M){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(M),this._signal("addRange",{range:M})},this.$onRemoveRange=function(M){if(this.rangeCount=this.rangeList.ranges.length,this.rangeCount==1&&this.inMultiSelectMode){var k=this.rangeList.ranges.pop();M.push(k),this.rangeCount=0}for(var x=M.length;x--;){var L=this.ranges.indexOf(M[x]);this.ranges.splice(L,1)}this._signal("removeRange",{ranges:M}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),k=k||this.ranges[0],k&&!k.isEqual(this.getRange())&&this.fromOrientedRange(k)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new f,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var M=this.ranges.length?this.ranges:[this.getRange()],k=[],x=0;x<M.length;x++){var L=M[x],O=L.start.row,I=L.end.row;if(O===I)k.push(L.clone());else{for(k.push(new y(O,L.start.column,O,this.session.getLine(O).length));++O<I;)k.push(this.getLineRange(O,!0));k.push(new y(I,0,I,L.end.column))}x==0&&!this.isBackwards()&&(k=k.reverse())}this.toSingleRange();for(var x=k.length;x--;)this.addRange(k[x])},this.joinSelections=function(){var M=this.rangeList.ranges,k=M[M.length-1],x=y.fromPoints(M[0].start,k.end);this.toSingleRange(),this.setSelectionRange(x,k.cursor==k.start)},this.toggleBlockSelection=function(){if(this.rangeCount>1){var M=this.rangeList.ranges,k=M[M.length-1],x=y.fromPoints(M[0].start,k.end);this.toSingleRange(),this.setSelectionRange(x,k.cursor==k.start)}else{var L=this.session.documentToScreenPosition(this.cursor),O=this.session.documentToScreenPosition(this.anchor),I=this.rectangularRangeBlock(L,O);I.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(M,k,x){var L=[],O=M.column<k.column;if(O)var I=M.column,E=k.column,z=M.offsetX,P=k.offsetX;else var I=k.column,E=M.column,z=k.offsetX,P=M.offsetX;var N=M.row<k.row;if(N)var S=M.row,A=k.row;else var S=k.row,A=M.row;I<0&&(I=0),S<0&&(S=0),S==A&&(x=!0);for(var D,j=S;j<=A;j++){var U=y.fromPoints(this.session.screenToDocumentPosition(j,I,z),this.session.screenToDocumentPosition(j,E,P));if(U.isEmpty()){if(D&&w(U.end,D))break;D=U.end}U.cursor=O?U.start:U.end,L.push(U)}if(N&&L.reverse(),!x){for(var q=L.length-1;L[q].isEmpty()&&q>0;)q--;if(q>0)for(var Z=0;L[Z].isEmpty();)Z++;for(var te=q;te>=Z;te--)L[te].isEmpty()&&L.splice(te,1)}return L}}).call(C.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(M){M.cursor||(M.cursor=M.end);var k=this.getSelectionStyle();return M.marker=this.session.addMarker(M,"ace_selection",k),this.session.$selectionMarkers.push(M),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,M},this.removeSelectionMarker=function(M){if(M.marker){this.session.removeMarker(M.marker);var k=this.session.$selectionMarkers.indexOf(M);k!=-1&&this.session.$selectionMarkers.splice(k,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(M){for(var k=this.session.$selectionMarkers,x=M.length;x--;){var L=M[x];if(L.marker){this.session.removeMarker(L.marker);var O=k.indexOf(L);O!=-1&&k.splice(O,1)}}this.session.selectionMarkerCount=k.length},this.$onAddRange=function(M){this.addSelectionMarker(M.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(M){this.removeSelectionMarkers(M.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(M){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(a.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(M){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(a.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(M){var k=M.command,x=M.editor;if(x.multiSelect){if(k.multiSelectAction)k.multiSelectAction=="forEach"?L=x.forEachSelection(k,M.args):k.multiSelectAction=="forEachLine"?L=x.forEachSelection(k,M.args,!0):k.multiSelectAction=="single"?(x.exitMultiSelectMode(),L=k.exec(x,M.args||{})):L=k.multiSelectAction(x,M.args||{});else{var L=k.exec(x,M.args||{});x.multiSelect.addRange(x.multiSelect.toOrientedRange()),x.multiSelect.mergeOverlappingRanges()}return L}},this.forEachSelection=function(M,k,x){if(!this.inVirtualSelectionMode){var L=x&&x.keepOrder,O=x==!0||x&&x.$byLines,I=this.session,E=this.selection,z=E.rangeList,P=(L?E:z).ranges,N;if(!P.length)return M.exec?M.exec(this,k||{}):M(this,k||{});var S=E._eventRegistry;E._eventRegistry={};var A=new C(I);this.inVirtualSelectionMode=!0;for(var D=P.length;D--;){if(O)for(;D>0&&P[D].start.row==P[D-1].end.row;)D--;A.fromOrientedRange(P[D]),A.index=D,this.selection=I.selection=A;var j=M.exec?M.exec(this,k||{}):M(this,k||{});!N&&j!==void 0&&(N=j),A.toOrientedRange(P[D])}A.detach(),this.selection=I.selection=E,this.inVirtualSelectionMode=!1,E._eventRegistry=S,E.mergeOverlappingRanges(),E.ranges[0]&&E.fromOrientedRange(E.ranges[0]);var U=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),U&&U.from==U.to&&this.renderer.animateScrolling(U.from),N}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var M="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var k=this.multiSelect.rangeList.ranges,x=[],L=0;L<k.length;L++)x.push(this.session.getTextRange(k[L]));var O=this.session.getDocument().getNewLineCharacter();M=x.join(O),M.length==(x.length-1)*O.length&&(M="")}else this.selection.isEmpty()||(M=this.session.getTextRange(this.getSelectionRange()));return M},this.$checkMultiselectChange=function(M,k){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var x=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&k==this.multiSelect.anchor)return;var L=k==this.multiSelect.anchor?x.cursor==x.start?x.end:x.start:x.cursor;L.row!=k.row||this.session.$clipPositionToDocument(L.row,L.column).column!=k.column?this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange()):this.multiSelect.mergeOverlappingRanges()}},this.findAll=function(M,k,x){if(k=k||{},k.needle=M||k.needle,k.needle==null){var L=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();k.needle=this.session.getTextRange(L)}this.$search.set(k);var O=this.$search.findAll(this.session);if(!O.length)return 0;var I=this.multiSelect;x||I.toSingleRange(O[0]);for(var E=O.length;E--;)I.addRange(O[E],!0);return L&&I.rangeList.rangeAtPoint(L.start)&&I.addRange(L,!0),O.length},this.selectMoreLines=function(M,k){var x=this.selection.toOrientedRange(),L=x.cursor==x.end,O=this.session.documentToScreenPosition(x.cursor);this.selection.$desiredColumn&&(O.column=this.selection.$desiredColumn);var I=this.session.screenToDocumentPosition(O.row+M,O.column);if(x.isEmpty())var z=I;else var E=this.session.documentToScreenPosition(L?x.end:x.start),z=this.session.screenToDocumentPosition(E.row+M,E.column);if(L){var P=y.fromPoints(I,z);P.cursor=P.start}else{var P=y.fromPoints(z,I);P.cursor=P.end}if(P.desiredColumn=O.column,!this.selection.inMultiSelectMode)this.selection.addRange(x);else if(k)var N=x.cursor;this.selection.addRange(P),N&&this.selection.substractPoint(N)},this.transposeSelections=function(M){for(var k=this.session,x=k.multiSelect,L=x.ranges,O=L.length;O--;){var I=L[O];if(I.isEmpty()){var E=k.getWordRange(I.start.row,I.start.column);I.start.row=E.start.row,I.start.column=E.start.column,I.end.row=E.end.row,I.end.column=E.end.column}}x.mergeOverlappingRanges();for(var z=[],O=L.length;O--;){var I=L[O];z.unshift(k.getTextRange(I))}M<0?z.unshift(z.pop()):z.push(z.shift());for(var O=L.length;O--;){var I=L[O],P=I.clone();k.replace(I,z[O]),I.start.row=P.start.row,I.start.column=P.start.column}x.fromOrientedRange(x.ranges[0])},this.selectMore=function(M,k,x){var L=this.session,O=L.multiSelect,I=O.toOrientedRange();if(!(I.isEmpty()&&(I=L.getWordRange(I.start.row,I.start.column),I.cursor=M==-1?I.start:I.end,this.multiSelect.addRange(I),x))){var E=L.getTextRange(I),z=o(L,E,M);z&&(z.cursor=M==-1?z.start:z.end,this.session.unfold(z),this.multiSelect.addRange(z),this.renderer.scrollCursorIntoView(null,.5)),k&&this.multiSelect.substractPoint(I.cursor)}},this.alignCursors=function(){var M=this.session,k=M.multiSelect,x=k.ranges,L=-1,O=x.filter(function(q){if(q.cursor.row==L)return!0;L=q.cursor.row});if(!x.length||O.length==x.length-1){var I=this.selection.getRange(),E=I.start.row,z=I.end.row,P=E==z;if(P){var N=this.session.getLength(),S;do S=this.session.getLine(z);while(/[=:]/.test(S)&&++z<N);do S=this.session.getLine(E);while(/[=:]/.test(S)&&--E>0);E<0&&(E=0),z>=N&&(z=N-1)}var A=this.session.removeFullLines(E,z);A=this.$reAlignText(A,P),this.session.insert({row:E,column:0},A.join(`
951
+ `)+`
952
+ `),P||(I.start.column=0,I.end.column=A[A.length-1].length),this.selection.setRange(I)}else{O.forEach(function(q){k.substractPoint(q.cursor)});var D=0,j=1/0,U=x.map(function(q){var Z=q.cursor,te=M.getLine(Z.row),he=te.substr(Z.column).search(/\S/g);return he==-1&&(he=0),Z.column>D&&(D=Z.column),he<j&&(j=he),he});x.forEach(function(q,Z){var te=q.cursor,he=D-te.column,ne=U[Z]-j;he>ne?M.insert(te,s.stringRepeat(" ",he-ne)):M.remove(new y(te.row,te.column,te.row,te.column-he+ne)),q.start.column=q.end.column=D,q.start.row=q.end.row=te.row,q.cursor=q.end}),k.fromOrientedRange(x[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(M,k){var x=!0,L=!0,O,I,E;return M.map(function(A){var D=A.match(/(\s*)(.*?)(\s*)([=:].*)/);return D?O==null?(O=D[1].length,I=D[2].length,E=D[3].length,D):(O+I+E!=D[1].length+D[2].length+D[3].length&&(L=!1),O!=D[1].length&&(x=!1),O>D[1].length&&(O=D[1].length),I<D[2].length&&(I=D[2].length),E>D[3].length&&(E=D[3].length),D):[A]}).map(k?P:x?L?N:P:S);function z(A){return s.stringRepeat(" ",A)}function P(A){return A[2]?z(O)+A[2]+z(I-A[2].length+E)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function N(A){return A[2]?z(O+I-A[2].length)+A[2]+z(E)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function S(A){return A[2]?z(O)+A[2]+z(E)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}}}).call(d.prototype);function w(M,k){return M.row==k.row&&M.column==k.column}r.onSessionChange=function(M){var k=M.session;k&&!k.multiSelect&&(k.$selectionMarkers=[],k.selection.$initRangeList(),k.multiSelect=k.selection),this.multiSelect=k&&k.multiSelect;var x=M.oldSession;x&&(x.multiSelect.off("addRange",this.$onAddRange),x.multiSelect.off("removeRange",this.$onRemoveRange),x.multiSelect.off("multiSelect",this.$onMultiSelect),x.multiSelect.off("singleSelect",this.$onSingleSelect),x.multiSelect.lead.off("change",this.$checkMultiselectChange),x.multiSelect.anchor.off("change",this.$checkMultiselectChange)),k&&(k.multiSelect.on("addRange",this.$onAddRange),k.multiSelect.on("removeRange",this.$onRemoveRange),k.multiSelect.on("multiSelect",this.$onMultiSelect),k.multiSelect.on("singleSelect",this.$onSingleSelect),k.multiSelect.lead.on("change",this.$checkMultiselectChange),k.multiSelect.anchor.on("change",this.$checkMultiselectChange)),k&&this.inMultiSelectMode!=k.selection.inMultiSelectMode&&(k.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function b(M){M.$multiselectOnSessionChange||(M.$onAddRange=M.$onAddRange.bind(M),M.$onRemoveRange=M.$onRemoveRange.bind(M),M.$onMultiSelect=M.$onMultiSelect.bind(M),M.$onSingleSelect=M.$onSingleSelect.bind(M),M.$multiselectOnSessionChange=r.onSessionChange.bind(M),M.$checkMultiselectChange=M.$checkMultiselectChange.bind(M),M.$multiselectOnSessionChange(M),M.on("changeSession",M.$multiselectOnSessionChange),M.on("mousedown",h),M.commands.addCommands(a.defaultCommands),R(M))}function R(M){if(!M.textInput)return;var k=M.textInput.getElement(),x=!1;p.addListener(k,"keydown",function(O){var I=O.keyCode==18&&!(O.ctrlKey||O.shiftKey||O.metaKey);M.$blockSelectEnabled&&I?x||(M.renderer.setMouseCursor("crosshair"),x=!0):x&&L()},M),p.addListener(k,"keyup",L,M),p.addListener(k,"blur",L,M);function L(O){x&&(M.renderer.setMouseCursor(""),x=!1)}}r.MultiSelect=b,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(M){b(this),M?this.on("mousedown",h):this.off("mousedown",h)},value:!0},enableBlockSelect:{set:function(M){this.$blockSelectEnabled=M},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,r,v){var f=e("../../range").Range,y=r.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(C,h,p){var s=C.getLine(p);return this.foldingStartMarker.test(s)?"start":h=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(s)?"end":""},this.getFoldWidgetRange=function(C,h,p){return null},this.indentationBlock=function(C,h,p){var s=/\S/,a=C.getLine(h),c=a.search(s);if(c!=-1){for(var l=p||a.length,o=C.getLength(),u=h,d=h;++h<o;){var w=C.getLine(h).search(s);if(w!=-1){if(w<=c){var b=C.getTokenAt(h,0);if(!b||b.type!=="string")break}d=h}}if(d>u){var R=C.getLine(d).length;return new f(u,l,d,R)}}},this.openingBracketBlock=function(C,h,p,s,a){var c={row:p,column:s+1},l=C.$findClosingBracket(h,c,a);if(l){var o=C.foldWidgets[l.row];return o==null&&(o=C.getFoldWidget(l.row)),o=="start"&&l.row>c.row&&(l.row--,l.column=C.getLine(l.row).length),f.fromPoints(c,l)}},this.closingBracketBlock=function(C,h,p,s,a){var c={row:p,column:s},l=C.$findOpeningBracket(h,c);if(l)return l.column++,c.column--,f.fromPoints(l,c)}}).call(y.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/lib/dom","ace/range","ace/config"],function(e,r,v){var f=e("../lib/dom"),y=e("../range").Range,C=e("../config").nls;function h(s,a,c){for(var l=0,o=s.length-1;l<=o;){var u=l+o>>1,d=c(a,s[u]);if(d>0)l=u+1;else if(d<0)o=u-1;else return u}return-(l+1)}function p(s,a,c){var l=s.getAnnotations().sort(y.comparePoints);if(l.length){var o=h(l,{row:a,column:-1},y.comparePoints);o<0&&(o=-o-1),o>=l.length?o=c>0?0:l.length-1:o===0&&c<0&&(o=l.length-1);var u=l[o];if(!(!u||!c)){if(u.row===a){do u=l[o+=c];while(u&&u.row===a);if(!u)return l.slice()}var d=[];a=u.row;do d[c<0?"unshift":"push"](u),u=l[o+=c];while(u&&u.row==a);return d.length&&d}}}r.showErrorMarker=function(s,a){var c=s.session,l=s.getCursorPosition(),o=l.row,u=c.widgetManager.getWidgetsAtRow(o).filter(function(O){return O.type=="errorMarker"})[0];u?u.destroy():o-=a;var d=p(c,o,a),w;if(d){var b=d[0];l.column=(b.pos&&typeof b.column!="number"?b.pos.sc:b.column)||0,l.row=b.row,w=s.renderer.$gutterLayer.$annotations[l.row]}else{if(u)return;w={displayText:[C("error-marker.good-state","Looks good!")],className:"ace_ok"}}s.session.unfold(l.row),s.selection.moveToPosition(l);var R={row:l.row,fixedWidth:!0,coverGutter:!0,el:f.createElement("div"),type:"errorMarker"},M=R.el.appendChild(f.createElement("div")),k=R.el.appendChild(f.createElement("div"));k.className="error_widget_arrow "+w.className;var x=s.renderer.$cursorLayer.getPixelPosition(l).left;k.style.left=x+s.renderer.gutterWidth-5+"px",R.el.className="error_widget_wrapper",M.className="error_widget "+w.className,w.displayText.forEach(function(O,I){M.appendChild(f.createTextNode(O)),I<w.displayText.length-1&&M.appendChild(f.createElement("br"))}),M.appendChild(f.createElement("div"));var L=function(O,I,E){if(I===0&&(E==="esc"||E==="return"))return R.destroy(),{command:"null"}};R.destroy=function(){s.$mouseHandler.isMousePressed||(s.keyBinding.removeKeyboardHandler(L),c.widgetManager.removeLineWidget(R),s.off("changeSelection",R.destroy),s.off("changeSession",R.destroy),s.off("mouseup",R.destroy),s.off("change",R.destroy))},s.keyBinding.addKeyboardHandler(L),s.on("changeSelection",R.destroy),s.on("changeSession",R.destroy),s.on("mouseup",R.destroy),s.on("change",R.destroy),s.session.widgetManager.addLineWidget(R),R.el.onmousedown=s.focus.bind(s),s.renderer.scrollCursorIntoView(null,.5,{bottom:R.el.offsetHeight})},f.importCssString(`
953
+ .error_widget_wrapper {
954
+ background: inherit;
955
+ color: inherit;
956
+ border:none
957
+ }
958
+ .error_widget {
959
+ border-top: solid 2px;
960
+ border-bottom: solid 2px;
961
+ margin: 5px 0;
962
+ padding: 10px 40px;
963
+ white-space: pre-wrap;
964
+ }
965
+ .error_widget.ace_error, .error_widget_arrow.ace_error{
966
+ border-color: #ff5a5a
967
+ }
968
+ .error_widget.ace_warning, .error_widget_arrow.ace_warning{
969
+ border-color: #F1D817
970
+ }
971
+ .error_widget.ace_info, .error_widget_arrow.ace_info{
972
+ border-color: #5a5a5a
973
+ }
974
+ .error_widget.ace_ok, .error_widget_arrow.ace_ok{
975
+ border-color: #5aaa5a
976
+ }
977
+ .error_widget_arrow {
978
+ position: absolute;
979
+ border: solid 5px;
980
+ border-top-color: transparent!important;
981
+ border-right-color: transparent!important;
982
+ border-left-color: transparent!important;
983
+ top: -5px;
984
+ }
985
+ `,"error_marker.css",!1)}),ace.define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","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","ace/loader_build"],function(e,r,v){e("./loader_build")(r);var f=e("./lib/dom"),y=e("./range").Range,C=e("./editor").Editor,h=e("./edit_session").EditSession,p=e("./undomanager").UndoManager,s=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"),r.config=e("./config"),r.edit=function(c,l){if(typeof c=="string"){var o=c;if(c=document.getElementById(o),!c)throw new Error("ace.edit can't find div #"+o)}if(c&&c.env&&c.env.editor instanceof C)return c.env.editor;var u="";if(c&&/input|textarea/i.test(c.tagName)){var d=c;u=d.value,c=f.createElement("pre"),d.parentNode.replaceChild(c,d)}else c&&(u=c.textContent,c.innerHTML="");var w=r.createEditSession(u),b=new C(new s(c),w,l),R={document:w,editor:b,onResize:b.resize.bind(b,null)};return d&&(R.textarea=d),b.on("destroy",function(){R.editor.container.env=null}),b.container.env=b.env=R,b},r.createEditSession=function(c,l){var o=new h(c,l);return o.setUndoManager(new p),o},r.Range=y,r.Editor=C,r.EditSession=h,r.UndoManager=p,r.VirtualRenderer=s;var a=r.config.version;r.version=a}),function(){ace.require(["ace/ace"],function(e){e&&(e.config.init(!0),e.define=ace.define);var r=function(){return this}();!r&&typeof window<"u"&&(r=window),!r&&typeof self<"u"&&(r=self),r.ace||(r.ace=e);for(var v in e)e.hasOwnProperty(v)&&(r.ace[v]=e[v]);r.ace.default=r.ace,n&&(n.exports=r.ace)})}()}(Np)),Np.exports}Nb();var Fp={exports:{}},Pp;function Db(){return Pp||(Pp=1,function(n,t){ace.define("ace/mode/ruby_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=r.constantOtherSymbol={token:"constant.other.symbol.ruby",regex:"[:](?:[A-Za-z_]|[@$](?=[a-zA-Z0-9_]))[a-zA-Z0-9_]*[!=?]?"};r.qString={token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},r.qqString={token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},r.tString={token:"string",regex:"[`](?:(?:\\\\.)|(?:[^'\\\\]))*?[`]"};var h=r.constantNumericHex={token:"constant.numeric",regex:"0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_(?=[0-9a-fA-F]))*\\b"},p=r.constantNumericBinary={token:"constant.numeric",regex:/\b(0[bB][01](?:[01]|_(?=[01]))*)\b/},s=r.constantNumericDecimal={token:"constant.numeric",regex:/\b(0[dD](?:[1-9](?:[\d]|_(?=[\d]))*|0))\b/},a=r.constantNumericOctal={token:"constant.numeric",regex:/\b(0[oO]?(?:[1-7](?:[0-7]|_(?=[0-7]))*|0))\b/},c=r.constantNumericRational={token:"constant.numeric",regex:/\b([\d]+(?:[./][\d]+)?ri?)\b/},l=r.constantNumericComplex={token:"constant.numeric",regex:/\b([\d]i)\b/},o=r.constantNumericFloat={token:"constant.numeric",regex:"[+-]?\\d(?:\\d|_(?=\\d))*(?:(?:\\.\\d(?:\\d|_(?=\\d))*)?(?:[eE][+-]?\\d+)?)?i?\\b"},u=r.instanceVariable={token:"variable.instance",regex:"@{1,2}[a-zA-Z_\\d]+"},d=function(){var w="abort|Array|assert|assert_equal|assert_not_equal|assert_same|assert_not_same|assert_nil|assert_not_nil|assert_match|assert_no_match|assert_in_delta|assert_throws|assert_raise|assert_nothing_raised|assert_instance_of|assert_kind_of|assert_respond_to|assert_operator|assert_send|assert_difference|assert_no_difference|assert_recognizes|assert_generates|assert_response|assert_redirected_to|assert_template|assert_select|assert_select_email|assert_select_rjs|assert_select_encoded|css_select|at_exit|attr|attr_writer|attr_reader|attr_accessor|attr_accessible|autoload|binding|block_given?|callcc|caller|catch|chomp|chomp!|chop|chop!|defined?|delete_via_redirect|eval|exec|exit|exit!|fail|Float|flunk|follow_redirect!|fork|form_for|form_tag|format|gets|global_variables|gsub|gsub!|get_via_redirect|host!|https?|https!|include|Integer|lambda|link_to|link_to_unless_current|link_to_function|link_to_remote|load|local_variables|loop|open|open_session|p|print|printf|proc|putc|puts|post_via_redirect|put_via_redirect|raise|rand|raw|readline|readlines|redirect?|request_via_redirect|require|scan|select|set_trace_func|sleep|split|sprintf|srand|String|stylesheet_link_tag|syscall|system|sub|sub!|test|throw|trace_var|trap|untrace_var|atan2|cos|exp|frexp|ldexp|log|log10|sin|sqrt|tan|render|javascript_include_tag|csrf_meta_tag|label_tag|text_field_tag|submit_tag|check_box_tag|content_tag|radio_button_tag|text_area_tag|password_field_tag|hidden_field_tag|fields_for|select_tag|options_for_select|options_from_collection_for_select|collection_select|time_zone_select|select_date|select_time|select_datetime|date_select|time_select|datetime_select|select_year|select_month|select_day|select_hour|select_minute|select_second|file_field_tag|file_field|respond_to|skip_before_filter|around_filter|after_filter|verify|protect_from_forgery|rescue_from|helper_method|redirect_to|before_filter|send_data|send_file|validates_presence_of|validates_uniqueness_of|validates_length_of|validates_format_of|validates_acceptance_of|validates_associated|validates_exclusion_of|validates_inclusion_of|validates_numericality_of|validates_with|validates_each|authenticate_or_request_with_http_basic|authenticate_or_request_with_http_digest|filter_parameter_logging|match|get|post|resources|redirect|scope|assert_routing|translate|localize|extract_locale_from_tld|caches_page|expire_page|caches_action|expire_action|cache|expire_fragment|expire_cache_for|observe|cache_sweeper|has_many|has_one|belongs_to|has_and_belongs_to_many|p|warn|refine|using|module_function|extend|alias_method|private_class_method|remove_method|undef_method",b="alias|and|BEGIN|begin|break|case|class|def|defined|do|else|elsif|END|end|ensure|__FILE__|finally|for|gem|if|in|__LINE__|module|next|not|or|private|protected|public|redo|rescue|retry|return|super|then|undef|unless|until|when|while|yield|__ENCODING__|prepend",R="true|TRUE|false|FALSE|nil|NIL|ARGF|ARGV|DATA|ENV|RUBY_PLATFORM|RUBY_RELEASE_DATE|RUBY_VERSION|STDERR|STDIN|STDOUT|TOPLEVEL_BINDING|RUBY_PATCHLEVEL|RUBY_REVISION|RUBY_COPYRIGHT|RUBY_ENGINE|RUBY_ENGINE_VERSION|RUBY_DESCRIPTION",M="$DEBUG|$defout|$FILENAME|$LOAD_PATH|$SAFE|$stdin|$stdout|$stderr|$VERBOSE|$!|root_url|flash|session|cookies|params|request|response|logger|self",k=this.$keywords=this.createKeywordMapper({keyword:b,"constant.language":R,"variable.language":M,"support.function":w,"invalid.deprecated":"debugger"},"identifier"),x=`\\\\(?:n(?:[1-7][0-7]{0,2}|0)|[nsrtvfbae'"\\\\]|c(?:\\\\M-)?.|M-(?:\\\\C-|\\\\c)?.|C-(?:\\\\M-)?.|[0-7]{3}|x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|u{[\\da-fA-F]{1,6}(?:\\s[\\da-fA-F]{1,6})*})`,L={"(":")","[":"]","{":"}","<":">","^":"^","|":"|","%":"%"};this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"comment.multiline",regex:"^=begin(?=$|\\s.*$)",next:"comment"},{token:"string.regexp",regex:/[/](?=.*\/)/,next:"regex"},[{token:["constant.other.symbol.ruby","string.start"],regex:/(:)?(")/,push:[{token:"constant.language.escape",regex:x},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/"/,next:"pop"},{defaultToken:"string"}]},{token:"string.start",regex:/`/,push:[{token:"constant.language.escape",regex:x},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/`/,next:"pop"},{defaultToken:"string"}]},{token:["constant.other.symbol.ruby","string.start"],regex:/(:)?(')/,push:[{token:"constant.language.escape",regex:/\\['\\]/},{token:"string.end",regex:/'/,next:"pop"},{defaultToken:"string"}]},{token:"string.start",regex:/%[qwx]([(\[<{^|%])/,onMatch:function(O,I,E){E.length&&(E=[]);var z=O[O.length-1];return E.unshift(z,I),this.next="qStateWithoutInterpolation",this.token}},{token:"string.start",regex:/%[QWX]?([(\[<{^|%])/,onMatch:function(O,I,E){E.length&&(E=[]);var z=O[O.length-1];return E.unshift(z,I),this.next="qStateWithInterpolation",this.token}},{token:"constant.other.symbol.ruby",regex:/%[si]([(\[<{^|%])/,onMatch:function(O,I,E){E.length&&(E=[]);var z=O[O.length-1];return E.unshift(z,I),this.next="sStateWithoutInterpolation",this.token}},{token:"constant.other.symbol.ruby",regex:/%[SI]([(\[<{^|%])/,onMatch:function(O,I,E){E.length&&(E=[]);var z=O[O.length-1];return E.unshift(z,I),this.next="sStateWithInterpolation",this.token}},{token:"string.regexp",regex:/%[r]([(\[<{^|%])/,onMatch:function(O,I,E){E.length&&(E=[]);var z=O[O.length-1];return E.unshift(z,I),this.next="rState",this.token}}],{token:"punctuation",regex:"::"},u,{token:"variable.global",regex:"[$][a-zA-Z_\\d]+"},{token:"support.class",regex:"[A-Z][a-zA-Z_\\d]*"},{token:["punctuation.operator","support.function"],regex:/(\.)([a-zA-Z_\d]+)(?=\()/},{token:["punctuation.operator","identifier"],regex:/(\.)([a-zA-Z_][a-zA-Z_\d]*)/},{token:"string.character",regex:"\\B\\?(?:"+x+"|\\S)"},{token:"punctuation.operator",regex:/\?(?=.+:)/},c,l,C,h,o,p,s,a,{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:k,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"punctuation.separator.key-value",regex:"=>"},{stateName:"heredoc",onMatch:function(O,I,E){var z=O[2]=="-"||O[2]=="~"?"indentedHeredoc":"heredoc",P=O.split(this.splitRegex);return E.push(z,P[3]),[{type:"constant",value:P[1]},{type:"string",value:P[2]},{type:"support.class",value:P[3]},{type:"string",value:P[4]}]},regex:"(<<[-~]?)(['\"`]?)([\\w]+)(['\"`]?)",rules:{heredoc:[{onMatch:function(O,I,E){return O===E[1]?(E.shift(),E.shift(),this.next=E[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}],indentedHeredoc:[{token:"string",regex:"^ +"},{onMatch:function(O,I,E){return O===E[1]?(E.shift(),E.shift(),this.next=E[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}]}},{regex:"$",token:"empty",next:function(O,I){return I[0]==="heredoc"||I[0]==="indentedHeredoc"?I[0]:O}},{token:"keyword.operator",regex:"!|\\$|%|&|\\*|/|\\-\\-|\\-|\\+\\+|\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\|\\||\\?\\:|\\*=|%=|\\+=|\\-=|&=|\\^=|\\||\\b(?:in|instanceof|new|delete|typeof|void)"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]",onMatch:function(O,I,E){return this.next="",O=="}"&&E.length>1&&E[1]!="start"&&(E.shift(),this.next=E.shift()),this.token}},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:/[?:,;.]/}],comment:[{token:"comment.multiline",regex:"^=end(?=$|\\s.*$)",next:"start"},{token:"comment",regex:".+"}],qStateWithInterpolation:[{token:"string.start",regex:/[(\[<{]/,onMatch:function(O,I,E){return E.length&&O===E[0]?(E.unshift(O,I),this.token):"string"}},{token:"constant.language.escape",regex:x},{token:"constant.language.escape",regex:/\\./},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/[)\]>}^|%]/,onMatch:function(O,I,E){return E.length&&O===L[E[0]]?(E.shift(),this.next=E.shift(),this.token):(this.next="","string")}},{defaultToken:"string"}],qStateWithoutInterpolation:[{token:"string.start",regex:/[(\[<{]/,onMatch:function(O,I,E){return E.length&&O===E[0]?(E.unshift(O,I),this.token):"string"}},{token:"constant.language.escape",regex:/\\['\\]/},{token:"constant.language.escape",regex:/\\./},{token:"string.end",regex:/[)\]>}^|%]/,onMatch:function(O,I,E){return E.length&&O===L[E[0]]?(E.shift(),this.next=E.shift(),this.token):(this.next="","string")}},{defaultToken:"string"}],sStateWithoutInterpolation:[{token:"constant.other.symbol.ruby",regex:/[(\[<{]/,onMatch:function(O,I,E){return E.length&&O===E[0]?(E.unshift(O,I),this.token):"constant.other.symbol.ruby"}},{token:"constant.other.symbol.ruby",regex:/[)\]>}^|%]/,onMatch:function(O,I,E){return E.length&&O===L[E[0]]?(E.shift(),this.next=E.shift(),this.token):(this.next="","constant.other.symbol.ruby")}},{defaultToken:"constant.other.symbol.ruby"}],sStateWithInterpolation:[{token:"constant.other.symbol.ruby",regex:/[(\[<{]/,onMatch:function(O,I,E){return E.length&&O===E[0]?(E.unshift(O,I),this.token):"constant.other.symbol.ruby"}},{token:"constant.language.escape",regex:x},{token:"constant.language.escape",regex:/\\./},{token:"paren.start",regex:/#{/,push:"start"},{token:"constant.other.symbol.ruby",regex:/[)\]>}^|%]/,onMatch:function(O,I,E){return E.length&&O===L[E[0]]?(E.shift(),this.next=E.shift(),this.token):(this.next="","constant.other.symbol.ruby")}},{defaultToken:"constant.other.symbol.ruby"}],rState:[{token:"string.regexp",regex:/[(\[<{]/,onMatch:function(O,I,E){return E.length&&O===E[0]?(E.unshift(O,I),this.token):"constant.language.escape"}},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.regexp",regex:/\//},{token:"string.regexp",regex:/[)\]>}^|%][imxouesn]*/,onMatch:function(O,I,E){return E.length&&O[0]===L[E[0]]?(E.shift(),this.next=E.shift(),this.token):(this.next="","constant.language.escape")}},{include:"regex"},{defaultToken:"string.regexp"}],regex:[{token:"regexp.keyword",regex:/\\[wWdDhHsS]/},{token:"constant.language.escape",regex:/\\[AGbBzZ]/},{token:"constant.language.escape",regex:/\\g<[a-zA-Z0-9]*>/},{token:["constant.language.escape","regexp.keyword","constant.language.escape"],regex:/(\\p{\^?)(Alnum|Alpha|Blank|Cntrl|Digit|Graph|Lower|Print|Punct|Space|Upper|XDigit|Word|ASCII|Any|Assigned|Arabic|Armenian|Balinese|Bengali|Bopomofo|Braille|Buginese|Buhid|Canadian_Aboriginal|Carian|Cham|Cherokee|Common|Coptic|Cuneiform|Cypriot|Cyrillic|Deseret|Devanagari|Ethiopic|Georgian|Glagolitic|Gothic|Greek|Gujarati|Gurmukhi|Han|Hangul|Hanunoo|Hebrew|Hiragana|Inherited|Kannada|Katakana|Kayah_Li|Kharoshthi|Khmer|Lao|Latin|Lepcha|Limbu|Linear_B|Lycian|Lydian|Malayalam|Mongolian|Myanmar|New_Tai_Lue|Nko|Ogham|Ol_Chiki|Old_Italic|Old_Persian|Oriya|Osmanya|Phags_Pa|Phoenician|Rejang|Runic|Saurashtra|Shavian|Sinhala|Sundanese|Syloti_Nagri|Syriac|Tagalog|Tagbanwa|Tai_Le|Tamil|Telugu|Thaana|Thai|Tibetan|Tifinagh|Ugaritic|Vai|Yi|Ll|Lm|Lt|Lu|Lo|Mn|Mc|Me|Nd|Nl|Pc|Pd|Ps|Pe|Pi|Pf|Po|No|Sm|Sc|Sk|So|Zs|Zl|Zp|Cc|Cf|Cn|Co|Cs|N|L|M|P|S|Z|C)(})/},{token:["constant.language.escape","invalid","constant.language.escape"],regex:/(\\p{\^?)([^/]*)(})/},{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:/[/][imxouesn]*/,next:"start"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?(?:[:=!>]|<'?[a-zA-Z]*'?>|<[=!])|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"regexp.keyword",regex:/\[\[:(?:alnum|alpha|blank|cntrl|digit|graph|lower|print|punct|space|upper|xdigit|word|ascii):\]\]/},{token:"constant.language.escape",regex:/\[\^?/,push:"regex_character_class"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.keyword",regex:/\\[wWdDhHsS]/},{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:/&?&?\[\^?/,push:"regex_character_class"},{token:"constant.language.escape",regex:"]",next:"pop"},{token:"constant.language.escape",regex:"-"},{defaultToken:"string.regexp.characterclass"}]},this.normalizeRules()};f.inherits(d,y),r.RubyHighlightRules=d}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,r,v){var f=e("../range").Range,y=function(){};(function(){this.checkOutdent=function(C,h){return/^\s+$/.test(C)?/^\s*\}/.test(h):!1},this.autoOutdent=function(C,h){var p=C.getLine(h),s=p.match(/^(\s*\})/);if(!s)return 0;var a=s[1].length,c=C.findMatchingBracket({row:h,column:a});if(!c||c.row==h)return 0;var l=this.$getIndent(C.getLine(c.row));C.replace(new f(h,0,h,a-1),l)},this.$getIndent=function(C){return C.match(/^\s*/)[0]}}).call(y.prototype),r.MatchingBraceOutdent=y}),ace.define("ace/mode/folding/ruby",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range","ace/token_iterator"],function(e,r,v){var f=e("../../lib/oop"),y=e("./fold_mode").FoldMode,C=e("../../range").Range,h=e("../../token_iterator").TokenIterator,p=r.FoldMode=function(){};f.inherits(p,y),(function(){this.indentKeywords={class:1,def:1,module:1,do:1,unless:1,if:1,while:1,for:1,until:1,begin:1,else:0,elsif:0,rescue:0,ensure:0,when:0,end:-1,case:1,"=begin":1,"=end":-1},this.foldingStartMarker=/(?:\s|^)(def|do|while|class|unless|module|if|for|until|begin|else|elsif|case|rescue|ensure|when)\b|({\s*$)|(=begin)/,this.foldingStopMarker=/(=end(?=$|\s.*$))|(^\s*})|\b(end)\b/,this.getFoldWidget=function(s,a,c){var l=s.getLine(c),o=this.foldingStartMarker.test(l),u=this.foldingStopMarker.test(l);if(o&&!u){var d=l.match(this.foldingStartMarker);if(d[1]){if((d[1]=="if"||d[1]=="else"||d[1]=="while"||d[1]=="until"||d[1]=="unless")&&(d[1]=="else"&&/^\s*else\s*$/.test(l)===!1||/^\s*(?:if|else|while|until|unless)\s*/.test(l)===!1)||d[1]=="when"&&/\sthen\s/.test(l)===!0)return;if(s.getTokenAt(c,d.index+2).type==="keyword")return"start"}else if(!d[3]||s.getTokenAt(c,d.index+1).type==="comment.multiline")return"start"}if(a!="markbeginend"||!u||o&&u)return"";var d=l.match(this.foldingStopMarker);if(d[3]==="end"){if(s.getTokenAt(c,d.index+1).type==="keyword")return"end"}else if(!d[1]||s.getTokenAt(c,d.index+1).type==="comment.multiline")return"end"},this.getFoldWidgetRange=function(s,a,c){var l=s.doc.getLine(c),o=this.foldingStartMarker.exec(l);if(o)return o[1]||o[3]?this.rubyBlock(s,c,o.index+2):this.openingBracketBlock(s,"{",c,o.index);var o=this.foldingStopMarker.exec(l);if(o)return o[3]==="end"&&s.getTokenAt(c,o.index+1).type==="keyword"?this.rubyBlock(s,c,o.index+1):o[1]==="=end"&&s.getTokenAt(c,o.index+1).type==="comment.multiline"?this.rubyBlock(s,c,o.index+1):this.closingBracketBlock(s,"}",c,o.index+o[0].length)},this.rubyBlock=function(s,a,c,l){var o=new h(s,a,c),u=o.getCurrentToken();if(!(!u||u.type!="keyword"&&u.type!="comment.multiline")){var d=u.value,w=s.getLine(a);switch(u.value){case"if":case"unless":case"while":case"until":var b=new RegExp("^\\s*"+u.value);if(!b.test(w))return;var R=this.indentKeywords[d];break;case"when":if(/\sthen\s/.test(w))return;case"elsif":case"rescue":case"ensure":var R=1;break;case"else":var b=new RegExp("^\\s*"+u.value+"\\s*$");if(!b.test(w))return;var R=1;break;default:var R=this.indentKeywords[d]}var M=[d];if(R){var k=R===-1?s.getLine(a-1).length:s.getLine(a).length,x=a,L=[];if(L.push(o.getCurrentTokenRange()),o.step=R===-1?o.stepBackward:o.stepForward,u.type=="comment.multiline"){for(;u=o.step();)if(u.type==="comment.multiline"){if(R==1){if(k=6,u.value=="=end")break}else if(u.value=="=begin")break}}else for(;u=o.step();){var O=!1;if(u.type==="keyword"){var I=R*this.indentKeywords[u.value];switch(w=s.getLine(o.getCurrentTokenRow()),u.value){case"do":for(var E=o.$tokenIndex-1;E>=0;E--){var z=o.$rowTokens[E];if(z&&(z.value=="while"||z.value=="until"||z.value=="for")){I=0;break}}break;case"else":var b=new RegExp("^\\s*"+u.value+"\\s*$");(!b.test(w)||d=="case")&&(I=0,O=!0);break;case"if":case"unless":case"while":case"until":var b=new RegExp("^\\s*"+u.value);b.test(w)||(I=0,O=!0);break;case"when":(/\sthen\s/.test(w)||d=="case")&&(I=0,O=!0)}if(I>0)M.unshift(u.value);else if(I<=0&&O===!1){if(M.shift(),!M.length&&((d=="while"||d=="until"||d=="for")&&u.value!="do"||u.value=="do"&&R==-1&&I!=0||u.value!="do"))break;I===0&&M.unshift(u.value)}}}if(!u)return null;if(l)return L.push(o.getCurrentTokenRange()),L;var a=o.getCurrentTokenRow();if(R===-1){if(u.type==="comment.multiline")var P=6;else var P=s.getLine(a).length;return new C(a,P,x-1,k)}return new C(x,k,a-1,s.getLine(a-1).length)}}}}).call(p.prototype)}),ace.define("ace/mode/ruby",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/ruby_highlight_rules","ace/mode/matching_brace_outdent","ace/range","ace/mode/folding/ruby"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./ruby_highlight_rules").RubyHighlightRules,h=e("./matching_brace_outdent").MatchingBraceOutdent,p=e("../range").Range,s=e("./folding/ruby").FoldMode,a=function(){this.HighlightRules=C,this.$outdent=new h,this.$behaviour=this.$defaultBehaviour,this.foldingRules=new s,this.indentKeywords=this.foldingRules.indentKeywords};f.inherits(a,y),(function(){this.lineCommentStart="#",this.getNextLineIndent=function(c,l,o){var u=this.$getIndent(l),d=this.getTokenizer().getLineTokens(l,c),w=d.tokens;if(w.length&&w[w.length-1].type=="comment")return u;if(c=="start"){var b=l.match(/^.*[\{\(\[]\s*$/),R=l.match(/^\s*(class|def|module)\s.*$/),M=l.match(/.*do(\s*|\s+\|.*\|\s*)$/),k=l.match(/^\s*(if|else|when|elsif|unless|while|for|begin|rescue|ensure)\s*/);(b||R||M||k)&&(u+=o)}return u},this.checkOutdent=function(c,l,o){return/^\s+(end|else|rescue|ensure)$/.test(l+o)||this.$outdent.checkOutdent(l,o)},this.autoOutdent=function(c,l,o){var u=l.getLine(o);if(/}/.test(u))return this.$outdent.autoOutdent(l,o);var d=this.$getIndent(u),w=l.getLine(o-1),b=this.$getIndent(w),R=l.getTabString();b.length<=d.length&&d.slice(-R.length)==R&&l.remove(new p(o,d.length-R.length,o,d.length))},this.getMatching=function(c,l,o){if(l==null){var u=c.selection.lead;o=u.column,l=u.row}var d=c.getTokenAt(l,o);if(d&&d.value in this.indentKeywords)return this.foldingRules.rubyBlock(c,l,o,!0)},this.$id="ace/mode/ruby",this.snippetFileId="ace/snippets/ruby"}).call(a.prototype),r.Mode=a}),function(){ace.require(["ace/mode/ruby"],function(e){n&&(n.exports=e)})}()}(Fp)),Fp.exports}Db();var Wp={exports:{}},Bp;function Fb(){return Bp||(Bp=1,function(n,t){ace.define("ace/mode/python_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=function(){var h="and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|while|with|yield|async|await|nonlocal",p="True|False|None|NotImplemented|Ellipsis|__debug__",s="abs|divmod|input|open|staticmethod|all|enumerate|int|ord|str|any|eval|isinstance|pow|sum|basestring|execfile|issubclass|print|super|binfile|bin|iter|property|tuple|bool|filter|len|range|type|bytearray|float|list|raw_input|unichr|callable|format|locals|reduce|unicode|chr|frozenset|long|reload|vars|classmethod|getattr|map|repr|xrange|cmp|globals|max|reversed|zip|compile|hasattr|memoryview|round|__import__|complex|hash|min|apply|delattr|help|next|setattr|set|buffer|dict|hex|object|slice|coerce|dir|id|oct|sorted|intern|ascii|breakpoint|bytes",a=this.createKeywordMapper({"invalid.deprecated":"debugger","support.function":s,"variable.language":"self|cls","constant.language":p,keyword:h},"identifier"),c="[uU]?",l="[rR]",o="[fF]",u="(?:[rR][fF]|[fF][rR])",d="(?:(?:[1-9]\\d*)|(?:0))",w="(?:0[oO]?[0-7]+)",b="(?:0[xX][\\dA-Fa-f]+)",R="(?:0[bB][01]+)",M="(?:"+d+"|"+w+"|"+b+"|"+R+")",k="(?:[eE][+-]?\\d+)",x="(?:\\.\\d+)",L="(?:\\d+)",O="(?:(?:"+L+"?"+x+")|(?:"+L+"\\.))",I="(?:(?:"+O+"|"+L+")"+k+")",E="(?:"+I+"|"+O+")",z=`\\\\(x[0-9A-Fa-f]{2}|[0-7]{3}|[\\\\abfnrtv'"]|U[0-9A-Fa-f]{8}|u[0-9A-Fa-f]{4})`;this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"string",regex:c+'"{3}',next:"qqstring3"},{token:"string",regex:c+'"(?=.)',next:"qqstring"},{token:"string",regex:c+"'{3}",next:"qstring3"},{token:"string",regex:c+"'(?=.)",next:"qstring"},{token:"string",regex:l+'"{3}',next:"rawqqstring3"},{token:"string",regex:l+'"(?=.)',next:"rawqqstring"},{token:"string",regex:l+"'{3}",next:"rawqstring3"},{token:"string",regex:l+"'(?=.)",next:"rawqstring"},{token:"string",regex:o+'"{3}',next:"fqqstring3"},{token:"string",regex:o+'"(?=.)',next:"fqqstring"},{token:"string",regex:o+"'{3}",next:"fqstring3"},{token:"string",regex:o+"'(?=.)",next:"fqstring"},{token:"string",regex:u+'"{3}',next:"rfqqstring3"},{token:"string",regex:u+'"(?=.)',next:"rfqqstring"},{token:"string",regex:u+"'{3}",next:"rfqstring3"},{token:"string",regex:u+"'(?=.)",next:"rfqstring"},{token:"keyword.operator",regex:"\\+|\\-|\\*|\\*\\*|\\/|\\/\\/|%|@|<<|>>|&|\\||\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"punctuation",regex:",|:|;|\\->|\\+=|\\-=|\\*=|\\/=|\\/\\/=|%=|@=|&=|\\|=|^=|>>=|<<=|\\*\\*="},{token:"paren.lparen",regex:"[\\[\\(\\{]"},{token:"paren.rparen",regex:"[\\]\\)\\}]"},{token:["keyword","text","entity.name.function"],regex:"(def|class)(\\s+)([\\u00BF-\\u1FFF\\u2C00-\\uD7FF\\w]+)"},{token:"text",regex:"\\s+"},{include:"constants"}],qqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:'"{3}',next:"start"},{defaultToken:"string"}],qstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'{3}",next:"start"},{defaultToken:"string"}],qqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"qqstring"},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"qstring"},{token:"string",regex:"'|$",next:"start"},{defaultToken:"string"}],rawqqstring3:[{token:"string",regex:'"{3}',next:"start"},{defaultToken:"string"}],rawqstring3:[{token:"string",regex:"'{3}",next:"start"},{defaultToken:"string"}],rawqqstring:[{token:"string",regex:"\\\\$",next:"rawqqstring"},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],rawqstring:[{token:"string",regex:"\\\\$",next:"rawqstring"},{token:"string",regex:"'|$",next:"start"},{defaultToken:"string"}],fqqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:'"{3}',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'{3}",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"fqqstring"},{token:"string",regex:'"|$',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'|$",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqqstring3:[{token:"string",regex:'"{3}',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqstring3:[{token:"string",regex:"'{3}",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqqstring:[{token:"string",regex:"\\\\$",next:"rfqqstring"},{token:"string",regex:'"|$',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqstring:[{token:"string",regex:"'|$",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstringParRules:[{token:"paren.lparen",regex:"[\\[\\(]"},{token:"paren.rparen",regex:"[\\]\\)]"},{token:"string",regex:"\\s+"},{token:"string",regex:"'[^']*'"},{token:"string",regex:'"[^"]*"'},{token:"function.support",regex:"(!s|!r|!a)"},{include:"constants"},{token:"paren.rparen",regex:"}",next:"pop"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"}],constants:[{token:"constant.numeric",regex:"(?:"+E+"|\\d+)[jJ]\\b"},{token:"constant.numeric",regex:E},{token:"constant.numeric",regex:M+"[lL]\\b"},{token:"constant.numeric",regex:M+"\\b"},{token:["punctuation","function.support"],regex:"(\\.)([a-zA-Z_]+)\\b"},{token:a,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"}]},this.normalizeRules()};f.inherits(C,y),r.PythonHighlightRules=C}),ace.define("ace/mode/folding/pythonic",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,r,v){var f=e("../../lib/oop"),y=e("./fold_mode").FoldMode,C=r.FoldMode=function(h){this.foldingStartMarker=new RegExp("([\\[{])(?:\\s*)$|("+h+")(?:\\s*)(?:#.*)?$")};f.inherits(C,y),(function(){this.getFoldWidgetRange=function(h,p,s){var a=h.getLine(s),c=a.match(this.foldingStartMarker);if(c)return c[1]?this.openingBracketBlock(h,c[1],s,c.index):c[2]?this.indentationBlock(h,s,c.index+c[2].length):this.indentationBlock(h,s)}}).call(C.prototype)}),ace.define("ace/mode/python",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/python_highlight_rules","ace/mode/folding/pythonic","ace/range"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./python_highlight_rules").PythonHighlightRules,h=e("./folding/pythonic").FoldMode,p=e("../range").Range,s=function(){this.HighlightRules=C,this.foldingRules=new h("\\:"),this.$behaviour=this.$defaultBehaviour};f.inherits(s,y),(function(){this.lineCommentStart="#",this.$pairQuotesAfter={"'":/[ruf]/i,'"':/[ruf]/i},this.getNextLineIndent=function(c,l,o){var u=this.$getIndent(l),d=this.getTokenizer().getLineTokens(l,c),w=d.tokens;if(w.length&&w[w.length-1].type=="comment")return u;if(c=="start"){var b=l.match(/^.*[\{\(\[:]\s*$/);b&&(u+=o)}return u};var a={pass:1,return:1,raise:1,break:1,continue:1};this.checkOutdent=function(c,l,o){if(o!==`\r
986
+ `&&o!=="\r"&&o!==`
987
+ `)return!1;var u=this.getTokenizer().getLineTokens(l.trim(),c).tokens;if(!u)return!1;do var d=u.pop();while(d&&(d.type=="comment"||d.type=="text"&&d.value.match(/^\s+$/)));return d?d.type=="keyword"&&a[d.value]:!1},this.autoOutdent=function(c,l,o){o+=1;var u=this.$getIndent(l.getLine(o)),d=l.getTabString();u.slice(-d.length)==d&&l.remove(new p(o,u.length-d.length,o,u.length))},this.$id="ace/mode/python",this.snippetFileId="ace/snippets/python"}).call(s.prototype),r.Mode=s}),function(){ace.require(["ace/mode/python"],function(e){n&&(n.exports=e)})}()}(Wp)),Wp.exports}Fb();var zp={exports:{}},jp;function Pb(){return jp||(jp=1,function(n,t){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"punctuation.operator",regex:/[,]/},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};f.inherits(C,y),r.JsonHighlightRules=C}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,r,v){var f=e("../range").Range,y=function(){};(function(){this.checkOutdent=function(C,h){return/^\s+$/.test(C)?/^\s*\}/.test(h):!1},this.autoOutdent=function(C,h){var p=C.getLine(h),s=p.match(/^(\s*\})/);if(!s)return 0;var a=s[1].length,c=C.findMatchingBracket({row:h,column:a});if(!c||c.row==h)return 0;var l=this.$getIndent(C.getLine(c.row));C.replace(new f(h,0,h,a-1),l)},this.$getIndent=function(C){return C.match(/^\s*/)[0]}}).call(y.prototype),r.MatchingBraceOutdent=y}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,r,v){var f=e("../../lib/oop"),y=e("../../range").Range,C=e("./fold_mode").FoldMode,h=r.FoldMode=function(p){p&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+p.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+p.end)))};f.inherits(h,C),(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(p,s,a){var c=p.getLine(a);if(this.singleLineBlockCommentRe.test(c)&&!this.startRegionRe.test(c)&&!this.tripleStarBlockCommentRe.test(c))return"";var l=this._getFoldWidgetBase(p,s,a);return!l&&this.startRegionRe.test(c)?"start":l},this.getFoldWidgetRange=function(p,s,a,c){var l=p.getLine(a);if(this.startRegionRe.test(l))return this.getCommentRegionBlock(p,l,a);var o=l.match(this.foldingStartMarker);if(o){var u=o.index;if(o[1])return this.openingBracketBlock(p,o[1],a,u);var d=p.getCommentFoldRange(a,u+o[0].length,1);return d&&!d.isMultiLine()&&(c?d=this.getSectionRange(p,a):s!="all"&&(d=null)),d}if(s!=="markbegin"){var o=l.match(this.foldingStopMarker);if(o){var u=o.index+o[0].length;return o[1]?this.closingBracketBlock(p,o[1],a,u):p.getCommentFoldRange(a,u,-1)}}},this.getSectionRange=function(p,s){var a=p.getLine(s),c=a.search(/\S/),l=s,o=a.length;s+=1;for(var u=s,d=p.getLength();++s<d;){a=p.getLine(s);var w=a.search(/\S/);if(w!==-1){if(c>w)break;var b=this.getFoldWidgetRange(p,"all",s);if(b){if(b.start.row<=l)break;if(b.isMultiLine())s=b.end.row;else if(c==w)break}u=s}}return new y(l,o,u,p.getLine(u).length)},this.getCommentRegionBlock=function(p,s,a){for(var c=s.search(/\s*$/),l=p.getLength(),o=a,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,d=1;++a<l;){s=p.getLine(a);var w=u.exec(s);if(w&&(w[1]?d--:d++,!d))break}var b=a;if(b>o)return new y(o,c,b,s.length)}}).call(h.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./json_highlight_rules").JsonHighlightRules,h=e("./matching_brace_outdent").MatchingBraceOutdent,p=e("./folding/cstyle").FoldMode,s=e("../worker/worker_client").WorkerClient,a=function(){this.HighlightRules=C,this.$outdent=new h,this.$behaviour=this.$defaultBehaviour,this.foldingRules=new p};f.inherits(a,y),(function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(c,l,o){var u=this.$getIndent(l);if(c=="start"){var d=l.match(/^.*[\{\(\[]\s*$/);d&&(u+=o)}return u},this.checkOutdent=function(c,l,o){return this.$outdent.checkOutdent(l,o)},this.autoOutdent=function(c,l,o){this.$outdent.autoOutdent(l,o)},this.createWorker=function(c){var l=new s(["ace"],"ace/mode/json_worker","JsonWorker");return l.attachToDocument(c.getDocument()),l.on("annotate",function(o){c.setAnnotations(o.data)}),l.on("terminate",function(){c.clearAnnotations()}),l},this.$id="ace/mode/json"}).call(a.prototype),r.Mode=a}),function(){ace.require(["ace/mode/json"],function(e){n&&(n.exports=e)})}()}(zp)),zp.exports}Pb();var Hp={exports:{}},Up;function Wb(){return Up||(Up=1,function(n,t){ace.define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop");e("../lib/lang");var y=e("./text_highlight_rules").TextHighlightRules,C=r.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-justify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",h=r.supportFunction="rgb|rgba|url|attr|counter|counters",p=r.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|flex-end|flex-start|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",s=r.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",a=r.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=r.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",l=r.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",o=r.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",u=function(){var d=this.createKeywordMapper({"support.function":h,"support.constant":p,"support.type":C,"support.constant.color":s,"support.constant.fonts":a},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:c},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:l},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:o},{include:"url"},{token:d,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{token:"paren.lparen",regex:"\\{"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};f.inherits(u,y),r.CssHighlightRules=u}),ace.define("ace/mode/jsdoc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=function(){this.$rules={start:[{token:["comment.doc.tag","comment.doc.text","lparen.doc"],regex:"(@(?:param|member|typedef|property|namespace|var|const|callback))(\\s*)({)",push:[{token:"lparen.doc",regex:"{",push:[{include:"doc-syntax"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"}]},{token:["rparen.doc","text.doc","variable.parameter.doc","lparen.doc","variable.parameter.doc","rparen.doc"],regex:/(})(\s*)(?:([\w=:\/\.]+)|(?:(\[)([\w=:\/\.\-\'\" ]+)(\])))/,next:"pop"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"},{include:"doc-syntax"},{defaultToken:"text.doc"}]},{token:["comment.doc.tag","text.doc","lparen.doc"],regex:"(@(?:returns?|yields|type|this|suppress|public|protected|private|package|modifies|implements|external|exception|throws|enum|define|extends))(\\s*)({)",push:[{token:"lparen.doc",regex:"{",push:[{include:"doc-syntax"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"}]},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"},{include:"doc-syntax"},{defaultToken:"text.doc"}]},{token:["comment.doc.tag","text.doc","variable.parameter.doc"],regex:'(@(?:alias|memberof|instance|module|name|lends|namespace|external|this|template|requires|param|implements|function|extends|typedef|mixes|constructor|var|memberof\\!|event|listens|exports|class|constructs|interface|emits|fires|throws|const|callback|borrows|augments))(\\s+)(\\w[\\w#.:/~"\\-]*)?'},{token:["comment.doc.tag","text.doc","variable.parameter.doc"],regex:"(@method)(\\s+)(\\w[\\w.\\(\\)]*)"},{token:"comment.doc.tag",regex:"@access\\s+(?:private|public|protected)"},{token:"comment.doc.tag",regex:"@kind\\s+(?:class|constant|event|external|file|function|member|mixin|module|namespace|typedef)"},{token:"comment.doc.tag",regex:"@\\w+(?=\\s|$)"},C.getTagRule(),{defaultToken:"comment.doc.body",caseInsensitive:!0}],"doc-syntax":[{token:"operator.doc",regex:/[|:]/},{token:"paren.doc",regex:/[\[\]]/}]},this.normalizeRules()};f.inherits(C,y),C.getTagRule=function(h){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},C.getStartRule=function(h){return{token:"comment.doc",regex:/\/\*\*(?!\/)/,next:h}},C.getEndRule=function(h){return{token:"comment.doc",regex:"\\*\\/",next:h}},r.JsDocCommentHighlightRules=C}),ace.define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/jsdoc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,r,v){function f(){var c=s.replace("\\d","\\d\\-"),l={onMatch:function(u,d,w){var b=u.charAt(1)=="/"?2:1;return b==1?(d!=this.nextState?w.unshift(this.next,this.nextState,0):w.unshift(this.next),w[2]++):b==2&&d==this.nextState&&(w[1]--,(!w[1]||w[1]<0)&&(w.shift(),w.shift())),[{type:"meta.tag.punctuation."+(b==1?"":"end-")+"tag-open.xml",value:u.slice(0,b)},{type:"meta.tag.tag-name.xml",value:u.substr(b)}]},regex:"</?(?:"+c+"|(?=>))",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(l);var o={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[o,l,{include:"reference"},{defaultToken:"string.xml"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(u,d,w){return d==w[0]&&w.shift(),u.length==2&&(w[0]==this.nextState&&w[1]--,(!w[1]||w[1]<0)&&w.splice(0,2)),this.next=w[0]||"start",[{type:this.token,value:u}]},nextState:"jsx"},o,y("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:c},{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"}]},l],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function y(c){return[{token:"comment",regex:/\/\*/,next:[h.getTagRule(),{token:"comment",regex:"\\*\\/",next:c||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[h.getTagRule(),{token:"comment",regex:"$|^",next:c||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var C=e("../lib/oop"),h=e("./jsdoc_comment_highlight_rules").JsDocCommentHighlightRules,p=e("./text_highlight_rules").TextHighlightRules,s="[a-zA-Z\\$_¡-￿][a-zA-Z\\d\\$_¡-￿]*",a=function(c){var l={"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|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|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|constructor","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},o=this.createKeywordMapper(l,"identifier"),u="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",d="\\\\(?: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]?|.)",w="(function)(\\s*)(\\*?)",b={token:["identifier","text","paren.lparen"],regex:"(\\b(?!"+Object.values(l).join("|")+"\\b)"+s+")(\\s*)(\\()"};this.$rules={no_regex:[h.getStartRule("doc-start"),y("no_regex"),b,{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:["entity.name.function","text","keyword.operator","text","storage.type","text","storage.type","text","paren.lparen"],regex:"("+s+")(\\s*)(=)(\\s*)"+w+"(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","storage.type","text","text","entity.name.function","text","paren.lparen"],regex:"(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))("+s+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","storage.type","text","paren.lparen"],regex:"("+s+")(\\s*)(:)(\\s*)"+w+"(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)"+w+"(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:`from(?=\\s*('|"))`},{token:"keyword",regex:"(?:"+u+")\\b",next:"start"},{token:"support.constant",regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|debug|time|trace|timeEnd|assert)\b/},{token:o,regex:s},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{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:"keyword.operator",regex:/=/},{token:["storage.type","text","storage.type","text","paren.lparen"],regex:w+"(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","storage.type","text","text","entity.name.function","text","paren.lparen"],regex:"(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:"prototype"},{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|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|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:s},{regex:"",token:"empty",next:"no_regex"}],start:[h.getStartRule("doc-start"),y("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"}],default_parameter:[{token:"string",regex:"'(?=.)",push:[{token:"string",regex:"'|$",next:"pop"},{include:"qstring"}]},{token:"string",regex:'"(?=.)',push:[{token:"string",regex:'"|$',next:"pop"},{include:"qqstring"}]},{token:"constant.language",regex:"null|Infinity|NaN|undefined"},{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:"punctuation.operator",regex:",",next:"function_arguments"},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],function_arguments:[y("function_arguments"),{token:"variable.parameter",regex:s},{token:"punctuation.operator",regex:","},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:d},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:d},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]},(!c||!c.noES6)&&(this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(R,M,k){if(this.next=R=="{"?this.nextState:"",R=="{"&&k.length)k.unshift("start",M);else if(R=="}"&&k.length&&(k.shift(),this.next=k.shift(),this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1))return"paren.quasi.end";return R=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:d},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]},{token:["variable.parameter","text"],regex:"("+s+")(\\s*)(?=\\=>)"},{token:"paren.lparen",regex:"(\\()(?=[^\\(]+\\s*=>)",next:"function_arguments"},{token:"variable.language",regex:"(?:(?:(?:Weak)?(?:Set|Map))|Promise)\\b"}),this.$rules.function_arguments.unshift({token:"keyword.operator",regex:"=",next:"default_parameter"},{token:"keyword.operator",regex:"\\.{3}"}),this.$rules.property.unshift({token:"support.function",regex:"(findIndex|repeat|startsWith|endsWith|includes|isSafeInteger|trunc|cbrt|log2|log10|sign|then|catch|finally|resolve|reject|race|any|all|allSettled|keys|entries|isInteger)\\b(?=\\()"},{token:"constant.language",regex:"(?:MAX_SAFE_INTEGER|MIN_SAFE_INTEGER|EPSILON)\\b"}),(!c||c.jsx!=0)&&f.call(this)),this.embedRules(h,"doc-",[h.getEndRule("no_regex")]),this.normalizeRules()};C.inherits(a,p),r.JavaScriptHighlightRules=a}),ace.define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=function(h){var p="[_:a-zA-ZÀ-￿][-_:.a-zA-Z0-9À-￿]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+p+")",next:"processing_instruction"},{token:"comment.start.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"</"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],processing_instruction:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:p},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+p+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.end.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(</))((?:"+p+":)?"+p+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:p},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]},this.constructor===C&&this.normalizeRules()};(function(){this.embedTagRules=function(h,p,s){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+s+".tag-name.xml"],regex:"(<)("+s+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:p+"start"}]}),this.$rules[s+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(a,c,l){return l.splice(0),this.token}}],this.embedRules(h,p,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+s+".tag-name.xml"],regex:"(</)("+s+"(?=\\s|>|$))",next:s+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(y.prototype),f.inherits(C,y),r.XmlHighlightRules=C}),ace.define("ace/mode/html_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/css_highlight_rules","ace/mode/javascript_highlight_rules","ace/mode/xml_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/lang"),C=e("./css_highlight_rules").CssHighlightRules,h=e("./javascript_highlight_rules").JavaScriptHighlightRules,p=e("./xml_highlight_rules").XmlHighlightRules,s=y.createMap({a:"anchor",button:"form",form:"form",img:"image",input:"form",label:"form",option:"form",script:"script",select:"form",textarea:"form",style:"style",table:"table",tbody:"table",td:"table",tfoot:"table",th:"table",tr:"table"}),a=function(){p.call(this),this.addRules({attributes:[{include:"tag_whitespace"},{token:"entity.other.attribute-name.xml",regex:"[-_a-zA-Z0-9:.]+"},{token:"keyword.operator.attribute-equals.xml",regex:"=",push:[{include:"tag_whitespace"},{token:"string.unquoted.attribute-value.html",regex:"[^<>='\"`\\s]+",next:"pop"},{token:"empty",regex:"",next:"pop"}]},{include:"attribute_value"}],tag:[{token:function(c,l){var o=s[l];return["meta.tag.punctuation."+(c=="<"?"":"end-")+"tag-open.xml","meta.tag"+(o?"."+o:"")+".tag-name.xml"]},regex:"(</?)([-_a-zA-Z0-9:.]+)",next:"tag_stuff"}],tag_stuff:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}),this.embedTagRules(C,"css-","style"),this.embedTagRules(new h({jsx:!1}).getRules(),"js-","script"),this.constructor===a&&this.normalizeRules()};f.inherits(a,p),r.HtmlHighlightRules=a}),ace.define("ace/mode/markdown_highlight_rules",["require","exports","module","ace/config","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules","ace/mode/html_highlight_rules"],function(e,r,v){var f=e("../config").$modes,y=e("../lib/oop"),C=e("../lib/lang"),h=e("./text_highlight_rules").TextHighlightRules,p=e("./html_highlight_rules").HtmlHighlightRules,s=function(c){return"(?:[^"+C.escapeRegExp(c)+"\\\\]|\\\\.)*"},a=function(){p.call(this);var c={token:"support.function",regex:/^\s*(```+[^`]*|~~~+[^~]*)$/,onMatch:function(o,u,d,w){var b=o.match(/^(\s*)([`~]+)(.*)/),R=/[\w-]+|$/.exec(b[3])[0];return f[R]||(R=""),d.unshift("githubblock",[],[b[1],b[2],R],u),this.token},next:"githubblock"},l=[{token:"support.function",regex:".*",onMatch:function(o,u,d,w){var b=d[1],R=d[2][0],M=d[2][1],k=d[2][2],x=/^(\s*)(`+|~+)\s*$/.exec(o);if(x&&x[1].length<R.length+3&&x[2].length>=M.length&&x[2][0]==M[0])return d.splice(0,3),this.next=d.shift(),this.token;if(this.next="",k&&f[k]){var L=f[k].getTokenizer().getLineTokens(o,b.slice(0));return d[1]=L.state,L.tokens}return this.token}}];this.$rules.start.unshift({token:"empty_line",regex:"^$",next:"allowBlock"},{token:"markup.heading.1",regex:"^=+(?=\\s*$)"},{token:"markup.heading.2",regex:"^\\-+(?=\\s*$)"},{token:function(o){return"markup.heading."+o.length},regex:/^#{1,6}(?=\s|$)/,next:"header"},c,{token:"string.blockquote",regex:"^\\s*>\\s*(?:[*+-]|\\d+\\.)?\\s+",next:"blockquote"},{token:"constant",regex:"^ {0,3}(?:(?:\\* ?){3,}|(?:\\- ?){3,}|(?:\\_ ?){3,})\\s*$",next:"allowBlock"},{token:"markup.list",regex:"^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",next:"listblock-start"},{include:"basic"}),this.addRules({basic:[{token:"constant.language.escape",regex:/\\[\\`*_{}\[\]()#+\-.!]/},{token:"support.function",regex:"(`+)(.*?[^`])(\\1)"},{token:["text","constant","text","url","string","text"],regex:'^([ ]{0,3}\\[)([^\\]]+)(\\]:\\s*)([^ ]+)(\\s*(?:["][^"]+["])?(\\s*))$'},{token:["text","string","text","constant","text"],regex:"(\\[)("+s("]")+")(\\]\\s*\\[)("+s("]")+")(\\])"},{token:["text","string","text","markup.underline","string","text"],regex:"(\\!?\\[)("+s("]")+')(\\]\\()((?:[^\\)\\s\\\\]|\\\\.|\\s(?=[^"]))*)(\\s*"'+s('"')+'"\\s*)?(\\))'},{token:"string.strong",regex:"([*]{2}|[_]{2}(?=\\S))(.*?\\S[*_]*)(\\1)"},{token:"string.emphasis",regex:"([*]|[_](?=\\S))(.*?\\S[*_]*)(\\1)"},{token:["text","url","text"],regex:`(<)((?:https?|ftp|dict):[^'">\\s]+|(?:mailto:)?[-.\\w]+\\@[-a-z0-9]+(?:\\.[-a-z0-9]+)*\\.[a-z]+)(>)`}],allowBlock:[{token:"support.function",regex:"^ {4}.+",next:"allowBlock"},{token:"empty_line",regex:"^$",next:"allowBlock"},{token:"empty",regex:"",next:"start"}],header:[{regex:"$",next:"start"},{include:"basic"},{defaultToken:"heading"}],"listblock-start":[{token:"support.variable",regex:/(?:\[[ x]\])?/,next:"listblock"}],listblock:[{token:"empty_line",regex:"^$",next:"start"},{token:"markup.list",regex:"^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",next:"listblock-start"},{include:"basic",noEscape:!0},c,{defaultToken:"list"}],blockquote:[{token:"empty_line",regex:"^\\s*$",next:"start"},{token:"string.blockquote",regex:"^\\s*>\\s*(?:[*+-]|\\d+\\.)?\\s+",next:"blockquote"},{include:"basic",noEscape:!0},{defaultToken:"string.blockquote"}],githubblock:l}),this.normalizeRules()};y.inherits(a,h),r.MarkdownHighlightRules=a}),ace.define("ace/mode/folding/markdown",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e,r,v){var f=e("../../lib/oop"),y=e("./fold_mode").FoldMode,C=e("../../range").Range,h=r.FoldMode=function(){};f.inherits(h,y),(function(){this.foldingStartMarker=/^(?:[=-]+\s*$|#{1,6} |`{3})/,this.getFoldWidget=function(p,s,a){var c=p.getLine(a);return this.foldingStartMarker.test(c)?c[0]=="`"&&p.bgTokenizer.getState(a)=="start"?"end":"start":""},this.getFoldWidgetRange=function(p,s,a){function c(O){return R=p.getTokens(O)[0],R&&R.type.lastIndexOf(M,0)===0}function l(){var O=R.value[0];return O=="="?6:O=="-"?5:7-R.value.search(/[^#]|$/)}var o=p.getLine(a),u=o.length,d=p.getLength(),w=a,b=a;if(o.match(this.foldingStartMarker)){if(o[0]=="`"){if(p.bgTokenizer.getState(a)!=="start"){for(;++a<d&&(o=p.getLine(a),!(o[0]=="`"&o.substring(0,3)=="```")););return new C(w,u,a,0)}for(;a-- >0&&(o=p.getLine(a),!(o[0]=="`"&o.substring(0,3)=="```")););return new C(a,o.length,w,0)}var R,M="markup.heading";if(c(a)){for(var k=l();++a<d;)if(c(a)){var x=l();if(x>=k)break}if(b=a-(!R||["=","-"].indexOf(R.value[0])==-1?1:2),b>w)for(;b>w&&/^\s*$/.test(p.getLine(b));)b--;if(b>w){var L=p.getLine(b).length;return new C(w,u,b,L)}}}}}).call(h.prototype)}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,r,v){var f=e("../range").Range,y=function(){};(function(){this.checkOutdent=function(C,h){return/^\s+$/.test(C)?/^\s*\}/.test(h):!1},this.autoOutdent=function(C,h){var p=C.getLine(h),s=p.match(/^(\s*\})/);if(!s)return 0;var a=s[1].length,c=C.findMatchingBracket({row:h,column:a});if(!c||c.row==h)return 0;var l=this.$getIndent(C.getLine(c.row));C.replace(new f(h,0,h,a-1),l)},this.$getIndent=function(C){return C.match(/^\s*/)[0]}}).call(y.prototype),r.MatchingBraceOutdent=y}),ace.define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator"],function(e,r,v){function f(s,a){return s&&s.type.lastIndexOf(a+".xml")>-1}var y=e("../../lib/oop"),C=e("../behaviour").Behaviour,h=e("../../token_iterator").TokenIterator,p=function(){this.add("string_dquotes","insertion",function(s,a,c,l,o){if(o=='"'||o=="'"){var u=o,d=l.doc.getTextRange(c.getSelectionRange());if(d!==""&&d!=="'"&&d!='"'&&c.getWrapBehavioursEnabled())return{text:u+d+u,selection:!1};var w=c.getCursorPosition(),b=l.doc.getLine(w.row),R=b.substring(w.column,w.column+1),M=new h(l,w.row,w.column),k=M.getCurrentToken();if(R==u&&(f(k,"attribute-value")||f(k,"string")))return{text:"",selection:[1,1]};if(k||(k=M.stepBackward()),!k)return;for(;f(k,"tag-whitespace")||f(k,"whitespace");)k=M.stepBackward();var x=!R||R.match(/\s/);if(f(k,"attribute-equals")&&(x||R==">")||f(k,"decl-attribute-equals")&&(x||R=="?"))return{text:u+u,selection:[1,1]}}}),this.add("string_dquotes","deletion",function(s,a,c,l,o){var u=l.doc.getTextRange(o);if(!o.isMultiLine()&&(u=='"'||u=="'")){var d=l.doc.getLine(o.start.row),w=d.substring(o.start.column+1,o.start.column+2);if(w==u)return o.end.column++,o}}),this.add("autoclosing","insertion",function(s,a,c,l,o){if(o==">"){var u=c.getSelectionRange().start,d=new h(l,u.row,u.column),w=d.getCurrentToken()||d.stepBackward();if(!w||!(f(w,"tag-name")||f(w,"tag-whitespace")||f(w,"attribute-name")||f(w,"attribute-equals")||f(w,"attribute-value"))||f(w,"reference.attribute-value"))return;if(f(w,"attribute-value")){var b=d.getCurrentTokenColumn()+w.value.length;if(u.column<b)return;if(u.column==b){var R=d.stepForward();if(R&&f(R,"attribute-value"))return;d.stepBackward()}}if(/^\s*>/.test(l.getLine(u.row).slice(u.column)))return;for(;!f(w,"tag-name");)if(w=d.stepBackward(),w.value=="<"){w=d.stepForward();break}var M=d.getCurrentTokenRow(),k=d.getCurrentTokenColumn();if(f(d.stepBackward(),"end-tag-open"))return;var x=w.value;return M==u.row&&(x=x.substring(0,u.column-k)),this.voidElements&&this.voidElements.hasOwnProperty(x.toLowerCase())?void 0:{text:"></"+x+">",selection:[1,1]}}}),this.add("autoindent","insertion",function(s,a,c,l,o){if(o==`
988
+ `){var u=c.getCursorPosition(),d=l.getLine(u.row),w=new h(l,u.row,u.column),b=w.getCurrentToken();if(f(b,"")&&b.type.indexOf("tag-close")!==-1){if(b.value=="/>")return;for(;b&&b.type.indexOf("tag-name")===-1;)b=w.stepBackward();if(!b)return;var R=b.value,M=w.getCurrentTokenRow();if(b=w.stepBackward(),!b||b.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[R]||!this.voidElements){var k=l.getTokenAt(u.row,u.column+1),d=l.getLine(M),x=this.$getIndent(d),L=x+l.getTabString();return k&&k.value==="</"?{text:`
989
+ `+L+`
990
+ `+x,selection:[1,L.length,1,L.length]}:{text:`
991
+ `+L}}}}})};y.inherits(p,C),r.XmlBehaviour=p}),ace.define("ace/mode/behaviour/javascript",["require","exports","module","ace/lib/oop","ace/token_iterator","ace/mode/behaviour/cstyle","ace/mode/behaviour/xml"],function(e,r,v){var f=e("../../lib/oop"),y=e("../../token_iterator").TokenIterator,C=e("../behaviour/cstyle").CstyleBehaviour,h=e("../behaviour/xml").XmlBehaviour,p=function(){var s=new h({closeCurlyBraces:!0}).getBehaviours();this.addBehaviours(s),this.inherit(C),this.add("autoclosing-fragment","insertion",function(a,c,l,o,u){if(u==">"){var d=l.getSelectionRange().start,w=new y(o,d.row,d.column),b=w.getCurrentToken()||w.stepBackward();if(!b)return;if(b.value=="<")return{text:"></>",selection:[1,1]}}})};f.inherits(p,C),r.JavaScriptBehaviour=p}),ace.define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,r,v){function f(a,c){return a&&a.type&&a.type.lastIndexOf(c+".xml")>-1}var y=e("../../lib/oop"),C=e("../../range").Range,h=e("./fold_mode").FoldMode,p=r.FoldMode=function(a,c){h.call(this),this.voidElements=a||{},this.optionalEndTags=y.mixin({},this.voidElements),c&&y.mixin(this.optionalEndTags,c)};y.inherits(p,h);var s=function(){this.tagName="",this.closing=!1,this.selfClosing=!1,this.start={row:0,column:0},this.end={row:0,column:0}};(function(){this.getFoldWidget=function(a,c,l){var o=this._getFirstTagInLine(a,l);return o?o.closing||!o.tagName&&o.selfClosing?c==="markbeginend"?"end":"":!o.tagName||o.selfClosing||this.voidElements.hasOwnProperty(o.tagName.toLowerCase())||this._findEndTagInLine(a,l,o.tagName,o.end.column)?"":"start":this.getCommentFoldWidget(a,l)},this.getCommentFoldWidget=function(a,c){return/comment/.test(a.getState(c))&&/<!-/.test(a.getLine(c))?"start":""},this._getFirstTagInLine=function(a,c){for(var l=a.getTokens(c),o=new s,u=0;u<l.length;u++){var d=l[u];if(f(d,"tag-open")){if(o.end.column=o.start.column+d.value.length,o.closing=f(d,"end-tag-open"),d=l[++u],!d)return null;if(o.tagName=d.value,d.value===""){if(d=l[++u],!d)return null;o.tagName=d.value}for(o.end.column+=d.value.length,u++;u<l.length;u++)if(d=l[u],o.end.column+=d.value.length,f(d,"tag-close")){o.selfClosing=d.value=="/>";break}return o}if(f(d,"tag-close"))return o.selfClosing=d.value=="/>",o;o.start.column+=d.value.length}return null},this._findEndTagInLine=function(a,c,l,o){for(var u=a.getTokens(c),d=0,w=0;w<u.length;w++){var b=u[w];if(d+=b.value.length,!(d<o-1)&&f(b,"end-tag-open")&&(b=u[w+1],f(b,"tag-name")&&b.value===""&&(b=u[w+2]),b&&b.value==l))return!0}return!1},this.getFoldWidgetRange=function(a,c,l){var o=this._getFirstTagInLine(a,l);if(!o)return this.getCommentFoldWidget(a,l)&&a.getCommentFoldRange(l,a.getLine(l).length);var u=a.getMatchingTags({row:l,column:0});if(u)return new C(u.openTag.end.row,u.openTag.end.column,u.closeTag.start.row,u.closeTag.start.column)}}).call(p.prototype)}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,r,v){var f=e("../../lib/oop"),y=e("../../range").Range,C=e("./fold_mode").FoldMode,h=r.FoldMode=function(p){p&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+p.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+p.end)))};f.inherits(h,C),(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(p,s,a){var c=p.getLine(a);if(this.singleLineBlockCommentRe.test(c)&&!this.startRegionRe.test(c)&&!this.tripleStarBlockCommentRe.test(c))return"";var l=this._getFoldWidgetBase(p,s,a);return!l&&this.startRegionRe.test(c)?"start":l},this.getFoldWidgetRange=function(p,s,a,c){var l=p.getLine(a);if(this.startRegionRe.test(l))return this.getCommentRegionBlock(p,l,a);var o=l.match(this.foldingStartMarker);if(o){var u=o.index;if(o[1])return this.openingBracketBlock(p,o[1],a,u);var d=p.getCommentFoldRange(a,u+o[0].length,1);return d&&!d.isMultiLine()&&(c?d=this.getSectionRange(p,a):s!="all"&&(d=null)),d}if(s!=="markbegin"){var o=l.match(this.foldingStopMarker);if(o){var u=o.index+o[0].length;return o[1]?this.closingBracketBlock(p,o[1],a,u):p.getCommentFoldRange(a,u,-1)}}},this.getSectionRange=function(p,s){var a=p.getLine(s),c=a.search(/\S/),l=s,o=a.length;s+=1;for(var u=s,d=p.getLength();++s<d;){a=p.getLine(s);var w=a.search(/\S/);if(w!==-1){if(c>w)break;var b=this.getFoldWidgetRange(p,"all",s);if(b){if(b.start.row<=l)break;if(b.isMultiLine())s=b.end.row;else if(c==w)break}u=s}}return new y(l,o,u,p.getLine(u).length)},this.getCommentRegionBlock=function(p,s,a){for(var c=s.search(/\s*$/),l=p.getLength(),o=a,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,d=1;++a<l;){s=p.getLine(a);var w=u.exec(s);if(w&&(w[1]?d--:d++,!d))break}var b=a;if(b>o)return new y(o,c,b,s.length)}}).call(h.prototype)}),ace.define("ace/mode/folding/javascript",["require","exports","module","ace/lib/oop","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,r,v){var f=e("../../lib/oop"),y=e("./xml").FoldMode,C=e("./cstyle").FoldMode,h=r.FoldMode=function(p){p&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+p.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+p.end))),this.xmlFoldMode=new y};f.inherits(h,C),(function(){this.getFoldWidgetRangeBase=this.getFoldWidgetRange,this.getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(p,s,a){var c=this.getFoldWidgetBase(p,s,a);return c||this.xmlFoldMode.getFoldWidget(p,s,a)},this.getFoldWidgetRange=function(p,s,a,c){var l=this.getFoldWidgetRangeBase(p,s,a,c);return l||this.xmlFoldMode.getFoldWidgetRange(p,s,a)}}).call(h.prototype)}),ace.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/javascript","ace/mode/folding/javascript"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./javascript_highlight_rules").JavaScriptHighlightRules,h=e("./matching_brace_outdent").MatchingBraceOutdent,p=e("../worker/worker_client").WorkerClient,s=e("./behaviour/javascript").JavaScriptBehaviour,a=e("./folding/javascript").FoldMode,c=function(){this.HighlightRules=C,this.$outdent=new h,this.$behaviour=new s,this.foldingRules=new a};f.inherits(c,y),(function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.$pairQuotesAfter={"`":/\w/},this.getNextLineIndent=function(l,o,u){var d=this.$getIndent(o),w=this.getTokenizer().getLineTokens(o,l),b=w.tokens,R=w.state;if(b.length&&b[b.length-1].type=="comment")return d;if(l=="start"||l=="no_regex"){var M=o.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);M&&(d+=u)}else if(l=="doc-start"&&(R=="start"||R=="no_regex"))return"";return d},this.checkOutdent=function(l,o,u){return this.$outdent.checkOutdent(o,u)},this.autoOutdent=function(l,o,u){this.$outdent.autoOutdent(o,u)},this.createWorker=function(l){var o=new p(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return o.attachToDocument(l.getDocument()),o.on("annotate",function(u){l.setAnnotations(u.data)}),o.on("terminate",function(){l.clearAnnotations()}),o},this.$id="ace/mode/javascript",this.snippetFileId="ace/snippets/javascript"}).call(c.prototype),r.Mode=c}),ace.define("ace/mode/css_completions",["require","exports","module"],function(e,r,v){var f={background:{"#$0":1},"background-color":{"#$0":1,transparent:1,fixed:1},"background-image":{"url('/$0')":1},"background-repeat":{repeat:1,"repeat-x":1,"repeat-y":1,"no-repeat":1,inherit:1},"background-position":{bottom:2,center:2,left:2,right:2,top:2,inherit:2},"background-attachment":{scroll:1,fixed:1},"background-size":{cover:1,contain:1},"background-clip":{"border-box":1,"padding-box":1,"content-box":1},"background-origin":{"border-box":1,"padding-box":1,"content-box":1},border:{"solid $0":1,"dashed $0":1,"dotted $0":1,"#$0":1},"border-color":{"#$0":1},"border-style":{solid:2,dashed:2,dotted:2,double:2,groove:2,hidden:2,inherit:2,inset:2,none:2,outset:2,ridged:2},"border-collapse":{collapse:1,separate:1},bottom:{px:1,em:1,"%":1},clear:{left:1,right:1,both:1,none:1},color:{"#$0":1,"rgb(#$00,0,0)":1},cursor:{default:1,pointer:1,move:1,text:1,wait:1,help:1,progress:1,"n-resize":1,"ne-resize":1,"e-resize":1,"se-resize":1,"s-resize":1,"sw-resize":1,"w-resize":1,"nw-resize":1},display:{none:1,block:1,inline:1,"inline-block":1,"table-cell":1},"empty-cells":{show:1,hide:1},float:{left:1,right:1,none:1},"font-family":{Arial:2,"Comic Sans MS":2,Consolas:2,"Courier New":2,Courier:2,Georgia:2,Monospace:2,"Sans-Serif":2,"Segoe UI":2,Tahoma:2,"Times New Roman":2,"Trebuchet MS":2,Verdana:1},"font-size":{px:1,em:1,"%":1},"font-weight":{bold:1,normal:1},"font-style":{italic:1,normal:1},"font-variant":{normal:1,"small-caps":1},height:{px:1,em:1,"%":1},left:{px:1,em:1,"%":1},"letter-spacing":{normal:1},"line-height":{normal:1},"list-style-type":{none:1,disc:1,circle:1,square:1,decimal:1,"decimal-leading-zero":1,"lower-roman":1,"upper-roman":1,"lower-greek":1,"lower-latin":1,"upper-latin":1,georgian:1,"lower-alpha":1,"upper-alpha":1},margin:{px:1,em:1,"%":1},"margin-right":{px:1,em:1,"%":1},"margin-left":{px:1,em:1,"%":1},"margin-top":{px:1,em:1,"%":1},"margin-bottom":{px:1,em:1,"%":1},"max-height":{px:1,em:1,"%":1},"max-width":{px:1,em:1,"%":1},"min-height":{px:1,em:1,"%":1},"min-width":{px:1,em:1,"%":1},overflow:{hidden:1,visible:1,auto:1,scroll:1},"overflow-x":{hidden:1,visible:1,auto:1,scroll:1},"overflow-y":{hidden:1,visible:1,auto:1,scroll:1},padding:{px:1,em:1,"%":1},"padding-top":{px:1,em:1,"%":1},"padding-right":{px:1,em:1,"%":1},"padding-bottom":{px:1,em:1,"%":1},"padding-left":{px:1,em:1,"%":1},"page-break-after":{auto:1,always:1,avoid:1,left:1,right:1},"page-break-before":{auto:1,always:1,avoid:1,left:1,right:1},position:{absolute:1,relative:1,fixed:1,static:1},right:{px:1,em:1,"%":1},"table-layout":{fixed:1,auto:1},"text-decoration":{none:1,underline:1,"line-through":1,blink:1},"text-align":{left:1,right:1,center:1,justify:1},"text-transform":{capitalize:1,uppercase:1,lowercase:1,none:1},top:{px:1,em:1,"%":1},"vertical-align":{top:1,bottom:1},visibility:{hidden:1,visible:1},"white-space":{nowrap:1,normal:1,pre:1,"pre-line":1,"pre-wrap":1},width:{px:1,em:1,"%":1},"word-spacing":{normal:1},filter:{"alpha(opacity=$0100)":1},"text-shadow":{"$02px 2px 2px #777":1},"text-overflow":{"ellipsis-word":1,clip:1,ellipsis:1},"-moz-border-radius":1,"-moz-border-radius-topright":1,"-moz-border-radius-bottomright":1,"-moz-border-radius-topleft":1,"-moz-border-radius-bottomleft":1,"-webkit-border-radius":1,"-webkit-border-top-right-radius":1,"-webkit-border-top-left-radius":1,"-webkit-border-bottom-right-radius":1,"-webkit-border-bottom-left-radius":1,"-moz-box-shadow":1,"-webkit-box-shadow":1,transform:{"rotate($00deg)":1,"skew($00deg)":1},"-moz-transform":{"rotate($00deg)":1,"skew($00deg)":1},"-webkit-transform":{"rotate($00deg)":1,"skew($00deg)":1}},y=function(){};(function(){this.completionsDefined=!1,this.defineCompletions=function(){if(document){var C=document.createElement("c").style;for(var h in C)if(typeof C[h]=="string"){var p=h.replace(/[A-Z]/g,function(s){return"-"+s.toLowerCase()});f.hasOwnProperty(p)||(f[p]=1)}}this.completionsDefined=!0},this.getCompletions=function(C,h,p,s){if(this.completionsDefined||this.defineCompletions(),C==="ruleset"||h.$mode.$id=="ace/mode/scss"){var a=h.getLine(p.row).substr(0,p.column),c=/\([^)]*$/.test(a);return c&&(a=a.substr(a.lastIndexOf("(")+1)),/:[^;]+$/.test(a)?this.getPropertyValueCompletions(C,h,p,s):this.getPropertyCompletions(C,h,p,s,c)}return[]},this.getPropertyCompletions=function(C,h,p,s,a){a=a||!1;var c=Object.keys(f);return c.map(function(l){return{caption:l,snippet:l+": $0"+(a?"":";"),meta:"property",score:1e6}})},this.getPropertyValueCompletions=function(C,h,p,s){var a=h.getLine(p.row).substr(0,p.column),c=(/([\w\-]+):[^:]*$/.exec(a)||{})[1];if(!c)return[];var l=[];return c in f&&typeof f[c]=="object"&&(l=Object.keys(f[c])),l.map(function(o){return{caption:o,snippet:o,meta:"property value",score:1e6}})}}).call(y.prototype),r.CssCompletions=y}),ace.define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,r,v){var f=e("../../lib/oop");e("../behaviour").Behaviour;var y=e("./cstyle").CstyleBehaviour,C=e("../../token_iterator").TokenIterator,h=function(){this.inherit(y),this.add("colon","insertion",function(p,s,a,c,l){if(l===":"&&a.selection.isEmpty()){var o=a.getCursorPosition(),u=new C(c,o.row,o.column),d=u.getCurrentToken();if(d&&d.value.match(/\s+/)&&(d=u.stepBackward()),d&&d.type==="support.type"){var w=c.doc.getLine(o.row),b=w.substring(o.column,o.column+1);if(b===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(w.substring(o.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(p,s,a,c,l){var o=c.doc.getTextRange(l);if(!l.isMultiLine()&&o===":"){var u=a.getCursorPosition(),d=new C(c,u.row,u.column),w=d.getCurrentToken();if(w&&w.value.match(/\s+/)&&(w=d.stepBackward()),w&&w.type==="support.type"){var b=c.doc.getLine(l.start.row),R=b.substring(l.end.column,l.end.column+1);if(R===";")return l.end.column++,l}}}),this.add("semicolon","insertion",function(p,s,a,c,l){if(l===";"&&a.selection.isEmpty()){var o=a.getCursorPosition(),u=c.doc.getLine(o.row),d=u.substring(o.column,o.column+1);if(d===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(p,s,a,c,l){if(l==="!"&&a.selection.isEmpty()){var o=a.getCursorPosition(),u=c.doc.getLine(o.row);if(/^\s*(;|}|$)/.test(u.substring(o.column)))return{text:"!important",selection:[10,10]}}})};f.inherits(h,y),r.CssBehaviour=h}),ace.define("ace/mode/css",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/css_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/css_completions","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./css_highlight_rules").CssHighlightRules,h=e("./matching_brace_outdent").MatchingBraceOutdent,p=e("../worker/worker_client").WorkerClient,s=e("./css_completions").CssCompletions,a=e("./behaviour/css").CssBehaviour,c=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=C,this.$outdent=new h,this.$behaviour=new a,this.$completer=new s,this.foldingRules=new c};f.inherits(l,y),(function(){this.foldingRules="cStyle",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(o,u,d){var w=this.$getIndent(u),b=this.getTokenizer().getLineTokens(u,o).tokens;if(b.length&&b[b.length-1].type=="comment")return w;var R=u.match(/^.*\{\s*$/);return R&&(w+=d),w},this.checkOutdent=function(o,u,d){return this.$outdent.checkOutdent(u,d)},this.autoOutdent=function(o,u,d){this.$outdent.autoOutdent(u,d)},this.getCompletions=function(o,u,d,w){return this.$completer.getCompletions(o,u,d,w)},this.createWorker=function(o){var u=new p(["ace"],"ace/mode/css_worker","Worker");return u.attachToDocument(o.getDocument()),u.on("annotate",function(d){o.setAnnotations(d.data)}),u.on("terminate",function(){o.clearAnnotations()}),u},this.$id="ace/mode/css",this.snippetFileId="ace/snippets/css"}).call(l.prototype),r.Mode=l}),ace.define("ace/mode/folding/mixed",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,r,v){var f=e("../../lib/oop"),y=e("./fold_mode").FoldMode,C=r.FoldMode=function(h,p){this.defaultMode=h,this.subModes=p};f.inherits(C,y),(function(){this.$getMode=function(h){typeof h!="string"&&(h=h[0]);for(var p in this.subModes)if(h.indexOf(p)===0)return this.subModes[p];return null},this.$tryMode=function(h,p,s,a){var c=this.$getMode(h);return c?c.getFoldWidget(p,s,a):""},this.getFoldWidget=function(h,p,s){return this.$tryMode(h.getState(s-1),h,p,s)||this.$tryMode(h.getState(s),h,p,s)||this.defaultMode.getFoldWidget(h,p,s)},this.getFoldWidgetRange=function(h,p,s){var a=this.$getMode(h.getState(s-1));return(!a||!a.getFoldWidget(h,p,s))&&(a=this.$getMode(h.getState(s))),(!a||!a.getFoldWidget(h,p,s))&&(a=this.defaultMode),a.getFoldWidgetRange(h,p,s)}}).call(C.prototype)}),ace.define("ace/mode/folding/html",["require","exports","module","ace/lib/oop","ace/mode/folding/mixed","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,r,v){var f=e("../../lib/oop"),y=e("./mixed").FoldMode,C=e("./xml").FoldMode,h=e("./cstyle").FoldMode,p=r.FoldMode=function(s,a){y.call(this,new C(s,a),{"js-":new h,"css-":new h})};f.inherits(p,y)}),ace.define("ace/mode/html_completions",["require","exports","module","ace/token_iterator"],function(e,r,v){function f(u,d){return u.type.lastIndexOf(d+".xml")>-1}function y(u,d){for(var w=new h(u,d.row,d.column),b=w.getCurrentToken();b&&!f(b,"tag-name");)b=w.stepBackward();if(b)return b.value}function C(u,d){for(var w=new h(u,d.row,d.column),b=w.getCurrentToken();b&&!f(b,"attribute-name");)b=w.stepBackward();if(b)return b.value}var h=e("../token_iterator").TokenIterator,p=["accesskey","class","contenteditable","contextmenu","dir","draggable","dropzone","hidden","id","inert","itemid","itemprop","itemref","itemscope","itemtype","lang","spellcheck","style","tabindex","title","translate"],s=["onabort","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextmenu","oncuechange","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onload","onloadeddata","onloadedmetadata","onloadstart","onmousedown","onmousemove","onmouseout","onmouseover","onmouseup","onmousewheel","onpause","onplay","onplaying","onprogress","onratechange","onreset","onscroll","onseeked","onseeking","onselect","onshow","onstalled","onsubmit","onsuspend","ontimeupdate","onvolumechange","onwaiting"],a=p.concat(s),c={a:{href:1,target:{_blank:1,top:1},ping:1,rel:{nofollow:1,alternate:1,author:1,bookmark:1,help:1,license:1,next:1,noreferrer:1,prefetch:1,prev:1,search:1,tag:1},media:1,hreflang:1,type:1},abbr:{},address:{},area:{shape:1,coords:1,href:1,hreflang:1,alt:1,target:1,media:1,rel:1,ping:1,type:1},article:{pubdate:1},aside:{},audio:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1},controls:{controls:1},muted:{muted:1},preload:{auto:1,metadata:1,none:1}},b:{},base:{href:1,target:1},bdi:{},bdo:{},blockquote:{cite:1},body:{onafterprint:1,onbeforeprint:1,onbeforeunload:1,onhashchange:1,onmessage:1,onoffline:1,onpopstate:1,onredo:1,onresize:1,onstorage:1,onundo:1,onunload:1},br:{},button:{autofocus:1,disabled:{disabled:1},form:1,formaction:1,formenctype:1,formmethod:1,formnovalidate:1,formtarget:1,name:1,value:1,type:{button:1,submit:1}},canvas:{width:1,height:1},caption:{},cite:{},code:{},col:{span:1},colgroup:{span:1},command:{type:1,label:1,icon:1,disabled:1,checked:1,radiogroup:1,command:1},data:{},datalist:{},dd:{},del:{cite:1,datetime:1},details:{open:1},dfn:{},dialog:{open:1},div:{},dl:{},dt:{},em:{},embed:{src:1,height:1,width:1,type:1},fieldset:{disabled:1,form:1,name:1},figcaption:{},figure:{},footer:{},form:{"accept-charset":1,action:1,autocomplete:1,enctype:{"multipart/form-data":1,"application/x-www-form-urlencoded":1},method:{get:1,post:1},name:1,novalidate:1,target:{_blank:1,top:1}},h1:{},h2:{},h3:{},h4:{},h5:{},h6:{},head:{},header:{},hr:{},html:{manifest:1},i:{},iframe:{name:1,src:1,height:1,width:1,sandbox:{"allow-same-origin":1,"allow-top-navigation":1,"allow-forms":1,"allow-scripts":1},seamless:{seamless:1}},img:{alt:1,src:1,height:1,width:1,usemap:1,ismap:1},input:{type:{text:1,password:1,hidden:1,checkbox:1,submit:1,radio:1,file:1,button:1,reset:1,image:31,color:1,date:1,datetime:1,"datetime-local":1,email:1,month:1,number:1,range:1,search:1,tel:1,time:1,url:1,week:1},accept:1,alt:1,autocomplete:{on:1,off:1},autofocus:{autofocus:1},checked:{checked:1},disabled:{disabled:1},form:1,formaction:1,formenctype:{"application/x-www-form-urlencoded":1,"multipart/form-data":1,"text/plain":1},formmethod:{get:1,post:1},formnovalidate:{formnovalidate:1},formtarget:{_blank:1,_self:1,_parent:1,_top:1},height:1,list:1,max:1,maxlength:1,min:1,multiple:{multiple:1},name:1,pattern:1,placeholder:1,readonly:{readonly:1},required:{required:1},size:1,src:1,step:1,width:1,files:1,value:1},ins:{cite:1,datetime:1},kbd:{},keygen:{autofocus:1,challenge:{challenge:1},disabled:{disabled:1},form:1,keytype:{rsa:1,dsa:1,ec:1},name:1},label:{form:1,for:1},legend:{},li:{value:1},link:{href:1,hreflang:1,rel:{stylesheet:1,icon:1},media:{all:1,screen:1,print:1},type:{"text/css":1,"image/png":1,"image/jpeg":1,"image/gif":1},sizes:1},main:{},map:{name:1},mark:{},math:{},menu:{type:1,label:1},meta:{"http-equiv":{"content-type":1},name:{description:1,keywords:1},content:{"text/html; charset=UTF-8":1},charset:1},meter:{value:1,min:1,max:1,low:1,high:1,optimum:1},nav:{},noscript:{href:1},object:{param:1,data:1,type:1,height:1,width:1,usemap:1,name:1,form:1,classid:1},ol:{start:1,reversed:1},optgroup:{disabled:1,label:1},option:{disabled:1,selected:1,label:1,value:1},output:{for:1,form:1,name:1},p:{},param:{name:1,value:1},pre:{},progress:{value:1,max:1},q:{cite:1},rp:{},rt:{},ruby:{},s:{},samp:{},script:{charset:1,type:{"text/javascript":1},src:1,defer:1,async:1},select:{autofocus:1,disabled:1,form:1,multiple:{multiple:1},name:1,size:1,readonly:{readonly:1}},small:{},source:{src:1,type:1,media:1},span:{},strong:{},style:{type:1,media:{all:1,screen:1,print:1},scoped:1},sub:{},sup:{},svg:{},table:{summary:1},tbody:{},td:{headers:1,rowspan:1,colspan:1},textarea:{autofocus:{autofocus:1},disabled:{disabled:1},form:1,maxlength:1,name:1,placeholder:1,readonly:{readonly:1},required:{required:1},rows:1,cols:1,wrap:{on:1,off:1,hard:1,soft:1}},tfoot:{},th:{headers:1,rowspan:1,colspan:1,scope:1},thead:{},time:{datetime:1},title:{},tr:{},track:{kind:1,src:1,srclang:1,label:1,default:1},section:{},summary:{},u:{},ul:{},var:{},video:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1},controls:{controls:1},width:1,height:1,poster:1,muted:{muted:1},preload:{auto:1,metadata:1,none:1}},wbr:{}},l=Object.keys(c),o=function(){};(function(){this.getCompletions=function(u,d,w,b){var R=d.getTokenAt(w.row,w.column);if(!R)return[];if(f(R,"tag-name")||f(R,"tag-open")||f(R,"end-tag-open"))return this.getTagCompletions(u,d,w,b);if(f(R,"tag-whitespace")||f(R,"attribute-name"))return this.getAttributeCompletions(u,d,w,b);if(f(R,"attribute-value"))return this.getAttributeValueCompletions(u,d,w,b);var M=d.getLine(w.row).substr(0,w.column);return/&[a-z]*$/i.test(M)?this.getHTMLEntityCompletions(u,d,w,b):[]},this.getTagCompletions=function(u,d,w,b){return l.map(function(R){return{value:R,meta:"tag",score:1e6}})},this.getAttributeCompletions=function(u,d,w,b){var R=y(d,w);if(!R)return[];var M=a;return R in c&&(M=M.concat(Object.keys(c[R]))),M.map(function(k){return{caption:k,snippet:k+'="$0"',meta:"attribute",score:1e6}})},this.getAttributeValueCompletions=function(u,d,w,b){var R=y(d,w),M=C(d,w);if(!R)return[];var k=[];return R in c&&M in c[R]&&typeof c[R][M]=="object"&&(k=Object.keys(c[R][M])),k.map(function(x){return{caption:x,snippet:x,meta:"attribute value",score:1e6}})},this.getHTMLEntityCompletions=function(u,d,w,b){var R=["Aacute;","aacute;","Acirc;","acirc;","acute;","AElig;","aelig;","Agrave;","agrave;","alefsym;","Alpha;","alpha;","amp;","and;","ang;","Aring;","aring;","asymp;","Atilde;","atilde;","Auml;","auml;","bdquo;","Beta;","beta;","brvbar;","bull;","cap;","Ccedil;","ccedil;","cedil;","cent;","Chi;","chi;","circ;","clubs;","cong;","copy;","crarr;","cup;","curren;","Dagger;","dagger;","dArr;","darr;","deg;","Delta;","delta;","diams;","divide;","Eacute;","eacute;","Ecirc;","ecirc;","Egrave;","egrave;","empty;","emsp;","ensp;","Epsilon;","epsilon;","equiv;","Eta;","eta;","ETH;","eth;","Euml;","euml;","euro;","exist;","fnof;","forall;","frac12;","frac14;","frac34;","frasl;","Gamma;","gamma;","ge;","gt;","hArr;","harr;","hearts;","hellip;","Iacute;","iacute;","Icirc;","icirc;","iexcl;","Igrave;","igrave;","image;","infin;","int;","Iota;","iota;","iquest;","isin;","Iuml;","iuml;","Kappa;","kappa;","Lambda;","lambda;","lang;","laquo;","lArr;","larr;","lceil;","ldquo;","le;","lfloor;","lowast;","loz;","lrm;","lsaquo;","lsquo;","lt;","macr;","mdash;","micro;","middot;","minus;","Mu;","mu;","nabla;","nbsp;","ndash;","ne;","ni;","not;","notin;","nsub;","Ntilde;","ntilde;","Nu;","nu;","Oacute;","oacute;","Ocirc;","ocirc;","OElig;","oelig;","Ograve;","ograve;","oline;","Omega;","omega;","Omicron;","omicron;","oplus;","or;","ordf;","ordm;","Oslash;","oslash;","Otilde;","otilde;","otimes;","Ouml;","ouml;","para;","part;","permil;","perp;","Phi;","phi;","Pi;","pi;","piv;","plusmn;","pound;","Prime;","prime;","prod;","prop;","Psi;","psi;","quot;","radic;","rang;","raquo;","rArr;","rarr;","rceil;","rdquo;","real;","reg;","rfloor;","Rho;","rho;","rlm;","rsaquo;","rsquo;","sbquo;","Scaron;","scaron;","sdot;","sect;","shy;","Sigma;","sigma;","sigmaf;","sim;","spades;","sub;","sube;","sum;","sup;","sup1;","sup2;","sup3;","supe;","szlig;","Tau;","tau;","there4;","Theta;","theta;","thetasym;","thinsp;","THORN;","thorn;","tilde;","times;","trade;","Uacute;","uacute;","uArr;","uarr;","Ucirc;","ucirc;","Ugrave;","ugrave;","uml;","upsih;","Upsilon;","upsilon;","Uuml;","uuml;","weierp;","Xi;","xi;","Yacute;","yacute;","yen;","Yuml;","yuml;","Zeta;","zeta;","zwj;","zwnj;"];return R.map(function(M){return{caption:M,snippet:M,meta:"html entity",score:1e6}})}}).call(o.prototype),r.HtmlCompletions=o}),ace.define("ace/mode/html",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/javascript","ace/mode/css","ace/mode/html_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/html","ace/mode/html_completions","ace/worker/worker_client"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/lang"),C=e("./text").Mode,h=e("./javascript").Mode,p=e("./css").Mode,s=e("./html_highlight_rules").HtmlHighlightRules,a=e("./behaviour/xml").XmlBehaviour,c=e("./folding/html").FoldMode,l=e("./html_completions").HtmlCompletions,o=e("../worker/worker_client").WorkerClient,u=["area","base","br","col","embed","hr","img","input","keygen","link","meta","menuitem","param","source","track","wbr"],d=["li","dt","dd","p","rt","rp","optgroup","option","colgroup","td","th"],w=function(b){this.fragmentContext=b&&b.fragmentContext,this.HighlightRules=s,this.$behaviour=new a,this.$completer=new l,this.createModeDelegates({"js-":h,"css-":p}),this.foldingRules=new c(this.voidElements,y.arrayToMap(d))};f.inherits(w,C),(function(){this.blockComment={start:"<!--",end:"-->"},this.voidElements=y.arrayToMap(u),this.getNextLineIndent=function(b,R,M){return this.$getIndent(R)},this.checkOutdent=function(b,R,M){return!1},this.getCompletions=function(b,R,M,k){return this.$completer.getCompletions(b,R,M,k)},this.createWorker=function(b){if(this.constructor==w){var R=new o(["ace"],"ace/mode/html_worker","Worker");return R.attachToDocument(b.getDocument()),this.fragmentContext&&R.call("setOptions",[{context:this.fragmentContext}]),R.on("error",function(M){b.setAnnotations(M.data)}),R.on("terminate",function(){b.clearAnnotations()}),R}},this.$id="ace/mode/html",this.snippetFileId="ace/snippets/html"}).call(w.prototype),r.Mode=w}),ace.define("ace/mode/sh_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,r,v){var f=e("../lib/oop"),y=e("./text_highlight_rules").TextHighlightRules,C=r.reservedKeywords="!|{|}|case|do|done|elif|else|esac|fi|for|if|in|then|until|while|&|;|export|local|read|typeset|unset|elif|select|set|function|declare|readonly",h=r.languageConstructs="[|]|alias|bg|bind|break|builtin|cd|command|compgen|complete|continue|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|return|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|wait",p=function(){var s=this.createKeywordMapper({keyword:C,"support.function.builtin":h,"invalid.deprecated":"debugger"},"identifier"),a="(?:(?:[1-9]\\d*)|(?:0))",c="(?:\\.\\d+)",l="(?:\\d+)",o="(?:(?:"+l+"?"+c+")|(?:"+l+"\\.))",u="(?:(?:"+o+"|"+l+"))",d="(?:"+u+"|"+o+")",w="(?:&"+l+")",b="[a-zA-Z_][a-zA-Z0-9_]*",R="(?:"+b+"(?==))",M="(?:\\$(?:SHLVL|\\$|\\!|\\?))",k="(?:"+b+"\\s*\\(\\))";this.$rules={start:[{token:"constant",regex:/\\./},{token:["text","comment"],regex:/(^|\s)(#.*)$/},{token:"string.start",regex:'"',push:[{token:"constant.language.escape",regex:/\\(?:[$`"\\]|$)/},{include:"variables"},{token:"keyword.operator",regex:/`/},{token:"string.end",regex:'"',next:"pop"},{defaultToken:"string"}]},{token:"string",regex:"\\$'",push:[{token:"constant.language.escape",regex:/\\(?:[abeEfnrtv\\'"]|x[a-fA-F\d]{1,2}|u[a-fA-F\d]{4}([a-fA-F\d]{4})?|c.|\d{1,3})/},{token:"string",regex:"'",next:"pop"},{defaultToken:"string"}]},{regex:"<<<",token:"keyword.operator"},{stateName:"heredoc",regex:"(<<-?)(\\s*)(['\"`]?)([\\w\\-]+)(['\"`]?)",onMatch:function(x,L,O){var I=x[2]=="-"?"indentedHeredoc":"heredoc",E=x.split(this.splitRegex);return O.push(I,E[4]),[{type:"constant",value:E[1]},{type:"text",value:E[2]},{type:"string",value:E[3]},{type:"support.class",value:E[4]},{type:"string",value:E[5]}]},rules:{heredoc:[{onMatch:function(x,L,O){return x===O[1]?(O.shift(),O.shift(),this.next=O[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}],indentedHeredoc:[{token:"string",regex:"^ +"},{onMatch:function(x,L,O){return x===O[1]?(O.shift(),O.shift(),this.next=O[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}]}},{regex:"$",token:"empty",next:function(x,L){return L[0]==="heredoc"||L[0]==="indentedHeredoc"?L[0]:x}},{token:["keyword","text","text","text","variable"],regex:/(declare|local|readonly)(\s+)(?:(-[fixar]+)(\s+))?([a-zA-Z_][a-zA-Z0-9_]*\b)/},{token:"variable.language",regex:M},{token:"variable",regex:R},{include:"variables"},{token:"support.function",regex:k},{token:"support.function",regex:w},{token:"string",start:"'",end:"'"},{token:"constant.numeric",regex:d},{token:"constant.numeric",regex:a+"\\b"},{token:s,regex:"[a-zA-Z_][a-zA-Z0-9_]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\*|\\*\\*|\\/|\\/\\/|~|<|>|<=|=>|=|!=|[%&|`]"},{token:"punctuation.operator",regex:";"},{token:"paren.lparen",regex:"[\\[\\(\\{]"},{token:"paren.rparen",regex:"[\\]]"},{token:"paren.rparen",regex:"[\\)\\}]",next:"pop"}],variables:[{token:"variable",regex:/(\$)(\w+)/},{token:["variable","paren.lparen"],regex:/(\$)(\()/,push:"start"},{token:["variable","paren.lparen","keyword.operator","variable","keyword.operator"],regex:/(\$)(\{)([#!]?)(\w+|[*@#?\-$!0_])(:[?+\-=]?|##?|%%?|,,?\/|\^\^?)?/,push:"start"},{token:"variable",regex:/\$[*@#?\-$!0_]/},{token:["variable","paren.lparen"],regex:/(\$)(\{)/,push:"start"}]},this.normalizeRules()};f.inherits(p,y),r.ShHighlightRules=p}),ace.define("ace/mode/sh",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sh_highlight_rules","ace/range","ace/mode/folding/cstyle"],function(e,r,v){var f=e("../lib/oop"),y=e("./text").Mode,C=e("./sh_highlight_rules").ShHighlightRules,h=e("../range").Range,p=e("./folding/cstyle").FoldMode,s=function(){this.HighlightRules=C,this.foldingRules=new p,this.$behaviour=this.$defaultBehaviour};f.inherits(s,y),(function(){this.lineCommentStart="#",this.getNextLineIndent=function(c,l,o){var u=this.$getIndent(l),d=this.getTokenizer().getLineTokens(l,c),w=d.tokens;if(w.length&&w[w.length-1].type=="comment")return u;if(c=="start"){var b=l.match(/^.*[\{\(\[:]\s*$/);b&&(u+=o)}return u};var a={pass:1,return:1,raise:1,break:1,continue:1};this.checkOutdent=function(c,l,o){if(o!==`\r
992
+ `&&o!=="\r"&&o!==`
993
+ `)return!1;var u=this.getTokenizer().getLineTokens(l.trim(),c).tokens;if(!u)return!1;do var d=u.pop();while(d&&(d.type=="comment"||d.type=="text"&&d.value.match(/^\s+$/)));return d?d.type=="keyword"&&a[d.value]:!1},this.autoOutdent=function(c,l,o){o+=1;var u=this.$getIndent(l.getLine(o)),d=l.getTabString();u.slice(-d.length)==d&&l.remove(new h(o,u.length-d.length,o,u.length))},this.$id="ace/mode/sh",this.snippetFileId="ace/snippets/sh"}).call(s.prototype),r.Mode=s}),ace.define("ace/mode/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/xml_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/xml","ace/worker/worker_client"],function(e,r,v){var f=e("../lib/oop"),y=e("../lib/lang"),C=e("./text").Mode,h=e("./xml_highlight_rules").XmlHighlightRules,p=e("./behaviour/xml").XmlBehaviour,s=e("./folding/xml").FoldMode,a=e("../worker/worker_client").WorkerClient,c=function(){this.HighlightRules=h,this.$behaviour=new p,this.foldingRules=new s};f.inherits(c,C),(function(){this.voidElements=y.arrayToMap([]),this.blockComment={start:"<!--",end:"-->"},this.createWorker=function(l){var o=new a(["ace"],"ace/mode/xml_worker","Worker");return o.attachToDocument(l.getDocument()),o.on("error",function(u){l.setAnnotations(u.data)}),o.on("terminate",function(){l.clearAnnotations()}),o},this.$id="ace/mode/xml"}).call(c.prototype),r.Mode=c}),ace.define("ace/mode/markdown",["require","exports","module","ace/lib/oop","ace/mode/behaviour/cstyle","ace/mode/text","ace/mode/markdown_highlight_rules","ace/mode/folding/markdown","ace/mode/javascript","ace/mode/html","ace/mode/sh","ace/mode/sh","ace/mode/xml","ace/mode/css"],function(e,r,v){var f=e("../lib/oop"),y=e("./behaviour/cstyle").CstyleBehaviour,C=e("./text").Mode,h=e("./markdown_highlight_rules").MarkdownHighlightRules,p=e("./folding/markdown").FoldMode,s=function(){this.HighlightRules=h,this.createModeDelegates({javascript:e("./javascript").Mode,html:e("./html").Mode,bash:e("./sh").Mode,sh:e("./sh").Mode,xml:e("./xml").Mode,css:e("./css").Mode}),this.foldingRules=new p,this.$behaviour=new y({braces:!0})};f.inherits(s,C),(function(){this.type="text",this.blockComment={start:"<!--",end:"-->"},this.$quotes={'"':'"',"`":"`"},this.getNextLineIndent=function(a,c,l){if(a=="listblock"){var o=/^(\s*)(?:([-+*])|(\d+)\.)(\s+)/.exec(c);if(!o)return"";var u=o[2];return u||(u=parseInt(o[3],10)+1+"."),o[1]+u+o[4]}return this.$getIndent(c)},this.$id="ace/mode/markdown",this.snippetFileId="ace/snippets/markdown"}).call(s.prototype),r.Mode=s}),function(){ace.require(["ace/mode/markdown"],function(e){n&&(n.exports=e)})}()}(Hp)),Hp.exports}Wb();var Vp={exports:{}},Gp;function Bb(){return Gp||(Gp=1,function(n,t){ace.define("ace/theme/twilight-css",["require","exports","module"],function(e,r,v){v.exports=`.ace-twilight .ace_gutter {
994
+ background: #232323;
995
+ color: #E2E2E2
996
+ }
997
+
998
+ .ace-twilight .ace_print-margin {
999
+ width: 1px;
1000
+ background: #232323
1001
+ }
1002
+
1003
+ .ace-twilight {
1004
+ background-color: #141414;
1005
+ color: #F8F8F8
1006
+ }
1007
+
1008
+ .ace-twilight .ace_cursor {
1009
+ color: #A7A7A7
1010
+ }
1011
+
1012
+ .ace-twilight .ace_marker-layer .ace_selection {
1013
+ background: rgba(221, 240, 255, 0.20)
1014
+ }
1015
+
1016
+ .ace-twilight.ace_multiselect .ace_selection.ace_start {
1017
+ box-shadow: 0 0 3px 0px #141414;
1018
+ }
1019
+
1020
+ .ace-twilight .ace_marker-layer .ace_step {
1021
+ background: rgb(102, 82, 0)
1022
+ }
1023
+
1024
+ .ace-twilight .ace_marker-layer .ace_bracket {
1025
+ margin: -1px 0 0 -1px;
1026
+ border: 1px solid rgba(255, 255, 255, 0.25)
1027
+ }
1028
+
1029
+ .ace-twilight .ace_marker-layer .ace_active-line {
1030
+ background: rgba(255, 255, 255, 0.031)
1031
+ }
1032
+
1033
+ .ace-twilight .ace_gutter-active-line {
1034
+ background-color: rgba(255, 255, 255, 0.031)
1035
+ }
1036
+
1037
+ .ace-twilight .ace_marker-layer .ace_selected-word {
1038
+ border: 1px solid rgba(221, 240, 255, 0.20)
1039
+ }
1040
+
1041
+ .ace-twilight .ace_invisible {
1042
+ color: rgba(255, 255, 255, 0.25)
1043
+ }
1044
+
1045
+ .ace-twilight .ace_keyword,
1046
+ .ace-twilight .ace_meta {
1047
+ color: #CDA869
1048
+ }
1049
+
1050
+ .ace-twilight .ace_constant,
1051
+ .ace-twilight .ace_constant.ace_character,
1052
+ .ace-twilight .ace_constant.ace_character.ace_escape,
1053
+ .ace-twilight .ace_constant.ace_other,
1054
+ .ace-twilight .ace_heading,
1055
+ .ace-twilight .ace_markup.ace_heading,
1056
+ .ace-twilight .ace_support.ace_constant {
1057
+ color: #CF6A4C
1058
+ }
1059
+
1060
+ .ace-twilight .ace_invalid.ace_illegal {
1061
+ color: #F8F8F8;
1062
+ background-color: rgba(86, 45, 86, 0.75)
1063
+ }
1064
+
1065
+ .ace-twilight .ace_invalid.ace_deprecated {
1066
+ text-decoration: underline;
1067
+ font-style: italic;
1068
+ color: #D2A8A1
1069
+ }
1070
+
1071
+ .ace-twilight .ace_support {
1072
+ color: #9B859D
1073
+ }
1074
+
1075
+ .ace-twilight .ace_fold {
1076
+ background-color: #AC885B;
1077
+ border-color: #F8F8F8
1078
+ }
1079
+
1080
+ .ace-twilight .ace_support.ace_function {
1081
+ color: #DAD085
1082
+ }
1083
+
1084
+ .ace-twilight .ace_list,
1085
+ .ace-twilight .ace_markup.ace_list,
1086
+ .ace-twilight .ace_storage {
1087
+ color: #F9EE98
1088
+ }
1089
+
1090
+ .ace-twilight .ace_entity.ace_name.ace_function,
1091
+ .ace-twilight .ace_meta.ace_tag {
1092
+ color: #AC885B
1093
+ }
1094
+
1095
+ .ace-twilight .ace_string {
1096
+ color: #8F9D6A
1097
+ }
1098
+
1099
+ .ace-twilight .ace_string.ace_regexp {
1100
+ color: #E9C062
1101
+ }
1102
+
1103
+ .ace-twilight .ace_comment {
1104
+ font-style: italic;
1105
+ color: #5F5A60
1106
+ }
1107
+
1108
+ .ace-twilight .ace_variable {
1109
+ color: #7587A6
1110
+ }
1111
+
1112
+ .ace-twilight .ace_xml-pe {
1113
+ color: #494949
1114
+ }
1115
+
1116
+ .ace-twilight .ace_indent-guide {
1117
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQERFpYLC1tf0PAAgOAnPnhxyiAAAAAElFTkSuQmCC) right repeat-y
1118
+ }
1119
+
1120
+ .ace-twilight .ace_indent-guide-active {
1121
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQIW2PQ1dX9zzBz5sz/ABCcBFFentLlAAAAAElFTkSuQmCC) right repeat-y;
1122
+ }
1123
+ `}),ace.define("ace/theme/twilight",["require","exports","module","ace/theme/twilight-css","ace/lib/dom"],function(e,r,v){r.isDark=!0,r.cssClass="ace-twilight",r.cssText=e("./twilight-css");var f=e("../lib/dom");f.importCssString(r.cssText,r.cssClass,!1)}),function(){ace.require(["ace/theme/twilight"],function(e){n&&(n.exports=e)})}()}(Vp)),Vp.exports}Bb();var Kp={exports:{}},qp;function zb(){return qp||(qp=1,function(n,t){ace.define("ace/snippets",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter","ace/lib/lang","ace/range","ace/range_list","ace/keyboard/hash_handler","ace/tokenizer","ace/clipboard","ace/editor"],function(e,r,v){function f(x){var L=new Date().toLocaleString("en-us",x);return L.length==1?"0"+L:L}var y=e("./lib/dom"),C=e("./lib/oop"),h=e("./lib/event_emitter").EventEmitter,p=e("./lib/lang"),s=e("./range").Range,a=e("./range_list").RangeList,c=e("./keyboard/hash_handler").HashHandler,l=e("./tokenizer").Tokenizer,o=e("./clipboard"),u={CURRENT_WORD:function(x){return x.session.getTextRange(x.session.getWordRange())},SELECTION:function(x,L,O){var I=x.session.getTextRange();return O?I.replace(/\n\r?([ \t]*\S)/g,`
1124
+ `+O+"$1"):I},CURRENT_LINE:function(x){return x.session.getLine(x.getCursorPosition().row)},PREV_LINE:function(x){return x.session.getLine(x.getCursorPosition().row-1)},LINE_INDEX:function(x){return x.getCursorPosition().row},LINE_NUMBER:function(x){return x.getCursorPosition().row+1},SOFT_TABS:function(x){return x.session.getUseSoftTabs()?"YES":"NO"},TAB_SIZE:function(x){return x.session.getTabSize()},CLIPBOARD:function(x){return o.getText&&o.getText()},FILENAME:function(x){return/[^/\\]*$/.exec(this.FILEPATH(x))[0]},FILENAME_BASE:function(x){return/[^/\\]*$/.exec(this.FILEPATH(x))[0].replace(/\.[^.]*$/,"")},DIRECTORY:function(x){return this.FILEPATH(x).replace(/[^/\\]*$/,"")},FILEPATH:function(x){return"/not implemented.txt"},WORKSPACE_NAME:function(){return"Unknown"},FULLNAME:function(){return"Unknown"},BLOCK_COMMENT_START:function(x){var L=x.session.$mode||{};return L.blockComment&&L.blockComment.start||""},BLOCK_COMMENT_END:function(x){var L=x.session.$mode||{};return L.blockComment&&L.blockComment.end||""},LINE_COMMENT:function(x){var L=x.session.$mode||{};return L.lineCommentStart||""},CURRENT_YEAR:f.bind(null,{year:"numeric"}),CURRENT_YEAR_SHORT:f.bind(null,{year:"2-digit"}),CURRENT_MONTH:f.bind(null,{month:"numeric"}),CURRENT_MONTH_NAME:f.bind(null,{month:"long"}),CURRENT_MONTH_NAME_SHORT:f.bind(null,{month:"short"}),CURRENT_DATE:f.bind(null,{day:"2-digit"}),CURRENT_DAY_NAME:f.bind(null,{weekday:"long"}),CURRENT_DAY_NAME_SHORT:f.bind(null,{weekday:"short"}),CURRENT_HOUR:f.bind(null,{hour:"2-digit",hour12:!1}),CURRENT_MINUTE:f.bind(null,{minute:"2-digit"}),CURRENT_SECOND:f.bind(null,{second:"2-digit"})};u.SELECTED_TEXT=u.SELECTION;var d=function(){function x(){this.snippetMap={},this.snippetNameMap={},this.variables=u}return x.prototype.getTokenizer=function(){return x.$tokenizer||this.createTokenizer()},x.prototype.createTokenizer=function(){function L(E){return E=E.substr(1),/^\d+$/.test(E)?[{tabstopId:parseInt(E,10)}]:[{text:E}]}function O(E){return"(?:[^\\\\"+E+"]|\\\\.)"}var I={regex:"/("+O("/")+"+)/",onMatch:function(E,z,P){var N=P[0];return N.fmtString=!0,N.guard=E.slice(1,-1),N.flag="",""},next:"formatString"};return x.$tokenizer=new l({start:[{regex:/\\./,onMatch:function(E,z,P){var N=E[1];return(N=="}"&&P.length||"`$\\".indexOf(N)!=-1)&&(E=N),[E]}},{regex:/}/,onMatch:function(E,z,P){return[P.length?P.shift():E]}},{regex:/\$(?:\d+|\w+)/,onMatch:L},{regex:/\$\{[\dA-Z_a-z]+/,onMatch:function(E,z,P){var N=L(E.substr(1));return P.unshift(N[0]),N},next:"snippetVar"},{regex:/\n/,token:"newline",merge:!1}],snippetVar:[{regex:"\\|"+O("\\|")+"*\\|",onMatch:function(E,z,P){var N=E.slice(1,-1).replace(/\\[,|\\]|,/g,function(S){return S.length==2?S[1]:"\0"}).split("\0").map(function(S){return{value:S}});return P[0].choices=N,[N[0]]},next:"start"},I,{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"start"}],formatString:[{regex:/:/,onMatch:function(E,z,P){return P.length&&P[0].expectElse?(P[0].expectElse=!1,P[0].ifEnd={elseEnd:P[0]},[P[0].ifEnd]):":"}},{regex:/\\./,onMatch:function(E,z,P){var N=E[1];return N=="}"&&P.length||"`$\\".indexOf(N)!=-1?E=N:N=="n"?E=`
1125
+ `:N=="t"?E=" ":"ulULE".indexOf(N)!=-1&&(E={changeCase:N,local:N>"a"}),[E]}},{regex:"/\\w*}",onMatch:function(E,z,P){var N=P.shift();return N&&(N.flag=E.slice(1,-1)),this.next=N&&N.tabstopId?"start":"",[N||E]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(E,z,P){return[{text:E.slice(1)}]}},{regex:/\${\w+/,onMatch:function(E,z,P){var N={text:E.slice(2)};return P.unshift(N),[N]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(E,z,P){var N=P.shift();return this.next=N&&N.tabstopId?"start":"",[N||E]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(E,z,P){var N=P[0];return N.formatFunction=E.slice(2,-1),[P.shift()]},next:"formatString"},I,{regex:/:[\?\-+]?/,onMatch:function(E,z,P){E[1]=="+"&&(P[0].ifEnd=P[0]),E[1]=="?"&&(P[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),x.$tokenizer},x.prototype.tokenizeTmSnippet=function(L,O){return this.getTokenizer().getLineTokens(L,O).tokens.map(function(I){return I.value||I})},x.prototype.getVariableValue=function(L,O,I){if(/^\d+$/.test(O))return(this.variables.__||{})[O]||"";if(/^[A-Z]\d+$/.test(O))return(this.variables[O[0]+"__"]||{})[O.substr(1)]||"";if(O=O.replace(/^TM_/,""),!this.variables.hasOwnProperty(O))return"";var E=this.variables[O];return typeof E=="function"&&(E=this.variables[O](L,O,I)),E??""},x.prototype.tmStrFormat=function(L,O,I){if(!O.fmt)return L;var E=O.flag||"",z=O.guard;z=new RegExp(z,E.replace(/[^gim]/g,""));var P=typeof O.fmt=="string"?this.tokenizeTmSnippet(O.fmt,"formatString"):O.fmt,N=this,S=L.replace(z,function(){var A=N.variables.__;N.variables.__=[].slice.call(arguments);for(var D=N.resolveVariables(P,I),j="E",U=0;U<D.length;U++){var q=D[U];if(typeof q=="object")if(D[U]="",q.changeCase&&q.local){var Z=D[U+1];Z&&typeof Z=="string"&&(q.changeCase=="u"?D[U]=Z[0].toUpperCase():D[U]=Z[0].toLowerCase(),D[U+1]=Z.substr(1))}else q.changeCase&&(j=q.changeCase);else j=="U"?D[U]=q.toUpperCase():j=="L"&&(D[U]=q.toLowerCase())}return N.variables.__=A,D.join("")});return S},x.prototype.tmFormatFunction=function(L,O,I){return O.formatFunction=="upcase"?L.toUpperCase():O.formatFunction=="downcase"?L.toLowerCase():L},x.prototype.resolveVariables=function(L,O){function I(j){var U=L.indexOf(j,N+1);U!=-1&&(N=U)}for(var E=[],z="",P=!0,N=0;N<L.length;N++){var S=L[N];if(typeof S=="string"){E.push(S),S==`
1126
+ `?(P=!0,z=""):P&&(z=/^\t*/.exec(S)[0],P=/\S/.test(S));continue}if(S){if(P=!1,S.fmtString){var A=L.indexOf(S,N+1);A==-1&&(A=L.length),S.fmt=L.slice(N+1,A),N=A}if(S.text){var D=this.getVariableValue(O,S.text,z)+"";S.fmtString&&(D=this.tmStrFormat(D,S,O)),S.formatFunction&&(D=this.tmFormatFunction(D,S,O)),D&&!S.ifEnd?(E.push(D),I(S)):!D&&S.ifEnd&&I(S.ifEnd)}else S.elseEnd?I(S.elseEnd):(S.tabstopId!=null||S.changeCase!=null)&&E.push(S)}}return E},x.prototype.getDisplayTextForSnippet=function(L,O){var I=w.call(this,L,O);return I.text},x.prototype.insertSnippetForSelection=function(L,O,I){I===void 0&&(I={});var E=w.call(this,L,O,I),z=L.getSelectionRange(),P=L.session.replace(z,E.text),N=new b(L),S=L.inVirtualSelectionMode&&L.selection.index;N.addTabstops(E.tabstops,z.start,P,S)},x.prototype.insertSnippet=function(L,O,I){I===void 0&&(I={});var E=this;if(L.inVirtualSelectionMode)return E.insertSnippetForSelection(L,O,I);L.forEachSelection(function(){E.insertSnippetForSelection(L,O,I)},null,{keepOrder:!0}),L.tabstopManager&&L.tabstopManager.tabNext()},x.prototype.$getScope=function(L){var O=L.session.$mode.$id||"";if(O=O.split("/").pop(),O==="html"||O==="php"){O==="php"&&!L.session.$mode.inlinePhp&&(O="html");var I=L.getCursorPosition(),E=L.session.getState(I.row);typeof E=="object"&&(E=E[0]),E.substring&&(E.substring(0,3)=="js-"?O="javascript":E.substring(0,4)=="css-"?O="css":E.substring(0,4)=="php-"&&(O="php"))}return O},x.prototype.getActiveScopes=function(L){var O=this.$getScope(L),I=[O],E=this.snippetMap;return E[O]&&E[O].includeScopes&&I.push.apply(I,E[O].includeScopes),I.push("_"),I},x.prototype.expandWithTab=function(L,O){var I=this,E=L.forEachSelection(function(){return I.expandSnippetForSelection(L,O)},null,{keepOrder:!0});return E&&L.tabstopManager&&L.tabstopManager.tabNext(),E},x.prototype.expandSnippetForSelection=function(L,O){var I=L.getCursorPosition(),E=L.session.getLine(I.row),z=E.substring(0,I.column),P=E.substr(I.column),N=this.snippetMap,S;return this.getActiveScopes(L).some(function(A){var D=N[A];return D&&(S=this.findMatchingSnippet(D,z,P)),!!S},this),S?(O&&O.dryRun||(L.session.doc.removeInLine(I.row,I.column-S.replaceBefore.length,I.column+S.replaceAfter.length),this.variables.M__=S.matchBefore,this.variables.T__=S.matchAfter,this.insertSnippetForSelection(L,S.content),this.variables.M__=this.variables.T__=null),!0):!1},x.prototype.findMatchingSnippet=function(L,O,I){for(var E=L.length;E--;){var z=L[E];if(!(z.startRe&&!z.startRe.test(O))&&!(z.endRe&&!z.endRe.test(I))&&!(!z.startRe&&!z.endRe))return z.matchBefore=z.startRe?z.startRe.exec(O):[""],z.matchAfter=z.endRe?z.endRe.exec(I):[""],z.replaceBefore=z.triggerRe?z.triggerRe.exec(O)[0]:"",z.replaceAfter=z.endTriggerRe?z.endTriggerRe.exec(I)[0]:"",z}},x.prototype.register=function(L,O){function I(A){return A&&!/^\^?\(.*\)\$?$|^\\b$/.test(A)&&(A="(?:"+A+")"),A||""}function E(A,D,j){return A=I(A),D=I(D),A=D+A,A&&A[A.length-1]!="$"&&(A+="$"),new RegExp(A)}function z(A){A.scope||(A.scope=O||"_"),O=A.scope,P[O]||(P[O]=[],N[O]={});var D=N[O];if(A.name){var j=D[A.name];j&&S.unregister(j),D[A.name]=A}P[O].push(A),A.prefix&&(A.tabTrigger=A.prefix),!A.content&&A.body&&(A.content=Array.isArray(A.body)?A.body.join(`
1127
+ `):A.body),A.tabTrigger&&!A.trigger&&(!A.guard&&/^\w/.test(A.tabTrigger)&&(A.guard="\\b"),A.trigger=p.escapeRegExp(A.tabTrigger)),!(!A.trigger&&!A.guard&&!A.endTrigger&&!A.endGuard)&&(A.startRe=E(A.trigger,A.guard),A.triggerRe=new RegExp(A.trigger),A.endRe=E(A.endTrigger,A.endGuard),A.endTriggerRe=new RegExp(A.endTrigger))}var P=this.snippetMap,N=this.snippetNameMap,S=this;L||(L=[]),Array.isArray(L)?L.forEach(z):Object.keys(L).forEach(function(A){z(L[A])}),this._signal("registerSnippets",{scope:O})},x.prototype.unregister=function(L,O){function I(P){var N=z[P.scope||O];if(N&&N[P.name]){delete N[P.name];var S=E[P.scope||O],A=S&&S.indexOf(P);A>=0&&S.splice(A,1)}}var E=this.snippetMap,z=this.snippetNameMap;L.content?I(L):Array.isArray(L)&&L.forEach(I)},x.prototype.parseSnippetFile=function(L){L=L.replace(/\r/g,"");for(var O=[],I={},E=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,z;z=E.exec(L);){if(z[1])try{I=JSON.parse(z[1]),O.push(I)}catch{}if(z[4])I.content=z[4].replace(/^\t/gm,""),O.push(I),I={};else{var P=z[2],N=z[3];if(P=="regex"){var S=/\/((?:[^\/\\]|\\.)*)|$/g;I.guard=S.exec(N)[1],I.trigger=S.exec(N)[1],I.endTrigger=S.exec(N)[1],I.endGuard=S.exec(N)[1]}else P=="snippet"?(I.tabTrigger=N.match(/^\S*/)[0],I.name||(I.name=N)):P&&(I[P]=N)}}return O},x.prototype.getSnippetByName=function(L,O){var I=this.snippetNameMap,E;return this.getActiveScopes(O).some(function(z){var P=I[z];return P&&(E=P[L]),!!E},this),E},x}();C.implement(d.prototype,h);var w=function(x,L,O){function I(ce){for(var fe=[],Se=0;Se<ce.length;Se++){var $e=ce[Se];if(typeof $e=="object"){if(D[$e.tabstopId])continue;var Te=ce.lastIndexOf($e,Se-1);$e=fe[Te]||{tabstopId:$e.tabstopId}}fe[Se]=$e}return fe}O===void 0&&(O={});var E=x.getCursorPosition(),z=x.session.getLine(E.row),P=x.session.getTabString(),N=z.match(/^\s*/)[0];E.column<N.length&&(N=N.slice(0,E.column)),L=L.replace(/\r/g,"");var S=this.tokenizeTmSnippet(L);S=this.resolveVariables(S,x),S=S.map(function(ce){return ce==`
1128
+ `&&!O.excludeExtraIndent?ce+N:typeof ce=="string"?ce.replace(/\t/g,P):ce});var A=[];S.forEach(function(ce,fe){if(typeof ce=="object"){var Se=ce.tabstopId,$e=A[Se];if($e||($e=A[Se]=[],$e.index=Se,$e.value="",$e.parents={}),$e.indexOf(ce)===-1){ce.choices&&!$e.choices&&($e.choices=ce.choices),$e.push(ce);var Te=S.indexOf(ce,fe+1);if(Te!==-1){var qe=S.slice(fe+1,Te),Ve=qe.some(function(lt){return typeof lt=="object"});Ve&&!$e.value?$e.value=qe:qe.length&&(!$e.value||typeof $e.value!="string")&&($e.value=qe.join(""))}}}}),A.forEach(function(ce){ce.length=0});for(var D={},j=0;j<S.length;j++){var U=S[j];if(typeof U=="object"){var q=U.tabstopId,Z=A[q],te=S.indexOf(U,j+1);if(D[q]){D[q]===U&&(delete D[q],Object.keys(D).forEach(function(ce){Z.parents[ce]=!0}));continue}D[q]=U;var he=Z.value;typeof he!="string"?he=I(he):U.fmt&&(he=this.tmStrFormat(he,U,x)),S.splice.apply(S,[j+1,Math.max(0,te-j)].concat(he,U)),Z.indexOf(U)===-1&&Z.push(U)}}var ne=0,le=0,ue="";return S.forEach(function(ce){if(typeof ce=="string"){var fe=ce.split(`
1129
+ `);fe.length>1?(le=fe[fe.length-1].length,ne+=fe.length-1):le+=ce.length,ue+=ce}else ce&&(ce.start?ce.end={row:ne,column:le}:ce.start={row:ne,column:le})}),{text:ue,tabstops:A,tokens:S}},b=function(){function x(L){if(this.index=0,this.ranges=[],this.tabstops=[],L.tabstopManager)return L.tabstopManager;L.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=p.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(L)}return x.prototype.attach=function(L){this.$openTabstops=null,this.selectedTabstop=null,this.editor=L,this.session=L.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},x.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},x.prototype.onChange=function(L){for(var O=L.action[0]=="r",I=this.selectedTabstop||{},E=I.parents||{},z=this.tabstops.slice(),P=0;P<z.length;P++){var N=z[P],S=N==I||E[N.index];if(N.rangeList.$bias=S?0:1,L.action=="remove"&&N!==I){var A=N.parents&&N.parents[I.index],D=N.rangeList.pointIndex(L.start,A);D=D<0?-D-1:D+1;var j=N.rangeList.pointIndex(L.end,A);j=j<0?-j-1:j-1;for(var U=N.rangeList.ranges.slice(D,j),q=0;q<U.length;q++)this.removeRange(U[q])}N.rangeList.$onChange(L)}var Z=this.session;!this.$inChange&&O&&Z.getLength()==1&&!Z.getValue()&&this.detach()},x.prototype.updateLinkedFields=function(){var L=this.selectedTabstop;if(!(!L||!L.hasLinkedRanges||!L.firstNonLinked)){this.$inChange=!0;for(var O=this.session,I=O.getTextRange(L.firstNonLinked),E=0;E<L.length;E++){var z=L[E];if(z.linked){var P=z.original,N=r.snippetManager.tmStrFormat(I,P,this.editor);O.replace(z,N)}}this.$inChange=!1}},x.prototype.onAfterExec=function(L){L.command&&!L.command.readOnly&&this.updateLinkedFields()},x.prototype.onChangeSelection=function(){if(this.editor){for(var L=this.editor.selection.lead,O=this.editor.selection.anchor,I=this.editor.selection.isEmpty(),E=0;E<this.ranges.length;E++)if(!this.ranges[E].linked){var z=this.ranges[E].contains(L.row,L.column),P=I||this.ranges[E].contains(O.row,O.column);if(z&&P)return}this.detach()}},x.prototype.onChangeSession=function(){this.detach()},x.prototype.tabNext=function(L){var O=this.tabstops.length,I=this.index+(L||1);I=Math.min(Math.max(I,1),O),I==O&&(I=0),this.selectTabstop(I),this.updateTabstopMarkers(),I===0&&this.detach()},x.prototype.selectTabstop=function(L){this.$openTabstops=null;var O=this.tabstops[this.index];if(O&&this.addTabstopMarkers(O),this.index=L,O=this.tabstops[this.index],!(!O||!O.length)){this.selectedTabstop=O;var I=O.firstNonLinked||O;if(O.choices&&(I.cursor=I.start),this.editor.inVirtualSelectionMode)this.editor.selection.fromOrientedRange(I);else{var E=this.editor.multiSelect;E.toSingleRange(I);for(var z=0;z<O.length;z++)O.hasLinkedRanges&&O[z].linked||E.addRange(O[z].clone(),!0)}this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler),this.selectedTabstop&&this.selectedTabstop.choices&&this.editor.execCommand("startAutocomplete",{matches:this.selectedTabstop.choices})}},x.prototype.addTabstops=function(L,O,I){var E=this.useLink||!this.editor.getOption("enableMultiselect");if(this.$openTabstops||(this.$openTabstops=[]),!L[0]){var z=s.fromPoints(I,I);M(z.start,O),M(z.end,O),L[0]=[z],L[0].index=0}var P=this.index,N=[P+1,0],S=this.ranges,A=this.snippetId=(this.snippetId||0)+1;L.forEach(function(D,j){var U=this.$openTabstops[j]||D;U.snippetId=A;for(var q=0;q<D.length;q++){var Z=D[q],te=s.fromPoints(Z.start,Z.end||Z.start);R(te.start,O),R(te.end,O),te.original=Z,te.tabstop=U,S.push(te),U!=D?U.unshift(te):U[q]=te,Z.fmtString||U.firstNonLinked&&E?(te.linked=!0,U.hasLinkedRanges=!0):U.firstNonLinked||(U.firstNonLinked=te)}U.firstNonLinked||(U.hasLinkedRanges=!1),U===D&&(N.push(U),this.$openTabstops[j]=U),this.addTabstopMarkers(U),U.rangeList=U.rangeList||new a,U.rangeList.$bias=0,U.rangeList.addList(U)},this),N.length>2&&(this.tabstops.length&&N.push(N.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,N))},x.prototype.addTabstopMarkers=function(L){var O=this.session;L.forEach(function(I){I.markerId||(I.markerId=O.addMarker(I,"ace_snippet-marker","text"))})},x.prototype.removeTabstopMarkers=function(L){var O=this.session;L.forEach(function(I){O.removeMarker(I.markerId),I.markerId=null})},x.prototype.updateTabstopMarkers=function(){if(this.selectedTabstop){var L=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&L--,this.tabstops.forEach(function(O){O.snippetId===L?this.addTabstopMarkers(O):this.removeTabstopMarkers(O)},this)}},x.prototype.removeRange=function(L){var O=L.tabstop.indexOf(L);O!=-1&&L.tabstop.splice(O,1),O=this.ranges.indexOf(L),O!=-1&&this.ranges.splice(O,1),O=L.tabstop.rangeList.ranges.indexOf(L),O!=-1&&L.tabstop.splice(O,1),this.session.removeMarker(L.markerId),L.tabstop.length||(O=this.tabstops.indexOf(L.tabstop),O!=-1&&this.tabstops.splice(O,1),this.tabstops.length||this.detach())},x}();b.prototype.keyboardHandler=new c,b.prototype.keyboardHandler.bindKeys({Tab:function(x){r.snippetManager&&r.snippetManager.expandWithTab(x)||(x.tabstopManager.tabNext(1),x.renderer.scrollCursorIntoView())},"Shift-Tab":function(x){x.tabstopManager.tabNext(-1),x.renderer.scrollCursorIntoView()},Esc:function(x){x.tabstopManager.detach()}});var R=function(x,L){x.row==0&&(x.column+=L.column),x.row+=L.row},M=function(x,L){x.row==L.row&&(x.column-=L.column),x.row-=L.row};y.importCssString(`
1130
+ .ace_snippet-marker {
1131
+ -moz-box-sizing: border-box;
1132
+ box-sizing: border-box;
1133
+ background: rgba(194, 193, 208, 0.09);
1134
+ border: 1px dotted rgba(211, 208, 235, 0.62);
1135
+ position: absolute;
1136
+ }`,"snippets.css",!1),r.snippetManager=new d;var k=e("./editor").Editor;(function(){this.insertSnippet=function(x,L){return r.snippetManager.insertSnippet(this,x,L)},this.expandSnippet=function(x){return r.snippetManager.expandWithTab(this,x)}}).call(k.prototype)}),ace.define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/config","ace/lib/useragent"],function(e,r,v){var f=e("../virtual_renderer").VirtualRenderer,y=e("../editor").Editor,C=e("../range").Range,h=e("../lib/event"),p=e("../lib/lang"),s=e("../lib/dom"),a=e("../config").nls,c=e("./../lib/useragent"),l=function(R){return"suggest-aria-id:".concat(R)},o=c.isSafari?"menu":"listbox",u=c.isSafari?"menuitem":"option",d=c.isSafari?"aria-current":"aria-selected",w=function(R){var M=new f(R);M.$maxLines=4;var k=new y(M);return k.setHighlightActiveLine(!1),k.setShowPrintMargin(!1),k.renderer.setShowGutter(!1),k.renderer.setHighlightGutterLine(!1),k.$mouseHandler.$focusTimeout=0,k.$highlightTagPending=!0,k},b=function(){function R(M){var k=s.createElement("div"),x=w(k);M&&M.appendChild(k),k.style.display="none",x.renderer.content.style.cursor="default",x.renderer.setStyle("ace_autocomplete"),x.renderer.$textLayer.element.setAttribute("role",o),x.renderer.$textLayer.element.setAttribute("aria-roledescription",a("autocomplete.popup.aria-roledescription","Autocomplete suggestions")),x.renderer.$textLayer.element.setAttribute("aria-label",a("autocomplete.popup.aria-label","Autocomplete suggestions")),x.renderer.textarea.setAttribute("aria-hidden","true"),x.setOption("displayIndentGuides",!1),x.setOption("dragDelay",150);var L=function(){};x.focus=L,x.$isFocused=!0,x.renderer.$cursorLayer.restartTimer=L,x.renderer.$cursorLayer.element.style.opacity="0",x.renderer.$maxLines=8,x.renderer.$keepTextAreaAtCursor=!1,x.setHighlightActiveLine(!1),x.session.highlight(""),x.session.$searchHighlight.clazz="ace_highlight-marker",x.on("mousedown",function(S){var A=S.getDocumentPosition();x.selection.moveToPosition(A),E.start.row=E.end.row=A.row,S.stop()});var O,I=new C(-1,0,-1,1/0),E=new C(-1,0,-1,1/0);E.id=x.session.addMarker(E,"ace_active-line","fullLine"),x.setSelectOnHover=function(S){S?I.id&&(x.session.removeMarker(I.id),I.id=null):I.id=x.session.addMarker(I,"ace_line-hover","fullLine")},x.setSelectOnHover(!1),x.on("mousemove",function(S){if(!O){O=S;return}if(!(O.x==S.x&&O.y==S.y)){O=S,O.scrollTop=x.renderer.scrollTop,x.isMouseOver=!0;var A=O.getDocumentPosition().row;I.start.row!=A&&(I.id||x.setRow(A),P(A))}}),x.renderer.on("beforeRender",function(){if(O&&I.start.row!=-1){O.$pos=null;var S=O.getDocumentPosition().row;I.id||x.setRow(S),P(S,!0)}}),x.renderer.on("afterRender",function(){for(var S=x.renderer.$textLayer,A=S.config.firstRow,D=S.config.lastRow;A<=D;A++){var j=S.element.childNodes[A-S.config.firstRow];j.setAttribute("role",u),j.setAttribute("aria-roledescription",a("autocomplete.popup.item.aria-roledescription","item")),j.setAttribute("aria-setsize",x.data.length),j.setAttribute("aria-describedby","doc-tooltip"),j.setAttribute("aria-posinset",A+1);var U=x.getData(A);if(U){var q="".concat(U.caption||U.value).concat(U.meta?", ".concat(U.meta):"");j.setAttribute("aria-label",q)}var Z=j.querySelectorAll(".ace_completion-highlight");Z.forEach(function(te){te.setAttribute("role","mark")})}}),x.renderer.on("afterRender",function(){var S=x.getRow(),A=x.renderer.$textLayer,D=A.element.childNodes[S-A.config.firstRow],j=document.activeElement;if(D!==x.selectedNode&&x.selectedNode&&(s.removeCssClass(x.selectedNode,"ace_selected"),x.selectedNode.removeAttribute(d),x.selectedNode.removeAttribute("id")),j.removeAttribute("aria-activedescendant"),x.selectedNode=D,D){var U=l(S);s.addCssClass(D,"ace_selected"),D.id=U,A.element.setAttribute("aria-activedescendant",U),j.setAttribute("aria-activedescendant",U),D.setAttribute(d,"true")}});var z=function(){P(-1)},P=function(S,A){S!==I.start.row&&(I.start.row=I.end.row=S,A||x.session._emit("changeBackMarker"),x._emit("changeHoverMarker"))};x.getHoveredRow=function(){return I.start.row},h.addListener(x.container,"mouseout",function(){x.isMouseOver=!1,z()}),x.on("hide",z),x.on("changeSelection",z),x.session.doc.getLength=function(){return x.data.length},x.session.doc.getLine=function(S){var A=x.data[S];return typeof A=="string"?A:A&&A.value||""};var N=x.session.bgTokenizer;return N.$tokenizeRow=function(S){function A(ce,fe){ce&&j.push({type:(D.className||"")+(fe||""),value:ce})}var D=x.data[S],j=[];if(!D)return j;typeof D=="string"&&(D={value:D});for(var U=D.caption||D.value||D.name,q=U.toLowerCase(),Z=(x.filterText||"").toLowerCase(),te=0,he=0,ne=0;ne<=Z.length;ne++)if(ne!=he&&(D.matchMask&1<<ne||ne==Z.length)){var le=Z.slice(he,ne);he=ne;var ue=q.indexOf(le,te);if(ue==-1)continue;A(U.slice(te,ue),""),te=ue+le.length,A(U.slice(ue,te),"completion-highlight")}return A(U.slice(te,U.length),""),j.push({type:"completion-spacer",value:" "}),D.meta&&j.push({type:"completion-meta",value:D.meta}),D.message&&j.push({type:"completion-message",value:D.message}),j},N.$updateOnChange=L,N.start=L,x.session.$computeWidth=function(){return this.screenWidth=0},x.isOpen=!1,x.isTopdown=!1,x.autoSelect=!0,x.filterText="",x.isMouseOver=!1,x.data=[],x.setData=function(S,A){x.filterText=A||"",x.setValue(p.stringRepeat(`
1137
+ `,S.length),-1),x.data=S||[],x.setRow(0)},x.getData=function(S){return x.data[S]},x.getRow=function(){return E.start.row},x.setRow=function(S){S=Math.max(this.autoSelect?0:-1,Math.min(this.data.length-1,S)),E.start.row!=S&&(x.selection.clearSelection(),E.start.row=E.end.row=S||0,x.session._emit("changeBackMarker"),x.moveCursorTo(S||0,0),x.isOpen&&x._signal("select"))},x.on("changeSelection",function(){x.isOpen&&x.setRow(x.selection.lead.row),x.renderer.scrollCursorIntoView()}),x.hide=function(){this.container.style.display="none",x.anchorPos=null,x.anchor=null,x.isOpen&&(x.isOpen=!1,this._signal("hide"))},x.tryShow=function(S,A,D,j){if(!j&&x.isOpen&&x.anchorPos&&x.anchor&&x.anchorPos.top===S.top&&x.anchorPos.left===S.left&&x.anchor===D)return!0;var U=this.container,q=this.renderer.scrollBar.width||10,Z=window.innerHeight-q,te=window.innerWidth-q,he=this.renderer,ne=he.$maxLines*A*1.4,le={top:0,bottom:0},ue=Z-S.top-3*this.$borderSize-A,ce=S.top-3*this.$borderSize;D||(ce<=ue||ue>=ne?D="bottom":D="top"),D==="top"?(le.bottom=S.top-this.$borderSize,le.top=le.bottom-ne):D==="bottom"&&(le.top=S.top+A+this.$borderSize,le.bottom=le.top+ne);var fe=le.top>=0&&le.bottom<=Z;if(!j&&!fe)return!1;fe?he.$maxPixelHeight=null:D==="top"?he.$maxPixelHeight=ce:he.$maxPixelHeight=ue,D==="top"?(U.style.top="",U.style.bottom=Z+q-le.bottom+"px",x.isTopdown=!1):(U.style.top=le.top+"px",U.style.bottom="",x.isTopdown=!0),U.style.display="";var Se=S.left;return Se+U.offsetWidth>te&&(Se=te-U.offsetWidth),U.style.left=Se+"px",U.style.right="",x.isOpen||(x.isOpen=!0,this._signal("show"),O=null),x.anchorPos=S,x.anchor=D,!0},x.show=function(S,A,D){this.tryShow(S,A,D?"bottom":void 0,!0)},x.goTo=function(S){var A=this.getRow(),D=this.session.getLength()-1;switch(S){case"up":A=A<=0?D:A-1;break;case"down":A=A>=D?-1:A+1;break;case"start":A=0;break;case"end":A=D}this.setRow(A)},x.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},x.$imageSize=0,x.$borderSize=1,x}return R}();s.importCssString(`
1138
+ .ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {
1139
+ background-color: #CAD6FA;
1140
+ z-index: 1;
1141
+ }
1142
+ .ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {
1143
+ background-color: #3a674e;
1144
+ }
1145
+ .ace_editor.ace_autocomplete .ace_line-hover {
1146
+ border: 1px solid #abbffe;
1147
+ margin-top: -1px;
1148
+ background: rgba(233,233,253,0.4);
1149
+ position: absolute;
1150
+ z-index: 2;
1151
+ }
1152
+ .ace_dark.ace_editor.ace_autocomplete .ace_line-hover {
1153
+ border: 1px solid rgba(109, 150, 13, 0.8);
1154
+ background: rgba(58, 103, 78, 0.62);
1155
+ }
1156
+ .ace_completion-meta {
1157
+ opacity: 0.5;
1158
+ margin-left: 0.9em;
1159
+ }
1160
+ .ace_completion-message {
1161
+ margin-left: 0.9em;
1162
+ color: blue;
1163
+ }
1164
+ .ace_editor.ace_autocomplete .ace_completion-highlight{
1165
+ color: #2d69c7;
1166
+ }
1167
+ .ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{
1168
+ color: #93ca12;
1169
+ }
1170
+ .ace_editor.ace_autocomplete {
1171
+ width: 300px;
1172
+ z-index: 200000;
1173
+ border: 1px lightgray solid;
1174
+ position: fixed;
1175
+ box-shadow: 2px 3px 5px rgba(0,0,0,.2);
1176
+ line-height: 1.4;
1177
+ background: #fefefe;
1178
+ color: #111;
1179
+ }
1180
+ .ace_dark.ace_editor.ace_autocomplete {
1181
+ border: 1px #484747 solid;
1182
+ box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51);
1183
+ line-height: 1.4;
1184
+ background: #25282c;
1185
+ color: #c1c1c1;
1186
+ }
1187
+ .ace_autocomplete .ace_text-layer {
1188
+ width: calc(100% - 8px);
1189
+ }
1190
+ .ace_autocomplete .ace_line {
1191
+ display: flex;
1192
+ align-items: center;
1193
+ }
1194
+ .ace_autocomplete .ace_line > * {
1195
+ min-width: 0;
1196
+ flex: 0 0 auto;
1197
+ }
1198
+ .ace_autocomplete .ace_line .ace_ {
1199
+ flex: 0 1 auto;
1200
+ overflow: hidden;
1201
+ text-overflow: ellipsis;
1202
+ }
1203
+ .ace_autocomplete .ace_completion-spacer {
1204
+ flex: 1;
1205
+ }
1206
+ .ace_autocomplete.ace_loading:after {
1207
+ content: "";
1208
+ position: absolute;
1209
+ top: 0px;
1210
+ height: 2px;
1211
+ width: 8%;
1212
+ background: blue;
1213
+ z-index: 100;
1214
+ animation: ace_progress 3s infinite linear;
1215
+ animation-delay: 300ms;
1216
+ transform: translateX(-100%) scaleX(1);
1217
+ }
1218
+ @keyframes ace_progress {
1219
+ 0% { transform: translateX(-100%) scaleX(1) }
1220
+ 50% { transform: translateX(625%) scaleX(2) }
1221
+ 100% { transform: translateX(1500%) scaleX(3) }
1222
+ }
1223
+ @media (prefers-reduced-motion) {
1224
+ .ace_autocomplete.ace_loading:after {
1225
+ transform: translateX(625%) scaleX(2);
1226
+ animation: none;
1227
+ }
1228
+ }
1229
+ `,"autocompletion.css",!1),r.AcePopup=b,r.$singleLineEditor=w,r.getAriaId=l}),ace.define("ace/autocomplete/inline_screenreader",["require","exports","module"],function(e,r,v){var f=function(){function y(C){this.editor=C,this.screenReaderDiv=document.createElement("div"),this.screenReaderDiv.classList.add("ace_screenreader-only"),this.editor.container.appendChild(this.screenReaderDiv)}return y.prototype.setScreenReaderContent=function(C){for(!this.popup&&this.editor.completer&&this.editor.completer.popup&&(this.popup=this.editor.completer.popup,this.popup.renderer.on("afterRender",(function(){var p=this.popup.getRow(),s=this.popup.renderer.$textLayer,a=s.element.childNodes[p-s.config.firstRow];if(a){for(var c="doc-tooltip ",l=0;l<this._lines.length;l++)c+="ace-inline-screenreader-line-".concat(l," ");a.setAttribute("aria-describedby",c)}}).bind(this)));this.screenReaderDiv.firstChild;)this.screenReaderDiv.removeChild(this.screenReaderDiv.firstChild);this._lines=C.split(/\r\n|\r|\n/);var h=this.createCodeBlock();this.screenReaderDiv.appendChild(h)},y.prototype.destroy=function(){this.screenReaderDiv.remove()},y.prototype.createCodeBlock=function(){var C=document.createElement("pre");C.setAttribute("id","ace-inline-screenreader");for(var h=0;h<this._lines.length;h++){var p=document.createElement("code");p.setAttribute("id","ace-inline-screenreader-line-".concat(h));var s=document.createTextNode(this._lines[h]);p.appendChild(s),C.appendChild(p)}return C},y}();r.AceInlineScreenReader=f}),ace.define("ace/autocomplete/inline",["require","exports","module","ace/snippets","ace/autocomplete/inline_screenreader"],function(e,r,v){var f=e("../snippets").snippetManager,y=e("./inline_screenreader").AceInlineScreenReader,C=function(){function h(){this.editor=null}return h.prototype.show=function(p,s,a){if(a=a||"",p&&this.editor&&this.editor!==p&&(this.hide(),this.editor=null,this.inlineScreenReader=null),!p||!s)return!1;this.inlineScreenReader||(this.inlineScreenReader=new y(p));var c=s.snippet?f.getDisplayTextForSnippet(p,s.snippet):s.value;return s.hideInlinePreview||!c||!c.startsWith(a)?!1:(this.editor=p,this.inlineScreenReader.setScreenReaderContent(c),c=c.slice(a.length),c===""?p.removeGhostText():p.setGhostText(c),!0)},h.prototype.isOpen=function(){return this.editor?!!this.editor.renderer.$ghostText:!1},h.prototype.hide=function(){return this.editor?(this.editor.removeGhostText(),!0):!1},h.prototype.destroy=function(){this.hide(),this.editor=null,this.inlineScreenReader&&(this.inlineScreenReader.destroy(),this.inlineScreenReader=null)},h}();r.AceInline=C}),ace.define("ace/autocomplete/util",["require","exports","module"],function(e,r,v){r.parForEach=function(y,C,h){var p=0,s=y.length;s===0&&h();for(var a=0;a<s;a++)C(y[a],function(c,l){p++,p===s&&h(c,l)})};var f=/[a-zA-Z_0-9\$\-\u00A2-\u2000\u2070-\uFFFF]/;r.retrievePrecedingIdentifier=function(y,C,h){h=h||f;for(var p=[],s=C-1;s>=0&&h.test(y[s]);s--)p.push(y[s]);return p.reverse().join("")},r.retrieveFollowingIdentifier=function(y,C,h){h=h||f;for(var p=[],s=C;s<y.length&&h.test(y[s]);s++)p.push(y[s]);return p},r.getCompletionPrefix=function(y){var C=y.getCursorPosition(),h=y.session.getLine(C.row),p;return y.completers.forEach((function(s){s.identifierRegexps&&s.identifierRegexps.forEach((function(a){!p&&a&&(p=this.retrievePrecedingIdentifier(h,C.column,a))}).bind(this))}).bind(this)),p||this.retrievePrecedingIdentifier(h,C.column)},r.triggerAutocomplete=function(y,h){var h=h??y.session.getPrecedingCharacter();return y.completers.some(function(p){if(p.triggerCharacters&&Array.isArray(p.triggerCharacters))return p.triggerCharacters.includes(h)})}}),ace.define("ace/autocomplete",["require","exports","module","ace/keyboard/hash_handler","ace/autocomplete/popup","ace/autocomplete/inline","ace/autocomplete/popup","ace/autocomplete/util","ace/lib/lang","ace/lib/dom","ace/snippets","ace/config","ace/lib/event","ace/lib/scroll"],function(e,r,v){var f=e("./keyboard/hash_handler").HashHandler,y=e("./autocomplete/popup").AcePopup,C=e("./autocomplete/inline").AceInline,h=e("./autocomplete/popup").getAriaId,p=e("./autocomplete/util"),s=e("./lib/lang"),a=e("./lib/dom"),c=e("./snippets").snippetManager,l=e("./config"),o=e("./lib/event"),u=e("./lib/scroll").preventParentScroll,d=function(M,k){k.completer&&k.completer.destroy()},w=function(){function M(){this.autoInsert=!1,this.autoSelect=!0,this.autoShown=!1,this.exactMatch=!1,this.inlineEnabled=!1,this.keyboardHandler=new f,this.keyboardHandler.bindKeys(this.commands),this.parentNode=null,this.setSelectOnHover=!1,this.hasSeen=new Set,this.showLoadingState=!1,this.stickySelectionDelay=500,this.blurListener=this.blurListener.bind(this),this.changeListener=this.changeListener.bind(this),this.mousedownListener=this.mousedownListener.bind(this),this.mousewheelListener=this.mousewheelListener.bind(this),this.onLayoutChange=this.onLayoutChange.bind(this),this.changeTimer=s.delayedCall((function(){this.updateCompletions(!0)}).bind(this)),this.tooltipTimer=s.delayedCall(this.updateDocTooltip.bind(this),50),this.popupTimer=s.delayedCall(this.$updatePopupPosition.bind(this),50),this.stickySelectionTimer=s.delayedCall((function(){this.stickySelection=!0}).bind(this),this.stickySelectionDelay),this.$firstOpenTimer=s.delayedCall((function(){var k=this.completionProvider&&this.completionProvider.initialPosition;this.autoShown||this.popup&&this.popup.isOpen||!k||this.editor.completers.length===0||(this.completions=new R(M.completionsForLoading),this.openPopup(this.editor,k.prefix,!1),this.popup.renderer.setStyle("ace_loading",!0))}).bind(this),this.stickySelectionDelay)}return Object.defineProperty(M,"completionsForLoading",{get:function(){return[{caption:l.nls("autocomplete.loading","Loading..."),value:""}]},enumerable:!1,configurable:!0}),M.prototype.$init=function(){return this.popup=new y(this.parentNode||document.body||document.documentElement),this.popup.on("click",(function(k){this.insertMatch(),k.stop()}).bind(this)),this.popup.focus=this.editor.focus.bind(this.editor),this.popup.on("show",this.$onPopupShow.bind(this)),this.popup.on("hide",this.$onHidePopup.bind(this)),this.popup.on("select",this.$onPopupChange.bind(this)),o.addListener(this.popup.container,"mouseout",this.mouseOutListener.bind(this)),this.popup.on("changeHoverMarker",this.tooltipTimer.bind(null,null)),this.popup.renderer.on("afterRender",this.$onPopupRender.bind(this)),this.popup},M.prototype.$initInline=function(){if(!(!this.inlineEnabled||this.inlineRenderer))return this.inlineRenderer=new C,this.inlineRenderer},M.prototype.getPopup=function(){return this.popup||this.$init()},M.prototype.$onHidePopup=function(){this.inlineRenderer&&this.inlineRenderer.hide(),this.hideDocTooltip(),this.stickySelectionTimer.cancel(),this.popupTimer.cancel(),this.stickySelection=!1},M.prototype.$seen=function(k){!this.hasSeen.has(k)&&k&&k.completer&&k.completer.onSeen&&typeof k.completer.onSeen=="function"&&(k.completer.onSeen(this.editor,k),this.hasSeen.add(k))},M.prototype.$onPopupChange=function(k){if(this.inlineRenderer&&this.inlineEnabled){var x=k?null:this.popup.getData(this.popup.getRow());if(this.$updateGhostText(x),this.popup.isMouseOver&&this.setSelectOnHover){this.tooltipTimer.call(null,null);return}this.popupTimer.schedule(),this.tooltipTimer.schedule()}else this.popupTimer.call(null,null),this.tooltipTimer.call(null,null)},M.prototype.$updateGhostText=function(k){var x=this.base.row,L=this.base.column,O=this.editor.getCursorPosition().column,I=this.editor.session.getLine(x).slice(L,O);this.inlineRenderer.show(this.editor,k,I)?this.$seen(k):this.inlineRenderer.hide()},M.prototype.$onPopupRender=function(){var k=this.inlineRenderer&&this.inlineEnabled;if(this.completions&&this.completions.filtered&&this.completions.filtered.length>0)for(var x=this.popup.getFirstVisibleRow();x<=this.popup.getLastVisibleRow();x++){var L=this.popup.getData(x);L&&(!k||L.hideInlinePreview)&&this.$seen(L)}},M.prototype.$onPopupShow=function(k){this.$onPopupChange(k),this.stickySelection=!1,this.stickySelectionDelay>=0&&this.stickySelectionTimer.schedule(this.stickySelectionDelay)},M.prototype.observeLayoutChanges=function(){if(!(this.$elements||!this.editor)){window.addEventListener("resize",this.onLayoutChange,{passive:!0}),window.addEventListener("wheel",this.mousewheelListener);for(var k=this.editor.container.parentNode,x=[];k;)x.push(k),k.addEventListener("scroll",this.onLayoutChange,{passive:!0}),k=k.parentNode;this.$elements=x}},M.prototype.unObserveLayoutChanges=function(){var k=this;window.removeEventListener("resize",this.onLayoutChange,{passive:!0}),window.removeEventListener("wheel",this.mousewheelListener),this.$elements&&this.$elements.forEach(function(x){x.removeEventListener("scroll",k.onLayoutChange,{passive:!0})}),this.$elements=null},M.prototype.onLayoutChange=function(){if(!this.popup.isOpen)return this.unObserveLayoutChanges();this.$updatePopupPosition(),this.updateDocTooltip()},M.prototype.$updatePopupPosition=function(){var k=this.editor,x=k.renderer,L=x.layerConfig.lineHeight,O=x.$cursorLayer.getPixelPosition(this.base,!0);O.left-=this.popup.getTextLeftOffset();var I=k.container.getBoundingClientRect();O.top+=I.top-x.layerConfig.offset,O.left+=I.left-k.renderer.scrollLeft,O.left+=x.gutterWidth;var E={top:O.top,left:O.left};x.$ghostText&&x.$ghostTextWidget&&this.base.row===x.$ghostText.position.row&&(E.top+=x.$ghostTextWidget.el.offsetHeight);var z=k.container.getBoundingClientRect().bottom-L,P=z<E.top?{top:z,left:E.left}:E;this.popup.tryShow(P,L,"bottom")||this.popup.tryShow(O,L,"top")||this.popup.show(O,L)},M.prototype.openPopup=function(k,x,L){this.$firstOpenTimer.cancel(),this.popup||this.$init(),this.inlineEnabled&&!this.inlineRenderer&&this.$initInline(),this.popup.autoSelect=this.autoSelect,this.popup.setSelectOnHover(this.setSelectOnHover);var O=this.popup.getRow(),I=this.popup.data[O];this.popup.setData(this.completions.filtered,this.completions.filterText),this.editor.textInput.setAriaOptions&&this.editor.textInput.setAriaOptions({activeDescendant:h(this.popup.getRow()),inline:this.inlineEnabled}),k.keyBinding.addKeyboardHandler(this.keyboardHandler);var E;this.stickySelection&&(E=this.popup.data.indexOf(I)),(!E||E===-1)&&(E=0),this.popup.setRow(this.autoSelect?E:-1),E===O&&I!==this.completions.filtered[E]&&this.$onPopupChange();var z=this.inlineRenderer&&this.inlineEnabled;if(E===O&&z){var P=this.popup.getData(this.popup.getRow());this.$updateGhostText(P)}L||(this.popup.setTheme(k.getTheme()),this.popup.setFontSize(k.getFontSize()),this.$updatePopupPosition(),this.tooltipNode&&this.updateDocTooltip()),this.changeTimer.cancel(),this.observeLayoutChanges()},M.prototype.detach=function(){this.editor&&(this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.off("changeSelection",this.changeListener),this.editor.off("blur",this.blurListener),this.editor.off("mousedown",this.mousedownListener),this.editor.off("mousewheel",this.mousewheelListener)),this.$firstOpenTimer.cancel(),this.changeTimer.cancel(),this.hideDocTooltip(),this.completionProvider&&this.completionProvider.detach(),this.popup&&this.popup.isOpen&&this.popup.hide(),this.popup&&this.popup.renderer&&this.popup.renderer.off("afterRender",this.$onPopupRender),this.base&&this.base.detach(),this.activated=!1,this.completionProvider=this.completions=this.base=null,this.unObserveLayoutChanges()},M.prototype.changeListener=function(k){var x=this.editor.selection.lead;(x.row!=this.base.row||x.column<this.base.column)&&this.detach(),this.activated?this.changeTimer.schedule():this.detach()},M.prototype.blurListener=function(k){var x=document.activeElement,L=this.editor.textInput.getElement(),O=k.relatedTarget&&this.tooltipNode&&this.tooltipNode.contains(k.relatedTarget),I=this.popup&&this.popup.container;x!=L&&x.parentNode!=I&&!O&&x!=this.tooltipNode&&k.relatedTarget!=L&&this.detach()},M.prototype.mousedownListener=function(k){this.detach()},M.prototype.mousewheelListener=function(k){this.popup&&!this.popup.isMouseOver&&this.detach()},M.prototype.mouseOutListener=function(k){this.popup.isOpen&&this.$updatePopupPosition()},M.prototype.goTo=function(k){this.popup.goTo(k)},M.prototype.insertMatch=function(k,x){if(k||(k=this.popup.getData(this.popup.getRow())),!k)return!1;if(k.value==="")return this.detach();var L=this.completions,O=this.getCompletionProvider().insertMatch(this.editor,k,L.filterText,x);return this.completions==L&&this.detach(),O},M.prototype.showPopup=function(k,x){this.editor&&this.detach(),this.activated=!0,this.editor=k,k.completer!=this&&(k.completer&&k.completer.detach(),k.completer=this),k.on("changeSelection",this.changeListener),k.on("blur",this.blurListener),k.on("mousedown",this.mousedownListener),k.on("mousewheel",this.mousewheelListener),this.updateCompletions(!1,x)},M.prototype.getCompletionProvider=function(k){return this.completionProvider||(this.completionProvider=new b(k)),this.completionProvider},M.prototype.gatherCompletions=function(k,x){return this.getCompletionProvider().gatherCompletions(k,x)},M.prototype.updateCompletions=function(k,x){if(k&&this.base&&this.completions){var O=this.editor.getCursorPosition(),I=this.editor.session.getTextRange({start:this.base,end:O});if(I==this.completions.filterText)return;if(this.completions.setFilter(I),!this.completions.filtered.length)return this.detach();if(this.completions.filtered.length==1&&this.completions.filtered[0].value==I&&!this.completions.filtered[0].snippet)return this.detach();this.openPopup(this.editor,I,k);return}if(x&&x.matches){var O=this.editor.getSelectionRange().start;return this.base=this.editor.session.doc.createAnchor(O.row,O.column),this.base.$insertRight=!0,this.completions=new R(x.matches),this.getCompletionProvider().completions=this.completions,this.openPopup(this.editor,"",k)}var L=this.editor.getSession(),O=this.editor.getCursorPosition(),I=p.getCompletionPrefix(this.editor);this.base=L.doc.createAnchor(O.row,O.column-I.length),this.base.$insertRight=!0;var E={exactMatch:this.exactMatch,ignoreCaption:this.ignoreCaption};this.getCompletionProvider({prefix:I,pos:O}).provideCompletions(this.editor,E,(function(z,P,N){var S=P.filtered,A=p.getCompletionPrefix(this.editor);if(this.$firstOpenTimer.cancel(),N){if(!S.length){var D=!this.autoShown&&this.emptyMessage;if(typeof D=="function"&&(D=this.emptyMessage(A)),D){var j=[{caption:D,value:""}];this.completions=new R(j),this.openPopup(this.editor,A,k),this.popup.renderer.setStyle("ace_loading",!1),this.popup.renderer.setStyle("ace_empty-message",!0);return}return this.detach()}if(S.length==1&&S[0].value==A&&!S[0].snippet)return this.detach();if(this.autoInsert&&!this.autoShown&&S.length==1)return this.insertMatch(S[0])}this.completions=!N&&this.showLoadingState?new R(M.completionsForLoading.concat(S),P.filterText):P,this.openPopup(this.editor,A,k),this.popup.renderer.setStyle("ace_empty-message",!1),this.popup.renderer.setStyle("ace_loading",!N)}).bind(this)),this.showLoadingState&&!this.autoShown&&(!this.popup||!this.popup.isOpen)&&this.$firstOpenTimer.delay(this.stickySelectionDelay/2)},M.prototype.cancelContextMenu=function(){this.editor.$mouseHandler.cancelContextMenu()},M.prototype.updateDocTooltip=function(){var k=this.popup,x=this.completions&&this.completions.filtered,L=x&&(x[k.getHoveredRow()]||x[k.getRow()]),O=null;if(!L||!this.editor||!this.popup.isOpen)return this.hideDocTooltip();for(var I=this.editor.completers.length,E=0;E<I;E++){var z=this.editor.completers[E];if(z.getDocTooltip&&L.completerId===z.id){O=z.getDocTooltip(L);break}}if(!O&&typeof L!="string"&&(O=L),typeof O=="string"&&(O={docText:O}),!O||!O.docHTML&&!O.docText)return this.hideDocTooltip();this.showDocTooltip(O)},M.prototype.showDocTooltip=function(k){this.tooltipNode||(this.tooltipNode=a.createElement("div"),this.tooltipNode.style.margin="0",this.tooltipNode.style.pointerEvents="auto",this.tooltipNode.style.overscrollBehavior="contain",this.tooltipNode.tabIndex=-1,this.tooltipNode.onblur=this.blurListener.bind(this),this.tooltipNode.onclick=this.onTooltipClick.bind(this),this.tooltipNode.id="doc-tooltip",this.tooltipNode.setAttribute("role","tooltip"),this.tooltipNode.addEventListener("wheel",u));var x=this.editor.renderer.theme;this.tooltipNode.className="ace_tooltip ace_doc-tooltip "+(x.isDark?"ace_dark ":"")+(x.cssClass||"");var L=this.tooltipNode;k.docHTML?L.innerHTML=k.docHTML:k.docText&&(L.textContent=k.docText),L.parentNode||this.popup.container.appendChild(this.tooltipNode);var O=this.popup,I=O.container.getBoundingClientRect(),E=400,z=300,P=O.renderer.scrollBar.width||10,N=I.left,S=window.innerWidth-I.right-P,A=O.isTopdown?I.top:window.innerHeight-P-I.bottom,D=[Math.min(S/E,1),Math.min(N/E,1),Math.min(A/z*.9)],j=Math.max.apply(Math,D),U=L.style;U.display="block",j==D[0]?(U.left=I.right+1+"px",U.right="",U.maxWidth=E*j+"px",U.top=I.top+"px",U.bottom="",U.maxHeight=Math.min(window.innerHeight-P-I.top,z)+"px"):j==D[1]?(U.right=window.innerWidth-I.left+"px",U.left="",U.maxWidth=E*j+"px",U.top=I.top+"px",U.bottom="",U.maxHeight=Math.min(window.innerHeight-P-I.top,z)+"px"):j==D[2]&&(U.left=window.innerWidth-I.left+"px",U.maxWidth=Math.min(E,window.innerWidth)+"px",O.isTopdown?(U.top=I.bottom+"px",U.left=I.left+"px",U.right="",U.bottom="",U.maxHeight=Math.min(window.innerHeight-P-I.bottom,z)+"px"):(U.top=O.container.offsetTop-L.offsetHeight+"px",U.left=I.left+"px",U.right="",U.bottom="",U.maxHeight=Math.min(O.container.offsetTop,z)+"px"))},M.prototype.hideDocTooltip=function(){if(this.tooltipTimer.cancel(),!!this.tooltipNode){var k=this.tooltipNode;!this.editor.isFocused()&&document.activeElement==k&&this.editor.focus(),this.tooltipNode=null,k.parentNode&&k.parentNode.removeChild(k)}},M.prototype.onTooltipClick=function(k){for(var x=k.target;x&&x!=this.tooltipNode;){if(x.nodeName=="A"&&x.href){x.rel="noreferrer",x.target="_blank";break}x=x.parentNode}},M.prototype.destroy=function(){if(this.detach(),this.popup){this.popup.destroy();var k=this.popup.container;k&&k.parentNode&&k.parentNode.removeChild(k)}this.editor&&this.editor.completer==this&&(this.editor.off("destroy",d),this.editor.completer=null),this.inlineRenderer=this.popup=this.editor=null},M.for=function(k){return k.completer instanceof M||(k.completer&&(k.completer.destroy(),k.completer=null),l.get("sharedPopups")?(M.$sharedInstance||(M.$sharedInstance=new M),k.completer=M.$sharedInstance):(k.completer=new M,k.once("destroy",d))),k.completer},M}();w.prototype.commands={Up:function(M){M.completer.goTo("up")},Down:function(M){M.completer.goTo("down")},"Ctrl-Up|Ctrl-Home":function(M){M.completer.goTo("start")},"Ctrl-Down|Ctrl-End":function(M){M.completer.goTo("end")},Esc:function(M){M.completer.detach()},Return:function(M){return M.completer.insertMatch()},"Shift-Return":function(M){M.completer.insertMatch(null,{deleteSuffix:!0})},Tab:function(M){var k=M.completer.insertMatch();if(k||M.tabstopManager)return k;M.completer.goTo("down")},Backspace:function(M){M.execCommand("backspace");var k=p.getCompletionPrefix(M);!k&&M.completer&&M.completer.detach()},PageUp:function(M){M.completer.popup.gotoPageUp()},PageDown:function(M){M.completer.popup.gotoPageDown()}},w.startCommand={name:"startAutocomplete",exec:function(M,k){var x=w.for(M);x.autoInsert=!1,x.autoSelect=!0,x.autoShown=!1,x.showPopup(M,k),x.cancelContextMenu()},bindKey:"Ctrl-Space|Ctrl-Shift-Space|Alt-Space"};var b=function(){function M(k){this.initialPosition=k,this.active=!0}return M.prototype.insertByIndex=function(k,x,L){return!this.completions||!this.completions.filtered?!1:this.insertMatch(k,this.completions.filtered[x],L)},M.prototype.insertMatch=function(k,x,L){if(!x)return!1;if(k.startOperation({command:{name:"insertMatch"}}),x.completer&&x.completer.insertMatch)x.completer.insertMatch(k,x);else{if(!this.completions)return!1;var O=this.completions.filterText.length,I=0;if(x.range&&x.range.start.row===x.range.end.row&&(O-=this.initialPosition.prefix.length,O+=this.initialPosition.pos.column-x.range.start.column,I+=x.range.end.column-this.initialPosition.pos.column),O||I){var E;k.selection.getAllRanges?E=k.selection.getAllRanges():E=[k.getSelectionRange()];for(var z=0,P;P=E[z];z++)P.start.column-=O,P.end.column+=I,k.session.remove(P)}x.snippet?c.insertSnippet(k,x.snippet):this.$insertString(k,x),x.completer&&x.completer.onInsert&&typeof x.completer.onInsert=="function"&&x.completer.onInsert(k,x),x.command&&x.command==="startAutocomplete"&&k.execCommand(x.command)}return k.endOperation(),!0},M.prototype.$insertString=function(k,x){var L=x.value||x;k.execCommand("insertstring",L)},M.prototype.gatherCompletions=function(k,x){var L=k.getSession(),O=k.getCursorPosition(),I=p.getCompletionPrefix(k),E=[];this.completers=k.completers;var z=k.completers.length;return k.completers.forEach(function(P,N){P.getCompletions(k,L,O,I,function(S,A){P.hideInlinePreview&&(A=A.map(function(D){return Object.assign(D,{hideInlinePreview:P.hideInlinePreview})})),!S&&A&&(E=E.concat(A)),x(null,{prefix:p.getCompletionPrefix(k),matches:E,finished:--z===0})})}),!0},M.prototype.provideCompletions=function(k,x,L){var O=(function(P){var N=P.prefix,S=P.matches;this.completions=new R(S),x.exactMatch&&(this.completions.exactMatch=!0),x.ignoreCaption&&(this.completions.ignoreCaption=!0),this.completions.setFilter(N),(P.finished||this.completions.filtered.length)&&L(null,this.completions,P.finished)}).bind(this),I=!0,E=null;if(this.gatherCompletions(k,(function(P,N){if(this.active){P&&(L(P,[],!0),this.detach());var S=N.prefix;if(S.indexOf(N.prefix)===0){if(I){E=N;return}O(N)}}}).bind(this)),I=!1,E){var z=E;E=null,O(z)}},M.prototype.detach=function(){this.active=!1,this.completers&&this.completers.forEach(function(k){typeof k.cancel=="function"&&k.cancel()})},M}(),R=function(){function M(k,x){this.all=k,this.filtered=k,this.filterText=x||"",this.exactMatch=!1,this.ignoreCaption=!1}return M.prototype.setFilter=function(k){if(k.length>this.filterText&&k.lastIndexOf(this.filterText,0)===0)var x=this.filtered;else var x=this.all;this.filterText=k,x=this.filterCompletions(x,this.filterText),x=x.sort(function(O,I){return I.exactMatch-O.exactMatch||I.$score-O.$score||(O.caption||O.value).localeCompare(I.caption||I.value)});var L=null;x=x.filter(function(O){var I=O.snippet||O.caption||O.value;return I===L?!1:(L=I,!0)}),this.filtered=x},M.prototype.filterCompletions=function(k,x){var L=[],O=x.toUpperCase(),I=x.toLowerCase();e:for(var E=0,z;z=k[E];E++){if(z.skipFilter){z.$score=z.score,L.push(z);continue}var P=!this.ignoreCaption&&z.caption||z.value||z.snippet;if(P){var N=-1,S=0,A=0,D,j;if(this.exactMatch){if(x!==P.substr(0,x.length))continue e}else{var U=P.toLowerCase().indexOf(I);if(U>-1)A=U;else for(var q=0;q<x.length;q++){var Z=P.indexOf(I[q],N+1),te=P.indexOf(O[q],N+1);if(D=Z>=0&&(te<0||Z<te)?Z:te,D<0)continue e;j=D-N-1,j>0&&(N===-1&&(A+=10),A+=j,S|=1<<q),N=D}}z.matchMask=S,z.exactMatch=A?0:1,z.$score=(z.score||0)-A,L.push(z)}}return L},M}();r.Autocomplete=w,r.CompletionProvider=b,r.FilteredList=R}),ace.define("ace/marker_group",["require","exports","module"],function(e,r,v){var f=function(){function y(C,h){h&&(this.markerType=h.markerType),this.markers=[],this.session=C,C.addDynamicMarker(this)}return y.prototype.getMarkerAtPosition=function(C){return this.markers.find(function(h){return h.range.contains(C.row,C.column)})},y.prototype.markersComparator=function(C,h){return C.range.start.row-h.range.start.row},y.prototype.setMarkers=function(C){this.markers=C.sort(this.markersComparator).slice(0,this.MAX_MARKERS),this.session._signal("changeBackMarker")},y.prototype.update=function(C,h,p,s){if(!(!this.markers||!this.markers.length))for(var a=s.firstRow,c=s.lastRow,l,o=0,u=0,d=0;d<this.markers.length;d++){var w=this.markers[d];if(!(w.range.end.row<a)&&!(w.range.start.row>c)&&(w.range.start.row===u?o++:(u=w.range.start.row,o=0),!(o>200))){var b=w.range.clipRows(a,c);if(!(b.start.row===b.end.row&&b.start.column===b.end.column)){var R=b.toScreenRange(p);if(R.isEmpty()){l=p.getNextFoldLine(b.end.row,l),l&&l.end.row>b.end.row&&(a=l.end.row);continue}this.markerType==="fullLine"?h.drawFullLineMarker(C,R,w.className,s):R.isMultiLine()?this.markerType==="line"?h.drawMultiLineMarker(C,R,w.className,s):h.drawTextMarker(C,R,w.className,s):h.drawSingleLineMarker(C,R,w.className+" ace_br15",s)}}}},y}();f.prototype.MAX_MARKERS=1e4,r.MarkerGroup=f}),ace.define("ace/autocomplete/text_completer",["require","exports","module","ace/range"],function(e,r,v){function f(p,s){var a=p.getTextRange(C.fromPoints({row:0,column:0},s));return a.split(h).length-1}function y(p,s){var a=f(p,s),c=p.getValue().split(h),l=Object.create(null),o=c[a];return c.forEach(function(u,d){if(!(!u||u===o)){var w=Math.abs(a-d),b=c.length-w;l[u]?l[u]=Math.max(b,l[u]):l[u]=b}}),l}var C=e("../range").Range,h=/[^a-zA-Z_0-9\$\-\u00C0-\u1FFF\u2C00-\uD7FF\w]+/;r.getCompletions=function(p,s,a,c,l){var o=y(s,a),u=Object.keys(o);l(null,u.map(function(d){return{caption:d,value:d,score:o[d],meta:"local"}}))}}),ace.define("ace/ext/language_tools",["require","exports","module","ace/snippets","ace/autocomplete","ace/config","ace/lib/lang","ace/autocomplete/util","ace/marker_group","ace/autocomplete/text_completer","ace/editor","ace/config"],function(e,r,v){var f=e("../snippets").snippetManager,y=e("../autocomplete").Autocomplete,C=e("../config"),h=e("../lib/lang"),p=e("../autocomplete/util"),s=e("../marker_group").MarkerGroup,a=e("../autocomplete/text_completer"),c={getCompletions:function(I,E,z,P,N){if(E.$mode.completer)return E.$mode.completer.getCompletions(I,E,z,P,N);var S=I.session.getState(z.row),A=E.$mode.getCompletions(S,E,z,P);A=A.map(function(D){return D.completerId=c.id,D}),N(null,A)},id:"keywordCompleter"},l=function(I){var E={};return I.replace(/\${(\d+)(:(.*?))?}/g,function(z,P,N,S){return E[P]=S||""}).replace(/\$(\d+?)/g,function(z,P){return E[P]})},o={getCompletions:function(I,E,z,P,N){var S=[],A=E.getTokenAt(z.row,z.column);A&&A.type.match(/(tag-name|tag-open|tag-whitespace|attribute-name|attribute-value)\.xml$/)?S.push("html-tag"):S=f.getActiveScopes(I);var D=f.snippetMap,j=[];S.forEach(function(U){for(var q=D[U]||[],Z=q.length;Z--;){var te=q[Z],he=te.name||te.tabTrigger;he&&j.push({caption:he,snippet:te.content,meta:te.tabTrigger&&!te.name?te.tabTrigger+"⇥ ":"snippet",completerId:o.id})}},this),N(null,j)},getDocTooltip:function(I){I.snippet&&!I.docHTML&&(I.docHTML=["<b>",h.escapeHTML(I.caption),"</b>","<hr></hr>",h.escapeHTML(l(I.snippet))].join(""))},id:"snippetCompleter"},u=[o,a,c];r.setCompleters=function(I){u.length=0,I&&u.push.apply(u,I)},r.addCompleter=function(I){u.push(I)},r.textCompleter=a,r.keyWordCompleter=c,r.snippetCompleter=o;var d={name:"expandSnippet",exec:function(I){return f.expandWithTab(I)},bindKey:"Tab"},w=function(I,E){b(E.session.$mode)},b=function(I){typeof I=="string"&&(I=C.$modes[I]),I&&(f.files||(f.files={}),R(I.$id,I.snippetFileId),I.modes&&I.modes.forEach(b))},R=function(I,E){!E||!I||f.files[I]||(f.files[I]={},C.loadModule(E,function(z){z&&(f.files[I]=z,!z.snippets&&z.snippetText&&(z.snippets=f.parseSnippetFile(z.snippetText)),f.register(z.snippets||[],z.scope),z.includeScopes&&(f.snippetMap[z.scope].includeScopes=z.includeScopes,z.includeScopes.forEach(function(P){b("ace/mode/"+P)})))}))},M=function(I){var E=I.editor,z=E.completer&&E.completer.activated;if(I.command.name==="backspace")z&&!p.getCompletionPrefix(E)&&E.completer.detach();else if(I.command.name==="insertstring"&&!z){k=I;var P=I.editor.$liveAutocompletionDelay;P?x.delay(P):L(I)}},k,x=h.delayedCall(function(){L(k)},0),L=function(I){var E=I.editor,z=p.getCompletionPrefix(E),P=I.args,N=p.triggerAutocomplete(E,P);if(z&&z.length>=E.$liveAutocompletionThreshold||N){var S=y.for(E);S.autoShown=!0,S.showPopup(E)}},O=e("../editor").Editor;e("../config").defineOptions(O.prototype,"editor",{enableBasicAutocompletion:{set:function(I){I?(y.for(this),this.completers||(this.completers=Array.isArray(I)?I:u),this.commands.addCommand(y.startCommand)):this.commands.removeCommand(y.startCommand)},value:!1},enableLiveAutocompletion:{set:function(I){I?(this.completers||(this.completers=Array.isArray(I)?I:u),this.commands.on("afterExec",M)):this.commands.off("afterExec",M)},value:!1},liveAutocompletionDelay:{initialValue:0},liveAutocompletionThreshold:{initialValue:0},enableSnippets:{set:function(I){I?(this.commands.addCommand(d),this.on("changeMode",w),w(null,this)):(this.commands.removeCommand(d),this.off("changeMode",w))},value:!1}}),r.MarkerGroup=s}),function(){ace.require(["ace/ext/language_tools"],function(e){n&&(n.exports=e)})}()}(Kp)),Kp.exports}zb();var Yp={exports:{}},Xp;function jb(){return Xp||(Xp=1,function(n,t){ace.define("ace/ext/searchbox-css",["require","exports","module"],function(e,r,v){v.exports=`
1230
+
1231
+ /* ------------------------------------------------------------------------------------------
1232
+ * Editor Search Form
1233
+ * --------------------------------------------------------------------------------------- */
1234
+ .ace_search {
1235
+ background-color: #ddd;
1236
+ color: #666;
1237
+ border: 1px solid #cbcbcb;
1238
+ border-top: 0 none;
1239
+ overflow: hidden;
1240
+ margin: 0;
1241
+ padding: 4px 6px 0 4px;
1242
+ position: absolute;
1243
+ top: 0;
1244
+ z-index: 99;
1245
+ white-space: normal;
1246
+ }
1247
+ .ace_search.left {
1248
+ border-left: 0 none;
1249
+ border-radius: 0px 0px 5px 0px;
1250
+ left: 0;
1251
+ }
1252
+ .ace_search.right {
1253
+ border-radius: 0px 0px 0px 5px;
1254
+ border-right: 0 none;
1255
+ right: 0;
1256
+ }
1257
+
1258
+ .ace_search_form, .ace_replace_form {
1259
+ margin: 0 20px 4px 0;
1260
+ overflow: hidden;
1261
+ line-height: 1.9;
1262
+ }
1263
+ .ace_replace_form {
1264
+ margin-right: 0;
1265
+ }
1266
+ .ace_search_form.ace_nomatch {
1267
+ outline: 1px solid red;
1268
+ }
1269
+
1270
+ .ace_search_field {
1271
+ border-radius: 3px 0 0 3px;
1272
+ background-color: white;
1273
+ color: black;
1274
+ border: 1px solid #cbcbcb;
1275
+ border-right: 0 none;
1276
+ outline: 0;
1277
+ padding: 0;
1278
+ font-size: inherit;
1279
+ margin: 0;
1280
+ line-height: inherit;
1281
+ padding: 0 6px;
1282
+ min-width: 17em;
1283
+ vertical-align: top;
1284
+ min-height: 1.8em;
1285
+ box-sizing: content-box;
1286
+ }
1287
+ .ace_searchbtn {
1288
+ border: 1px solid #cbcbcb;
1289
+ line-height: inherit;
1290
+ display: inline-block;
1291
+ padding: 0 6px;
1292
+ background: #fff;
1293
+ border-right: 0 none;
1294
+ border-left: 1px solid #dcdcdc;
1295
+ cursor: pointer;
1296
+ margin: 0;
1297
+ position: relative;
1298
+ color: #666;
1299
+ }
1300
+ .ace_searchbtn:last-child {
1301
+ border-radius: 0 3px 3px 0;
1302
+ border-right: 1px solid #cbcbcb;
1303
+ }
1304
+ .ace_searchbtn:disabled {
1305
+ background: none;
1306
+ cursor: default;
1307
+ }
1308
+ .ace_searchbtn:hover {
1309
+ background-color: #eef1f6;
1310
+ }
1311
+ .ace_searchbtn.prev, .ace_searchbtn.next {
1312
+ padding: 0px 0.7em
1313
+ }
1314
+ .ace_searchbtn.prev:after, .ace_searchbtn.next:after {
1315
+ content: "";
1316
+ border: solid 2px #888;
1317
+ width: 0.5em;
1318
+ height: 0.5em;
1319
+ border-width: 2px 0 0 2px;
1320
+ display:inline-block;
1321
+ transform: rotate(-45deg);
1322
+ }
1323
+ .ace_searchbtn.next:after {
1324
+ border-width: 0 2px 2px 0 ;
1325
+ }
1326
+ .ace_searchbtn_close {
1327
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;
1328
+ border-radius: 50%;
1329
+ border: 0 none;
1330
+ color: #656565;
1331
+ cursor: pointer;
1332
+ font: 16px/16px Arial;
1333
+ padding: 0;
1334
+ height: 14px;
1335
+ width: 14px;
1336
+ top: 9px;
1337
+ right: 7px;
1338
+ position: absolute;
1339
+ }
1340
+ .ace_searchbtn_close:hover {
1341
+ background-color: #656565;
1342
+ background-position: 50% 100%;
1343
+ color: white;
1344
+ }
1345
+
1346
+ .ace_button {
1347
+ margin-left: 2px;
1348
+ cursor: pointer;
1349
+ -webkit-user-select: none;
1350
+ -moz-user-select: none;
1351
+ -o-user-select: none;
1352
+ -ms-user-select: none;
1353
+ user-select: none;
1354
+ overflow: hidden;
1355
+ opacity: 0.7;
1356
+ border: 1px solid rgba(100,100,100,0.23);
1357
+ padding: 1px;
1358
+ box-sizing: border-box!important;
1359
+ color: black;
1360
+ }
1361
+
1362
+ .ace_button:hover {
1363
+ background-color: #eee;
1364
+ opacity:1;
1365
+ }
1366
+ .ace_button:active {
1367
+ background-color: #ddd;
1368
+ }
1369
+
1370
+ .ace_button.checked {
1371
+ border-color: #3399ff;
1372
+ opacity:1;
1373
+ }
1374
+
1375
+ .ace_search_options{
1376
+ margin-bottom: 3px;
1377
+ text-align: right;
1378
+ -webkit-user-select: none;
1379
+ -moz-user-select: none;
1380
+ -o-user-select: none;
1381
+ -ms-user-select: none;
1382
+ user-select: none;
1383
+ clear: both;
1384
+ }
1385
+
1386
+ .ace_search_counter {
1387
+ float: left;
1388
+ font-family: arial;
1389
+ padding: 0 8px;
1390
+ }`}),ace.define("ace/ext/searchbox",["require","exports","module","ace/ext/searchbox","ace/ext/searchbox","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/ext/searchbox-css","ace/keyboard/hash_handler","ace/lib/keys","ace/config"],function(e,r,v){var f=e("../lib/dom"),y=e("../lib/lang"),C=e("../lib/event"),h=e("./searchbox-css"),p=e("../keyboard/hash_handler").HashHandler,s=e("../lib/keys"),a=e("../config").nls,c=999;f.importCssString(h,"ace_searchbox",!1);var l=function(){function d(w,b,R){this.activeInput,this.element=f.buildDom(["div",{class:"ace_search right"},["span",{action:"hide",class:"ace_searchbtn_close"}],["div",{class:"ace_search_form"},["input",{class:"ace_search_field",placeholder:a("search-box.find.placeholder","Search for"),spellcheck:"false"}],["span",{action:"findPrev",class:"ace_searchbtn prev"},"​"],["span",{action:"findNext",class:"ace_searchbtn next"},"​"],["span",{action:"findAll",class:"ace_searchbtn",title:"Alt-Enter"},a("search-box.find-all.text","All")]],["div",{class:"ace_replace_form"},["input",{class:"ace_search_field",placeholder:a("search-box.replace.placeholder","Replace with"),spellcheck:"false"}],["span",{action:"replaceAndFindNext",class:"ace_searchbtn"},a("search-box.replace-next.text","Replace")],["span",{action:"replaceAll",class:"ace_searchbtn"},a("search-box.replace-all.text","All")]],["div",{class:"ace_search_options"},["span",{action:"toggleReplace",class:"ace_button",title:a("search-box.toggle-replace.title","Toggle Replace mode"),style:"float:left;margin-top:-2px;padding:0 5px;"},"+"],["span",{class:"ace_search_counter"}],["span",{action:"toggleRegexpMode",class:"ace_button",title:a("search-box.toggle-regexp.title","RegExp Search")},".*"],["span",{action:"toggleCaseSensitive",class:"ace_button",title:a("search-box.toggle-case.title","CaseSensitive Search")},"Aa"],["span",{action:"toggleWholeWords",class:"ace_button",title:a("search-box.toggle-whole-word.title","Whole Word Search")},"\\b"],["span",{action:"searchInSelection",class:"ace_button",title:a("search-box.toggle-in-selection.title","Search In Selection")},"S"]]]),this.setSession=this.setSession.bind(this),this.$onEditorInput=this.onEditorInput.bind(this),this.$init(),this.setEditor(w),f.importCssString(h,"ace_searchbox",w.container),C.addListener(this.element,"touchstart",function(M){M.stopPropagation()},w)}return d.prototype.setEditor=function(w){w.searchBox=this,w.renderer.scroller.appendChild(this.element),this.editor=w},d.prototype.setSession=function(w){this.searchRange=null,this.$syncOptions(!0)},d.prototype.onEditorInput=function(){this.find(!1,!1,!0)},d.prototype.$initElements=function(w){this.searchBox=w.querySelector(".ace_search_form"),this.replaceBox=w.querySelector(".ace_replace_form"),this.searchOption=w.querySelector("[action=searchInSelection]"),this.replaceOption=w.querySelector("[action=toggleReplace]"),this.regExpOption=w.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=w.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=w.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field"),this.searchCounter=w.querySelector(".ace_search_counter")},d.prototype.$init=function(){var w=this.element;this.$initElements(w);var b=this;C.addListener(w,"mousedown",function(R){setTimeout(function(){b.activeInput.focus()},0),C.stopPropagation(R)}),C.addListener(w,"click",function(R){var M=R.target||R.srcElement,k=M.getAttribute("action");k&&b[k]?b[k]():b.$searchBarKb.commands[k]&&b.$searchBarKb.commands[k].exec(b),C.stopPropagation(R)}),C.addCommandKeyListener(w,function(R,M,k){var x=s.keyCodeToString(k),L=b.$searchBarKb.findKeyCommand(M,x);L&&L.exec&&(L.exec(b),C.stopEvent(R))}),this.$onChange=y.delayedCall(function(){b.find(!1,!1)}),C.addListener(this.searchInput,"input",function(){b.$onChange.schedule(20)}),C.addListener(this.searchInput,"focus",function(){b.activeInput=b.searchInput,b.searchInput.value&&b.highlight()}),C.addListener(this.replaceInput,"focus",function(){b.activeInput=b.replaceInput,b.searchInput.value&&b.highlight()})},d.prototype.setSearchRange=function(w){this.searchRange=w,w?this.searchRangeMarker=this.editor.session.addMarker(w,"ace_active-line"):this.searchRangeMarker&&(this.editor.session.removeMarker(this.searchRangeMarker),this.searchRangeMarker=null)},d.prototype.$syncOptions=function(w){f.setCssClass(this.replaceOption,"checked",this.searchRange),f.setCssClass(this.searchOption,"checked",this.searchOption.checked),this.replaceOption.textContent=this.replaceOption.checked?"-":"+",f.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),f.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),f.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked);var b=this.editor.getReadOnly();this.replaceOption.style.display=b?"none":"",this.replaceBox.style.display=this.replaceOption.checked&&!b?"":"none",this.find(!1,!1,w)},d.prototype.highlight=function(w){this.editor.session.highlight(w||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},d.prototype.find=function(w,b,R){if(this.editor.session){var M=this.editor.find(this.searchInput.value,{skipCurrent:w,backwards:b,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:R,range:this.searchRange}),k=!M&&this.searchInput.value;f.setCssClass(this.searchBox,"ace_nomatch",k),this.editor._emit("findSearchBox",{match:!k}),this.highlight(),this.updateCounter()}},d.prototype.updateCounter=function(){var w=this.editor,b=w.$search.$options.re,R=b.unicode,M=0,k=0;if(b){var x=this.searchRange?w.session.getTextRange(this.searchRange):w.getValue();w.$search.$isMultilineSearch(w.getLastSearchOptions())&&(x=x.replace(/\r\n|\r|\n/g,`
1391
+ `),w.session.doc.$autoNewLine=`
1392
+ `);var L=w.session.doc.positionToIndex(w.selection.anchor);this.searchRange&&(L-=w.session.doc.positionToIndex(this.searchRange.start));for(var O=b.lastIndex=0,I;(I=b.exec(x))&&(M++,O=I.index,O<=L&&k++,!(M>c||!I[0]&&(b.lastIndex=O+=y.skipEmptyMatch(x,O,R),O>=x.length))););}this.searchCounter.textContent=a("search-box.search-counter","$0 of $1",[k,M>c?c+"+":M])},d.prototype.findNext=function(){this.find(!0,!1)},d.prototype.findPrev=function(){this.find(!0,!0)},d.prototype.findAll=function(){var w=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),b=!w&&this.searchInput.value;f.setCssClass(this.searchBox,"ace_nomatch",b),this.editor._emit("findSearchBox",{match:!b}),this.highlight(),this.hide()},d.prototype.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},d.prototype.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},d.prototype.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},d.prototype.hide=function(){this.active=!1,this.setSearchRange(null),this.editor.off("changeSession",this.setSession),this.editor.off("input",this.$onEditorInput),this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},d.prototype.show=function(w,b){this.active=!0,this.editor.on("changeSession",this.setSession),this.editor.on("input",this.$onEditorInput),this.element.style.display="",this.replaceOption.checked=b,this.editor.$search.$options.regExp&&(w=y.escapeRegExp(w)),w!=null&&(this.searchInput.value=w),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb),this.$syncOptions(!0)},d.prototype.isFocused=function(){var w=document.activeElement;return w==this.searchInput||w==this.replaceInput},d}(),o=new p;o.bindKeys({"Ctrl-f|Command-f":function(d){var w=d.isReplace=!d.isReplace;d.replaceBox.style.display=w?"":"none",d.replaceOption.checked=!1,d.$syncOptions(),d.searchInput.focus()},"Ctrl-H|Command-Option-F":function(d){d.editor.getReadOnly()||(d.replaceOption.checked=!0,d.$syncOptions(),d.replaceInput.focus())},"Ctrl-G|Command-G":function(d){d.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(d){d.findPrev()},esc:function(d){setTimeout(function(){d.hide()})},Return:function(d){d.activeInput==d.replaceInput&&d.replace(),d.findNext()},"Shift-Return":function(d){d.activeInput==d.replaceInput&&d.replace(),d.findPrev()},"Alt-Return":function(d){d.activeInput==d.replaceInput&&d.replaceAll(),d.findAll()},Tab:function(d){(d.activeInput==d.replaceInput?d.searchInput:d.replaceInput).focus()}}),o.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(d){d.regExpOption.checked=!d.regExpOption.checked,d.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(d){d.caseSensitiveOption.checked=!d.caseSensitiveOption.checked,d.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(d){d.wholeWordOption.checked=!d.wholeWordOption.checked,d.$syncOptions()}},{name:"toggleReplace",exec:function(d){d.replaceOption.checked=!d.replaceOption.checked,d.$syncOptions()}},{name:"searchInSelection",exec:function(d){d.searchOption.checked=!d.searchRange,d.setSearchRange(d.searchOption.checked&&d.editor.getSelectionRange()),d.$syncOptions()}}]);var u=new p([{bindKey:"Esc",name:"closeSearchBar",exec:function(d){d.searchBox.hide()}}]);l.prototype.$searchBarKb=o,l.prototype.$closeSearchBarKb=u,r.SearchBox=l,r.Search=function(d,w){var b=d.searchBox||new l(d),R=d.session.selection.getRange(),M=R.isMultiLine()?"":d.session.getTextRange(R);b.show(M,w)}}),function(){ace.require(["ace/ext/searchbox"],function(e){n&&(n.exports=e)})}()}(Yp)),Yp.exports}jb();var Hb=Object.defineProperty,Ub=(n,t,e)=>t in n?Hb(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,pl=(n,t,e)=>Ub(n,typeof t!="symbol"?t+"":t,e);function Qp(n,t){return function(){return n.apply(t,arguments)}}const{toString:Vb}=Object.prototype,{getPrototypeOf:tu}=Object,{iterator:gl,toStringTag:Zp}=Symbol,fl=(n=>t=>{const e=Vb.call(t);return n[e]||(n[e]=e.slice(8,-1).toLowerCase())})(Object.create(null)),Ai=n=>(n=n.toLowerCase(),t=>fl(t)===n),ml=n=>t=>typeof t===n,{isArray:Ws}=Array,ba=ml("undefined");function xa(n){return n!==null&&!ba(n)&&n.constructor!==null&&!ba(n.constructor)&&Or(n.constructor.isBuffer)&&n.constructor.isBuffer(n)}const Jp=Ai("ArrayBuffer");function Gb(n){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(n):t=n&&n.buffer&&Jp(n.buffer),t}const Kb=ml("string"),Or=ml("function"),eg=ml("number"),Ca=n=>n!==null&&typeof n=="object",qb=n=>n===!0||n===!1,vl=n=>{if(fl(n)!=="object")return!1;const t=tu(n);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Zp in n)&&!(gl in n)},Yb=n=>{if(!Ca(n)||xa(n))return!1;try{return Object.keys(n).length===0&&Object.getPrototypeOf(n)===Object.prototype}catch{return!1}},Xb=Ai("Date"),Qb=Ai("File"),Zb=Ai("Blob"),Jb=Ai("FileList"),ex=n=>Ca(n)&&Or(n.pipe),tx=n=>{let t;return n&&(typeof FormData=="function"&&n instanceof FormData||Or(n.append)&&((t=fl(n))==="formdata"||t==="object"&&Or(n.toString)&&n.toString()==="[object FormData]"))},nx=Ai("URLSearchParams"),[rx,ix,ox,sx]=["ReadableStream","Request","Response","Headers"].map(Ai),ax=n=>n.trim?n.trim():n.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ka(n,t,{allOwnKeys:e=!1}={}){if(n===null||typeof n>"u")return;let r,v;if(typeof n!="object"&&(n=[n]),Ws(n))for(r=0,v=n.length;r<v;r++)t.call(null,n[r],r,n);else{if(xa(n))return;const f=e?Object.getOwnPropertyNames(n):Object.keys(n),y=f.length;let C;for(r=0;r<y;r++)C=f[r],t.call(null,n[C],C,n)}}function tg(n,t){if(xa(n))return null;t=t.toLowerCase();const e=Object.keys(n);let r=e.length,v;for(;r-- >0;)if(v=e[r],t===v.toLowerCase())return v;return null}const ns=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ng=n=>!ba(n)&&n!==ns;function nu(){const{caseless:n}=ng(this)&&this||{},t={},e=(r,v)=>{const f=n&&tg(t,v)||v;vl(t[f])&&vl(r)?t[f]=nu(t[f],r):vl(r)?t[f]=nu({},r):Ws(r)?t[f]=r.slice():t[f]=r};for(let r=0,v=arguments.length;r<v;r++)arguments[r]&&ka(arguments[r],e);return t}const lx=(n,t,e,{allOwnKeys:r}={})=>(ka(t,(v,f)=>{e&&Or(v)?n[f]=Qp(v,e):n[f]=v},{allOwnKeys:r}),n),cx=n=>(n.charCodeAt(0)===65279&&(n=n.slice(1)),n),ux=(n,t,e,r)=>{n.prototype=Object.create(t.prototype,r),n.prototype.constructor=n,Object.defineProperty(n,"super",{value:t.prototype}),e&&Object.assign(n.prototype,e)},hx=(n,t,e,r)=>{let v,f,y;const C={};if(t=t||{},n==null)return t;do{for(v=Object.getOwnPropertyNames(n),f=v.length;f-- >0;)y=v[f],(!r||r(y,n,t))&&!C[y]&&(t[y]=n[y],C[y]=!0);n=e!==!1&&tu(n)}while(n&&(!e||e(n,t))&&n!==Object.prototype);return t},dx=(n,t,e)=>{n=String(n),(e===void 0||e>n.length)&&(e=n.length),e-=t.length;const r=n.indexOf(t,e);return r!==-1&&r===e},px=n=>{if(!n)return null;if(Ws(n))return n;let t=n.length;if(!eg(t))return null;const e=new Array(t);for(;t-- >0;)e[t]=n[t];return e},gx=(n=>t=>n&&t instanceof n)(typeof Uint8Array<"u"&&tu(Uint8Array)),fx=(n,t)=>{const e=(n&&n[gl]).call(n);let r;for(;(r=e.next())&&!r.done;){const v=r.value;t.call(n,v[0],v[1])}},mx=(n,t)=>{let e;const r=[];for(;(e=n.exec(t))!==null;)r.push(e);return r},vx=Ai("HTMLFormElement"),yx=n=>n.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,e,r){return e.toUpperCase()+r}),rg=(({hasOwnProperty:n})=>(t,e)=>n.call(t,e))(Object.prototype),wx=Ai("RegExp"),ig=(n,t)=>{const e=Object.getOwnPropertyDescriptors(n),r={};ka(e,(v,f)=>{let y;(y=t(v,f,n))!==!1&&(r[f]=y||v)}),Object.defineProperties(n,r)},bx=n=>{ig(n,(t,e)=>{if(Or(n)&&["arguments","caller","callee"].indexOf(e)!==-1)return!1;const r=n[e];if(Or(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+e+"'")})}})},xx=(n,t)=>{const e={},r=v=>{v.forEach(f=>{e[f]=!0})};return Ws(n)?r(n):r(String(n).split(t)),e},Cx=()=>{},kx=(n,t)=>n!=null&&Number.isFinite(n=+n)?n:t;function Ax(n){return!!(n&&Or(n.append)&&n[Zp]==="FormData"&&n[gl])}const _x=n=>{const t=new Array(10),e=(r,v)=>{if(Ca(r)){if(t.indexOf(r)>=0)return;if(xa(r))return r;if(!("toJSON"in r)){t[v]=r;const f=Ws(r)?[]:{};return ka(r,(y,C)=>{const h=e(y,v+1);!ba(h)&&(f[C]=h)}),t[v]=void 0,f}}return r};return e(n,0)},Sx=Ai("AsyncFunction"),$x=n=>n&&(Ca(n)||Or(n))&&Or(n.then)&&Or(n.catch),og=((n,t)=>n?setImmediate:t?((e,r)=>(ns.addEventListener("message",({source:v,data:f})=>{v===ns&&f===e&&r.length&&r.shift()()},!1),v=>{r.push(v),ns.postMessage(e,"*")}))(`axios@${Math.random()}`,[]):e=>setTimeout(e))(typeof setImmediate=="function",Or(ns.postMessage)),Mx=typeof queueMicrotask<"u"?queueMicrotask.bind(ns):typeof process<"u"&&process.nextTick||og,Tx=n=>n!=null&&Or(n[gl]),ke={isArray:Ws,isArrayBuffer:Jp,isBuffer:xa,isFormData:tx,isArrayBufferView:Gb,isString:Kb,isNumber:eg,isBoolean:qb,isObject:Ca,isPlainObject:vl,isEmptyObject:Yb,isReadableStream:rx,isRequest:ix,isResponse:ox,isHeaders:sx,isUndefined:ba,isDate:Xb,isFile:Qb,isBlob:Zb,isRegExp:wx,isFunction:Or,isStream:ex,isURLSearchParams:nx,isTypedArray:gx,isFileList:Jb,forEach:ka,merge:nu,extend:lx,trim:ax,stripBOM:cx,inherits:ux,toFlatObject:hx,kindOf:fl,kindOfTest:Ai,endsWith:dx,toArray:px,forEachEntry:fx,matchAll:mx,isHTMLForm:vx,hasOwnProperty:rg,hasOwnProp:rg,reduceDescriptors:ig,freezeMethods:bx,toObjectSet:xx,toCamelCase:yx,noop:Cx,toFiniteNumber:kx,findKey:tg,global:ns,isContextDefined:ng,isSpecCompliantForm:Ax,toJSONObject:_x,isAsyncFn:Sx,isThenable:$x,setImmediate:og,asap:Mx,isIterable:Tx};function yt(n,t,e,r,v){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=n,this.name="AxiosError",t&&(this.code=t),e&&(this.config=e),r&&(this.request=r),v&&(this.response=v,this.status=v.status?v.status:null)}ke.inherits(yt,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ke.toJSONObject(this.config),code:this.code,status:this.status}}});const sg=yt.prototype,ag={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(n=>{ag[n]={value:n}}),Object.defineProperties(yt,ag),Object.defineProperty(sg,"isAxiosError",{value:!0}),yt.from=(n,t,e,r,v,f)=>{const y=Object.create(sg);return ke.toFlatObject(n,y,function(C){return C!==Error.prototype},C=>C!=="isAxiosError"),yt.call(y,n.message,t,e,r,v),y.cause=n,y.name=n.name,f&&Object.assign(y,f),y};const Ex=null;function ru(n){return ke.isPlainObject(n)||ke.isArray(n)}function lg(n){return ke.endsWith(n,"[]")?n.slice(0,-2):n}function cg(n,t,e){return n?n.concat(t).map(function(r,v){return r=lg(r),!e&&v?"["+r+"]":r}).join(e?".":""):t}function Ix(n){return ke.isArray(n)&&!n.some(ru)}const Rx=ke.toFlatObject(ke,{},null,function(n){return/^is[A-Z]/.test(n)});function yl(n,t,e){if(!ke.isObject(n))throw new TypeError("target must be an object");t=t||new FormData,e=ke.toFlatObject(e,{metaTokens:!0,dots:!1,indexes:!1},!1,function(l,o){return!ke.isUndefined(o[l])});const r=e.metaTokens,v=e.visitor||p,f=e.dots,y=e.indexes,C=(e.Blob||typeof Blob<"u"&&Blob)&&ke.isSpecCompliantForm(t);if(!ke.isFunction(v))throw new TypeError("visitor must be a function");function h(l){if(l===null)return"";if(ke.isDate(l))return l.toISOString();if(ke.isBoolean(l))return l.toString();if(!C&&ke.isBlob(l))throw new yt("Blob is not supported. Use a Buffer instead.");return ke.isArrayBuffer(l)||ke.isTypedArray(l)?C&&typeof Blob=="function"?new Blob([l]):Buffer.from(l):l}function p(l,o,u){let d=l;if(l&&!u&&typeof l=="object"){if(ke.endsWith(o,"{}"))o=r?o:o.slice(0,-2),l=JSON.stringify(l);else if(ke.isArray(l)&&Ix(l)||(ke.isFileList(l)||ke.endsWith(o,"[]"))&&(d=ke.toArray(l)))return o=lg(o),d.forEach(function(w,b){!(ke.isUndefined(w)||w===null)&&t.append(y===!0?cg([o],b,f):y===null?o:o+"[]",h(w))}),!1}return ru(l)?!0:(t.append(cg(u,o,f),h(l)),!1)}const s=[],a=Object.assign(Rx,{defaultVisitor:p,convertValue:h,isVisitable:ru});function c(l,o){if(!ke.isUndefined(l)){if(s.indexOf(l)!==-1)throw Error("Circular reference detected in "+o.join("."));s.push(l),ke.forEach(l,function(u,d){(!(ke.isUndefined(u)||u===null)&&v.call(t,u,ke.isString(d)?d.trim():d,o,a))===!0&&c(u,o?o.concat(d):[d])}),s.pop()}}if(!ke.isObject(n))throw new TypeError("data must be an object");return c(n),t}function ug(n){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(n).replace(/[!'()~]|%20|%00/g,function(e){return t[e]})}function iu(n,t){this._pairs=[],n&&yl(n,this,t)}const hg=iu.prototype;hg.append=function(n,t){this._pairs.push([n,t])},hg.toString=function(n){const t=n?function(e){return n.call(this,e,ug)}:ug;return this._pairs.map(function(e){return t(e[0])+"="+t(e[1])},"").join("&")};function Lx(n){return encodeURIComponent(n).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function dg(n,t,e){if(!t)return n;const r=e&&e.encode||Lx;ke.isFunction(e)&&(e={serialize:e});const v=e&&e.serialize;let f;if(v?f=v(t,e):f=ke.isURLSearchParams(t)?t.toString():new iu(t,e).toString(r),f){const y=n.indexOf("#");y!==-1&&(n=n.slice(0,y)),n+=(n.indexOf("?")===-1?"?":"&")+f}return n}class pg{constructor(){this.handlers=[]}use(t,e,r){return this.handlers.push({fulfilled:t,rejected:e,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){ke.forEach(this.handlers,function(e){e!==null&&t(e)})}}const gg={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Ox=typeof URLSearchParams<"u"?URLSearchParams:iu,Nx=typeof FormData<"u"?FormData:null,Dx=typeof Blob<"u"?Blob:null,Fx={isBrowser:!0,classes:{URLSearchParams:Ox,FormData:Nx,Blob:Dx},protocols:["http","https","file","blob","url","data"]},ou=typeof window<"u"&&typeof document<"u",su=typeof navigator=="object"&&navigator||void 0,Px=ou&&(!su||["ReactNative","NativeScript","NS"].indexOf(su.product)<0),Wx=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Bx=ou&&window.location.href||"http://localhost",zx=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ou,hasStandardBrowserEnv:Px,hasStandardBrowserWebWorkerEnv:Wx,navigator:su,origin:Bx},Symbol.toStringTag,{value:"Module"})),dr={...zx,...Fx};function jx(n,t){return yl(n,new dr.classes.URLSearchParams,{visitor:function(e,r,v,f){return dr.isNode&&ke.isBuffer(e)?(this.append(r,e.toString("base64")),!1):f.defaultVisitor.apply(this,arguments)},...t})}function Hx(n){return ke.matchAll(/\w+|\[(\w*)]/g,n).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Ux(n){const t={},e=Object.keys(n);let r;const v=e.length;let f;for(r=0;r<v;r++)f=e[r],t[f]=n[f];return t}function fg(n){function t(e,r,v,f){let y=e[f++];if(y==="__proto__")return!0;const C=Number.isFinite(+y),h=f>=e.length;return y=!y&&ke.isArray(v)?v.length:y,h?(ke.hasOwnProp(v,y)?v[y]=[v[y],r]:v[y]=r,!C):((!v[y]||!ke.isObject(v[y]))&&(v[y]=[]),t(e,r,v[y],f)&&ke.isArray(v[y])&&(v[y]=Ux(v[y])),!C)}if(ke.isFormData(n)&&ke.isFunction(n.entries)){const e={};return ke.forEachEntry(n,(r,v)=>{t(Hx(r),v,e,0)}),e}return null}function Vx(n,t,e){if(ke.isString(n))try{return(t||JSON.parse)(n),ke.trim(n)}catch(r){if(r.name!=="SyntaxError")throw r}return(e||JSON.stringify)(n)}const Aa={transitional:gg,adapter:["xhr","http","fetch"],transformRequest:[function(n,t){const e=t.getContentType()||"",r=e.indexOf("application/json")>-1,v=ke.isObject(n);if(v&&ke.isHTMLForm(n)&&(n=new FormData(n)),ke.isFormData(n))return r?JSON.stringify(fg(n)):n;if(ke.isArrayBuffer(n)||ke.isBuffer(n)||ke.isStream(n)||ke.isFile(n)||ke.isBlob(n)||ke.isReadableStream(n))return n;if(ke.isArrayBufferView(n))return n.buffer;if(ke.isURLSearchParams(n))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),n.toString();let f;if(v){if(e.indexOf("application/x-www-form-urlencoded")>-1)return jx(n,this.formSerializer).toString();if((f=ke.isFileList(n))||e.indexOf("multipart/form-data")>-1){const y=this.env&&this.env.FormData;return yl(f?{"files[]":n}:n,y&&new y,this.formSerializer)}}return v||r?(t.setContentType("application/json",!1),Vx(n)):n}],transformResponse:[function(n){const t=this.transitional||Aa.transitional,e=t&&t.forcedJSONParsing,r=this.responseType==="json";if(ke.isResponse(n)||ke.isReadableStream(n))return n;if(n&&ke.isString(n)&&(e&&!this.responseType||r)){const v=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(n)}catch(f){if(v)throw f.name==="SyntaxError"?yt.from(f,yt.ERR_BAD_RESPONSE,this,null,this.response):f}}return n}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:dr.classes.FormData,Blob:dr.classes.Blob},validateStatus:function(n){return n>=200&&n<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ke.forEach(["delete","get","head","post","put","patch"],n=>{Aa.headers[n]={}});const Gx=ke.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Kx=n=>{const t={};let e,r,v;return n&&n.split(`
1393
+ `).forEach(function(f){v=f.indexOf(":"),e=f.substring(0,v).trim().toLowerCase(),r=f.substring(v+1).trim(),!(!e||t[e]&&Gx[e])&&(e==="set-cookie"?t[e]?t[e].push(r):t[e]=[r]:t[e]=t[e]?t[e]+", "+r:r)}),t},mg=Symbol("internals");function _a(n){return n&&String(n).trim().toLowerCase()}function wl(n){return n===!1||n==null?n:ke.isArray(n)?n.map(wl):String(n)}function qx(n){const t=Object.create(null),e=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=e.exec(n);)t[r[1]]=r[2];return t}const Yx=n=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(n.trim());function au(n,t,e,r,v){if(ke.isFunction(r))return r.call(this,t,e);if(v&&(t=e),!!ke.isString(t)){if(ke.isString(r))return t.indexOf(r)!==-1;if(ke.isRegExp(r))return r.test(t)}}function Xx(n){return n.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,e,r)=>e.toUpperCase()+r)}function Qx(n,t){const e=ke.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(n,r+e,{value:function(v,f,y){return this[r].call(this,t,v,f,y)},configurable:!0})})}let Nr=class{constructor(n){n&&this.set(n)}set(n,t,e){const r=this;function v(y,C,h){const p=_a(C);if(!p)throw new Error("header name must be a non-empty string");const s=ke.findKey(r,p);(!s||r[s]===void 0||h===!0||h===void 0&&r[s]!==!1)&&(r[s||C]=wl(y))}const f=(y,C)=>ke.forEach(y,(h,p)=>v(h,p,C));if(ke.isPlainObject(n)||n instanceof this.constructor)f(n,t);else if(ke.isString(n)&&(n=n.trim())&&!Yx(n))f(Kx(n),t);else if(ke.isObject(n)&&ke.isIterable(n)){let y={},C,h;for(const p of n){if(!ke.isArray(p))throw TypeError("Object iterator must return a key-value pair");y[h=p[0]]=(C=y[h])?ke.isArray(C)?[...C,p[1]]:[C,p[1]]:p[1]}f(y,t)}else n!=null&&v(t,n,e);return this}get(n,t){if(n=_a(n),n){const e=ke.findKey(this,n);if(e){const r=this[e];if(!t)return r;if(t===!0)return qx(r);if(ke.isFunction(t))return t.call(this,r,e);if(ke.isRegExp(t))return t.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(n,t){if(n=_a(n),n){const e=ke.findKey(this,n);return!!(e&&this[e]!==void 0&&(!t||au(this,this[e],e,t)))}return!1}delete(n,t){const e=this;let r=!1;function v(f){if(f=_a(f),f){const y=ke.findKey(e,f);y&&(!t||au(e,e[y],y,t))&&(delete e[y],r=!0)}}return ke.isArray(n)?n.forEach(v):v(n),r}clear(n){const t=Object.keys(this);let e=t.length,r=!1;for(;e--;){const v=t[e];(!n||au(this,this[v],v,n,!0))&&(delete this[v],r=!0)}return r}normalize(n){const t=this,e={};return ke.forEach(this,(r,v)=>{const f=ke.findKey(e,v);if(f){t[f]=wl(r),delete t[v];return}const y=n?Xx(v):String(v).trim();y!==v&&delete t[v],t[y]=wl(r),e[y]=!0}),this}concat(...n){return this.constructor.concat(this,...n)}toJSON(n){const t=Object.create(null);return ke.forEach(this,(e,r)=>{e!=null&&e!==!1&&(t[r]=n&&ke.isArray(e)?e.join(", "):e)}),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([n,t])=>n+": "+t).join(`
1394
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(n){return n instanceof this?n:new this(n)}static concat(n,...t){const e=new this(n);return t.forEach(r=>e.set(r)),e}static accessor(n){const t=(this[mg]=this[mg]={accessors:{}}).accessors,e=this.prototype;function r(v){const f=_a(v);t[f]||(Qx(e,v),t[f]=!0)}return ke.isArray(n)?n.forEach(r):r(n),this}};Nr.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),ke.reduceDescriptors(Nr.prototype,({value:n},t)=>{let e=t[0].toUpperCase()+t.slice(1);return{get:()=>n,set(r){this[e]=r}}}),ke.freezeMethods(Nr);function lu(n,t){const e=this||Aa,r=t||e,v=Nr.from(r.headers);let f=r.data;return ke.forEach(n,function(y){f=y.call(e,f,v.normalize(),t?t.status:void 0)}),v.normalize(),f}function vg(n){return!!(n&&n.__CANCEL__)}function Bs(n,t,e){yt.call(this,n??"canceled",yt.ERR_CANCELED,t,e),this.name="CanceledError"}ke.inherits(Bs,yt,{__CANCEL__:!0});function yg(n,t,e){const r=e.config.validateStatus;!e.status||!r||r(e.status)?n(e):t(new yt("Request failed with status code "+e.status,[yt.ERR_BAD_REQUEST,yt.ERR_BAD_RESPONSE][Math.floor(e.status/100)-4],e.config,e.request,e))}function Zx(n){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(n);return t&&t[1]||""}function Jx(n,t){n=n||10;const e=new Array(n),r=new Array(n);let v=0,f=0,y;return t=t!==void 0?t:1e3,function(C){const h=Date.now(),p=r[f];y||(y=h),e[v]=C,r[v]=h;let s=f,a=0;for(;s!==v;)a+=e[s++],s=s%n;if(v=(v+1)%n,v===f&&(f=(f+1)%n),h-y<t)return;const c=p&&h-p;return c?Math.round(a*1e3/c):void 0}}function e1(n,t){let e=0,r=1e3/t,v,f;const y=(C,h=Date.now())=>{e=h,v=null,f&&(clearTimeout(f),f=null),n(...C)};return[(...C)=>{const h=Date.now(),p=h-e;p>=r?y(C,h):(v=C,f||(f=setTimeout(()=>{f=null,y(v)},r-p)))},()=>v&&y(v)]}const bl=(n,t,e=3)=>{let r=0;const v=Jx(50,250);return e1(f=>{const y=f.loaded,C=f.lengthComputable?f.total:void 0,h=y-r,p=v(h),s=y<=C;r=y;const a={loaded:y,total:C,progress:C?y/C:void 0,bytes:h,rate:p||void 0,estimated:p&&C&&s?(C-y)/p:void 0,event:f,lengthComputable:C!=null,[t?"download":"upload"]:!0};n(a)},e)},wg=(n,t)=>{const e=n!=null;return[r=>t[0]({lengthComputable:e,total:n,loaded:r}),t[1]]},bg=n=>(...t)=>ke.asap(()=>n(...t)),t1=dr.hasStandardBrowserEnv?((n,t)=>e=>(e=new URL(e,dr.origin),n.protocol===e.protocol&&n.host===e.host&&(t||n.port===e.port)))(new URL(dr.origin),dr.navigator&&/(msie|trident)/i.test(dr.navigator.userAgent)):()=>!0,n1=dr.hasStandardBrowserEnv?{write(n,t,e,r,v,f){const y=[n+"="+encodeURIComponent(t)];ke.isNumber(e)&&y.push("expires="+new Date(e).toGMTString()),ke.isString(r)&&y.push("path="+r),ke.isString(v)&&y.push("domain="+v),f===!0&&y.push("secure"),document.cookie=y.join("; ")},read(n){const t=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(n){this.write(n,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function r1(n){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(n)}function i1(n,t){return t?n.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):n}function xg(n,t,e){let r=!r1(t);return n&&(r||e==!1)?i1(n,t):t}const Cg=n=>n instanceof Nr?{...n}:n;function rs(n,t){t=t||{};const e={};function r(p,s,a,c){return ke.isPlainObject(p)&&ke.isPlainObject(s)?ke.merge.call({caseless:c},p,s):ke.isPlainObject(s)?ke.merge({},s):ke.isArray(s)?s.slice():s}function v(p,s,a,c){if(ke.isUndefined(s)){if(!ke.isUndefined(p))return r(void 0,p,a,c)}else return r(p,s,a,c)}function f(p,s){if(!ke.isUndefined(s))return r(void 0,s)}function y(p,s){if(ke.isUndefined(s)){if(!ke.isUndefined(p))return r(void 0,p)}else return r(void 0,s)}function C(p,s,a){if(a in t)return r(p,s);if(a in n)return r(void 0,p)}const h={url:f,method:f,data:f,baseURL:y,transformRequest:y,transformResponse:y,paramsSerializer:y,timeout:y,timeoutMessage:y,withCredentials:y,withXSRFToken:y,adapter:y,responseType:y,xsrfCookieName:y,xsrfHeaderName:y,onUploadProgress:y,onDownloadProgress:y,decompress:y,maxContentLength:y,maxBodyLength:y,beforeRedirect:y,transport:y,httpAgent:y,httpsAgent:y,cancelToken:y,socketPath:y,responseEncoding:y,validateStatus:C,headers:(p,s,a)=>v(Cg(p),Cg(s),a,!0)};return ke.forEach(Object.keys({...n,...t}),function(p){const s=h[p]||v,a=s(n[p],t[p],p);ke.isUndefined(a)&&s!==C||(e[p]=a)}),e}const kg=n=>{const t=rs({},n);let{data:e,withXSRFToken:r,xsrfHeaderName:v,xsrfCookieName:f,headers:y,auth:C}=t;t.headers=y=Nr.from(y),t.url=dg(xg(t.baseURL,t.url,t.allowAbsoluteUrls),n.params,n.paramsSerializer),C&&y.set("Authorization","Basic "+btoa((C.username||"")+":"+(C.password?unescape(encodeURIComponent(C.password)):"")));let h;if(ke.isFormData(e)){if(dr.hasStandardBrowserEnv||dr.hasStandardBrowserWebWorkerEnv)y.setContentType(void 0);else if((h=y.getContentType())!==!1){const[p,...s]=h?h.split(";").map(a=>a.trim()).filter(Boolean):[];y.setContentType([p||"multipart/form-data",...s].join("; "))}}if(dr.hasStandardBrowserEnv&&(r&&ke.isFunction(r)&&(r=r(t)),r||r!==!1&&t1(t.url))){const p=v&&f&&n1.read(f);p&&y.set(v,p)}return t},o1=typeof XMLHttpRequest<"u",s1=o1&&function(n){return new Promise(function(t,e){const r=kg(n);let v=r.data;const f=Nr.from(r.headers).normalize();let{responseType:y,onUploadProgress:C,onDownloadProgress:h}=r,p,s,a,c,l;function o(){c&&c(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(p),r.signal&&r.signal.removeEventListener("abort",p)}let u=new XMLHttpRequest;u.open(r.method.toUpperCase(),r.url,!0),u.timeout=r.timeout;function d(){if(!u)return;const b=Nr.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders()),R={data:!y||y==="text"||y==="json"?u.responseText:u.response,status:u.status,statusText:u.statusText,headers:b,config:n,request:u};yg(function(M){t(M),o()},function(M){e(M),o()},R),u=null}"onloadend"in u?u.onloadend=d:u.onreadystatechange=function(){!u||u.readyState!==4||u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)||setTimeout(d)},u.onabort=function(){u&&(e(new yt("Request aborted",yt.ECONNABORTED,n,u)),u=null)},u.onerror=function(){e(new yt("Network Error",yt.ERR_NETWORK,n,u)),u=null},u.ontimeout=function(){let b=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const R=r.transitional||gg;r.timeoutErrorMessage&&(b=r.timeoutErrorMessage),e(new yt(b,R.clarifyTimeoutError?yt.ETIMEDOUT:yt.ECONNABORTED,n,u)),u=null},v===void 0&&f.setContentType(null),"setRequestHeader"in u&&ke.forEach(f.toJSON(),function(b,R){u.setRequestHeader(R,b)}),ke.isUndefined(r.withCredentials)||(u.withCredentials=!!r.withCredentials),y&&y!=="json"&&(u.responseType=r.responseType),h&&([a,l]=bl(h,!0),u.addEventListener("progress",a)),C&&u.upload&&([s,c]=bl(C),u.upload.addEventListener("progress",s),u.upload.addEventListener("loadend",c)),(r.cancelToken||r.signal)&&(p=b=>{u&&(e(!b||b.type?new Bs(null,n,u):b),u.abort(),u=null)},r.cancelToken&&r.cancelToken.subscribe(p),r.signal&&(r.signal.aborted?p():r.signal.addEventListener("abort",p)));const w=Zx(r.url);if(w&&dr.protocols.indexOf(w)===-1){e(new yt("Unsupported protocol "+w+":",yt.ERR_BAD_REQUEST,n));return}u.send(v||null)})},a1=(n,t)=>{const{length:e}=n=n?n.filter(Boolean):[];if(t||e){let r=new AbortController,v;const f=function(p){if(!v){v=!0,C();const s=p instanceof Error?p:this.reason;r.abort(s instanceof yt?s:new Bs(s instanceof Error?s.message:s))}};let y=t&&setTimeout(()=>{y=null,f(new yt(`timeout ${t} of ms exceeded`,yt.ETIMEDOUT))},t);const C=()=>{n&&(y&&clearTimeout(y),y=null,n.forEach(p=>{p.unsubscribe?p.unsubscribe(f):p.removeEventListener("abort",f)}),n=null)};n.forEach(p=>p.addEventListener("abort",f));const{signal:h}=r;return h.unsubscribe=()=>ke.asap(C),h}},l1=function*(n,t){let e=n.byteLength;if(e<t){yield n;return}let r=0,v;for(;r<e;)v=r+t,yield n.slice(r,v),r=v},c1=async function*(n,t){for await(const e of u1(n))yield*l1(e,t)},u1=async function*(n){if(n[Symbol.asyncIterator]){yield*n;return}const t=n.getReader();try{for(;;){const{done:e,value:r}=await t.read();if(e)break;yield r}}finally{await t.cancel()}},Ag=(n,t,e,r)=>{const v=c1(n,t);let f=0,y,C=h=>{y||(y=!0,r&&r(h))};return new ReadableStream({async pull(h){try{const{done:p,value:s}=await v.next();if(p){C(),h.close();return}let a=s.byteLength;if(e){let c=f+=a;e(c)}h.enqueue(new Uint8Array(s))}catch(p){throw C(p),p}},cancel(h){return C(h),v.return()}},{highWaterMark:2})},xl=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",_g=xl&&typeof ReadableStream=="function",h1=xl&&(typeof TextEncoder=="function"?(n=>t=>n.encode(t))(new TextEncoder):async n=>new Uint8Array(await new Response(n).arrayBuffer())),Sg=(n,...t)=>{try{return!!n(...t)}catch{return!1}},d1=_g&&Sg(()=>{let n=!1;const t=new Request(dr.origin,{body:new ReadableStream,method:"POST",get duplex(){return n=!0,"half"}}).headers.has("Content-Type");return n&&!t}),$g=64*1024,cu=_g&&Sg(()=>ke.isReadableStream(new Response("").body)),Cl={stream:cu&&(n=>n.body)};xl&&(n=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!Cl[t]&&(Cl[t]=ke.isFunction(n[t])?e=>e[t]():(e,r)=>{throw new yt(`Response type '${t}' is not supported`,yt.ERR_NOT_SUPPORT,r)})})})(new Response);const p1=async n=>{if(n==null)return 0;if(ke.isBlob(n))return n.size;if(ke.isSpecCompliantForm(n))return(await new Request(dr.origin,{method:"POST",body:n}).arrayBuffer()).byteLength;if(ke.isArrayBufferView(n)||ke.isArrayBuffer(n))return n.byteLength;if(ke.isURLSearchParams(n)&&(n=n+""),ke.isString(n))return(await h1(n)).byteLength},g1=async(n,t)=>ke.toFiniteNumber(n.getContentLength())??p1(t),f1=xl&&(async n=>{let{url:t,method:e,data:r,signal:v,cancelToken:f,timeout:y,onDownloadProgress:C,onUploadProgress:h,responseType:p,headers:s,withCredentials:a="same-origin",fetchOptions:c}=kg(n);p=p?(p+"").toLowerCase():"text";let l=a1([v,f&&f.toAbortSignal()],y),o;const u=l&&l.unsubscribe&&(()=>{l.unsubscribe()});let d;try{if(h&&d1&&e!=="get"&&e!=="head"&&(d=await g1(s,r))!==0){let k=new Request(t,{method:"POST",body:r,duplex:"half"}),x;if(ke.isFormData(r)&&(x=k.headers.get("content-type"))&&s.setContentType(x),k.body){const[L,O]=wg(d,bl(bg(h)));r=Ag(k.body,$g,L,O)}}ke.isString(a)||(a=a?"include":"omit");const w="credentials"in Request.prototype;o=new Request(t,{...c,signal:l,method:e.toUpperCase(),headers:s.normalize().toJSON(),body:r,duplex:"half",credentials:w?a:void 0});let b=await fetch(o,c);const R=cu&&(p==="stream"||p==="response");if(cu&&(C||R&&u)){const k={};["status","statusText","headers"].forEach(I=>{k[I]=b[I]});const x=ke.toFiniteNumber(b.headers.get("content-length")),[L,O]=C&&wg(x,bl(bg(C),!0))||[];b=new Response(Ag(b.body,$g,L,()=>{O&&O(),u&&u()}),k)}p=p||"text";let M=await Cl[ke.findKey(Cl,p)||"text"](b,n);return!R&&u&&u(),await new Promise((k,x)=>{yg(k,x,{data:M,headers:Nr.from(b.headers),status:b.status,statusText:b.statusText,config:n,request:o})})}catch(w){throw u&&u(),w&&w.name==="TypeError"&&/Load failed|fetch/i.test(w.message)?Object.assign(new yt("Network Error",yt.ERR_NETWORK,n,o),{cause:w.cause||w}):yt.from(w,w&&w.code,n,o)}}),uu={http:Ex,xhr:s1,fetch:f1};ke.forEach(uu,(n,t)=>{if(n){try{Object.defineProperty(n,"name",{value:t})}catch{}Object.defineProperty(n,"adapterName",{value:t})}});const Mg=n=>`- ${n}`,m1=n=>ke.isFunction(n)||n===null||n===!1,Tg={getAdapter:n=>{n=ke.isArray(n)?n:[n];const{length:t}=n;let e,r;const v={};for(let f=0;f<t;f++){e=n[f];let y;if(r=e,!m1(e)&&(r=uu[(y=String(e)).toLowerCase()],r===void 0))throw new yt(`Unknown adapter '${y}'`);if(r)break;v[y||"#"+f]=r}if(!r){const f=Object.entries(v).map(([C,h])=>`adapter ${C} `+(h===!1?"is not supported by the environment":"is not available in the build"));let y=t?f.length>1?`since :
1395
+ `+f.map(Mg).join(`
1396
+ `):" "+Mg(f[0]):"as no adapter specified";throw new yt("There is no suitable adapter to dispatch the request "+y,"ERR_NOT_SUPPORT")}return r},adapters:uu};function hu(n){if(n.cancelToken&&n.cancelToken.throwIfRequested(),n.signal&&n.signal.aborted)throw new Bs(null,n)}function Eg(n){return hu(n),n.headers=Nr.from(n.headers),n.data=lu.call(n,n.transformRequest),["post","put","patch"].indexOf(n.method)!==-1&&n.headers.setContentType("application/x-www-form-urlencoded",!1),Tg.getAdapter(n.adapter||Aa.adapter)(n).then(function(t){return hu(n),t.data=lu.call(n,n.transformResponse,t),t.headers=Nr.from(t.headers),t},function(t){return vg(t)||(hu(n),t&&t.response&&(t.response.data=lu.call(n,n.transformResponse,t.response),t.response.headers=Nr.from(t.response.headers))),Promise.reject(t)})}const Ig="1.11.0",kl={};["object","boolean","number","function","string","symbol"].forEach((n,t)=>{kl[n]=function(e){return typeof e===n||"a"+(t<1?"n ":" ")+n}});const Rg={};kl.transitional=function(n,t,e){function r(v,f){return"[Axios v"+Ig+"] Transitional option '"+v+"'"+f+(e?". "+e:"")}return(v,f,y)=>{if(n===!1)throw new yt(r(f," has been removed"+(t?" in "+t:"")),yt.ERR_DEPRECATED);return t&&!Rg[f]&&(Rg[f]=!0,console.warn(r(f," has been deprecated since v"+t+" and will be removed in the near future"))),n?n(v,f,y):!0}},kl.spelling=function(n){return(t,e)=>(console.warn(`${e} is likely a misspelling of ${n}`),!0)};function v1(n,t,e){if(typeof n!="object")throw new yt("options must be an object",yt.ERR_BAD_OPTION_VALUE);const r=Object.keys(n);let v=r.length;for(;v-- >0;){const f=r[v],y=t[f];if(y){const C=n[f],h=C===void 0||y(C,f,n);if(h!==!0)throw new yt("option "+f+" must be "+h,yt.ERR_BAD_OPTION_VALUE);continue}if(e!==!0)throw new yt("Unknown option "+f,yt.ERR_BAD_OPTION)}}const Al={assertOptions:v1,validators:kl},Hi=Al.validators;let is=class{constructor(n){this.defaults=n||{},this.interceptors={request:new pg,response:new pg}}async request(n,t){try{return await this._request(n,t)}catch(e){if(e instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const v=r.stack?r.stack.replace(/^.+\n/,""):"";try{e.stack?v&&!String(e.stack).endsWith(v.replace(/^.+\n.+\n/,""))&&(e.stack+=`
1397
+ `+v):e.stack=v}catch{}}throw e}}_request(n,t){typeof n=="string"?(t=t||{},t.url=n):t=n||{},t=rs(this.defaults,t);const{transitional:e,paramsSerializer:r,headers:v}=t;e!==void 0&&Al.assertOptions(e,{silentJSONParsing:Hi.transitional(Hi.boolean),forcedJSONParsing:Hi.transitional(Hi.boolean),clarifyTimeoutError:Hi.transitional(Hi.boolean)},!1),r!=null&&(ke.isFunction(r)?t.paramsSerializer={serialize:r}:Al.assertOptions(r,{encode:Hi.function,serialize:Hi.function},!0)),t.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),Al.assertOptions(t,{baseUrl:Hi.spelling("baseURL"),withXsrfToken:Hi.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let f=v&&ke.merge(v.common,v[t.method]);v&&ke.forEach(["delete","get","head","post","put","patch","common"],l=>{delete v[l]}),t.headers=Nr.concat(f,v);const y=[];let C=!0;this.interceptors.request.forEach(function(l){typeof l.runWhen=="function"&&l.runWhen(t)===!1||(C=C&&l.synchronous,y.unshift(l.fulfilled,l.rejected))});const h=[];this.interceptors.response.forEach(function(l){h.push(l.fulfilled,l.rejected)});let p,s=0,a;if(!C){const l=[Eg.bind(this),void 0];for(l.unshift(...y),l.push(...h),a=l.length,p=Promise.resolve(t);s<a;)p=p.then(l[s++],l[s++]);return p}a=y.length;let c=t;for(s=0;s<a;){const l=y[s++],o=y[s++];try{c=l(c)}catch(u){o.call(this,u);break}}try{p=Eg.call(this,c)}catch(l){return Promise.reject(l)}for(s=0,a=h.length;s<a;)p=p.then(h[s++],h[s++]);return p}getUri(n){n=rs(this.defaults,n);const t=xg(n.baseURL,n.url,n.allowAbsoluteUrls);return dg(t,n.params,n.paramsSerializer)}};ke.forEach(["delete","get","head","options"],function(n){is.prototype[n]=function(t,e){return this.request(rs(e||{},{method:n,url:t,data:(e||{}).data}))}}),ke.forEach(["post","put","patch"],function(n){function t(e){return function(r,v,f){return this.request(rs(f||{},{method:n,headers:e?{"Content-Type":"multipart/form-data"}:{},url:r,data:v}))}}is.prototype[n]=t(),is.prototype[n+"Form"]=t(!0)});let y1=class y0{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let e;this.promise=new Promise(function(v){e=v});const r=this;this.promise.then(v=>{if(!r._listeners)return;let f=r._listeners.length;for(;f-- >0;)r._listeners[f](v);r._listeners=null}),this.promise.then=v=>{let f;const y=new Promise(C=>{r.subscribe(C),f=C}).then(v);return y.cancel=function(){r.unsubscribe(f)},y},t(function(v,f,y){r.reason||(r.reason=new Bs(v,f,y),e(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);e!==-1&&this._listeners.splice(e,1)}toAbortSignal(){const t=new AbortController,e=r=>{t.abort(r)};return this.subscribe(e),t.signal.unsubscribe=()=>this.unsubscribe(e),t.signal}static source(){let t;return{token:new y0(function(e){t=e}),cancel:t}}};function w1(n){return function(t){return n.apply(null,t)}}function b1(n){return ke.isObject(n)&&n.isAxiosError===!0}const du={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(du).forEach(([n,t])=>{du[t]=n});function Lg(n){const t=new is(n),e=Qp(is.prototype.request,t);return ke.extend(e,is.prototype,t,{allOwnKeys:!0}),ke.extend(e,t,null,{allOwnKeys:!0}),e.create=function(r){return Lg(rs(n,r))},e}const Mn=Lg(Aa);Mn.Axios=is,Mn.CanceledError=Bs,Mn.CancelToken=y1,Mn.isCancel=vg,Mn.VERSION=Ig,Mn.toFormData=yl,Mn.AxiosError=yt,Mn.Cancel=Mn.CanceledError,Mn.all=function(n){return Promise.all(n)},Mn.spread=w1,Mn.isAxiosError=b1,Mn.mergeConfig=rs,Mn.AxiosHeaders=Nr,Mn.formToJSON=n=>fg(ke.isHTMLForm(n)?new FormData(n):n),Mn.getAdapter=Tg.getAdapter,Mn.HttpStatusCode=du,Mn.default=Mn;const{Axios:L2,AxiosError:O2,CanceledError:N2,isCancel:D2,CancelToken:F2,VERSION:P2,all:W2,Cancel:B2,isAxiosError:z2,spread:j2,toFormData:H2,AxiosHeaders:U2,HttpStatusCode:V2,formToJSON:G2,getAdapter:K2,mergeConfig:q2}=Mn,pu=Mn.create({baseURL:location.origin,timeout:6e4,params:{}});pu.interceptors.response.use(n=>n,n=>{var t,e,r,v,f,y,C,h,p,s,a;if(n.response){if(n.response.status===401&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then(function(o){o&&OpenC3Auth.setTokens()}),n.response.config.headers["Ignore-Errors"]&&n.response.config.headers["Ignore-Errors"].includes(n.response.status.toString()))return Promise.reject(n);let c=`HTTP ${n.response.status} - `;(t=n.response)!=null&&t.statusText&&(c+=`${n.response.statusText} `),(r=(e=n.response)==null?void 0:e.config)!=null&&r.data&&(c+=`${n.response.config.data} `),(f=(v=n.response)==null?void 0:v.data)!=null&&f.message?c+=`${n.response.data.message}`:(C=(y=n.response)==null?void 0:y.data)!=null&&C.exception?c+=`${n.response.data.exception}`:(s=(p=(h=n.response)==null?void 0:h.data)==null?void 0:p.error)!=null&&s.message?(n.response.data.error.class&&(c+=`${n.response.data.error.class} `),c+=`${n.response.data.error.message}`):c+=`${(a=n.response)==null?void 0:a.data}`;const{$cosmosNotify:l}=window;throw l&&l.serious({title:"Network error",body:c}),n}else throw n});const _l=async function(n,t,{data:e,params:r={},headers:v,noAuth:f=!1,noScope:y=!1,onUploadProgress:C=!1}={}){if(!f){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}v.Authorization=localStorage.openc3Token}return v.manual=!0,!y&&!r.scope&&(r.scope=window.openc3Scope),pu({method:n,url:t,data:e,params:r,headers:v,onUploadProgress:C})},gu={Accept:"application/json"},Og={...gu,"Content-Type":"application/json"},Y2=kr("D",{get:function(n,{params:t,headers:e=gu,noScope:r,noAuth:v,onUploadProgress:f}={}){return _l("get",n,{params:t,headers:e,noScope:r,noAuth:v,onUploadProgress:f})},put:function(n,{data:t,params:e,headers:r=Og,noScope:v,noAuth:f,onUploadProgress:y}={}){return _l("put",n,{data:t,params:e,headers:r,noScope:v,noAuth:f,onUploadProgress:y})},post:function(n,{data:t,params:e,headers:r=Og,noScope:v,noAuth:f,onUploadProgress:y}={}){return _l("post",n,{data:t,params:e,headers:r,noScope:v,noAuth:f,onUploadProgress:y})},delete:function(n,{params:t,headers:e=gu,noScope:r,noAuth:v,onUploadProgress:f}={}){return _l("delete",n,{params:t,headers:e,noScope:r,noAuth:v,onUploadProgress:f})}});let Sl=()=>({emit(n,...t){for(let e=this.events[n]||[],r=0,v=e.length;r<v;r++)e[r](...t)},events:{},on(n,t){var e;return((e=this.events)[n]||(e[n]=[])).push(t),()=>{var r;this.events[n]=(r=this.events[n])==null?void 0:r.filter(v=>t!==v)}}});class Sa extends Error{constructor(t,e){t instanceof Error?(super(t.message),this.cause=t):super(t),this.reason=e,this.name="ReasonError"}}class fu extends Sa{constructor(t){super("Rejected",t),this.name="SubscriptionRejectedError"}}class x1 extends Sa{constructor(t){super(t||"Timed out to receive subscription ack"),this.name="SubscriptionTimeoutError"}}class _i extends Sa{constructor(t,e){e?super(t,e):super("Disconnected",t),this.name="DisconnectedError"}}class C1 extends _i{constructor(t){super(t,"stale_connection"),this.name="StaleConnectionError"}}function Ng(n){return n?`{${Object.keys(n).sort().filter(t=>n[t]!==void 0).map(t=>{let e=JSON.stringify(n[t]);return`${JSON.stringify(t)}:${e}`}).join(",")}}`:""}class k1{constructor(t){this.channel=t,this.listeners=[]}watch(){this.listeners.push(this.channel.on("presence",t=>{if(t.type==="info"){this._state||(this._state=this.stateFromInfo(t));return}this._state&&(t.type==="join"?this._state[t.id]=t.info:t.type==="leave"&&delete this._state[t.id])}))}reset(){delete this._state}dispose(){delete this._info,delete this._state,this.listeners.forEach(t=>t()),this.listeners.length=0}async join(t,e){if(!this._info)return this._info={id:t,info:e},this.channel.perform("$presence:join",this._info)}async leave(){if(!this._info)return;let t=await this.channel.perform("$presence:leave");return delete this._info,t}async info(){return this._state?this._state:(this._promise||(this._promise=this._sync()),await this._promise,this._state)}async _sync(){this.watch();try{let t=await this.channel.perform("$presence:info",{});return this._state=this.stateFromInfo(t),this._state}finally{delete this._promise}}stateFromInfo(t){return t.records.reduce((e,{id:r,info:v})=>(e[r]=v,e),{})}}const os=Symbol("state");class Dg{constructor(t={}){this.emitter=Sl(),this.params=Object.freeze(t),this.presence=new k1(this),this.initialConnect=!0,this[os]="idle"}get identifier(){return this._identifier?this._identifier:(this._identifier=Ng({channel:this.channelId,...this.params}),this._identifier)}get channelId(){return this.constructor.identifier}get state(){return this[os]}attached(t){if(this.receiver){if(this.receiver!==t)throw Error("Already connected to a different receiver");return!1}return this.receiver=t,!0}connecting(){this[os]="connecting"}connected(){if(this.state==="connected"||this.state==="closed")return;this[os]="connected";let t=!1;this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:t})):this.emit("connect",{reconnect:!0,restored:t})}restored(){if(this.state==="connected")throw Error("Already connected");this[os]="connected";let t=!0,e=!0;this.initialConnect=!1,this.emit("connect",{reconnect:e,restored:t})}disconnected(t){this.state==="disconnected"||this.state==="closed"||(this[os]="disconnected",this.presence.reset(),this.emit("disconnect",t))}closed(t){this.state!=="closed"&&(this[os]="closed",delete this.receiver,this.initialConnect=!0,this.presence.dispose(),this.emit("close",t))}disconnect(){this.state==="idle"||this.state==="closed"||this.receiver.unsubscribe(this)}async perform(t,e){if(this.state==="idle"||this.state==="closed")throw Error("Channel is not subscribed");return this.receiver.perform(this.identifier,t,e)}async send(t){return this.perform(void 0,t)}async whisper(t){try{await this.perform("$whisper",t)}catch(e){let r=this.receiver?this.receiver.logger:null;r&&r.warn("whisper failed: ",e)}}receive(t,e){this.emit("message",t,e)}on(t,e){return this.emitter.on(t,e)}once(t,e){let r=this.emitter.on(t,(...v)=>{r(),e(...v)});return r}emit(t,...e){return this.emitter.emit(t,...e)}ensureSubscribed(){return this.state==="connected"?Promise.resolve():this.state==="closed"?Promise.reject(Error("Channel is unsubscribed")):this.pendingSubscribe()}pendingSubscribe(){return this._pendingSubscribe?this._pendingSubscribe:(this._pendingSubscribe=new Promise((t,e)=>{let r=[()=>delete this._pendingSubscribe];r.push(this.on("connect",()=>{r.forEach(v=>v()),t()})),r.push(this.on("close",v=>{r.forEach(f=>f()),e(v||new Sa("Channel was disconnected before subscribing","canceled"))}))}),this._pendingSubscribe)}}class A1{constructor(t){this.id=t,this.intent="unsubscribed",this.state="idle",this.channels=[],this.disposed=!1,this._pendings=[]}add(t){this.channels.includes(t)||this.channels.push(t)}remove(t){let e=this.channels.indexOf(t);e>-1&&this.channels.splice(e,1)}notify(t,...e){this.state=t==="restored"?"connected":t,e.length===1?this.channels.forEach(r=>r[t](e[0])):this.channels.forEach(r=>r[t]())}pending(t){this._checkIntent(t);let e=this._pendings[0];return!e||e.intent!==t?Promise.resolve():e.promise}ensureResubscribed(){this.disposed||(this.intent=void 0,this.ensureSubscribed())}ensureSubscribed(){if(this.intent!=="subscribed"){if(this.disposed)throw Error("Subscription is disposed");this.intent="subscribed",!this._mergeWithPending("unsubscribed")&&this.subscriber(this)}}maybeUnsubscribe(){this.disposed||this.intent==="unsubscribed"||this.channels.length>0||(this.intent="unsubscribed",this._mergeWithPending("subscribed"))||this.unsubscriber(this)}async acquire(t){this._checkIntent(t);let e,r={promise:new Promise(f=>{e=f}),intent:t,release:()=>{this._pendings.splice(this._pendings.indexOf(r),1),e(r)},canceled:!1,acquired:!1},v=this._pendingTop;return this._pendings.push(r),v&&await v.promise,this.gvl&&await this.gvl.acquire(r,t),r.acquired=!0,r}close(t){this.disposed=!0,this.intent=void 0,this.notify("closed",t)}_checkIntent(t){if(!(t==="unsubscribed"||t==="subscribed"))throw Error(`Unknown subscription intent: ${t}`)}get _pendingTop(){return this._pendings.length?this._pendings[this._pendings.length-1]:void 0}_mergeWithPending(t){let e=this._pendingTop;return!e||e.acquired||e.intent!==t?!1:(this._pendings.pop(),e.canceled=!0,!0)}}class _1{constructor(){this.queue=[]}async acquire(t,e){e==="subscribed"&&(this.queue.push(t.promise.then(()=>{this.queue.splice(this.queue.indexOf(t),1)})),this.queue.length>1&&await this.queue[this.queue.length-2])}}class S1{constructor(t){t.concurrentSubscribes===!1&&(this.glv=new _1),this._subscriptions={},this._localToRemote={}}all(){return Object.values(this._subscriptions)}get(t){return this._subscriptions[t]}create(t,{subscribe:e,unsubscribe:r}){let v=this._subscriptions[t]=new A1(t);return v.remoteId=this._localToRemote[t],v.subscriber=e,v.unsubscriber=r,v.gvl=this.glv,v}remove(t){delete this._subscriptions[t],delete this._localToRemote[t]}storeRemoteId(t,e){this._localToRemote[t]=e;let r=this.get(t);r&&(r.remoteId=e)}}class $1{constructor(t={}){this.subscriptions=new S1(t),this._pendingMessages=[],this._remoteToLocal={}}subscribe(t,e){this._remoteToLocal[e]=t,this.subscriptions.storeRemoteId(t,e),this.flush(e)}unsubscribe(t){let e=this.subscriptions.get(t);if(!e)return;let r=e.remoteId;r&&delete this._remoteToLocal[r],this.subscriptions.remove(t)}transmit(t,e,r){let v=this._remoteToLocal[t];if(!v){this._pendingMessages.push([t,e,r]);return}let f=this.subscriptions.get(v);f&&f.channels.forEach(y=>{y.receive(e,r)})}notify(t,e,r){let v=this._remoteToLocal[t];if(!v)return;let f=this.subscriptions.get(v);f&&f.channels.forEach(y=>y.emit(e,r))}close(){this._pendingMessages.length=0}get size(){return this.channels.length}get channels(){return this.subscriptions.all().flatMap(t=>t.channels)}flush(t){let e=[];for(let r of this._pendingMessages)r[0]===t?this.transmit(r[0],r[1],r[2]):e.push(r);this._pendingMessages=e}}const Fg={debug:0,info:1,warn:2,error:3};class Pg{constructor(t){this.level=t||"warn"}log(t,e,r){Fg[t]<Fg[this.level]||this.writeLogEntry(t,e,r)}writeLogEntry(){throw Error("Not implemented")}debug(t,e){this.log("debug",t,e)}info(t,e){this.log("info",t,e)}warn(t,e){this.log("warn",t,e)}error(t,e){this.log("error",t,e)}}class $a extends Pg{writeLogEntry(){}}class M1{encode(t){return JSON.stringify(t)}decode(t){try{return JSON.parse(t)}catch{}}}let T1=0;class Wg{constructor(t={}){let{logger:e}=t;this.logger=e||new $a,this.pendingSubscriptions={},this.pendingUnsubscriptions={},this.subscribeCooldownInterval=t.subscribeCooldownInterval||250,this.subscribeRetryInterval=t.subscribeRetryInterval||5e3}attached(t){this.cable=t}subscribe(t,e){let r={channel:t};e&&Object.assign(r,e);let v=Ng(r);if(this.pendingUnsubscriptions[v]){let y=this.subscribeCooldownInterval*1.5;return this.logger.debug(`unsubscribed recently, cooldown for ${y}`,v),new Promise(C=>{setTimeout(()=>{C(this.subscribe(t,e))},y)})}if(this.pendingSubscriptions[v])return this.logger.warn("subscription is already pending, skipping",v),Promise.reject(Error("Already subscribing"));let f=this.subscribeRetryInterval;return new Promise((y,C)=>{let h=++T1;this.pendingSubscriptions[v]={resolve:y,reject:C,id:h},this.cable.send(this.buildSubscribeRequest(v)),this.maybeRetrySubscribe(h,v,f)})}buildSubscribeRequest(t){return{command:"subscribe",identifier:t}}maybeRetrySubscribe(t,e,r){setTimeout(()=>{let v=this.pendingSubscriptions[e];v&&v.id===t&&(this.logger.warn(`no subscription ack received in ${r}ms, retrying subscribe`,e),this.cable.send(this.buildSubscribeRequest(e)),this.maybeExpireSubscribe(t,e,r))},r)}maybeExpireSubscribe(t,e,r){setTimeout(()=>{let v=this.pendingSubscriptions[e];v&&v.id===t&&(delete this.pendingSubscriptions[e],v.reject(new x1(`Haven't received subscription ack in ${r*2}ms for ${e}`)))},r)}unsubscribe(t){return this.cable.send({command:"unsubscribe",identifier:t}),this.pendingUnsubscriptions[t]=!0,setTimeout(()=>{delete this.pendingUnsubscriptions[t]},this.subscribeCooldownInterval),Promise.resolve()}perform(t,e,r){return e==="$whisper"?this.whisper(t,r):(r||(r={}),r.action=e,this.cable.send({command:"message",identifier:t,data:JSON.stringify(r)}),Promise.resolve())}whisper(t,e){return this.cable.send({command:"whisper",identifier:t,data:e}),Promise.resolve()}receive(t){if(typeof t!="object"){this.logger.error("unsupported message format",{message:t});return}let{type:e,identifier:r,message:v,reason:f,reconnect:y}=t;if(e==="ping")return this.cable.keepalive(t.message);if(this.cable.keepalive(),e==="welcome"){let C=t.sid;return C&&this.cable.setSessionId(C),this.cable.connected()}if(e==="disconnect"){let C=new _i(f);this.reset(C),y===!1?this.cable.closed(C):this.cable.disconnected(C);return}if(e==="confirm_subscription"){let C=this.pendingSubscriptions[r];if(!C){this.logger.error("subscription not found, unsubscribing",{type:e,identifier:r}),this.unsubscribe(r);return}return delete this.pendingSubscriptions[r],C.resolve(r)}if(e==="reject_subscription"){let C=this.pendingSubscriptions[r];return C?(delete this.pendingSubscriptions[r],C.reject(new fu)):this.logger.error("subscription not found",{type:e,identifier:r})}if(v)return{identifier:r,message:v};this.logger.warn(`unknown message type: ${e}`,{message:t})}reset(t){for(let e in this.pendingSubscriptions)this.pendingSubscriptions[e].reject(t);this.pendingSubscriptions={}}recoverableClosure(){return!1}}const Bg=()=>Date.now()/1e3|0;class E1 extends Wg{constructor(t={}){super(t),this.streamsPositions={},this.subscriptionStreams={},this.pendingHistory={},this.pendingPresence={},this.presenceInfo={},this.restoreSince=t.historyTimestamp,this.disableSessionRecovery=t.disableSessionRecovery,this.restoreSince===void 0&&(this.restoreSince=Bg()),this.sessionId=void 0,this.sendPongs=t.pongs}reset(t){for(let e in this.pendingPresence)this.pendingPresence[e].reject(t);return this.pendingPresence={},super.reset()}receive(t){if(typeof t!="object"){this.logger.error("unsupported message format",{message:t});return}let{type:e,identifier:r,message:v}=t;if(e==="disconnect")return delete this.sessionId,this.cable.setSessionId(""),super.receive(t);if(e==="reject_subscription")return super.receive(t);if(e==="confirm_subscription")return this.subscriptionStreams[r]||(this.subscriptionStreams[r]=new Set),super.receive(t);if(e==="ping")return this.restoreSince&&(this.restoreSince=Bg()),this.sendPongs&&this.sendPong(),this.cable.keepalive(t.message);if(this.cable.keepalive(),e==="confirm_history"){this.logger.debug("history result received",t),this.cable.notify("history_received",r);return}if(e==="reject_history"){this.logger.warn("failed to retrieve history",t),this.cable.notify("history_not_found",r);return}if(e==="welcome"){if(this.disableSessionRecovery||(this.sessionId=t.sid,this.sessionId&&this.cable.setSessionId(this.sessionId)),t.restored){let f=t.restored_ids||Object.keys(this.subscriptionStreams);for(let y of f)this.cable.send({identifier:y,command:"history",history:this.historyRequestFor(y)}),this.presenceInfo[y]&&this.cable.send({identifier:y,command:"join",presence:this.presenceInfo[y]});return this.cable.restored(f)}return this.cable.connected(this.sessionId)}if(e==="presence"){let f=v.type;if(f==="info"){let y=this.pendingPresence[r];y&&(delete this.pendingPresence[r],y.resolve(v))}else if(f==="error"){let y=this.pendingPresence[r];y&&(delete this.pendingPresence[r],y.reject(new Error("failed to retrieve presence")))}return{type:e,identifier:r,message:v}}if(v){let f=this.trackStreamPosition(r,t.stream_id,t.epoch,t.offset);return{identifier:r,message:v,meta:f}}this.logger.warn(`unknown message type: ${e}`,{message:t})}perform(t,e,r){switch(e){case"$presence:join":return this.join(t,r);case"$presence:leave":return this.leave(t,r);case"$presence:info":return this.presence(t,r)}return super.perform(t,e,r)}unsubscribe(t){return delete this.presenceInfo[t],super.unsubscribe(t)}buildSubscribeRequest(t){let e=super.buildSubscribeRequest(t),r=this.historyRequestFor(t);r&&(e.history=r,this.pendingHistory[t]=!0);let v=this.presenceInfo[t];return v&&(e.presence=v),e}recoverableClosure(){return!!this.sessionId}historyRequestFor(t){let e={},r=!1;if(this.subscriptionStreams[t])for(let v of this.subscriptionStreams[t]){let f=this.streamsPositions[v];f&&(r=!0,e[v]=f)}if(!(!r&&!this.restoreSince))return{since:this.restoreSince,streams:e}}trackStreamPosition(t,e,r,v){if(!(!e||!r))return this.subscriptionStreams[t]||(this.subscriptionStreams[t]=new Set),this.subscriptionStreams[t].add(e),this.streamsPositions[e]={epoch:r,offset:v},{stream:e,epoch:r,offset:v}}async sendPong(){await new Promise(t=>setTimeout(t,0)),this.cable.state==="connected"&&this.cable.send({command:"pong"})}async join(t,e){return this.presenceInfo[t]=e,this.cable.send({command:"join",identifier:t,presence:e}),Promise.resolve()}async leave(t,e){return delete this.presenceInfo[t],this.cable.send({command:"leave",identifier:t,presence:e}),Promise.resolve()}presence(t,e){return this.pendingPresence[t]?(this.logger.warn("presence is already pending, skipping",t),Promise.reject(Error("presence request is already pending"))):new Promise((r,v)=>{this.pendingPresence[t]={resolve:r,reject:v},this.cable.send({command:"presence",identifier:t,data:e})})}}class I1 extends Sa{constructor(){super("No connection","closed"),this.name="NoConnectionError"}}class mu extends Dg{constructor(t,e){super(e),this.channelId=t}set channelId(t){this._channelId=t}get channelId(){return this._channelId}}pl(mu,"identifier","__ghost__");const R1="$pubsub";class vu extends Dg{async perform(t,e){if(t.startsWith("$"))return super.perform(t,e);throw Error("not implemented")}}pl(vu,"identifier",R1);const ss=Symbol("state");let L1=class{constructor({transport:n,protocol:t,encoder:e,logger:r,lazy:v,hubOptions:f,performFailures:y,transportConfigurator:C}){this.emitter=Sl(),this.transport=n,this.encoder=e,this.logger=r||new $a,this.protocol=t,this.performFailures=y||"throw",this.protocol.attached(this),this.hub=new $1(f||{}),this[ss]="idle",this.handleClose=this.handleClose.bind(this),this.handleIncoming=this.handleIncoming.bind(this),this.transportConfigurator=C,this.transport.on("close",this.handleClose),this.transport.on("data",this.handleIncoming),this.initialConnect=!0,this.recovering=!1,v===!1&&this.connect().catch(()=>{})}get state(){return this[ss]}async connect(){if(this.state==="connected")return Promise.resolve();if(this.state==="connecting")return this.pendingConnect();let n=this.state==="idle";this[ss]="connecting";let t=this.pendingConnect();this.logger.debug("connecting");try{this.transportConfigurator&&await this.transportConfigurator(this.transport,{initial:n}),await this.transport.open()}catch(e){this.handleClose(e)}return t}setSessionId(n){this.sessionId=n,this.transport.setParam("sid",n)}connected(){if(this.state==="connected")return;this.logger.info("connected"),this[ss]="connected",this.recovering&&this.hub.subscriptions.all().forEach(t=>t.notify("disconnected",new _i("recovery_failed"))),this.hub.subscriptions.all().forEach(t=>this._resubscribe(t));let n=!1;this.recovering=!1,this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:n})):this.emit("connect",{reconnect:!0,restored:n})}restored(n){this.logger.info("connection recovered",{remoteIds:n}),this[ss]="connected",this.hub.subscriptions.all().forEach(r=>{n&&r.remoteId&&n.includes(r.remoteId)?r.notify("restored"):(r.notify("disconnected",new _i("recovery_failed")),this._resubscribe(r))});let t=!this.initialConnect,e=!0;this.recovering=!1,this.initialConnect=!1,this.emit("connect",{reconnect:t,restored:e})}notify(n,t,e){t&&typeof t!="string"&&(e=t,t=void 0),t?this.hub.notify(t,"info",{type:n,data:e}):this.emit("info",{type:n,data:e})}handleClose(n){this.logger.debug("transport closed",{error:n}),this.disconnected(new _i(n,"transport_closed"))}disconnected(n){(this.state==="connected"||this.state==="connecting")&&(this.logger.info("disconnected",{reason:n}),this[ss]="disconnected",this.recovering=this.protocol.recoverableClosure(n),this.recovering?this.hub.subscriptions.all().forEach(t=>t.notify("connecting")):this.hub.subscriptions.all().forEach(t=>{t.notify("disconnected",n)}),this.protocol.reset(n),this.hub.close(),this.transport.close(),this.emit("disconnect",n))}closed(n){if(this.state==="closed"||this.state==="idle")return;let t;n&&(t=n instanceof _i?n:new _i(n,void 0)),this.logger.info("closed",{reason:n||"user"}),this[ss]="closed";let e=t||new _i("cable_closed");this.hub.subscriptions.all().forEach(r=>r.notify("disconnected",e)),this.hub.close(),this.protocol.reset(),this.transport.close(),this.initialConnect=!0,this.emit("close",t)}disconnect(){this.closed()}handleIncoming(n){if(this.state==="closed"||this.state==="idle")return;let t=this.encoder.decode(n);if(t===void 0){this.logger.error("failed to decode message",{message:n});return}this.logger.debug("incoming data",t);let e=this.protocol.receive(t);if(e){this.logger.debug("processed incoming message",e);let{type:r,identifier:v,message:f,meta:y}=e;r?this.hub.notify(v,r,f):this.hub.transmit(v,f,y)}}send(n){if(this.state==="closed")throw Error("Cable is closed");let t=this.encoder.encode(n);if(t===void 0){this.logger.error("failed to encode message",{message:n});return}this.logger.debug("outgoing message",n),this.transport.send(t)}keepalive(n){this.emit("keepalive",n)}streamFrom(n){let t=new vu({stream_name:n});return this.subscribe(t)}streamFromSigned(n){let t=new vu({signed_stream_name:n});return this.subscribe(t)}subscribeTo(n,t){let e,r;return typeof n=="string"&&(r=n,n=mu),e=r?new n(r,t):new n(t),this.subscribe(e)}subscribe(n){if(!n.attached(this))return n;let t=n.identifier;n.connecting();let e=this.hub.subscriptions.get(t)||this.hub.subscriptions.create(t,{subscribe:r=>this._subscribe(r,n.channelId,n.params),unsubscribe:r=>this._unsubscribe(r)});return e.add(n),e.intent==="subscribed"&&e.state==="connected"&&n.connected(),e.ensureSubscribed(),n}async _resubscribe(n){n.intent!=="subscribed"||!n.channels[0]||(n.notify("connecting"),n.ensureResubscribed())}async _subscribe(n,t,e){let r=n.id;if(this.state==="idle"&&this.connect().catch(()=>{}),this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:r});return}this.logger.debug("acquiring subscribe lock",{identifier:r});let v=await n.acquire("subscribed");if(v.canceled){this.logger.debug("subscribe lock has been canceled",{identifier:r}),v.release();return}if(this.logger.debug("subscribe lock has been acquired",{identifier:r}),n.intent!=="subscribed"){this.logger.debug("cancel subscribe request, already unsubscribed"),v.release();return}if(this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:r}),v.release();return}if(n.state==="connected"){this.logger.debug("already connected, skip subscribe command",{identifier:r}),n.notify("connected"),v.release();return}let f={identifier:t,params:e};this.logger.debug("subscribing",f);try{let y=await this.protocol.subscribe(t,e);this.hub.subscribe(r,y),this.logger.debug("subscribed",{...f,remoteId:y}),n.notify("connected")}catch(y){if(y){if(y instanceof fu&&this.logger.warn("rejected",f),y instanceof _i){this.logger.debug("disconnected during subscription; will retry on connect",f),v.release();return}this.logger.error("failed to subscribe",{error:y,...f})}n.close(y),this.hub.unsubscribe(r)}v.release()}unsubscribe(n){let t=n.identifier,e=this.hub.subscriptions.get(t);if(!e)throw Error(`Subscription not found: ${t}`);e.remove(n),n.closed(),e.maybeUnsubscribe()}async _unsubscribe(n){let t=n.id;this.logger.debug("acquiring unsubscribe lock",{identifier:t});let e=await n.acquire("unsubscribed");if(e.canceled){this.logger.debug("unsubscribe lock has been canceled",{identifier:t}),e.release();return}if(this.logger.debug("unsubscribe lock has been acquired",{identifier:t}),n.intent!=="unsubscribed"){this.logger.debug("cancel unsubscribe, no longer needed",{identifier:t,intent:n.intent}),e.release();return}if(n.state==="disconnected"||n.state==="closed"){this.logger.debug(`already ${n.state} connected, skip unsubscribe command`,{identifier:t}),e.release();return}let r=n.remoteId;if(this.logger.debug("unsubscribing...",{remoteId:r}),this.state!=="connected"){this.logger.debug("unsubscribe skipped (cable is not connected)",{id:t}),n.close(),this.hub.unsubscribe(t),e.release();return}try{await this.protocol.unsubscribe(r),this.logger.debug("unsubscribed remotely",{id:t})}catch(v){v&&(v instanceof _i?this.logger.debug("cable disconnected during the unsubscribe command execution",{id:t,error:v}):this.logger.error("unsubscribe failed",{id:t,error:v}))}n.intent==="unsubscribed"?(n.close(),this.hub.unsubscribe(t)):n.state="closed",e.release()}async perform(n,t,e){if(this.performFailures==="throw")return this._perform(n,t,e);try{return await this._perform(n,t,e)}catch(r){this.performFailures==="warn"&&this.logger.warn("perform failed",{error:r});return}}async _perform(n,t,e){if(this.state==="connecting"&&await this.pendingConnect(),this.state==="closed"||this.state==="disconnected")throw new I1;let r=this.hub.subscriptions.get(n);if(!r)throw Error(`Subscription not found: ${n}`);if(await r.pending("subscribed"),r.intent!=="subscribed")throw Error(`Subscription is closed: ${n}`);let v=r.remoteId,f={id:v,action:t,payload:e};this.logger.debug("perform",f);try{let y=await this.protocol.perform(v,t,e);return y&&this.logger.debug("perform result",{message:y,request:f}),y}catch(y){throw this.logger.error("perform failed",{error:y,request:f}),y}}on(n,t){return this.emitter.on(n,t)}once(n,t){let e=this.emitter.on(n,(...r)=>{e(),t(...r)});return e}emit(n,...t){return this.emitter.emit(n,...t)}pendingConnect(){return this._pendingConnect?this._pendingConnect:(this._pendingConnect=new Promise((n,t)=>{let e=[()=>delete this._pendingConnect];e.push(this.on("connect",()=>{e.forEach(r=>r()),n()})),e.push(this.on("close",r=>{e.forEach(v=>v()),t(r)})),e.push(this.on("disconnect",r=>{e.forEach(v=>v()),t(r)}))}),this._pendingConnect)}};const O1={maxMissingPings:2,maxReconnectAttempts:1/0},zs=()=>Date.now(),zg=(n,t)=>{t=t||{};let{backoffRate:e,jitterRatio:r,maxInterval:v}=t;return e=e||2,r===void 0&&(r=.5),f=>{let y=n*e**f,C=y*e,h=y+(C-y)*Math.random(),p=2*(Math.random()-.5)*r;return h=h*(1+p),v&&v<h&&(h=v),h}};let jg=class{constructor({pingInterval:n,...t}){if(this.pingInterval=n,!this.pingInterval)throw Error(`Incorrect pingInterval is provided: ${n}`);if(t=Object.assign({},O1,t),this.strategy=t.reconnectStrategy,!this.strategy)throw Error("Reconnect strategy must be provided");this.maxMissingPings=t.maxMissingPings,this.maxReconnectAttempts=t.maxReconnectAttempts,this.logger=t.logger||new $a,this.state="pending_connect",this.attempts=0,this.disconnectedAt=zs()}watch(n){this.target=n,this.initListeners()}reconnectNow(){return this.state==="connected"||this.state==="pending_connect"||this.state==="closed"?!1:(this.cancelReconnect(),this.state="pending_connect",this.target.connect().catch(n=>{this.logger.info("Failed at reconnecting: "+n)}),!0)}initListeners(){this.unbind=[],this.unbind.push(this.target.on("connect",()=>{this.attempts=0,this.pingedAt=zs(),this.state="connected",this.cancelReconnect(),this.startPolling()})),this.unbind.push(this.target.on("disconnect",()=>{this.disconnectedAt=zs(),this.state="disconnected",this.stopPolling(),this.scheduleReconnect()})),this.unbind.push(this.target.on("close",()=>{this.disconnectedAt=zs(),this.state="closed",this.cancelReconnect(),this.stopPolling()})),this.unbind.push(this.target.on("keepalive",()=>{this.pingedAt=zs()})),this.unbind.push(()=>{this.cancelReconnect(),this.stopPolling()})}dispose(){delete this.target,this.unbind&&this.unbind.forEach(n=>n()),delete this.unbind}startPolling(){this.pollId&&clearTimeout(this.pollId);let n=this.pingInterval+(Math.random()-.5)*this.pingInterval*.5;this.pollId=setTimeout(()=>{this.checkStale(),this.state==="connected"&&this.startPolling()},n)}stopPolling(){this.pollId&&clearTimeout(this.pollId)}checkStale(){let n=zs()-this.pingedAt;n>this.maxMissingPings*this.pingInterval&&(this.logger.warn(`Stale connection: ${n}ms without pings`),this.state="pending_disconnect",this.target.disconnected(new C1))}scheduleReconnect(){if(this.attempts>=this.maxReconnectAttempts){this.target.close();return}let n=this.strategy(this.attempts);this.attempts++,this.logger.info(`Reconnecting in ${n}ms (${this.attempts} attempt)`),this.state="pending_reconnect",this.reconnnectId=setTimeout(()=>this.reconnectNow(),n)}cancelReconnect(){this.reconnnectId&&(clearTimeout(this.reconnnectId),delete this.reconnnectId)}};class N1{constructor(t,e={}){this.transports=t,this.transport=null,this.emitter=Sl(),this.unbind=[],this.logger=e.logger||new $a}displayName(){return"fallbacked transport"}async open(){for(let t=0;t<this.transports.length;t++){let e=this.transports[t];try{this.transport=e,this.resetListeners(),this.logger.debug(`Trying to connect via ${e.displayName()}`),await e.open(),this.logger.debug(`Connected via ${e.displayName()}`);return}catch(r){this.logger.debug(`Failed to connect via ${e.displayName()}: ${r.message}`)}}throw this.transport=null,this.resetListeners(),new Error("Couldn't connect via any available transport")}send(t){if(!this.transport)throw new Error("No transport is open");this.transport.send(t)}async close(){if(!this.transport)throw new Error("No transport is open");await this.transport.close(),this.transport=null}setURL(){throw new Error("Not implemented. Set URL for each transport separately")}setParam(t,e){this.transports.forEach(r=>{r.setParam(t,e)})}setToken(t,e){this.transports.forEach(r=>{r.setToken(t,e)})}on(t,e){return this.emitter.on(t,e)}once(t,e){let r=this.emitter.on(t,(...v)=>{r(),e(...v)});return r}get url(){return this.transport?this.transport.url:""}resetListeners(){this.unbind.forEach(t=>t()),this.unbind.length=0,this.transport&&this.unbind.push(this.transport.on("open",()=>{this.emitter.emit("open")}),this.transport.on("data",t=>{this.emitter.emit("data",t)}),this.transport.on("close",t=>{this.emitter.emit("close",t)}),this.transport.on("error",t=>{this.emitter.emit("error",t)}))}}class D1{constructor(t,e={}){this.url=t;let r=e.websocketImplementation;if(r)this.Impl=r;else if(typeof WebSocket<"u")this.Impl=WebSocket;else throw new Error("No WebSocket support");this.connected=!1,this.emitter=Sl();let{format:v,subprotocol:f,authStrategy:y}=e;this.format=v||"text",this.connectionOptions=e.websocketOptions,this.authStrategy=y||"param",this.authProtocol="",this.subprotocol=f}displayName(){return"WebSocket("+this.url+")"}open(){let t=this.subprotocol;return this.authStrategy==="sub-protocol"&&(t=[this.subprotocol,this.authProtocol]),this.connectionOptions?this.ws=new this.Impl(this.url,t,this.connectionOptions):this.ws=new this.Impl(this.url,t),this.ws.binaryType="arraybuffer",this.initListeners(),new Promise((e,r)=>{let v=[];v.push(this.once("open",()=>{v.forEach(f=>f()),e()})),v.push(this.once("close",()=>{v.forEach(f=>f()),r(Error("WS connection closed"))}))})}setURL(t){this.url=t}setParam(t,e){let r=new URL(this.url);r.searchParams.set(t,e);let v=`${r.protocol}//${r.host}${r.pathname}?${r.searchParams}`;this.setURL(v)}setToken(t,e="jid"){if(this.authStrategy==="param")this.setParam(e,t);else if(this.authStrategy==="header"){this.connectionOptions=this.connectionOptions||{},this.connectionOptions.headers=this.connectionOptions.headers||{};let r=`x-${e}`.toLowerCase();r=Object.keys(this.connectionOptions.headers).find(v=>v.toLowerCase()===r)||r,this.connectionOptions.headers[r]=t}else if(this.authStrategy==="sub-protocol")this.authProtocol=`anycable-token.${t}`;else throw new Error("Unknown auth strategy: "+this.authStrategy)}send(t){if(!this.ws||!this.connected)throw Error("WebSocket is not connected");this.ws.send(t)}close(){this.ws?this.onclose():this.connected=!1}on(t,e){return this.emitter.on(t,e)}once(t,e){let r=this.emitter.on(t,(...v)=>{r(),e(...v)});return r}initListeners(){this.ws.onerror=t=>{this.connected&&this.emitter.emit("error",t.error||new Error("WS Error"))},this.ws.onclose=()=>{this.onclose()},this.ws.onmessage=t=>{let e=t.data;this.format==="binary"&&(e=new Uint8Array(e)),this.emitter.emit("data",e)},this.ws.onopen=()=>{this.connected=!0,this.emitter.emit("open")}}onclose(){this.ws.onclose=void 0,this.ws.onmessage=void 0,this.ws.onopen=void 0,this.ws.close(),delete this.ws,this.connected=!1,this.emitter.emit("close")}}const Hg={protocol:"actioncable-v1-json",pingInterval:3e3,maxReconnectAttempts:1/0,maxMissingPings:2,logLevel:"warn",lazy:!0};function F1(n,t){if(typeof n=="object"&&typeof t>"u"&&(t=n,n=void 0),t=t||{},!n&&!t.transport)throw Error("URL or transport must be specified");t=Object.assign({},Hg,t);let{protocol:e,websocketImplementation:r,websocketFormat:v,websocketOptions:f,websocketAuthStrategy:y,fallbacks:C,logLevel:h,logger:p,transport:s,encoder:a,lazy:c,monitor:l,pingInterval:o,reconnectStrategy:u,maxMissingPings:d,maxReconnectAttempts:w,subprotocol:b,tokenRefresher:R,historyTimestamp:M,protocolOptions:k,concurrentSubscribes:x,performFailures:L,transportConfigurator:O,auth:I}=t;if(p=p||new $a(h),typeof e=="string"){b=b||e;let P=e.substring(0,e.lastIndexOf("-")),N=e.substring(e.lastIndexOf("-")+1);if(k=k||{},P==="actioncable-v1")e=new Wg({logger:p,...k});else if(P==="actioncable-v1-ext")e=new E1({logger:p,historyTimestamp:M,...k});else throw Error(`Protocol is not supported yet: ${e}`);if(N==="json")a=a||new M1,v=v||"text";else if(N==="msgpack"){if(v="binary",!a)throw Error("Msgpack encoder must be specified explicitly. Use `@anycable/msgpack-encoder` package or build your own")}else if(N==="protobuf"){if(v=v||"binary",!a)throw Error("Protobuf encoder must be specified explicitly. Use `@anycable/protobuf-encoder` package or build your own")}else throw Error(`Protocol is not supported yet: ${e}`)}if(!e)throw Error("Protocol must be specified");s=s||new D1(n,{websocketImplementation:r,websocketOptions:f,subprotocol:b,authStrategy:y,format:v}),C&&(s=new N1([s,...C],{logger:p})),I&&I.token&&s.setToken(I.token,I.param||"jid"),u=u||zg(o),l!==!1&&(l=l||new jg({pingInterval:o,reconnectStrategy:u,maxMissingPings:d,maxReconnectAttempts:w,logger:p}));let E={concurrentSubscribes:x},z=new L1({protocol:e,transport:s,encoder:a,logger:p,lazy:c,hubOptions:E,performFailures:L,transportConfigurator:O});return l&&(l.watch(z),z.monitor=l),R&&P1(z,async()=>{try{await R(s)}catch(P){return p.error("Failed to refresh authentication token: "+P),!1}return z.connect().catch(()=>{}),!0}),z}function P1(n,t){let e=!1;n.on("connect",()=>e=!1),n.on("close",async r=>{if(r){if(e){n.logger.warn("Token auto-refresh is disabled",r);return}r.reason==="token_expired"&&(e=!0,await t())}})}class W1{constructor(t){this.channel=t}notify(t,...e){typeof this[t]=="function"&&this[t](...e)}perform(t,e={}){this.channel.perform(t,e)}send(t){this.channel.send(t)}get identifier(){return this.channel.identifier}unsubscribe(){return this.channel.disconnect()}}class B1 extends mu{constructor(t,e,r){super(t,e),this.subscription=new W1(this),Object.assign(this.subscription,r),this.on("connect",({reconnect:v})=>this.subscription.notify("connected",{reconnected:v})),this.on("disconnect",()=>this.subscription.notify("disconnected",{allowReconnect:!0})),this.on("message",v=>this.subscription.notify("received",v)),this.on("close",v=>{v&&v instanceof fu?this.subscription.notify("rejected"):this.subscription.notify("disconnected",{allowReconnect:!1})})}}class z1{constructor(t){this.cable=t}create(t,e){let r,v;typeof t=="object"?(r=t.channel,delete t.channel,v=t):(r=t,v={});let f=new B1(r,v,e);return f.subscription.notify("initialized"),this.cable.subscribe(f),f.subscription}findAll(t){return this.cable.hub.channels.filter(e=>e.identifier===t).map(e=>e.subscription)}}class j1{constructor(t){this.cable=t,this.subscriptions=new z1(t)}}class H1 extends Pg{writeLogEntry(t,e,r){r?console[t](e,r):console[t](e)}}class U1 extends jg{watch(t){super.watch(t),this.initActivityListeners()}initActivityListeners(){if(typeof document<"u"&&typeof window<"u"&&document.addEventListener&&window.addEventListener){let t=()=>{document.hidden||this.reconnectNow()&&this.logger.debug("Trigger reconnect due to visibility change")},e=v=>{this.reconnectNow()&&this.logger.debug("Trigger reconnect",{event:v})},r=()=>this.disconnect(new _i("page_frozen"));document.addEventListener("visibilitychange",t,!1),window.addEventListener("focus",e,!1),window.addEventListener("online",e,!1),window.addEventListener("resume",e,!1),window.addEventListener("freeze",r,!1),this.unbind.push(()=>{document.removeEventListener("visibilitychange",t,!1),window.removeEventListener("focus",e,!1),window.removeEventListener("online",e,!1),window.removeEventListener("resume",e,!1),window.removeEventListener("freeze",r,!1)})}}disconnect(t){this.state==="disconnected"||this.state==="closed"||(this.logger.info("Disconnecting",{reason:t.message}),this.cancelReconnect(),this.stopPolling(),this.state="pending_disconnect",this.target.disconnected(t))}}const V1=["cable","action-cable"],G1="/cable",$l=(n,t)=>{for(let e of V1){let r=n.head.querySelector(`meta[name='${e}-${t}']`);if(r)return r.getAttribute("content")}},Ug=n=>n.match(/wss?:\/\//)?n:typeof window<"u"?`${window.location.protocol.replace("http","ws")}//${window.location.host}${n}`:n,K1=()=>{if(typeof document<"u"&&document.head){let n=$l(document,"url");if(n)return Ug(n)}return Ug(G1)},q1=()=>{if(typeof document<"u"&&document.head){let n=$l(document,"history-timestamp");if(n)return n|0}},Y1=()=>{if(typeof document<"u"&&document.head)return $l(document,"token")},X1=()=>{if(typeof document<"u"&&document.head)return $l(document,"token-param")};function Q1(n,t){typeof n=="object"&&typeof t>"u"&&(t=n,n=void 0),n=n||K1(),t=t||{},t.historyTimestamp||(t.historyTimestamp=q1());let e=Y1();if(e){let p=X1();t.auth=Object.assign({token:e,param:p},t.auth||{})}t=Object.assign({},Hg,t);let{logLevel:r,logger:v,pingInterval:f,reconnectStrategy:y,maxMissingPings:C,maxReconnectAttempts:h}=t;return v=t.logger=t.logger||new H1(r),y=t.reconnectStrategy=t.reconnectStrategy||zg(f),t.monitor!==!1&&(t.monitor=t.monitor||new U1({pingInterval:f,reconnectStrategy:y,maxMissingPings:C,maxReconnectAttempts:h,logger:v})),F1(n,t)}function Z1(n,t){let e=Q1(n,t);return new j1(e)}class J1{constructor(t="/openc3-api/cable"){this._cable=null,this._url=t}disconnect(){this._cable&&(this._cable.cable.disconnect(),this._cable=null)}createSubscription(t,e,r={},v={}){return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(f=>{if(f&&OpenC3Auth.setTokens(),this._cable==null){let y=this._url+"?scope="+encodeURIComponent(window.openc3Scope)+"&authorization="+encodeURIComponent(localStorage.openc3Token);y=new URL(y,document.baseURI).href,this._cable=Z1(y)}return this._cable.subscriptions.create({channel:t,...v},r)})}recordPing(){}}kr("N",J1);class eC{constructor(t,e,r="",v=""){this.keyword=t.keyword,this.parameters=t.parameters,this.filename=t.filename,this.line=t.line,this.lineNumber=t.lineNumber,this.message=e,this.usage=r,this.url=v}}kr("x",eC);function Ml(n){return tC.test(n)}const tC=/^-?[0-9]+$/;function Vg(n){return nC.test(n)}const nC=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function Gg(n,t){const e=Number.parseFloat(n),r=String(e);if(n===r)return!0;const v=Kg(n),f=Kg(r);return!!(v===f||(t==null?void 0:t.approx)===!0&&!Ml(n)&&f.length>=14&&v.startsWith(f.substring(0,14)))}let Ma=function(n){return n.underflow="underflow",n.overflow="overflow",n.truncate_integer="truncate_integer",n.truncate_float="truncate_float",n}({});function rC(n){if(Gg(n,{approx:!1}))return;if(Ml(n))return Ma.truncate_integer;const t=Number.parseFloat(n);return Number.isFinite(t)?t===0?Ma.underflow:Ma.truncate_float:Ma.overflow}function Kg(n){const{start:t,end:e}=iC(n),r=n.substring(t,e),v=r.indexOf(".");return v===-1?r:r.substring(0,v)+r.substring(v+1)}function iC(n){let t=0;for(n[0]==="-"&&t++;n[t]==="0"||n[t]===".";)t++;let e=n.lastIndexOf("e");for(e===-1&&(e=n.lastIndexOf("E")),e===-1&&(e=n.length);(n[e-1]==="0"||n[e-1]===".")&&e>t;)e--;return{start:t,end:e}}class oC{constructor(t){if(pl(this,"isLosslessNumber",!0),!Vg(t))throw new Error(`Invalid number (value: "${t}")`);this.value=t}valueOf(){const t=rC(this.value);if(t===void 0||t===Ma.truncate_float)return Number.parseFloat(this.value);if(Ml(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${t} and become ${Number.parseFloat(this.value)}`)}toString(){return this.value}}function sC(n){return n&&typeof n=="object"&&n.isLosslessNumber||!1}function aC(n){return new oC(n)}function lC(n,t){return yu({"":n},"",n,t)}function yu(n,t,e,r){return Array.isArray(e)?r.call(n,t,uC(e,r)):e&&typeof e=="object"&&!sC(e)?r.call(n,t,cC(e,r)):r.call(n,t,e)}function cC(n,t){for(const e of Object.keys(n)){const r=yu(n,e,n[e],t);r!==void 0?n[e]=r:delete n[e]}return n}function uC(n,t){for(let e=0;e<n.length;e++)n[e]=yu(n,String(e),n[e],t);return n}function hC(n,t){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:aC,r=0;const v=C();return o(v),d(),t?lC(v,t):v;function f(){if(n.charCodeAt(r)===vC){r++,p();const S={};let A=!0;for(;r<n.length&&n.charCodeAt(r)!==Yg;){A?A=!1:(c(),p());const D=r,j=s();if(j===void 0){R();return}p(),l();const U=C();if(U===void 0){I();return}Object.prototype.hasOwnProperty.call(S,j)&&!wu(U,S[j])&&M(j,D+1),S[j]=U}return n.charCodeAt(r)!==Yg&&k(),r++,S}}function y(){if(n.charCodeAt(r)===yC){r++,p();const S=[];let A=!0;for(;r<n.length&&n.charCodeAt(r)!==Xg;){A?A=!1:c();const D=C();u(D),S.push(D)}return n.charCodeAt(r)!==Xg&&x(),r++,S}}function C(){p();const S=s()??a()??f()??y()??h("true",!0)??h("false",!1)??h("null",null);return p(),S}function h(S,A){if(n.slice(r,r+S.length)===S)return r+=S.length,A}function p(){for(;dC(n.charCodeAt(r));)r++}function s(){if(n.charCodeAt(r)===bu){r++;let S="";for(;r<n.length&&n.charCodeAt(r)!==bu;){if(n.charCodeAt(r)===mC){const A=n[r+1],D=fC[A];D!==void 0?(S+=D,r++):A==="u"?Tl(n.charCodeAt(r+2))&&Tl(n.charCodeAt(r+3))&&Tl(n.charCodeAt(r+4))&&Tl(n.charCodeAt(r+5))?(S+=String.fromCharCode(Number.parseInt(n.slice(r+2,r+6),16)),r+=5):E(r):O(r)}else gC(n.charCodeAt(r))?S+=n[r]:L(n[r]);r++}return b(),r++,S}}function a(){const S=r;if(n.charCodeAt(r)===Qg&&(r++,w(S)),n.charCodeAt(r)===xu)r++;else if(pC(n.charCodeAt(r)))for(r++;El(n.charCodeAt(r));)r++;if(n.charCodeAt(r)===SC)for(r++,w(S);El(n.charCodeAt(r));)r++;if(n.charCodeAt(r)===IC||n.charCodeAt(r)===EC)for(r++,(n.charCodeAt(r)===Qg||n.charCodeAt(r)===kC)&&r++,w(S);El(n.charCodeAt(r));)r++;if(r>S)return e(n.slice(S,r))}function c(){if(n.charCodeAt(r)!==_C)throw new SyntaxError(`Comma ',' expected after value ${N()}`);r++}function l(){if(n.charCodeAt(r)!==$C)throw new SyntaxError(`Colon ':' expected after property name ${N()}`);r++}function o(S){if(S===void 0)throw new SyntaxError(`JSON value expected ${N()}`)}function u(S){if(S===void 0)throw new SyntaxError(`Array item expected ${N()}`)}function d(){if(r<n.length)throw new SyntaxError(`Expected end of input ${N()}`)}function w(S){if(!El(n.charCodeAt(r))){const A=n.slice(S,r);throw new SyntaxError(`Invalid number '${A}', expecting a digit ${N()}`)}}function b(){if(n.charCodeAt(r)!==bu)throw new SyntaxError(`End of string '"' expected ${N()}`)}function R(){throw new SyntaxError(`Quoted object key expected ${N()}`)}function M(S,A){throw new SyntaxError(`Duplicate key '${S}' encountered at position ${A}`)}function k(){throw new SyntaxError(`Quoted object key or end of object '}' expected ${N()}`)}function x(){throw new SyntaxError(`Array item or end of array ']' expected ${N()}`)}function L(S){throw new SyntaxError(`Invalid character '${S}' ${z()}`)}function O(S){const A=n.slice(S,S+2);throw new SyntaxError(`Invalid escape character '${A}' ${z()}`)}function I(){throw new SyntaxError(`Object value expected after ':' ${z()}`)}function E(S){const A=n.slice(S,S+6);throw new SyntaxError(`Invalid unicode character '${A}' ${z()}`)}function z(){return`at position ${r}`}function P(){return r<n.length?`but got '${n[r]}'`:"but reached end of input"}function N(){return`${P()} ${z()}`}}function dC(n){return n===wC||n===bC||n===xC||n===CC}function Tl(n){return n>=xu&&n<=Cu||n>=MC&&n<=RC||n>=TC&&n<=LC}function El(n){return n>=xu&&n<=Cu}function pC(n){return n>=AC&&n<=Cu}function gC(n){return n>=32&&n<=1114111}function wu(n,t){return n===t?!0:Array.isArray(n)&&Array.isArray(t)?n.length===t.length&&n.every((e,r)=>wu(e,t[r])):qg(n)&&qg(t)?[...new Set([...Object.keys(n),...Object.keys(t)])].every(e=>wu(n[e],t[e])):!1}function qg(n){return typeof n=="object"&&n!==null}const fC={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
1398
+ `,r:"\r",t:" "},mC=92,vC=123,Yg=125,yC=91,Xg=93,wC=32,bC=10,xC=9,CC=13,bu=34,kC=43,Qg=45,xu=48,AC=49,Cu=57,_C=44,SC=46,$C=58,MC=65,TC=97,EC=69,IC=101,RC=70,LC=102;function Zg(n,t,e,r){return v(n);function v(h,p){if(Array.isArray(r)){const s=r.find(a=>a.test(h));if(s){const a=s.stringify(h);if(typeof a!="string"||!Vg(a))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${a})`);return a}}if(typeof h=="boolean"||typeof h=="number"||typeof h=="string"||h===null||h instanceof Date||h instanceof Boolean||h instanceof Number||h instanceof String)return JSON.stringify(h);if(h!=null&&h.isLosslessNumber||typeof h=="bigint")return h.toString();if(Array.isArray(h))return f(h);if(h&&typeof h=="object")return y(h)}function f(h,p){if(h.length===0)return"[]";let s="[";for(let a=0;a<h.length;a++){const c=h[a];typeof c<"u"&&typeof c!="function"?s+=v(c):s+="null",a<h.length-1&&(s+=",")}return s+="]",s}function y(h,p){if(typeof h.toJSON=="function")return Zg(h.toJSON(),t,e,void 0);const s=Array.isArray(t)?t.map(String):Object.keys(h);if(s.length===0)return"{}";let a=!0,c="{";for(const l of s){const o=h[l];if(C(l,o)){a?a=!1:c+=",";const u=JSON.stringify(l);c+=`${u}:`,c+=v(o)}}return c+="}",c}function C(h,p){return typeof p<"u"&&typeof p!="function"&&typeof p!="symbol"}}function OC(n){return Ml(n)&&!Gg(n)?BigInt(n):parseFloat(n)}class NC{constructor(){pl(this,"id",1)}async exec(t,e,r={},v={},f=6e4){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}this.id=this.id+1;try{return r.scope=window.openc3Scope,v.manual=!0,(await pu.post("/openc3-api/api",{jsonrpc:"2.0",method:t,params:e,id:this.id,keyword_params:r},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...v},timeout:f,transformRequest:[(y,C)=>Zg(y)],transformResponse:[y=>hC(y,void 0,OC)]})).data.result}catch(y){let C=new Error;throw y.response?(C.name=y.response.data.error.data.class,C.message=y.response.data.error.data.message,C.object=y.response.data.error):y.request?(C.name="Request error",C.message="Request error, no response received"):C=y,C}}decode_openc3_type(t){if(t!==null&&typeof t=="object"&&t.json_class=="Float"&&t.raw){if(t.raw=="NaN")return NaN;if(t.raw=="Infinity")return 1/0;if(t.raw=="-Infinity")return-1/0}return null}encode_openc3_type(t){return Number.isNaN(t)?{json_class:"Float",raw:"NaN"}:t==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:t==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}ensure_offline_access(){this.offline_access_needed().then(t=>{t&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then(()=>{delete localStorage.openc3OfflineToken}):OpenC3Auth.getOfflineAccess())})}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(t){return this.exec("set_offline_access",[t])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(t,e){return this.exec("map_target_to_interface",[t,e])}connect_interface(t,...e){return e.length>0?this.exec("connect_interface",[t,...e]):this.exec("connect_interface",[t])}disconnect_interface(t){return this.exec("disconnect_interface",[t])}interface_cmd(t,e,...r){return this.exec("interface_cmd",[t,e,...r])}get_all_router_info(){return this.exec("get_all_router_info",[])}connect_router(t){return this.exec("connect_router",[t])}disconnect_router(t){return this.exec("disconnect_router",[t])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_tlm_cnts(t){return this.exec("get_tlm_cnts",[t])}get_item(t,e,r){return this.exec("get_item",[t,e,r])}get_param(t,e,r){return this.exec("get_param",[t,e,r])}get_parameter(t,e,r){return this.exec("get_param",[t,e,r])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(t){return this.exec("set_limits_set",[t])}get_target(t){return this.exec("get_target",[t])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_names",[])}get_tlm(t,e){return this.exec("get_tlm",[t,e])}get_telemetry(t,e){return this.exec("get_tlm",[t,e])}get_all_tlm(t){return this.exec("get_all_tlm",[t])}get_all_telemetry(t){return this.exec("get_all_tlm",[t])}get_all_tlm_names(t,e=!1){return this.exec("get_all_tlm_names",[t],{hidden:e})}get_all_telemetry_names(t){return this.exec("get_all_tlm_names",[t])}get_all_tlm_item_names(t){return this.exec("get_all_tlm_item_names",[t])}async get_tlm_packet(t,e,r,v=30){const f=await this.exec("get_tlm_packet",[t,e],{type:r,stale_time:v});if(f!=null){let y=f.length,C=null;for(let h=0;h<y;h++)C=this.decode_openc3_type(f[h][1]),C!==null&&(f[h][1]=C)}return f}get_packet_derived_items(t,e){return this.exec("get_packet_derived_items",[t,e])}get_tlm_buffer(t,e){return this.exec("get_tlm_buffer",[t,e])}get_tlm_available(t){return this.exec("get_tlm_available",[t])}async get_tlm_values(t,e=30,r=null,v=null,f=null){let y={stale_time:e};r!==null&&(y.cache_timeout=r),v!==null&&(y.start_time=v.toISOString()),f!==null&&(y.end_time=f.toISOString());const C=await this.exec("get_tlm_values",[t],y,{},1e4);if(C&&C.length>0){let h=C[0].length,p=null;for(let s=0;s<h;s++)p=this.decode_openc3_type(C[0][s]),p!==null&&(C[0][s]=p)}return C}get_limits(t,e,r){return this.exec("get_limits",[t,e,r])}async tlm(t,e,r,v="CONVERTED"){let f=null;if(e===void 0)f=await this.exec("tlm",[t]);else if(r===void 0)if(["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(e))f=await this.exec("tlm",[t],{type:e});else{let C=new Error;throw C.name="TypeError",C.message=`Invalid data type ${e}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`,C}else f=await this.exec("tlm",[t,e,r],{type:v});let y=this.decode_openc3_type(f);return y!==null&&(f=y),f}async inject_tlm(t,e,r=null,v="CONVERTED"){await this.exec("inject_tlm",[t,e,r],{type:v})}set_tlm(t,e,r,v){return this.exec("set_tlm",[t,e,r],{type:v})}override_tlm(t,e,r,v){return this.exec("override_tlm",[t,e,r],{type:v})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(t,e,r,v){return this.exec("normalize_tlm",[t,e,r],{type:v})}get_all_cmds(t){return this.exec("get_all_cmds",[t])}get_all_commands(t){return this.exec("get_all_cmds",[t])}get_all_cmd_names(t,e=!1){return this.exec("get_all_cmd_names",[t],{hidden:e})}get_all_command_names(t){return this.exec("get_all_cmd_names",[t])}get_cmd(t,e){return this.exec("get_cmd",[t,e])}get_command(t,e){return this.exec("get_cmd",[t,e])}get_cmd_cnts(t){return this.exec("get_cmd_cnts",[t])}get_cmd_value(t,e,r,v="CONVERTED"){return this.exec("get_cmd_value",[t,e,r,v])}get_cmd_buffer(t,e){return this.exec("get_cmd_buffer",[t,e])}_cmd(t,e,r,v,f){let y=null;for(let C in v)Object.prototype.hasOwnProperty.call(v,C)&&(y=this.encode_openc3_type(v[C]),y!==null&&(v[C]=y));return this.exec(t,[e,r,v],{},f)}get_cmd_hazardous(t,e,r,v={}){return e===void 0?this.exec("get_cmd_hazardous",t,{},v):this._cmd("get_cmd_hazardous",t,e,r,v)}cmd(t,e,r,v={}){return e===void 0?this.exec("cmd",t,{},v):this._cmd("cmd",t,e,r,v)}cmd_no_range_check(t,e,r,v={}){return e===void 0?this.exec("cmd_no_range_check",t,{},v):this._cmd("cmd_no_range_check",t,e,r,v)}cmd_raw(t,e,r,v={}){return e===void 0?this.exec("cmd_raw",t,{},v):this._cmd("cmd_raw",t,e,r,v)}cmd_raw_no_range_check(t,e,r,v={}){return e===void 0?this.exec("cmd_raw_no_range_check",t,{},v):this._cmd("cmd_raw_no_range_check",t,e,r,v)}cmd_no_hazardous_check(t,e,r,v={}){return e===void 0?this.exec("cmd_no_hazardous_check",t,{},v):this._cmd("cmd_no_hazardous_check",t,e,r,v)}cmd_no_checks(t,e,r,v={}){return e===void 0?this.exec("cmd_no_checks",t,{},v):this._cmd("cmd_no_checks",t,e,r,v)}cmd_raw_no_hazardous_check(t,e,r,v={}){return e===void 0?this.exec("cmd_raw_no_hazardous_check",t,{},v):this._cmd("cmd_raw_no_hazardous_check",t,e,r,v)}cmd_raw_no_checks(t,e,r,v={}){return e===void 0?this.exec("cmd_raw_no_checks",t,{},v):this._cmd("cmd_raw_no_checks",t,e,r,v)}build_cmd(t,e,r){return e===void 0?this.exec("build_cmd",t):this._cmd("build_cmd",t,e,r)}build_command(t,e,r){return e===void 0?this.exec("build_cmd",t):this._cmd("build_cmd",t,e,r)}get_interface_names(){return this.exec("get_interface_names",[])}send_raw(t,e){return this.exec("send_raw",[t,e])}list_configs(t){return this.exec("list_configs",[t])}load_config(t,e){return this.exec("load_config",[t,e])}save_config(t,e,r){return this.exec("save_config",[t,e,r])}delete_config(t,e){return this.exec("delete_config",[t,e])}enable_limits(t,e,r){return this.exec("enable_limits",[t,e,r])}disable_limits(t,e,r){return this.exec("disable_limits",[t,e,r])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(t){return this.exec("get_overall_limits_state",[t])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(t,e){return this.exec("get_setting",[t],e)}get_settings(t,e){return this.exec("get_settings",t,e)}set_setting(t,e){return this.exec("set_setting",[t,e])}update_news(){return this.exec("update_news",[])}update_plugin_store(){return this.exec("update_plugin_store",[])}save_setting(t,e){return this.exec("set_setting",[t,e])}get_metrics(){return this.exec("get_metrics",[])}async hashString(t){if(window.isSecureContext){const e=new TextEncoder().encode(t),r=await crypto.subtle.digest("SHA-256",e),v=new Uint8Array(r);return Array.from(v).map(f=>f.toString(16).padStart(2,"0")).join("")}}}kr("P",NC);var Jg={exports:{}},ef;function DC(){return ef||(ef=1,function(n,t){ace.define("ace/ext/hardwrap",["require","exports","module","ace/range","ace/editor","ace/config"],function(e,r,v){function f(p,s){function a(I,E,z){if(!(I.length<E)){var P=I.slice(0,E),N=I.slice(E),S=/^(?:(\s+)|(\S+)(\s+))/.exec(N),A=/(?:(\s+)|(\s+)(\S+))$/.exec(P),D=0,j=0;if(A&&!A[2]&&(D=E-A[1].length,j=E),S&&!S[2]&&(D||(D=E),j=E+S[1].length),D)return{start:D,end:j};if(A&&A[2]&&A.index>z)return{start:A.index,end:A.index+A[2].length};if(S&&S[2])return D=E+S[2].length,{start:D,end:D+S[3].length}}}for(var c=s.column||p.getOption("printMarginColumn"),l=s.allowMerge!=0,o=Math.min(s.startRow,s.endRow),u=Math.max(s.startRow,s.endRow),d=p.session;o<=u;){var w=d.getLine(o);if(w.length>c){var b=a(w,c,5);if(b){var R=/^\s*/.exec(w)[0];d.replace(new C(o,b.start,o,b.end),`
1399
+ `+R)}u++}else if(l&&/\S/.test(w)&&o!=u){var M=d.getLine(o+1);if(M&&/\S/.test(M)){var k=w.replace(/\s+$/,""),x=M.replace(/^\s+/,""),L=k+" "+x,b=a(L,c,5);if(b&&b.start>k.length||L.length<c){var O=new C(o,k.length,o+1,M.length-x.length);d.replace(O," "),o--,u--}else k.length<w.length&&d.remove(new C(o,k.length,o,w.length))}}o++}}function y(p){if(p.command.name=="insertstring"&&/\S/.test(p.args)){var s=p.editor,a=s.selection.cursor;if(a.column<=s.renderer.$printMarginColumn)return;var c=s.session.$undoManager.$lastDelta;f(s,{startRow:a.row,endRow:a.row,allowMerge:!1}),c!=s.session.$undoManager.$lastDelta&&s.session.markUndoGroup()}}var C=e("../range").Range,h=e("../editor").Editor;e("../config").defineOptions(h.prototype,"editor",{hardWrap:{set:function(p){p?this.commands.on("afterExec",y):this.commands.off("afterExec",y)},value:!1}}),r.hardWrap=f}),ace.define("ace/keyboard/vim",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/dom","ace/lib/oop","ace/lib/keys","ace/lib/event","ace/search","ace/lib/useragent","ace/search_highlight","ace/commands/multi_select_commands","ace/mode/text","ace/ext/hardwrap","ace/multi_select"],function(e,r,v){function f(m){return{row:m.line,column:m.ch}}function y(m){return new Oe(m.row,m.column)}function C(m,$,_){if($.line===_.line&&$.ch>=_.ch-1){var F=m.getLine($.line),W=F.charCodeAt($.ch);55296<=W&&W<=55551&&(_.ch+=1)}return{start:$,end:_}}function h(m){m.setOption("disableInput",!0),m.setOption("showCursorWhenSelecting",!1),Fe.signal(m,"vim-mode-change",{mode:"normal"}),m.on("cursorActivity",Wo),L(m),Fe.on(m.getInputField(),"paste",s(m))}function p(m){m.setOption("disableInput",!1),m.off("cursorActivity",Wo),Fe.off(m.getInputField(),"paste",s(m)),m.state.vim=null,ir&&clearTimeout(ir)}function s(m){var $=m.state.vim;return $.onPasteFn||($.onPasteFn=function(){$.insertMode||(m.setCursor(fe(m.getCursor(),0,1)),_n.enterInsertMode(m,{},$))}),$.onPasteFn}function a(m,$){return $>=m.firstLine()&&$<=m.lastLine()}function c(m){return/^[a-z]$/.test(m)}function l(m){return"()[]{}".indexOf(m)!=-1}function o(m){return la.test(m)}function u(m){return Ht.test(m)}function d(m){return/^\s*$/.test(m)}function w(m){return".?!".indexOf(m)!=-1}function b(m,$){for(var _=0;_<$.length;_++)if($[_]==m)return!0;return!1}function R(m,$,_,F,W){if($===void 0&&!W)throw Error("defaultValue is required unless callback is provided");if(_||(_="string"),Rt[m]={type:_,defaultValue:$,callback:W},F)for(var B=0;B<F.length;B++)Rt[F[B]]=Rt[m];$&&M(m,$)}function M(m,$,_,F){var W=Rt[m];F=F||{};var B=F.scope;if(!W)return new Error("Unknown option: "+m);if(W.type=="boolean"){if($&&$!==!0)return new Error("Invalid argument: "+m+"="+$);$!==!1&&($=!0)}W.callback?(B!=="local"&&W.callback($,void 0),B!=="global"&&_&&W.callback($,_)):(B!=="local"&&(W.value=W.type=="boolean"?!!$:$),B!=="global"&&_&&(_.state.vim.options[m]={value:$}))}function k(m,$,_){var F=Rt[m];_=_||{};var W=_.scope;if(!F)return new Error("Unknown option: "+m);if(F.callback){var B=$&&F.callback(void 0,$);return W!=="global"&&B!==void 0?B:W!=="local"?F.callback():void 0}var B=W!=="global"&&$&&$.state.vim.options[m];return(B||W!=="local"&&F||{}).value}function x(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=kn()}function L(m){return m.state.vim||(m.state.vim={inputState:new S,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeReturn:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:null,sel:{},options:{},expectLiteralNext:!1}),m.state.vim}function O(){We={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:fi(),macroModeState:new x,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new q({}),searchHistoryController:new Z,exCommandHistoryController:new Z};for(var m in Rt){var $=Rt[m];$.value=$.defaultValue}}function I(m){function $(Y){typeof Y=="string"?ln.value=Y:ln=null}if(m[0]=="<"){var _=m.toLowerCase().slice(1,-1),F=_.split("-");if(_=F.pop()||"",_=="lt")m="<";else if(_=="space")m=" ";else if(_=="cr")m=`
1400
+ `;else if(mi[_]){var W=ln.value,B={key:mi[_],target:{value:W,selectionEnd:W.length,selectionStart:W.length}};ln.onKeyDown&&ln.onKeyDown(B,ln.value,$),ln&&ln.onKeyUp&&ln.onKeyUp(B,ln.value,$);return}}if(m==`
1401
+ `){var G=ln;ln=null,G.onClose&&G.onClose(G.value)}else ln.value=(ln.value||"")+m}function E(m,$,_){var F=Qt;if(_){if(Mr.indexOf(_)!=-1)return;Mr.push(_),Qt=_.noremap!=0}try{for(var W=L(m),B=/<(?:[CSMA]-)*\w+>|./gi,G;G=B.exec($);){var Y=G[0],Q=W.insertMode;if(ln){I(Y);continue}var re=dt.handleKey(m,Y,"mapping");if(!re&&Q&&W.insertMode){if(Y[0]=="<"){var se=Y.toLowerCase().slice(1,-1),ye=se.split("-");if(se=ye.pop()||"",se=="lt")Y="<";else if(se=="space")Y=" ";else if(se=="cr")Y=`
1402
+ `;else{if(mi.hasOwnProperty(se)){Y=mi[se],zo(m,Y);continue}Y=Y[0],B.lastIndex=G.index+1}}m.replaceSelection(Y)}}}finally{if(Mr.pop(),Qt=Mr.length?F:!1,!Mr.length&&ln){var Ce=ln;ln=null,yr(m,Ce)}}}function z(m,$){var _=m.key;if(!Tr[_]){_.length>1&&_[0]=="n"&&(_=_.replace("Numpad","")),_=jn[_]||_;var F="";if(m.ctrlKey&&(F+="C-"),m.altKey&&(F+="A-"),m.metaKey&&(F+="M-"),Fe.isMac&&m.altKey&&!m.metaKey&&!m.ctrlKey&&(F=F.slice(2)),(F||_.length>1)&&m.shiftKey&&(F+="S-"),$&&!$.expectLiteralNext&&_.length==1){if(On.keymap&&_ in On.keymap)(On.remapCtrl!=0||!F)&&(_=On.keymap[_]);else if(_.charCodeAt(0)>255){var W=m.code&&m.code.slice(-1)||"";m.shiftKey||(W=W.toLowerCase()),W&&(_=W)}}return F+=_,F.length>1&&(F="<"+F+">"),F}}function P(m,$){On.string!==m&&(On=N(m)),On.remapCtrl=$}function N(m){function $(F){return F.split(/\\?(.)/).filter(Boolean)}var _={};return m?(m.split(/((?:[^\\,]|\\.)+),/).map(function(F){if(F){var W=F.split(/((?:[^\\;]|\\.)+);/);if(W.length==3){var B=$(W[1]),G=$(W[2]);if(B.length!==G.length)return;for(var Y=0;Y<B.length;++Y)_[B[Y]]=G[Y]}else if(W.length==1){var Q=$(F);if(Q.length%2!==0)return;for(var Y=0;Y<Q.length;Y+=2)_[Q[Y]]=Q[Y+1]}}}),{keymap:_,string:m}):{keymap:_,string:""}}function S(){this.prefixRepeat=[],this.motionRepeat=[],this.operator=null,this.operatorArgs=null,this.motion=null,this.motionArgs=null,this.keyBuffer=[],this.registerName=null,this.changeQueue=null}function A(m,$){m.state.vim.inputState=new S,m.state.vim.expectLiteralNext=!1,Fe.signal(m,"vim-command-done",$)}function D(){this.removed=[],this.inserted=""}function j(m,$,_){this.clear(),this.keyBuffer=[m||""],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!!$,this.blockwise=!!_}function U(m,$){var _=We.registerController.registers;if(!m||m.length!=1)throw Error("Register name must be 1 character");_[m]=$,jt.push(m)}function q(m){this.registers=m,this.unnamedRegister=m['"']=new j,m["."]=new j,m[":"]=new j,m["/"]=new j,m["+"]=new j}function Z(){this.historyBuffer=[],this.iterator=0,this.initialPrefix=null}function te(m,$){Br[m]=$}function he(m,$){for(var _=[],F=0;F<$;F++)_.push(m);return _}function ne(m,$){Vo[m]=$}function le(m,$){_n[m]=$}function ue(m,$,_){var F=m.state.vim,W=F.insertMode||F.visualMode,B=Math.min(Math.max(m.firstLine(),$.line),m.lastLine()),G=m.getLine(B),Y=G.length-1+ +!!W,Q=Math.min(Math.max(0,$.ch),Y),re=G.charCodeAt(Q);if(56320<=re&&re<=57343){var se=1;_&&_.line==B&&_.ch>Q&&(se=-1),Q+=se,Q>Y&&(Q-=2)}return new Oe(B,Q)}function ce(m){var $={};for(var _ in m)m.hasOwnProperty(_)&&($[_]=m[_]);return $}function fe(m,$,_){return typeof $=="object"&&(_=$.ch,$=$.line),new Oe(m.line+$,m.ch+_)}function Se(m,$,_,F){F.operator&&(_="operatorPending");for(var W,B=[],G=[],Y=Qt?$.length-fo:0,Q=Y;Q<$.length;Q++){var re=$[Q];_=="insert"&&re.context!="insert"||re.context&&re.context!=_||F.operator&&re.type=="action"||!(W=$e(m,re.keys))||(W=="partial"&&B.push(re),W=="full"&&G.push(re))}return{partial:B.length&&B,full:G.length&&G}}function $e(m,$){var _=$.slice(-11)=="<character>",F=$.slice(-10)=="<register>";if(_||F){var W=$.length-(_?11:10),B=m.slice(0,W),G=$.slice(0,W);return B==G&&m.length>W?"full":G.indexOf(B)==0?"partial":!1}return m==$?"full":$.indexOf(m)==0?"partial":!1}function Te(m){var $=/^.*(<[^>]+>)$/.exec(m),_=$?$[1]:m.slice(-1);if(_.length>1)switch(_){case"<CR>":_=`
1403
+ `;break;case"<Space>":_=" ";break;default:_=""}return _}function qe(m,$,_){return function(){for(var F=0;F<_;F++)$(m)}}function Ve(m){return new Oe(m.line,m.ch)}function lt(m,$){return m.ch==$.ch&&m.line==$.line}function Je(m,$){return m.line<$.line?!0:m.line==$.line&&m.ch<$.ch}function ht(m,$){return arguments.length>2&&($=ht.apply(void 0,Array.prototype.slice.call(arguments,1))),Je(m,$)?m:$}function qt(m,$){return arguments.length>2&&($=qt.apply(void 0,Array.prototype.slice.call(arguments,1))),Je(m,$)?$:m}function In(m,$,_){var F=Je(m,$),W=Je($,_);return F&&W}function Vt(m,$){return m.getLine($).length}function qr(m){return m.trim?m.trim():m.replace(/^\s+|\s+$/g,"")}function fn(m){return m.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1")}function Bn(m,$,_){var F=Vt(m,$),W=new Array(_-F+1).join(" ");m.setCursor(new Oe($,F)),m.replaceRange(W,m.getCursor())}function tr(m,$){var _=[],F=m.listSelections(),W=Ve(m.clipPos($)),B=!lt($,W),G=m.getCursor("head"),Y=gt(F,G),Q=lt(F[Y].head,F[Y].anchor),re=F.length-1,se=re-Y>Y?re:0,ye=F[se].anchor,Ce=Math.min(ye.line,W.line),me=Math.max(ye.line,W.line),we=ye.ch,Le=W.ch,Re=F[se].head.ch-we,ze=Le-we;Re>0&&ze<=0?(we++,B||Le--):Re<0&&ze>=0?(we--,Q||Le++):Re<0&&ze==-1&&(we--,Le++);for(var rt=Ce;rt<=me;rt++){var Ke={anchor:new Oe(rt,we),head:new Oe(rt,Le)};_.push(Ke)}return m.setSelections(_),$.ch=Le,ye.ch=we,ye}function Sr(m,$,_){for(var F=[],W=0;W<_;W++){var B=fe($,W,0);F.push({anchor:B,head:B})}m.setSelections(F,0)}function gt(m,$,_){for(var F=0;F<m.length;F++){var W=lt(m[F].anchor,$),B=lt(m[F].head,$);if(W||B)return F}return-1}function He(m,$){var _=$.lastSelection,F=function(){var B=m.listSelections(),G=B[0],Y=B[B.length-1],Q=Je(G.anchor,G.head)?G.anchor:G.head,re=Je(Y.anchor,Y.head)?Y.head:Y.anchor;return[Q,re]},W=function(){var B=m.getCursor(),G=m.getCursor(),Y=_.visualBlock;if(Y){var Q=Y.width,re=Y.height;G=new Oe(B.line+re,B.ch+Q);for(var se=[],ye=B.line;ye<G.line;ye++){var Ce=new Oe(ye,B.ch),me=new Oe(ye,G.ch),we={anchor:Ce,head:me};se.push(we)}m.setSelections(se)}else{var Le=_.anchorMark.find(),Re=_.headMark.find(),ze=Re.line-Le.line,rt=Re.ch-Le.ch;G={line:G.line+ze,ch:ze?G.ch:rt+G.ch},_.visualLine&&(B=new Oe(B.line,0),G=new Oe(G.line,Vt(m,G.line))),m.setSelection(B,G)}return[B,G]};return $.visualMode?F():W()}function Pt(m,$){var _=$.sel.anchor,F=$.sel.head;$.lastPastedText&&(F=m.posFromIndex(m.indexFromPos(_)+$.lastPastedText.length),$.lastPastedText=null),$.lastSelection={anchorMark:m.setBookmark(_),headMark:m.setBookmark(F),anchor:Ve(_),head:Ve(F),visualMode:$.visualMode,visualLine:$.visualLine,visualBlock:$.visualBlock}}function an(m,$,_,F){var W=m.state.vim.sel,B=F?$:W.head,G=F?$:W.anchor,Y;return Je(_,$)&&(Y=_,_=$,$=Y),Je(B,G)?(B=ht($,B),G=qt(G,_)):(G=ht($,G),B=qt(B,_),B=fe(B,0,-1),B.ch==-1&&B.line!=m.firstLine()&&(B=new Oe(B.line-1,Vt(m,B.line-1)))),[G,B]}function zn(m,$,W){var F=m.state.vim;$=$||F.sel;var W=W||F.visualLine?"line":F.visualBlock?"block":"char",B=$r(m,$,W);m.setSelections(B.ranges,B.primary)}function $r(m,$,_,F){var W=Ve($.head),B=Ve($.anchor);if(_=="char"){var G=!F&&!Je($.head,$.anchor)?1:0,Y=Je($.head,$.anchor)?1:0;return W=fe($.head,0,G),B=fe($.anchor,0,Y),{ranges:[{anchor:B,head:W}],primary:0}}if(_=="line"){if(Je($.head,$.anchor))W.ch=0,B.ch=Vt(m,B.line);else{B.ch=0;var Q=m.lastLine();W.line>Q&&(W.line=Q),W.ch=Vt(m,W.line)}return{ranges:[{anchor:B,head:W}],primary:0}}if(_=="block"){var re=Math.min(B.line,W.line),se=B.ch,ye=Math.max(B.line,W.line),Ce=W.ch;se<Ce?Ce+=1:se+=1;for(var me=ye-re+1,we=W.line==re?0:me-1,Le=[],Re=0;Re<me;Re++)Le.push({anchor:new Oe(re+Re,se),head:new Oe(re+Re,Ce)});return{ranges:Le,primary:we}}}function fr(m){var $=m.getCursor("head");return m.getSelection().length==1&&($=ht($,m.getCursor("anchor"))),$}function mn(m,$){var _=m.state.vim;$!==!1&&m.setCursor(ue(m,_.sel.head)),Pt(m,_),_.visualMode=!1,_.visualLine=!1,_.visualBlock=!1,_.insertMode||Fe.signal(m,"vim-mode-change",{mode:"normal"})}function Yn(m,$,_){var F=m.getRange($,_);if(/\n\s*$/.test(F)){var W=F.split(`
1404
+ `);W.pop();for(var B,B=W.pop();W.length>0&&B&&d(B);B=W.pop())_.line--,_.ch=0;B?(_.line--,_.ch=Vt(m,_.line)):_.ch=0}}function nr(m,$,_){$.ch=0,_.ch=0,_.line++}function Yt(m){if(!m)return 0;var $=m.search(/\S/);return $==-1?m.length:$}function Xn(m,$,_){var F=$.inclusive,W=$.innerWord,B=$.bigWord,G=$.noSymbol,Y=$.multiline,Q=_||fr(m),re=m.getLine(Q.line),se=re,ye=Q.line,Ce=ye,me=Q.ch,we,Le=G?mo[0]:gi[0];if(W&&/\s/.test(re.charAt(me)))Le=function(on){return/\s/.test(on)};else{for(;!Le(re.charAt(me));)if(me++,me>=re.length){if(!Y)return null;me--,we=so(m,Q,!0,B,!0);break}B?Le=gi[0]:(Le=mo[0],Le(re.charAt(me))||(Le=mo[1]))}for(var Re=me,ze=me;Le(re.charAt(ze))&&ze>=0;)ze--;if(ze++,we)Re=we.to,Ce=we.line,se=m.getLine(Ce),!se&&Re==0&&Re++;else for(;Le(re.charAt(Re))&&Re<re.length;)Re++;if(F){var rt=Re,Ke=Q.ch<=ze&&/\s/.test(re.charAt(Q.ch));if(!Ke)for(;/\s/.test(se.charAt(Re))&&Re<se.length;)Re++;if(rt==Re||Ke){for(var Qe=ze;/\s/.test(re.charAt(ze-1))&&ze>0;)ze--;!ze&&!Ke&&(ze=Qe)}}return{start:new Oe(ye,ze),end:new Oe(Ce,Re)}}function oo(m,$,_){var F=$;if(!Fe.findMatchingTag||!Fe.findEnclosingTag)return{start:F,end:F};var W=Fe.findMatchingTag(m,$)||Fe.findEnclosingTag(m,$);return!W||!W.open||!W.close?{start:F,end:F}:_?{start:W.open.from,end:W.close.to}:{start:W.open.to,end:W.close.from}}function Ei(m,$,_){lt($,_)||We.jumpList.add(m,$,_)}function Ii(m,$){We.lastCharacterSearch.increment=m,We.lastCharacterSearch.forward=$.forward,We.lastCharacterSearch.selectedCharacter=$.selectedCharacter}function Ri(m,$,_,F){var W=Ve(m.getCursor()),B=_?1:-1,G=_?m.lineCount():-1,Y=W.ch,Q=W.line,re=m.getLine(Q),se={lineText:re,nextCh:re.charAt(Y),lastCh:null,index:Y,symb:F,reverseSymb:(_?{")":"(","}":"{"}:{"(":")","{":"}"})[F],forward:_,depth:0,curMoveThrough:!1},ye=Zr[F];if(!ye)return W;var Ce=Jr[ye].init,me=Jr[ye].isComplete;for(Ce&&Ce(se);Q!==G&&$;){if(se.index+=B,se.nextCh=se.lineText.charAt(se.index),!se.nextCh){if(Q+=B,se.lineText=m.getLine(Q)||"",B>0)se.index=0;else{var we=se.lineText.length;se.index=we>0?we-1:0}se.nextCh=se.lineText.charAt(se.index)}me(se)&&(W.line=Q,W.ch=se.index,$--)}return se.nextCh||se.curMoveThrough?new Oe(Q,se.index):W}function so(m,$,_,F,W){var B=$.line,G=$.ch,Y=m.getLine(B),Q=_?1:-1,re=F?gi:mo;if(W&&Y==""){if(B+=Q,Y=m.getLine(B),!a(m,B))return null;G=_?0:Y.length}for(;;){if(W&&Y=="")return{from:0,to:0,line:B};for(var se=Q>0?Y.length:-1,ye=se,Ce=se;G!=se;){for(var me=!1,we=0;we<re.length&&!me;++we)if(re[we](Y.charAt(G))){for(ye=G;G!=se&&re[we](Y.charAt(G));)G+=Q;if(Ce=G,me=ye!=Ce,ye==$.ch&&B==$.line&&Ce==ye+Q)continue;return{from:Math.min(ye,Ce+1),to:Math.max(ye,Ce),line:B}}me||(G+=Q)}if(B+=Q,!a(m,B))return null;Y=m.getLine(B),G=Q>0?0:Y.length}}function lr(m,$,_,F,W,B){var G=Ve($),Y=[];(F&&!W||!F&&W)&&_++;for(var Q=!F||!W,re=0;re<_;re++){var se=so(m,$,F,B,Q);if(!se){var ye=Vt(m,m.lastLine());Y.push(F?{line:m.lastLine(),from:ye,to:ye}:{line:0,from:0,to:0});break}Y.push(se),$=new Oe(se.line,F?se.to-1:se.from)}var Ce=Y.length!=_,me=Y[0],we=Y.pop();return F&&!W?(!Ce&&(me.from!=G.ch||me.line!=G.line)&&(we=Y.pop()),new Oe(we.line,we.from)):F&&W?new Oe(we.line,we.to-1):!F&&W?(!Ce&&(me.to!=G.ch||me.line!=G.line)&&(we=Y.pop()),new Oe(we.line,we.to)):new Oe(we.line,we.from)}function ao(m,$,_,F,W){var B=$,G=new Oe(B.line+_.repeat-1,1/0),Y=m.clipPos(G);return Y.ch--,W||(F.lastHPos=1/0,F.lastHSPos=m.charCoords(Y,"div").left),G}function Oo(m,$,_,F,W){for(var B=W||m.getCursor(),G=B.ch,Y,Q=0;Q<$;Q++){var re=m.getLine(B.line);if(Y=Ga(G,re,F,_),Y==-1)return null;G=Y}return new Oe(m.getCursor().line,Y)}function Va(m,$){var _=m.getCursor().line;return ue(m,new Oe(_,$-1))}function Yr(m,$,_,F){!b(_,Ji)&&!Wt.test(_)||($.marks[_]&&$.marks[_].clear(),$.marks[_]=m.setBookmark(F))}function Ga(m,$,_,F,W){var B;return F?(B=$.indexOf(_,m+1),B!=-1):(B=$.lastIndexOf(_,m-1),B!=-1),B}function ms(m,$,_,F,W){function B(ze){return!/\S/.test(m.getLine(ze))}function G(ze,rt,Ke){return Ke?B(ze)!=B(ze+rt):!B(ze)&&B(ze+rt)}function Y(ze){F=F>0?1:-1;var rt=m.ace.session.getFoldLine(ze);rt&&ze+F>rt.start.row&&ze+F<rt.end.row&&(F=(F>0?rt.end.row:rt.start.row)-ze)}var Q=$.line,re=m.firstLine(),se=m.lastLine(),ye,Ce,me=Q;if(F){for(;re<=me&&me<=se&&_>0;)Y(me),G(me,F)&&_--,me+=F;return new Oe(me,0)}var we=m.state.vim;if(we.visualLine&&G(Q,1,!0)){var Le=we.sel.anchor;G(Le.line,-1,!0)&&(!W||Le.line!=Q)&&(Q+=1)}var Re=B(Q);for(me=Q;me<=se&&_;me++)G(me,1,!0)&&(!W||B(me)!=Re)&&_--;for(Ce=new Oe(me,0),me>se&&!Re?Re=!0:W=!1,me=Q;me>re&&!((!W||B(me)==Re||me==Q)&&G(me,-1,!0));me--);return ye=new Oe(me,0),{start:ye,end:Ce}}function ta(m,$,_,F,W){function B(re){re.pos+re.dir<0||re.pos+re.dir>=re.line.length?re.line=null:re.pos+=re.dir}function G(re,se,ye,Ce){var me=re.getLine(se),we={line:me,ln:se,pos:ye,dir:Ce};if(we.line==="")return{ln:we.ln,pos:we.pos};var Le=we.pos;for(B(we);we.line!==null;){if(Le=we.pos,w(we.line[we.pos])){if(!W)return{ln:we.ln,pos:we.pos+1};for(B(we);we.line!==null&&d(we.line[we.pos]);)Le=we.pos,B(we);return{ln:we.ln,pos:Le+1}}B(we)}return{ln:we.ln,pos:Le+1}}function Y(re,se,ye,Ce){var me=re.getLine(se),we={line:me,ln:se,pos:ye,dir:Ce};if(we.line==="")return{ln:we.ln,pos:we.pos};var Le=we.pos;for(B(we);we.line!==null;){if(!d(we.line[we.pos])&&!w(we.line[we.pos]))Le=we.pos;else if(w(we.line[we.pos]))return W?d(we.line[we.pos+1])?{ln:we.ln,pos:we.pos+1}:{ln:we.ln,pos:Le}:{ln:we.ln,pos:Le};B(we)}return we.line=me,W&&d(we.line[we.pos])?{ln:we.ln,pos:we.pos}:{ln:we.ln,pos:Le}}for(var Q={ln:$.line,pos:$.ch};_>0;)F<0?Q=Y(m,Q.ln,Q.pos,F):Q=G(m,Q.ln,Q.pos,F),_--;return new Oe(Q.ln,Q.pos)}function Li(m,$,_,F){function W(Q,re){if(re.pos+re.dir<0||re.pos+re.dir>=re.line.length){if(re.ln+=re.dir,!a(Q,re.ln)){re.line=null,re.ln=null,re.pos=null;return}re.line=Q.getLine(re.ln),re.pos=re.dir>0?0:re.line.length-1}else re.pos+=re.dir}function B(Q,re,se,ye){var Re=Q.getLine(re),Ce=Re==="",me={line:Re,ln:re,pos:se,dir:ye},we={ln:me.ln,pos:me.pos},Le=me.line==="";for(W(Q,me);me.line!==null;){if(we.ln=me.ln,we.pos=me.pos,me.line===""&&!Le)return{ln:me.ln,pos:me.pos};if(Ce&&me.line!==""&&!d(me.line[me.pos]))return{ln:me.ln,pos:me.pos};w(me.line[me.pos])&&!Ce&&(me.pos===me.line.length-1||d(me.line[me.pos+1]))&&(Ce=!0),W(Q,me)}var Re=Q.getLine(we.ln);we.pos=0;for(var ze=Re.length-1;ze>=0;--ze)if(!d(Re[ze])){we.pos=ze;break}return we}function G(Q,re,se,ye){var Le=Q.getLine(re),Ce={line:Le,ln:re,pos:se,dir:ye},me={ln:Ce.ln,pos:null},we=Ce.line==="";for(W(Q,Ce);Ce.line!==null;){if(Ce.line===""&&!we)return me.pos!==null?me:{ln:Ce.ln,pos:Ce.pos};if(!(!w(Ce.line[Ce.pos])||me.pos===null||Ce.ln===me.ln&&Ce.pos+1===me.pos))return me;Ce.line!==""&&!d(Ce.line[Ce.pos])&&(we=!1,me={ln:Ce.ln,pos:Ce.pos}),W(Q,Ce)}var Le=Q.getLine(me.ln);me.pos=0;for(var Re=0;Re<Le.length;++Re)if(!d(Le[Re])){me.pos=Re;break}return me}for(var Y={ln:$.line,pos:$.ch};_>0;)F<0?Y=G(m,Y.ln,Y.pos,F):Y=B(m,Y.ln,Y.pos,F),_--;return new Oe(Y.ln,Y.pos)}function Rn(m,$,_,F){var W=$,B,G,Y={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/,"<":/[<>]/,">":/[<>]/}[_],Q={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{","<":"<",">":"<"}[_],re=m.getLine(W.line).charAt(W.ch),se=re===Q?1:0;if(B=m.scanForBracket(new Oe(W.line,W.ch+se),-1,void 0,{bracketRegex:Y}),G=m.scanForBracket(new Oe(W.line,W.ch+se),1,void 0,{bracketRegex:Y}),!B||!G)return null;if(B=B.pos,G=G.pos,B.line==G.line&&B.ch>G.ch||B.line>G.line){var ye=B;B=G,G=ye}return F?G.ch+=1:B.ch+=1,{start:B,end:G}}function mr(m,$,_,F){var W=Ve($),B=m.getLine(W.line),G=B.split(""),Y,Q,re,se,ye=G.indexOf(_);if(W.ch<ye)W.ch=ye;else if(ye<W.ch&&G[W.ch]==_){var Ce=/string/.test(m.getTokenTypeAt(fe($,0,1))),me=/string/.test(m.getTokenTypeAt($)),we=Ce&&!me;we||(Q=W.ch,--W.ch)}if(G[W.ch]==_&&!Q)Y=W.ch+1;else for(re=W.ch;re>-1&&!Y;re--)G[re]==_&&(Y=re+1);if(Y&&!Q)for(re=Y,se=G.length;re<se&&!Q;re++)G[re]==_&&(Q=re);return!Y||!Q?{start:W,end:W}:(F&&(--Y,++Q),{start:new Oe(W.line,Y),end:new Oe(W.line,Q)})}function Oi(){}function vn(m){var $=m.state.vim;return $.searchState_||($.searchState_=new Oi)}function vr(m){return Ni(m,"/")}function qi(m){return vs(m,"/")}function Ni(m,$){var _=vs(m,$)||[];if(!_.length)return[];var F=[];if(_[0]===0){for(var W=0;W<_.length;W++)typeof _[W]=="number"&&F.push(m.substring(_[W]+1,_[W+1]));return F}}function vs(m,$){$||($="/");for(var _=!1,F=[],W=0;W<m.length;W++){var B=m.charAt(W);!_&&B==$&&F.push(W),_=!_&&B=="\\"}return F}function na(m){for(var $="|(){",_="}",F=!1,W=[],B=-1;B<m.length;B++){var G=m.charAt(B)||"",Y=m.charAt(B+1)||"",Q=Y&&$.indexOf(Y)!=-1;F?((G!=="\\"||!Q)&&W.push(G),F=!1):G==="\\"?(F=!0,Y&&_.indexOf(Y)!=-1&&(Q=!0),(!Q||Y==="\\")&&W.push(G)):(W.push(G),Q&&Y!=="\\"&&W.push("\\"))}return W.join("")}function Ka(m){for(var $=!1,_=[],F=-1;F<m.length;F++){var W=m.charAt(F)||"",B=m.charAt(F+1)||"";vi[W+B]?(_.push(vi[W+B]),F++):$?(_.push(W),$=!1):W==="\\"?($=!0,o(B)||B==="$"?_.push("$"):B!=="/"&&B!=="\\"&&_.push("\\")):(W==="$"&&_.push("$"),_.push(W),B==="/"&&_.push("\\"))}return _.join("")}function qa(m){for(var $=new Fe.StringStream(m),_=[];!$.eol();){for(;$.peek()&&$.peek()!="\\";)_.push($.next());var F=!1;for(var W in rr)if($.match(W,!0)){F=!0,_.push(rr[W]);break}F||_.push($.next())}return _.join("")}function Di(m,$,_){var F=We.registerController.getRegister("/");if(F.setText(m),m instanceof RegExp)return m;var W=qi(m),B,G;if(!W.length)B=m;else{B=m.substring(0,W[0]);var Y=m.substring(W[0]);G=Y.indexOf("i")!=-1}if(!B)return null;k("pcre")||(B=na(B)),_&&($=/^[^A-Z]*$/.test(B));var Q=new RegExp(B,$||G?"im":"m");return Q}function Xr(m){typeof m=="string"&&(m=document.createElement(m));for(var $,_=1;_<arguments.length;_++)if($=arguments[_])if(typeof $!="object"&&($=document.createTextNode($)),$.nodeType)m.appendChild($);else for(var F in $)Object.prototype.hasOwnProperty.call($,F)&&(F[0]==="$"?m.style[F.slice(1)]=$[F]:m.setAttribute(F,$[F]));return m}function It(m,$){var _=Xr("div",{$color:"red",$whiteSpace:"pre",class:"cm-vim-message"},$);m.openNotification?m.openNotification(_,{bottom:!0,duration:5e3}):alert(_.innerText)}function ra(m,$){return Xr("div",{$display:"flex"},Xr("span",{$fontFamily:"monospace",$whiteSpace:"pre",$flex:1},m,Xr("input",{type:"text",autocorrect:"off",autocapitalize:"off",spellcheck:"false",$width:"100%"})),$&&Xr("span",{$color:"#888"},$))}function yr(m,$){if(Mr.length){$.value||($.value=""),ln=$;return}var _=ra($.prefix,$.desc);if(m.openDialog)m.openDialog(_,$.onClose,{onKeyDown:$.onKeyDown,onKeyUp:$.onKeyUp,bottom:!0,selectValueOnOpen:!1,value:$.value});else{var F="";typeof $.prefix!="string"&&$.prefix&&(F+=$.prefix.textContent),$.desc&&(F+=" "+$.desc),$.onClose(prompt(F,""))}}function Ln(m,$){if(m instanceof RegExp&&$ instanceof RegExp){for(var _=["global","multiline","ignoreCase","source"],F=0;F<_.length;F++){var W=_[F];if(m[W]!==$[W])return!1}return!0}return!1}function nn(m,$,_,F){if($){var W=vn(m),B=Di($,!!_,!!F);if(B)return hi(m,B),Ln(B,W.getQuery())||W.setQuery(B),B}}function Cn(m){if(m.source.charAt(0)=="^")var $=!0;return{token:function(_){if($&&!_.sol()){_.skipToEnd();return}var F=_.match(m,!1);if(F)return F[0].length==0?(_.next(),"searching"):!_.sol()&&(_.backUp(1),!m.exec(_.next()+F[0]))?(_.next(),null):(_.match(m),"searching");for(;!_.eol()&&(_.next(),!_.match(m,!1)););},query:m}}function hi(m,$){clearTimeout(ir);var _=vn(m);_.highlightTimeout=ir,ir=setTimeout(function(){if(m.state.vim){var F=vn(m);F.highlightTimeout=null;var W=F.getOverlay();(!W||$!=W.query)&&(W&&m.removeOverlay(W),W=Cn($),m.addOverlay(W),m.showMatchesOnScrollbar&&(F.getScrollbarAnnotate()&&F.getScrollbarAnnotate().clear(),F.setScrollbarAnnotate(m.showMatchesOnScrollbar($))),F.setOverlay(W))}},50)}function wr(m,$,_,F){return F===void 0&&(F=1),m.operation(function(){for(var W=m.getCursor(),B=m.getSearchCursor(_,W),G=0;G<F;G++){var Y=B.find($);if(G==0&&Y&&lt(B.from(),W)){var Q=$?B.from():B.to();Y=B.find($),Y&&!Y[0]&&lt(B.from(),Q)&&m.getLine(Q.line).length==Q.ch&&(Y=B.find($))}if(!Y&&(B=m.getSearchCursor(_,$?new Oe(m.lastLine()):new Oe(m.firstLine(),0)),!B.find($)))return}return B.from()})}function di(m,$,_,F,W){return F===void 0&&(F=1),m.operation(function(){var B=m.getCursor(),G=m.getSearchCursor(_,B),Y=G.find(!$);!W.visualMode&&Y&&lt(G.from(),B)&&G.find(!$);for(var Q=0;Q<F;Q++)if(Y=G.find($),!Y&&(G=m.getSearchCursor(_,$?new Oe(m.lastLine()):new Oe(m.firstLine(),0)),!G.find($)))return;return[G.from(),G.to()]})}function No(m){var $=vn(m);$.highlightTimeout&&(clearTimeout($.highlightTimeout),$.highlightTimeout=null),m.removeOverlay(vn(m).getOverlay()),$.setOverlay(null),$.getScrollbarAnnotate()&&($.getScrollbarAnnotate().clear(),$.setScrollbarAnnotate(null))}function ys(m,$,_){return typeof m!="number"&&(m=m.line),$ instanceof Array?b(m,$):typeof _=="number"?m>=$&&m<=_:m==$}function Yi(m){var $=m.ace.renderer;return{top:$.getFirstFullyVisibleRow(),bottom:$.getLastFullyVisibleRow()}}function Pr(m,$,_){if(_=="'"||_=="`")return We.jumpList.find(m,-1)||new Oe(0,0);if(_==".")return lo(m);var F=$.marks[_];return F&&F.find()}function lo(m){if(m.getLastEditEnd)return m.getLastEditEnd();for(var $=m.doc.history.done,_=$.length;_--;)if($[_].changes)return Ve($[_].changes[0].to)}function Do(m,$,_,F,W,B,G,Y,Q){function re(){m.operation(function(){for(;!Le;)se(),Ce();me()})}function se(){var Ke=m.getRange(B.from(),B.to()),Qe=Ke.replace(G,Y),on=B.to().line;B.replace(Qe),ze=B.to().line,W+=ze-on,rt=ze<on}function ye(){var Ke=Re&&Ve(B.to()),Qe=B.findNext();return Qe&&!Qe[0]&&Ke&&lt(B.from(),Ke)&&(Qe=B.findNext()),Qe}function Ce(){for(;ye()&&ys(B.from(),F,W);)if(!(!_&&B.from().line==ze&&!rt)){m.scrollIntoView(B.from(),30),m.setSelection(B.from(),B.to()),Re=B.from(),Le=!1;return}Le=!0}function me(Ke){if(Ke&&Ke(),m.focus(),Re){m.setCursor(Re);var Qe=m.state.vim;Qe.exMode=!1,Qe.lastHPos=Qe.lastHSPos=Re.ch}Q&&Q()}function we(Ke,Qe,on){Fe.e_stop(Ke);var it=z(Ke);switch(it){case"y":se(),Ce();break;case"n":Ce();break;case"a":var un=Q;Q=void 0,m.operation(re),Q=un;break;case"l":se();case"q":case"<Esc>":case"<C-c>":case"<C-[>":me(on)}return Le&&me(on),!0}m.state.vim.exMode=!0;var Le=!1,Re,ze,rt;if(Ce(),Le){It(m,"No matches for "+G.source);return}if(!$){re(),Q&&Q();return}yr(m,{prefix:Xr("span","replace with ",Xr("strong",Y)," (y/n/a/q/l)"),onKeyDown:we})}function Wr(m,$){var _=m.state.vim,F=We.macroModeState,W=We.registerController.getRegister("."),B=F.isPlaying,G=F.lastInsertModeChanges;B||(m.off("change",co),_.insertEnd&&_.insertEnd.clear(),_.insertEnd=null,Fe.off(m.getInputField(),"keydown",Cs)),!B&&_.insertModeRepeat>1&&(ia(m,_,_.insertModeRepeat-1,!0),_.lastEditInputState.repeatOverride=_.insertModeRepeat),delete _.insertModeRepeat,_.insertMode=!1,$||m.setCursor(m.getCursor().line,m.getCursor().ch-1),m.setOption("keyMap","vim"),m.setOption("disableInput",!0),m.toggleOverwrite(!1),W.setText(G.changes.join("")),Fe.signal(m,"vim-mode-change",{mode:"normal"}),F.isRecording&&Qn(F)}function Fo(m){yn.unshift(m)}function ws(m,$,_,F,W){var B={keys:m,type:$};B[$]=_,B[$+"Args"]=F;for(var G in W)B[G]=W[G];Fo(B)}function bs(m,$,_,F){var W=We.registerController.getRegister(F);if(F==":"){W.keyBuffer[0]&&ur.processCommand(m,W.keyBuffer[0]),_.isPlaying=!1;return}var B=W.keyBuffer,G=0;_.isPlaying=!0,_.replaySearchQueries=W.searchQueries.slice(0);for(var Y=0;Y<B.length;Y++)for(var Q=B[Y],re,se;Q;)if(re=/<\w+-.+?>|<\w+>|./.exec(Q),se=re[0],Q=Q.substring(re.index+se.length),dt.handleKey(m,se,"macro"),$.insertMode){var ye=W.insertModeChanges[G++].changes;We.macroModeState.lastInsertModeChanges.changes=ye,jo(m,ye,1),Wr(m)}_.isPlaying=!1}function Po(m,$){if(!m.isPlaying){var _=m.latestRegister,F=We.registerController.getRegister(_);F&&F.pushText($)}}function Qn(m){if(!m.isPlaying){var $=m.latestRegister,_=We.registerController.getRegister($);_&&_.pushInsertModeChanges&&_.pushInsertModeChanges(m.lastInsertModeChanges)}}function xs(m,$){if(!m.isPlaying){var _=m.latestRegister,F=We.registerController.getRegister(_);F&&F.pushSearchQuery&&F.pushSearchQuery($)}}function co(m,$){var _=We.macroModeState,F=_.lastInsertModeChanges;if(!_.isPlaying)for(var W=m.state.vim;$;){if(F.expectCursorActivityForChange=!0,F.ignoreCount>1)F.ignoreCount--;else if($.origin=="+input"||$.origin=="paste"||$.origin===void 0){var B=m.listSelections().length;B>1&&(F.ignoreCount=B);var G=$.text.join(`
1405
+ `);if(F.maybeReset&&(F.changes=[],F.maybeReset=!1),G)if(m.state.overwrite&&!/\n/.test(G))F.changes.push([G]);else{if(G.length>1){var Y=W&&W.insertEnd&&W.insertEnd.find(),Q=m.getCursor();if(Y&&Y.line==Q.line){var re=Y.ch-Q.ch;re>0&&re<G.length&&(F.changes.push([G,re]),G="")}}G&&F.changes.push(G)}}$=$.next}}function Wo(m){var $=m.state.vim;if($.insertMode){var _=We.macroModeState;if(_.isPlaying)return;var F=_.lastInsertModeChanges;F.expectCursorActivityForChange?F.expectCursorActivityForChange=!1:(F.maybeReset=!0,$.insertEnd&&$.insertEnd.clear(),$.insertEnd=m.setBookmark(m.getCursor(),{insertLeft:!0}))}else m.curOp.isVimOp||Bo(m,$)}function Bo(m,$,_){var F=m.getCursor("anchor"),W=m.getCursor("head");if($.visualMode&&!m.somethingSelected()?mn(m,!1):!$.visualMode&&!$.insertMode&&m.somethingSelected()&&($.visualMode=!0,$.visualLine=!1,Fe.signal(m,"vim-mode-change",{mode:"visual"})),$.visualMode){var B=Je(W,F)?0:-1,G=Je(W,F)?-1:0;W=fe(W,0,B),F=fe(F,0,G),$.sel={anchor:F,head:W},Yr(m,$,"<",ht(W,F)),Yr(m,$,">",qt(W,F))}else!$.insertMode&&!_&&($.lastHPos=m.getCursor().ch)}function Xi(m,$){this.keyName=m,this.key=$.key,this.ctrlKey=$.ctrlKey,this.altKey=$.altKey,this.metaKey=$.metaKey,this.shiftKey=$.shiftKey}function Cs(m){var $=We.macroModeState,_=$.lastInsertModeChanges,F=Fe.keyName?Fe.keyName(m):m.key;F&&(F.indexOf("Delete")!=-1||F.indexOf("Backspace")!=-1)&&(_.maybeReset&&(_.changes=[],_.maybeReset=!1),_.changes.push(new Xi(F,m)))}function ia(m,$,_,F){function W(){Y?An.processAction(m,$,$.lastEditActionCommand):An.evalInput(m,$)}function B(se){if(G.lastInsertModeChanges.changes.length>0){se=$.lastEditActionCommand?se:1;var ye=G.lastInsertModeChanges;jo(m,ye.changes,se)}}var G=We.macroModeState;G.isPlaying=!0;var Y=!!$.lastEditActionCommand,Q=$.inputState;if($.inputState=$.lastEditInputState,Y&&$.lastEditActionCommand.interlaceInsertRepeat)for(var re=0;re<_;re++)W(),B(1);else F||W(),B(_);$.inputState=Q,$.insertMode&&!F&&Wr(m),G.isPlaying=!1}function zo(m,$){Fe.lookupKey($,"vim-insert",function(_){return typeof _=="string"?Fe.commands[_](m):_(m),!0})}function jo(m,$,_){var F=m.getCursor("head"),W=We.macroModeState.lastInsertModeChanges.visualBlock;W&&(Sr(m,F,W+1),_=m.listSelections().length,m.setCursor(F));for(var B=0;B<_;B++){W&&m.setCursor(fe(F,B,0));for(var G=0;G<$.length;G++){var Y=$[G];if(Y instanceof Xi)zo(m,Y.keyName);else if(typeof Y=="string")m.replaceSelection(Y);else{var Q=m.getCursor(),re=fe(Q,0,Y[0].length-(Y[1]||0));m.replaceRange(Y[0],Q,Y[1]?Q:re),m.setCursor(re)}}}W&&m.setCursor(fe(F,0,1))}function ks(m,$,_,F){$.length>1&&$[0]=="n"&&($=$.replace("numpad","")),$=br[$]||$;var W="";if(_.ctrlKey&&(W+="C-"),_.altKey&&(W+="A-"),(W||$.length>1)&&_.shiftKey&&(W+="S-"),F&&!F.expectLiteralNext&&$.length==1){if(On.keymap&&$ in On.keymap)(On.remapCtrl!==!1||!W)&&($=On.keymap[$]);else if($.charCodeAt(0)>255){var B=_.code&&_.code.slice(-1)||"";_.shiftKey||(B=B.toLowerCase()),B&&($=B)}}return W+=$,W.length>1&&(W="<"+W+">"),W}function Ho(m){var $=new m.constructor;return Object.keys(m).forEach(function(_){if(_!="insertEnd"){var F=m[_];Array.isArray(F)?F=F.slice():F&&typeof F=="object"&&F.constructor!=Object&&(F=Ho(F)),$[_]=F}}),m.sel&&($.sel={head:m.sel.head&&Ve(m.sel.head),anchor:m.sel.anchor&&Ve(m.sel.anchor)}),$}function uo(m,$,_){var F=!1,W=dt.maybeInitVimState_(m),B=W.visualBlock||W.wasInVisualBlock,G=m.ace.inMultiSelectMode;if(W.wasInVisualBlock&&!G?W.wasInVisualBlock=!1:G&&W.visualBlock&&(W.wasInVisualBlock=!0),$=="<Esc>"&&!W.insertMode&&!W.visualMode&&G)m.ace.exitMultiSelectMode();else if(B||!G||m.ace.inVirtualSelectionMode)F=dt.handleKey(m,$,_);else{var Y=Ho(W),Q=W.inputState.changeQueueList||[];m.operation(function(){m.curOp.isVimOp=!0;var re=0;m.ace.forEachSelection(function(){var se=m.ace.selection;m.state.vim.lastHPos=se.$desiredColumn==null?se.lead.column:se.$desiredColumn,m.state.vim.inputState.changeQueue=Q[re];var ye=m.getCursor("head"),Ce=m.getCursor("anchor"),me=Je(ye,Ce)?0:-1,we=Je(ye,Ce)?-1:0;ye=fe(ye,0,me),Ce=fe(Ce,0,we),m.state.vim.sel.head=ye,m.state.vim.sel.anchor=Ce,F=ei(m,$,_),se.$desiredColumn=m.state.vim.lastHPos==-1?null:m.state.vim.lastHPos,m.ace.inVirtualSelectionMode&&(Q[re]=m.state.vim.inputState.changeQueue),m.virtualSelectionMode()&&(m.state.vim=Ho(Y)),re++}),m.curOp.cursorActivity&&!F&&(m.curOp.cursorActivity=!1),W.status=m.state.vim.status,m.state.vim=W,W.inputState.changeQueueList=Q,W.inputState.changeQueue=null},!0)}return F&&!W.visualMode&&!W.insert&&W.visualMode!=m.somethingSelected()&&Bo(m,W,!0),F}function pi(m,$){$.off("beforeEndOperation",pi);var _=$.state.cm.vimCmd;_&&$.execCommand(_.exec?_:_.name,_.args),$.curOp=$.prevOp}var Zn=e("../range").Range,Qi=e("../lib/event_emitter").EventEmitter,Fi=e("../lib/dom"),oa=e("../lib/oop"),Ya=e("../lib/keys"),ho=e("../lib/event"),Pi=e("../search").Search,po=e("../lib/useragent"),Uo=e("../search_highlight").SearchHighlight,go=e("../commands/multi_select_commands"),sa=e("../mode/text").Mode.prototype.tokenRe,Zi=e("../ext/hardwrap").hardWrap;e("../multi_select");var Fe=function(m){this.ace=m,this.state={},this.marks={},this.options={},this.$uid=0,this.onChange=this.onChange.bind(this),this.onSelectionChange=this.onSelectionChange.bind(this),this.onBeforeEndOperation=this.onBeforeEndOperation.bind(this),this.ace.on("change",this.onChange),this.ace.on("changeSelection",this.onSelectionChange),this.ace.on("beforeEndOperation",this.onBeforeEndOperation)};Fe.Pos=function(m,$){if(!(this instanceof Oe))return new Oe(m,$);this.line=m,this.ch=$},Fe.defineOption=function(m,$,_){},Fe.commands={redo:function(m){m.ace.redo()},undo:function(m){m.ace.undo()},newlineAndIndent:function(m){m.ace.insert(`
1406
+ `)},goLineLeft:function(m){m.ace.selection.moveCursorLineStart()},goLineRight:function(m){m.ace.selection.moveCursorLineEnd()}},Fe.keyMap={},Fe.addClass=Fe.rmClass=function(){},Fe.e_stop=Fe.e_preventDefault=ho.stopEvent,Fe.keyName=function(m){var $=Ya[m.keyCode]||m.key||"";return $.length==1&&($=$.toUpperCase()),$=ho.getModifierString(m).replace(/(^|-)\w/g,function(_){return _.toUpperCase()})+$,$},Fe.keyMap.default=function(m){return function($){var _=$.ace.commands.commandKeyBinding[m.toLowerCase()];return _&&$.ace.execCommand(_)!==!1}},Fe.lookupKey=function m($,_,F){_||(_="default"),typeof _=="string"&&(_=Fe.keyMap[_]||Fe.keyMap.default);var W=typeof _=="function"?_($):_[$];if(W===!1)return"nothing";if(W==="...")return"multi";if(W!=null&&F(W))return"handled";if(_.fallthrough){if(!Array.isArray(_.fallthrough))return m($,_.fallthrough,F);for(var B=0;B<_.fallthrough.length;B++){var G=m($,_.fallthrough[B],F);if(G)return G}}},Fe.findMatchingTag=function(m,$){return m.findMatchingTag($)},Fe.findEnclosingTag=function(m,$){},Fe.signal=function(m,$,_){return m._signal($,_)},Fe.on=ho.addListener,Fe.off=ho.removeListener,Fe.isWordChar=function(m){return m<""?/^\w$/.test(m):(sa.lastIndex=0,sa.test(m))},(function(){oa.implement(Fe.prototype,Qi),this.destroy=function(){this.ace.off("change",this.onChange),this.ace.off("changeSelection",this.onSelectionChange),this.ace.off("beforeEndOperation",this.onBeforeEndOperation),this.removeOverlay()},this.virtualSelectionMode=function(){return this.ace.inVirtualSelectionMode&&this.ace.selection.index},this.onChange=function(_){this.$lineHandleChanges&&this.$lineHandleChanges.push(_);var F={text:_.action[0]=="i"?_.lines:[]},W=this.curOp=this.curOp||{};W.changeHandlers||(W.changeHandlers=this._eventRegistry.change&&this._eventRegistry.change.slice()),W.lastChange?W.lastChange.next=W.lastChange=F:W.lastChange=W.change=F,this.$updateMarkers(_)},this.onSelectionChange=function(){var _=this.curOp=this.curOp||{};_.cursorActivityHandlers||(_.cursorActivityHandlers=this._eventRegistry.cursorActivity&&this._eventRegistry.cursorActivity.slice()),this.curOp.cursorActivity=!0,this.ace.inMultiSelectMode&&this.ace.keyBinding.removeKeyboardHandler(go.keyboardHandler)},this.operation=function(_,F){if(!F&&this.curOp||F&&this.curOp&&this.curOp.force)return _();if((F||!this.ace.curOp)&&this.curOp&&this.onBeforeEndOperation(),!this.ace.curOp){var W=this.ace.prevOp;this.ace.startOperation({command:{name:"vim",scrollIntoView:"cursor"}})}var B=this.curOp=this.curOp||{};this.curOp.force=F;var G=_();return this.ace.curOp&&this.ace.curOp.command.name=="vim"&&(this.state.dialog&&(this.ace.curOp.command.scrollIntoView=this.ace.curOp.vimDialogScroll),this.ace.endOperation(),!B.cursorActivity&&!B.lastChange&&W&&(this.ace.prevOp=W)),(F||!this.ace.curOp)&&this.curOp&&this.onBeforeEndOperation(),G},this.onBeforeEndOperation=function(){var _=this.curOp;_&&(_.change&&this.signal("change",_.change,_),_&&_.cursorActivity&&this.signal("cursorActivity",null,_),this.curOp=null)},this.signal=function(_,F,W){var B=W?W[_+"Handlers"]:(this._eventRegistry||{})[_];if(B){B=B.slice();for(var G=0;G<B.length;G++)B[G](this,F)}},this.firstLine=function(){return 0},this.lastLine=function(){return this.ace.session.getLength()-1},this.lineCount=function(){return this.ace.session.getLength()},this.setCursor=function(_,F){typeof _=="object"&&(F=_.ch,_=_.line);var W=!this.curOp&&!this.ace.inVirtualSelectionMode;this.ace.inVirtualSelectionMode||this.ace.exitMultiSelectMode(),this.ace.session.unfold({row:_,column:F}),this.ace.selection.moveTo(_,F),W&&(this.ace.renderer.scrollCursorIntoView(),this.ace.endOperation())},this.getCursor=function(_){var F=this.ace.selection,W=_=="anchor"?F.isEmpty()?F.lead:F.anchor:_=="head"||!_?F.lead:F.getRange()[_];return y(W)},this.listSelections=function(_){var F=this.ace.multiSelect.rangeList.ranges;return!F.length||this.ace.inVirtualSelectionMode?[{anchor:this.getCursor("anchor"),head:this.getCursor("head")}]:F.map(function(W){return{anchor:this.clipPos(y(W.cursor==W.end?W.start:W.end)),head:this.clipPos(y(W.cursor))}},this)},this.setSelections=function(_,F){var W=this.ace.multiSelect,B=_.map(function(re){var se=f(re.anchor),ye=f(re.head),Ce=Zn.comparePoints(se,ye)<0?new Zn.fromPoints(se,ye):new Zn.fromPoints(ye,se);return Ce.cursor=Zn.comparePoints(Ce.start,ye)?Ce.end:Ce.start,Ce});if(this.ace.inVirtualSelectionMode){this.ace.selection.fromOrientedRange(B[0]);return}F?B[F]&&B.push(B.splice(F,1)[0]):B=B.reverse(),W.toSingleRange(B[0].clone());for(var G=this.ace.session,Y=0;Y<B.length;Y++){var Q=G.$clipRangeToDocument(B[Y]);W.addRange(Q)}},this.setSelection=function(_,F,W){var B=this.ace.selection;B.moveTo(_.line,_.ch),B.selectTo(F.line,F.ch),W&&W.origin=="*mouse"&&this.onBeforeEndOperation()},this.somethingSelected=function(_){return!this.ace.selection.isEmpty()},this.clipPos=function(_){var F=this.ace.session.$clipPositionToDocument(_.line,_.ch);return y(F)},this.foldCode=function(_){this.ace.session.$toggleFoldWidget(_.line,{})},this.markText=function(_){return{clear:function(){},find:function(){}}},this.$updateMarkers=function(_){var F=_.action=="insert",W=_.start,B=_.end,G=(B.row-W.row)*(F?1:-1),Y=(B.column-W.column)*(F?1:-1);F&&(B=W);for(var Q in this.marks){var re=this.marks[Q],se=Zn.comparePoints(re,W);if(!(se<0)){if(se===0&&F)if(!re.$insertRight)se=1;else{if(re.bias!=1){re.bias=-1;continue}se=1}var ye=F?se:Zn.comparePoints(re,B);if(ye>0){re.row+=G,re.column+=re.row==B.row?Y:0;continue}!F&&ye<=0&&(re.row=W.row,re.column=W.column,ye===0&&(re.bias=1))}}};var m=function(_,F,W,B){this.cm=_,this.id=F,this.row=W,this.column=B,_.marks[this.id]=this};m.prototype.clear=function(){delete this.cm.marks[this.id]},m.prototype.find=function(){return y(this)},this.setBookmark=function(_,F){var W=new m(this,this.$uid++,_.line,_.ch);return(!F||!F.insertLeft)&&(W.$insertRight=!0),this.marks[W.id]=W,W},this.moveH=function(_,F){if(F=="char"){var W=this.ace.selection;W.clearSelection(),W.moveCursorBy(0,_)}},this.findPosV=function(_,F,W,B){if(W=="page"){var G=this.ace.renderer,Y=G.layerConfig;F*=Math.floor(Y.height/Y.lineHeight),W="line"}if(W=="line"){var Q=this.ace.session.documentToScreenPosition(_.line,_.ch);B!=null&&(Q.column=B),Q.row+=F,Q.row=Math.min(Math.max(0,Q.row),this.ace.session.getScreenLength()-1);var re=this.ace.session.screenToDocumentPosition(Q.row,Q.column);return y(re)}debugger},this.charCoords=function(_,F){if(F=="div"||!F){var W=this.ace.session.documentToScreenPosition(_.line,_.ch);return{left:W.column,top:W.row}}if(F=="local"){var B=this.ace.renderer,W=this.ace.session.documentToScreenPosition(_.line,_.ch),G=B.layerConfig.lineHeight,Y=B.layerConfig.characterWidth,Q=G*W.row;return{left:W.column*Y,top:Q,bottom:Q+G}}},this.coordsChar=function(_,F){var W=this.ace.renderer;if(F=="local"){var B=Math.max(0,Math.floor(_.top/W.lineHeight)),G=Math.max(0,Math.floor(_.left/W.characterWidth)),Y=W.session.screenToDocumentPosition(B,G);return y(Y)}if(F=="div")throw"not implemented"},this.getSearchCursor=function(_,F,W){var B=!1,G=!1;_ instanceof RegExp&&!_.global&&(B=!_.ignoreCase,_=_.source,G=!0),_=="\\n"&&(_=`
1407
+ `,G=!1);var Y=new Pi;F.ch==null&&(F.ch=Number.MAX_VALUE);var Q={row:F.line,column:F.ch},re=this,se=null;return{findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(ye){Y.setOptions({needle:_,caseSensitive:B,wrap:!1,backwards:ye,regExp:G,start:se||Q});var Ce=Y.find(re.ace.session);return se=Ce,se&&[!se.isEmpty()]},from:function(){return se&&y(se.start)},to:function(){return se&&y(se.end)},replace:function(ye){se&&(se.end=re.ace.session.doc.replace(se,ye))}}},this.scrollTo=function(_,F){var W=this.ace.renderer,B=W.layerConfig,G=B.maxHeight;G-=(W.$size.scrollerHeight-W.lineHeight)*W.$scrollPastEnd,F!=null&&this.ace.session.setScrollTop(Math.max(0,Math.min(F,G))),_!=null&&this.ace.session.setScrollLeft(Math.max(0,Math.min(_,B.width)))},this.scrollInfo=function(){return 0},this.scrollIntoView=function(_,F){if(_){var W=this.ace.renderer,B={top:0,bottom:F};W.scrollCursorIntoView(f(_),W.lineHeight*2/W.$size.scrollerHeight,B)}},this.getLine=function(_){return this.ace.session.getLine(_)},this.getRange=function(_,F){return this.ace.session.getTextRange(new Zn(_.line,_.ch,F.line,F.ch))},this.replaceRange=function(_,F,W){W||(W=F);var B=new Zn(F.line,F.ch,W.line,W.ch);return this.ace.session.$clipRangeToDocument(B),this.ace.session.replace(B,_)},this.replaceSelection=this.replaceSelections=function(_){var F=Array.isArray(_)&&_,W=this.ace.selection;if(this.ace.inVirtualSelectionMode){this.ace.session.replace(W.getRange(),F?_[0]||"":_);return}W.inVirtualSelectionMode=!0;var B=W.rangeList.ranges;B.length||(B=[this.ace.multiSelect.getRange()]);for(var G=B.length;G--;)this.ace.session.replace(B[G],F?_[G]||"":_);W.inVirtualSelectionMode=!1},this.getSelection=function(){return this.ace.getSelectedText()},this.getSelections=function(){return this.listSelections().map(function(_){return this.getRange(_.anchor,_.head)},this)},this.getInputField=function(){return this.ace.textInput.getElement()},this.getWrapperElement=function(){return this.ace.container};var $={indentWithTabs:"useSoftTabs",indentUnit:"tabSize",tabSize:"tabSize",firstLineNumber:"firstLineNumber",readOnly:"readOnly"};this.setOption=function(_,F){switch(this.state[_]=F,_){case"indentWithTabs":_=$[_],F=!F;break;case"keyMap":this.state.$keyMap=F;return;default:_=$[_]}_&&this.ace.setOption(_,F)},this.getOption=function(_){var F,W=$[_];switch(W&&(F=this.ace.getOption(W)),_){case"indentWithTabs":return _=$[_],!F;case"keyMap":return this.state.$keyMap||"vim"}return W?F:this.state[_]},this.toggleOverwrite=function(_){return this.state.overwrite=_,this.ace.setOverwrite(_)},this.addOverlay=function(_){if(!this.$searchHighlight||!this.$searchHighlight.session){var F=new Uo(null,"ace_highlight-marker","text"),W=this.ace.session.addDynamicMarker(F);F.id=W.id,F.session=this.ace.session,F.destroy=function(G){F.session.off("change",F.updateOnChange),F.session.off("changeEditor",F.destroy),F.session.removeMarker(F.id),F.session=null},F.updateOnChange=function(G){var Y=G.start.row;Y==G.end.row?F.cache[Y]=void 0:F.cache.splice(Y,F.cache.length)},F.session.on("changeEditor",F.destroy),F.session.on("change",F.updateOnChange)}var B=new RegExp(_.query.source,"gmi");this.$searchHighlight=_.highlight=F,this.$searchHighlight.setRegexp(B),this.ace.renderer.updateBackMarkers()},this.removeOverlay=function(_){this.$searchHighlight&&this.$searchHighlight.session&&this.$searchHighlight.destroy()},this.getScrollInfo=function(){var _=this.ace.renderer,F=_.layerConfig;return{left:_.scrollLeft,top:_.scrollTop,height:F.maxHeight,width:F.width,clientHeight:F.height,clientWidth:F.width}},this.getValue=function(){return this.ace.getValue()},this.setValue=function(_){return this.ace.setValue(_,-1)},this.getTokenTypeAt=function(_){var F=this.ace.session.getTokenAt(_.line,_.ch);return F&&/comment|string/.test(F.type)?"string":""},this.findMatchingBracket=function(_){var F=this.ace.session.findMatchingBracket(f(_));return{to:F&&y(F)}},this.findMatchingTag=function(_){var F=this.ace.session.getMatchingTags(f(_));if(F)return{open:{from:y(F.openTag.start),to:y(F.openTag.end)},close:{from:y(F.closeTag.start),to:y(F.closeTag.end)}}},this.indentLine=function(_,F){F===!0?this.ace.session.indentRows(_,_," "):F===!1&&this.ace.session.outdentRows(new Zn(_,0,_,0))},this.indexFromPos=function(_){return this.ace.session.doc.positionToIndex(f(_))},this.posFromIndex=function(_){return y(this.ace.session.doc.indexToPosition(_))},this.focus=function(_){return this.ace.textInput.focus()},this.blur=function(_){return this.ace.blur()},this.defaultTextHeight=function(_){return this.ace.renderer.layerConfig.lineHeight},this.scanForBracket=function(_,F,W,B){var G=B.bracketRegex.source,Y=/paren|text|operator|tag/;if(F==1)var Q=this.ace.session.$findClosingBracket(G.slice(1,2),f(_),Y);else{var Q=this.ace.session.$findOpeningBracket(G.slice(-2,-1),{row:_.line,column:_.ch+1},Y);!Q&&B.bracketRegex&&B.bracketRegex.test(this.getLine(_.line)[_.ch-1])&&(Q={row:_.line,column:_.ch-1})}return Q&&{pos:y(Q)}},this.refresh=function(){return this.ace.resize(!0)},this.getMode=function(){return{name:this.getOption("mode")}},this.execCommand=function(_){if(Fe.commands.hasOwnProperty(_))return Fe.commands[_](this);if(_=="indentAuto")return this.ace.execCommand("autoindent");console.log(_+" is not implemented")},this.getLineNumber=function(_){var F=this.$lineHandleChanges;if(!F)return null;for(var W=_.row,B=0;B<F.length;B++){var G=F[B];if(G.start.row!=G.end.row){if(G.action[0]=="i")G.start.row<W&&(W+=G.end.row-G.start.row);else if(G.start.row<W){if(W<G.end.row||W==G.end.row&&G.start.column>0)return null;W-=G.end.row-G.start.row}}}return W},this.getLineHandle=function(_){return this.$lineHandleChanges||(this.$lineHandleChanges=[]),{text:this.ace.session.getLine(_),row:_}},this.releaseLineHandles=function(){this.$lineHandleChanges=void 0},this.getLastEditEnd=function(){var _=this.ace.session.$undoManager;if(_&&_.$lastDelta)return y(_.$lastDelta.end)}}).call(Fe.prototype);var aa=Fe.StringStream=function(m,$){this.pos=this.start=0,this.string=m,this.tabSize=$||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};aa.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},eat:function(m){var $=this.string.charAt(this.pos);if(typeof m=="string")var _=$==m;else var _=$&&(m.test?m.test($):m($));if(_)return++this.pos,$},eatWhile:function(m){for(var $=this.pos;this.eat(m););return this.pos>$},eatSpace:function(){for(var m=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>m},skipToEnd:function(){this.pos=this.string.length},skipTo:function(m){var $=this.string.indexOf(m,this.pos);if($>-1)return this.pos=$,!0},backUp:function(m){this.pos-=m},column:function(){throw"not implemented"},indentation:function(){throw"not implemented"},match:function(m,$,_){if(typeof m!="string"){var F=this.string.slice(this.pos).match(m);return F&&F.index>0?null:(F&&$!==!1&&(this.pos+=F[0].length),F)}var W=function(G){return _?G.toLowerCase():G},B=this.string.substr(this.pos,m.length);if(W(B)==W(m))return $!==!1&&(this.pos+=m.length),!0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(m,$){this.lineStart+=m;try{return $()}finally{this.lineStart-=m}}},Fe.defineExtension=function(m,$){Fe.prototype[m]=$},Fi.importCssString(`.normal-mode .ace_cursor{
1408
+ border: none;
1409
+ background-color: rgba(255,0,0,0.5);
1410
+ }
1411
+ .normal-mode .ace_hidden-cursors .ace_cursor{
1412
+ background-color: transparent;
1413
+ border: 1px solid red;
1414
+ opacity: 0.7
1415
+ }
1416
+ .ace_dialog {
1417
+ position: absolute;
1418
+ left: 0; right: 0;
1419
+ background: inherit;
1420
+ z-index: 15;
1421
+ padding: .1em .8em;
1422
+ overflow: hidden;
1423
+ color: inherit;
1424
+ }
1425
+ .ace_dialog-top {
1426
+ border-bottom: 1px solid #444;
1427
+ top: 0;
1428
+ }
1429
+ .ace_dialog-bottom {
1430
+ border-top: 1px solid #444;
1431
+ bottom: 0;
1432
+ }
1433
+ .ace_dialog input {
1434
+ border: none;
1435
+ outline: none;
1436
+ background: transparent;
1437
+ width: 20em;
1438
+ color: inherit;
1439
+ font-family: monospace;
1440
+ }`,"vimMode",!1),function(){function m(_,F,W){var B=_.ace.container,G;return G=B.appendChild(document.createElement("div")),W?G.className="ace_dialog ace_dialog-bottom":G.className="ace_dialog ace_dialog-top",typeof F=="string"?G.innerHTML=F:G.appendChild(F),G}function $(_,F){_.state.currentNotificationClose&&_.state.currentNotificationClose(),_.state.currentNotificationClose=F}Fe.defineExtension("openDialog",function(_,F,W){function B(ye){if(typeof ye=="string")re.value=ye;else{if(Y||ye&&ye.type=="blur"&&document.activeElement===re)return;Q.state.dialog==G&&(Q.state.dialog=null,Q.focus()),Y=!0,G.remove(),W.onClose&&W.onClose(G);var Ce=Q;Ce.state.vim&&(Ce.state.vim.status=null,Ce.ace._signal("changeStatus"),Ce.ace.renderer.$loop.schedule(Ce.ace.renderer.CHANGE_CURSOR))}}if(!this.virtualSelectionMode()){W||(W={}),$(this,null);var G=m(this,_,W.bottom),Y=!1,Q=this;this.state.dialog=G;var re=G.getElementsByTagName("input")[0],se;return re?(W.value&&(re.value=W.value,W.selectValueOnOpen!==!1&&re.select()),W.onInput&&Fe.on(re,"input",function(ye){W.onInput(ye,re.value,B)}),W.onKeyUp&&Fe.on(re,"keyup",function(ye){W.onKeyUp(ye,re.value,B)}),Fe.on(re,"keydown",function(ye){W&&W.onKeyDown&&W.onKeyDown(ye,re.value,B)||(ye.keyCode==13&&F(re.value),(ye.keyCode==27||W.closeOnEnter!==!1&&ye.keyCode==13)&&(Fe.e_stop(ye),B()))}),W.closeOnBlur!==!1&&Fe.on(re,"blur",B),re.focus()):(se=G.getElementsByTagName("button")[0])&&(Fe.on(se,"click",function(){B(),Q.focus()}),W.closeOnBlur!==!1&&Fe.on(se,"blur",B),se.focus()),B}}),Fe.defineExtension("openNotification",function(_,F){function W(){G||(G=!0,clearTimeout(Y),B.remove())}if(!this.virtualSelectionMode()){$(this,W);var B=m(this,_,F&&F.bottom),G=!1,Y,Q=F&&typeof F.duration<"u"?F.duration:5e3;return Fe.on(B,"click",function(re){Fe.e_preventDefault(re),W()}),Q&&(Y=setTimeout(W,Q)),W}})}();var Oe=Fe.Pos,yn=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h"},{keys:"<Del>",type:"keyToKey",toKeys:"x"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"gq",type:"operator",operator:"hardWrap"},{keys:"gw",type:"operator",operator:"hardWrap",operatorArgs:{keepCursor:!0}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<register>",type:"action",action:"replayMacro"},{keys:"q<register>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<register>",type:"action",action:"setMark"},{keys:'"<register>',type:"action",action:"setRegister"},{keys:"<C-r><register>",type:"action",action:"insertRegister",context:"insert",isEdit:!0},{keys:"<C-o>",type:"action",action:"oneNormalCommand",context:"insert"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<register>",type:"motion",motion:"textObjectManipulation"},{keys:"i<register>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],fo=yn.length,Qr=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"omap",shortName:"om"},{name:"noremap",shortName:"no"},{name:"nnoremap",shortName:"nn"},{name:"vnoremap",shortName:"vn"},{name:"inoremap",shortName:"ino"},{name:"onoremap",shortName:"ono"},{name:"unmap"},{name:"mapclear",shortName:"mapc"},{name:"nmapclear",shortName:"nmapc"},{name:"vmapclear",shortName:"vmapc"},{name:"imapclear",shortName:"imapc"},{name:"omapclear",shortName:"omapc"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"startinsert",shortName:"start"},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"delete",shortName:"d"},{name:"join",shortName:"j"},{name:"normal",shortName:"norm"},{name:"global",shortName:"g"}],On=N(""),la=/[\d]/,mo=[Fe.isWordChar,function(m){return m&&!Fe.isWordChar(m)&&!/\s/.test(m)}],gi=[function(m){return/\S/.test(m)}],Ji=["<",">"],jt=["-",'"',".",":","_","/","+"],Wt=/^\w$/,Ht;try{Ht=new RegExp("^[\\p{Lu}]$","u")}catch{Ht=/^[A-Z]$/}var Rt={};R("filetype",void 0,"string",["ft"],function(m,$){if($!==void 0){if(m===void 0){var _=$.getOption("mode");return _=="null"?"":_}var _=m==""?"null":m;$.setOption("mode",_)}}),R("textwidth",80,"number",["tw"],function(m,$){if($!==void 0){if(m===void 0){var _=$.getOption("textwidth");return _}var F=Math.round(m);F>1&&$.setOption("textwidth",F)}});var fi=function(){function m(Q,re,se){function ye(Le){var Re=++W%F,ze=Y[Re];ze&&ze.clear(),Y[Re]=Q.setBookmark(Le)}var Ce=W%F,me=Y[Ce];if(me){var we=me.find();we&&!lt(we,re)&&ye(re)}else ye(re);ye(se),B=W,G=W-F+1,G<0&&(G=0)}function $(Q,re){W+=re,W>B?W=B:W<G&&(W=G);var se=Y[(F+W)%F];if(se&&!se.find()){var ye=re>0?1:-1,Ce,me=Q.getCursor();do if(W+=ye,se=Y[(F+W)%F],se&&(Ce=se.find())&&!lt(me,Ce))break;while(W<B&&W>G)}return se}function _(Q,re){var se=W,ye=$(Q,re);return W=se,ye&&ye.find()}var F=100,W=-1,B=0,G=0,Y=new Array(F);return{cachedCursor:void 0,add:m,find:_,move:$}},kn=function(m){return m?{changes:m.changes,expectCursorActivityForChange:m.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};x.prototype={exitMacroRecordMode:function(){var m=We.macroModeState;m.onRecordingDone&&m.onRecordingDone(),m.onRecordingDone=void 0,m.isRecording=!1},enterMacroRecordMode:function(m,$){var _=We.registerController.getRegister($);if(_){if(_.clear(),this.latestRegister=$,m.openDialog){var F=Xr("span",{class:"cm-vim-message"},"recording @"+$);this.onRecordingDone=m.openDialog(F,null,{bottom:!0})}this.isRecording=!0}}};var We,rn,dt={enterVimMode:h,leaveVimMode:p,buildKeyMap:function(){},getRegisterController:function(){return We.registerController},resetVimGlobalState_:O,getVimGlobalState_:function(){return We},maybeInitVimState_:L,suppressErrorLogging:!1,InsertModeKey:Xi,map:function(m,$,_){ur.map(m,$,_)},unmap:function(m,$){return ur.unmap(m,$)},noremap:function(m,$,_){ur.map(m,$,_,!0)},mapclear:function(m){var $=yn.length,_=fo,F=yn.slice(0,$-_);if(yn=yn.slice($-_),m)for(var W=F.length-1;W>=0;W--){var B=F[W];if(m!==B.context)if(B.context)this._mapCommand(B);else{var G=["normal","insert","visual"];for(var Y in G)if(G[Y]!==m){var Q={};for(var re in B)Q[re]=B[re];Q.context=G[Y],this._mapCommand(Q)}}}},langmap:P,vimKeyFromEvent:z,setOption:M,getOption:k,defineOption:R,defineEx:function(m,$,_){if(!$)$=m;else if(m.indexOf($)!==0)throw new Error('(Vim.defineEx) "'+$+'" is not a prefix of "'+m+'", command not registered');As[m]=_,ur.commandMap_[$]={name:m,shortName:$,type:"api"}},handleKey:function(m,$,_){var F=this.findKey(m,$,_);if(typeof F=="function")return F()},multiSelectHandleKey:uo,findKey:function(m,$,_){function F(){var re=We.macroModeState;if(re.isRecording){if($=="q")return re.exitMacroRecordMode(),A(m),!0;_!="mapping"&&Po(re,$)}}function W(){if($=="<Esc>"){if(Y.visualMode)mn(m);else{if(!Y.insertMode)return;Wr(m)}return A(m),!0}}function B(){if(W())return!0;Y.inputState.keyBuffer.push($);var re=Y.inputState.keyBuffer.join(""),se=$.length==1,ye=An.matchCommand(re,yn,Y.inputState,"insert"),Ce=Y.inputState.changeQueue;if(ye.type=="none")return A(m),!1;if(ye.type=="partial"){if(ye.expectLiteralNext&&(Y.expectLiteralNext=!0),rn&&window.clearTimeout(rn),rn=se&&window.setTimeout(function(){Y.insertMode&&Y.inputState.keyBuffer.length&&A(m)},k("insertModeEscKeysTimeout")),se){var me=m.listSelections();(!Ce||Ce.removed.length!=me.length)&&(Ce=Y.inputState.changeQueue=new D),Ce.inserted+=$;for(var we=0;we<me.length;we++){var Le=ht(me[we].anchor,me[we].head),Re=qt(me[we].anchor,me[we].head),ze=m.getRange(Le,m.state.overwrite?fe(Re,0,1):Re);Ce.removed[we]=(Ce.removed[we]||"")+ze}}return!se}if(Y.expectLiteralNext=!1,rn&&window.clearTimeout(rn),ye.command&&Ce){for(var me=m.listSelections(),we=0;we<me.length;we++){var rt=me[we].head;m.replaceRange(Ce.removed[we]||"",fe(rt,0,-Ce.inserted.length),rt,"+input")}We.macroModeState.lastInsertModeChanges.changes.pop()}return ye.command||A(m),ye.command}function G(){if(F()||W())return!0;Y.inputState.keyBuffer.push($);var re=Y.inputState.keyBuffer.join("");if(/^[1-9]\d*$/.test(re))return!0;var se=/^(\d*)(.*)$/.exec(re);if(!se)return A(m),!1;var ye=Y.visualMode?"visual":"normal",Ce=se[2]||se[1];Y.inputState.operatorShortcut&&Y.inputState.operatorShortcut.slice(-1)==Ce&&(Ce=Y.inputState.operatorShortcut);var me=An.matchCommand(Ce,yn,Y.inputState,ye);return me.type=="none"?(A(m),!1):me.type=="partial"?(me.expectLiteralNext&&(Y.expectLiteralNext=!0),!0):me.type=="clear"?(A(m),!0):(Y.expectLiteralNext=!1,Y.inputState.keyBuffer.length=0,se=/^(\d*)(.*)$/.exec(re),se[1]&&se[1]!="0"&&Y.inputState.pushRepeatDigit(se[1]),me.command)}var Y=L(m),Q;return Y.insertMode?Q=B():Q=G(),Q===!1?!Y.insertMode&&$.length===1?function(){return!0}:void 0:Q===!0?function(){return!0}:function(){if(!((Q.operator||Q.isEdit)&&m.getOption("readOnly")))return m.operation(function(){m.curOp.isVimOp=!0;try{Q.type=="keyToKey"?E(m,Q.toKeys,Q):An.processCommand(m,Y,Q)}catch(re){throw m.state.vim=void 0,L(m),dt.suppressErrorLogging||console.log(re),re}return!0})}},handleEx:function(m,$){ur.processCommand(m,$)},defineMotion:te,defineAction:le,defineOperator:ne,mapCommand:ws,_mapCommand:Fo,defineRegister:U,exitVisualMode:mn,exitInsertMode:Wr},Mr=[],Qt=!1,ln,jn={Return:"CR",Backspace:"BS",Delete:"Del",Escape:"Esc",Insert:"Ins",ArrowLeft:"Left",ArrowRight:"Right",ArrowUp:"Up",ArrowDown:"Down",Enter:"CR"," ":"Space"},Tr={Shift:1,Alt:1,Command:1,Control:1,CapsLock:1,AltGraph:1,Dead:1,Unidentified:1},mi={};"Left|Right|Up|Down|End|Home".split("|").concat(Object.keys(jn)).forEach(function(m){mi[(jn[m]||"").toLowerCase()]=mi[m.toLowerCase()]=m}),R("langmap",void 0,"string",["lmap"],function(m,$){if(m===void 0)return On.string;P(m)}),S.prototype.pushRepeatDigit=function(m){this.operator?this.motionRepeat=this.motionRepeat.concat(m):this.prefixRepeat=this.prefixRepeat.concat(m)},S.prototype.getRepeat=function(){var m=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(m=1,this.prefixRepeat.length>0&&(m*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(m*=parseInt(this.motionRepeat.join(""),10))),m},j.prototype={setText:function(m,$,_){this.keyBuffer=[m||""],this.linewise=!!$,this.blockwise=!!_},pushText:function(m,$){$&&(this.linewise||this.keyBuffer.push(`
1441
+ `),this.linewise=!0),this.keyBuffer.push(m)},pushInsertModeChanges:function(m){this.insertModeChanges.push(kn(m))},pushSearchQuery:function(m){this.searchQueries.push(m)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},q.prototype={pushText:function(m,$,_,F,W){if(m!=="_"){F&&_.charAt(_.length-1)!==`
1442
+ `&&(_+=`
1443
+ `);var B=this.isValidRegister(m)?this.getRegister(m):null;if(!B){switch($){case"yank":this.registers[0]=new j(_,F,W);break;case"delete":case"change":_.indexOf(`
1444
+ `)==-1?this.registers["-"]=new j(_,F):(this.shiftNumericRegisters_(),this.registers[1]=new j(_,F))}this.unnamedRegister.setText(_,F,W);return}var G=u(m);G?B.pushText(_,F):B.setText(_,F,W),m==="+"&&typeof navigator<"u"&&typeof navigator.clipboard<"u"&&typeof navigator.clipboard.readText=="function"&&navigator.clipboard.writeText(_),this.unnamedRegister.setText(B.toString(),F)}},getRegister:function(m){return this.isValidRegister(m)?(m=m.toLowerCase(),this.registers[m]||(this.registers[m]=new j),this.registers[m]):this.unnamedRegister},isValidRegister:function(m){return m&&(b(m,jt)||Wt.test(m))},shiftNumericRegisters_:function(){for(var m=9;m>=2;m--)this.registers[m]=this.getRegister(""+(m-1))}},Z.prototype={nextMatch:function(m,$){var _=this.historyBuffer,F=$?-1:1;this.initialPrefix===null&&(this.initialPrefix=m);for(var W=this.iterator+F;$?W>=0:W<_.length;W+=F)for(var B=_[W],G=0;G<=B.length;G++)if(this.initialPrefix==B.substring(0,G))return this.iterator=W,B;if(W>=_.length)return this.iterator=_.length,this.initialPrefix;if(W<0)return m},pushInput:function(m){var $=this.historyBuffer.indexOf(m);$>-1&&this.historyBuffer.splice($,1),m.length&&this.historyBuffer.push(m)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var An={matchCommand:function(m,$,_,F){var W=Se(m,$,F,_);if(!W.full&&!W.partial)return{type:"none"};if(!W.full&&W.partial)return{type:"partial",expectLiteralNext:W.partial.length==1&&W.partial[0].keys.slice(-11)=="<character>"};for(var B,G=0;G<W.full.length;G++){var Y=W.full[G];B||(B=Y)}if(B.keys.slice(-11)=="<character>"||B.keys.slice(-10)=="<register>"){var Q=Te(m);if(!Q||Q.length>1)return{type:"clear"};_.selectedCharacter=Q}return{type:"full",command:B}},processCommand:function(m,$,_){switch($.inputState.repeatOverride=_.repeatOverride,_.type){case"motion":this.processMotion(m,$,_);break;case"operator":this.processOperator(m,$,_);break;case"operatorMotion":this.processOperatorMotion(m,$,_);break;case"action":this.processAction(m,$,_);break;case"search":this.processSearch(m,$,_);break;case"ex":case"keyToEx":this.processEx(m,$,_);break}},processMotion:function(m,$,_){$.inputState.motion=_.motion,$.inputState.motionArgs=ce(_.motionArgs),this.evalInput(m,$)},processOperator:function(m,$,_){var F=$.inputState;if(F.operator){if(F.operator==_.operator){F.motion="expandToLine",F.motionArgs={linewise:!0},this.evalInput(m,$);return}A(m)}F.operator=_.operator,F.operatorArgs=ce(_.operatorArgs),_.keys.length>1&&(F.operatorShortcut=_.keys),_.exitVisualBlock&&($.visualBlock=!1,zn(m)),$.visualMode&&this.evalInput(m,$)},processOperatorMotion:function(m,$,_){var F=$.visualMode,W=ce(_.operatorMotionArgs);W&&F&&W.visualLine&&($.visualLine=!0),this.processOperator(m,$,_),F||this.processMotion(m,$,_)},processAction:function(m,$,_){var F=$.inputState,W=F.getRepeat(),B=!!W,G=ce(_.actionArgs)||{};F.selectedCharacter&&(G.selectedCharacter=F.selectedCharacter),_.operator&&this.processOperator(m,$,_),_.motion&&this.processMotion(m,$,_),(_.motion||_.operator)&&this.evalInput(m,$),G.repeat=W||1,G.repeatIsExplicit=B,G.registerName=F.registerName,A(m),$.lastMotion=null,_.isEdit&&this.recordLastEdit($,F,_),_n[_.action](m,G,$)},processSearch:function(m,$,_){function F(Re,ze,rt){We.searchHistoryController.pushInput(Re),We.searchHistoryController.reset();try{nn(m,Re,ze,rt)}catch{It(m,"Invalid regex: "+Re),A(m);return}An.processMotion(m,$,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:_.searchArgs.toJumplist}})}function W(Re){F(Re,!0,!0);var ze=We.macroModeState;ze.isRecording&&xs(ze,Re)}function B(Re,ze,rt){var Ke=z(Re),Qe,on;Ke=="<Up>"||Ke=="<Down>"?(Qe=Ke=="<Up>",on=Re.target?Re.target.selectionEnd:0,ze=We.searchHistoryController.nextMatch(ze,Qe)||"",rt(ze),on&&Re.target&&(Re.target.selectionEnd=Re.target.selectionStart=Math.min(on,Re.target.value.length))):Ke&&Ke!="<Left>"&&Ke!="<Right>"&&We.searchHistoryController.reset();var it;try{it=nn(m,ze,!0,!0)}catch{}it?m.scrollIntoView(wr(m,!Y,it),30):(No(m),m.scrollTo(ye.left,ye.top))}function G(Re,ze,rt){var Ke=z(Re);Ke=="<Esc>"||Ke=="<C-c>"||Ke=="<C-[>"||Ke=="<BS>"&&ze==""?(We.searchHistoryController.pushInput(ze),We.searchHistoryController.reset(),nn(m,se),No(m),m.scrollTo(ye.left,ye.top),Fe.e_stop(Re),A(m),rt(),m.focus()):Ke=="<Up>"||Ke=="<Down>"?Fe.e_stop(Re):Ke=="<C-u>"&&(Fe.e_stop(Re),rt(""))}if(m.getSearchCursor){var Y=_.searchArgs.forward,Q=_.searchArgs.wholeWordOnly;vn(m).setReversed(!Y);var re=Y?"/":"?",se=vn(m).getQuery(),ye=m.getScrollInfo();switch(_.searchArgs.querySrc){case"prompt":var Ce=We.macroModeState;if(Ce.isPlaying){var Le=Ce.replaySearchQueries.shift();F(Le,!0,!1)}else yr(m,{onClose:W,prefix:re,desc:"(JavaScript regexp)",onKeyUp:B,onKeyDown:G});break;case"wordUnderCursor":var me=Xn(m,{noSymbol:!0}),we=!0;if(me||(me=Xn(m,{noSymbol:!1}),we=!1),!me){It(m,"No word under cursor"),A(m);return}var Le=m.getLine(me.start.line).substring(me.start.ch,me.end.ch);we&&Q?Le="\\b"+Le+"\\b":Le=fn(Le),We.jumpList.cachedCursor=m.getCursor(),m.setCursor(me.start),F(Le,!0,!1)}}},processEx:function(m,$,_){function F(B){We.exCommandHistoryController.pushInput(B),We.exCommandHistoryController.reset(),ur.processCommand(m,B),m.state.vim&&A(m)}function W(B,G,Y){var Q=z(B),re,se;(Q=="<Esc>"||Q=="<C-c>"||Q=="<C-[>"||Q=="<BS>"&&G=="")&&(We.exCommandHistoryController.pushInput(G),We.exCommandHistoryController.reset(),Fe.e_stop(B),A(m),Y(),m.focus()),Q=="<Up>"||Q=="<Down>"?(Fe.e_stop(B),re=Q=="<Up>",se=B.target?B.target.selectionEnd:0,G=We.exCommandHistoryController.nextMatch(G,re)||"",Y(G),se&&B.target&&(B.target.selectionEnd=B.target.selectionStart=Math.min(se,B.target.value.length))):Q=="<C-u>"?(Fe.e_stop(B),Y("")):Q&&Q!="<Left>"&&Q!="<Right>"&&We.exCommandHistoryController.reset()}_.type=="keyToEx"?ur.processCommand(m,_.exArgs.input):$.visualMode?yr(m,{onClose:F,prefix:":",value:"'<,'>",onKeyDown:W,selectValueOnOpen:!1}):yr(m,{onClose:F,prefix:":",onKeyDown:W})},evalInput:function(m,$){var _=$.inputState,F=_.motion,W=_.motionArgs||{},B=_.operator,G=_.operatorArgs||{},Y=_.registerName,Q=$.sel,re=Ve($.visualMode?ue(m,Q.head):m.getCursor("head")),se=Ve($.visualMode?ue(m,Q.anchor):m.getCursor("anchor")),ye=Ve(re),Ce=Ve(se),me,we,Le;if(B&&this.recordLastEdit($,_),_.repeatOverride!==void 0?Le=_.repeatOverride:Le=_.getRepeat(),Le>0&&W.explicitRepeat?W.repeatIsExplicit=!0:(W.noRepeat||!W.explicitRepeat&&Le===0)&&(Le=1,W.repeatIsExplicit=!1),_.selectedCharacter&&(W.selectedCharacter=G.selectedCharacter=_.selectedCharacter),W.repeat=Le,A(m),F){var Re=Br[F](m,re,W,$,_);if($.lastMotion=Br[F],!Re)return;if(W.toJumplist){!B&&m.ace.curOp!=null&&(m.ace.curOp.command.scrollIntoView="center-animate");var ze=We.jumpList,rt=ze.cachedCursor;rt?(Ei(m,rt,Re),delete ze.cachedCursor):Ei(m,re,Re)}Re instanceof Array?(we=Re[0],me=Re[1]):me=Re,me||(me=Ve(re)),$.visualMode?((!$.visualBlock||me.ch!==1/0)&&(me=ue(m,me,ye)),we&&(we=ue(m,we)),we=we||Ce,Q.anchor=we,Q.head=me,zn(m),Yr(m,$,"<",Je(we,me)?we:me),Yr(m,$,">",Je(we,me)?me:we)):B||(m.ace.curOp&&(m.ace.curOp.vimDialogScroll="center-animate"),me=ue(m,me,ye),m.setCursor(me.line,me.ch))}if(B){if(G.lastSel){we=Ce;var Ke=G.lastSel,Qe=Math.abs(Ke.head.line-Ke.anchor.line),on=Math.abs(Ke.head.ch-Ke.anchor.ch);Ke.visualLine?me=new Oe(Ce.line+Qe,Ce.ch):Ke.visualBlock?me=new Oe(Ce.line+Qe,Ce.ch+on):Ke.head.line==Ke.anchor.line?me=new Oe(Ce.line,Ce.ch+on):me=new Oe(Ce.line+Qe,Ce.ch),$.visualMode=!0,$.visualLine=Ke.visualLine,$.visualBlock=Ke.visualBlock,Q=$.sel={anchor:we,head:me},zn(m)}else $.visualMode&&(G.lastSel={anchor:Ve(Q.anchor),head:Ve(Q.head),visualBlock:$.visualBlock,visualLine:$.visualLine});var it,un,ft,bt,Hn;if($.visualMode){it=ht(Q.head,Q.anchor),un=qt(Q.head,Q.anchor),ft=$.visualLine||G.linewise,bt=$.visualBlock?"block":ft?"line":"char";var or=C(m,it,un);if(Hn=$r(m,{anchor:or.start,head:or.end},bt),ft){var hn=Hn.ranges;if(bt=="block")for(var V=0;V<hn.length;V++)hn[V].head.ch=Vt(m,hn[V].head.line);else bt=="line"&&(hn[0].head=new Oe(hn[0].head.line+1,0))}}else{if(it=Ve(we||Ce),un=Ve(me||ye),Je(un,it)){var X=it;it=un,un=X}ft=W.linewise||G.linewise,ft?nr(m,it,un):W.forward&&Yn(m,it,un),bt="char";var ie=!W.inclusive||ft,or=C(m,it,un);Hn=$r(m,{anchor:or.start,head:or.end},bt,ie)}m.setSelections(Hn.ranges,Hn.primary),$.lastMotion=null,G.repeat=Le,G.registerName=Y,G.linewise=ft;var oe=Vo[B](m,G,Hn.ranges,Ce,me);$.visualMode&&mn(m,oe!=null),oe&&m.setCursor(oe)}},recordLastEdit:function(m,$,_){var F=We.macroModeState;F.isPlaying||(m.lastEditInputState=$,m.lastEditActionCommand=_,F.lastInsertModeChanges.changes=[],F.lastInsertModeChanges.expectCursorActivityForChange=!1,F.lastInsertModeChanges.visualBlock=m.visualBlock?m.sel.head.line-m.sel.anchor.line:0)}},Br={moveToTopLine:function(m,$,_){var F=Yi(m).top+_.repeat-1;return new Oe(F,Yt(m.getLine(F)))},moveToMiddleLine:function(m){var $=Yi(m),_=Math.floor(($.top+$.bottom)*.5);return new Oe(_,Yt(m.getLine(_)))},moveToBottomLine:function(m,$,_){var F=Yi(m).bottom-_.repeat+1;return new Oe(F,Yt(m.getLine(F)))},expandToLine:function(m,$,_){var F=$;return new Oe(F.line+_.repeat-1,1/0)},findNext:function(m,$,_){var F=vn(m),W=F.getQuery();if(W){var B=!_.forward;return B=F.isReversed()?!B:B,hi(m,W),wr(m,B,W,_.repeat)}},findAndSelectNextInclusive:function(m,$,_,F,W){var B=vn(m),G=B.getQuery();if(G){var Y=!_.forward;Y=B.isReversed()?!Y:Y;var Q=di(m,Y,G,_.repeat,F);if(Q){if(W.operator)return Q;var re=Q[0],se=new Oe(Q[1].line,Q[1].ch-1);if(F.visualMode){(F.visualLine||F.visualBlock)&&(F.visualLine=!1,F.visualBlock=!1,Fe.signal(m,"vim-mode-change",{mode:"visual",subMode:""}));var ye=F.sel.anchor;if(ye)return B.isReversed()?_.forward?[ye,re]:[ye,se]:_.forward?[ye,se]:[ye,re]}else F.visualMode=!0,F.visualLine=!1,F.visualBlock=!1,Fe.signal(m,"vim-mode-change",{mode:"visual",subMode:""});return Y?[se,re]:[re,se]}}},goToMark:function(m,$,_,F){var W=Pr(m,F,_.selectedCharacter);return W?_.linewise?{line:W.line,ch:Yt(m.getLine(W.line))}:W:null},moveToOtherHighlightedEnd:function(m,$,_,F){if(F.visualBlock&&_.sameLine){var W=F.sel;return[ue(m,new Oe(W.anchor.line,W.head.ch)),ue(m,new Oe(W.head.line,W.anchor.ch))]}return[F.sel.head,F.sel.anchor]},jumpToMark:function(m,$,_,F){for(var W=$,B=0;B<_.repeat;B++){var G=W;for(var Y in F.marks)if(c(Y)){var Q=F.marks[Y].find(),re=_.forward?Je(Q,G):Je(G,Q);if(!re&&!(_.linewise&&Q.line==G.line)){var se=lt(G,W),ye=_.forward?In(G,Q,W):In(W,Q,G);(se||ye)&&(W=Q)}}}return _.linewise&&(W=new Oe(W.line,Yt(m.getLine(W.line)))),W},moveByCharacters:function(m,$,_){var F=$,W=_.repeat,B=_.forward?F.ch+W:F.ch-W;return new Oe(F.line,B)},moveByLines:function(m,$,_,F){var W=$,B=W.ch;switch(F.lastMotion){case this.moveByLines:case this.moveByDisplayLines:case this.moveByScroll:case this.moveToColumn:case this.moveToEol:B=F.lastHPos;break;default:F.lastHPos=B}var G=_.repeat+(_.repeatOffset||0),Y=_.forward?W.line+G:W.line-G,Q=m.firstLine(),re=m.lastLine();if(Y<Q&&W.line==Q)return this.moveToStartOfLine(m,$,_,F);if(Y>re&&W.line==re)return ao(m,$,_,F,!0);var se=m.ace.session.getFoldLine(Y);return se&&(_.forward?Y>se.start.row&&(Y=se.end.row+1):Y=se.start.row),_.toFirstChar&&(B=Yt(m.getLine(Y)),F.lastHPos=B),F.lastHSPos=m.charCoords(new Oe(Y,B),"div").left,new Oe(Y,B)},moveByDisplayLines:function(m,$,_,F){var W=$;switch(F.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:F.lastHSPos=m.charCoords(W,"div").left}var B=_.repeat,Q=m.findPosV(W,_.forward?B:-B,"line",F.lastHSPos);if(Q.hitSide)if(_.forward)var G=m.charCoords(Q,"div"),Y={top:G.top+8,left:F.lastHSPos},Q=m.coordsChar(Y,"div");else{var re=m.charCoords(new Oe(m.firstLine(),0),"div");re.left=F.lastHSPos,Q=m.coordsChar(re,"div")}return F.lastHPos=Q.ch,Q},moveByPage:function(m,$,_){var F=$,W=_.repeat;return m.findPosV(F,_.forward?W:-W,"page")},moveByParagraph:function(m,$,_){var F=_.forward?1:-1;return ms(m,$,_.repeat,F)},moveBySentence:function(m,$,_){var F=_.forward?1:-1;return Li(m,$,_.repeat,F)},moveByScroll:function(m,$,_,F){var W=m.getScrollInfo(),B=null,G=_.repeat;G||(G=W.clientHeight/(2*m.defaultTextHeight()));var Y=m.charCoords($,"local");if(_.repeat=G,B=Br.moveByDisplayLines(m,$,_,F),!B)return null;var Q=m.charCoords(B,"local");return m.scrollTo(null,W.top+Q.top-Y.top),B},moveByWords:function(m,$,_){return lr(m,$,_.repeat,!!_.forward,!!_.wordEnd,!!_.bigWord)},moveTillCharacter:function(m,$,_){var F=_.repeat,W=Oo(m,F,_.forward,_.selectedCharacter,$),B=_.forward?-1:1;return Ii(B,_),W?(W.ch+=B,W):null},moveToCharacter:function(m,$,_){var F=_.repeat;return Ii(0,_),Oo(m,F,_.forward,_.selectedCharacter,$)||$},moveToSymbol:function(m,$,_){var F=_.repeat;return Ri(m,F,_.forward,_.selectedCharacter)||$},moveToColumn:function(m,$,_,F){var W=_.repeat;return F.lastHPos=W-1,F.lastHSPos=m.charCoords($,"div").left,Va(m,W)},moveToEol:function(m,$,_,F){return ao(m,$,_,F,!1)},moveToFirstNonWhiteSpaceCharacter:function(m,$){var _=$;return new Oe(_.line,Yt(m.getLine(_.line)))},moveToMatchedSymbol:function(m,$){for(var _=$,F=_.line,W=_.ch,B=m.getLine(F),G;W<B.length;W++)if(G=B.charAt(W),G&&l(G)){var Y=m.getTokenTypeAt(new Oe(F,W+1));if(Y!=="string"&&Y!=="comment")break}if(W<B.length){var Q=/[<>]/.test(B[W])?/[(){}[\]<>]/:/[(){}[\]]/,re=m.findMatchingBracket(new Oe(F,W+1),{bracketRegex:Q});return re.to}return _},moveToStartOfLine:function(m,$){return new Oe($.line,0)},moveToLineOrEdgeOfDocument:function(m,$,_){var F=_.forward?m.lastLine():m.firstLine();return _.repeatIsExplicit&&(F=_.repeat-m.getOption("firstLineNumber")),new Oe(F,Yt(m.getLine(F)))},moveToStartOfDisplayLine:function(m){return m.execCommand("goLineLeft"),m.getCursor()},moveToEndOfDisplayLine:function(m){m.execCommand("goLineRight");var $=m.getCursor();return $.sticky=="before"&&$.ch--,$},textObjectManipulation:function(m,$,_,F){var W={"(":")",")":"(","{":"}","}":"{","[":"]","]":"[","<":">",">":"<"},B={"'":!0,'"':!0,"`":!0},G=_.selectedCharacter;G=="b"?G="(":G=="B"&&(G="{");var Y=!_.textObjectInner,Q,re;if(W[G]){if(re=!0,Q=Rn(m,$,G,Y),!Q){var se=m.getSearchCursor(new RegExp("\\"+G,"g"),$);se.find()&&(Q=Rn(m,se.from(),G,Y))}}else if(B[G])re=!0,Q=mr(m,$,G,Y);else if(G==="W"||G==="w")for(var ye=_.repeat||1;ye-- >0;){var Ce=Xn(m,{inclusive:Y,innerWord:!Y,bigWord:G==="W",noSymbol:G==="W",multiline:!0},Q&&Q.end);Ce&&(Q||(Q=Ce),Q.end=Ce.end)}else if(G==="p")if(Q=ms(m,$,_.repeat,0,Y),_.linewise=!0,F.visualMode)F.visualLine||(F.visualLine=!0);else{var me=F.inputState.operatorArgs;me&&(me.linewise=!0),Q.end.line--}else if(G==="t")Q=oo(m,$,Y);else if(G==="s"){var we=m.getLine($.line);$.ch>0&&w(we[$.ch])&&($.ch-=1);var Le=ta(m,$,_.repeat,1,Y),Re=ta(m,$,_.repeat,-1,Y);d(m.getLine(Re.line)[Re.ch])&&d(m.getLine(Le.line)[Le.ch-1])&&(Re={line:Re.line,ch:Re.ch+1}),Q={start:Re,end:Le}}return Q?m.state.vim.visualMode?an(m,Q.start,Q.end,re):[Q.start,Q.end]:null},repeatLastCharacterSearch:function(m,$,_){var F=We.lastCharacterSearch,W=_.repeat,B=_.forward===F.forward,G=(F.increment?1:0)*(B?-1:1);m.moveH(-G,"char"),_.inclusive=!!B;var Y=Oo(m,W,B,F.selectedCharacter);return Y?(Y.ch+=G,Y):(m.moveH(G,"char"),$)}},Vo={change:function(m,$,_){var F,W,B=m.state.vim,G=_[0].anchor,Y=_[0].head;if(B.visualMode)if($.fullLine)Y.ch=Number.MAX_VALUE,Y.line--,m.setSelection(G,Y),W=m.getSelection(),m.replaceSelection(""),F=G;else{W=m.getSelection();var Q=he("",_.length);m.replaceSelections(Q),F=ht(_[0].head,_[0].anchor)}else{W=m.getRange(G,Y);var re=B.lastEditInputState||{};if(re.motion=="moveByWords"&&!d(W)){var se=/\s+$/.exec(W);se&&re.motionArgs&&re.motionArgs.forward&&(Y=fe(Y,0,-se[0].length),W=W.slice(0,-se[0].length))}$.linewise&&(G=new Oe(G.line,Yt(m.getLine(G.line))),Y.line>G.line&&(Y=new Oe(Y.line-1,Number.MAX_VALUE))),m.replaceRange("",G,Y),F=G}We.registerController.pushText($.registerName,"change",W,$.linewise,_.length>1),_n.enterInsertMode(m,{head:F},m.state.vim)},delete:function(m,$,_){var F,W,B=m.state.vim;if(B.visualBlock){W=m.getSelection();var G=he("",_.length);m.replaceSelections(G),F=ht(_[0].head,_[0].anchor)}else{var Y=_[0].anchor,Q=_[0].head;$.linewise&&Q.line!=m.firstLine()&&Y.line==m.lastLine()&&Y.line==Q.line-1&&(Y.line==m.firstLine()?Y.ch=0:Y=new Oe(Y.line-1,Vt(m,Y.line-1))),W=m.getRange(Y,Q),m.replaceRange("",Y,Q),F=Y,$.linewise&&(F=Br.moveToFirstNonWhiteSpaceCharacter(m,Y))}return We.registerController.pushText($.registerName,"delete",W,$.linewise,B.visualBlock),ue(m,F)},indent:function(m,$,_){var F=m.state.vim,W=F.visualMode?$.repeat:1;if(F.visualBlock){for(var B=m.getOption("tabSize"),G=m.getOption("indentWithTabs")?" ":" ".repeat(B),Y,Q=_.length-1;Q>=0;Q--)if(Y=ht(_[Q].anchor,_[Q].head),$.indentRight)m.replaceRange(G.repeat(W),Y,Y);else{for(var re=m.getLine(Y.line),se=0,ye=0;ye<W;ye++){var Ce=re[Y.ch+se];if(Ce==" ")se++;else{if(Ce!=" ")break;se++;for(var me=1;me<G.length&&(Ce=re[Y.ch+se],Ce===" ");me++)se++}}m.replaceRange("",Y,fe(Y,0,se))}return Y}if(m.indentMore)for(var ye=0;ye<W;ye++)$.indentRight?m.indentMore():m.indentLess();else{var we=_[0].anchor.line,Le=F.visualBlock?_[_.length-1].anchor.line:_[0].head.line;$.linewise&&Le--;for(var Q=we;Q<=Le;Q++)for(var ye=0;ye<W;ye++)m.indentLine(Q,$.indentRight)}return Br.moveToFirstNonWhiteSpaceCharacter(m,_[0].anchor)},indentAuto:function(m,$,_){return m.execCommand("indentAuto"),Br.moveToFirstNonWhiteSpaceCharacter(m,_[0].anchor)},hardWrap:function(m,$,_,F,W){if(m.hardWrap){var B=_[0].anchor.line,G=_[0].head.line;$.linewise&&G--;var Y=m.hardWrap({from:B,to:G});return Y>B&&$.linewise&&Y--,$.keepCursor?F:new Oe(Y,0)}},changeCase:function(m,$,_,F,W){for(var B=m.getSelections(),G=[],Y=$.toLower,Q=0;Q<B.length;Q++){var re=B[Q],se="";if(Y===!0)se=re.toLowerCase();else if(Y===!1)se=re.toUpperCase();else for(var ye=0;ye<re.length;ye++){var Ce=re.charAt(ye);se+=u(Ce)?Ce.toLowerCase():Ce.toUpperCase()}G.push(se)}return m.replaceSelections(G),$.shouldMoveCursor?W:!m.state.vim.visualMode&&$.linewise&&_[0].anchor.line+1==_[0].head.line?Br.moveToFirstNonWhiteSpaceCharacter(m,F):$.linewise?F:ht(_[0].anchor,_[0].head)},yank:function(m,$,_,F){var W=m.state.vim,B=m.getSelection(),G=W.visualMode?ht(W.sel.anchor,W.sel.head,_[0].head,_[0].anchor):F;return We.registerController.pushText($.registerName,"yank",B,$.linewise,W.visualBlock),G}},_n={jumpListWalk:function(m,$,_){if(!_.visualMode){var F=$.repeat,W=$.forward,B=We.jumpList,G=B.move(m,W?F:-F),Y=G?G.find():void 0;Y=Y||m.getCursor(),m.setCursor(Y),m.ace.curOp.command.scrollIntoView="center-animate"}},scroll:function(m,$,_){if(!_.visualMode){var F=$.repeat||1,W=m.defaultTextHeight(),B=m.getScrollInfo().top,G=W*F,Y=$.forward?B+G:B-G,Q=Ve(m.getCursor()),re=m.charCoords(Q,"local");if($.forward)Y>re.top?(Q.line+=(Y-re.top)/W,Q.line=Math.ceil(Q.line),m.setCursor(Q),re=m.charCoords(Q,"local"),m.scrollTo(null,re.top)):m.scrollTo(null,Y);else{var se=Y+m.getScrollInfo().clientHeight;se<re.bottom?(Q.line-=(re.bottom-se)/W,Q.line=Math.floor(Q.line),m.setCursor(Q),re=m.charCoords(Q,"local"),m.scrollTo(null,re.bottom-m.getScrollInfo().clientHeight)):m.scrollTo(null,Y)}}},scrollToCursor:function(m,$){var _=m.getCursor().line,F=m.charCoords(new Oe(_,0),"local"),W=m.getScrollInfo().clientHeight,B=F.top;switch($.position){case"center":B=F.bottom-W/2;break;case"bottom":var G=new Oe(_,m.getLine(_).length-1),Y=m.charCoords(G,"local"),Q=Y.bottom-B;B=B-W+Q}m.scrollTo(null,B)},replayMacro:function(m,$,_){var F=$.selectedCharacter,W=$.repeat,B=We.macroModeState;for(F=="@"?F=B.latestRegister:B.latestRegister=F;W--;)bs(m,_,B,F)},enterMacroRecordMode:function(m,$){var _=We.macroModeState,F=$.selectedCharacter;We.registerController.isValidRegister(F)&&_.enterMacroRecordMode(m,F)},toggleOverwrite:function(m){m.state.overwrite?(m.toggleOverwrite(!1),m.setOption("keyMap","vim-insert"),Fe.signal(m,"vim-mode-change",{mode:"insert"})):(m.toggleOverwrite(!0),m.setOption("keyMap","vim-replace"),Fe.signal(m,"vim-mode-change",{mode:"replace"}))},enterInsertMode:function(m,$,_){if(!m.getOption("readOnly")){_.insertMode=!0,_.insertModeRepeat=$&&$.repeat||1;var F=$?$.insertAt:null,W=_.sel,B=$.head||m.getCursor("head"),G=m.listSelections().length;if(F=="eol")B=new Oe(B.line,Vt(m,B.line));else if(F=="bol")B=new Oe(B.line,0);else if(F=="charAfter"){var Y=C(m,B,fe(B,0,1));B=Y.end}else if(F=="firstNonBlank"){var Y=C(m,B,Br.moveToFirstNonWhiteSpaceCharacter(m,B));B=Y.end}else if(F=="startOfSelectedArea"){if(!_.visualMode)return;_.visualBlock?(B=new Oe(Math.min(W.head.line,W.anchor.line),Math.min(W.head.ch,W.anchor.ch)),G=Math.abs(W.head.line-W.anchor.line)+1):W.head.line<W.anchor.line?B=W.head:B=new Oe(W.anchor.line,0)}else if(F=="endOfSelectedArea"){if(!_.visualMode)return;_.visualBlock?(B=new Oe(Math.min(W.head.line,W.anchor.line),Math.max(W.head.ch,W.anchor.ch)+1),G=Math.abs(W.head.line-W.anchor.line)+1):W.head.line>=W.anchor.line?B=fe(W.head,0,1):B=new Oe(W.anchor.line,0)}else if(F=="inplace"){if(_.visualMode)return}else F=="lastEdit"&&(B=lo(m)||B);m.setOption("disableInput",!1),$&&$.replace?(m.toggleOverwrite(!0),m.setOption("keyMap","vim-replace"),Fe.signal(m,"vim-mode-change",{mode:"replace"})):(m.toggleOverwrite(!1),m.setOption("keyMap","vim-insert"),Fe.signal(m,"vim-mode-change",{mode:"insert"})),We.macroModeState.isPlaying||(m.on("change",co),_.insertEnd&&_.insertEnd.clear(),_.insertEnd=m.setBookmark(B,{insertLeft:!0}),Fe.on(m.getInputField(),"keydown",Cs)),_.visualMode&&mn(m),Sr(m,B,G)}},toggleVisualMode:function(m,$,_){var F=$.repeat,W=m.getCursor(),B;if(_.visualMode)_.visualLine^$.linewise||_.visualBlock^$.blockwise?(_.visualLine=!!$.linewise,_.visualBlock=!!$.blockwise,Fe.signal(m,"vim-mode-change",{mode:"visual",subMode:_.visualLine?"linewise":_.visualBlock?"blockwise":""}),zn(m)):mn(m);else{_.visualMode=!0,_.visualLine=!!$.linewise,_.visualBlock=!!$.blockwise,B=ue(m,new Oe(W.line,W.ch+F-1));var G=C(m,W,B);_.sel={anchor:G.start,head:G.end},Fe.signal(m,"vim-mode-change",{mode:"visual",subMode:_.visualLine?"linewise":_.visualBlock?"blockwise":""}),zn(m),Yr(m,_,"<",ht(W,B)),Yr(m,_,">",qt(W,B))}},reselectLastSelection:function(m,$,_){var F=_.lastSelection;if(_.visualMode&&Pt(m,_),F){var W=F.anchorMark.find(),B=F.headMark.find();if(!W||!B)return;_.sel={anchor:W,head:B},_.visualMode=!0,_.visualLine=F.visualLine,_.visualBlock=F.visualBlock,zn(m),Yr(m,_,"<",ht(W,B)),Yr(m,_,">",qt(W,B)),Fe.signal(m,"vim-mode-change",{mode:"visual",subMode:_.visualLine?"linewise":_.visualBlock?"blockwise":""})}},joinLines:function(m,$,_){var F,W;if(_.visualMode){if(F=m.getCursor("anchor"),W=m.getCursor("head"),Je(W,F)){var B=W;W=F,F=B}W.ch=Vt(m,W.line)-1}else{var G=Math.max($.repeat,2);F=m.getCursor(),W=ue(m,new Oe(F.line+G-1,1/0))}for(var Y=0,Q=F.line;Q<W.line;Q++){Y=Vt(m,F.line);var re="",se=0;if(!$.keepSpaces){var ye=m.getLine(F.line+1);se=ye.search(/\S/),se==-1?se=ye.length:re=" "}m.replaceRange(re,new Oe(F.line,Y),new Oe(F.line+1,se))}var Ce=ue(m,new Oe(F.line,Y));_.visualMode&&mn(m,!1),m.setCursor(Ce)},newLineAndEnterInsertMode:function(m,$,_){_.insertMode=!0;var F=Ve(m.getCursor());if(F.line===m.firstLine()&&!$.after)m.replaceRange(`
1445
+ `,new Oe(m.firstLine(),0)),m.setCursor(m.firstLine(),0);else{F.line=$.after?F.line:F.line-1,F.ch=Vt(m,F.line),m.setCursor(F);var W=Fe.commands.newlineAndIndentContinueComment||Fe.commands.newlineAndIndent;W(m)}this.enterInsertMode(m,{repeat:$.repeat},_)},paste:function(m,$,_){var F=this,W=We.registerController.getRegister($.registerName),B=function(){var G=W.toString();F.continuePaste(m,$,_,G,W)};$.registerName==="+"&&typeof navigator<"u"&&typeof navigator.clipboard<"u"&&typeof navigator.clipboard.readText=="function"?navigator.clipboard.readText().then(function(G){F.continuePaste(m,$,_,G,W)},function(){B()}):B()},continuePaste:function(m,$,_,F,W){var B=Ve(m.getCursor());if(F){if($.matchIndent){var G=m.getOption("tabSize"),Y=function(hn){var V=hn.split(" ").length-1,X=hn.split(" ").length-1;return V*G+X*1},Q=m.getLine(m.getCursor().line),re=Y(Q.match(/^\s*/)[0]),se=F.replace(/\n$/,""),ye=F!==se,Ce=Y(F.match(/^\s*/)[0]),F=se.replace(/^\s*/gm,function(hn){var V=re+(Y(hn)-Ce);if(V<0)return"";if(m.getOption("indentWithTabs")){var X=Math.floor(V/G);return Array(X+1).join(" ")}return Array(V+1).join(" ")});F+=ye?`
1446
+ `:""}if($.repeat>1)var F=Array($.repeat+1).join(F);var me=W.linewise,we=W.blockwise;if(we){F=F.split(`
1447
+ `),me&&F.pop();for(var Le=0;Le<F.length;Le++)F[Le]=F[Le]==""?" ":F[Le];B.ch+=$.after?1:0,B.ch=Math.min(Vt(m,B.line),B.ch)}else me?_.visualMode?F=_.visualLine?F.slice(0,-1):`
1448
+ `+F.slice(0,F.length-1)+`
1449
+ `:$.after?(F=`
1450
+ `+F.slice(0,F.length-1),B.ch=Vt(m,B.line)):B.ch=0:B.ch+=$.after?1:0;var Re;if(_.visualMode){_.lastPastedText=F;var ze,rt=He(m,_),Ke=rt[0],Qe=rt[1],on=m.getSelection(),it=m.listSelections(),un=new Array(it.length).join("1").split("1");_.lastSelection&&(ze=_.lastSelection.headMark.find()),We.registerController.unnamedRegister.setText(on),we?(m.replaceSelections(un),Qe=new Oe(Ke.line+F.length-1,Ke.ch),m.setCursor(Ke),tr(m,Qe),m.replaceSelections(F),Re=Ke):_.visualBlock?(m.replaceSelections(un),m.setCursor(Ke),m.replaceRange(F,Ke,Ke),Re=Ke):(m.replaceRange(F,Ke,Qe),Re=m.posFromIndex(m.indexFromPos(Ke)+F.length-1)),ze&&(_.lastSelection.headMark=m.setBookmark(ze)),me&&(Re.ch=0)}else if(we){m.setCursor(B);for(var Le=0;Le<F.length;Le++){var ft=B.line+Le;ft>m.lastLine()&&m.replaceRange(`
1451
+ `,new Oe(ft,0));var bt=Vt(m,ft);bt<B.ch&&Bn(m,ft,B.ch)}m.setCursor(B),tr(m,new Oe(B.line+F.length-1,B.ch)),m.replaceSelections(F),Re=B}else if(m.replaceRange(F,B),me){var ft=$.after?B.line+1:B.line;Re=new Oe(ft,Yt(m.getLine(ft)))}else Re=Ve(B),/\n/.test(F)||(Re.ch+=F.length-($.after?1:0));_.visualMode&&mn(m,!1),m.setCursor(Re)}},undo:function(m,$){m.operation(function(){qe(m,Fe.commands.undo,$.repeat)(),m.setCursor(ue(m,m.getCursor("start")))})},redo:function(m,$){qe(m,Fe.commands.redo,$.repeat)()},setRegister:function(m,$,_){_.inputState.registerName=$.selectedCharacter},insertRegister:function(m,$,_){var F=$.selectedCharacter,W=We.registerController.getRegister(F),B=W&&W.toString();B&&m.replaceSelection(B)},oneNormalCommand:function(m,$,_){Wr(m,!0),_.insertModeReturn=!0,Fe.on(m,"vim-command-done",function F(){_.visualMode||(_.insertModeReturn&&(_.insertModeReturn=!1,_.insertMode||_n.enterInsertMode(m,{},_)),Fe.off(m,"vim-command-done",F))})},setMark:function(m,$,_){var F=$.selectedCharacter;Yr(m,_,F,m.getCursor())},replace:function(m,$,_){var F=$.selectedCharacter,W=m.getCursor(),B,G,Y=m.listSelections();if(_.visualMode)W=m.getCursor("start"),G=m.getCursor("end");else{var Q=m.getLine(W.line);B=W.ch+$.repeat,B>Q.length&&(B=Q.length),G=new Oe(W.line,B)}var re=C(m,W,G);if(W=re.start,G=re.end,F==`
1452
+ `)_.visualMode||m.replaceRange("",W,G),(Fe.commands.newlineAndIndentContinueComment||Fe.commands.newlineAndIndent)(m);else{var se=m.getRange(W,G);if(se=se.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,F),se=se.replace(/[^\n]/g,F),_.visualBlock){var ye=new Array(m.getOption("tabSize")+1).join(" ");se=m.getSelection(),se=se.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,F),se=se.replace(/\t/g,ye).replace(/[^\n]/g,F).split(`
1453
+ `),m.replaceSelections(se)}else m.replaceRange(se,W,G);_.visualMode?(W=Je(Y[0].anchor,Y[0].head)?Y[0].anchor:Y[0].head,m.setCursor(W),mn(m,!1)):m.setCursor(fe(G,0,-1))}},incrementNumberToken:function(m,$){for(var _=m.getCursor(),F=m.getLine(_.line),W=/(-?)(?:(0x)([\da-f]+)|(0b|0|)(\d+))/gi,B,G,Y,Q;(B=W.exec(F))!==null&&(G=B.index,Y=G+B[0].length,!(_.ch<Y)););if(!(!$.backtrack&&Y<=_.ch)&&B){var re=B[2]||B[4],se=B[3]||B[5],ye=$.increase?1:-1,Ce={"0b":2,0:8,"":10,"0x":16}[re.toLowerCase()],me=parseInt(B[1]+se,Ce)+ye*$.repeat;Q=me.toString(Ce);var we=re?new Array(se.length-Q.length+1+B[1].length).join("0"):"";Q.charAt(0)==="-"?Q="-"+re+we+Q.substr(1):Q=re+we+Q;var Le=new Oe(_.line,G),Re=new Oe(_.line,Y);m.replaceRange(Q,Le,Re),m.setCursor(new Oe(_.line,G+Q.length-1))}},repeatLastEdit:function(m,$,_){var F=_.lastEditInputState;if(F){var W=$.repeat;W&&$.repeatIsExplicit?_.lastEditInputState.repeatOverride=W:W=_.lastEditInputState.repeatOverride||W,ia(m,_,W,!1)}},indent:function(m,$){m.indentLine(m.getCursor().line,$.indentRight)},exitInsertMode:Wr},Zr={"(":"bracket",")":"bracket","{":"bracket","}":"bracket","[":"section","]":"section","*":"comment","/":"comment",m:"method",M:"method","#":"preprocess"},Jr={bracket:{isComplete:function(m){if(m.nextCh===m.symb){if(m.depth++,m.depth>=1)return!0}else m.nextCh===m.reverseSymb&&m.depth--;return!1}},section:{init:function(m){m.curMoveThrough=!0,m.symb=(m.forward?"]":"[")===m.symb?"{":"}"},isComplete:function(m){return m.index===0&&m.nextCh===m.symb}},comment:{isComplete:function(m){var $=m.lastCh==="*"&&m.nextCh==="/";return m.lastCh=m.nextCh,$}},method:{init:function(m){m.symb=m.symb==="m"?"{":"}",m.reverseSymb=m.symb==="{"?"}":"{"},isComplete:function(m){return m.nextCh===m.symb}},preprocess:{init:function(m){m.index=0},isComplete:function(m){if(m.nextCh==="#"){var $=m.lineText.match(/^#(\w+)/)[1];if($==="endif"){if(m.forward&&m.depth===0)return!0;m.depth++}else if($==="if"){if(!m.forward&&m.depth===0)return!0;m.depth--}if($==="else"&&m.depth===0)return!0}return!1}}};R("pcre",!0,"boolean"),Oi.prototype={getQuery:function(){return We.query},setQuery:function(m){We.query=m},getOverlay:function(){return this.searchOverlay},setOverlay:function(m){this.searchOverlay=m},isReversed:function(){return We.isReversed},setReversed:function(m){We.isReversed=m},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(m){this.annotate=m}};var vi={"\\n":`
1454
+ `,"\\r":"\r","\\t":" "},rr={"\\/":"/","\\\\":"\\","\\n":`
1455
+ `,"\\r":"\r","\\t":" ","\\&":"&"},ir=0,cr=function(){this.buildCommandMap_()};cr.prototype={processCommand:function(m,$,_){var F=this;m.operation(function(){m.curOp.isVimOp=!0,F._processCommand(m,$,_)})},_processCommand:function(m,$,_){var F=m.state.vim,W=We.registerController.getRegister(":"),B=W.toString(),G=new Fe.StringStream($);W.setText($);var Y=_||{};Y.input=$;try{this.parseInput_(m,G,Y)}catch(se){throw It(m,se.toString()),se}F.visualMode&&mn(m);var Q,re;if(!Y.commandName)Y.line!==void 0&&(re="move");else if(Q=this.matchCommand_(Y.commandName),Q){if(re=Q.name,Q.excludeFromCommandHistory&&W.setText(B),this.parseCommandArgs_(G,Y,Q),Q.type=="exToKey"){E(m,Q.toKeys,Q);return}if(Q.type=="exToEx"){this.processCommand(m,Q.toInput);return}}if(!re){It(m,'Not an editor command ":'+$+'"');return}try{As[re](m,Y),(!Q||!Q.possiblyAsync)&&Y.callback&&Y.callback()}catch(se){throw It(m,se.toString()),se}},parseInput_:function(m,$,_){if($.eatWhile(":"),$.eat("%")?(_.line=m.firstLine(),_.lineEnd=m.lastLine()):(_.line=this.parseLineSpec_(m,$),_.line!==void 0&&$.eat(",")&&(_.lineEnd=this.parseLineSpec_(m,$))),_.line==null)if(m.state.vim.visualMode){var F=Pr(m,m.state.vim,"<");_.selectionLine=F&&F.line,F=Pr(m,m.state.vim,">"),_.selectionLineEnd=F&&F.line}else _.selectionLine=m.getCursor().line;else _.selectionLine=_.line,_.selectionLineEnd=_.lineEnd;var W=$.match(/^(\w+|!!|@@|[!#&*<=>@~])/);return W?_.commandName=W[1]:_.commandName=$.match(/.*/)[0],_},parseLineSpec_:function(m,$){var _=$.match(/^(\d+)/);if(_)return parseInt(_[1],10)-1;switch($.next()){case".":return this.parseLineSpecOffset_($,m.getCursor().line);case"$":return this.parseLineSpecOffset_($,m.lastLine());case"'":var F=$.next(),W=Pr(m,m.state.vim,F);if(!W)throw new Error("Mark not set");return this.parseLineSpecOffset_($,W.line);case"-":case"+":return $.backUp(1),this.parseLineSpecOffset_($,m.getCursor().line);default:return $.backUp(1),void 0}},parseLineSpecOffset_:function(m,$){var _=m.match(/^([+-])?(\d+)/);if(_){var F=parseInt(_[2],10);_[1]=="-"?$-=F:$+=F}return $},parseCommandArgs_:function(m,$,_){if(!m.eol()){$.argString=m.match(/.*/)[0];var F=_.argDelimiter||/\s+/,W=qr($.argString).split(F);W.length&&W[0]&&($.args=W)}},matchCommand_:function(m){for(var $=m.length;$>0;$--){var _=m.substring(0,$);if(this.commandMap_[_]){var F=this.commandMap_[_];if(F.name.indexOf(m)===0)return F}}return null},buildCommandMap_:function(){this.commandMap_={};for(var m=0;m<Qr.length;m++){var $=Qr[m],_=$.shortName||$.name;this.commandMap_[_]=$}},map:function(m,$,_,F){if(m!=":"&&m.charAt(0)==":"){if(_)throw Error("Mode not supported for ex mappings");var W=m.substring(1);$!=":"&&$.charAt(0)==":"?this.commandMap_[W]={name:W,type:"exToEx",toInput:$.substring(1),user:!0}:this.commandMap_[W]={name:W,type:"exToKey",toKeys:$,user:!0}}else{var B={keys:m,type:"keyToKey",toKeys:$,noremap:!!F};_&&(B.context=_),yn.unshift(B)}},unmap:function(m,$){if(m!=":"&&m.charAt(0)==":"){if($)throw Error("Mode not supported for ex mappings");var _=m.substring(1);if(this.commandMap_[_]&&this.commandMap_[_].user)return delete this.commandMap_[_],!0}else for(var F=m,W=0;W<yn.length;W++)if(F==yn[W].keys&&yn[W].context===$)return yn.splice(W,1),!0}};var As={colorscheme:function(m,$){if(!$.args||$.args.length<1){It(m,m.getOption("theme"));return}m.setOption("theme",$.args[0])},map:function(m,$,_,F){var W=$.args;if(!W||W.length<2){m&&It(m,"Invalid mapping: "+$.input);return}ur.map(W[0],W[1],_,F)},imap:function(m,$){this.map(m,$,"insert")},nmap:function(m,$){this.map(m,$,"normal")},vmap:function(m,$){this.map(m,$,"visual")},omap:function(m,$){this.map(m,$,"operatorPending")},noremap:function(m,$){this.map(m,$,void 0,!0)},inoremap:function(m,$){this.map(m,$,"insert",!0)},nnoremap:function(m,$){this.map(m,$,"normal",!0)},vnoremap:function(m,$){this.map(m,$,"visual",!0)},onoremap:function(m,$){this.map(m,$,"operatorPending",!0)},unmap:function(m,$,_){var F=$.args;(!F||F.length<1||!ur.unmap(F[0],_))&&m&&It(m,"No such mapping: "+$.input)},mapclear:function(m,$){dt.mapclear()},imapclear:function(m,$){dt.mapclear("insert")},nmapclear:function(m,$){dt.mapclear("normal")},vmapclear:function(m,$){dt.mapclear("visual")},omapclear:function(m,$){dt.mapclear("operatorPending")},move:function(m,$){An.processCommand(m,m.state.vim,{type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0},repeatOverride:$.line+1})},set:function(m,$){var _=$.args,F=$.setCfg||{};if(!_||_.length<1){m&&It(m,"Invalid mapping: "+$.input);return}var W=_[0].split("="),B=W[0],G=W[1],Y=!1,Q=!1;if(B.charAt(B.length-1)=="?"){if(G)throw Error("Trailing characters: "+$.argString);B=B.substring(0,B.length-1),Y=!0}else B.charAt(B.length-1)=="!"&&(B=B.substring(0,B.length-1),Q=!0);G===void 0&&B.substring(0,2)=="no"&&(B=B.substring(2),G=!1);var re=Rt[B]&&Rt[B].type=="boolean";if(re&&(Q?G=!k(B,m,F):G==null&&(G=!0)),!re&&G===void 0||Y){var se=k(B,m,F);se instanceof Error?It(m,se.message):se===!0||se===!1?It(m," "+(se?"":"no")+B):It(m," "+B+"="+se)}else{var ye=M(B,G,m,F);ye instanceof Error&&It(m,ye.message)}},setlocal:function(m,$){$.setCfg={scope:"local"},this.set(m,$)},setglobal:function(m,$){$.setCfg={scope:"global"},this.set(m,$)},registers:function(m,$){var _=$.args,F=We.registerController.registers,W=`----------Registers----------
1456
+
1457
+ `;if(_){var B;_=_.join("");for(var G=0;G<_.length;G++)if(B=_.charAt(G),!!We.registerController.isValidRegister(B)){var Y=F[B]||new j;W+='"'+B+" "+Y.toString()+`
1458
+ `}}else for(var B in F){var Q=F[B].toString();Q.length&&(W+='"'+B+" "+Q+`
1459
+ `)}It(m,W)},sort:function(m,$){function _(){if($.argString){var ft=new Fe.StringStream($.argString);if(ft.eat("!")&&(B=!0),ft.eol())return;if(!ft.eatSpace())return"Invalid arguments";var bt=ft.match(/([dinuox]+)?\s*(\/.+\/)?\s*/);if(!bt&&!ft.eol())return"Invalid arguments";if(bt[1]){G=bt[1].indexOf("i")!=-1,Y=bt[1].indexOf("u")!=-1;var Hn=bt[1].indexOf("d")!=-1||bt[1].indexOf("n")!=-1&&1,or=bt[1].indexOf("x")!=-1&&1,hn=bt[1].indexOf("o")!=-1&&1;if(Hn+or+hn>1)return"Invalid arguments";Q=Hn&&"decimal"||or&&"hex"||hn&&"octal"}bt[2]&&(re=new RegExp(bt[2].substr(1,bt[2].length-2),G?"i":""))}}function F(ft,bt){if(B){var Hn;Hn=ft,ft=bt,bt=Hn}G&&(ft=ft.toLowerCase(),bt=bt.toLowerCase());var or=Q&&Re.exec(ft),hn=Q&&Re.exec(bt);return or?(or=parseInt((or[1]+or[2]).toLowerCase(),ze),hn=parseInt((hn[1]+hn[2]).toLowerCase(),ze),or-hn):ft<bt?-1:1}function W(ft,bt){if(B){var Hn;Hn=ft,ft=bt,bt=Hn}return G&&(ft[0]=ft[0].toLowerCase(),bt[0]=bt[0].toLowerCase()),ft[0]<bt[0]?-1:1}var B,G,Y,Q,re,se=_();if(se){It(m,se+": "+$.argString);return}var ye=$.line||m.firstLine(),Ce=$.lineEnd||$.line||m.lastLine();if(ye!=Ce){var me=new Oe(ye,0),we=new Oe(Ce,Vt(m,Ce)),Le=m.getRange(me,we).split(`
1460
+ `),Re=re||(Q=="decimal"?/(-?)([\d]+)/:Q=="hex"?/(-?)(?:0x)?([0-9a-f]+)/i:Q=="octal"?/([0-7]+)/:null),ze=Q=="decimal"?10:Q=="hex"?16:Q=="octal"?8:null,rt=[],Ke=[];if(Q||re)for(var Qe=0;Qe<Le.length;Qe++){var on=re?Le[Qe].match(re):null;on&&on[0]!=""?rt.push(on):!re&&Re.exec(Le[Qe])?rt.push(Le[Qe]):Ke.push(Le[Qe])}else Ke=Le;if(rt.sort(re?W:F),re)for(var Qe=0;Qe<rt.length;Qe++)rt[Qe]=rt[Qe].input;else Q||Ke.sort(F);if(Le=B?rt.concat(Ke):Ke.concat(rt),Y){var it=Le,un;Le=[];for(var Qe=0;Qe<it.length;Qe++)it[Qe]!=un&&Le.push(it[Qe]),un=it[Qe]}m.replaceRange(Le.join(`
1461
+ `),me,we)}},vglobal:function(m,$){this.global(m,$)},normal:function(m,$){var _=$.argString;if(_&&_[0]=="!"&&(_=_.slice(1),Qt=!0),_=_.trimStart(),!_){It(m,"Argument is required.");return}var F=$.line;if(typeof F=="number")for(var W=isNaN($.lineEnd)?F:$.lineEnd,B=F;B<=W;B++)m.setCursor(B,0),E(m,$.argString.trimStart()),m.state.vim.insertMode&&Wr(m,!0);else E(m,$.argString.trimStart()),m.state.vim.insertMode&&Wr(m,!0)},global:function(m,$){var _=$.argString;if(!_){It(m,"Regular Expression missing from global");return}var F=$.commandName[0]==="v";_[0]==="!"&&$.commandName[0]==="g"&&(F=!0,_=_.slice(1));var W=$.line!==void 0?$.line:m.firstLine(),B=$.lineEnd||$.line||m.lastLine(),G=vr(_),Y=_,Q;if(G.length&&(Y=G[0],Q=G.slice(1,G.length).join("/")),Y)try{nn(m,Y,!0,!0)}catch{It(m,"Invalid regex: "+Y);return}for(var re=vn(m).getQuery(),se=[],ye=W;ye<=B;ye++){var Ce=m.getLine(ye),me=re.test(Ce);me!==F&&se.push(Q?m.getLineHandle(ye):Ce)}if(!Q){It(m,se.join(`
1462
+ `));return}var we=0,Le=function(){if(we<se.length){var Re=se[we++],ze=m.getLineNumber(Re);if(ze==null){Le();return}var rt=ze+1+Q;ur.processCommand(m,rt,{callback:Le})}else m.releaseLineHandles&&m.releaseLineHandles()};Le()},substitute:function(m,$){if(!m.getSearchCursor)throw new Error("Search feature not available. Requires searchcursor.js or any other getSearchCursor implementation.");var _=$.argString,F=_?Ni(_,_[0]):[],W,B="",G,Y,Q,re=!1,se=!1;if(F.length)W=F[0],k("pcre")&&W!==""&&(W=new RegExp(W).source),B=F[1],B!==void 0&&(k("pcre")?B=qa(B.replace(/([^\\])&/g,"$1$$&")):B=Ka(B),We.lastSubstituteReplacePart=B),G=F[2]?F[2].split(" "):[];else if(_&&_.length){It(m,"Substitutions should be of the form :s/pattern/replace/");return}if(G&&(Y=G[0],Q=parseInt(G[1]),Y&&(Y.indexOf("c")!=-1&&(re=!0),Y.indexOf("g")!=-1&&(se=!0),k("pcre")?W=W+"/"+Y:W=W.replace(/\//g,"\\/")+"/"+Y)),W)try{nn(m,W,!0,!0)}catch{It(m,"Invalid regex: "+W);return}if(B=B||We.lastSubstituteReplacePart,B===void 0){It(m,"No previous substitute regular expression");return}var ye=vn(m),Ce=ye.getQuery(),me=$.line!==void 0?$.line:m.getCursor().line,we=$.lineEnd||me;me==m.firstLine()&&we==m.lastLine()&&(we=1/0),Q&&(me=we,we=me+Q-1);var Le=ue(m,new Oe(me,0)),Re=m.getSearchCursor(Ce,Le);Do(m,re,se,me,we,Re,Ce,B,$.callback)},startinsert:function(m,$){E(m,$.argString=="!"?"A":"i",{})},redo:Fe.commands.redo,undo:Fe.commands.undo,write:function(m){Fe.commands.save?Fe.commands.save(m):m.save&&m.save()},nohlsearch:function(m){No(m)},yank:function(m){var $=Ve(m.getCursor()),_=$.line,F=m.getLine(_);We.registerController.pushText("0","yank",F,!0,!0)},delete:function(m,$){var _=$.selectionLine,F=isNaN($.selectionLineEnd)?_:$.selectionLineEnd;Vo.delete(m,{linewise:!0},[{anchor:new Oe(_,0),head:new Oe(F+1,0)}])},join:function(m,$){var _=$.selectionLine,F=isNaN($.selectionLineEnd)?_:$.selectionLineEnd;m.setCursor(new Oe(_,0)),_n.joinLines(m,{repeat:F-_},m.state.vim)},delmarks:function(m,$){if(!$.argString||!qr($.argString)){It(m,"Argument required");return}for(var _=m.state.vim,F=new Fe.StringStream(qr($.argString));!F.eol();){F.eatSpace();var W=F.pos;if(!F.match(/[a-zA-Z]/,!1)){It(m,"Invalid argument: "+$.argString.substring(W));return}var B=F.next();if(F.match("-",!0)){if(!F.match(/[a-zA-Z]/,!1)){It(m,"Invalid argument: "+$.argString.substring(W));return}var G=B,Y=F.next();if(!(c(G)&&c(Y)||u(G)&&u(Y))){It(m,"Invalid argument: "+G+"-");return}var Q=G.charCodeAt(0),re=Y.charCodeAt(0);if(Q>=re){It(m,"Invalid argument: "+$.argString.substring(W));return}for(var se=0;se<=re-Q;se++){var ye=String.fromCharCode(Q+se);delete _.marks[ye]}}else delete _.marks[B]}}},ur=new cr;R("insertModeEscKeysTimeout",200,"number"),Fe.Vim=dt;var br={return:"CR",backspace:"BS",delete:"Del",esc:"Esc",left:"Left",right:"Right",up:"Up",down:"Down",space:"Space",insert:"Ins",home:"Home",end:"End",pageup:"PageUp",pagedown:"PageDown",enter:"CR"},ei=dt.handleKey.bind(dt);dt.handleKey=function(m,$,_){return m.operation(function(){return ei(m,$,_)},!0)},O(),r.CodeMirror=Fe;var ti=dt.maybeInitVimState_;r.handler={$id:"ace/keyboard/vim",drawCursor:function(m,$,_,F,W){var B=this.state.vim||{},G=_.characterWidth,Y=_.lineHeight,Q=$.top,re=$.left;if(!B.insertMode){var se=F.cursor?Zn.comparePoints(F.cursor,F.start)<=0:W.selection.isBackwards()||W.selection.isEmpty();!se&&re>G&&(re-=G)}!B.insertMode&&B.status&&(Y/=2,Q+=Y),Fi.translate(m,re,Q),Fi.setStyle(m.style,"width",G+"px"),Fi.setStyle(m.style,"height",Y+"px")},$getDirectionForHighlight:function(m){var $=m.state.cm,_=ti($);if(!_.insertMode)return m.session.selection.isBackwards()||m.session.selection.isEmpty()},handleKeyboard:function(m,$,_,F,W){var B=m.editor,G=B.state.cm,Y=ti(G);if(F!=-1){if(Y.insertMode||($==-1?(_.charCodeAt(0)>255&&m.inputKey&&(_=m.inputKey,_&&m.inputHash==4&&(_=_.toUpperCase())),m.inputChar=_):$==4||$==0?m.inputKey==_&&m.inputHash==$&&m.inputChar?(_=m.inputChar,$=-1):(m.inputChar=null,m.inputKey=_,m.inputHash=$):m.inputChar=m.inputKey=null),G.state.overwrite&&Y.insertMode&&_=="backspace"&&$==0)return{command:"gotoleft"};if(_=="c"&&$==1&&!po.isMac&&B.getCopyText())return B.once("copy",function(){Y.insertMode?B.selection.clearSelection():G.operation(function(){mn(G)})}),{command:"null",passEvent:!0};if(_=="esc"&&!Y.insertMode&&!Y.visualMode&&!G.ace.inMultiSelectMode){var Q=vn(G),re=Q.getOverlay();re&&G.removeOverlay(re)}if($==-1||$&1||$===0&&_.length>1){var se=Y.insertMode,ye=ks($,_,W||{},Y);Y.status==null&&(Y.status="");var Ce=uo(G,ye,"user");return Y=ti(G),Ce&&Y.status!=null?Y.status+=ye:Y.status==null&&(Y.status=""),G._signal("changeStatus"),!Ce&&($!=-1||se)?void 0:{command:"null",passEvent:!Ce}}}},attach:function(m){function $(){var F=ti(_).insertMode;_.ace.renderer.setStyle("normal-mode",!F),m.textInput.setCommandMode(!F),m.renderer.$keepTextAreaAtCursor=F,m.renderer.$blockCursor=!F}m.state||(m.state={});var _=new Fe(m);m.state.cm=_,m.$vimModeHandler=this,h(_),ti(_).status=null,_.on("vim-command-done",function(){_.virtualSelectionMode()||(ti(_).status=null,_.ace._signal("changeStatus"),_.ace.session.markUndoGroup())}),_.on("changeStatus",function(){_.ace.renderer.updateCursor(),_.ace._signal("changeStatus")}),_.on("vim-mode-change",function(){_.virtualSelectionMode()||($(),_._signal("changeStatus"))}),$(),m.renderer.$cursorLayer.drawCursor=this.drawCursor.bind(_)},detach:function(m){var $=m.state.cm;p($),$.destroy(),m.state.cm=null,m.$vimModeHandler=null,m.renderer.$cursorLayer.drawCursor=null,m.renderer.setStyle("normal-mode",!1),m.textInput.setCommandMode(!1),m.renderer.$keepTextAreaAtCursor=!0},getStatusText:function(m){var $=m.state.cm,_=ti($);if(_.insertMode)return"INSERT";var F="";return _.visualMode&&(F+="VISUAL",_.visualLine&&(F+=" LINE"),_.visualBlock&&(F+=" BLOCK")),_.status&&(F+=(F?" ":"")+_.status),F}},dt.defineOption({name:"wrap",set:function(m,$){$&&$.ace.setOption("wrap",m)},type:"boolean"},!1),dt.defineEx("write","w",function(){console.log(":write is not implemented")}),yn.push({keys:"zc",type:"action",action:"fold",actionArgs:{open:!1}},{keys:"zC",type:"action",action:"fold",actionArgs:{open:!1,all:!0}},{keys:"zo",type:"action",action:"fold",actionArgs:{open:!0}},{keys:"zO",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"za",type:"action",action:"fold",actionArgs:{toggle:!0}},{keys:"zA",type:"action",action:"fold",actionArgs:{toggle:!0,all:!0}},{keys:"zf",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"zd",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"<C-A-k>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAbove"}},{keys:"<C-A-j>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelow"}},{keys:"<C-A-S-k>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAboveSkipCurrent"}},{keys:"<C-A-S-j>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelowSkipCurrent"}},{keys:"<C-A-h>",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreBefore"}},{keys:"<C-A-l>",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreAfter"}},{keys:"<C-A-S-h>",type:"action",action:"aceCommand",actionArgs:{name:"selectNextBefore"}},{keys:"<C-A-S-l>",type:"action",action:"aceCommand",actionArgs:{name:"selectNextAfter"}}),yn.push({keys:"gq",type:"operator",operator:"hardWrap"}),dt.defineOperator("hardWrap",function(m,$,_,F,W){var B=_[0].anchor.line,G=_[0].head.line;return $.linewise&&G--,Zi(m.ace,{startRow:B,endRow:G}),Oe(G,0)}),R("textwidth",void 0,"number",["tw"],function(m,$){if($!==void 0){if(m===void 0){var _=$.ace.getOption("printMarginColumn");return _}var F=Math.round(m);F>1&&$.ace.setOption("printMarginColumn",F)}}),_n.aceCommand=function(m,$,_){m.vimCmd=$,m.ace.inVirtualSelectionMode?m.ace.on("beforeEndOperation",pi):pi(null,m.ace)},_n.fold=function(m,$,_){m.ace.execCommand(["toggleFoldWidget","toggleFoldWidget","foldOther","unfoldall"][($.all?2:0)+($.open?1:0)])},fo=yn.length,r.handler.defaultKeymap=yn,r.handler.actions=_n,r.Vim=dt}),function(){ace.require(["ace/keyboard/vim"],function(e){n&&(n.exports=e)})}()}(Jg)),Jg.exports}DC();var Il={exports:{}};/**
1463
+ * @license
1464
+ * Lodash <https://lodash.com/>
1465
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
1466
+ * Released under MIT license <https://lodash.com/license>
1467
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
1468
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
1469
+ */var FC=Il.exports,tf;function PC(){return tf||(tf=1,function(n,t){(function(){var e,r="4.17.21",v=200,f="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",y="Expected a function",C="Invalid `variable` option passed into `_.template`",h="__lodash_hash_undefined__",p=500,s="__lodash_placeholder__",a=1,c=2,l=4,o=1,u=2,d=1,w=2,b=4,R=8,M=16,k=32,x=64,L=128,O=256,I=512,E=30,z="...",P=800,N=16,S=1,A=2,D=3,j=1/0,U=9007199254740991,q=17976931348623157e292,Z=NaN,te=4294967295,he=te-1,ne=te>>>1,le=[["ary",L],["bind",d],["bindKey",w],["curry",R],["curryRight",M],["flip",I],["partial",k],["partialRight",x],["rearg",O]],ue="[object Arguments]",ce="[object Array]",fe="[object AsyncFunction]",Se="[object Boolean]",$e="[object Date]",Te="[object DOMException]",qe="[object Error]",Ve="[object Function]",lt="[object GeneratorFunction]",Je="[object Map]",ht="[object Number]",qt="[object Null]",In="[object Object]",Vt="[object Promise]",qr="[object Proxy]",fn="[object RegExp]",Bn="[object Set]",tr="[object String]",Sr="[object Symbol]",gt="[object Undefined]",He="[object WeakMap]",Pt="[object WeakSet]",an="[object ArrayBuffer]",zn="[object DataView]",$r="[object Float32Array]",fr="[object Float64Array]",mn="[object Int8Array]",Yn="[object Int16Array]",nr="[object Int32Array]",Yt="[object Uint8Array]",Xn="[object Uint8ClampedArray]",oo="[object Uint16Array]",Ei="[object Uint32Array]",Ii=/\b__p \+= '';/g,Ri=/\b(__p \+=) '' \+/g,so=/(__e\(.*?\)|\b__t\)) \+\n'';/g,lr=/&(?:amp|lt|gt|quot|#39);/g,ao=/[&<>"']/g,Oo=RegExp(lr.source),Va=RegExp(ao.source),Yr=/<%-([\s\S]+?)%>/g,Ga=/<%([\s\S]+?)%>/g,ms=/<%=([\s\S]+?)%>/g,ta=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Li=/^\w*$/,Rn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,mr=/[\\^$.*+?()[\]{}|]/g,Oi=RegExp(mr.source),vn=/^\s+/,vr=/\s/,qi=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ni=/\{\n\/\* \[wrapped with (.+)\] \*/,vs=/,? & /,na=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ka=/[()=,{}\[\]\/\s]/,qa=/\\(\\)?/g,Di=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Xr=/\w*$/,It=/^[-+]0x[0-9a-f]+$/i,ra=/^0b[01]+$/i,yr=/^\[object .+?Constructor\]$/,Ln=/^0o[0-7]+$/i,nn=/^(?:0|[1-9]\d*)$/,Cn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,hi=/($^)/,wr=/['\n\r\u2028\u2029\\]/g,di="\\ud800-\\udfff",No="\\u0300-\\u036f",ys="\\ufe20-\\ufe2f",Yi="\\u20d0-\\u20ff",Pr=No+ys+Yi,lo="\\u2700-\\u27bf",Do="a-z\\xdf-\\xf6\\xf8-\\xff",Wr="\\xac\\xb1\\xd7\\xf7",Fo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ws="\\u2000-\\u206f",bs=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Po="A-Z\\xc0-\\xd6\\xd8-\\xde",Qn="\\ufe0e\\ufe0f",xs=Wr+Fo+ws+bs,co="['’]",Wo="["+di+"]",Bo="["+xs+"]",Xi="["+Pr+"]",Cs="\\d+",ia="["+lo+"]",zo="["+Do+"]",jo="[^"+di+xs+Cs+lo+Do+Po+"]",ks="\\ud83c[\\udffb-\\udfff]",Ho="(?:"+Xi+"|"+ks+")",uo="[^"+di+"]",pi="(?:\\ud83c[\\udde6-\\uddff]){2}",Zn="[\\ud800-\\udbff][\\udc00-\\udfff]",Qi="["+Po+"]",Fi="\\u200d",oa="(?:"+zo+"|"+jo+")",Ya="(?:"+Qi+"|"+jo+")",ho="(?:"+co+"(?:d|ll|m|re|s|t|ve))?",Pi="(?:"+co+"(?:D|LL|M|RE|S|T|VE))?",po=Ho+"?",Uo="["+Qn+"]?",go="(?:"+Fi+"(?:"+[uo,pi,Zn].join("|")+")"+Uo+po+")*",sa="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Zi="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Fe=Uo+po+go,aa="(?:"+[ia,pi,Zn].join("|")+")"+Fe,Oe="(?:"+[uo+Xi+"?",Xi,pi,Zn,Wo].join("|")+")",yn=RegExp(co,"g"),fo=RegExp(Xi,"g"),Qr=RegExp(ks+"(?="+ks+")|"+Oe+Fe,"g"),On=RegExp([Qi+"?"+zo+"+"+ho+"(?="+[Bo,Qi,"$"].join("|")+")",Ya+"+"+Pi+"(?="+[Bo,Qi+oa,"$"].join("|")+")",Qi+"?"+oa+"+"+ho,Qi+"+"+Pi,Zi,sa,Cs,aa].join("|"),"g"),la=RegExp("["+Fi+di+Pr+Qn+"]"),mo=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,gi=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ji=-1,jt={};jt[$r]=jt[fr]=jt[mn]=jt[Yn]=jt[nr]=jt[Yt]=jt[Xn]=jt[oo]=jt[Ei]=!0,jt[ue]=jt[ce]=jt[an]=jt[Se]=jt[zn]=jt[$e]=jt[qe]=jt[Ve]=jt[Je]=jt[ht]=jt[In]=jt[fn]=jt[Bn]=jt[tr]=jt[He]=!1;var Wt={};Wt[ue]=Wt[ce]=Wt[an]=Wt[zn]=Wt[Se]=Wt[$e]=Wt[$r]=Wt[fr]=Wt[mn]=Wt[Yn]=Wt[nr]=Wt[Je]=Wt[ht]=Wt[In]=Wt[fn]=Wt[Bn]=Wt[tr]=Wt[Sr]=Wt[Yt]=Wt[Xn]=Wt[oo]=Wt[Ei]=!0,Wt[qe]=Wt[Ve]=Wt[He]=!1;var Ht={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Rt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},fi={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},kn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},We=parseFloat,rn=parseInt,dt=typeof Io=="object"&&Io&&Io.Object===Object&&Io,Mr=typeof self=="object"&&self&&self.Object===Object&&self,Qt=dt||Mr||Function("return this")(),ln=t&&!t.nodeType&&t,jn=ln&&!0&&n&&!n.nodeType&&n,Tr=jn&&jn.exports===ln,mi=Tr&&dt.process,An=function(){try{var pe=jn&&jn.require&&jn.require("util").types;return pe||mi&&mi.binding&&mi.binding("util")}catch{}}(),Br=An&&An.isArrayBuffer,Vo=An&&An.isDate,_n=An&&An.isMap,Zr=An&&An.isRegExp,Jr=An&&An.isSet,vi=An&&An.isTypedArray;function rr(pe,_e,xe){switch(xe.length){case 0:return pe.call(_e);case 1:return pe.call(_e,xe[0]);case 2:return pe.call(_e,xe[0],xe[1]);case 3:return pe.call(_e,xe[0],xe[1],xe[2])}return pe.apply(_e,xe)}function ir(pe,_e,xe,Be){for(var ot=-1,xt=pe==null?0:pe.length;++ot<xt;){var Dt=pe[ot];_e(Be,Dt,xe(Dt),pe)}return Be}function cr(pe,_e){for(var xe=-1,Be=pe==null?0:pe.length;++xe<Be&&_e(pe[xe],xe,pe)!==!1;);return pe}function As(pe,_e){for(var xe=pe==null?0:pe.length;xe--&&_e(pe[xe],xe,pe)!==!1;);return pe}function ur(pe,_e){for(var xe=-1,Be=pe==null?0:pe.length;++xe<Be;)if(!_e(pe[xe],xe,pe))return!1;return!0}function br(pe,_e){for(var xe=-1,Be=pe==null?0:pe.length,ot=0,xt=[];++xe<Be;){var Dt=pe[xe];_e(Dt,xe,pe)&&(xt[ot++]=Dt)}return xt}function ei(pe,_e){var xe=pe==null?0:pe.length;return!!xe&&se(pe,_e,0)>-1}function ti(pe,_e,xe){for(var Be=-1,ot=pe==null?0:pe.length;++Be<ot;)if(xe(_e,pe[Be]))return!0;return!1}function m(pe,_e){for(var xe=-1,Be=pe==null?0:pe.length,ot=Array(Be);++xe<Be;)ot[xe]=_e(pe[xe],xe,pe);return ot}function $(pe,_e){for(var xe=-1,Be=_e.length,ot=pe.length;++xe<Be;)pe[ot+xe]=_e[xe];return pe}function _(pe,_e,xe,Be){var ot=-1,xt=pe==null?0:pe.length;for(Be&&xt&&(xe=pe[++ot]);++ot<xt;)xe=_e(xe,pe[ot],ot,pe);return xe}function F(pe,_e,xe,Be){var ot=pe==null?0:pe.length;for(Be&&ot&&(xe=pe[--ot]);ot--;)xe=_e(xe,pe[ot],ot,pe);return xe}function W(pe,_e){for(var xe=-1,Be=pe==null?0:pe.length;++xe<Be;)if(_e(pe[xe],xe,pe))return!0;return!1}var B=we("length");function G(pe){return pe.split("")}function Y(pe){return pe.match(na)||[]}function Q(pe,_e,xe){var Be;return xe(pe,function(ot,xt,Dt){if(_e(ot,xt,Dt))return Be=xt,!1}),Be}function re(pe,_e,xe,Be){for(var ot=pe.length,xt=xe+(Be?1:-1);Be?xt--:++xt<ot;)if(_e(pe[xt],xt,pe))return xt;return-1}function se(pe,_e,xe){return _e===_e?Ye(pe,_e,xe):re(pe,Ce,xe)}function ye(pe,_e,xe,Be){for(var ot=xe-1,xt=pe.length;++ot<xt;)if(Be(pe[ot],_e))return ot;return-1}function Ce(pe){return pe!==pe}function me(pe,_e){var xe=pe==null?0:pe.length;return xe?rt(pe,_e)/xe:Z}function we(pe){return function(_e){return _e==null?e:_e[pe]}}function Le(pe){return function(_e){return pe==null?e:pe[_e]}}function Re(pe,_e,xe,Be,ot){return ot(pe,function(xt,Dt,At){xe=Be?(Be=!1,xt):_e(xe,xt,Dt,At)}),xe}function ze(pe,_e){var xe=pe.length;for(pe.sort(_e);xe--;)pe[xe]=pe[xe].value;return pe}function rt(pe,_e){for(var xe,Be=-1,ot=pe.length;++Be<ot;){var xt=_e(pe[Be]);xt!==e&&(xe=xe===e?xt:xe+xt)}return xe}function Ke(pe,_e){for(var xe=-1,Be=Array(pe);++xe<pe;)Be[xe]=_e(xe);return Be}function Qe(pe,_e){return m(_e,function(xe){return[xe,pe[xe]]})}function on(pe){return pe&&pe.slice(0,St(pe)+1).replace(vn,"")}function it(pe){return function(_e){return pe(_e)}}function un(pe,_e){return m(_e,function(xe){return pe[xe]})}function ft(pe,_e){return pe.has(_e)}function bt(pe,_e){for(var xe=-1,Be=pe.length;++xe<Be&&se(_e,pe[xe],0)>-1;);return xe}function Hn(pe,_e){for(var xe=pe.length;xe--&&se(_e,pe[xe],0)>-1;);return xe}function or(pe,_e){for(var xe=pe.length,Be=0;xe--;)pe[xe]===_e&&++Be;return Be}var hn=Le(Ht),V=Le(Rt);function X(pe){return"\\"+kn[pe]}function ie(pe,_e){return pe==null?e:pe[_e]}function oe(pe){return la.test(pe)}function ge(pe){return mo.test(pe)}function be(pe){for(var _e,xe=[];!(_e=pe.next()).done;)xe.push(_e.value);return xe}function Me(pe){var _e=-1,xe=Array(pe.size);return pe.forEach(function(Be,ot){xe[++_e]=[ot,Be]}),xe}function De(pe,_e){return function(xe){return pe(_e(xe))}}function Pe(pe,_e){for(var xe=-1,Be=pe.length,ot=0,xt=[];++xe<Be;){var Dt=pe[xe];(Dt===_e||Dt===s)&&(pe[xe]=s,xt[ot++]=xe)}return xt}function je(pe){var _e=-1,xe=Array(pe.size);return pe.forEach(function(Be){xe[++_e]=Be}),xe}function Ge(pe){var _e=-1,xe=Array(pe.size);return pe.forEach(function(Be){xe[++_e]=[Be,Be]}),xe}function Ye(pe,_e,xe){for(var Be=xe-1,ot=pe.length;++Be<ot;)if(pe[Be]===_e)return Be;return-1}function pt(pe,_e,xe){for(var Be=xe+1;Be--;)if(pe[Be]===_e)return Be;return Be}function Mt(pe){return oe(pe)?et(pe):B(pe)}function mt(pe){return oe(pe)?tn(pe):G(pe)}function St(pe){for(var _e=pe.length;_e--&&vr.test(pe.charAt(_e)););return _e}var st=Le(fi);function et(pe){for(var _e=Qr.lastIndex=0;Qr.test(pe);)++_e;return _e}function tn(pe){return pe.match(Qr)||[]}function dn(pe){return pe.match(On)||[]}var Un=function pe(_e){_e=_e==null?Qt:Ot.defaults(Qt.Object(),_e,Ot.pick(Qt,gi));var xe=_e.Array,Be=_e.Date,ot=_e.Error,xt=_e.Function,Dt=_e.Math,At=_e.Object,Er=_e.RegExp,yi=_e.String,Zt=_e.TypeError,sr=xe.prototype,vo=xt.prototype,Sn=At.prototype,_s=_e["__core-js_shared__"],dc=vo.toString,Xt=Sn.hasOwnProperty,_T=0,Ty=function(){var i=/[^.]+$/.exec(_s&&_s.keys&&_s.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}(),pc=Sn.toString,ST=dc.call(At),$T=Qt._,MT=Er("^"+dc.call(Xt).replace(mr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),gc=Tr?_e.Buffer:e,Go=_e.Symbol,fc=_e.Uint8Array,Ey=gc?gc.allocUnsafe:e,mc=De(At.getPrototypeOf,At),Iy=At.create,Ry=Sn.propertyIsEnumerable,vc=sr.splice,Ly=Go?Go.isConcatSpreadable:e,Xa=Go?Go.iterator:e,Ss=Go?Go.toStringTag:e,yc=function(){try{var i=Is(At,"defineProperty");return i({},"",{}),i}catch{}}(),TT=_e.clearTimeout!==Qt.clearTimeout&&_e.clearTimeout,ET=Be&&Be.now!==Qt.Date.now&&Be.now,IT=_e.setTimeout!==Qt.setTimeout&&_e.setTimeout,wc=Dt.ceil,bc=Dt.floor,od=At.getOwnPropertySymbols,RT=gc?gc.isBuffer:e,Oy=_e.isFinite,LT=sr.join,OT=De(At.keys,At),Jn=Dt.max,xr=Dt.min,NT=Be.now,DT=_e.parseInt,Ny=Dt.random,FT=sr.reverse,sd=Is(_e,"DataView"),Qa=Is(_e,"Map"),ad=Is(_e,"Promise"),ca=Is(_e,"Set"),Za=Is(_e,"WeakMap"),Ja=Is(At,"create"),xc=Za&&new Za,ua={},PT=Rs(sd),WT=Rs(Qa),BT=Rs(ad),zT=Rs(ca),jT=Rs(Za),Cc=Go?Go.prototype:e,el=Cc?Cc.valueOf:e,Dy=Cc?Cc.toString:e;function J(i){if($n(i)&&!vt(i)&&!(i instanceof Lt)){if(i instanceof wi)return i;if(Xt.call(i,"__wrapped__"))return Fw(i)}return new wi(i)}var ha=function(){function i(){}return function(g){if(!wn(g))return{};if(Iy)return Iy(g);i.prototype=g;var T=new i;return i.prototype=e,T}}();function kc(){}function wi(i,g){this.__wrapped__=i,this.__actions__=[],this.__chain__=!!g,this.__index__=0,this.__values__=e}J.templateSettings={escape:Yr,evaluate:Ga,interpolate:ms,variable:"",imports:{_:J}},J.prototype=kc.prototype,J.prototype.constructor=J,wi.prototype=ha(kc.prototype),wi.prototype.constructor=wi;function Lt(i){this.__wrapped__=i,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=te,this.__views__=[]}function HT(){var i=new Lt(this.__wrapped__);return i.__actions__=zr(this.__actions__),i.__dir__=this.__dir__,i.__filtered__=this.__filtered__,i.__iteratees__=zr(this.__iteratees__),i.__takeCount__=this.__takeCount__,i.__views__=zr(this.__views__),i}function UT(){if(this.__filtered__){var i=new Lt(this);i.__dir__=-1,i.__filtered__=!0}else i=this.clone(),i.__dir__*=-1;return i}function VT(){var i=this.__wrapped__.value(),g=this.__dir__,T=vt(i),H=g<0,K=T?i.length:0,ee=rI(0,K,this.__views__),ae=ee.start,de=ee.end,ve=de-ae,Ee=H?de:ae-1,Ie=this.__iteratees__,Ne=Ie.length,Ue=0,Ze=xr(ve,this.__takeCount__);if(!T||!H&&K==ve&&Ze==ve)return sw(i,this.__actions__);var ct=[];e:for(;ve--&&Ue<Ze;){Ee+=g;for(var _t=-1,ut=i[Ee];++_t<Ne;){var Tt=Ie[_t],Nt=Tt.iteratee,ii=Tt.type,Lr=Nt(ut);if(ii==A)ut=Lr;else if(!Lr){if(ii==S)continue e;break e}}ct[Ue++]=ut}return ct}Lt.prototype=ha(kc.prototype),Lt.prototype.constructor=Lt;function $s(i){var g=-1,T=i==null?0:i.length;for(this.clear();++g<T;){var H=i[g];this.set(H[0],H[1])}}function GT(){this.__data__=Ja?Ja(null):{},this.size=0}function KT(i){var g=this.has(i)&&delete this.__data__[i];return this.size-=g?1:0,g}function qT(i){var g=this.__data__;if(Ja){var T=g[i];return T===h?e:T}return Xt.call(g,i)?g[i]:e}function YT(i){var g=this.__data__;return Ja?g[i]!==e:Xt.call(g,i)}function XT(i,g){var T=this.__data__;return this.size+=this.has(i)?0:1,T[i]=Ja&&g===e?h:g,this}$s.prototype.clear=GT,$s.prototype.delete=KT,$s.prototype.get=qT,$s.prototype.has=YT,$s.prototype.set=XT;function yo(i){var g=-1,T=i==null?0:i.length;for(this.clear();++g<T;){var H=i[g];this.set(H[0],H[1])}}function QT(){this.__data__=[],this.size=0}function ZT(i){var g=this.__data__,T=Ac(g,i);if(T<0)return!1;var H=g.length-1;return T==H?g.pop():vc.call(g,T,1),--this.size,!0}function JT(i){var g=this.__data__,T=Ac(g,i);return T<0?e:g[T][1]}function eE(i){return Ac(this.__data__,i)>-1}function tE(i,g){var T=this.__data__,H=Ac(T,i);return H<0?(++this.size,T.push([i,g])):T[H][1]=g,this}yo.prototype.clear=QT,yo.prototype.delete=ZT,yo.prototype.get=JT,yo.prototype.has=eE,yo.prototype.set=tE;function wo(i){var g=-1,T=i==null?0:i.length;for(this.clear();++g<T;){var H=i[g];this.set(H[0],H[1])}}function nE(){this.size=0,this.__data__={hash:new $s,map:new(Qa||yo),string:new $s}}function rE(i){var g=Dc(this,i).delete(i);return this.size-=g?1:0,g}function iE(i){return Dc(this,i).get(i)}function oE(i){return Dc(this,i).has(i)}function sE(i,g){var T=Dc(this,i),H=T.size;return T.set(i,g),this.size+=T.size==H?0:1,this}wo.prototype.clear=nE,wo.prototype.delete=rE,wo.prototype.get=iE,wo.prototype.has=oE,wo.prototype.set=sE;function Ms(i){var g=-1,T=i==null?0:i.length;for(this.__data__=new wo;++g<T;)this.add(i[g])}function aE(i){return this.__data__.set(i,h),this}function lE(i){return this.__data__.has(i)}Ms.prototype.add=Ms.prototype.push=aE,Ms.prototype.has=lE;function Wi(i){var g=this.__data__=new yo(i);this.size=g.size}function cE(){this.__data__=new yo,this.size=0}function uE(i){var g=this.__data__,T=g.delete(i);return this.size=g.size,T}function hE(i){return this.__data__.get(i)}function dE(i){return this.__data__.has(i)}function pE(i,g){var T=this.__data__;if(T instanceof yo){var H=T.__data__;if(!Qa||H.length<v-1)return H.push([i,g]),this.size=++T.size,this;T=this.__data__=new wo(H)}return T.set(i,g),this.size=T.size,this}Wi.prototype.clear=cE,Wi.prototype.delete=uE,Wi.prototype.get=hE,Wi.prototype.has=dE,Wi.prototype.set=pE;function Fy(i,g){var T=vt(i),H=!T&&Ls(i),K=!T&&!H&&Qo(i),ee=!T&&!H&&!K&&fa(i),ae=T||H||K||ee,de=ae?Ke(i.length,yi):[],ve=de.length;for(var Ee in i)(g||Xt.call(i,Ee))&&!(ae&&(Ee=="length"||K&&(Ee=="offset"||Ee=="parent")||ee&&(Ee=="buffer"||Ee=="byteLength"||Ee=="byteOffset")||ko(Ee,ve)))&&de.push(Ee);return de}function Py(i){var g=i.length;return g?i[yd(0,g-1)]:e}function gE(i,g){return Fc(zr(i),Ts(g,0,i.length))}function fE(i){return Fc(zr(i))}function ld(i,g,T){(T!==e&&!Bi(i[g],T)||T===e&&!(g in i))&&bo(i,g,T)}function tl(i,g,T){var H=i[g];(!(Xt.call(i,g)&&Bi(H,T))||T===e&&!(g in i))&&bo(i,g,T)}function Ac(i,g){for(var T=i.length;T--;)if(Bi(i[T][0],g))return T;return-1}function mE(i,g,T,H){return Ko(i,function(K,ee,ae){g(H,K,T(K),ae)}),H}function Wy(i,g){return i&&to(g,ar(g),i)}function vE(i,g){return i&&to(g,Hr(g),i)}function bo(i,g,T){g=="__proto__"&&yc?yc(i,g,{configurable:!0,enumerable:!0,value:T,writable:!0}):i[g]=T}function cd(i,g){for(var T=-1,H=g.length,K=xe(H),ee=i==null;++T<H;)K[T]=ee?e:Hd(i,g[T]);return K}function Ts(i,g,T){return i===i&&(T!==e&&(i=i<=T?i:T),g!==e&&(i=i>=g?i:g)),i}function bi(i,g,T,H,K,ee){var ae,de=g&a,ve=g&c,Ee=g&l;if(T&&(ae=K?T(i,H,K,ee):T(i)),ae!==e)return ae;if(!wn(i))return i;var Ie=vt(i);if(Ie){if(ae=oI(i),!de)return zr(i,ae)}else{var Ne=Cr(i),Ue=Ne==Ve||Ne==lt;if(Qo(i))return cw(i,de);if(Ne==In||Ne==ue||Ue&&!K){if(ae=ve||Ue?{}:Mw(i),!de)return ve?qE(i,vE(ae,i)):KE(i,Wy(ae,i))}else{if(!Wt[Ne])return K?i:{};ae=sI(i,Ne,de)}}ee||(ee=new Wi);var Ze=ee.get(i);if(Ze)return Ze;ee.set(i,ae),r0(i)?i.forEach(function(ut){ae.add(bi(ut,g,T,ut,i,ee))}):t0(i)&&i.forEach(function(ut,Tt){ae.set(Tt,bi(ut,g,T,Tt,i,ee))});var ct=Ee?ve?Td:Md:ve?Hr:ar,_t=Ie?e:ct(i);return cr(_t||i,function(ut,Tt){_t&&(Tt=ut,ut=i[Tt]),tl(ae,Tt,bi(ut,g,T,Tt,i,ee))}),ae}function yE(i){var g=ar(i);return function(T){return By(T,i,g)}}function By(i,g,T){var H=T.length;if(i==null)return!H;for(i=At(i);H--;){var K=T[H],ee=g[K],ae=i[K];if(ae===e&&!(K in i)||!ee(ae))return!1}return!0}function zy(i,g,T){if(typeof i!="function")throw new Zt(y);return ll(function(){i.apply(e,T)},g)}function nl(i,g,T,H){var K=-1,ee=ei,ae=!0,de=i.length,ve=[],Ee=g.length;if(!de)return ve;T&&(g=m(g,it(T))),H?(ee=ti,ae=!1):g.length>=v&&(ee=ft,ae=!1,g=new Ms(g));e:for(;++K<de;){var Ie=i[K],Ne=T==null?Ie:T(Ie);if(Ie=H||Ie!==0?Ie:0,ae&&Ne===Ne){for(var Ue=Ee;Ue--;)if(g[Ue]===Ne)continue e;ve.push(Ie)}else ee(g,Ne,H)||ve.push(Ie)}return ve}var Ko=gw(eo),jy=gw(hd,!0);function wE(i,g){var T=!0;return Ko(i,function(H,K,ee){return T=!!g(H,K,ee),T}),T}function _c(i,g,T){for(var H=-1,K=i.length;++H<K;){var ee=i[H],ae=g(ee);if(ae!=null&&(de===e?ae===ae&&!ri(ae):T(ae,de)))var de=ae,ve=ee}return ve}function bE(i,g,T,H){var K=i.length;for(T=Ct(T),T<0&&(T=-T>K?0:K+T),H=H===e||H>K?K:Ct(H),H<0&&(H+=K),H=T>H?0:o0(H);T<H;)i[T++]=g;return i}function Hy(i,g){var T=[];return Ko(i,function(H,K,ee){g(H,K,ee)&&T.push(H)}),T}function hr(i,g,T,H,K){var ee=-1,ae=i.length;for(T||(T=lI),K||(K=[]);++ee<ae;){var de=i[ee];g>0&&T(de)?g>1?hr(de,g-1,T,H,K):$(K,de):H||(K[K.length]=de)}return K}var ud=fw(),Uy=fw(!0);function eo(i,g){return i&&ud(i,g,ar)}function hd(i,g){return i&&Uy(i,g,ar)}function Sc(i,g){return br(g,function(T){return Ao(i[T])})}function Es(i,g){g=Yo(g,i);for(var T=0,H=g.length;i!=null&&T<H;)i=i[no(g[T++])];return T&&T==H?i:e}function Vy(i,g,T){var H=g(i);return vt(i)?H:$(H,T(i))}function Ir(i){return i==null?i===e?gt:qt:Ss&&Ss in At(i)?nI(i):fI(i)}function dd(i,g){return i>g}function xE(i,g){return i!=null&&Xt.call(i,g)}function CE(i,g){return i!=null&&g in At(i)}function kE(i,g,T){return i>=xr(g,T)&&i<Jn(g,T)}function pd(i,g,T){for(var H=T?ti:ei,K=i[0].length,ee=i.length,ae=ee,de=xe(ee),ve=1/0,Ee=[];ae--;){var Ie=i[ae];ae&&g&&(Ie=m(Ie,it(g))),ve=xr(Ie.length,ve),de[ae]=!T&&(g||K>=120&&Ie.length>=120)?new Ms(ae&&Ie):e}Ie=i[0];var Ne=-1,Ue=de[0];e:for(;++Ne<K&&Ee.length<ve;){var Ze=Ie[Ne],ct=g?g(Ze):Ze;if(Ze=T||Ze!==0?Ze:0,!(Ue?ft(Ue,ct):H(Ee,ct,T))){for(ae=ee;--ae;){var _t=de[ae];if(!(_t?ft(_t,ct):H(i[ae],ct,T)))continue e}Ue&&Ue.push(ct),Ee.push(Ze)}}return Ee}function AE(i,g,T,H){return eo(i,function(K,ee,ae){g(H,T(K),ee,ae)}),H}function rl(i,g,T){g=Yo(g,i),i=Rw(i,g);var H=i==null?i:i[no(Ci(g))];return H==null?e:rr(H,i,T)}function Gy(i){return $n(i)&&Ir(i)==ue}function _E(i){return $n(i)&&Ir(i)==an}function SE(i){return $n(i)&&Ir(i)==$e}function il(i,g,T,H,K){return i===g?!0:i==null||g==null||!$n(i)&&!$n(g)?i!==i&&g!==g:$E(i,g,T,H,il,K)}function $E(i,g,T,H,K,ee){var ae=vt(i),de=vt(g),ve=ae?ce:Cr(i),Ee=de?ce:Cr(g);ve=ve==ue?In:ve,Ee=Ee==ue?In:Ee;var Ie=ve==In,Ne=Ee==In,Ue=ve==Ee;if(Ue&&Qo(i)){if(!Qo(g))return!1;ae=!0,Ie=!1}if(Ue&&!Ie)return ee||(ee=new Wi),ae||fa(i)?_w(i,g,T,H,K,ee):eI(i,g,ve,T,H,K,ee);if(!(T&o)){var Ze=Ie&&Xt.call(i,"__wrapped__"),ct=Ne&&Xt.call(g,"__wrapped__");if(Ze||ct){var _t=Ze?i.value():i,ut=ct?g.value():g;return ee||(ee=new Wi),K(_t,ut,T,H,ee)}}return Ue?(ee||(ee=new Wi),tI(i,g,T,H,K,ee)):!1}function ME(i){return $n(i)&&Cr(i)==Je}function gd(i,g,T,H){var K=T.length,ee=K,ae=!H;if(i==null)return!ee;for(i=At(i);K--;){var de=T[K];if(ae&&de[2]?de[1]!==i[de[0]]:!(de[0]in i))return!1}for(;++K<ee;){de=T[K];var ve=de[0],Ee=i[ve],Ie=de[1];if(ae&&de[2]){if(Ee===e&&!(ve in i))return!1}else{var Ne=new Wi;if(H)var Ue=H(Ee,Ie,ve,i,g,Ne);if(!(Ue===e?il(Ie,Ee,o|u,H,Ne):Ue))return!1}}return!0}function Ky(i){if(!wn(i)||uI(i))return!1;var g=Ao(i)?MT:yr;return g.test(Rs(i))}function TE(i){return $n(i)&&Ir(i)==fn}function EE(i){return $n(i)&&Cr(i)==Bn}function IE(i){return $n(i)&&Hc(i.length)&&!!jt[Ir(i)]}function qy(i){return typeof i=="function"?i:i==null?Ur:typeof i=="object"?vt(i)?Qy(i[0],i[1]):Xy(i):m0(i)}function fd(i){if(!al(i))return OT(i);var g=[];for(var T in At(i))Xt.call(i,T)&&T!="constructor"&&g.push(T);return g}function RE(i){if(!wn(i))return gI(i);var g=al(i),T=[];for(var H in i)H=="constructor"&&(g||!Xt.call(i,H))||T.push(H);return T}function md(i,g){return i<g}function Yy(i,g){var T=-1,H=jr(i)?xe(i.length):[];return Ko(i,function(K,ee,ae){H[++T]=g(K,ee,ae)}),H}function Xy(i){var g=Id(i);return g.length==1&&g[0][2]?Ew(g[0][0],g[0][1]):function(T){return T===i||gd(T,i,g)}}function Qy(i,g){return Ld(i)&&Tw(g)?Ew(no(i),g):function(T){var H=Hd(T,i);return H===e&&H===g?Ud(T,i):il(g,H,o|u)}}function $c(i,g,T,H,K){i!==g&&ud(g,function(ee,ae){if(K||(K=new Wi),wn(ee))LE(i,g,ae,T,$c,H,K);else{var de=H?H(Nd(i,ae),ee,ae+"",i,g,K):e;de===e&&(de=ee),ld(i,ae,de)}},Hr)}function LE(i,g,T,H,K,ee,ae){var de=Nd(i,T),ve=Nd(g,T),Ee=ae.get(ve);if(Ee){ld(i,T,Ee);return}var Ie=ee?ee(de,ve,T+"",i,g,ae):e,Ne=Ie===e;if(Ne){var Ue=vt(ve),Ze=!Ue&&Qo(ve),ct=!Ue&&!Ze&&fa(ve);Ie=ve,Ue||Ze||ct?vt(de)?Ie=de:Nn(de)?Ie=zr(de):Ze?(Ne=!1,Ie=cw(ve,!0)):ct?(Ne=!1,Ie=uw(ve,!0)):Ie=[]:cl(ve)||Ls(ve)?(Ie=de,Ls(de)?Ie=s0(de):(!wn(de)||Ao(de))&&(Ie=Mw(ve))):Ne=!1}Ne&&(ae.set(ve,Ie),K(Ie,ve,H,ee,ae),ae.delete(ve)),ld(i,T,Ie)}function Zy(i,g){var T=i.length;if(T)return g+=g<0?T:0,ko(g,T)?i[g]:e}function Jy(i,g,T){g.length?g=m(g,function(ee){return vt(ee)?function(ae){return Es(ae,ee.length===1?ee[0]:ee)}:ee}):g=[Ur];var H=-1;g=m(g,it(at()));var K=Yy(i,function(ee,ae,de){var ve=m(g,function(Ee){return Ee(ee)});return{criteria:ve,index:++H,value:ee}});return ze(K,function(ee,ae){return GE(ee,ae,T)})}function OE(i,g){return ew(i,g,function(T,H){return Ud(i,H)})}function ew(i,g,T){for(var H=-1,K=g.length,ee={};++H<K;){var ae=g[H],de=Es(i,ae);T(de,ae)&&ol(ee,Yo(ae,i),de)}return ee}function NE(i){return function(g){return Es(g,i)}}function vd(i,g,T,H){var K=H?ye:se,ee=-1,ae=g.length,de=i;for(i===g&&(g=zr(g)),T&&(de=m(i,it(T)));++ee<ae;)for(var ve=0,Ee=g[ee],Ie=T?T(Ee):Ee;(ve=K(de,Ie,ve,H))>-1;)de!==i&&vc.call(de,ve,1),vc.call(i,ve,1);return i}function tw(i,g){for(var T=i?g.length:0,H=T-1;T--;){var K=g[T];if(T==H||K!==ee){var ee=K;ko(K)?vc.call(i,K,1):xd(i,K)}}return i}function yd(i,g){return i+bc(Ny()*(g-i+1))}function DE(i,g,T,H){for(var K=-1,ee=Jn(wc((g-i)/(T||1)),0),ae=xe(ee);ee--;)ae[H?ee:++K]=i,i+=T;return ae}function wd(i,g){var T="";if(!i||g<1||g>U)return T;do g%2&&(T+=i),g=bc(g/2),g&&(i+=i);while(g);return T}function $t(i,g){return Dd(Iw(i,g,Ur),i+"")}function FE(i){return Py(ma(i))}function PE(i,g){var T=ma(i);return Fc(T,Ts(g,0,T.length))}function ol(i,g,T,H){if(!wn(i))return i;g=Yo(g,i);for(var K=-1,ee=g.length,ae=ee-1,de=i;de!=null&&++K<ee;){var ve=no(g[K]),Ee=T;if(ve==="__proto__"||ve==="constructor"||ve==="prototype")return i;if(K!=ae){var Ie=de[ve];Ee=H?H(Ie,ve,de):e,Ee===e&&(Ee=wn(Ie)?Ie:ko(g[K+1])?[]:{})}tl(de,ve,Ee),de=de[ve]}return i}var nw=xc?function(i,g){return xc.set(i,g),i}:Ur,WE=yc?function(i,g){return yc(i,"toString",{configurable:!0,enumerable:!1,value:Gd(g),writable:!0})}:Ur;function BE(i){return Fc(ma(i))}function xi(i,g,T){var H=-1,K=i.length;g<0&&(g=-g>K?0:K+g),T=T>K?K:T,T<0&&(T+=K),K=g>T?0:T-g>>>0,g>>>=0;for(var ee=xe(K);++H<K;)ee[H]=i[H+g];return ee}function zE(i,g){var T;return Ko(i,function(H,K,ee){return T=g(H,K,ee),!T}),!!T}function Mc(i,g,T){var H=0,K=i==null?H:i.length;if(typeof g=="number"&&g===g&&K<=ne){for(;H<K;){var ee=H+K>>>1,ae=i[ee];ae!==null&&!ri(ae)&&(T?ae<=g:ae<g)?H=ee+1:K=ee}return K}return bd(i,g,Ur,T)}function bd(i,g,T,H){var K=0,ee=i==null?0:i.length;if(ee===0)return 0;g=T(g);for(var ae=g!==g,de=g===null,ve=ri(g),Ee=g===e;K<ee;){var Ie=bc((K+ee)/2),Ne=T(i[Ie]),Ue=Ne!==e,Ze=Ne===null,ct=Ne===Ne,_t=ri(Ne);if(ae)var ut=H||ct;else Ee?ut=ct&&(H||Ue):de?ut=ct&&Ue&&(H||!Ze):ve?ut=ct&&Ue&&!Ze&&(H||!_t):Ze||_t?ut=!1:ut=H?Ne<=g:Ne<g;ut?K=Ie+1:ee=Ie}return xr(ee,he)}function rw(i,g){for(var T=-1,H=i.length,K=0,ee=[];++T<H;){var ae=i[T],de=g?g(ae):ae;if(!T||!Bi(de,ve)){var ve=de;ee[K++]=ae===0?0:ae}}return ee}function iw(i){return typeof i=="number"?i:ri(i)?Z:+i}function ni(i){if(typeof i=="string")return i;if(vt(i))return m(i,ni)+"";if(ri(i))return Dy?Dy.call(i):"";var g=i+"";return g=="0"&&1/i==-j?"-0":g}function qo(i,g,T){var H=-1,K=ei,ee=i.length,ae=!0,de=[],ve=de;if(T)ae=!1,K=ti;else if(ee>=v){var Ee=g?null:ZE(i);if(Ee)return je(Ee);ae=!1,K=ft,ve=new Ms}else ve=g?[]:de;e:for(;++H<ee;){var Ie=i[H],Ne=g?g(Ie):Ie;if(Ie=T||Ie!==0?Ie:0,ae&&Ne===Ne){for(var Ue=ve.length;Ue--;)if(ve[Ue]===Ne)continue e;g&&ve.push(Ne),de.push(Ie)}else K(ve,Ne,T)||(ve!==de&&ve.push(Ne),de.push(Ie))}return de}function xd(i,g){return g=Yo(g,i),i=Rw(i,g),i==null||delete i[no(Ci(g))]}function ow(i,g,T,H){return ol(i,g,T(Es(i,g)),H)}function Tc(i,g,T,H){for(var K=i.length,ee=H?K:-1;(H?ee--:++ee<K)&&g(i[ee],ee,i););return T?xi(i,H?0:ee,H?ee+1:K):xi(i,H?ee+1:0,H?K:ee)}function sw(i,g){var T=i;return T instanceof Lt&&(T=T.value()),_(g,function(H,K){return K.func.apply(K.thisArg,$([H],K.args))},T)}function Cd(i,g,T){var H=i.length;if(H<2)return H?qo(i[0]):[];for(var K=-1,ee=xe(H);++K<H;)for(var ae=i[K],de=-1;++de<H;)de!=K&&(ee[K]=nl(ee[K]||ae,i[de],g,T));return qo(hr(ee,1),g,T)}function aw(i,g,T){for(var H=-1,K=i.length,ee=g.length,ae={};++H<K;){var de=H<ee?g[H]:e;T(ae,i[H],de)}return ae}function kd(i){return Nn(i)?i:[]}function Ad(i){return typeof i=="function"?i:Ur}function Yo(i,g){return vt(i)?i:Ld(i,g)?[i]:Dw(Gt(i))}var jE=$t;function Xo(i,g,T){var H=i.length;return T=T===e?H:T,!g&&T>=H?i:xi(i,g,T)}var lw=TT||function(i){return Qt.clearTimeout(i)};function cw(i,g){if(g)return i.slice();var T=i.length,H=Ey?Ey(T):new i.constructor(T);return i.copy(H),H}function _d(i){var g=new i.constructor(i.byteLength);return new fc(g).set(new fc(i)),g}function HE(i,g){var T=g?_d(i.buffer):i.buffer;return new i.constructor(T,i.byteOffset,i.byteLength)}function UE(i){var g=new i.constructor(i.source,Xr.exec(i));return g.lastIndex=i.lastIndex,g}function VE(i){return el?At(el.call(i)):{}}function uw(i,g){var T=g?_d(i.buffer):i.buffer;return new i.constructor(T,i.byteOffset,i.length)}function hw(i,g){if(i!==g){var T=i!==e,H=i===null,K=i===i,ee=ri(i),ae=g!==e,de=g===null,ve=g===g,Ee=ri(g);if(!de&&!Ee&&!ee&&i>g||ee&&ae&&ve&&!de&&!Ee||H&&ae&&ve||!T&&ve||!K)return 1;if(!H&&!ee&&!Ee&&i<g||Ee&&T&&K&&!H&&!ee||de&&T&&K||!ae&&K||!ve)return-1}return 0}function GE(i,g,T){for(var H=-1,K=i.criteria,ee=g.criteria,ae=K.length,de=T.length;++H<ae;){var ve=hw(K[H],ee[H]);if(ve){if(H>=de)return ve;var Ee=T[H];return ve*(Ee=="desc"?-1:1)}}return i.index-g.index}function dw(i,g,T,H){for(var K=-1,ee=i.length,ae=T.length,de=-1,ve=g.length,Ee=Jn(ee-ae,0),Ie=xe(ve+Ee),Ne=!H;++de<ve;)Ie[de]=g[de];for(;++K<ae;)(Ne||K<ee)&&(Ie[T[K]]=i[K]);for(;Ee--;)Ie[de++]=i[K++];return Ie}function pw(i,g,T,H){for(var K=-1,ee=i.length,ae=-1,de=T.length,ve=-1,Ee=g.length,Ie=Jn(ee-de,0),Ne=xe(Ie+Ee),Ue=!H;++K<Ie;)Ne[K]=i[K];for(var Ze=K;++ve<Ee;)Ne[Ze+ve]=g[ve];for(;++ae<de;)(Ue||K<ee)&&(Ne[Ze+T[ae]]=i[K++]);return Ne}function zr(i,g){var T=-1,H=i.length;for(g||(g=xe(H));++T<H;)g[T]=i[T];return g}function to(i,g,T,H){var K=!T;T||(T={});for(var ee=-1,ae=g.length;++ee<ae;){var de=g[ee],ve=H?H(T[de],i[de],de,T,i):e;ve===e&&(ve=i[de]),K?bo(T,de,ve):tl(T,de,ve)}return T}function KE(i,g){return to(i,Rd(i),g)}function qE(i,g){return to(i,Sw(i),g)}function Ec(i,g){return function(T,H){var K=vt(T)?ir:mE,ee=g?g():{};return K(T,i,at(H,2),ee)}}function da(i){return $t(function(g,T){var H=-1,K=T.length,ee=K>1?T[K-1]:e,ae=K>2?T[2]:e;for(ee=i.length>3&&typeof ee=="function"?(K--,ee):e,ae&&Rr(T[0],T[1],ae)&&(ee=K<3?e:ee,K=1),g=At(g);++H<K;){var de=T[H];de&&i(g,de,H,ee)}return g})}function gw(i,g){return function(T,H){if(T==null)return T;if(!jr(T))return i(T,H);for(var K=T.length,ee=g?K:-1,ae=At(T);(g?ee--:++ee<K)&&H(ae[ee],ee,ae)!==!1;);return T}}function fw(i){return function(g,T,H){for(var K=-1,ee=At(g),ae=H(g),de=ae.length;de--;){var ve=ae[i?de:++K];if(T(ee[ve],ve,ee)===!1)break}return g}}function YE(i,g,T){var H=g&d,K=sl(i);function ee(){var ae=this&&this!==Qt&&this instanceof ee?K:i;return ae.apply(H?T:this,arguments)}return ee}function mw(i){return function(g){g=Gt(g);var T=oe(g)?mt(g):e,H=T?T[0]:g.charAt(0),K=T?Xo(T,1).join(""):g.slice(1);return H[i]()+K}}function pa(i){return function(g){return _(g0(p0(g).replace(yn,"")),i,"")}}function sl(i){return function(){var g=arguments;switch(g.length){case 0:return new i;case 1:return new i(g[0]);case 2:return new i(g[0],g[1]);case 3:return new i(g[0],g[1],g[2]);case 4:return new i(g[0],g[1],g[2],g[3]);case 5:return new i(g[0],g[1],g[2],g[3],g[4]);case 6:return new i(g[0],g[1],g[2],g[3],g[4],g[5]);case 7:return new i(g[0],g[1],g[2],g[3],g[4],g[5],g[6])}var T=ha(i.prototype),H=i.apply(T,g);return wn(H)?H:T}}function XE(i,g,T){var H=sl(i);function K(){for(var ee=arguments.length,ae=xe(ee),de=ee,ve=ga(K);de--;)ae[de]=arguments[de];var Ee=ee<3&&ae[0]!==ve&&ae[ee-1]!==ve?[]:Pe(ae,ve);if(ee-=Ee.length,ee<T)return xw(i,g,Ic,K.placeholder,e,ae,Ee,e,e,T-ee);var Ie=this&&this!==Qt&&this instanceof K?H:i;return rr(Ie,this,ae)}return K}function vw(i){return function(g,T,H){var K=At(g);if(!jr(g)){var ee=at(T,3);g=ar(g),T=function(de){return ee(K[de],de,K)}}var ae=i(g,T,H);return ae>-1?K[ee?g[ae]:ae]:e}}function yw(i){return Co(function(g){var T=g.length,H=T,K=wi.prototype.thru;for(i&&g.reverse();H--;){var ee=g[H];if(typeof ee!="function")throw new Zt(y);if(K&&!ae&&Nc(ee)=="wrapper")var ae=new wi([],!0)}for(H=ae?H:T;++H<T;){ee=g[H];var de=Nc(ee),ve=de=="wrapper"?Ed(ee):e;ve&&Od(ve[0])&&ve[1]==(L|R|k|O)&&!ve[4].length&&ve[9]==1?ae=ae[Nc(ve[0])].apply(ae,ve[3]):ae=ee.length==1&&Od(ee)?ae[de]():ae.thru(ee)}return function(){var Ee=arguments,Ie=Ee[0];if(ae&&Ee.length==1&&vt(Ie))return ae.plant(Ie).value();for(var Ne=0,Ue=T?g[Ne].apply(this,Ee):Ie;++Ne<T;)Ue=g[Ne].call(this,Ue);return Ue}})}function Ic(i,g,T,H,K,ee,ae,de,ve,Ee){var Ie=g&L,Ne=g&d,Ue=g&w,Ze=g&(R|M),ct=g&I,_t=Ue?e:sl(i);function ut(){for(var Tt=arguments.length,Nt=xe(Tt),ii=Tt;ii--;)Nt[ii]=arguments[ii];if(Ze)var Lr=ga(ut),oi=or(Nt,Lr);if(H&&(Nt=dw(Nt,H,K,Ze)),ee&&(Nt=pw(Nt,ee,ae,Ze)),Tt-=oi,Ze&&Tt<Ee){var Dn=Pe(Nt,Lr);return xw(i,g,Ic,ut.placeholder,T,Nt,Dn,de,ve,Ee-Tt)}var zi=Ne?T:this,So=Ue?zi[i]:i;return Tt=Nt.length,de?Nt=mI(Nt,de):ct&&Tt>1&&Nt.reverse(),Ie&&ve<Tt&&(Nt.length=ve),this&&this!==Qt&&this instanceof ut&&(So=_t||sl(So)),So.apply(zi,Nt)}return ut}function ww(i,g){return function(T,H){return AE(T,i,g(H),{})}}function Rc(i,g){return function(T,H){var K;if(T===e&&H===e)return g;if(T!==e&&(K=T),H!==e){if(K===e)return H;typeof T=="string"||typeof H=="string"?(T=ni(T),H=ni(H)):(T=iw(T),H=iw(H)),K=i(T,H)}return K}}function Sd(i){return Co(function(g){return g=m(g,it(at())),$t(function(T){var H=this;return i(g,function(K){return rr(K,H,T)})})})}function Lc(i,g){g=g===e?" ":ni(g);var T=g.length;if(T<2)return T?wd(g,i):g;var H=wd(g,wc(i/Mt(g)));return oe(g)?Xo(mt(H),0,i).join(""):H.slice(0,i)}function QE(i,g,T,H){var K=g&d,ee=sl(i);function ae(){for(var de=-1,ve=arguments.length,Ee=-1,Ie=H.length,Ne=xe(Ie+ve),Ue=this&&this!==Qt&&this instanceof ae?ee:i;++Ee<Ie;)Ne[Ee]=H[Ee];for(;ve--;)Ne[Ee++]=arguments[++de];return rr(Ue,K?T:this,Ne)}return ae}function bw(i){return function(g,T,H){return H&&typeof H!="number"&&Rr(g,T,H)&&(T=H=e),g=_o(g),T===e?(T=g,g=0):T=_o(T),H=H===e?g<T?1:-1:_o(H),DE(g,T,H,i)}}function Oc(i){return function(g,T){return typeof g=="string"&&typeof T=="string"||(g=ki(g),T=ki(T)),i(g,T)}}function xw(i,g,T,H,K,ee,ae,de,ve,Ee){var Ie=g&R,Ne=Ie?ae:e,Ue=Ie?e:ae,Ze=Ie?ee:e,ct=Ie?e:ee;g|=Ie?k:x,g&=~(Ie?x:k),g&b||(g&=-4);var _t=[i,g,K,Ze,Ne,ct,Ue,de,ve,Ee],ut=T.apply(e,_t);return Od(i)&&Lw(ut,_t),ut.placeholder=H,Ow(ut,i,g)}function $d(i){var g=Dt[i];return function(T,H){if(T=ki(T),H=H==null?0:xr(Ct(H),292),H&&Oy(T)){var K=(Gt(T)+"e").split("e"),ee=g(K[0]+"e"+(+K[1]+H));return K=(Gt(ee)+"e").split("e"),+(K[0]+"e"+(+K[1]-H))}return g(T)}}var ZE=ca&&1/je(new ca([,-0]))[1]==j?function(i){return new ca(i)}:Yd;function Cw(i){return function(g){var T=Cr(g);return T==Je?Me(g):T==Bn?Ge(g):Qe(g,i(g))}}function xo(i,g,T,H,K,ee,ae,de){var ve=g&w;if(!ve&&typeof i!="function")throw new Zt(y);var Ee=H?H.length:0;if(Ee||(g&=-97,H=K=e),ae=ae===e?ae:Jn(Ct(ae),0),de=de===e?de:Ct(de),Ee-=K?K.length:0,g&x){var Ie=H,Ne=K;H=K=e}var Ue=ve?e:Ed(i),Ze=[i,g,T,H,K,Ie,Ne,ee,ae,de];if(Ue&&pI(Ze,Ue),i=Ze[0],g=Ze[1],T=Ze[2],H=Ze[3],K=Ze[4],de=Ze[9]=Ze[9]===e?ve?0:i.length:Jn(Ze[9]-Ee,0),!de&&g&(R|M)&&(g&=-25),!g||g==d)var ct=YE(i,g,T);else g==R||g==M?ct=XE(i,g,de):(g==k||g==(d|k))&&!K.length?ct=QE(i,g,T,H):ct=Ic.apply(e,Ze);var _t=Ue?nw:Lw;return Ow(_t(ct,Ze),i,g)}function kw(i,g,T,H){return i===e||Bi(i,Sn[T])&&!Xt.call(H,T)?g:i}function Aw(i,g,T,H,K,ee){return wn(i)&&wn(g)&&(ee.set(g,i),$c(i,g,e,Aw,ee),ee.delete(g)),i}function JE(i){return cl(i)?e:i}function _w(i,g,T,H,K,ee){var ae=T&o,de=i.length,ve=g.length;if(de!=ve&&!(ae&&ve>de))return!1;var Ee=ee.get(i),Ie=ee.get(g);if(Ee&&Ie)return Ee==g&&Ie==i;var Ne=-1,Ue=!0,Ze=T&u?new Ms:e;for(ee.set(i,g),ee.set(g,i);++Ne<de;){var ct=i[Ne],_t=g[Ne];if(H)var ut=ae?H(_t,ct,Ne,g,i,ee):H(ct,_t,Ne,i,g,ee);if(ut!==e){if(ut)continue;Ue=!1;break}if(Ze){if(!W(g,function(Tt,Nt){if(!ft(Ze,Nt)&&(ct===Tt||K(ct,Tt,T,H,ee)))return Ze.push(Nt)})){Ue=!1;break}}else if(!(ct===_t||K(ct,_t,T,H,ee))){Ue=!1;break}}return ee.delete(i),ee.delete(g),Ue}function eI(i,g,T,H,K,ee,ae){switch(T){case zn:if(i.byteLength!=g.byteLength||i.byteOffset!=g.byteOffset)return!1;i=i.buffer,g=g.buffer;case an:return!(i.byteLength!=g.byteLength||!ee(new fc(i),new fc(g)));case Se:case $e:case ht:return Bi(+i,+g);case qe:return i.name==g.name&&i.message==g.message;case fn:case tr:return i==g+"";case Je:var de=Me;case Bn:var ve=H&o;if(de||(de=je),i.size!=g.size&&!ve)return!1;var Ee=ae.get(i);if(Ee)return Ee==g;H|=u,ae.set(i,g);var Ie=_w(de(i),de(g),H,K,ee,ae);return ae.delete(i),Ie;case Sr:if(el)return el.call(i)==el.call(g)}return!1}function tI(i,g,T,H,K,ee){var ae=T&o,de=Md(i),ve=de.length,Ee=Md(g),Ie=Ee.length;if(ve!=Ie&&!ae)return!1;for(var Ne=ve;Ne--;){var Ue=de[Ne];if(!(ae?Ue in g:Xt.call(g,Ue)))return!1}var Ze=ee.get(i),ct=ee.get(g);if(Ze&&ct)return Ze==g&&ct==i;var _t=!0;ee.set(i,g),ee.set(g,i);for(var ut=ae;++Ne<ve;){Ue=de[Ne];var Tt=i[Ue],Nt=g[Ue];if(H)var ii=ae?H(Nt,Tt,Ue,g,i,ee):H(Tt,Nt,Ue,i,g,ee);if(!(ii===e?Tt===Nt||K(Tt,Nt,T,H,ee):ii)){_t=!1;break}ut||(ut=Ue=="constructor")}if(_t&&!ut){var Lr=i.constructor,oi=g.constructor;Lr!=oi&&"constructor"in i&&"constructor"in g&&!(typeof Lr=="function"&&Lr instanceof Lr&&typeof oi=="function"&&oi instanceof oi)&&(_t=!1)}return ee.delete(i),ee.delete(g),_t}function Co(i){return Dd(Iw(i,e,Bw),i+"")}function Md(i){return Vy(i,ar,Rd)}function Td(i){return Vy(i,Hr,Sw)}var Ed=xc?function(i){return xc.get(i)}:Yd;function Nc(i){for(var g=i.name+"",T=ua[g],H=Xt.call(ua,g)?T.length:0;H--;){var K=T[H],ee=K.func;if(ee==null||ee==i)return K.name}return g}function ga(i){var g=Xt.call(J,"placeholder")?J:i;return g.placeholder}function at(){var i=J.iteratee||Kd;return i=i===Kd?qy:i,arguments.length?i(arguments[0],arguments[1]):i}function Dc(i,g){var T=i.__data__;return cI(g)?T[typeof g=="string"?"string":"hash"]:T.map}function Id(i){for(var g=ar(i),T=g.length;T--;){var H=g[T],K=i[H];g[T]=[H,K,Tw(K)]}return g}function Is(i,g){var T=ie(i,g);return Ky(T)?T:e}function nI(i){var g=Xt.call(i,Ss),T=i[Ss];try{i[Ss]=e;var H=!0}catch{}var K=pc.call(i);return H&&(g?i[Ss]=T:delete i[Ss]),K}var Rd=od?function(i){return i==null?[]:(i=At(i),br(od(i),function(g){return Ry.call(i,g)}))}:Xd,Sw=od?function(i){for(var g=[];i;)$(g,Rd(i)),i=mc(i);return g}:Xd,Cr=Ir;(sd&&Cr(new sd(new ArrayBuffer(1)))!=zn||Qa&&Cr(new Qa)!=Je||ad&&Cr(ad.resolve())!=Vt||ca&&Cr(new ca)!=Bn||Za&&Cr(new Za)!=He)&&(Cr=function(i){var g=Ir(i),T=g==In?i.constructor:e,H=T?Rs(T):"";if(H)switch(H){case PT:return zn;case WT:return Je;case BT:return Vt;case zT:return Bn;case jT:return He}return g});function rI(i,g,T){for(var H=-1,K=T.length;++H<K;){var ee=T[H],ae=ee.size;switch(ee.type){case"drop":i+=ae;break;case"dropRight":g-=ae;break;case"take":g=xr(g,i+ae);break;case"takeRight":i=Jn(i,g-ae);break}}return{start:i,end:g}}function iI(i){var g=i.match(Ni);return g?g[1].split(vs):[]}function $w(i,g,T){g=Yo(g,i);for(var H=-1,K=g.length,ee=!1;++H<K;){var ae=no(g[H]);if(!(ee=i!=null&&T(i,ae)))break;i=i[ae]}return ee||++H!=K?ee:(K=i==null?0:i.length,!!K&&Hc(K)&&ko(ae,K)&&(vt(i)||Ls(i)))}function oI(i){var g=i.length,T=new i.constructor(g);return g&&typeof i[0]=="string"&&Xt.call(i,"index")&&(T.index=i.index,T.input=i.input),T}function Mw(i){return typeof i.constructor=="function"&&!al(i)?ha(mc(i)):{}}function sI(i,g,T){var H=i.constructor;switch(g){case an:return _d(i);case Se:case $e:return new H(+i);case zn:return HE(i,T);case $r:case fr:case mn:case Yn:case nr:case Yt:case Xn:case oo:case Ei:return uw(i,T);case Je:return new H;case ht:case tr:return new H(i);case fn:return UE(i);case Bn:return new H;case Sr:return VE(i)}}function aI(i,g){var T=g.length;if(!T)return i;var H=T-1;return g[H]=(T>1?"& ":"")+g[H],g=g.join(T>2?", ":" "),i.replace(qi,`{
1470
+ /* [wrapped with `+g+`] */
1471
+ `)}function lI(i){return vt(i)||Ls(i)||!!(Ly&&i&&i[Ly])}function ko(i,g){var T=typeof i;return g=g??U,!!g&&(T=="number"||T!="symbol"&&nn.test(i))&&i>-1&&i%1==0&&i<g}function Rr(i,g,T){if(!wn(T))return!1;var H=typeof g;return(H=="number"?jr(T)&&ko(g,T.length):H=="string"&&g in T)?Bi(T[g],i):!1}function Ld(i,g){if(vt(i))return!1;var T=typeof i;return T=="number"||T=="symbol"||T=="boolean"||i==null||ri(i)?!0:Li.test(i)||!ta.test(i)||g!=null&&i in At(g)}function cI(i){var g=typeof i;return g=="string"||g=="number"||g=="symbol"||g=="boolean"?i!=="__proto__":i===null}function Od(i){var g=Nc(i),T=J[g];if(typeof T!="function"||!(g in Lt.prototype))return!1;if(i===T)return!0;var H=Ed(T);return!!H&&i===H[0]}function uI(i){return!!Ty&&Ty in i}var hI=_s?Ao:Qd;function al(i){var g=i&&i.constructor,T=typeof g=="function"&&g.prototype||Sn;return i===T}function Tw(i){return i===i&&!wn(i)}function Ew(i,g){return function(T){return T==null?!1:T[i]===g&&(g!==e||i in At(T))}}function dI(i){var g=zc(i,function(H){return T.size===p&&T.clear(),H}),T=g.cache;return g}function pI(i,g){var T=i[1],H=g[1],K=T|H,ee=K<(d|w|L),ae=H==L&&T==R||H==L&&T==O&&i[7].length<=g[8]||H==(L|O)&&g[7].length<=g[8]&&T==R;if(!(ee||ae))return i;H&d&&(i[2]=g[2],K|=T&d?0:b);var de=g[3];if(de){var ve=i[3];i[3]=ve?dw(ve,de,g[4]):de,i[4]=ve?Pe(i[3],s):g[4]}return de=g[5],de&&(ve=i[5],i[5]=ve?pw(ve,de,g[6]):de,i[6]=ve?Pe(i[5],s):g[6]),de=g[7],de&&(i[7]=de),H&L&&(i[8]=i[8]==null?g[8]:xr(i[8],g[8])),i[9]==null&&(i[9]=g[9]),i[0]=g[0],i[1]=K,i}function gI(i){var g=[];if(i!=null)for(var T in At(i))g.push(T);return g}function fI(i){return pc.call(i)}function Iw(i,g,T){return g=Jn(g===e?i.length-1:g,0),function(){for(var H=arguments,K=-1,ee=Jn(H.length-g,0),ae=xe(ee);++K<ee;)ae[K]=H[g+K];K=-1;for(var de=xe(g+1);++K<g;)de[K]=H[K];return de[g]=T(ae),rr(i,this,de)}}function Rw(i,g){return g.length<2?i:Es(i,xi(g,0,-1))}function mI(i,g){for(var T=i.length,H=xr(g.length,T),K=zr(i);H--;){var ee=g[H];i[H]=ko(ee,T)?K[ee]:e}return i}function Nd(i,g){if(!(g==="constructor"&&typeof i[g]=="function")&&g!="__proto__")return i[g]}var Lw=Nw(nw),ll=IT||function(i,g){return Qt.setTimeout(i,g)},Dd=Nw(WE);function Ow(i,g,T){var H=g+"";return Dd(i,aI(H,vI(iI(H),T)))}function Nw(i){var g=0,T=0;return function(){var H=NT(),K=N-(H-T);if(T=H,K>0){if(++g>=P)return arguments[0]}else g=0;return i.apply(e,arguments)}}function Fc(i,g){var T=-1,H=i.length,K=H-1;for(g=g===e?H:g;++T<g;){var ee=yd(T,K),ae=i[ee];i[ee]=i[T],i[T]=ae}return i.length=g,i}var Dw=dI(function(i){var g=[];return i.charCodeAt(0)===46&&g.push(""),i.replace(Rn,function(T,H,K,ee){g.push(K?ee.replace(qa,"$1"):H||T)}),g});function no(i){if(typeof i=="string"||ri(i))return i;var g=i+"";return g=="0"&&1/i==-j?"-0":g}function Rs(i){if(i!=null){try{return dc.call(i)}catch{}try{return i+""}catch{}}return""}function vI(i,g){return cr(le,function(T){var H="_."+T[0];g&T[1]&&!ei(i,H)&&i.push(H)}),i.sort()}function Fw(i){if(i instanceof Lt)return i.clone();var g=new wi(i.__wrapped__,i.__chain__);return g.__actions__=zr(i.__actions__),g.__index__=i.__index__,g.__values__=i.__values__,g}function yI(i,g,T){(T?Rr(i,g,T):g===e)?g=1:g=Jn(Ct(g),0);var H=i==null?0:i.length;if(!H||g<1)return[];for(var K=0,ee=0,ae=xe(wc(H/g));K<H;)ae[ee++]=xi(i,K,K+=g);return ae}function wI(i){for(var g=-1,T=i==null?0:i.length,H=0,K=[];++g<T;){var ee=i[g];ee&&(K[H++]=ee)}return K}function bI(){var i=arguments.length;if(!i)return[];for(var g=xe(i-1),T=arguments[0],H=i;H--;)g[H-1]=arguments[H];return $(vt(T)?zr(T):[T],hr(g,1))}var xI=$t(function(i,g){return Nn(i)?nl(i,hr(g,1,Nn,!0)):[]}),CI=$t(function(i,g){var T=Ci(g);return Nn(T)&&(T=e),Nn(i)?nl(i,hr(g,1,Nn,!0),at(T,2)):[]}),kI=$t(function(i,g){var T=Ci(g);return Nn(T)&&(T=e),Nn(i)?nl(i,hr(g,1,Nn,!0),e,T):[]});function AI(i,g,T){var H=i==null?0:i.length;return H?(g=T||g===e?1:Ct(g),xi(i,g<0?0:g,H)):[]}function _I(i,g,T){var H=i==null?0:i.length;return H?(g=T||g===e?1:Ct(g),g=H-g,xi(i,0,g<0?0:g)):[]}function SI(i,g){return i&&i.length?Tc(i,at(g,3),!0,!0):[]}function $I(i,g){return i&&i.length?Tc(i,at(g,3),!0):[]}function MI(i,g,T,H){var K=i==null?0:i.length;return K?(T&&typeof T!="number"&&Rr(i,g,T)&&(T=0,H=K),bE(i,g,T,H)):[]}function Pw(i,g,T){var H=i==null?0:i.length;if(!H)return-1;var K=T==null?0:Ct(T);return K<0&&(K=Jn(H+K,0)),re(i,at(g,3),K)}function Ww(i,g,T){var H=i==null?0:i.length;if(!H)return-1;var K=H-1;return T!==e&&(K=Ct(T),K=T<0?Jn(H+K,0):xr(K,H-1)),re(i,at(g,3),K,!0)}function Bw(i){var g=i==null?0:i.length;return g?hr(i,1):[]}function TI(i){var g=i==null?0:i.length;return g?hr(i,j):[]}function EI(i,g){var T=i==null?0:i.length;return T?(g=g===e?1:Ct(g),hr(i,g)):[]}function II(i){for(var g=-1,T=i==null?0:i.length,H={};++g<T;){var K=i[g];H[K[0]]=K[1]}return H}function zw(i){return i&&i.length?i[0]:e}function RI(i,g,T){var H=i==null?0:i.length;if(!H)return-1;var K=T==null?0:Ct(T);return K<0&&(K=Jn(H+K,0)),se(i,g,K)}function LI(i){var g=i==null?0:i.length;return g?xi(i,0,-1):[]}var OI=$t(function(i){var g=m(i,kd);return g.length&&g[0]===i[0]?pd(g):[]}),NI=$t(function(i){var g=Ci(i),T=m(i,kd);return g===Ci(T)?g=e:T.pop(),T.length&&T[0]===i[0]?pd(T,at(g,2)):[]}),DI=$t(function(i){var g=Ci(i),T=m(i,kd);return g=typeof g=="function"?g:e,g&&T.pop(),T.length&&T[0]===i[0]?pd(T,e,g):[]});function FI(i,g){return i==null?"":LT.call(i,g)}function Ci(i){var g=i==null?0:i.length;return g?i[g-1]:e}function PI(i,g,T){var H=i==null?0:i.length;if(!H)return-1;var K=H;return T!==e&&(K=Ct(T),K=K<0?Jn(H+K,0):xr(K,H-1)),g===g?pt(i,g,K):re(i,Ce,K,!0)}function WI(i,g){return i&&i.length?Zy(i,Ct(g)):e}var BI=$t(jw);function jw(i,g){return i&&i.length&&g&&g.length?vd(i,g):i}function zI(i,g,T){return i&&i.length&&g&&g.length?vd(i,g,at(T,2)):i}function jI(i,g,T){return i&&i.length&&g&&g.length?vd(i,g,e,T):i}var HI=Co(function(i,g){var T=i==null?0:i.length,H=cd(i,g);return tw(i,m(g,function(K){return ko(K,T)?+K:K}).sort(hw)),H});function UI(i,g){var T=[];if(!(i&&i.length))return T;var H=-1,K=[],ee=i.length;for(g=at(g,3);++H<ee;){var ae=i[H];g(ae,H,i)&&(T.push(ae),K.push(H))}return tw(i,K),T}function Fd(i){return i==null?i:FT.call(i)}function VI(i,g,T){var H=i==null?0:i.length;return H?(T&&typeof T!="number"&&Rr(i,g,T)?(g=0,T=H):(g=g==null?0:Ct(g),T=T===e?H:Ct(T)),xi(i,g,T)):[]}function GI(i,g){return Mc(i,g)}function KI(i,g,T){return bd(i,g,at(T,2))}function qI(i,g){var T=i==null?0:i.length;if(T){var H=Mc(i,g);if(H<T&&Bi(i[H],g))return H}return-1}function YI(i,g){return Mc(i,g,!0)}function XI(i,g,T){return bd(i,g,at(T,2),!0)}function QI(i,g){var T=i==null?0:i.length;if(T){var H=Mc(i,g,!0)-1;if(Bi(i[H],g))return H}return-1}function ZI(i){return i&&i.length?rw(i):[]}function JI(i,g){return i&&i.length?rw(i,at(g,2)):[]}function eR(i){var g=i==null?0:i.length;return g?xi(i,1,g):[]}function tR(i,g,T){return i&&i.length?(g=T||g===e?1:Ct(g),xi(i,0,g<0?0:g)):[]}function nR(i,g,T){var H=i==null?0:i.length;return H?(g=T||g===e?1:Ct(g),g=H-g,xi(i,g<0?0:g,H)):[]}function rR(i,g){return i&&i.length?Tc(i,at(g,3),!1,!0):[]}function iR(i,g){return i&&i.length?Tc(i,at(g,3)):[]}var oR=$t(function(i){return qo(hr(i,1,Nn,!0))}),sR=$t(function(i){var g=Ci(i);return Nn(g)&&(g=e),qo(hr(i,1,Nn,!0),at(g,2))}),aR=$t(function(i){var g=Ci(i);return g=typeof g=="function"?g:e,qo(hr(i,1,Nn,!0),e,g)});function lR(i){return i&&i.length?qo(i):[]}function cR(i,g){return i&&i.length?qo(i,at(g,2)):[]}function uR(i,g){return g=typeof g=="function"?g:e,i&&i.length?qo(i,e,g):[]}function Pd(i){if(!(i&&i.length))return[];var g=0;return i=br(i,function(T){if(Nn(T))return g=Jn(T.length,g),!0}),Ke(g,function(T){return m(i,we(T))})}function Hw(i,g){if(!(i&&i.length))return[];var T=Pd(i);return g==null?T:m(T,function(H){return rr(g,e,H)})}var hR=$t(function(i,g){return Nn(i)?nl(i,g):[]}),dR=$t(function(i){return Cd(br(i,Nn))}),pR=$t(function(i){var g=Ci(i);return Nn(g)&&(g=e),Cd(br(i,Nn),at(g,2))}),gR=$t(function(i){var g=Ci(i);return g=typeof g=="function"?g:e,Cd(br(i,Nn),e,g)}),fR=$t(Pd);function mR(i,g){return aw(i||[],g||[],tl)}function vR(i,g){return aw(i||[],g||[],ol)}var yR=$t(function(i){var g=i.length,T=g>1?i[g-1]:e;return T=typeof T=="function"?(i.pop(),T):e,Hw(i,T)});function Uw(i){var g=J(i);return g.__chain__=!0,g}function wR(i,g){return g(i),i}function Pc(i,g){return g(i)}var bR=Co(function(i){var g=i.length,T=g?i[0]:0,H=this.__wrapped__,K=function(ee){return cd(ee,i)};return g>1||this.__actions__.length||!(H instanceof Lt)||!ko(T)?this.thru(K):(H=H.slice(T,+T+(g?1:0)),H.__actions__.push({func:Pc,args:[K],thisArg:e}),new wi(H,this.__chain__).thru(function(ee){return g&&!ee.length&&ee.push(e),ee}))});function xR(){return Uw(this)}function CR(){return new wi(this.value(),this.__chain__)}function kR(){this.__values__===e&&(this.__values__=i0(this.value()));var i=this.__index__>=this.__values__.length,g=i?e:this.__values__[this.__index__++];return{done:i,value:g}}function AR(){return this}function _R(i){for(var g,T=this;T instanceof kc;){var H=Fw(T);H.__index__=0,H.__values__=e,g?K.__wrapped__=H:g=H;var K=H;T=T.__wrapped__}return K.__wrapped__=i,g}function SR(){var i=this.__wrapped__;if(i instanceof Lt){var g=i;return this.__actions__.length&&(g=new Lt(this)),g=g.reverse(),g.__actions__.push({func:Pc,args:[Fd],thisArg:e}),new wi(g,this.__chain__)}return this.thru(Fd)}function $R(){return sw(this.__wrapped__,this.__actions__)}var MR=Ec(function(i,g,T){Xt.call(i,T)?++i[T]:bo(i,T,1)});function TR(i,g,T){var H=vt(i)?ur:wE;return T&&Rr(i,g,T)&&(g=e),H(i,at(g,3))}function ER(i,g){var T=vt(i)?br:Hy;return T(i,at(g,3))}var IR=vw(Pw),RR=vw(Ww);function LR(i,g){return hr(Wc(i,g),1)}function OR(i,g){return hr(Wc(i,g),j)}function NR(i,g,T){return T=T===e?1:Ct(T),hr(Wc(i,g),T)}function Vw(i,g){var T=vt(i)?cr:Ko;return T(i,at(g,3))}function Gw(i,g){var T=vt(i)?As:jy;return T(i,at(g,3))}var DR=Ec(function(i,g,T){Xt.call(i,T)?i[T].push(g):bo(i,T,[g])});function FR(i,g,T,H){i=jr(i)?i:ma(i),T=T&&!H?Ct(T):0;var K=i.length;return T<0&&(T=Jn(K+T,0)),Uc(i)?T<=K&&i.indexOf(g,T)>-1:!!K&&se(i,g,T)>-1}var PR=$t(function(i,g,T){var H=-1,K=typeof g=="function",ee=jr(i)?xe(i.length):[];return Ko(i,function(ae){ee[++H]=K?rr(g,ae,T):rl(ae,g,T)}),ee}),WR=Ec(function(i,g,T){bo(i,T,g)});function Wc(i,g){var T=vt(i)?m:Yy;return T(i,at(g,3))}function BR(i,g,T,H){return i==null?[]:(vt(g)||(g=g==null?[]:[g]),T=H?e:T,vt(T)||(T=T==null?[]:[T]),Jy(i,g,T))}var zR=Ec(function(i,g,T){i[T?0:1].push(g)},function(){return[[],[]]});function jR(i,g,T){var H=vt(i)?_:Re,K=arguments.length<3;return H(i,at(g,4),T,K,Ko)}function HR(i,g,T){var H=vt(i)?F:Re,K=arguments.length<3;return H(i,at(g,4),T,K,jy)}function UR(i,g){var T=vt(i)?br:Hy;return T(i,jc(at(g,3)))}function VR(i){var g=vt(i)?Py:FE;return g(i)}function GR(i,g,T){(T?Rr(i,g,T):g===e)?g=1:g=Ct(g);var H=vt(i)?gE:PE;return H(i,g)}function KR(i){var g=vt(i)?fE:BE;return g(i)}function qR(i){if(i==null)return 0;if(jr(i))return Uc(i)?Mt(i):i.length;var g=Cr(i);return g==Je||g==Bn?i.size:fd(i).length}function YR(i,g,T){var H=vt(i)?W:zE;return T&&Rr(i,g,T)&&(g=e),H(i,at(g,3))}var XR=$t(function(i,g){if(i==null)return[];var T=g.length;return T>1&&Rr(i,g[0],g[1])?g=[]:T>2&&Rr(g[0],g[1],g[2])&&(g=[g[0]]),Jy(i,hr(g,1),[])}),Bc=ET||function(){return Qt.Date.now()};function QR(i,g){if(typeof g!="function")throw new Zt(y);return i=Ct(i),function(){if(--i<1)return g.apply(this,arguments)}}function Kw(i,g,T){return g=T?e:g,g=i&&g==null?i.length:g,xo(i,L,e,e,e,e,g)}function qw(i,g){var T;if(typeof g!="function")throw new Zt(y);return i=Ct(i),function(){return--i>0&&(T=g.apply(this,arguments)),i<=1&&(g=e),T}}var Wd=$t(function(i,g,T){var H=d;if(T.length){var K=Pe(T,ga(Wd));H|=k}return xo(i,H,g,T,K)}),Yw=$t(function(i,g,T){var H=d|w;if(T.length){var K=Pe(T,ga(Yw));H|=k}return xo(g,H,i,T,K)});function Xw(i,g,T){g=T?e:g;var H=xo(i,R,e,e,e,e,e,g);return H.placeholder=Xw.placeholder,H}function Qw(i,g,T){g=T?e:g;var H=xo(i,M,e,e,e,e,e,g);return H.placeholder=Qw.placeholder,H}function Zw(i,g,T){var H,K,ee,ae,de,ve,Ee=0,Ie=!1,Ne=!1,Ue=!0;if(typeof i!="function")throw new Zt(y);g=ki(g)||0,wn(T)&&(Ie=!!T.leading,Ne="maxWait"in T,ee=Ne?Jn(ki(T.maxWait)||0,g):ee,Ue="trailing"in T?!!T.trailing:Ue);function Ze(Dn){var zi=H,So=K;return H=K=e,Ee=Dn,ae=i.apply(So,zi),ae}function ct(Dn){return Ee=Dn,de=ll(Tt,g),Ie?Ze(Dn):ae}function _t(Dn){var zi=Dn-ve,So=Dn-Ee,v0=g-zi;return Ne?xr(v0,ee-So):v0}function ut(Dn){var zi=Dn-ve,So=Dn-Ee;return ve===e||zi>=g||zi<0||Ne&&So>=ee}function Tt(){var Dn=Bc();if(ut(Dn))return Nt(Dn);de=ll(Tt,_t(Dn))}function Nt(Dn){return de=e,Ue&&H?Ze(Dn):(H=K=e,ae)}function ii(){de!==e&&lw(de),Ee=0,H=ve=K=de=e}function Lr(){return de===e?ae:Nt(Bc())}function oi(){var Dn=Bc(),zi=ut(Dn);if(H=arguments,K=this,ve=Dn,zi){if(de===e)return ct(ve);if(Ne)return lw(de),de=ll(Tt,g),Ze(ve)}return de===e&&(de=ll(Tt,g)),ae}return oi.cancel=ii,oi.flush=Lr,oi}var ZR=$t(function(i,g){return zy(i,1,g)}),JR=$t(function(i,g,T){return zy(i,ki(g)||0,T)});function eL(i){return xo(i,I)}function zc(i,g){if(typeof i!="function"||g!=null&&typeof g!="function")throw new Zt(y);var T=function(){var H=arguments,K=g?g.apply(this,H):H[0],ee=T.cache;if(ee.has(K))return ee.get(K);var ae=i.apply(this,H);return T.cache=ee.set(K,ae)||ee,ae};return T.cache=new(zc.Cache||wo),T}zc.Cache=wo;function jc(i){if(typeof i!="function")throw new Zt(y);return function(){var g=arguments;switch(g.length){case 0:return!i.call(this);case 1:return!i.call(this,g[0]);case 2:return!i.call(this,g[0],g[1]);case 3:return!i.call(this,g[0],g[1],g[2])}return!i.apply(this,g)}}function tL(i){return qw(2,i)}var nL=jE(function(i,g){g=g.length==1&&vt(g[0])?m(g[0],it(at())):m(hr(g,1),it(at()));var T=g.length;return $t(function(H){for(var K=-1,ee=xr(H.length,T);++K<ee;)H[K]=g[K].call(this,H[K]);return rr(i,this,H)})}),Bd=$t(function(i,g){var T=Pe(g,ga(Bd));return xo(i,k,e,g,T)}),Jw=$t(function(i,g){var T=Pe(g,ga(Jw));return xo(i,x,e,g,T)}),rL=Co(function(i,g){return xo(i,O,e,e,e,g)});function iL(i,g){if(typeof i!="function")throw new Zt(y);return g=g===e?g:Ct(g),$t(i,g)}function oL(i,g){if(typeof i!="function")throw new Zt(y);return g=g==null?0:Jn(Ct(g),0),$t(function(T){var H=T[g],K=Xo(T,0,g);return H&&$(K,H),rr(i,this,K)})}function sL(i,g,T){var H=!0,K=!0;if(typeof i!="function")throw new Zt(y);return wn(T)&&(H="leading"in T?!!T.leading:H,K="trailing"in T?!!T.trailing:K),Zw(i,g,{leading:H,maxWait:g,trailing:K})}function aL(i){return Kw(i,1)}function lL(i,g){return Bd(Ad(g),i)}function cL(){if(!arguments.length)return[];var i=arguments[0];return vt(i)?i:[i]}function uL(i){return bi(i,l)}function hL(i,g){return g=typeof g=="function"?g:e,bi(i,l,g)}function dL(i){return bi(i,a|l)}function pL(i,g){return g=typeof g=="function"?g:e,bi(i,a|l,g)}function gL(i,g){return g==null||By(i,g,ar(g))}function Bi(i,g){return i===g||i!==i&&g!==g}var fL=Oc(dd),mL=Oc(function(i,g){return i>=g}),Ls=Gy(function(){return arguments}())?Gy:function(i){return $n(i)&&Xt.call(i,"callee")&&!Ry.call(i,"callee")},vt=xe.isArray,vL=Br?it(Br):_E;function jr(i){return i!=null&&Hc(i.length)&&!Ao(i)}function Nn(i){return $n(i)&&jr(i)}function yL(i){return i===!0||i===!1||$n(i)&&Ir(i)==Se}var Qo=RT||Qd,wL=Vo?it(Vo):SE;function bL(i){return $n(i)&&i.nodeType===1&&!cl(i)}function xL(i){if(i==null)return!0;if(jr(i)&&(vt(i)||typeof i=="string"||typeof i.splice=="function"||Qo(i)||fa(i)||Ls(i)))return!i.length;var g=Cr(i);if(g==Je||g==Bn)return!i.size;if(al(i))return!fd(i).length;for(var T in i)if(Xt.call(i,T))return!1;return!0}function CL(i,g){return il(i,g)}function kL(i,g,T){T=typeof T=="function"?T:e;var H=T?T(i,g):e;return H===e?il(i,g,e,T):!!H}function zd(i){if(!$n(i))return!1;var g=Ir(i);return g==qe||g==Te||typeof i.message=="string"&&typeof i.name=="string"&&!cl(i)}function AL(i){return typeof i=="number"&&Oy(i)}function Ao(i){if(!wn(i))return!1;var g=Ir(i);return g==Ve||g==lt||g==fe||g==qr}function e0(i){return typeof i=="number"&&i==Ct(i)}function Hc(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=U}function wn(i){var g=typeof i;return i!=null&&(g=="object"||g=="function")}function $n(i){return i!=null&&typeof i=="object"}var t0=_n?it(_n):ME;function _L(i,g){return i===g||gd(i,g,Id(g))}function SL(i,g,T){return T=typeof T=="function"?T:e,gd(i,g,Id(g),T)}function $L(i){return n0(i)&&i!=+i}function ML(i){if(hI(i))throw new ot(f);return Ky(i)}function TL(i){return i===null}function EL(i){return i==null}function n0(i){return typeof i=="number"||$n(i)&&Ir(i)==ht}function cl(i){if(!$n(i)||Ir(i)!=In)return!1;var g=mc(i);if(g===null)return!0;var T=Xt.call(g,"constructor")&&g.constructor;return typeof T=="function"&&T instanceof T&&dc.call(T)==ST}var jd=Zr?it(Zr):TE;function IL(i){return e0(i)&&i>=-U&&i<=U}var r0=Jr?it(Jr):EE;function Uc(i){return typeof i=="string"||!vt(i)&&$n(i)&&Ir(i)==tr}function ri(i){return typeof i=="symbol"||$n(i)&&Ir(i)==Sr}var fa=vi?it(vi):IE;function RL(i){return i===e}function LL(i){return $n(i)&&Cr(i)==He}function OL(i){return $n(i)&&Ir(i)==Pt}var NL=Oc(md),DL=Oc(function(i,g){return i<=g});function i0(i){if(!i)return[];if(jr(i))return Uc(i)?mt(i):zr(i);if(Xa&&i[Xa])return be(i[Xa]());var g=Cr(i),T=g==Je?Me:g==Bn?je:ma;return T(i)}function _o(i){if(!i)return i===0?i:0;if(i=ki(i),i===j||i===-j){var g=i<0?-1:1;return g*q}return i===i?i:0}function Ct(i){var g=_o(i),T=g%1;return g===g?T?g-T:g:0}function o0(i){return i?Ts(Ct(i),0,te):0}function ki(i){if(typeof i=="number")return i;if(ri(i))return Z;if(wn(i)){var g=typeof i.valueOf=="function"?i.valueOf():i;i=wn(g)?g+"":g}if(typeof i!="string")return i===0?i:+i;i=on(i);var T=ra.test(i);return T||Ln.test(i)?rn(i.slice(2),T?2:8):It.test(i)?Z:+i}function s0(i){return to(i,Hr(i))}function FL(i){return i?Ts(Ct(i),-U,U):i===0?i:0}function Gt(i){return i==null?"":ni(i)}var PL=da(function(i,g){if(al(g)||jr(g)){to(g,ar(g),i);return}for(var T in g)Xt.call(g,T)&&tl(i,T,g[T])}),a0=da(function(i,g){to(g,Hr(g),i)}),Vc=da(function(i,g,T,H){to(g,Hr(g),i,H)}),WL=da(function(i,g,T,H){to(g,ar(g),i,H)}),BL=Co(cd);function zL(i,g){var T=ha(i);return g==null?T:Wy(T,g)}var jL=$t(function(i,g){i=At(i);var T=-1,H=g.length,K=H>2?g[2]:e;for(K&&Rr(g[0],g[1],K)&&(H=1);++T<H;)for(var ee=g[T],ae=Hr(ee),de=-1,ve=ae.length;++de<ve;){var Ee=ae[de],Ie=i[Ee];(Ie===e||Bi(Ie,Sn[Ee])&&!Xt.call(i,Ee))&&(i[Ee]=ee[Ee])}return i}),HL=$t(function(i){return i.push(e,Aw),rr(l0,e,i)});function UL(i,g){return Q(i,at(g,3),eo)}function VL(i,g){return Q(i,at(g,3),hd)}function GL(i,g){return i==null?i:ud(i,at(g,3),Hr)}function KL(i,g){return i==null?i:Uy(i,at(g,3),Hr)}function qL(i,g){return i&&eo(i,at(g,3))}function YL(i,g){return i&&hd(i,at(g,3))}function XL(i){return i==null?[]:Sc(i,ar(i))}function QL(i){return i==null?[]:Sc(i,Hr(i))}function Hd(i,g,T){var H=i==null?e:Es(i,g);return H===e?T:H}function ZL(i,g){return i!=null&&$w(i,g,xE)}function Ud(i,g){return i!=null&&$w(i,g,CE)}var JL=ww(function(i,g,T){g!=null&&typeof g.toString!="function"&&(g=pc.call(g)),i[g]=T},Gd(Ur)),eO=ww(function(i,g,T){g!=null&&typeof g.toString!="function"&&(g=pc.call(g)),Xt.call(i,g)?i[g].push(T):i[g]=[T]},at),tO=$t(rl);function ar(i){return jr(i)?Fy(i):fd(i)}function Hr(i){return jr(i)?Fy(i,!0):RE(i)}function nO(i,g){var T={};return g=at(g,3),eo(i,function(H,K,ee){bo(T,g(H,K,ee),H)}),T}function rO(i,g){var T={};return g=at(g,3),eo(i,function(H,K,ee){bo(T,K,g(H,K,ee))}),T}var iO=da(function(i,g,T){$c(i,g,T)}),l0=da(function(i,g,T,H){$c(i,g,T,H)}),oO=Co(function(i,g){var T={};if(i==null)return T;var H=!1;g=m(g,function(ee){return ee=Yo(ee,i),H||(H=ee.length>1),ee}),to(i,Td(i),T),H&&(T=bi(T,a|c|l,JE));for(var K=g.length;K--;)xd(T,g[K]);return T});function sO(i,g){return c0(i,jc(at(g)))}var aO=Co(function(i,g){return i==null?{}:OE(i,g)});function c0(i,g){if(i==null)return{};var T=m(Td(i),function(H){return[H]});return g=at(g),ew(i,T,function(H,K){return g(H,K[0])})}function lO(i,g,T){g=Yo(g,i);var H=-1,K=g.length;for(K||(K=1,i=e);++H<K;){var ee=i==null?e:i[no(g[H])];ee===e&&(H=K,ee=T),i=Ao(ee)?ee.call(i):ee}return i}function cO(i,g,T){return i==null?i:ol(i,g,T)}function uO(i,g,T,H){return H=typeof H=="function"?H:e,i==null?i:ol(i,g,T,H)}var u0=Cw(ar),h0=Cw(Hr);function hO(i,g,T){var H=vt(i),K=H||Qo(i)||fa(i);if(g=at(g,4),T==null){var ee=i&&i.constructor;K?T=H?new ee:[]:wn(i)?T=Ao(ee)?ha(mc(i)):{}:T={}}return(K?cr:eo)(i,function(ae,de,ve){return g(T,ae,de,ve)}),T}function dO(i,g){return i==null?!0:xd(i,g)}function pO(i,g,T){return i==null?i:ow(i,g,Ad(T))}function gO(i,g,T,H){return H=typeof H=="function"?H:e,i==null?i:ow(i,g,Ad(T),H)}function ma(i){return i==null?[]:un(i,ar(i))}function fO(i){return i==null?[]:un(i,Hr(i))}function mO(i,g,T){return T===e&&(T=g,g=e),T!==e&&(T=ki(T),T=T===T?T:0),g!==e&&(g=ki(g),g=g===g?g:0),Ts(ki(i),g,T)}function vO(i,g,T){return g=_o(g),T===e?(T=g,g=0):T=_o(T),i=ki(i),kE(i,g,T)}function yO(i,g,T){if(T&&typeof T!="boolean"&&Rr(i,g,T)&&(g=T=e),T===e&&(typeof g=="boolean"?(T=g,g=e):typeof i=="boolean"&&(T=i,i=e)),i===e&&g===e?(i=0,g=1):(i=_o(i),g===e?(g=i,i=0):g=_o(g)),i>g){var H=i;i=g,g=H}if(T||i%1||g%1){var K=Ny();return xr(i+K*(g-i+We("1e-"+((K+"").length-1))),g)}return yd(i,g)}var wO=pa(function(i,g,T){return g=g.toLowerCase(),i+(T?d0(g):g)});function d0(i){return Vd(Gt(i).toLowerCase())}function p0(i){return i=Gt(i),i&&i.replace(Cn,hn).replace(fo,"")}function bO(i,g,T){i=Gt(i),g=ni(g);var H=i.length;T=T===e?H:Ts(Ct(T),0,H);var K=T;return T-=g.length,T>=0&&i.slice(T,K)==g}function xO(i){return i=Gt(i),i&&Va.test(i)?i.replace(ao,V):i}function CO(i){return i=Gt(i),i&&Oi.test(i)?i.replace(mr,"\\$&"):i}var kO=pa(function(i,g,T){return i+(T?"-":"")+g.toLowerCase()}),AO=pa(function(i,g,T){return i+(T?" ":"")+g.toLowerCase()}),_O=mw("toLowerCase");function SO(i,g,T){i=Gt(i),g=Ct(g);var H=g?Mt(i):0;if(!g||H>=g)return i;var K=(g-H)/2;return Lc(bc(K),T)+i+Lc(wc(K),T)}function $O(i,g,T){i=Gt(i),g=Ct(g);var H=g?Mt(i):0;return g&&H<g?i+Lc(g-H,T):i}function MO(i,g,T){i=Gt(i),g=Ct(g);var H=g?Mt(i):0;return g&&H<g?Lc(g-H,T)+i:i}function TO(i,g,T){return T||g==null?g=0:g&&(g=+g),DT(Gt(i).replace(vn,""),g||0)}function EO(i,g,T){return(T?Rr(i,g,T):g===e)?g=1:g=Ct(g),wd(Gt(i),g)}function IO(){var i=arguments,g=Gt(i[0]);return i.length<3?g:g.replace(i[1],i[2])}var RO=pa(function(i,g,T){return i+(T?"_":"")+g.toLowerCase()});function LO(i,g,T){return T&&typeof T!="number"&&Rr(i,g,T)&&(g=T=e),T=T===e?te:T>>>0,T?(i=Gt(i),i&&(typeof g=="string"||g!=null&&!jd(g))&&(g=ni(g),!g&&oe(i))?Xo(mt(i),0,T):i.split(g,T)):[]}var OO=pa(function(i,g,T){return i+(T?" ":"")+Vd(g)});function NO(i,g,T){return i=Gt(i),T=T==null?0:Ts(Ct(T),0,i.length),g=ni(g),i.slice(T,T+g.length)==g}function DO(i,g,T){var H=J.templateSettings;T&&Rr(i,g,T)&&(g=e),i=Gt(i),g=Vc({},g,H,kw);var K=Vc({},g.imports,H.imports,kw),ee=ar(K),ae=un(K,ee),de,ve,Ee=0,Ie=g.interpolate||hi,Ne="__p += '",Ue=Er((g.escape||hi).source+"|"+Ie.source+"|"+(Ie===ms?Di:hi).source+"|"+(g.evaluate||hi).source+"|$","g"),Ze="//# sourceURL="+(Xt.call(g,"sourceURL")?(g.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ji+"]")+`
1472
+ `;i.replace(Ue,function(ut,Tt,Nt,ii,Lr,oi){return Nt||(Nt=ii),Ne+=i.slice(Ee,oi).replace(wr,X),Tt&&(de=!0,Ne+=`' +
1473
+ __e(`+Tt+`) +
1474
+ '`),Lr&&(ve=!0,Ne+=`';
1475
+ `+Lr+`;
1476
+ __p += '`),Nt&&(Ne+=`' +
1477
+ ((__t = (`+Nt+`)) == null ? '' : __t) +
1478
+ '`),Ee=oi+ut.length,ut}),Ne+=`';
1479
+ `;var ct=Xt.call(g,"variable")&&g.variable;if(!ct)Ne=`with (obj) {
1480
+ `+Ne+`
1481
+ }
1482
+ `;else if(Ka.test(ct))throw new ot(C);Ne=(ve?Ne.replace(Ii,""):Ne).replace(Ri,"$1").replace(so,"$1;"),Ne="function("+(ct||"obj")+`) {
1483
+ `+(ct?"":`obj || (obj = {});
1484
+ `)+"var __t, __p = ''"+(de?", __e = _.escape":"")+(ve?`, __j = Array.prototype.join;
1485
+ function print() { __p += __j.call(arguments, '') }
1486
+ `:`;
1487
+ `)+Ne+`return __p
1488
+ }`;var _t=f0(function(){return xt(ee,Ze+"return "+Ne).apply(e,ae)});if(_t.source=Ne,zd(_t))throw _t;return _t}function FO(i){return Gt(i).toLowerCase()}function PO(i){return Gt(i).toUpperCase()}function WO(i,g,T){if(i=Gt(i),i&&(T||g===e))return on(i);if(!i||!(g=ni(g)))return i;var H=mt(i),K=mt(g),ee=bt(H,K),ae=Hn(H,K)+1;return Xo(H,ee,ae).join("")}function BO(i,g,T){if(i=Gt(i),i&&(T||g===e))return i.slice(0,St(i)+1);if(!i||!(g=ni(g)))return i;var H=mt(i),K=Hn(H,mt(g))+1;return Xo(H,0,K).join("")}function zO(i,g,T){if(i=Gt(i),i&&(T||g===e))return i.replace(vn,"");if(!i||!(g=ni(g)))return i;var H=mt(i),K=bt(H,mt(g));return Xo(H,K).join("")}function jO(i,g){var T=E,H=z;if(wn(g)){var K="separator"in g?g.separator:K;T="length"in g?Ct(g.length):T,H="omission"in g?ni(g.omission):H}i=Gt(i);var ee=i.length;if(oe(i)){var ae=mt(i);ee=ae.length}if(T>=ee)return i;var de=T-Mt(H);if(de<1)return H;var ve=ae?Xo(ae,0,de).join(""):i.slice(0,de);if(K===e)return ve+H;if(ae&&(de+=ve.length-de),jd(K)){if(i.slice(de).search(K)){var Ee,Ie=ve;for(K.global||(K=Er(K.source,Gt(Xr.exec(K))+"g")),K.lastIndex=0;Ee=K.exec(Ie);)var Ne=Ee.index;ve=ve.slice(0,Ne===e?de:Ne)}}else if(i.indexOf(ni(K),de)!=de){var Ue=ve.lastIndexOf(K);Ue>-1&&(ve=ve.slice(0,Ue))}return ve+H}function HO(i){return i=Gt(i),i&&Oo.test(i)?i.replace(lr,st):i}var UO=pa(function(i,g,T){return i+(T?" ":"")+g.toUpperCase()}),Vd=mw("toUpperCase");function g0(i,g,T){return i=Gt(i),g=T?e:g,g===e?ge(i)?dn(i):Y(i):i.match(g)||[]}var f0=$t(function(i,g){try{return rr(i,e,g)}catch(T){return zd(T)?T:new ot(T)}}),VO=Co(function(i,g){return cr(g,function(T){T=no(T),bo(i,T,Wd(i[T],i))}),i});function GO(i){var g=i==null?0:i.length,T=at();return i=g?m(i,function(H){if(typeof H[1]!="function")throw new Zt(y);return[T(H[0]),H[1]]}):[],$t(function(H){for(var K=-1;++K<g;){var ee=i[K];if(rr(ee[0],this,H))return rr(ee[1],this,H)}})}function KO(i){return yE(bi(i,a))}function Gd(i){return function(){return i}}function qO(i,g){return i==null||i!==i?g:i}var YO=yw(),XO=yw(!0);function Ur(i){return i}function Kd(i){return qy(typeof i=="function"?i:bi(i,a))}function QO(i){return Xy(bi(i,a))}function ZO(i,g){return Qy(i,bi(g,a))}var JO=$t(function(i,g){return function(T){return rl(T,i,g)}}),e2=$t(function(i,g){return function(T){return rl(i,T,g)}});function qd(i,g,T){var H=ar(g),K=Sc(g,H);T==null&&!(wn(g)&&(K.length||!H.length))&&(T=g,g=i,i=this,K=Sc(g,ar(g)));var ee=!(wn(T)&&"chain"in T)||!!T.chain,ae=Ao(i);return cr(K,function(de){var ve=g[de];i[de]=ve,ae&&(i.prototype[de]=function(){var Ee=this.__chain__;if(ee||Ee){var Ie=i(this.__wrapped__),Ne=Ie.__actions__=zr(this.__actions__);return Ne.push({func:ve,args:arguments,thisArg:i}),Ie.__chain__=Ee,Ie}return ve.apply(i,$([this.value()],arguments))})}),i}function t2(){return Qt._===this&&(Qt._=$T),this}function Yd(){}function n2(i){return i=Ct(i),$t(function(g){return Zy(g,i)})}var r2=Sd(m),i2=Sd(ur),o2=Sd(W);function m0(i){return Ld(i)?we(no(i)):NE(i)}function s2(i){return function(g){return i==null?e:Es(i,g)}}var a2=bw(),l2=bw(!0);function Xd(){return[]}function Qd(){return!1}function c2(){return{}}function u2(){return""}function h2(){return!0}function d2(i,g){if(i=Ct(i),i<1||i>U)return[];var T=te,H=xr(i,te);g=at(g),i-=te;for(var K=Ke(H,g);++T<i;)g(T);return K}function p2(i){return vt(i)?m(i,no):ri(i)?[i]:zr(Dw(Gt(i)))}function g2(i){var g=++_T;return Gt(i)+g}var f2=Rc(function(i,g){return i+g},0),m2=$d("ceil"),v2=Rc(function(i,g){return i/g},1),y2=$d("floor");function w2(i){return i&&i.length?_c(i,Ur,dd):e}function b2(i,g){return i&&i.length?_c(i,at(g,2),dd):e}function x2(i){return me(i,Ur)}function C2(i,g){return me(i,at(g,2))}function k2(i){return i&&i.length?_c(i,Ur,md):e}function A2(i,g){return i&&i.length?_c(i,at(g,2),md):e}var _2=Rc(function(i,g){return i*g},1),S2=$d("round"),$2=Rc(function(i,g){return i-g},0);function M2(i){return i&&i.length?rt(i,Ur):0}function T2(i,g){return i&&i.length?rt(i,at(g,2)):0}return J.after=QR,J.ary=Kw,J.assign=PL,J.assignIn=a0,J.assignInWith=Vc,J.assignWith=WL,J.at=BL,J.before=qw,J.bind=Wd,J.bindAll=VO,J.bindKey=Yw,J.castArray=cL,J.chain=Uw,J.chunk=yI,J.compact=wI,J.concat=bI,J.cond=GO,J.conforms=KO,J.constant=Gd,J.countBy=MR,J.create=zL,J.curry=Xw,J.curryRight=Qw,J.debounce=Zw,J.defaults=jL,J.defaultsDeep=HL,J.defer=ZR,J.delay=JR,J.difference=xI,J.differenceBy=CI,J.differenceWith=kI,J.drop=AI,J.dropRight=_I,J.dropRightWhile=SI,J.dropWhile=$I,J.fill=MI,J.filter=ER,J.flatMap=LR,J.flatMapDeep=OR,J.flatMapDepth=NR,J.flatten=Bw,J.flattenDeep=TI,J.flattenDepth=EI,J.flip=eL,J.flow=YO,J.flowRight=XO,J.fromPairs=II,J.functions=XL,J.functionsIn=QL,J.groupBy=DR,J.initial=LI,J.intersection=OI,J.intersectionBy=NI,J.intersectionWith=DI,J.invert=JL,J.invertBy=eO,J.invokeMap=PR,J.iteratee=Kd,J.keyBy=WR,J.keys=ar,J.keysIn=Hr,J.map=Wc,J.mapKeys=nO,J.mapValues=rO,J.matches=QO,J.matchesProperty=ZO,J.memoize=zc,J.merge=iO,J.mergeWith=l0,J.method=JO,J.methodOf=e2,J.mixin=qd,J.negate=jc,J.nthArg=n2,J.omit=oO,J.omitBy=sO,J.once=tL,J.orderBy=BR,J.over=r2,J.overArgs=nL,J.overEvery=i2,J.overSome=o2,J.partial=Bd,J.partialRight=Jw,J.partition=zR,J.pick=aO,J.pickBy=c0,J.property=m0,J.propertyOf=s2,J.pull=BI,J.pullAll=jw,J.pullAllBy=zI,J.pullAllWith=jI,J.pullAt=HI,J.range=a2,J.rangeRight=l2,J.rearg=rL,J.reject=UR,J.remove=UI,J.rest=iL,J.reverse=Fd,J.sampleSize=GR,J.set=cO,J.setWith=uO,J.shuffle=KR,J.slice=VI,J.sortBy=XR,J.sortedUniq=ZI,J.sortedUniqBy=JI,J.split=LO,J.spread=oL,J.tail=eR,J.take=tR,J.takeRight=nR,J.takeRightWhile=rR,J.takeWhile=iR,J.tap=wR,J.throttle=sL,J.thru=Pc,J.toArray=i0,J.toPairs=u0,J.toPairsIn=h0,J.toPath=p2,J.toPlainObject=s0,J.transform=hO,J.unary=aL,J.union=oR,J.unionBy=sR,J.unionWith=aR,J.uniq=lR,J.uniqBy=cR,J.uniqWith=uR,J.unset=dO,J.unzip=Pd,J.unzipWith=Hw,J.update=pO,J.updateWith=gO,J.values=ma,J.valuesIn=fO,J.without=hR,J.words=g0,J.wrap=lL,J.xor=dR,J.xorBy=pR,J.xorWith=gR,J.zip=fR,J.zipObject=mR,J.zipObjectDeep=vR,J.zipWith=yR,J.entries=u0,J.entriesIn=h0,J.extend=a0,J.extendWith=Vc,qd(J,J),J.add=f2,J.attempt=f0,J.camelCase=wO,J.capitalize=d0,J.ceil=m2,J.clamp=mO,J.clone=uL,J.cloneDeep=dL,J.cloneDeepWith=pL,J.cloneWith=hL,J.conformsTo=gL,J.deburr=p0,J.defaultTo=qO,J.divide=v2,J.endsWith=bO,J.eq=Bi,J.escape=xO,J.escapeRegExp=CO,J.every=TR,J.find=IR,J.findIndex=Pw,J.findKey=UL,J.findLast=RR,J.findLastIndex=Ww,J.findLastKey=VL,J.floor=y2,J.forEach=Vw,J.forEachRight=Gw,J.forIn=GL,J.forInRight=KL,J.forOwn=qL,J.forOwnRight=YL,J.get=Hd,J.gt=fL,J.gte=mL,J.has=ZL,J.hasIn=Ud,J.head=zw,J.identity=Ur,J.includes=FR,J.indexOf=RI,J.inRange=vO,J.invoke=tO,J.isArguments=Ls,J.isArray=vt,J.isArrayBuffer=vL,J.isArrayLike=jr,J.isArrayLikeObject=Nn,J.isBoolean=yL,J.isBuffer=Qo,J.isDate=wL,J.isElement=bL,J.isEmpty=xL,J.isEqual=CL,J.isEqualWith=kL,J.isError=zd,J.isFinite=AL,J.isFunction=Ao,J.isInteger=e0,J.isLength=Hc,J.isMap=t0,J.isMatch=_L,J.isMatchWith=SL,J.isNaN=$L,J.isNative=ML,J.isNil=EL,J.isNull=TL,J.isNumber=n0,J.isObject=wn,J.isObjectLike=$n,J.isPlainObject=cl,J.isRegExp=jd,J.isSafeInteger=IL,J.isSet=r0,J.isString=Uc,J.isSymbol=ri,J.isTypedArray=fa,J.isUndefined=RL,J.isWeakMap=LL,J.isWeakSet=OL,J.join=FI,J.kebabCase=kO,J.last=Ci,J.lastIndexOf=PI,J.lowerCase=AO,J.lowerFirst=_O,J.lt=NL,J.lte=DL,J.max=w2,J.maxBy=b2,J.mean=x2,J.meanBy=C2,J.min=k2,J.minBy=A2,J.stubArray=Xd,J.stubFalse=Qd,J.stubObject=c2,J.stubString=u2,J.stubTrue=h2,J.multiply=_2,J.nth=WI,J.noConflict=t2,J.noop=Yd,J.now=Bc,J.pad=SO,J.padEnd=$O,J.padStart=MO,J.parseInt=TO,J.random=yO,J.reduce=jR,J.reduceRight=HR,J.repeat=EO,J.replace=IO,J.result=lO,J.round=S2,J.runInContext=pe,J.sample=VR,J.size=qR,J.snakeCase=RO,J.some=YR,J.sortedIndex=GI,J.sortedIndexBy=KI,J.sortedIndexOf=qI,J.sortedLastIndex=YI,J.sortedLastIndexBy=XI,J.sortedLastIndexOf=QI,J.startCase=OO,J.startsWith=NO,J.subtract=$2,J.sum=M2,J.sumBy=T2,J.template=DO,J.times=d2,J.toFinite=_o,J.toInteger=Ct,J.toLength=o0,J.toLower=FO,J.toNumber=ki,J.toSafeInteger=FL,J.toString=Gt,J.toUpper=PO,J.trim=WO,J.trimEnd=BO,J.trimStart=zO,J.truncate=jO,J.unescape=HO,J.uniqueId=g2,J.upperCase=UO,J.upperFirst=Vd,J.each=Vw,J.eachRight=Gw,J.first=zw,qd(J,function(){var i={};return eo(J,function(g,T){Xt.call(J.prototype,T)||(i[T]=g)}),i}(),{chain:!1}),J.VERSION=r,cr(["bind","bindKey","curry","curryRight","partial","partialRight"],function(i){J[i].placeholder=J}),cr(["drop","take"],function(i,g){Lt.prototype[i]=function(T){T=T===e?1:Jn(Ct(T),0);var H=this.__filtered__&&!g?new Lt(this):this.clone();return H.__filtered__?H.__takeCount__=xr(T,H.__takeCount__):H.__views__.push({size:xr(T,te),type:i+(H.__dir__<0?"Right":"")}),H},Lt.prototype[i+"Right"]=function(T){return this.reverse()[i](T).reverse()}}),cr(["filter","map","takeWhile"],function(i,g){var T=g+1,H=T==S||T==D;Lt.prototype[i]=function(K){var ee=this.clone();return ee.__iteratees__.push({iteratee:at(K,3),type:T}),ee.__filtered__=ee.__filtered__||H,ee}}),cr(["head","last"],function(i,g){var T="take"+(g?"Right":"");Lt.prototype[i]=function(){return this[T](1).value()[0]}}),cr(["initial","tail"],function(i,g){var T="drop"+(g?"":"Right");Lt.prototype[i]=function(){return this.__filtered__?new Lt(this):this[T](1)}}),Lt.prototype.compact=function(){return this.filter(Ur)},Lt.prototype.find=function(i){return this.filter(i).head()},Lt.prototype.findLast=function(i){return this.reverse().find(i)},Lt.prototype.invokeMap=$t(function(i,g){return typeof i=="function"?new Lt(this):this.map(function(T){return rl(T,i,g)})}),Lt.prototype.reject=function(i){return this.filter(jc(at(i)))},Lt.prototype.slice=function(i,g){i=Ct(i);var T=this;return T.__filtered__&&(i>0||g<0)?new Lt(T):(i<0?T=T.takeRight(-i):i&&(T=T.drop(i)),g!==e&&(g=Ct(g),T=g<0?T.dropRight(-g):T.take(g-i)),T)},Lt.prototype.takeRightWhile=function(i){return this.reverse().takeWhile(i).reverse()},Lt.prototype.toArray=function(){return this.take(te)},eo(Lt.prototype,function(i,g){var T=/^(?:filter|find|map|reject)|While$/.test(g),H=/^(?:head|last)$/.test(g),K=J[H?"take"+(g=="last"?"Right":""):g],ee=H||/^find/.test(g);K&&(J.prototype[g]=function(){var ae=this.__wrapped__,de=H?[1]:arguments,ve=ae instanceof Lt,Ee=de[0],Ie=ve||vt(ae),Ne=function(Tt){var Nt=K.apply(J,$([Tt],de));return H&&Ue?Nt[0]:Nt};Ie&&T&&typeof Ee=="function"&&Ee.length!=1&&(ve=Ie=!1);var Ue=this.__chain__,Ze=!!this.__actions__.length,ct=ee&&!Ue,_t=ve&&!Ze;if(!ee&&Ie){ae=_t?ae:new Lt(this);var ut=i.apply(ae,de);return ut.__actions__.push({func:Pc,args:[Ne],thisArg:e}),new wi(ut,Ue)}return ct&&_t?i.apply(this,de):(ut=this.thru(Ne),ct?H?ut.value()[0]:ut.value():ut)})}),cr(["pop","push","shift","sort","splice","unshift"],function(i){var g=sr[i],T=/^(?:push|sort|unshift)$/.test(i)?"tap":"thru",H=/^(?:pop|shift)$/.test(i);J.prototype[i]=function(){var K=arguments;if(H&&!this.__chain__){var ee=this.value();return g.apply(vt(ee)?ee:[],K)}return this[T](function(ae){return g.apply(vt(ae)?ae:[],K)})}}),eo(Lt.prototype,function(i,g){var T=J[g];if(T){var H=T.name+"";Xt.call(ua,H)||(ua[H]=[]),ua[H].push({name:g,func:T})}}),ua[Ic(e,w).name]=[{name:"wrapper",func:e}],Lt.prototype.clone=HT,Lt.prototype.reverse=UT,Lt.prototype.value=VT,J.prototype.at=bR,J.prototype.chain=xR,J.prototype.commit=CR,J.prototype.next=kR,J.prototype.plant=_R,J.prototype.reverse=SR,J.prototype.toJSON=J.prototype.valueOf=J.prototype.value=$R,J.prototype.first=J.prototype.head,Xa&&(J.prototype[Xa]=AR),J},Ot=Un();jn?((jn.exports=Ot)._=Ot,ln._=Ot):Qt._=Ot}).call(FC)}(Il,Il.exports)),Il.exports}var WC=PC();kr("a",dl(WC)).debounce(function(){this.rebuildDisplayText()},300);var nf={exports:{}},rf;function BC(){return rf||(rf=1,function(n,t){(function(){ace.require(["ace/mode/text"],function(e){n&&(n.exports=e)})})()}(nf)),nf.exports}BC();const zC=!0,Gn="u-",jC="uplot",HC=Gn+"hz",UC=Gn+"vt",VC=Gn+"title",GC=Gn+"wrap",KC=Gn+"under",qC=Gn+"over",YC=Gn+"axis",as=Gn+"off",XC=Gn+"select",QC=Gn+"cursor-x",ZC=Gn+"cursor-y",JC=Gn+"cursor-pt",ek=Gn+"legend",tk=Gn+"live",nk=Gn+"inline",rk=Gn+"series",ik=Gn+"marker",of=Gn+"label",ok=Gn+"value",Ta="width",Ea="height",Ia="top",sf="bottom",js="left",ku="right",Au="#000",af=Au+"0",_u="mousemove",lf="mousedown",Su="mouseup",cf="mouseenter",uf="mouseleave",hf="dblclick",sk="resize",ak="scroll",df="change",Rl="dppxchange",$u="--",Hs=typeof window<"u",Mu=Hs?document:null,Us=Hs?window:null,lk=Hs?navigator:null;let Bt,Ll;function Tu(){let n=devicePixelRatio;Bt!=n&&(Bt=n,Ll&&Ru(df,Ll,Tu),Ll=matchMedia(`(min-resolution: ${Bt-.001}dppx) and (max-resolution: ${Bt+.001}dppx)`),ls(df,Ll,Tu),Us.dispatchEvent(new CustomEvent(Rl)))}function Vr(n,t){if(t!=null){let e=n.classList;!e.contains(t)&&e.add(t)}}function Eu(n,t){let e=n.classList;e.contains(t)&&e.remove(t)}function sn(n,t,e){n.style[t]=e+"px"}function Si(n,t,e,r){let v=Mu.createElement(n);return t!=null&&Vr(v,t),e!=null&&e.insertBefore(v,r),v}function ci(n,t){return Si("div",n,t)}const pf=new WeakMap;function Ui(n,t,e,r,v){let f="translate("+t+"px,"+e+"px)",y=pf.get(n);f!=y&&(n.style.transform=f,pf.set(n,f),t<0||e<0||t>r||e>v?Vr(n,as):Eu(n,as))}const gf=new WeakMap;function ff(n,t,e){let r=t+e,v=gf.get(n);r!=v&&(gf.set(n,r),n.style.background=t,n.style.borderColor=e)}const mf=new WeakMap;function vf(n,t,e,r){let v=t+""+e,f=mf.get(n);v!=f&&(mf.set(n,v),n.style.height=e+"px",n.style.width=t+"px",n.style.marginLeft=r?-t/2+"px":0,n.style.marginTop=r?-e/2+"px":0)}const Iu={passive:!0},ck={...Iu,capture:!0};function ls(n,t,e,r){t.addEventListener(n,e,r?ck:Iu)}function Ru(n,t,e,r){t.removeEventListener(n,e,Iu)}Hs&&Tu();function $i(n,t,e,r){let v;e=e||0,r=r||t.length-1;let f=r<=2147483647;for(;r-e>1;)v=f?e+r>>1:Kr((e+r)/2),t[v]<n?e=v:r=v;return n-t[e]<=t[r]-n?e:r}function yf(n){return(t,e,r)=>{let v=-1,f=-1;for(let y=e;y<=r;y++)if(n(t[y])){v=y;break}for(let y=r;y>=e;y--)if(n(t[y])){f=y;break}return[v,f]}}const wf=n=>n!=null,bf=n=>n!=null&&n>0,Ol=yf(wf),uk=yf(bf);function hk(n,t,e,r=0,v=!1){let f=v?uk:Ol,y=v?bf:wf;[t,e]=f(n,t,e);let C=n[t],h=n[t];if(t>-1)if(r==1)C=n[t],h=n[e];else if(r==-1)C=n[e],h=n[t];else for(let p=t;p<=e;p++){let s=n[p];y(s)&&(s<C?C=s:s>h&&(h=s))}return[C??Jt,h??-Jt]}function Nl(n,t,e,r){let v=kf(n),f=kf(t);n==t&&(v==-1?(n*=e,t/=e):(n/=e,t*=e));let y=e==10?ro:Af,C=v==1?Kr:ui,h=f==1?ui:Kr,p=C(y(Kn(n))),s=h(y(Kn(t))),a=Vs(e,p),c=Vs(e,s);return e==10&&(p<0&&(a=en(a,-p)),s<0&&(c=en(c,-s))),r||e==2?(n=a*v,t=c*f):(n=If(n,a),t=Pl(t,c)),[n,t]}function Lu(n,t,e,r){let v=Nl(n,t,e,r);return n==0&&(v[0]=0),t==0&&(v[1]=0),v}const Ou=.1,xf={mode:3,pad:Ou},Ra={pad:0,soft:null,mode:0},dk={min:Ra,max:Ra};function Dl(n,t,e,r){return Wl(e)?Cf(n,t,e):(Ra.pad=e,Ra.soft=r?0:null,Ra.mode=r?3:0,Cf(n,t,dk))}function Ft(n,t){return n??t}function pk(n,t,e){for(t=Ft(t,0),e=Ft(e,n.length-1);t<=e;){if(n[t]!=null)return!0;t++}return!1}function Cf(n,t,e){let r=e.min,v=e.max,f=Ft(r.pad,0),y=Ft(v.pad,0),C=Ft(r.hard,-Jt),h=Ft(v.hard,Jt),p=Ft(r.soft,Jt),s=Ft(v.soft,-Jt),a=Ft(r.mode,0),c=Ft(v.mode,0),l=t-n,o=ro(l),u=Ar(Kn(n),Kn(t)),d=ro(u),w=Kn(d-o);(l<1e-24||w>10)&&(l=0,(n==0||t==0)&&(l=1e-24,a==2&&p!=Jt&&(f=0),c==2&&s!=-Jt&&(y=0)));let b=l||u||1e3,R=ro(b),M=Vs(10,Kr(R)),k=b*(l==0?n==0?.1:1:f),x=en(If(n-k,M/10),24),L=n>=p&&(a==1||a==3&&x<=p||a==2&&x>=p)?p:Jt,O=Ar(C,x<L&&n>=L?L:Mi(L,x)),I=b*(l==0?t==0?.1:1:y),E=en(Pl(t+I,M/10),24),z=t<=s&&(c==1||c==3&&E>=s||c==2&&E<=s)?s:-Jt,P=Mi(h,E>z&&t<=z?z:Ar(z,E));return O==P&&O==0&&(P=100),[O,P]}const gk=new Intl.NumberFormat(Hs?lk.language:"en-US"),Nu=n=>gk.format(n),Gr=Math,Fl=Gr.PI,Kn=Gr.abs,Kr=Gr.floor,qn=Gr.round,ui=Gr.ceil,Mi=Gr.min,Ar=Gr.max,Vs=Gr.pow,kf=Gr.sign,ro=Gr.log10,Af=Gr.log2,fk=(n,t=1)=>Gr.sinh(n)*t,Du=(n,t=1)=>Gr.asinh(n/t),Jt=1/0;function _f(n){return(ro((n^n>>31)-(n>>31))|0)+1}function Fu(n,t,e){return Mi(Ar(n,t),e)}function Sf(n){return typeof n=="function"}function Et(n){return Sf(n)?n:()=>n}const mk=()=>{},$f=n=>n,Mf=(n,t)=>t,vk=n=>null,Tf=n=>!0,Ef=(n,t)=>n==t,yk=/\.\d*?(?=9{6,}|0{6,})/gm,cs=n=>{if(Lf(n)||Ro.has(n))return n;const t=`${n}`,e=t.match(yk);if(e==null)return n;let r=e[0].length-1;if(t.indexOf("e-")!=-1){let[v,f]=t.split("e");return+`${cs(v)}e${f}`}return en(n,r)};function us(n,t){return cs(en(cs(n/t))*t)}function Pl(n,t){return cs(ui(cs(n/t))*t)}function If(n,t){return cs(Kr(cs(n/t))*t)}function en(n,t=0){if(Lf(n))return n;let e=10**t,r=n*e*(1+Number.EPSILON);return qn(r)/e}const Ro=new Map;function Rf(n){return((""+n).split(".")[1]||"").length}function La(n,t,e,r){let v=[],f=r.map(Rf);for(let y=t;y<e;y++){let C=Kn(y),h=en(Vs(n,y),C);for(let p=0;p<r.length;p++){let s=n==10?+`${r[p]}e${y}`:r[p]*h,a=(y>=0?0:C)+(y>=f[p]?0:f[p]),c=n==10?s:en(s,a);v.push(c),Ro.set(c,a)}}return v}const Oa={},Pu=[],Gs=[null,null],Lo=Array.isArray,Lf=Number.isInteger,wk=n=>n===void 0;function Of(n){return typeof n=="string"}function Wl(n){let t=!1;if(n!=null){let e=n.constructor;t=e==null||e==Object}return t}function bk(n){return n!=null&&typeof n=="object"}const xk=Object.getPrototypeOf(Uint8Array),Nf="__proto__";function Ks(n,t=Wl){let e;if(Lo(n)){let r=n.find(v=>v!=null);if(Lo(r)||t(r)){e=Array(n.length);for(let v=0;v<n.length;v++)e[v]=Ks(n[v],t)}else e=n.slice()}else if(n instanceof xk)e=n.slice();else if(t(n)){e={};for(let r in n)r!=Nf&&(e[r]=Ks(n[r],t))}else e=n;return e}function Pn(n){let t=arguments;for(let e=1;e<t.length;e++){let r=t[e];for(let v in r)v!=Nf&&(Wl(n[v])?Pn(n[v],Ks(r[v])):n[v]=Ks(r[v]))}return n}const Ck=0,kk=1,Ak=2;function _k(n,t,e){for(let r=0,v,f=-1;r<t.length;r++){let y=t[r];if(y>f){for(v=y-1;v>=0&&n[v]==null;)n[v--]=null;for(v=y+1;v<e&&n[v]==null;)n[f=v++]=null}}}function Sk(n,t){if(Tk(n)){let y=n[0].slice();for(let C=1;C<n.length;C++)y.push(...n[C].slice(1));return Ek(y[0])||(y=Mk(y)),y}let e=new Set;for(let y=0;y<n.length;y++){let C=n[y][0],h=C.length;for(let p=0;p<h;p++)e.add(C[p])}let r=[Array.from(e).sort((y,C)=>y-C)],v=r[0].length,f=new Map;for(let y=0;y<v;y++)f.set(r[0][y],y);for(let y=0;y<n.length;y++){let C=n[y],h=C[0];for(let p=1;p<C.length;p++){let s=C[p],a=Array(v).fill(void 0),c=t?t[y][p]:kk,l=[];for(let o=0;o<s.length;o++){let u=s[o],d=f.get(h[o]);u===null?c!=Ck&&(a[d]=u,c==Ak&&l.push(d)):a[d]=u}_k(a,l,v),r.push(a)}}return r}const $k=typeof queueMicrotask>"u"?n=>Promise.resolve().then(n):queueMicrotask;function Mk(n){let t=n[0],e=t.length,r=Array(e);for(let f=0;f<r.length;f++)r[f]=f;r.sort((f,y)=>t[f]-t[y]);let v=[];for(let f=0;f<n.length;f++){let y=n[f],C=Array(e);for(let h=0;h<e;h++)C[h]=y[r[h]];v.push(C)}return v}function Tk(n){let t=n[0][0],e=t.length;for(let r=1;r<n.length;r++){let v=n[r][0];if(v.length!=e)return!1;if(v!=t){for(let f=0;f<e;f++)if(v[f]!=t[f])return!1}}return!0}function Ek(n,t=100){const e=n.length;if(e<=1)return!0;let r=0,v=e-1;for(;r<=v&&n[r]==null;)r++;for(;v>=r&&n[v]==null;)v--;if(v<=r)return!0;const f=Ar(1,Kr((v-r+1)/t));for(let y=n[r],C=r+f;C<=v;C+=f){const h=n[C];if(h!=null){if(h<=y)return!1;y=h}}return!0}const Df=["January","February","March","April","May","June","July","August","September","October","November","December"],Ff=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function Pf(n){return n.slice(0,3)}const Ik=Ff.map(Pf),Rk=Df.map(Pf),Lk={MMMM:Df,MMM:Rk,WWWW:Ff,WWW:Ik};function Na(n){return(n<10?"0":"")+n}function Ok(n){return(n<10?"00":n<100?"0":"")+n}const Nk={YYYY:n=>n.getFullYear(),YY:n=>(n.getFullYear()+"").slice(2),MMMM:(n,t)=>t.MMMM[n.getMonth()],MMM:(n,t)=>t.MMM[n.getMonth()],MM:n=>Na(n.getMonth()+1),M:n=>n.getMonth()+1,DD:n=>Na(n.getDate()),D:n=>n.getDate(),WWWW:(n,t)=>t.WWWW[n.getDay()],WWW:(n,t)=>t.WWW[n.getDay()],HH:n=>Na(n.getHours()),H:n=>n.getHours(),h:n=>{let t=n.getHours();return t==0?12:t>12?t-12:t},AA:n=>n.getHours()>=12?"PM":"AM",aa:n=>n.getHours()>=12?"pm":"am",a:n=>n.getHours()>=12?"p":"a",mm:n=>Na(n.getMinutes()),m:n=>n.getMinutes(),ss:n=>Na(n.getSeconds()),s:n=>n.getSeconds(),fff:n=>Ok(n.getMilliseconds())};function Wu(n,t){t=t||Lk;let e=[],r=/\{([a-z]+)\}|[^{]+/gi,v;for(;v=r.exec(n);)e.push(v[0][0]=="{"?Nk[v[1]]:v[0]);return f=>{let y="";for(let C=0;C<e.length;C++)y+=typeof e[C]=="string"?e[C]:e[C](f,t);return y}}const Dk=new Intl.DateTimeFormat().resolvedOptions().timeZone;function Fk(n,t){let e;return t=="UTC"||t=="Etc/UTC"?e=new Date(+n+n.getTimezoneOffset()*6e4):t==Dk?e=n:(e=new Date(n.toLocaleString("en-US",{timeZone:t})),e.setMilliseconds(n.getMilliseconds())),e}const Wf=n=>n%1==0,Bl=[1,2,2.5,5],Pk=La(10,-32,0,Bl),Bf=La(10,0,32,Bl),Wk=Bf.filter(Wf),hs=Pk.concat(Bf),Bu=`
1489
+ `,zf="{YYYY}",jf=Bu+zf,Hf="{M}/{D}",Da=Bu+Hf,zl=Da+"/{YY}",Uf="{aa}",Bk="{h}:{mm}",qs=Bk+Uf,Vf=Bu+qs,Gf=":{ss}",Ut=null;function Kf(n){let t=n*1e3,e=t*60,r=e*60,v=r*24,f=v*30,y=v*365,C=(n==1?La(10,0,3,Bl).filter(Wf):La(10,-3,0,Bl)).concat([t,t*5,t*10,t*15,t*30,e,e*5,e*10,e*15,e*30,r,r*2,r*3,r*4,r*6,r*8,r*12,v,v*2,v*3,v*4,v*5,v*6,v*7,v*8,v*9,v*10,v*15,f,f*2,f*3,f*4,f*6,y,y*2,y*5,y*10,y*25,y*50,y*100]);const h=[[y,zf,Ut,Ut,Ut,Ut,Ut,Ut,1],[v*28,"{MMM}",jf,Ut,Ut,Ut,Ut,Ut,1],[v,Hf,jf,Ut,Ut,Ut,Ut,Ut,1],[r,"{h}"+Uf,zl,Ut,Da,Ut,Ut,Ut,1],[e,qs,zl,Ut,Da,Ut,Ut,Ut,1],[t,Gf,zl+" "+qs,Ut,Da+" "+qs,Ut,Vf,Ut,1],[n,Gf+".{fff}",zl+" "+qs,Ut,Da+" "+qs,Ut,Vf,Ut,1]];function p(s){return(a,c,l,o,u,d)=>{let w=[],b=u>=y,R=u>=f&&u<y,M=s(l),k=en(M*n,3),x=zu(M.getFullYear(),b?0:M.getMonth(),R||b?1:M.getDate()),L=en(x*n,3);if(R||b){let O=R?u/f:0,I=b?u/y:0,E=k==L?k:en(zu(x.getFullYear()+I,x.getMonth()+O,1)*n,3),z=new Date(qn(E/n)),P=z.getFullYear(),N=z.getMonth();for(let S=0;E<=o;S++){let A=zu(P+I*S,N+O*S,1),D=A-s(en(A*n,3));E=en((+A+D)*n,3),E<=o&&w.push(E)}}else{let O=u>=v?v:u,I=Kr(l)-Kr(k),E=L+I+Pl(k-L,O);w.push(E);let z=s(E),P=z.getHours()+z.getMinutes()/e+z.getSeconds()/r,N=u/r,S=a.axes[c]._space,A=d/S;for(;E=en(E+u,n==1?0:3),!(E>o);)if(N>1){let D=Kr(en(P+N,6))%24,j=s(E).getHours()-D;j>1&&(j=-1),E-=j*r,P=(P+N)%24;let U=w[w.length-1];en((E-U)/u,3)*A>=.7&&w.push(E)}else w.push(E)}return w}}return[C,h,p]}const[zk,jk,Hk]=Kf(1),[Uk,Vk,Gk]=Kf(.001);La(2,-53,53,[1]);function qf(n,t){return n.map(e=>e.map((r,v)=>v==0||v==8||r==null?r:t(v==1||e[8]==0?r:e[1]+r)))}function Yf(n,t){return(e,r,v,f,y)=>{let C=t.find(o=>y>=o[0])||t[t.length-1],h,p,s,a,c,l;return r.map(o=>{let u=n(o),d=u.getFullYear(),w=u.getMonth(),b=u.getDate(),R=u.getHours(),M=u.getMinutes(),k=u.getSeconds(),x=d!=h&&C[2]||w!=p&&C[3]||b!=s&&C[4]||R!=a&&C[5]||M!=c&&C[6]||k!=l&&C[7]||C[1];return h=d,p=w,s=b,a=R,c=M,l=k,x(u)})}}function Kk(n,t){let e=Wu(t);return(r,v,f,y,C)=>v.map(h=>e(n(h)))}function zu(n,t,e){return new Date(n,t,e)}function Xf(n,t){return t(n)}const qk="{YYYY}-{MM}-{DD} {h}:{mm}{aa}";function Qf(n,t){return(e,r,v,f)=>f==null?$u:t(n(r))}function Yk(n,t){let e=n.series[t];return e.width?e.stroke(n,t):e.points.width?e.points.stroke(n,t):null}function Xk(n,t){return n.series[t].fill(n,t)}const Qk={show:!0,live:!0,isolate:!1,mount:mk,markers:{show:!0,width:2,stroke:Yk,fill:Xk,dash:"solid"},idx:null,idxs:null,values:[]};function Zk(n,t){let e=n.cursor.points,r=ci(),v=e.size(n,t);sn(r,Ta,v),sn(r,Ea,v);let f=v/-2;sn(r,"marginLeft",f),sn(r,"marginTop",f);let y=e.width(n,t,v);return y&&sn(r,"borderWidth",y),r}function Jk(n,t){let e=n.series[t].points;return e._fill||e._stroke}function eA(n,t){let e=n.series[t].points;return e._stroke||e._fill}function tA(n,t){return n.series[t].points.size}const ju=[0,0];function nA(n,t,e){return ju[0]=t,ju[1]=e,ju}function jl(n,t,e,r=!0){return v=>{v.button==0&&(!r||v.target==t)&&e(v)}}function Hu(n,t,e,r=!0){return v=>{(!r||v.target==t)&&e(v)}}const rA={show:!0,x:!0,y:!0,lock:!1,move:nA,points:{one:!1,show:Zk,size:tA,width:0,stroke:eA,fill:Jk},bind:{mousedown:jl,mouseup:jl,click:jl,dblclick:jl,mousemove:Hu,mouseleave:Hu,mouseenter:Hu},drag:{setScale:!0,x:!0,y:!1,dist:0,uni:null,click:(n,t)=>{t.stopPropagation(),t.stopImmediatePropagation()},_x:!1,_y:!1},focus:{dist:(n,t,e,r,v)=>r-v,prox:-1,bias:0},hover:{skip:[void 0],prox:null,bias:0},left:-10,top:-10,idx:null,dataIdx:null,idxs:null,event:null},Zf={show:!0,stroke:"rgba(0,0,0,0.07)",width:2},Uu=Pn({},Zf,{filter:Mf}),Jf=Pn({},Uu,{size:10}),em=Pn({},Zf,{show:!1}),Vu='12px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',tm="bold "+Vu,nm=1.5,rm={show:!0,scale:"x",stroke:Au,space:50,gap:5,alignTo:1,size:50,labelGap:0,labelSize:30,labelFont:tm,side:2,grid:Uu,ticks:Jf,border:em,font:Vu,lineGap:nm,rotate:0},iA="Value",oA="Time",im={show:!0,scale:"x",auto:!1,sorted:1,min:Jt,max:-Jt,idxs:[]};function sA(n,t,e,r,v){return t.map(f=>f==null?"":Nu(f))}function aA(n,t,e,r,v,f,y){let C=[],h=Ro.get(v)||0;e=y?e:en(Pl(e,v),h);for(let p=e;p<=r;p=en(p+v,h))C.push(Object.is(p,-0)?0:p);return C}function Gu(n,t,e,r,v,f,y){const C=[],h=n.scales[n.axes[t].scale].log,p=h==10?ro:Af,s=Kr(p(e));v=Vs(h,s),h==10&&(v=hs[$i(v,hs)]);let a=e,c=v*h;h==10&&(c=hs[$i(c,hs)]);do C.push(a),a=a+v,h==10&&!Ro.has(a)&&(a=en(a,Ro.get(v))),a>=c&&(v=a,c=v*h,h==10&&(c=hs[$i(c,hs)]));while(a<=r);return C}function lA(n,t,e,r,v,f,y){let C=n.scales[n.axes[t].scale].asinh,h=r>C?Gu(n,t,Ar(C,e),r,v):[C],p=r>=0&&e<=0?[0]:[];return(e<-C?Gu(n,t,Ar(C,-r),-e,v):[C]).reverse().map(s=>-s).concat(p,h)}const om=/./,cA=/[12357]/,uA=/[125]/,sm=/1/,Ku=(n,t,e,r)=>n.map((v,f)=>t==4&&v==0||f%r==0&&e.test(v.toExponential()[v<0?1:0])?v:null);function hA(n,t,e,r,v){let f=n.axes[e],y=f.scale,C=n.scales[y],h=n.valToPos,p=f._space,s=h(10,y),a=h(9,y)-s>=p?om:h(7,y)-s>=p?cA:h(5,y)-s>=p?uA:sm;if(a==sm){let c=Kn(h(1,y)-s);if(c<p)return Ku(t.slice().reverse(),C.distr,a,ui(p/c)).reverse()}return Ku(t,C.distr,a,1)}function dA(n,t,e,r,v){let f=n.axes[e],y=f.scale,C=f._space,h=n.valToPos,p=Kn(h(1,y)-h(2,y));return p<C?Ku(t.slice().reverse(),3,om,ui(C/p)).reverse():t}function pA(n,t,e,r){return r==null?$u:t==null?"":Nu(t)}const am={show:!0,scale:"y",stroke:Au,space:30,gap:5,alignTo:1,size:50,labelGap:0,labelSize:30,labelFont:tm,side:3,grid:Uu,ticks:Jf,border:em,font:Vu,lineGap:nm,rotate:0};function gA(n,t){let e=3+(n||1)*2;return en(e*t,3)}function fA(n,t){let{scale:e,idxs:r}=n.series[0],v=n._data[0],f=n.valToPos(v[r[0]],e,!0),y=n.valToPos(v[r[1]],e,!0),C=Kn(y-f),h=n.series[t],p=C/(h.points.space*Bt);return r[1]-r[0]<=p}const lm={scale:null,auto:!0,sorted:0,min:Jt,max:-Jt},cm=(n,t,e,r,v)=>v,um={show:!0,auto:!0,sorted:0,gaps:cm,alpha:1,facets:[Pn({},lm,{scale:"x"}),Pn({},lm,{scale:"y"})]},hm={scale:"y",auto:!0,sorted:0,show:!0,spanGaps:!1,gaps:cm,alpha:1,points:{show:fA,filter:null},values:null,min:Jt,max:-Jt,idxs:[],path:null,clip:null};function mA(n,t,e,r,v){return e/10}const dm={time:zC,auto:!0,distr:1,log:10,asinh:1,min:null,max:null,dir:1,ori:0},vA=Pn({},dm,{time:!1,ori:1}),pm={};function gm(n,t){let e=pm[n];return e||(e={key:n,plots:[],sub(r){e.plots.push(r)},unsub(r){e.plots=e.plots.filter(v=>v!=r)},pub(r,v,f,y,C,h,p){for(let s=0;s<e.plots.length;s++)e.plots[s]!=v&&e.plots[s].pub(r,v,f,y,C,h,p)}},n!=null&&(pm[n]=e)),e}const Ys=1,qu=2;function ds(n,t,e){const r=n.mode,v=n.series[t],f=r==2?n._data[t]:n._data,y=n.scales,C=n.bbox;let h=f[0],p=r==2?f[1]:f[t],s=r==2?y[v.facets[0].scale]:y[n.series[0].scale],a=r==2?y[v.facets[1].scale]:y[v.scale],c=C.left,l=C.top,o=C.width,u=C.height,d=n.valToPosH,w=n.valToPosV;return s.ori==0?e(v,h,p,s,a,d,w,c,l,o,u,Ul,Xs,Gl,vm,wm):e(v,h,p,s,a,w,d,l,c,u,o,Vl,Qs,Qu,ym,bm)}function Yu(n,t){let e=0,r=0,v=Ft(n.bands,Pu);for(let f=0;f<v.length;f++){let y=v[f];y.series[0]==t?e=y.dir:y.series[1]==t&&(y.dir==1?r|=1:r|=2)}return[e,r==1?-1:r==2?1:r==3?2:0]}function yA(n,t,e,r,v){let f=n.mode,y=n.series[t],C=f==2?y.facets[1].scale:y.scale,h=n.scales[C];return v==-1?h.min:v==1?h.max:h.distr==3?h.dir==1?h.min:h.max:0}function io(n,t,e,r,v,f){return ds(n,t,(y,C,h,p,s,a,c,l,o,u,d)=>{let w=y.pxRound;const b=p.dir*(p.ori==0?1:-1),R=p.ori==0?Xs:Qs;let M,k;b==1?(M=e,k=r):(M=r,k=e);let x=w(a(C[M],p,u,l)),L=w(c(h[M],s,d,o)),O=w(a(C[k],p,u,l)),I=w(c(f==1?s.max:s.min,s,d,o)),E=new Path2D(v);return R(E,O,I),R(E,x,I),R(E,x,L),E})}function Hl(n,t,e,r,v,f){let y=null;if(n.length>0){y=new Path2D;const C=t==0?Gl:Qu;let h=e;for(let a=0;a<n.length;a++){let c=n[a];if(c[1]>c[0]){let l=c[0]-h;l>0&&C(y,h,r,l,r+f),h=c[1]}}let p=e+v-h,s=10;p>0&&C(y,h,r-s/2,p,r+f+s)}return y}function wA(n,t,e){let r=n[n.length-1];r&&r[0]==t?r[1]=e:n.push([t,e])}function Xu(n,t,e,r,v,f,y){let C=[],h=n.length;for(let p=v==1?e:r;p>=e&&p<=r;p+=v)if(t[p]===null){let s=p,a=p;if(v==1)for(;++p<=r&&t[p]===null;)a=p;else for(;--p>=e&&t[p]===null;)a=p;let c=f(n[s]),l=a==s?c:f(n[a]),o=s-v;c=y<=0&&o>=0&&o<h?f(n[o]):c;let u=a+v;l=y>=0&&u>=0&&u<h?f(n[u]):l,l>=c&&C.push([c,l])}return C}function fm(n){return n==0?$f:n==1?qn:t=>us(t,n)}function mm(n){let t=n==0?Ul:Vl,e=n==0?(v,f,y,C,h,p)=>{v.arcTo(f,y,C,h,p)}:(v,f,y,C,h,p)=>{v.arcTo(y,f,h,C,p)},r=n==0?(v,f,y,C,h)=>{v.rect(f,y,C,h)}:(v,f,y,C,h)=>{v.rect(y,f,h,C)};return(v,f,y,C,h,p=0,s=0)=>{p==0&&s==0?r(v,f,y,C,h):(p=Mi(p,C/2,h/2),s=Mi(s,C/2,h/2),t(v,f+p,y),e(v,f+C,y,f+C,y+h,p),e(v,f+C,y+h,f,y+h,s),e(v,f,y+h,f,y,s),e(v,f,y,f+C,y,p),v.closePath())}}const Ul=(n,t,e)=>{n.moveTo(t,e)},Vl=(n,t,e)=>{n.moveTo(e,t)},Xs=(n,t,e)=>{n.lineTo(t,e)},Qs=(n,t,e)=>{n.lineTo(e,t)},Gl=mm(0),Qu=mm(1),vm=(n,t,e,r,v,f)=>{n.arc(t,e,r,v,f)},ym=(n,t,e,r,v,f)=>{n.arc(e,t,r,v,f)},wm=(n,t,e,r,v,f,y)=>{n.bezierCurveTo(t,e,r,v,f,y)},bm=(n,t,e,r,v,f,y)=>{n.bezierCurveTo(e,t,v,r,y,f)};function xm(n){return(t,e,r,v,f)=>ds(t,e,(y,C,h,p,s,a,c,l,o,u,d)=>{let{pxRound:w,points:b}=y,R,M;p.ori==0?(R=Ul,M=vm):(R=Vl,M=ym);const k=en(b.width*Bt,3);let x=(b.size-b.width)/2*Bt,L=en(x*2,3),O=new Path2D,I=new Path2D,{left:E,top:z,width:P,height:N}=t.bbox;Gl(I,E-L,z-L,P+L*2,N+L*2);const S=A=>{if(h[A]!=null){let D=w(a(C[A],p,u,l)),j=w(c(h[A],s,d,o));R(O,D+x,j),M(O,D,j,x,0,Fl*2)}};if(f)f.forEach(S);else for(let A=r;A<=v;A++)S(A);return{stroke:k>0?O:null,fill:O,clip:I,flags:Ys|qu}})}function Cm(n){return(t,e,r,v,f,y)=>{r!=v&&(f!=r&&y!=r&&n(t,e,r),f!=v&&y!=v&&n(t,e,v),n(t,e,y))}}const bA=Cm(Xs),xA=Cm(Qs);function km(n){const t=Ft(n==null?void 0:n.alignGaps,0);return(e,r,v,f)=>ds(e,r,(y,C,h,p,s,a,c,l,o,u,d)=>{[v,f]=Ol(h,v,f);let w=y.pxRound,b=P=>w(a(P,p,u,l)),R=P=>w(c(P,s,d,o)),M,k;p.ori==0?(M=Xs,k=bA):(M=Qs,k=xA);const x=p.dir*(p.ori==0?1:-1),L={stroke:new Path2D,fill:null,clip:null,band:null,gaps:null,flags:Ys},O=L.stroke;let I=!1;if(f-v>=u*4){let P=he=>e.posToVal(he,p.key,!0),N=null,S=null,A,D,j,U=b(C[x==1?v:f]),q=b(C[v]),Z=b(C[f]),te=P(x==1?q+1:Z-1);for(let he=x==1?v:f;he>=v&&he<=f;he+=x){let ne=C[he],le=(x==1?ne<te:ne>te)?U:b(ne),ue=h[he];le==U?ue!=null?(D=ue,N==null?(M(O,le,R(D)),A=N=S=D):D<N?N=D:D>S&&(S=D)):ue===null&&(I=!0):(N!=null&&k(O,U,R(N),R(S),R(A),R(D)),ue!=null?(D=ue,M(O,le,R(D)),N=S=A=D):(N=S=null,ue===null&&(I=!0)),U=le,te=P(U+x))}N!=null&&N!=S&&j!=U&&k(O,U,R(N),R(S),R(A),R(D))}else for(let P=x==1?v:f;P>=v&&P<=f;P+=x){let N=h[P];N===null?I=!0:N!=null&&M(O,b(C[P]),R(N))}let[E,z]=Yu(e,r);if(y.fill!=null||E!=0){let P=L.fill=new Path2D(O),N=y.fillTo(e,r,y.min,y.max,E),S=R(N),A=b(C[v]),D=b(C[f]);x==-1&&([D,A]=[A,D]),M(P,D,S),M(P,A,S)}if(!y.spanGaps){let P=[];I&&P.push(...Xu(C,h,v,f,x,b,t)),L.gaps=P=y.gaps(e,r,v,f,P),L.clip=Hl(P,p.ori,l,o,u,d)}return z!=0&&(L.band=z==2?[io(e,r,v,f,O,-1),io(e,r,v,f,O,1)]:io(e,r,v,f,O,z)),L})}function CA(n){const t=Ft(n.align,1),e=Ft(n.ascDesc,!1),r=Ft(n.alignGaps,0),v=Ft(n.extend,!1);return(f,y,C,h)=>ds(f,y,(p,s,a,c,l,o,u,d,w,b,R)=>{[C,h]=Ol(a,C,h);let M=p.pxRound,{left:k,width:x}=f.bbox,L=Z=>M(o(Z,c,b,d)),O=Z=>M(u(Z,l,R,w)),I=c.ori==0?Xs:Qs;const E={stroke:new Path2D,fill:null,clip:null,band:null,gaps:null,flags:Ys},z=E.stroke,P=c.dir*(c.ori==0?1:-1);let N=O(a[P==1?C:h]),S=L(s[P==1?C:h]),A=S,D=S;v&&t==-1&&(D=k,I(z,D,N)),I(z,S,N);for(let Z=P==1?C:h;Z>=C&&Z<=h;Z+=P){let te=a[Z];if(te==null)continue;let he=L(s[Z]),ne=O(te);t==1?I(z,he,N):I(z,A,ne),I(z,he,ne),N=ne,A=he}let j=A;v&&t==1&&(j=k+x,I(z,j,N));let[U,q]=Yu(f,y);if(p.fill!=null||U!=0){let Z=E.fill=new Path2D(z),te=p.fillTo(f,y,p.min,p.max,U),he=O(te);I(Z,j,he),I(Z,D,he)}if(!p.spanGaps){let Z=[];Z.push(...Xu(s,a,C,h,P,L,r));let te=p.width*Bt/2,he=e||t==1?te:-te,ne=e||t==-1?-te:te;Z.forEach(le=>{le[0]+=he,le[1]+=ne}),E.gaps=Z=p.gaps(f,y,C,h,Z),E.clip=Hl(Z,c.ori,d,w,b,R)}return q!=0&&(E.band=q==2?[io(f,y,C,h,z,-1),io(f,y,C,h,z,1)]:io(f,y,C,h,z,q)),E})}function Am(n,t,e,r,v,f,y=Jt){if(n.length>1){let C=null;for(let h=0,p=1/0;h<n.length;h++)if(t[h]!==void 0){if(C!=null){let s=Kn(n[h]-n[C]);s<p&&(p=s,y=Kn(e(n[h],r,v,f)-e(n[C],r,v,f)))}C=h}}return y}function kA(n){n=n||Oa;const t=Ft(n.size,[.6,Jt,1]),e=n.align||0,r=n.gap||0;let v=n.radius;v=v==null?[0,0]:typeof v=="number"?[v,0]:v;const f=Et(v),y=1-t[0],C=Ft(t[1],Jt),h=Ft(t[2],1),p=Ft(n.disp,Oa),s=Ft(n.each,l=>{}),{fill:a,stroke:c}=p;return(l,o,u,d)=>ds(l,o,(w,b,R,M,k,x,L,O,I,E,z)=>{let P=w.pxRound,N=e,S=r*Bt,A=C*Bt,D=h*Bt,j,U;M.ori==0?[j,U]=f(l,o):[U,j]=f(l,o);const q=M.dir*(M.ori==0?1:-1);let Z=M.ori==0?Gl:Qu,te=M.ori==0?s:(He,Pt,an,zn,$r,fr,mn)=>{s(He,Pt,an,$r,zn,mn,fr)},he=Ft(l.bands,Pu).find(He=>He.series[0]==o),ne=he!=null?he.dir:0,le=w.fillTo(l,o,w.min,w.max,ne),ue=P(L(le,k,z,I)),ce,fe,Se,$e=E,Te=P(w.width*Bt),qe=!1,Ve=null,lt=null,Je=null,ht=null;a!=null&&(Te==0||c!=null)&&(qe=!0,Ve=a.values(l,o,u,d),lt=new Map,new Set(Ve).forEach(He=>{He!=null&&lt.set(He,new Path2D)}),Te>0&&(Je=c.values(l,o,u,d),ht=new Map,new Set(Je).forEach(He=>{He!=null&&ht.set(He,new Path2D)})));let{x0:qt,size:In}=p;if(qt!=null&&In!=null){N=1,b=qt.values(l,o,u,d),qt.unit==2&&(b=b.map(Pt=>l.posToVal(O+Pt*E,M.key,!0)));let He=In.values(l,o,u,d);In.unit==2?fe=He[0]*E:fe=x(He[0],M,E,O)-x(0,M,E,O),$e=Am(b,R,x,M,E,O,$e),Se=$e-fe+S}else $e=Am(b,R,x,M,E,O,$e),Se=$e*y+S,fe=$e-Se;Se<1&&(Se=0),Te>=fe/2&&(Te=0),Se<5&&(P=$f);let Vt=Se>0,qr=$e-Se-(Vt?Te:0);fe=P(Fu(qr,D,A)),ce=(N==0?fe/2:N==q?0:fe)-N*q*((N==0?S/2:0)+(Vt?Te/2:0));const fn={stroke:null,fill:null,clip:null,band:null,gaps:null,flags:0},Bn=qe?null:new Path2D;let tr=null;if(he!=null)tr=l.data[he.series[1]];else{let{y0:He,y1:Pt}=p;He!=null&&Pt!=null&&(R=Pt.values(l,o,u,d),tr=He.values(l,o,u,d))}let Sr=j*fe,gt=U*fe;for(let He=q==1?u:d;He>=u&&He<=d;He+=q){let Pt=R[He];if(Pt==null)continue;if(tr!=null){let Yt=tr[He]??0;if(Pt-Yt==0)continue;ue=L(Yt,k,z,I)}let an=M.distr!=2||p!=null?b[He]:He,zn=x(an,M,E,O),$r=L(Ft(Pt,le),k,z,I),fr=P(zn-ce),mn=P(Ar($r,ue)),Yn=P(Mi($r,ue)),nr=mn-Yn;if(Pt!=null){let Yt=Pt<0?gt:Sr,Xn=Pt<0?Sr:gt;qe?(Te>0&&Je[He]!=null&&Z(ht.get(Je[He]),fr,Yn+Kr(Te/2),fe,Ar(0,nr-Te),Yt,Xn),Ve[He]!=null&&Z(lt.get(Ve[He]),fr,Yn+Kr(Te/2),fe,Ar(0,nr-Te),Yt,Xn)):Z(Bn,fr,Yn+Kr(Te/2),fe,Ar(0,nr-Te),Yt,Xn),te(l,o,He,fr-Te/2,Yn,fe+Te,nr)}}return Te>0?fn.stroke=qe?ht:Bn:qe||(fn._fill=w.width==0?w._fill:w._stroke??w._fill,fn.width=0),fn.fill=qe?lt:Bn,fn})}function AA(n,t){const e=Ft(t==null?void 0:t.alignGaps,0);return(r,v,f,y)=>ds(r,v,(C,h,p,s,a,c,l,o,u,d,w)=>{[f,y]=Ol(p,f,y);let b=C.pxRound,R=j=>b(c(j,s,d,o)),M=j=>b(l(j,a,w,u)),k,x,L;s.ori==0?(k=Ul,L=Xs,x=wm):(k=Vl,L=Qs,x=bm);const O=s.dir*(s.ori==0?1:-1);let I=R(h[O==1?f:y]),E=I,z=[],P=[];for(let j=O==1?f:y;j>=f&&j<=y;j+=O)if(p[j]!=null){let U=h[j],q=R(U);z.push(E=q),P.push(M(p[j]))}const N={stroke:n(z,P,k,L,x,b),fill:null,clip:null,band:null,gaps:null,flags:Ys},S=N.stroke;let[A,D]=Yu(r,v);if(C.fill!=null||A!=0){let j=N.fill=new Path2D(S),U=C.fillTo(r,v,C.min,C.max,A),q=M(U);L(j,E,q),L(j,I,q)}if(!C.spanGaps){let j=[];j.push(...Xu(h,p,f,y,O,R,e)),N.gaps=j=C.gaps(r,v,f,y,j),N.clip=Hl(j,s.ori,o,u,d,w)}return D!=0&&(N.band=D==2?[io(r,v,f,y,S,-1),io(r,v,f,y,S,1)]:io(r,v,f,y,S,D)),N})}function _A(n){return AA(SA,n)}function SA(n,t,e,r,v,f){const y=n.length;if(y<2)return null;const C=new Path2D;if(e(C,n[0],t[0]),y==2)r(C,n[1],t[1]);else{let h=Array(y),p=Array(y-1),s=Array(y-1),a=Array(y-1);for(let c=0;c<y-1;c++)s[c]=t[c+1]-t[c],a[c]=n[c+1]-n[c],p[c]=s[c]/a[c];h[0]=p[0];for(let c=1;c<y-1;c++)p[c]===0||p[c-1]===0||p[c-1]>0!=p[c]>0?h[c]=0:(h[c]=3*(a[c-1]+a[c])/((2*a[c]+a[c-1])/p[c-1]+(a[c]+2*a[c-1])/p[c]),isFinite(h[c])||(h[c]=0));h[y-1]=p[y-2];for(let c=0;c<y-1;c++)v(C,n[c]+a[c]/3,t[c]+h[c]*a[c]/3,n[c+1]-a[c]/3,t[c+1]-h[c+1]*a[c]/3,n[c+1],t[c+1])}return C}const Zu=new Set;function _m(){for(let n of Zu)n.syncRect(!0)}Hs&&(ls(sk,Us,_m),ls(ak,Us,_m,!0),ls(Rl,Us,()=>{pr.pxRatio=Bt}));const $A=km(),MA=xm();function Sm(n,t,e,r){return(r?[n[0],n[1]].concat(n.slice(2)):[n[0]].concat(n.slice(1))).map((v,f)=>Ju(v,f,t,e))}function TA(n,t){return n.map((e,r)=>r==0?{}:Pn({},t,e))}function Ju(n,t,e,r){return Pn({},t==0?e:r,n)}function $m(n,t,e){return t==null?Gs:[t,e]}const EA=$m;function IA(n,t,e){return t==null?Gs:Dl(t,e,Ou,!0)}function Mm(n,t,e,r){return t==null?Gs:Nl(t,e,n.scales[r].log,!1)}const RA=Mm;function Tm(n,t,e,r){return t==null?Gs:Lu(t,e,n.scales[r].log,!1)}const LA=Tm;function OA(n,t,e,r,v){let f=Ar(_f(n),_f(t)),y=t-n,C=$i(v/r*y,e);do{let h=e[C],p=r*h/y;if(p>=v&&f+(h<5?Ro.get(h):0)<=17)return[h,p]}while(++C<e.length);return[0,0]}function Em(n){let t,e;return n=n.replace(/(\d+)px/,(r,v)=>(t=qn((e=+v)*Bt))+"px"),[n,t,e]}function NA(n){n.show&&[n.font,n.labelFont].forEach(t=>{let e=en(t[2]*Bt,1);t[0]=t[0].replace(/[0-9.]+px/,e+"px"),t[1]=e})}function pr(n,t,e){const r={mode:Ft(n.mode,1)},v=r.mode;function f(V,X,ie,oe){let ge=X.valToPct(V);return oe+ie*(X.dir==-1?1-ge:ge)}function y(V,X,ie,oe){let ge=X.valToPct(V);return oe+ie*(X.dir==-1?ge:1-ge)}function C(V,X,ie,oe){return X.ori==0?f(V,X,ie,oe):y(V,X,ie,oe)}r.valToPosH=f,r.valToPosV=y;let h=!1;r.status=0;const p=r.root=ci(jC);if(n.id!=null&&(p.id=n.id),Vr(p,n.class),n.title){let V=ci(VC,p);V.textContent=n.title}const s=Si("canvas"),a=r.ctx=s.getContext("2d"),c=ci(GC,p);ls("click",c,V=>{V.target===o&&(Ht!=gi||Rt!=Ji)&&kn.click(r,V)},!0);const l=r.under=ci(KC,c);c.appendChild(s);const o=r.over=ci(qC,c);n=Ks(n);const u=+Ft(n.pxAlign,1),d=fm(u);(n.plugins||[]).forEach(V=>{V.opts&&(n=V.opts(r,n)||n)});const w=n.ms||.001,b=r.series=v==1?Sm(n.series||[],im,hm,!1):TA(n.series||[null],um),R=r.axes=Sm(n.axes||[],rm,am,!0),M=r.scales={},k=r.bands=n.bands||[];k.forEach(V=>{V.fill=Et(V.fill||null),V.dir=Ft(V.dir,-1)});const x=v==2?b[1].facets[0].scale:b[0].scale,L={axes:ho,series:ia},O=(n.drawOrder||["axes","series"]).map(V=>L[V]);function I(V){const X=V.distr==3?ie=>ro(ie>0?ie:V.clamp(r,ie,V.min,V.max,V.key)):V.distr==4?ie=>Du(ie,V.asinh):V.distr==100?ie=>V.fwd(ie):ie=>ie;return ie=>{let oe=X(ie),{_min:ge,_max:be}=V,Me=be-ge;return(oe-ge)/Me}}function E(V){let X=M[V];if(X==null){let ie=(n.scales||Oa)[V]||Oa;if(ie.from!=null){E(ie.from);let oe=Pn({},M[ie.from],ie,{key:V});oe.valToPct=I(oe),M[V]=oe}else{X=M[V]=Pn({},V==x?dm:vA,ie),X.key=V;let oe=X.time,ge=X.range,be=Lo(ge);if((V!=x||v==2&&!oe)&&(be&&(ge[0]==null||ge[1]==null)&&(ge={min:ge[0]==null?xf:{mode:1,hard:ge[0],soft:ge[0]},max:ge[1]==null?xf:{mode:1,hard:ge[1],soft:ge[1]}},be=!1),!be&&Wl(ge))){let Me=ge;ge=(De,Pe,je)=>Pe==null?Gs:Dl(Pe,je,Me)}X.range=Et(ge||(oe?EA:V==x?X.distr==3?RA:X.distr==4?LA:$m:X.distr==3?Mm:X.distr==4?Tm:IA)),X.auto=Et(be?!1:X.auto),X.clamp=Et(X.clamp||mA),X._min=X._max=null,X.valToPct=I(X)}}}E("x"),E("y"),v==1&&b.forEach(V=>{E(V.scale)}),R.forEach(V=>{E(V.scale)});for(let V in n.scales)E(V);const z=M[x],P=z.distr;let N,S;z.ori==0?(Vr(p,HC),N=f,S=y):(Vr(p,UC),N=y,S=f);const A={};for(let V in M){let X=M[V];(X.min!=null||X.max!=null)&&(A[V]={min:X.min,max:X.max},X.min=X.max=null)}const D=n.tzDate||(V=>new Date(qn(V/w))),j=n.fmtDate||Wu,U=w==1?Hk(D):Gk(D),q=Yf(D,qf(w==1?jk:Vk,j)),Z=Qf(D,Xf(qk,j)),te=[],he=r.legend=Pn({},Qk,n.legend),ne=r.cursor=Pn({},rA,{drag:{y:v==2}},n.cursor),le=he.show,ue=ne.show,ce=he.markers;he.idxs=te,ce.width=Et(ce.width),ce.dash=Et(ce.dash),ce.stroke=Et(ce.stroke),ce.fill=Et(ce.fill);let fe,Se,$e,Te=[],qe=[],Ve,lt=!1,Je={};if(he.live){const V=b[1]?b[1].values:null;lt=V!=null,Ve=lt?V(r,1,0):{_:0};for(let X in Ve)Je[X]=$u}if(le)if(fe=Si("table",ek,p),$e=Si("tbody",null,fe),he.mount(r,fe),lt){Se=Si("thead",null,fe,$e);let V=Si("tr",null,Se);Si("th",null,V);for(var ht in Ve)Si("th",of,V).textContent=ht}else Vr(fe,nk),he.live&&Vr(fe,tk);const qt={show:!0},In={show:!1};function Vt(V,X){if(X==0&&(lt||!he.live||v==2))return Gs;let ie=[],oe=Si("tr",rk,$e,$e.childNodes[X]);Vr(oe,V.class),V.show||Vr(oe,as);let ge=Si("th",null,oe);if(ce.show){let De=ci(ik,ge);if(X>0){let Pe=ce.width(r,X);Pe&&(De.style.border=Pe+"px "+ce.dash(r,X)+" "+ce.stroke(r,X)),De.style.background=ce.fill(r,X)}}let be=ci(of,ge);V.label instanceof HTMLElement?be.appendChild(V.label):be.textContent=V.label,X>0&&(ce.show||(be.style.color=V.width>0?ce.stroke(r,X):ce.fill(r,X)),fn("click",ge,De=>{if(ne._lock)return;Li(De);let Pe=b.indexOf(V);if((De.ctrlKey||De.metaKey)!=he.isolate){let je=b.some((Ge,Ye)=>Ye>0&&Ye!=Pe&&Ge.show);b.forEach((Ge,Ye)=>{Ye>0&&Tr(Ye,je?Ye==Pe?qt:In:qt,!0,it.setSeries)})}else Tr(Pe,{show:!V.show},!0,it.setSeries)},!1),Oi&&fn(cf,ge,De=>{ne._lock||(Li(De),Tr(b.indexOf(V),vi,!0,it.setSeries))},!1));for(var Me in Ve){let De=Si("td",ok,oe);De.textContent="--",ie.push(De)}return[oe,ie]}const qr=new Map;function fn(V,X,ie,oe=!0){const ge=qr.get(X)||{},be=ne.bind[V](r,X,ie,oe);be&&(ls(V,X,ge[V]=be),qr.set(X,ge))}function Bn(V,X,ie){const oe=qr.get(X)||{};for(let ge in oe)(V==null||ge==V)&&(Ru(ge,X,oe[ge]),delete oe[ge]);V==null&&qr.delete(X)}let tr=0,Sr=0,gt=0,He=0,Pt=0,an=0,zn=Pt,$r=an,fr=gt,mn=He,Yn=0,nr=0,Yt=0,Xn=0;r.bbox={};let oo=!1,Ei=!1,Ii=!1,Ri=!1,so=!1,lr=!1;function ao(V,X,ie){(ie||V!=r.width||X!=r.height)&&Oo(V,X),Pi(!1),Ii=!0,Ei=!0,Zi()}function Oo(V,X){r.width=tr=gt=V,r.height=Sr=He=X,Pt=an=0,ms(),ta();let ie=r.bbox;Yn=ie.left=us(Pt*Bt,.5),nr=ie.top=us(an*Bt,.5),Yt=ie.width=us(gt*Bt,.5),Xn=ie.height=us(He*Bt,.5)}const Va=3;function Yr(){let V=!1,X=0;for(;!V;){X++;let ie=oa(X),oe=Ya(X);V=X==Va||ie&&oe,V||(Oo(r.width,r.height),Ei=!0)}}function Ga({width:V,height:X}){ao(V,X)}r.setSize=Ga;function ms(){let V=!1,X=!1,ie=!1,oe=!1;R.forEach((ge,be)=>{if(ge.show&&ge._show){let{side:Me,_size:De}=ge,Pe=Me%2,je=ge.label!=null?ge.labelSize:0,Ge=De+je;Ge>0&&(Pe?(gt-=Ge,Me==3?(Pt+=Ge,oe=!0):ie=!0):(He-=Ge,Me==0?(an+=Ge,V=!0):X=!0))}}),Di[0]=V,Di[1]=ie,Di[2]=X,Di[3]=oe,gt-=yr[1]+yr[3],Pt+=yr[3],He-=yr[2]+yr[0],an+=yr[0]}function ta(){let V=Pt+gt,X=an+He,ie=Pt,oe=an;function ge(be,Me){switch(be){case 1:return V+=Me,V-Me;case 2:return X+=Me,X-Me;case 3:return ie-=Me,ie+Me;case 0:return oe-=Me,oe+Me}}R.forEach((be,Me)=>{if(be.show&&be._show){let De=be.side;be._pos=ge(De,be._size),be.label!=null&&(be._lpos=ge(De,be.labelSize))}})}if(ne.dataIdx==null){let V=ne.hover,X=V.skip=new Set(V.skip??[]);X.add(void 0);let ie=V.prox=Et(V.prox),oe=V.bias??(V.bias=0);ne.dataIdx=(ge,be,Me,De)=>{if(be==0)return Me;let Pe=Me,je=ie(ge,be,Me,De)??Jt,Ge=je>=0&&je<Jt,Ye=z.ori==0?gt:He,pt=ne.left,Mt=t[0],mt=t[be];if(X.has(mt[Me])){Pe=null;let St=null,st=null,et;if(oe==0||oe==-1)for(et=Me;St==null&&et-- >0;)X.has(mt[et])||(St=et);if(oe==0||oe==1)for(et=Me;st==null&&et++<mt.length;)X.has(mt[et])||(st=et);if(St!=null||st!=null)if(Ge){let tn=St==null?-1/0:N(Mt[St],z,Ye,0),dn=st==null?1/0:N(Mt[st],z,Ye,0),Un=pt-tn,Ot=dn-pt;Un<=Ot?Un<=je&&(Pe=St):Ot<=je&&(Pe=st)}else Pe=st==null?St:St==null?st:Me-St<=st-Me?St:st}else Ge&&Kn(pt-N(Mt[Me],z,Ye,0))>je&&(Pe=null);return Pe}}const Li=V=>{ne.event=V};ne.idxs=te,ne._lock=!1;let Rn=ne.points;Rn.show=Et(Rn.show),Rn.size=Et(Rn.size),Rn.stroke=Et(Rn.stroke),Rn.width=Et(Rn.width),Rn.fill=Et(Rn.fill);const mr=r.focus=Pn({},n.focus||{alpha:.3},ne.focus),Oi=mr.prox>=0,vn=Oi&&Rn.one;let vr=[],qi=[],Ni=[];function vs(V,X){let ie=Rn.show(r,X);if(ie instanceof HTMLElement)return Vr(ie,JC),Vr(ie,V.class),Ui(ie,-10,-10,gt,He),o.insertBefore(ie,vr[X]),ie}function na(V,X){if(v==1||X>0){let ie=v==1&&M[V.scale].time,oe=V.value;V.value=ie?Of(oe)?Qf(D,Xf(oe,j)):oe||Z:oe||pA,V.label=V.label||(ie?oA:iA)}if(vn||X>0){V.width=V.width==null?1:V.width,V.paths=V.paths||$A||vk,V.fillTo=Et(V.fillTo||yA),V.pxAlign=+Ft(V.pxAlign,u),V.pxRound=fm(V.pxAlign),V.stroke=Et(V.stroke||null),V.fill=Et(V.fill||null),V._stroke=V._fill=V._paths=V._focus=null;let ie=gA(Ar(1,V.width),1),oe=V.points=Pn({},{size:ie,width:Ar(1,ie*.2),stroke:V.stroke,space:ie*2,paths:MA,_stroke:null,_fill:null},V.points);oe.show=Et(oe.show),oe.filter=Et(oe.filter),oe.fill=Et(oe.fill),oe.stroke=Et(oe.stroke),oe.paths=Et(oe.paths),oe.pxAlign=V.pxAlign}if(le){let ie=Vt(V,X);Te.splice(X,0,ie[0]),qe.splice(X,0,ie[1]),he.values.push(null)}if(ue){te.splice(X,0,null);let ie=null;vn?X==0&&(ie=vs(V,X)):X>0&&(ie=vs(V,X)),vr.splice(X,0,ie),qi.splice(X,0,0),Ni.splice(X,0,0)}Qe("addSeries",X)}function Ka(V,X){X=X??b.length,V=v==1?Ju(V,X,im,hm):Ju(V,X,{},um),b.splice(X,0,V),na(b[X],X)}r.addSeries=Ka;function qa(V){if(b.splice(V,1),le){he.values.splice(V,1),qe.splice(V,1);let X=Te.splice(V,1)[0];Bn(null,X.firstChild),X.remove()}ue&&(te.splice(V,1),vr.splice(V,1)[0].remove(),qi.splice(V,1),Ni.splice(V,1)),Qe("delSeries",V)}r.delSeries=qa;const Di=[!1,!1,!1,!1];function Xr(V,X){if(V._show=V.show,V.show){let ie=V.side%2,oe=M[V.scale];oe==null&&(V.scale=ie?b[1].scale:x,oe=M[V.scale]);let ge=oe.time;V.size=Et(V.size),V.space=Et(V.space),V.rotate=Et(V.rotate),Lo(V.incrs)&&V.incrs.forEach(Me=>{!Ro.has(Me)&&Ro.set(Me,Rf(Me))}),V.incrs=Et(V.incrs||(oe.distr==2?Wk:ge?w==1?zk:Uk:hs)),V.splits=Et(V.splits||(ge&&oe.distr==1?U:oe.distr==3?Gu:oe.distr==4?lA:aA)),V.stroke=Et(V.stroke),V.grid.stroke=Et(V.grid.stroke),V.ticks.stroke=Et(V.ticks.stroke),V.border.stroke=Et(V.border.stroke);let be=V.values;V.values=Lo(be)&&!Lo(be[0])?Et(be):ge?Lo(be)?Yf(D,qf(be,j)):Of(be)?Kk(D,be):be||q:be||sA,V.filter=Et(V.filter||(oe.distr>=3&&oe.log==10?hA:oe.distr==3&&oe.log==2?dA:Mf)),V.font=Em(V.font),V.labelFont=Em(V.labelFont),V._size=V.size(r,null,X,0),V._space=V._rotate=V._incrs=V._found=V._splits=V._values=null,V._size>0&&(Di[X]=!0,V._el=ci(YC,c))}}function It(V,X,ie,oe){let[ge,be,Me,De]=ie,Pe=X%2,je=0;return Pe==0&&(De||be)&&(je=X==0&&!ge||X==2&&!Me?qn(rm.size/3):0),Pe==1&&(ge||Me)&&(je=X==1&&!be||X==3&&!De?qn(am.size/2):0),je}const ra=r.padding=(n.padding||[It,It,It,It]).map(V=>Et(Ft(V,It))),yr=r._padding=ra.map((V,X)=>V(r,X,Di,0));let Ln,nn=null,Cn=null;const hi=v==1?b[0].idxs:null;let wr=null,di=!1;function No(V,X){if(t=V??[],r.data=r._data=t,v==2){Ln=0;for(let ie=1;ie<b.length;ie++)Ln+=t[ie][0].length}else{t.length==0&&(r.data=r._data=t=[[]]),wr=t[0],Ln=wr.length;let ie=t;if(P==2){ie=t.slice();let oe=ie[0]=Array(Ln);for(let ge=0;ge<Ln;ge++)oe[ge]=ge}r._data=t=ie}if(Pi(!0),Qe("setData"),P==2&&(Ii=!0),X!==!1){let ie=z;ie.auto(r,di)?ys():jn(x,ie.min,ie.max),Ri=Ri||ne.left>=0,lr=!0,Zi()}}r.setData=No;function ys(){di=!0;let V,X;v==1&&(Ln>0?(nn=hi[0]=0,Cn=hi[1]=Ln-1,V=t[0][nn],X=t[0][Cn],P==2?(V=nn,X=Cn):V==X&&(P==3?[V,X]=Nl(V,V,z.log,!1):P==4?[V,X]=Lu(V,V,z.log,!1):z.time?X=V+qn(86400/w):[V,X]=Dl(V,X,Ou,!0))):(nn=hi[0]=V=null,Cn=hi[1]=X=null)),jn(x,V,X)}let Yi,Pr,lo,Do,Wr,Fo,ws,bs,Po,Qn;function xs(V,X,ie,oe,ge,be){V??(V=af),ie??(ie=Pu),oe??(oe="butt"),ge??(ge=af),be??(be="round"),V!=Yi&&(a.strokeStyle=Yi=V),ge!=Pr&&(a.fillStyle=Pr=ge),X!=lo&&(a.lineWidth=lo=X),be!=Wr&&(a.lineJoin=Wr=be),oe!=Fo&&(a.lineCap=Fo=oe),ie!=Do&&a.setLineDash(Do=ie)}function co(V,X,ie,oe){X!=Pr&&(a.fillStyle=Pr=X),V!=ws&&(a.font=ws=V),ie!=bs&&(a.textAlign=bs=ie),oe!=Po&&(a.textBaseline=Po=oe)}function Wo(V,X,ie,oe,ge=0){if(oe.length>0&&V.auto(r,di)&&(X==null||X.min==null)){let be=Ft(nn,0),Me=Ft(Cn,oe.length-1),De=ie.min==null?hk(oe,be,Me,ge,V.distr==3):[ie.min,ie.max];V.min=Mi(V.min,ie.min=De[0]),V.max=Ar(V.max,ie.max=De[1])}}const Bo={min:null,max:null};function Xi(){for(let oe in M){let ge=M[oe];A[oe]==null&&(ge.min==null||A[x]!=null&&ge.auto(r,di))&&(A[oe]=Bo)}for(let oe in M){let ge=M[oe];A[oe]==null&&ge.from!=null&&A[ge.from]!=null&&(A[oe]=Bo)}A[x]!=null&&Pi(!0);let V={};for(let oe in A){let ge=A[oe];if(ge!=null){let be=V[oe]=Ks(M[oe],bk);if(ge.min!=null)Pn(be,ge);else if(oe!=x||v==2)if(Ln==0&&be.from==null){let Me=be.range(r,null,null,oe);be.min=Me[0],be.max=Me[1]}else be.min=Jt,be.max=-Jt}}if(Ln>0){b.forEach((oe,ge)=>{if(v==1){let be=oe.scale,Me=A[be];if(Me==null)return;let De=V[be];if(ge==0){let Pe=De.range(r,De.min,De.max,be);De.min=Pe[0],De.max=Pe[1],nn=$i(De.min,t[0]),Cn=$i(De.max,t[0]),Cn-nn>1&&(t[0][nn]<De.min&&nn++,t[0][Cn]>De.max&&Cn--),oe.min=wr[nn],oe.max=wr[Cn]}else oe.show&&oe.auto&&Wo(De,Me,oe,t[ge],oe.sorted);oe.idxs[0]=nn,oe.idxs[1]=Cn}else if(ge>0&&oe.show&&oe.auto){let[be,Me]=oe.facets,De=be.scale,Pe=Me.scale,[je,Ge]=t[ge],Ye=V[De],pt=V[Pe];Ye!=null&&Wo(Ye,A[De],be,je,be.sorted),pt!=null&&Wo(pt,A[Pe],Me,Ge,Me.sorted),oe.min=Me.min,oe.max=Me.max}});for(let oe in V){let ge=V[oe],be=A[oe];if(ge.from==null&&(be==null||be.min==null)){let Me=ge.range(r,ge.min==Jt?null:ge.min,ge.max==-Jt?null:ge.max,oe);ge.min=Me[0],ge.max=Me[1]}}}for(let oe in V){let ge=V[oe];if(ge.from!=null){let be=V[ge.from];if(be.min==null)ge.min=ge.max=null;else{let Me=ge.range(r,be.min,be.max,oe);ge.min=Me[0],ge.max=Me[1]}}}let X={},ie=!1;for(let oe in V){let ge=V[oe],be=M[oe];if(be.min!=ge.min||be.max!=ge.max){be.min=ge.min,be.max=ge.max;let Me=be.distr;be._min=Me==3?ro(be.min):Me==4?Du(be.min,be.asinh):Me==100?be.fwd(be.min):be.min,be._max=Me==3?ro(be.max):Me==4?Du(be.max,be.asinh):Me==100?be.fwd(be.max):be.max,X[oe]=ie=!0}}if(ie){b.forEach((oe,ge)=>{v==2?ge>0&&X.y&&(oe._paths=null):X[oe.scale]&&(oe._paths=null)});for(let oe in X)Ii=!0,Qe("setScale",oe);ue&&ne.left>=0&&(Ri=lr=!0)}for(let oe in A)A[oe]=null}function Cs(V){let X=Fu(nn-1,0,Ln-1),ie=Fu(Cn+1,0,Ln-1);for(;V[X]==null&&X>0;)X--;for(;V[ie]==null&&ie<Ln-1;)ie++;return[X,ie]}function ia(){if(Ln>0){let V=b.some(X=>X._focus)&&Qn!=mr.alpha;V&&(a.globalAlpha=Qn=mr.alpha),b.forEach((X,ie)=>{if(ie>0&&X.show&&(zo(ie,!1),zo(ie,!0),X._paths==null)){let oe=Qn;Qn!=X.alpha&&(a.globalAlpha=Qn=X.alpha);let ge=v==2?[0,t[ie][0].length-1]:Cs(t[ie]);X._paths=X.paths(r,ie,ge[0],ge[1]),Qn!=oe&&(a.globalAlpha=Qn=oe)}}),b.forEach((X,ie)=>{if(ie>0&&X.show){let oe=Qn;Qn!=X.alpha&&(a.globalAlpha=Qn=X.alpha),X._paths!=null&&jo(ie,!1);{let ge=X._paths!=null?X._paths.gaps:null,be=X.points.show(r,ie,nn,Cn,ge),Me=X.points.filter(r,ie,be,ge);(be||Me)&&(X.points._paths=X.points.paths(r,ie,nn,Cn,Me),jo(ie,!0))}Qn!=oe&&(a.globalAlpha=Qn=oe),Qe("drawSeries",ie)}}),V&&(a.globalAlpha=Qn=1)}}function zo(V,X){let ie=X?b[V].points:b[V];ie._stroke=ie.stroke(r,V),ie._fill=ie.fill(r,V)}function jo(V,X){let ie=X?b[V].points:b[V],{stroke:oe,fill:ge,clip:be,flags:Me,_stroke:De=ie._stroke,_fill:Pe=ie._fill,_width:je=ie.width}=ie._paths;je=en(je*Bt,3);let Ge=null,Ye=je%2/2;X&&Pe==null&&(Pe=je>0?"#fff":De);let pt=ie.pxAlign==1&&Ye>0;if(pt&&a.translate(Ye,Ye),!X){let Mt=Yn-je/2,mt=nr-je/2,St=Yt+je,st=Xn+je;Ge=new Path2D,Ge.rect(Mt,mt,St,st)}X?uo(De,je,ie.dash,ie.cap,Pe,oe,ge,Me,be):ks(V,De,je,ie.dash,ie.cap,Pe,oe,ge,Me,Ge,be),pt&&a.translate(-Ye,-Ye)}function ks(V,X,ie,oe,ge,be,Me,De,Pe,je,Ge){let Ye=!1;Pe!=0&&k.forEach((pt,Mt)=>{if(pt.series[0]==V){let mt=b[pt.series[1]],St=t[pt.series[1]],st=(mt._paths||Oa).band;Lo(st)&&(st=pt.dir==1?st[0]:st[1]);let et,tn=null;mt.show&&st&&pk(St,nn,Cn)?(tn=pt.fill(r,Mt)||be,et=mt._paths.clip):st=null,uo(X,ie,oe,ge,tn,Me,De,Pe,je,Ge,et,st),Ye=!0}}),Ye||uo(X,ie,oe,ge,be,Me,De,Pe,je,Ge)}const Ho=Ys|qu;function uo(V,X,ie,oe,ge,be,Me,De,Pe,je,Ge,Ye){xs(V,X,ie,oe,ge),(Pe||je||Ye)&&(a.save(),Pe&&a.clip(Pe),je&&a.clip(je)),Ye?(De&Ho)==Ho?(a.clip(Ye),Ge&&a.clip(Ge),Zn(ge,Me),pi(V,be,X)):De&qu?(Zn(ge,Me),a.clip(Ye),pi(V,be,X)):De&Ys&&(a.save(),a.clip(Ye),Ge&&a.clip(Ge),Zn(ge,Me),a.restore(),pi(V,be,X)):(Zn(ge,Me),pi(V,be,X)),(Pe||je||Ye)&&a.restore()}function pi(V,X,ie){ie>0&&(X instanceof Map?X.forEach((oe,ge)=>{a.strokeStyle=Yi=ge,a.stroke(oe)}):X!=null&&V&&a.stroke(X))}function Zn(V,X){X instanceof Map?X.forEach((ie,oe)=>{a.fillStyle=Pr=oe,a.fill(ie)}):X!=null&&V&&a.fill(X)}function Qi(V,X,ie,oe){let ge=R[V],be;if(oe<=0)be=[0,0];else{let Me=ge._space=ge.space(r,V,X,ie,oe),De=ge._incrs=ge.incrs(r,V,X,ie,oe,Me);be=OA(X,ie,De,oe,Me)}return ge._found=be}function Fi(V,X,ie,oe,ge,be,Me,De,Pe,je){let Ge=Me%2/2;u==1&&a.translate(Ge,Ge),xs(De,Me,Pe,je,De),a.beginPath();let Ye,pt,Mt,mt,St=ge+(oe==0||oe==3?-be:be);ie==0?(pt=ge,mt=St):(Ye=ge,Mt=St);for(let st=0;st<V.length;st++)X[st]!=null&&(ie==0?Ye=Mt=V[st]:pt=mt=V[st],a.moveTo(Ye,pt),a.lineTo(Mt,mt));a.stroke(),u==1&&a.translate(-Ge,-Ge)}function oa(V){let X=!0;return R.forEach((ie,oe)=>{if(!ie.show)return;let ge=M[ie.scale];if(ge.min==null){ie._show&&(X=!1,ie._show=!1,Pi(!1));return}else ie._show||(X=!1,ie._show=!0,Pi(!1));let be=ie.side,Me=be%2,{min:De,max:Pe}=ge,[je,Ge]=Qi(oe,De,Pe,Me==0?gt:He);if(Ge==0)return;let Ye=ge.distr==2,pt=ie._splits=ie.splits(r,oe,De,Pe,je,Ge,Ye),Mt=ge.distr==2?pt.map(et=>wr[et]):pt,mt=ge.distr==2?wr[pt[1]]-wr[pt[0]]:je,St=ie._values=ie.values(r,ie.filter(r,Mt,oe,Ge,mt),oe,Ge,mt);ie._rotate=be==2?ie.rotate(r,St,oe,Ge):0;let st=ie._size;ie._size=ui(ie.size(r,St,oe,V)),st!=null&&ie._size!=st&&(X=!1)}),X}function Ya(V){let X=!0;return ra.forEach((ie,oe)=>{let ge=ie(r,oe,Di,V);ge!=yr[oe]&&(X=!1),yr[oe]=ge}),X}function ho(){for(let V=0;V<R.length;V++){let X=R[V];if(!X.show||!X._show)continue;let ie=X.side,oe=ie%2,ge,be,Me=X.stroke(r,V),De=ie==0||ie==3?-1:1,[Pe,je]=X._found;if(X.label!=null){let Zt=X.labelGap*De,sr=qn((X._lpos+Zt)*Bt);co(X.labelFont[0],Me,"center",ie==2?Ia:sf),a.save(),oe==1?(ge=be=0,a.translate(sr,qn(nr+Xn/2)),a.rotate((ie==3?-Fl:Fl)/2)):(ge=qn(Yn+Yt/2),be=sr);let vo=Sf(X.label)?X.label(r,V,Pe,je):X.label;a.fillText(vo,ge,be),a.restore()}if(je==0)continue;let Ge=M[X.scale],Ye=oe==0?Yt:Xn,pt=oe==0?Yn:nr,Mt=X._splits,mt=Ge.distr==2?Mt.map(Zt=>wr[Zt]):Mt,St=Ge.distr==2?wr[Mt[1]]-wr[Mt[0]]:Pe,st=X.ticks,et=X.border,tn=st.show?st.size:0,dn=qn(tn*Bt),Un=qn((X.alignTo==2?X._size-tn-X.gap:X.gap)*Bt),Ot=X._rotate*-Fl/180,pe=d(X._pos*Bt),_e=(dn+Un)*De,xe=pe+_e;be=oe==0?xe:0,ge=oe==1?xe:0;let Be=X.font[0],ot=X.align==1?js:X.align==2?ku:Ot>0?js:Ot<0?ku:oe==0?"center":ie==3?ku:js,xt=Ot||oe==1?"middle":ie==2?Ia:sf;co(Be,Me,ot,xt);let Dt=X.font[1]*X.lineGap,At=Mt.map(Zt=>d(C(Zt,Ge,Ye,pt))),Er=X._values;for(let Zt=0;Zt<Er.length;Zt++){let sr=Er[Zt];if(sr!=null){oe==0?ge=At[Zt]:be=At[Zt],sr=""+sr;let vo=sr.indexOf(`
1490
+ `)==-1?[sr]:sr.split(/\n/gm);for(let Sn=0;Sn<vo.length;Sn++){let _s=vo[Sn];Ot?(a.save(),a.translate(ge,be+Sn*Dt),a.rotate(Ot),a.fillText(_s,0,0),a.restore()):a.fillText(_s,ge,be+Sn*Dt)}}}st.show&&Fi(At,st.filter(r,mt,V,je,St),oe,ie,pe,dn,en(st.width*Bt,3),st.stroke(r,V),st.dash,st.cap);let yi=X.grid;yi.show&&Fi(At,yi.filter(r,mt,V,je,St),oe,oe==0?2:1,oe==0?nr:Yn,oe==0?Xn:Yt,en(yi.width*Bt,3),yi.stroke(r,V),yi.dash,yi.cap),et.show&&Fi([pe],[1],oe==0?1:0,oe==0?1:2,oe==1?nr:Yn,oe==1?Xn:Yt,en(et.width*Bt,3),et.stroke(r,V),et.dash,et.cap)}Qe("drawAxes")}function Pi(V){b.forEach((X,ie)=>{ie>0&&(X._paths=null,V&&(v==1?(X.min=null,X.max=null):X.facets.forEach(oe=>{oe.min=null,oe.max=null})))})}let po=!1,Uo=!1,go=[];function sa(){Uo=!1;for(let V=0;V<go.length;V++)Qe(...go[V]);go.length=0}function Zi(){po||($k(aa),po=!0)}function Fe(V,X=!1){po=!0,Uo=X,V(r),aa(),X&&go.length>0&&queueMicrotask(sa)}r.batch=Fe;function aa(){if(oo&&(Xi(),oo=!1),Ii&&(Yr(),Ii=!1),Ei){if(sn(l,js,Pt),sn(l,Ia,an),sn(l,Ta,gt),sn(l,Ea,He),sn(o,js,Pt),sn(o,Ia,an),sn(o,Ta,gt),sn(o,Ea,He),sn(c,Ta,tr),sn(c,Ea,Sr),s.width=qn(tr*Bt),s.height=qn(Sr*Bt),R.forEach(({_el:V,_show:X,_size:ie,_pos:oe,side:ge})=>{if(V!=null)if(X){let be=ge===3||ge===0?ie:0,Me=ge%2==1;sn(V,Me?"left":"top",oe-be),sn(V,Me?"width":"height",ie),sn(V,Me?"top":"left",Me?an:Pt),sn(V,Me?"height":"width",Me?He:gt),Eu(V,as)}else Vr(V,as)}),Yi=Pr=lo=Wr=Fo=ws=bs=Po=Do=null,Qn=1,W(!0),Pt!=zn||an!=$r||gt!=fr||He!=mn){Pi(!1);let V=gt/fr,X=He/mn;if(ue&&!Ri&&ne.left>=0){ne.left*=V,ne.top*=X,Qr&&Ui(Qr,qn(ne.left),0,gt,He),On&&Ui(On,0,qn(ne.top),gt,He);for(let ie=0;ie<vr.length;ie++){let oe=vr[ie];oe!=null&&(qi[ie]*=V,Ni[ie]*=X,Ui(oe,ui(qi[ie]),ui(Ni[ie]),gt,He))}}if(dt.show&&!so&&dt.left>=0&&dt.width>0){dt.left*=V,dt.width*=V,dt.top*=X,dt.height*=X;for(let ie in Y)sn(Mr,ie,dt[ie])}zn=Pt,$r=an,fr=gt,mn=He}Qe("setSize"),Ei=!1}tr>0&&Sr>0&&(a.clearRect(0,0,s.width,s.height),Qe("drawClear"),O.forEach(V=>V()),Qe("draw")),dt.show&&so&&(Qt(dt),so=!1),ue&&Ri&&(_(null,!0,!1),Ri=!1),he.show&&he.live&&lr&&(m(),lr=!1),h||(h=!0,r.status=1,Qe("ready")),di=!1,po=!1}r.redraw=(V,X)=>{Ii=X||!1,V!==!1?jn(x,z.min,z.max):Zi()};function Oe(V,X){let ie=M[V];if(ie.from==null){if(Ln==0){let oe=ie.range(r,X.min,X.max,V);X.min=oe[0],X.max=oe[1]}if(X.min>X.max){let oe=X.min;X.min=X.max,X.max=oe}if(Ln>1&&X.min!=null&&X.max!=null&&X.max-X.min<1e-16)return;V==x&&ie.distr==2&&Ln>0&&(X.min=$i(X.min,t[0]),X.max=$i(X.max,t[0]),X.min==X.max&&X.max++),A[V]=X,oo=!0,Zi()}}r.setScale=Oe;let yn,fo,Qr,On,la,mo,gi,Ji,jt,Wt,Ht,Rt,fi=!1;const kn=ne.drag;let We=kn.x,rn=kn.y;ue&&(ne.x&&(yn=ci(QC,o)),ne.y&&(fo=ci(ZC,o)),z.ori==0?(Qr=yn,On=fo):(Qr=fo,On=yn),Ht=ne.left,Rt=ne.top);const dt=r.select=Pn({show:!0,over:!0,left:0,width:0,top:0,height:0},n.select),Mr=dt.show?ci(XC,dt.over?o:l):null;function Qt(V,X){if(dt.show){for(let ie in V)dt[ie]=V[ie],ie in Y&&sn(Mr,ie,V[ie]);X!==!1&&Qe("setSelect")}}r.setSelect=Qt;function ln(V){if(b[V].show)le&&Eu(Te[V],as);else if(le&&Vr(Te[V],as),ue){let X=vn?vr[0]:vr[V];X!=null&&Ui(X,-10,-10,gt,He)}}function jn(V,X,ie){Oe(V,{min:X,max:ie})}function Tr(V,X,ie,oe){X.focus!=null&&rr(V),X.show!=null&&b.forEach((ge,be)=>{be>0&&(V==be||V==null)&&(ge.show=X.show,ln(be),v==2?(jn(ge.facets[0].scale,null,null),jn(ge.facets[1].scale,null,null)):jn(ge.scale,null,null),Zi())}),ie!==!1&&Qe("setSeries",V,X),oe&&bt("setSeries",r,V,X)}r.setSeries=Tr;function mi(V,X){Pn(k[V],X)}function An(V,X){V.fill=Et(V.fill||null),V.dir=Ft(V.dir,-1),X=X??k.length,k.splice(X,0,V)}function Br(V){V==null?k.length=0:k.splice(V,1)}r.addBand=An,r.setBand=mi,r.delBand=Br;function Vo(V,X){b[V].alpha=X,ue&&vr[V]!=null&&(vr[V].style.opacity=X),le&&Te[V]&&(Te[V].style.opacity=X)}let _n,Zr,Jr;const vi={focus:!0};function rr(V){if(V!=Jr){let X=V==null,ie=mr.alpha!=1;b.forEach((oe,ge)=>{if(v==1||ge>0){let be=X||ge==0||ge==V;oe._focus=X?null:be,ie&&Vo(ge,be?1:mr.alpha)}}),Jr=V,ie&&Zi()}}le&&Oi&&fn(uf,fe,V=>{ne._lock||(Li(V),Jr!=null&&Tr(null,vi,!0,it.setSeries))});function ir(V,X,ie){let oe=M[X];ie&&(V=V/Bt-(oe.ori==1?an:Pt));let ge=gt;oe.ori==1&&(ge=He,V=ge-V),oe.dir==-1&&(V=ge-V);let be=oe._min,Me=oe._max,De=V/ge,Pe=be+(Me-be)*De,je=oe.distr;return je==3?Vs(10,Pe):je==4?fk(Pe,oe.asinh):je==100?oe.bwd(Pe):Pe}function cr(V,X){let ie=ir(V,x,X);return $i(ie,t[0],nn,Cn)}r.valToIdx=V=>$i(V,t[0]),r.posToIdx=cr,r.posToVal=ir,r.valToPos=(V,X,ie)=>M[X].ori==0?f(V,M[X],ie?Yt:gt,ie?Yn:0):y(V,M[X],ie?Xn:He,ie?nr:0),r.setCursor=(V,X,ie)=>{Ht=V.left,Rt=V.top,_(null,X,ie)};function As(V,X){sn(Mr,js,dt.left=V),sn(Mr,Ta,dt.width=X)}function ur(V,X){sn(Mr,Ia,dt.top=V),sn(Mr,Ea,dt.height=X)}let br=z.ori==0?As:ur,ei=z.ori==1?As:ur;function ti(){if(le&&he.live)for(let V=v==2?1:0;V<b.length;V++){if(V==0&&lt)continue;let X=he.values[V],ie=0;for(let oe in X)qe[V][ie++].firstChild.nodeValue=X[oe]}}function m(V,X){if(V!=null&&(V.idxs?V.idxs.forEach((ie,oe)=>{te[oe]=ie}):wk(V.idx)||te.fill(V.idx),he.idx=te[0]),le&&he.live){for(let ie=0;ie<b.length;ie++)(ie>0||v==1&&!lt)&&$(ie,te[ie]);ti()}lr=!1,X!==!1&&Qe("setLegend")}r.setLegend=m;function $(V,X){let ie=b[V],oe=V==0&&P==2?wr:t[V],ge;lt?ge=ie.values(r,V,X)??Je:(ge=ie.value(r,X==null?null:oe[X],V,X),ge=ge==null?Je:{_:ge}),he.values[V]=ge}function _(V,X,ie){jt=Ht,Wt=Rt,[Ht,Rt]=ne.move(r,Ht,Rt),ne.left=Ht,ne.top=Rt,ue&&(Qr&&Ui(Qr,qn(Ht),0,gt,He),On&&Ui(On,0,qn(Rt),gt,He));let oe,ge=nn>Cn;_n=Jt,Zr=null;let be=z.ori==0?gt:He,Me=z.ori==1?gt:He;if(Ht<0||Ln==0||ge){oe=ne.idx=null;for(let De=0;De<b.length;De++){let Pe=vr[De];Pe!=null&&Ui(Pe,-10,-10,gt,He)}Oi&&Tr(null,vi,!0,V==null&&it.setSeries),he.live&&(te.fill(oe),lr=!0)}else{let De,Pe,je;v==1&&(De=z.ori==0?Ht:Rt,Pe=ir(De,x),oe=ne.idx=$i(Pe,t[0],nn,Cn),je=N(t[0][oe],z,be,0));let Ge=-10,Ye=-10,pt=0,Mt=0,mt=!0,St="",st="";for(let et=v==2?1:0;et<b.length;et++){let tn=b[et],dn=te[et],Un=dn==null?null:v==1?t[et][dn]:t[et][1][dn],Ot=ne.dataIdx(r,et,oe,Pe),pe=Ot==null?null:v==1?t[et][Ot]:t[et][1][Ot];if(lr=lr||pe!=Un||Ot!=dn,te[et]=Ot,et>0&&tn.show){let _e=Ot==null?-10:Ot==oe?je:N(v==1?t[0][Ot]:t[et][0][Ot],z,be,0),xe=pe==null?-10:S(pe,v==1?M[tn.scale]:M[tn.facets[1].scale],Me,0);if(Oi&&pe!=null){let Be=z.ori==1?Ht:Rt,ot=Kn(mr.dist(r,et,Ot,xe,Be));if(ot<_n){let xt=mr.bias;if(xt!=0){let Dt=ir(Be,tn.scale),At=pe>=0?1:-1,Er=Dt>=0?1:-1;Er==At&&(Er==1?xt==1?pe>=Dt:pe<=Dt:xt==1?pe<=Dt:pe>=Dt)&&(_n=ot,Zr=et)}else _n=ot,Zr=et}}if(lr||vn){let Be,ot;z.ori==0?(Be=_e,ot=xe):(Be=xe,ot=_e);let xt,Dt,At,Er,yi,Zt,sr=!0,vo=Rn.bbox;if(vo!=null){sr=!1;let Sn=vo(r,et);At=Sn.left,Er=Sn.top,xt=Sn.width,Dt=Sn.height}else At=Be,Er=ot,xt=Dt=Rn.size(r,et);if(Zt=Rn.fill(r,et),yi=Rn.stroke(r,et),vn)et==Zr&&_n<=mr.prox&&(Ge=At,Ye=Er,pt=xt,Mt=Dt,mt=sr,St=Zt,st=yi);else{let Sn=vr[et];Sn!=null&&(qi[et]=At,Ni[et]=Er,vf(Sn,xt,Dt,sr),ff(Sn,Zt,yi),Ui(Sn,ui(At),ui(Er),gt,He))}}}}if(vn){let et=mr.prox,tn=Jr==null?_n<=et:_n>et||Zr!=Jr;if(lr||tn){let dn=vr[0];dn!=null&&(qi[0]=Ge,Ni[0]=Ye,vf(dn,pt,Mt,mt),ff(dn,St,st),Ui(dn,ui(Ge),ui(Ye),gt,He))}}}if(dt.show&&fi)if(V!=null){let[De,Pe]=it.scales,[je,Ge]=it.match,[Ye,pt]=V.cursor.sync.scales,Mt=V.cursor.drag;if(We=Mt._x,rn=Mt._y,We||rn){let{left:mt,top:St,width:st,height:et}=V.select,tn=V.scales[Ye].ori,dn=V.posToVal,Un,Ot,pe,_e,xe,Be=De!=null&&je(De,Ye),ot=Pe!=null&&Ge(Pe,pt);Be&&We?(tn==0?(Un=mt,Ot=st):(Un=St,Ot=et),pe=M[De],_e=N(dn(Un,Ye),pe,be,0),xe=N(dn(Un+Ot,Ye),pe,be,0),br(Mi(_e,xe),Kn(xe-_e))):br(0,be),ot&&rn?(tn==1?(Un=mt,Ot=st):(Un=St,Ot=et),pe=M[Pe],_e=S(dn(Un,pt),pe,Me,0),xe=S(dn(Un+Ot,pt),pe,Me,0),ei(Mi(_e,xe),Kn(xe-_e))):ei(0,Me)}else Q()}else{let De=Kn(jt-la),Pe=Kn(Wt-mo);if(z.ori==1){let pt=De;De=Pe,Pe=pt}We=kn.x&&De>=kn.dist,rn=kn.y&&Pe>=kn.dist;let je=kn.uni;je!=null?We&&rn&&(We=De>=je,rn=Pe>=je,!We&&!rn&&(Pe>De?rn=!0:We=!0)):kn.x&&kn.y&&(We||rn)&&(We=rn=!0);let Ge,Ye;We&&(z.ori==0?(Ge=gi,Ye=Ht):(Ge=Ji,Ye=Rt),br(Mi(Ge,Ye),Kn(Ye-Ge)),rn||ei(0,Me)),rn&&(z.ori==1?(Ge=gi,Ye=Ht):(Ge=Ji,Ye=Rt),ei(Mi(Ge,Ye),Kn(Ye-Ge)),We||br(0,be)),!We&&!rn&&(br(0,0),ei(0,0))}if(kn._x=We,kn._y=rn,V==null){if(ie){if(un!=null){let[De,Pe]=it.scales;it.values[0]=De!=null?ir(z.ori==0?Ht:Rt,De):null,it.values[1]=Pe!=null?ir(z.ori==1?Ht:Rt,Pe):null}bt(_u,r,Ht,Rt,gt,He,oe)}if(Oi){let De=ie&&it.setSeries,Pe=mr.prox;Jr==null?_n<=Pe&&Tr(Zr,vi,!0,De):_n>Pe?Tr(null,vi,!0,De):Zr!=Jr&&Tr(Zr,vi,!0,De)}}lr&&(he.idx=oe,m()),X!==!1&&Qe("setCursor")}let F=null;Object.defineProperty(r,"rect",{get(){return F==null&&W(!1),F}});function W(V=!1){V?F=null:(F=o.getBoundingClientRect(),Qe("syncRect",F))}function B(V,X,ie,oe,ge,be,Me){ne._lock||fi&&V!=null&&V.movementX==0&&V.movementY==0||(G(V,X,ie,oe,ge,be,Me,!1,V!=null),V!=null?_(null,!0,!0):_(X,!0,!1))}function G(V,X,ie,oe,ge,be,Me,De,Pe){if(F==null&&W(!1),Li(V),V!=null)ie=V.clientX-F.left,oe=V.clientY-F.top;else{if(ie<0||oe<0){Ht=-10,Rt=-10;return}let[je,Ge]=it.scales,Ye=X.cursor.sync,[pt,Mt]=Ye.values,[mt,St]=Ye.scales,[st,et]=it.match,tn=X.axes[0].side%2==1,dn=z.ori==0?gt:He,Un=z.ori==1?gt:He,Ot=tn?be:ge,pe=tn?ge:be,_e=tn?oe:ie,xe=tn?ie:oe;if(mt!=null?ie=st(je,mt)?C(pt,M[je],dn,0):-10:ie=dn*(_e/Ot),St!=null?oe=et(Ge,St)?C(Mt,M[Ge],Un,0):-10:oe=Un*(xe/pe),z.ori==1){let Be=ie;ie=oe,oe=Be}}Pe&&(X==null||X.cursor.event.type==_u)&&((ie<=1||ie>=gt-1)&&(ie=us(ie,gt)),(oe<=1||oe>=He-1)&&(oe=us(oe,He))),De?(la=ie,mo=oe,[gi,Ji]=ne.move(r,ie,oe)):(Ht=ie,Rt=oe)}const Y={width:0,height:0,left:0,top:0};function Q(){Qt(Y,!1)}let re,se,ye,Ce;function me(V,X,ie,oe,ge,be,Me){fi=!0,We=rn=kn._x=kn._y=!1,G(V,X,ie,oe,ge,be,Me,!0,!1),V!=null&&(fn(Su,Mu,we,!1),bt(lf,r,gi,Ji,gt,He,null));let{left:De,top:Pe,width:je,height:Ge}=dt;re=De,se=Pe,ye=je,Ce=Ge}function we(V,X,ie,oe,ge,be,Me){fi=kn._x=kn._y=!1,G(V,X,ie,oe,ge,be,Me,!1,!0);let{left:De,top:Pe,width:je,height:Ge}=dt,Ye=je>0||Ge>0,pt=re!=De||se!=Pe||ye!=je||Ce!=Ge;if(Ye&&pt&&Qt(dt),kn.setScale&&Ye&&pt){let Mt=De,mt=je,St=Pe,st=Ge;if(z.ori==1&&(Mt=Pe,mt=Ge,St=De,st=je),We&&jn(x,ir(Mt,x),ir(Mt+mt,x)),rn)for(let et in M){let tn=M[et];et!=x&&tn.from==null&&tn.min!=Jt&&jn(et,ir(St+st,et),ir(St,et))}Q()}else ne.lock&&(ne._lock=!ne._lock,_(X,!0,V!=null));V!=null&&(Bn(Su,Mu),bt(Su,r,Ht,Rt,gt,He,null))}function Le(V,X,ie,oe,ge,be,Me){if(ne._lock)return;Li(V);let De=fi;if(fi){let Pe=!0,je=!0,Ge=10,Ye,pt;z.ori==0?(Ye=We,pt=rn):(Ye=rn,pt=We),Ye&&pt&&(Pe=Ht<=Ge||Ht>=gt-Ge,je=Rt<=Ge||Rt>=He-Ge),Ye&&Pe&&(Ht=Ht<gi?0:gt),pt&&je&&(Rt=Rt<Ji?0:He),_(null,!0,!0),fi=!1}Ht=-10,Rt=-10,te.fill(null),_(null,!0,!0),De&&(fi=De)}function Re(V,X,ie,oe,ge,be,Me){ne._lock||(Li(V),ys(),Q(),V!=null&&bt(hf,r,Ht,Rt,gt,He,null))}function ze(){R.forEach(NA),ao(r.width,r.height,!0)}ls(Rl,Us,ze);const rt={};rt.mousedown=me,rt.mousemove=B,rt.mouseup=we,rt.dblclick=Re,rt.setSeries=(V,X,ie,oe)=>{let ge=it.match[2];ie=ge(r,X,ie),ie!=-1&&Tr(ie,oe,!0,!1)},ue&&(fn(lf,o,me),fn(_u,o,B),fn(cf,o,V=>{Li(V),W(!1)}),fn(uf,o,Le),fn(hf,o,Re),Zu.add(r),r.syncRect=W);const Ke=r.hooks=n.hooks||{};function Qe(V,X,ie){Uo?go.push([V,X,ie]):V in Ke&&Ke[V].forEach(oe=>{oe.call(null,r,X,ie)})}(n.plugins||[]).forEach(V=>{for(let X in V.hooks)Ke[X]=(Ke[X]||[]).concat(V.hooks[X])});const on=(V,X,ie)=>ie,it=Pn({key:null,setSeries:!1,filters:{pub:Tf,sub:Tf},scales:[x,b[1]?b[1].scale:null],match:[Ef,Ef,on],values:[null,null]},ne.sync);it.match.length==2&&it.match.push(on),ne.sync=it;const un=it.key,ft=gm(un);function bt(V,X,ie,oe,ge,be,Me){it.filters.pub(V,X,ie,oe,ge,be,Me)&&ft.pub(V,X,ie,oe,ge,be,Me)}ft.sub(r);function Hn(V,X,ie,oe,ge,be,Me){it.filters.sub(V,X,ie,oe,ge,be,Me)&&rt[V](null,X,ie,oe,ge,be,Me)}r.pub=Hn;function or(){ft.unsub(r),Zu.delete(r),qr.clear(),Ru(Rl,Us,ze),p.remove(),fe==null||fe.remove(),Qe("destroy")}r.destroy=or;function hn(){Qe("init",n,t),No(t||n.data,!1),A[x]?Oe(x,A[x]):ys(),so=dt.show&&(dt.width>0||dt.height>0),Ri=lr=!0,ao(n.width,n.height)}return b.forEach(na),R.forEach(Xr),e?e instanceof HTMLElement?(e.appendChild(p),hn()):e(r,hn):hn(),r}pr.assign=Pn,pr.fmtNum=Nu,pr.rangeNum=Dl,pr.rangeLog=Nl,pr.rangeAsinh=Lu,pr.orient=ds,pr.pxRatio=Bt,pr.join=Sk,pr.fmtDate=Wu,pr.tzDate=Fk,pr.sync=gm;{pr.addGap=wA,pr.clipGaps=Hl;let n=pr.paths={points:xm};n.linear=km,n.stepped=CA,n.bars=kA,n.spline=_A}var Im,Rm;function DA(){return Rm||(Rm=1,Im=function(n,t,e,r,v){var f,y;if(r===void 0)r=0;else if(r=r|0,r<0||r>=n.length)throw new RangeError("invalid lower bound");if(v===void 0)v=n.length-1;else if(v=v|0,v<r||v>=n.length)throw new RangeError("invalid upper bound");for(;r<=v;)if(f=r+(v-r>>>1),y=+e(n[f],t,f,n),y<0)r=f+1;else if(y>0)v=f-1;else return f;return~r}),Im}var FA=DA();const Q2=kr("B",dl(FA));var eh,Lm;function PA(){if(Lm)return eh;Lm=1;function n(t,e,r){var v=-1,f=t.length;e<0&&(e=-e>f?0:f+e),r=r>f?f:r,r<0&&(r+=f),f=e>r?0:r-e>>>0,e>>>=0;for(var y=Array(f);++v<f;)y[v]=t[v+e];return y}return eh=n,eh}var th,Om;function WA(){if(Om)return th;Om=1;var n=PA();function t(e,r,v){var f=e.length;return v=v===void 0?f:v,!r&&v>=f?e:n(e,r,v)}return th=t,th}var nh,Nm;function Dm(){if(Nm)return nh;Nm=1;var n="\\ud800-\\udfff",t="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",r="\\u20d0-\\u20ff",v=t+e+r,f="\\ufe0e\\ufe0f",y="\\u200d",C=RegExp("["+y+n+v+f+"]");function h(p){return C.test(p)}return nh=h,nh}var rh,Fm;function BA(){if(Fm)return rh;Fm=1;function n(t){return t.split("")}return rh=n,rh}var ih,Pm;function zA(){if(Pm)return ih;Pm=1;var n="\\ud800-\\udfff",t="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",r="\\u20d0-\\u20ff",v=t+e+r,f="\\ufe0e\\ufe0f",y="["+n+"]",C="["+v+"]",h="\\ud83c[\\udffb-\\udfff]",p="(?:"+C+"|"+h+")",s="[^"+n+"]",a="(?:\\ud83c[\\udde6-\\uddff]){2}",c="[\\ud800-\\udbff][\\udc00-\\udfff]",l="\\u200d",o=p+"?",u="["+f+"]?",d="(?:"+l+"(?:"+[s,a,c].join("|")+")"+u+o+")*",w=u+o+d,b="(?:"+[s+C+"?",C,a,c,y].join("|")+")",R=RegExp(h+"(?="+h+")|"+b+w,"g");function M(k){return k.match(R)||[]}return ih=M,ih}var oh,Wm;function jA(){if(Wm)return oh;Wm=1;var n=BA(),t=Dm(),e=zA();function r(v){return t(v)?e(v):n(v)}return oh=r,oh}var sh,Bm;function HA(){if(Bm)return sh;Bm=1;var n=typeof Io=="object"&&Io&&Io.Object===Object&&Io;return sh=n,sh}var ah,zm;function UA(){if(zm)return ah;zm=1;var n=HA(),t=typeof self=="object"&&self&&self.Object===Object&&self,e=n||t||Function("return this")();return ah=e,ah}var lh,jm;function ch(){if(jm)return lh;jm=1;var n=UA(),t=n.Symbol;return lh=t,lh}var uh,Hm;function VA(){if(Hm)return uh;Hm=1;function n(t,e){for(var r=-1,v=t==null?0:t.length,f=Array(v);++r<v;)f[r]=e(t[r],r,t);return f}return uh=n,uh}var hh,Um;function GA(){if(Um)return hh;Um=1;var n=Array.isArray;return hh=n,hh}var dh,Vm;function KA(){if(Vm)return dh;Vm=1;var n=ch(),t=Object.prototype,e=t.hasOwnProperty,r=t.toString,v=n?n.toStringTag:void 0;function f(y){var C=e.call(y,v),h=y[v];try{y[v]=void 0;var p=!0}catch{}var s=r.call(y);return p&&(C?y[v]=h:delete y[v]),s}return dh=f,dh}var ph,Gm;function qA(){if(Gm)return ph;Gm=1;var n=Object.prototype,t=n.toString;function e(r){return t.call(r)}return ph=e,ph}var gh,Km;function YA(){if(Km)return gh;Km=1;var n=ch(),t=KA(),e=qA(),r="[object Null]",v="[object Undefined]",f=n?n.toStringTag:void 0;function y(C){return C==null?C===void 0?v:r:f&&f in Object(C)?t(C):e(C)}return gh=y,gh}var fh,qm;function XA(){if(qm)return fh;qm=1;function n(t){return t!=null&&typeof t=="object"}return fh=n,fh}var mh,Ym;function QA(){if(Ym)return mh;Ym=1;var n=YA(),t=XA(),e="[object Symbol]";function r(v){return typeof v=="symbol"||t(v)&&n(v)==e}return mh=r,mh}var vh,Xm;function ZA(){if(Xm)return vh;Xm=1;var n=ch(),t=VA(),e=GA(),r=QA(),v=n?n.prototype:void 0,f=v?v.toString:void 0;function y(C){if(typeof C=="string")return C;if(e(C))return t(C,y)+"";if(r(C))return f?f.call(C):"";var h=C+"";return h=="0"&&1/C==-1/0?"-0":h}return vh=y,vh}var yh,Qm;function Kl(){if(Qm)return yh;Qm=1;var n=ZA();function t(e){return e==null?"":n(e)}return yh=t,yh}var wh,Zm;function JA(){if(Zm)return wh;Zm=1;var n=WA(),t=Dm(),e=jA(),r=Kl();function v(f){return function(y){y=r(y);var C=t(y)?e(y):void 0,h=C?C[0]:y.charAt(0),p=C?n(C,1).join(""):y.slice(1);return h[f]()+p}}return wh=v,wh}var bh,Jm;function ev(){if(Jm)return bh;Jm=1;var n=JA(),t=n("toUpperCase");return bh=t,bh}var e_=ev();const t_=dl(e_);var xh,tv;function n_(){if(tv)return xh;tv=1;var n=Kl(),t=ev();function e(r){return t(n(r).toLowerCase())}return xh=e,xh}var Ch,nv;function r_(){if(nv)return Ch;nv=1;function n(t,e,r,v){var f=-1,y=t==null?0:t.length;for(v&&y&&(r=t[++f]);++f<y;)r=e(r,t[f],f,t);return r}return Ch=n,Ch}var kh,rv;function i_(){if(rv)return kh;rv=1;function n(t){return function(e){return t==null?void 0:t[e]}}return kh=n,kh}var Ah,iv;function o_(){if(iv)return Ah;iv=1;var n=i_(),t={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},e=n(t);return Ah=e,Ah}var _h,ov;function s_(){if(ov)return _h;ov=1;var n=o_(),t=Kl(),e=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,r="\\u0300-\\u036f",v="\\ufe20-\\ufe2f",f="\\u20d0-\\u20ff",y=r+v+f,C="["+y+"]",h=RegExp(C,"g");function p(s){return s=t(s),s&&s.replace(e,n).replace(h,"")}return _h=p,_h}var Sh,sv;function a_(){if(sv)return Sh;sv=1;var n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function t(e){return e.match(n)||[]}return Sh=t,Sh}var $h,av;function l_(){if(av)return $h;av=1;var n=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function t(e){return n.test(e)}return $h=t,$h}var Mh,lv;function c_(){if(lv)return Mh;lv=1;var n="\\ud800-\\udfff",t="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",r="\\u20d0-\\u20ff",v=t+e+r,f="\\u2700-\\u27bf",y="a-z\\xdf-\\xf6\\xf8-\\xff",C="\\xac\\xb1\\xd7\\xf7",h="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",p="\\u2000-\\u206f",s=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",a="A-Z\\xc0-\\xd6\\xd8-\\xde",c="\\ufe0e\\ufe0f",l=C+h+p+s,o="['’]",u="["+l+"]",d="["+v+"]",w="\\d+",b="["+f+"]",R="["+y+"]",M="[^"+n+l+w+f+y+a+"]",k="\\ud83c[\\udffb-\\udfff]",x="(?:"+d+"|"+k+")",L="[^"+n+"]",O="(?:\\ud83c[\\udde6-\\uddff]){2}",I="[\\ud800-\\udbff][\\udc00-\\udfff]",E="["+a+"]",z="\\u200d",P="(?:"+R+"|"+M+")",N="(?:"+E+"|"+M+")",S="(?:"+o+"(?:d|ll|m|re|s|t|ve))?",A="(?:"+o+"(?:D|LL|M|RE|S|T|VE))?",D=x+"?",j="["+c+"]?",U="(?:"+z+"(?:"+[L,O,I].join("|")+")"+j+D+")*",q="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Z="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",te=j+D+U,he="(?:"+[b,O,I].join("|")+")"+te,ne=RegExp([E+"?"+R+"+"+S+"(?="+[u,E,"$"].join("|")+")",N+"+"+A+"(?="+[u,E+P,"$"].join("|")+")",E+"?"+P+"+"+S,E+"+"+A,Z,q,w,he].join("|"),"g");function le(ue){return ue.match(ne)||[]}return Mh=le,Mh}var Th,cv;function u_(){if(cv)return Th;cv=1;var n=a_(),t=l_(),e=Kl(),r=c_();function v(f,y,C){return f=e(f),y=C?void 0:y,y===void 0?t(f)?r(f):n(f):f.match(y)||[]}return Th=v,Th}var Eh,uv;function h_(){if(uv)return Eh;uv=1;var n=r_(),t=s_(),e=u_(),r="['’]",v=RegExp(r,"g");function f(y){return function(C){return n(e(t(C).replace(v,"")),y,"")}}return Eh=f,Eh}var Ih,hv;function d_(){if(hv)return Ih;hv=1;var n=n_(),t=h_(),e=t(function(r,v,f){return v=v.toLowerCase(),r+(f?n(v):v)});return Ih=e,Ih}var p_=d_();const g_=dl(p_),f_=Object.assign({"./ArrayWidget.vue":()=>nt(()=>tt.import("./ArrayWidget-BSG8KEtf-ffbd215e541fe6e3bfb5.js"),void 0),"./ArrayplotWidget.vue":()=>nt(()=>tt.import("./ArrayplotWidget-WVu76Kqn-4bb10120bf43c782965b.js"),void 0),"./BlockWidget.vue":()=>nt(()=>tt.import("./BlockWidget-B7ryWGCq-f548869ae714b3f8f7ed.js"),void 0),"./ButtonWidget.vue":()=>nt(()=>tt.import("./ButtonWidget-BKih3ix9-b43110620ea9af5a2341.js"),void 0),"./CanvasWidget.vue":()=>nt(()=>tt.import("./CanvasWidget-DT9xMSfb-8f17a46d7712307be51c.js"),void 0),"./CanvasdotWidget.vue":()=>nt(()=>tt.import("./CanvasdotWidget-7H5Hvcn--2250a6bf72542e9acddb.js"),void 0),"./CanvasimageWidget.vue":()=>nt(()=>tt.import("./CanvasimageWidget-BbWYx6Gj-341bef976df5f8c6858c.js"),void 0),"./CanvasimagevalueWidget.vue":()=>nt(()=>tt.import("./CanvasimagevalueWidget-Blvoe2X4-dd32fad72d2abce1534d.js"),void 0),"./CanvaslabelWidget.vue":()=>nt(()=>tt.import("./CanvaslabelWidget-BPx_Rm4o-93c6966462ba0607d5f9.js"),void 0),"./CanvaslabelvalueWidget.vue":()=>nt(()=>tt.import("./CanvaslabelvalueWidget-DzdWvL0W-721a7bed10024f8053e3.js"),void 0),"./CanvaslineWidget.vue":()=>nt(()=>tt.import("./CanvaslineWidget-CqskilGk-9df7d0af1d23df663b05.js"),void 0),"./CanvaslinevalueWidget.vue":()=>nt(()=>tt.import("./CanvaslinevalueWidget-C0JIKdvZ-33a85199574733f7ad88.js"),void 0),"./CheckbuttonWidget.vue":()=>nt(()=>tt.import("./CheckbuttonWidget-C9FbJx2v-a00d3bbc4287651bf0de.js"),void 0),"./ComboboxWidget.vue":()=>nt(()=>tt.import("./ComboboxWidget-BbNKT0s8-8e14626993651c64f769.js"),void 0),"./DateWidget.vue":()=>nt(()=>tt.import("./DateWidget-CBMsdRUE-325501a8da82f29642be.js"),void 0),"./DynamicWidget.vue":()=>nt(()=>tt.import("./DynamicWidget-CfMtj7H8-54342d69279082f08b8e.js"),void 0),"./FormatvalueWidget.vue":()=>nt(()=>tt.import("./FormatvalueWidget-BLWsqhIZ-901db1658a863e9bd5ab.js"),void 0),"./HorizontalWidget.vue":()=>nt(()=>tt.import("./HorizontalWidget-CsVhLwZO-2fea3a827040d35923a1.js"),void 0),"./HorizontalboxWidget.vue":()=>nt(()=>tt.import("./HorizontalboxWidget-xC6PADl3-79d65ebf195affff7fcc.js"),void 0),"./HorizontallineWidget.vue":()=>nt(()=>tt.import("./HorizontallineWidget-NZIxmRVN-36379b001ed815ea345c.js"),void 0),"./IframeWidget.vue":()=>nt(()=>tt.import("./IframeWidget-BgzjSfag-9bf85a1a605e0b1a33e0.js"),void 0),"./ImageviewerWidget.vue":()=>nt(()=>tt.import("./ImageviewerWidget-BnT5m-nw-d080c5165838b44d1d8b.js"),void 0),"./LabelWidget.vue":()=>nt(()=>tt.import("./LabelWidget-DSDYmz6X-13be3cd4dd21d820c104.js"),void 0),"./LabelledWidget.vue":()=>nt(()=>tt.import("./LabelledWidget-DMb-myxs-f3ec614c5d4c772d1767.js"),void 0),"./LabelprogressbarWidget.vue":()=>nt(()=>tt.import("./LabelprogressbarWidget-CkjDJBao-7cec8ce1a36bd931ad55.js"),void 0),"./LabelsparklineWidget.vue":()=>nt(()=>tt.import("./LabelsparklineWidget-DBYPFz3Y-708d7b397fb0163f8192.js"),void 0),"./LabelvalueWidget.vue":()=>nt(()=>tt.import("./LabelvalueWidget-DlTkJC4i-3cfa1d515587fa0b6253.js"),void 0),"./LabelvaluedescWidget.vue":()=>nt(()=>tt.import("./LabelvaluedescWidget-dRqnGZub-cfbb39c31dfe18c23250.js"),void 0),"./LabelvaluelimitsbarWidget.vue":()=>nt(()=>tt.import("./LabelvaluelimitsbarWidget-CS4NAPJ1-a88d6c71d105453f2be5.js"),void 0),"./LabelvaluelimitscolumnWidget.vue":()=>nt(()=>tt.import("./LabelvaluelimitscolumnWidget-D9x4Ppv8-d94f85d3e221b0a921a2.js"),void 0),"./LabelvaluerangebarWidget.vue":()=>nt(()=>tt.import("./LabelvaluerangebarWidget-Dhyng4-n-41df67f88fd850224e8d.js"),void 0),"./LedWidget.vue":()=>nt(()=>tt.import("./LedWidget-D8cq4pUv-31520f0a03ee2bbb0c17.js"),void 0),"./LimitsbarWidget.vue":()=>nt(()=>tt.import("./LimitsbarWidget-VGJnDuVM-f37131515d12c8f1b2cb.js"),void 0),"./LimitscolorWidget.vue":()=>nt(()=>tt.import("./LimitscolorWidget-CG6Pqi12-741775a4b02b6d87ada4.js"),void 0),"./LimitscolumnWidget.vue":()=>nt(()=>tt.import("./LimitscolumnWidget-DjovQdiT-2d74d6821f3a6612bce4.js"),void 0),"./LinegraphWidget.vue":()=>nt(()=>tt.import("./LinegraphWidget-DSWAhXgZ-83408139ed1c1edf6863.js"),void 0),"./MatrixbycolumnsWidget.vue":()=>nt(()=>tt.import("./MatrixbycolumnsWidget-C3cuhRxz-fad8cab22f54fe36f361.js"),void 0),"./ProgressbarWidget.vue":()=>nt(()=>tt.import("./ProgressbarWidget-oCgAEFBO-bf8b1e1423b7a63a8aa8.js"),void 0),"./RadiobuttonWidget.vue":()=>nt(()=>tt.import("./RadiobuttonWidget-D4Dak3lc-155d25fd92a72ae820d6.js"),void 0),"./RadiogroupWidget.vue":()=>nt(()=>tt.import("./RadiogroupWidget-Dbe9T4fp-c176e762d4bf6a5171f1.js"),void 0),"./RangebarWidget.vue":()=>nt(()=>tt.import("./RangebarWidget-CIVrgqrW-ceb17d0f22596e76fdd6.js"),void 0),"./RollupWidget.vue":()=>nt(()=>tt.import("./RollupWidget-CH1-XNLV-2a9f597d7cdf317e75c0.js"),void 0),"./ScrollwindowWidget.vue":()=>nt(()=>tt.import("./ScrollwindowWidget-BwFG6Wn8-8cf5724b75cdbb975bce.js"),void 0),"./SignalWidget.vue":()=>nt(()=>tt.import("./SignalWidget-Gz2gHrUm-cd3cd1b9939cbd421b81.js"),void 0),"./SpacerWidget.vue":()=>nt(()=>tt.import("./SpacerWidget-Bg7VDB0k-44a58ae4089b78e1b87e.js"),void 0),"./SparklineWidget.vue":()=>nt(()=>tt.import("./SparklineWidget-D_b5rfJv-70e08d6e7df157990af1.js"),void 0),"./TabbookWidget.vue":()=>nt(()=>tt.import("./TabbookWidget-C30f9B6z-23b4352dc672fa90a740.js"),void 0),"./TextboxWidget.vue":()=>nt(()=>tt.import("./TextboxWidget-CDqxsgys-25263da6e2fbfbeb81d1.js"),void 0),"./TextfieldWidget.vue":()=>nt(()=>tt.import("./TextfieldWidget-CAyjKJs6-daba192b8d297bcd6ea5.js"),void 0),"./TimeWidget.vue":()=>nt(()=>tt.import("./TimeWidget-BQsP0G2X-7d0af478f1341db89bf4.js"),void 0),"./TitleWidget.vue":()=>nt(()=>tt.import("./TitleWidget-DXVba53S-d12071a14d8ef54a27c2.js"),void 0),"./ValueWidget.vue":()=>nt(()=>tt.import("./ValueWidget-B-TWLPdM-6399ecb6c9a94065ea7d.js"),void 0),"./ValuelimitsbarWidget.vue":()=>nt(()=>tt.import("./ValuelimitsbarWidget-jsDXdPdC-b513f1cda82e10c18843.js"),void 0),"./ValuelimitscolumnWidget.vue":()=>nt(()=>tt.import("./ValuelimitscolumnWidget-I-uwnXM2-3102c7943199789b3c24.js"),void 0),"./ValuerangebarWidget.vue":()=>nt(()=>tt.import("./ValuerangebarWidget-OyhSTScu-449549dd7c88dd2ed322.js"),void 0),"./VerticalWidget.vue":()=>nt(()=>tt.import("./VerticalWidget-CkFbX1Gq-1edfad789edaf379b3da.js"),void 0),"./VerticalboxWidget.vue":()=>nt(()=>tt.import("./VerticalboxWidget-FEQgPM9r-479ed30ae5b95444a53f.js"),void 0)}),m_=Object.entries(f_).reduce((n,[t,e])=>{t=t.split("/").pop();const r=t_(g_(t.replace(/\.\w+$/,"")));return{...n,[r]:Jd(e)}},{}),Z2=kr("H",{components:m_});function dv(n,t){return function(){return n.apply(t,arguments)}}const{toString:v_}=Object.prototype,{getPrototypeOf:Rh}=Object,{iterator:ql,toStringTag:pv}=Symbol,Yl=(n=>t=>{const e=v_.call(t);return n[e]||(n[e]=e.slice(8,-1).toLowerCase())})(Object.create(null)),Ti=n=>(n=n.toLowerCase(),t=>Yl(t)===n),Xl=n=>t=>typeof t===n,{isArray:Zs}=Array,Fa=Xl("undefined");function Pa(n){return n!==null&&!Fa(n)&&n.constructor!==null&&!Fa(n.constructor)&&Dr(n.constructor.isBuffer)&&n.constructor.isBuffer(n)}const gv=Ti("ArrayBuffer");function y_(n){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(n):t=n&&n.buffer&&gv(n.buffer),t}const w_=Xl("string"),Dr=Xl("function"),fv=Xl("number"),Wa=n=>n!==null&&typeof n=="object",b_=n=>n===!0||n===!1,Ql=n=>{if(Yl(n)!=="object")return!1;const t=Rh(n);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(pv in n)&&!(ql in n)},x_=n=>{if(!Wa(n)||Pa(n))return!1;try{return Object.keys(n).length===0&&Object.getPrototypeOf(n)===Object.prototype}catch{return!1}},C_=Ti("Date"),k_=Ti("File"),A_=Ti("Blob"),__=Ti("FileList"),S_=n=>Wa(n)&&Dr(n.pipe),$_=n=>{let t;return n&&(typeof FormData=="function"&&n instanceof FormData||Dr(n.append)&&((t=Yl(n))==="formdata"||t==="object"&&Dr(n.toString)&&n.toString()==="[object FormData]"))},M_=Ti("URLSearchParams"),[T_,E_,I_,R_]=["ReadableStream","Request","Response","Headers"].map(Ti),L_=n=>n.trim?n.trim():n.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ba(n,t,{allOwnKeys:e=!1}={}){if(n===null||typeof n>"u")return;let r,v;if(typeof n!="object"&&(n=[n]),Zs(n))for(r=0,v=n.length;r<v;r++)t.call(null,n[r],r,n);else{if(Pa(n))return;const f=e?Object.getOwnPropertyNames(n):Object.keys(n),y=f.length;let C;for(r=0;r<y;r++)C=f[r],t.call(null,n[C],C,n)}}function mv(n,t){if(Pa(n))return null;t=t.toLowerCase();const e=Object.keys(n);let r=e.length,v;for(;r-- >0;)if(v=e[r],t===v.toLowerCase())return v;return null}const ps=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,vv=n=>!Fa(n)&&n!==ps;function Lh(){const{caseless:n}=vv(this)&&this||{},t={},e=(r,v)=>{const f=n&&mv(t,v)||v;Ql(t[f])&&Ql(r)?t[f]=Lh(t[f],r):Ql(r)?t[f]=Lh({},r):Zs(r)?t[f]=r.slice():t[f]=r};for(let r=0,v=arguments.length;r<v;r++)arguments[r]&&Ba(arguments[r],e);return t}const O_=(n,t,e,{allOwnKeys:r}={})=>(Ba(t,(v,f)=>{e&&Dr(v)?n[f]=dv(v,e):n[f]=v},{allOwnKeys:r}),n),N_=n=>(n.charCodeAt(0)===65279&&(n=n.slice(1)),n),D_=(n,t,e,r)=>{n.prototype=Object.create(t.prototype,r),n.prototype.constructor=n,Object.defineProperty(n,"super",{value:t.prototype}),e&&Object.assign(n.prototype,e)},F_=(n,t,e,r)=>{let v,f,y;const C={};if(t=t||{},n==null)return t;do{for(v=Object.getOwnPropertyNames(n),f=v.length;f-- >0;)y=v[f],(!r||r(y,n,t))&&!C[y]&&(t[y]=n[y],C[y]=!0);n=e!==!1&&Rh(n)}while(n&&(!e||e(n,t))&&n!==Object.prototype);return t},P_=(n,t,e)=>{n=String(n),(e===void 0||e>n.length)&&(e=n.length),e-=t.length;const r=n.indexOf(t,e);return r!==-1&&r===e},W_=n=>{if(!n)return null;if(Zs(n))return n;let t=n.length;if(!fv(t))return null;const e=new Array(t);for(;t-- >0;)e[t]=n[t];return e},B_=(n=>t=>n&&t instanceof n)(typeof Uint8Array<"u"&&Rh(Uint8Array)),z_=(n,t)=>{const e=(n&&n[ql]).call(n);let r;for(;(r=e.next())&&!r.done;){const v=r.value;t.call(n,v[0],v[1])}},j_=(n,t)=>{let e;const r=[];for(;(e=n.exec(t))!==null;)r.push(e);return r},H_=Ti("HTMLFormElement"),U_=n=>n.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(t,e,r){return e.toUpperCase()+r}),yv=(({hasOwnProperty:n})=>(t,e)=>n.call(t,e))(Object.prototype),V_=Ti("RegExp"),wv=(n,t)=>{const e=Object.getOwnPropertyDescriptors(n),r={};Ba(e,(v,f)=>{let y;(y=t(v,f,n))!==!1&&(r[f]=y||v)}),Object.defineProperties(n,r)},G_=n=>{wv(n,(t,e)=>{if(Dr(n)&&["arguments","caller","callee"].indexOf(e)!==-1)return!1;const r=n[e];if(Dr(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+e+"'")})}})},K_=(n,t)=>{const e={},r=v=>{v.forEach(f=>{e[f]=!0})};return Zs(n)?r(n):r(String(n).split(t)),e},q_=()=>{},Y_=(n,t)=>n!=null&&Number.isFinite(n=+n)?n:t;function X_(n){return!!(n&&Dr(n.append)&&n[pv]==="FormData"&&n[ql])}const Q_=n=>{const t=new Array(10),e=(r,v)=>{if(Wa(r)){if(t.indexOf(r)>=0)return;if(Pa(r))return r;if(!("toJSON"in r)){t[v]=r;const f=Zs(r)?[]:{};return Ba(r,(y,C)=>{const h=e(y,v+1);!Fa(h)&&(f[C]=h)}),t[v]=void 0,f}}return r};return e(n,0)},Z_=Ti("AsyncFunction"),J_=n=>n&&(Wa(n)||Dr(n))&&Dr(n.then)&&Dr(n.catch),bv=((n,t)=>n?setImmediate:t?((e,r)=>(ps.addEventListener("message",({source:v,data:f})=>{v===ps&&f===e&&r.length&&r.shift()()},!1),v=>{r.push(v),ps.postMessage(e,"*")}))(`axios@${Math.random()}`,[]):e=>setTimeout(e))(typeof setImmediate=="function",Dr(ps.postMessage)),eS=typeof queueMicrotask<"u"?queueMicrotask.bind(ps):typeof process<"u"&&process.nextTick||bv,tS=n=>n!=null&&Dr(n[ql]),Ae={isArray:Zs,isArrayBuffer:gv,isBuffer:Pa,isFormData:$_,isArrayBufferView:y_,isString:w_,isNumber:fv,isBoolean:b_,isObject:Wa,isPlainObject:Ql,isEmptyObject:x_,isReadableStream:T_,isRequest:E_,isResponse:I_,isHeaders:R_,isUndefined:Fa,isDate:C_,isFile:k_,isBlob:A_,isRegExp:V_,isFunction:Dr,isStream:S_,isURLSearchParams:M_,isTypedArray:B_,isFileList:__,forEach:Ba,merge:Lh,extend:O_,trim:L_,stripBOM:N_,inherits:D_,toFlatObject:F_,kindOf:Yl,kindOfTest:Ti,endsWith:P_,toArray:W_,forEachEntry:z_,matchAll:j_,isHTMLForm:H_,hasOwnProperty:yv,hasOwnProp:yv,reduceDescriptors:wv,freezeMethods:G_,toObjectSet:K_,toCamelCase:U_,noop:q_,toFiniteNumber:Y_,findKey:mv,global:ps,isContextDefined:vv,isSpecCompliantForm:X_,toJSONObject:Q_,isAsyncFn:Z_,isThenable:J_,setImmediate:bv,asap:eS,isIterable:tS};function wt(n,t,e,r,v){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=n,this.name="AxiosError",t&&(this.code=t),e&&(this.config=e),r&&(this.request=r),v&&(this.response=v,this.status=v.status?v.status:null)}Ae.inherits(wt,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Ae.toJSONObject(this.config),code:this.code,status:this.status}}});const xv=wt.prototype,Cv={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(n=>{Cv[n]={value:n}}),Object.defineProperties(wt,Cv),Object.defineProperty(xv,"isAxiosError",{value:!0}),wt.from=(n,t,e,r,v,f)=>{const y=Object.create(xv);return Ae.toFlatObject(n,y,function(C){return C!==Error.prototype},C=>C!=="isAxiosError"),wt.call(y,n.message,t,e,r,v),y.cause=n,y.name=n.name,f&&Object.assign(y,f),y};const nS=null;function Oh(n){return Ae.isPlainObject(n)||Ae.isArray(n)}function kv(n){return Ae.endsWith(n,"[]")?n.slice(0,-2):n}function Av(n,t,e){return n?n.concat(t).map(function(r,v){return r=kv(r),!e&&v?"["+r+"]":r}).join(e?".":""):t}function rS(n){return Ae.isArray(n)&&!n.some(Oh)}const iS=Ae.toFlatObject(Ae,{},null,function(n){return/^is[A-Z]/.test(n)});function Zl(n,t,e){if(!Ae.isObject(n))throw new TypeError("target must be an object");t=t||new FormData,e=Ae.toFlatObject(e,{metaTokens:!0,dots:!1,indexes:!1},!1,function(l,o){return!Ae.isUndefined(o[l])});const r=e.metaTokens,v=e.visitor||p,f=e.dots,y=e.indexes,C=(e.Blob||typeof Blob<"u"&&Blob)&&Ae.isSpecCompliantForm(t);if(!Ae.isFunction(v))throw new TypeError("visitor must be a function");function h(l){if(l===null)return"";if(Ae.isDate(l))return l.toISOString();if(Ae.isBoolean(l))return l.toString();if(!C&&Ae.isBlob(l))throw new wt("Blob is not supported. Use a Buffer instead.");return Ae.isArrayBuffer(l)||Ae.isTypedArray(l)?C&&typeof Blob=="function"?new Blob([l]):Buffer.from(l):l}function p(l,o,u){let d=l;if(l&&!u&&typeof l=="object"){if(Ae.endsWith(o,"{}"))o=r?o:o.slice(0,-2),l=JSON.stringify(l);else if(Ae.isArray(l)&&rS(l)||(Ae.isFileList(l)||Ae.endsWith(o,"[]"))&&(d=Ae.toArray(l)))return o=kv(o),d.forEach(function(w,b){!(Ae.isUndefined(w)||w===null)&&t.append(y===!0?Av([o],b,f):y===null?o:o+"[]",h(w))}),!1}return Oh(l)?!0:(t.append(Av(u,o,f),h(l)),!1)}const s=[],a=Object.assign(iS,{defaultVisitor:p,convertValue:h,isVisitable:Oh});function c(l,o){if(!Ae.isUndefined(l)){if(s.indexOf(l)!==-1)throw Error("Circular reference detected in "+o.join("."));s.push(l),Ae.forEach(l,function(u,d){(!(Ae.isUndefined(u)||u===null)&&v.call(t,u,Ae.isString(d)?d.trim():d,o,a))===!0&&c(u,o?o.concat(d):[d])}),s.pop()}}if(!Ae.isObject(n))throw new TypeError("data must be an object");return c(n),t}function _v(n){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(n).replace(/[!'()~]|%20|%00/g,function(e){return t[e]})}function Nh(n,t){this._pairs=[],n&&Zl(n,this,t)}const Sv=Nh.prototype;Sv.append=function(n,t){this._pairs.push([n,t])},Sv.toString=function(n){const t=n?function(e){return n.call(this,e,_v)}:_v;return this._pairs.map(function(e){return t(e[0])+"="+t(e[1])},"").join("&")};function oS(n){return encodeURIComponent(n).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function $v(n,t,e){if(!t)return n;const r=e&&e.encode||oS;Ae.isFunction(e)&&(e={serialize:e});const v=e&&e.serialize;let f;if(v?f=v(t,e):f=Ae.isURLSearchParams(t)?t.toString():new Nh(t,e).toString(r),f){const y=n.indexOf("#");y!==-1&&(n=n.slice(0,y)),n+=(n.indexOf("?")===-1?"?":"&")+f}return n}let Mv=class{constructor(){this.handlers=[]}use(t,e,r){return this.handlers.push({fulfilled:t,rejected:e,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Ae.forEach(this.handlers,function(e){e!==null&&t(e)})}};const Tv={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},sS=typeof URLSearchParams<"u"?URLSearchParams:Nh,aS=typeof FormData<"u"?FormData:null,lS=typeof Blob<"u"?Blob:null,cS={isBrowser:!0,classes:{URLSearchParams:sS,FormData:aS,Blob:lS},protocols:["http","https","file","blob","url","data"]},Dh=typeof window<"u"&&typeof document<"u",Fh=typeof navigator=="object"&&navigator||void 0,uS=Dh&&(!Fh||["ReactNative","NativeScript","NS"].indexOf(Fh.product)<0),hS=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",dS=Dh&&window.location.href||"http://localhost",pS=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Dh,hasStandardBrowserEnv:uS,hasStandardBrowserWebWorkerEnv:hS,navigator:Fh,origin:dS},Symbol.toStringTag,{value:"Module"})),gr={...pS,...cS};function gS(n,t){return Zl(n,new gr.classes.URLSearchParams,{visitor:function(e,r,v,f){return gr.isNode&&Ae.isBuffer(e)?(this.append(r,e.toString("base64")),!1):f.defaultVisitor.apply(this,arguments)},...t})}function fS(n){return Ae.matchAll(/\w+|\[(\w*)]/g,n).map(t=>t[0]==="[]"?"":t[1]||t[0])}function mS(n){const t={},e=Object.keys(n);let r;const v=e.length;let f;for(r=0;r<v;r++)f=e[r],t[f]=n[f];return t}function Ev(n){function t(e,r,v,f){let y=e[f++];if(y==="__proto__")return!0;const C=Number.isFinite(+y),h=f>=e.length;return y=!y&&Ae.isArray(v)?v.length:y,h?(Ae.hasOwnProp(v,y)?v[y]=[v[y],r]:v[y]=r,!C):((!v[y]||!Ae.isObject(v[y]))&&(v[y]=[]),t(e,r,v[y],f)&&Ae.isArray(v[y])&&(v[y]=mS(v[y])),!C)}if(Ae.isFormData(n)&&Ae.isFunction(n.entries)){const e={};return Ae.forEachEntry(n,(r,v)=>{t(fS(r),v,e,0)}),e}return null}function vS(n,t,e){if(Ae.isString(n))try{return(t||JSON.parse)(n),Ae.trim(n)}catch(r){if(r.name!=="SyntaxError")throw r}return(e||JSON.stringify)(n)}const za={transitional:Tv,adapter:["xhr","http","fetch"],transformRequest:[function(n,t){const e=t.getContentType()||"",r=e.indexOf("application/json")>-1,v=Ae.isObject(n);if(v&&Ae.isHTMLForm(n)&&(n=new FormData(n)),Ae.isFormData(n))return r?JSON.stringify(Ev(n)):n;if(Ae.isArrayBuffer(n)||Ae.isBuffer(n)||Ae.isStream(n)||Ae.isFile(n)||Ae.isBlob(n)||Ae.isReadableStream(n))return n;if(Ae.isArrayBufferView(n))return n.buffer;if(Ae.isURLSearchParams(n))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),n.toString();let f;if(v){if(e.indexOf("application/x-www-form-urlencoded")>-1)return gS(n,this.formSerializer).toString();if((f=Ae.isFileList(n))||e.indexOf("multipart/form-data")>-1){const y=this.env&&this.env.FormData;return Zl(f?{"files[]":n}:n,y&&new y,this.formSerializer)}}return v||r?(t.setContentType("application/json",!1),vS(n)):n}],transformResponse:[function(n){const t=this.transitional||za.transitional,e=t&&t.forcedJSONParsing,r=this.responseType==="json";if(Ae.isResponse(n)||Ae.isReadableStream(n))return n;if(n&&Ae.isString(n)&&(e&&!this.responseType||r)){const v=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(n)}catch(f){if(v)throw f.name==="SyntaxError"?wt.from(f,wt.ERR_BAD_RESPONSE,this,null,this.response):f}}return n}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:gr.classes.FormData,Blob:gr.classes.Blob},validateStatus:function(n){return n>=200&&n<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Ae.forEach(["delete","get","head","post","put","patch"],n=>{za.headers[n]={}});const yS=Ae.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),wS=n=>{const t={};let e,r,v;return n&&n.split(`
1491
+ `).forEach(function(f){v=f.indexOf(":"),e=f.substring(0,v).trim().toLowerCase(),r=f.substring(v+1).trim(),!(!e||t[e]&&yS[e])&&(e==="set-cookie"?t[e]?t[e].push(r):t[e]=[r]:t[e]=t[e]?t[e]+", "+r:r)}),t},Iv=Symbol("internals");function ja(n){return n&&String(n).trim().toLowerCase()}function Jl(n){return n===!1||n==null?n:Ae.isArray(n)?n.map(Jl):String(n)}function bS(n){const t=Object.create(null),e=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=e.exec(n);)t[r[1]]=r[2];return t}const xS=n=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(n.trim());function Ph(n,t,e,r,v){if(Ae.isFunction(r))return r.call(this,t,e);if(v&&(t=e),!!Ae.isString(t)){if(Ae.isString(r))return t.indexOf(r)!==-1;if(Ae.isRegExp(r))return r.test(t)}}function CS(n){return n.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,e,r)=>e.toUpperCase()+r)}function kS(n,t){const e=Ae.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(n,r+e,{value:function(v,f,y){return this[r].call(this,t,v,f,y)},configurable:!0})})}let Fr=class{constructor(t){t&&this.set(t)}set(t,e,r){const v=this;function f(C,h,p){const s=ja(h);if(!s)throw new Error("header name must be a non-empty string");const a=Ae.findKey(v,s);(!a||v[a]===void 0||p===!0||p===void 0&&v[a]!==!1)&&(v[a||h]=Jl(C))}const y=(C,h)=>Ae.forEach(C,(p,s)=>f(p,s,h));if(Ae.isPlainObject(t)||t instanceof this.constructor)y(t,e);else if(Ae.isString(t)&&(t=t.trim())&&!xS(t))y(wS(t),e);else if(Ae.isObject(t)&&Ae.isIterable(t)){let C={},h,p;for(const s of t){if(!Ae.isArray(s))throw TypeError("Object iterator must return a key-value pair");C[p=s[0]]=(h=C[p])?Ae.isArray(h)?[...h,s[1]]:[h,s[1]]:s[1]}y(C,e)}else t!=null&&f(e,t,r);return this}get(t,e){if(t=ja(t),t){const r=Ae.findKey(this,t);if(r){const v=this[r];if(!e)return v;if(e===!0)return bS(v);if(Ae.isFunction(e))return e.call(this,v,r);if(Ae.isRegExp(e))return e.exec(v);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=ja(t),t){const r=Ae.findKey(this,t);return!!(r&&this[r]!==void 0&&(!e||Ph(this,this[r],r,e)))}return!1}delete(t,e){const r=this;let v=!1;function f(y){if(y=ja(y),y){const C=Ae.findKey(r,y);C&&(!e||Ph(r,r[C],C,e))&&(delete r[C],v=!0)}}return Ae.isArray(t)?t.forEach(f):f(t),v}clear(t){const e=Object.keys(this);let r=e.length,v=!1;for(;r--;){const f=e[r];(!t||Ph(this,this[f],f,t,!0))&&(delete this[f],v=!0)}return v}normalize(t){const e=this,r={};return Ae.forEach(this,(v,f)=>{const y=Ae.findKey(r,f);if(y){e[y]=Jl(v),delete e[f];return}const C=t?CS(f):String(f).trim();C!==f&&delete e[f],e[C]=Jl(v),r[C]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return Ae.forEach(this,(r,v)=>{r!=null&&r!==!1&&(e[v]=t&&Ae.isArray(r)?r.join(", "):r)}),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,e])=>t+": "+e).join(`
1492
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const r=new this(t);return e.forEach(v=>r.set(v)),r}static accessor(t){const e=(this[Iv]=this[Iv]={accessors:{}}).accessors,r=this.prototype;function v(f){const y=ja(f);e[y]||(kS(r,f),e[y]=!0)}return Ae.isArray(t)?t.forEach(v):v(t),this}};Fr.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Ae.reduceDescriptors(Fr.prototype,({value:n},t)=>{let e=t[0].toUpperCase()+t.slice(1);return{get:()=>n,set(r){this[e]=r}}}),Ae.freezeMethods(Fr);function Wh(n,t){const e=this||za,r=t||e,v=Fr.from(r.headers);let f=r.data;return Ae.forEach(n,function(y){f=y.call(e,f,v.normalize(),t?t.status:void 0)}),v.normalize(),f}function Rv(n){return!!(n&&n.__CANCEL__)}function Js(n,t,e){wt.call(this,n??"canceled",wt.ERR_CANCELED,t,e),this.name="CanceledError"}Ae.inherits(Js,wt,{__CANCEL__:!0});function Lv(n,t,e){const r=e.config.validateStatus;!e.status||!r||r(e.status)?n(e):t(new wt("Request failed with status code "+e.status,[wt.ERR_BAD_REQUEST,wt.ERR_BAD_RESPONSE][Math.floor(e.status/100)-4],e.config,e.request,e))}function AS(n){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(n);return t&&t[1]||""}function _S(n,t){n=n||10;const e=new Array(n),r=new Array(n);let v=0,f=0,y;return t=t!==void 0?t:1e3,function(C){const h=Date.now(),p=r[f];y||(y=h),e[v]=C,r[v]=h;let s=f,a=0;for(;s!==v;)a+=e[s++],s=s%n;if(v=(v+1)%n,v===f&&(f=(f+1)%n),h-y<t)return;const c=p&&h-p;return c?Math.round(a*1e3/c):void 0}}function SS(n,t){let e=0,r=1e3/t,v,f;const y=(C,h=Date.now())=>{e=h,v=null,f&&(clearTimeout(f),f=null),n(...C)};return[(...C)=>{const h=Date.now(),p=h-e;p>=r?y(C,h):(v=C,f||(f=setTimeout(()=>{f=null,y(v)},r-p)))},()=>v&&y(v)]}const ec=(n,t,e=3)=>{let r=0;const v=_S(50,250);return SS(f=>{const y=f.loaded,C=f.lengthComputable?f.total:void 0,h=y-r,p=v(h),s=y<=C;r=y;const a={loaded:y,total:C,progress:C?y/C:void 0,bytes:h,rate:p||void 0,estimated:p&&C&&s?(C-y)/p:void 0,event:f,lengthComputable:C!=null,[t?"download":"upload"]:!0};n(a)},e)},Ov=(n,t)=>{const e=n!=null;return[r=>t[0]({lengthComputable:e,total:n,loaded:r}),t[1]]},Nv=n=>(...t)=>Ae.asap(()=>n(...t)),$S=gr.hasStandardBrowserEnv?((n,t)=>e=>(e=new URL(e,gr.origin),n.protocol===e.protocol&&n.host===e.host&&(t||n.port===e.port)))(new URL(gr.origin),gr.navigator&&/(msie|trident)/i.test(gr.navigator.userAgent)):()=>!0,MS=gr.hasStandardBrowserEnv?{write(n,t,e,r,v,f){const y=[n+"="+encodeURIComponent(t)];Ae.isNumber(e)&&y.push("expires="+new Date(e).toGMTString()),Ae.isString(r)&&y.push("path="+r),Ae.isString(v)&&y.push("domain="+v),f===!0&&y.push("secure"),document.cookie=y.join("; ")},read(n){const t=document.cookie.match(new RegExp("(^|;\\s*)("+n+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(n){this.write(n,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function TS(n){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(n)}function ES(n,t){return t?n.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):n}function Dv(n,t,e){let r=!TS(t);return n&&(r||e==!1)?ES(n,t):t}const Fv=n=>n instanceof Fr?{...n}:n;function gs(n,t){t=t||{};const e={};function r(p,s,a,c){return Ae.isPlainObject(p)&&Ae.isPlainObject(s)?Ae.merge.call({caseless:c},p,s):Ae.isPlainObject(s)?Ae.merge({},s):Ae.isArray(s)?s.slice():s}function v(p,s,a,c){if(Ae.isUndefined(s)){if(!Ae.isUndefined(p))return r(void 0,p,a,c)}else return r(p,s,a,c)}function f(p,s){if(!Ae.isUndefined(s))return r(void 0,s)}function y(p,s){if(Ae.isUndefined(s)){if(!Ae.isUndefined(p))return r(void 0,p)}else return r(void 0,s)}function C(p,s,a){if(a in t)return r(p,s);if(a in n)return r(void 0,p)}const h={url:f,method:f,data:f,baseURL:y,transformRequest:y,transformResponse:y,paramsSerializer:y,timeout:y,timeoutMessage:y,withCredentials:y,withXSRFToken:y,adapter:y,responseType:y,xsrfCookieName:y,xsrfHeaderName:y,onUploadProgress:y,onDownloadProgress:y,decompress:y,maxContentLength:y,maxBodyLength:y,beforeRedirect:y,transport:y,httpAgent:y,httpsAgent:y,cancelToken:y,socketPath:y,responseEncoding:y,validateStatus:C,headers:(p,s,a)=>v(Fv(p),Fv(s),a,!0)};return Ae.forEach(Object.keys({...n,...t}),function(p){const s=h[p]||v,a=s(n[p],t[p],p);Ae.isUndefined(a)&&s!==C||(e[p]=a)}),e}const Pv=n=>{const t=gs({},n);let{data:e,withXSRFToken:r,xsrfHeaderName:v,xsrfCookieName:f,headers:y,auth:C}=t;t.headers=y=Fr.from(y),t.url=$v(Dv(t.baseURL,t.url,t.allowAbsoluteUrls),n.params,n.paramsSerializer),C&&y.set("Authorization","Basic "+btoa((C.username||"")+":"+(C.password?unescape(encodeURIComponent(C.password)):"")));let h;if(Ae.isFormData(e)){if(gr.hasStandardBrowserEnv||gr.hasStandardBrowserWebWorkerEnv)y.setContentType(void 0);else if((h=y.getContentType())!==!1){const[p,...s]=h?h.split(";").map(a=>a.trim()).filter(Boolean):[];y.setContentType([p||"multipart/form-data",...s].join("; "))}}if(gr.hasStandardBrowserEnv&&(r&&Ae.isFunction(r)&&(r=r(t)),r||r!==!1&&$S(t.url))){const p=v&&f&&MS.read(f);p&&y.set(v,p)}return t},IS=typeof XMLHttpRequest<"u",RS=IS&&function(n){return new Promise(function(t,e){const r=Pv(n);let v=r.data;const f=Fr.from(r.headers).normalize();let{responseType:y,onUploadProgress:C,onDownloadProgress:h}=r,p,s,a,c,l;function o(){c&&c(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(p),r.signal&&r.signal.removeEventListener("abort",p)}let u=new XMLHttpRequest;u.open(r.method.toUpperCase(),r.url,!0),u.timeout=r.timeout;function d(){if(!u)return;const b=Fr.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders()),R={data:!y||y==="text"||y==="json"?u.responseText:u.response,status:u.status,statusText:u.statusText,headers:b,config:n,request:u};Lv(function(M){t(M),o()},function(M){e(M),o()},R),u=null}"onloadend"in u?u.onloadend=d:u.onreadystatechange=function(){!u||u.readyState!==4||u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)||setTimeout(d)},u.onabort=function(){u&&(e(new wt("Request aborted",wt.ECONNABORTED,n,u)),u=null)},u.onerror=function(){e(new wt("Network Error",wt.ERR_NETWORK,n,u)),u=null},u.ontimeout=function(){let b=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const R=r.transitional||Tv;r.timeoutErrorMessage&&(b=r.timeoutErrorMessage),e(new wt(b,R.clarifyTimeoutError?wt.ETIMEDOUT:wt.ECONNABORTED,n,u)),u=null},v===void 0&&f.setContentType(null),"setRequestHeader"in u&&Ae.forEach(f.toJSON(),function(b,R){u.setRequestHeader(R,b)}),Ae.isUndefined(r.withCredentials)||(u.withCredentials=!!r.withCredentials),y&&y!=="json"&&(u.responseType=r.responseType),h&&([a,l]=ec(h,!0),u.addEventListener("progress",a)),C&&u.upload&&([s,c]=ec(C),u.upload.addEventListener("progress",s),u.upload.addEventListener("loadend",c)),(r.cancelToken||r.signal)&&(p=b=>{u&&(e(!b||b.type?new Js(null,n,u):b),u.abort(),u=null)},r.cancelToken&&r.cancelToken.subscribe(p),r.signal&&(r.signal.aborted?p():r.signal.addEventListener("abort",p)));const w=AS(r.url);if(w&&gr.protocols.indexOf(w)===-1){e(new wt("Unsupported protocol "+w+":",wt.ERR_BAD_REQUEST,n));return}u.send(v||null)})},LS=(n,t)=>{const{length:e}=n=n?n.filter(Boolean):[];if(t||e){let r=new AbortController,v;const f=function(p){if(!v){v=!0,C();const s=p instanceof Error?p:this.reason;r.abort(s instanceof wt?s:new Js(s instanceof Error?s.message:s))}};let y=t&&setTimeout(()=>{y=null,f(new wt(`timeout ${t} of ms exceeded`,wt.ETIMEDOUT))},t);const C=()=>{n&&(y&&clearTimeout(y),y=null,n.forEach(p=>{p.unsubscribe?p.unsubscribe(f):p.removeEventListener("abort",f)}),n=null)};n.forEach(p=>p.addEventListener("abort",f));const{signal:h}=r;return h.unsubscribe=()=>Ae.asap(C),h}},OS=function*(n,t){let e=n.byteLength;if(e<t){yield n;return}let r=0,v;for(;r<e;)v=r+t,yield n.slice(r,v),r=v},NS=async function*(n,t){for await(const e of DS(n))yield*OS(e,t)},DS=async function*(n){if(n[Symbol.asyncIterator]){yield*n;return}const t=n.getReader();try{for(;;){const{done:e,value:r}=await t.read();if(e)break;yield r}}finally{await t.cancel()}},Wv=(n,t,e,r)=>{const v=NS(n,t);let f=0,y,C=h=>{y||(y=!0,r&&r(h))};return new ReadableStream({async pull(h){try{const{done:p,value:s}=await v.next();if(p){C(),h.close();return}let a=s.byteLength;if(e){let c=f+=a;e(c)}h.enqueue(new Uint8Array(s))}catch(p){throw C(p),p}},cancel(h){return C(h),v.return()}},{highWaterMark:2})},tc=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Bv=tc&&typeof ReadableStream=="function",FS=tc&&(typeof TextEncoder=="function"?(n=>t=>n.encode(t))(new TextEncoder):async n=>new Uint8Array(await new Response(n).arrayBuffer())),zv=(n,...t)=>{try{return!!n(...t)}catch{return!1}},PS=Bv&&zv(()=>{let n=!1;const t=new Request(gr.origin,{body:new ReadableStream,method:"POST",get duplex(){return n=!0,"half"}}).headers.has("Content-Type");return n&&!t}),jv=64*1024,Bh=Bv&&zv(()=>Ae.isReadableStream(new Response("").body)),nc={stream:Bh&&(n=>n.body)};tc&&(n=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!nc[t]&&(nc[t]=Ae.isFunction(n[t])?e=>e[t]():(e,r)=>{throw new wt(`Response type '${t}' is not supported`,wt.ERR_NOT_SUPPORT,r)})})})(new Response);const WS=async n=>{if(n==null)return 0;if(Ae.isBlob(n))return n.size;if(Ae.isSpecCompliantForm(n))return(await new Request(gr.origin,{method:"POST",body:n}).arrayBuffer()).byteLength;if(Ae.isArrayBufferView(n)||Ae.isArrayBuffer(n))return n.byteLength;if(Ae.isURLSearchParams(n)&&(n=n+""),Ae.isString(n))return(await FS(n)).byteLength},BS=async(n,t)=>Ae.toFiniteNumber(n.getContentLength())??WS(t),zS=tc&&(async n=>{let{url:t,method:e,data:r,signal:v,cancelToken:f,timeout:y,onDownloadProgress:C,onUploadProgress:h,responseType:p,headers:s,withCredentials:a="same-origin",fetchOptions:c}=Pv(n);p=p?(p+"").toLowerCase():"text";let l=LS([v,f&&f.toAbortSignal()],y),o;const u=l&&l.unsubscribe&&(()=>{l.unsubscribe()});let d;try{if(h&&PS&&e!=="get"&&e!=="head"&&(d=await BS(s,r))!==0){let k=new Request(t,{method:"POST",body:r,duplex:"half"}),x;if(Ae.isFormData(r)&&(x=k.headers.get("content-type"))&&s.setContentType(x),k.body){const[L,O]=Ov(d,ec(Nv(h)));r=Wv(k.body,jv,L,O)}}Ae.isString(a)||(a=a?"include":"omit");const w="credentials"in Request.prototype;o=new Request(t,{...c,signal:l,method:e.toUpperCase(),headers:s.normalize().toJSON(),body:r,duplex:"half",credentials:w?a:void 0});let b=await fetch(o,c);const R=Bh&&(p==="stream"||p==="response");if(Bh&&(C||R&&u)){const k={};["status","statusText","headers"].forEach(I=>{k[I]=b[I]});const x=Ae.toFiniteNumber(b.headers.get("content-length")),[L,O]=C&&Ov(x,ec(Nv(C),!0))||[];b=new Response(Wv(b.body,jv,L,()=>{O&&O(),u&&u()}),k)}p=p||"text";let M=await nc[Ae.findKey(nc,p)||"text"](b,n);return!R&&u&&u(),await new Promise((k,x)=>{Lv(k,x,{data:M,headers:Fr.from(b.headers),status:b.status,statusText:b.statusText,config:n,request:o})})}catch(w){throw u&&u(),w&&w.name==="TypeError"&&/Load failed|fetch/i.test(w.message)?Object.assign(new wt("Network Error",wt.ERR_NETWORK,n,o),{cause:w.cause||w}):wt.from(w,w&&w.code,n,o)}}),zh={http:nS,xhr:RS,fetch:zS};Ae.forEach(zh,(n,t)=>{if(n){try{Object.defineProperty(n,"name",{value:t})}catch{}Object.defineProperty(n,"adapterName",{value:t})}});const Hv=n=>`- ${n}`,jS=n=>Ae.isFunction(n)||n===null||n===!1,Uv={getAdapter:n=>{n=Ae.isArray(n)?n:[n];const{length:t}=n;let e,r;const v={};for(let f=0;f<t;f++){e=n[f];let y;if(r=e,!jS(e)&&(r=zh[(y=String(e)).toLowerCase()],r===void 0))throw new wt(`Unknown adapter '${y}'`);if(r)break;v[y||"#"+f]=r}if(!r){const f=Object.entries(v).map(([C,h])=>`adapter ${C} `+(h===!1?"is not supported by the environment":"is not available in the build"));let y=t?f.length>1?`since :
1493
+ `+f.map(Hv).join(`
1494
+ `):" "+Hv(f[0]):"as no adapter specified";throw new wt("There is no suitable adapter to dispatch the request "+y,"ERR_NOT_SUPPORT")}return r},adapters:zh};function jh(n){if(n.cancelToken&&n.cancelToken.throwIfRequested(),n.signal&&n.signal.aborted)throw new Js(null,n)}function Vv(n){return jh(n),n.headers=Fr.from(n.headers),n.data=Wh.call(n,n.transformRequest),["post","put","patch"].indexOf(n.method)!==-1&&n.headers.setContentType("application/x-www-form-urlencoded",!1),Uv.getAdapter(n.adapter||za.adapter)(n).then(function(t){return jh(n),t.data=Wh.call(n,n.transformResponse,t),t.headers=Fr.from(t.headers),t},function(t){return Rv(t)||(jh(n),t&&t.response&&(t.response.data=Wh.call(n,n.transformResponse,t.response),t.response.headers=Fr.from(t.response.headers))),Promise.reject(t)})}const Gv="1.11.0",rc={};["object","boolean","number","function","string","symbol"].forEach((n,t)=>{rc[n]=function(e){return typeof e===n||"a"+(t<1?"n ":" ")+n}});const Kv={};rc.transitional=function(n,t,e){function r(v,f){return"[Axios v"+Gv+"] Transitional option '"+v+"'"+f+(e?". "+e:"")}return(v,f,y)=>{if(n===!1)throw new wt(r(f," has been removed"+(t?" in "+t:"")),wt.ERR_DEPRECATED);return t&&!Kv[f]&&(Kv[f]=!0,console.warn(r(f," has been deprecated since v"+t+" and will be removed in the near future"))),n?n(v,f,y):!0}},rc.spelling=function(n){return(t,e)=>(console.warn(`${e} is likely a misspelling of ${n}`),!0)};function HS(n,t,e){if(typeof n!="object")throw new wt("options must be an object",wt.ERR_BAD_OPTION_VALUE);const r=Object.keys(n);let v=r.length;for(;v-- >0;){const f=r[v],y=t[f];if(y){const C=n[f],h=C===void 0||y(C,f,n);if(h!==!0)throw new wt("option "+f+" must be "+h,wt.ERR_BAD_OPTION_VALUE);continue}if(e!==!0)throw new wt("Unknown option "+f,wt.ERR_BAD_OPTION)}}const ic={assertOptions:HS,validators:rc},Vi=ic.validators;let fs=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Mv,response:new Mv}}async request(t,e){try{return await this._request(t,e)}catch(r){if(r instanceof Error){let v={};Error.captureStackTrace?Error.captureStackTrace(v):v=new Error;const f=v.stack?v.stack.replace(/^.+\n/,""):"";try{r.stack?f&&!String(r.stack).endsWith(f.replace(/^.+\n.+\n/,""))&&(r.stack+=`
1495
+ `+f):r.stack=f}catch{}}throw r}}_request(t,e){typeof t=="string"?(e=e||{},e.url=t):e=t||{},e=gs(this.defaults,e);const{transitional:r,paramsSerializer:v,headers:f}=e;r!==void 0&&ic.assertOptions(r,{silentJSONParsing:Vi.transitional(Vi.boolean),forcedJSONParsing:Vi.transitional(Vi.boolean),clarifyTimeoutError:Vi.transitional(Vi.boolean)},!1),v!=null&&(Ae.isFunction(v)?e.paramsSerializer={serialize:v}:ic.assertOptions(v,{encode:Vi.function,serialize:Vi.function},!0)),e.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?e.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:e.allowAbsoluteUrls=!0),ic.assertOptions(e,{baseUrl:Vi.spelling("baseURL"),withXsrfToken:Vi.spelling("withXSRFToken")},!0),e.method=(e.method||this.defaults.method||"get").toLowerCase();let y=f&&Ae.merge(f.common,f[e.method]);f&&Ae.forEach(["delete","get","head","post","put","patch","common"],o=>{delete f[o]}),e.headers=Fr.concat(y,f);const C=[];let h=!0;this.interceptors.request.forEach(function(o){typeof o.runWhen=="function"&&o.runWhen(e)===!1||(h=h&&o.synchronous,C.unshift(o.fulfilled,o.rejected))});const p=[];this.interceptors.response.forEach(function(o){p.push(o.fulfilled,o.rejected)});let s,a=0,c;if(!h){const o=[Vv.bind(this),void 0];for(o.unshift(...C),o.push(...p),c=o.length,s=Promise.resolve(e);a<c;)s=s.then(o[a++],o[a++]);return s}c=C.length;let l=e;for(a=0;a<c;){const o=C[a++],u=C[a++];try{l=o(l)}catch(d){u.call(this,d);break}}try{s=Vv.call(this,l)}catch(o){return Promise.reject(o)}for(a=0,c=p.length;a<c;)s=s.then(p[a++],p[a++]);return s}getUri(t){t=gs(this.defaults,t);const e=Dv(t.baseURL,t.url,t.allowAbsoluteUrls);return $v(e,t.params,t.paramsSerializer)}};Ae.forEach(["delete","get","head","options"],function(n){fs.prototype[n]=function(t,e){return this.request(gs(e||{},{method:n,url:t,data:(e||{}).data}))}}),Ae.forEach(["post","put","patch"],function(n){function t(e){return function(r,v,f){return this.request(gs(f||{},{method:n,headers:e?{"Content-Type":"multipart/form-data"}:{},url:r,data:v}))}}fs.prototype[n]=t(),fs.prototype[n+"Form"]=t(!0)});let US=class w0{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let e;this.promise=new Promise(function(v){e=v});const r=this;this.promise.then(v=>{if(!r._listeners)return;let f=r._listeners.length;for(;f-- >0;)r._listeners[f](v);r._listeners=null}),this.promise.then=v=>{let f;const y=new Promise(C=>{r.subscribe(C),f=C}).then(v);return y.cancel=function(){r.unsubscribe(f)},y},t(function(v,f,y){r.reason||(r.reason=new Js(v,f,y),e(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);e!==-1&&this._listeners.splice(e,1)}toAbortSignal(){const t=new AbortController,e=r=>{t.abort(r)};return this.subscribe(e),t.signal.unsubscribe=()=>this.unsubscribe(e),t.signal}static source(){let t;return{token:new w0(function(e){t=e}),cancel:t}}};function VS(n){return function(t){return n.apply(null,t)}}function GS(n){return Ae.isObject(n)&&n.isAxiosError===!0}const Hh={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Hh).forEach(([n,t])=>{Hh[t]=n});function qv(n){const t=new fs(n),e=dv(fs.prototype.request,t);return Ae.extend(e,fs.prototype,t,{allOwnKeys:!0}),Ae.extend(e,t,null,{allOwnKeys:!0}),e.create=function(r){return qv(gs(n,r))},e}const Wn=kr("E",qv(za));Wn.Axios=fs,Wn.CanceledError=Js,Wn.CancelToken=US,Wn.isCancel=Rv,Wn.VERSION=Gv,Wn.toFormData=Zl,Wn.AxiosError=wt,Wn.Cancel=Wn.CanceledError,Wn.all=function(n){return Promise.all(n)},Wn.spread=VS,Wn.isAxiosError=GS,Wn.mergeConfig=gs,Wn.AxiosHeaders=Fr,Wn.formToJSON=n=>Ev(Ae.isHTMLForm(n)?new FormData(n):n),Wn.getAdapter=Uv.getAdapter,Wn.HttpStatusCode=Hh,Wn.default=Wn;const{Axios:J2,AxiosError:eN,CanceledError:tN,isCancel:nN,CancelToken:rN,VERSION:iN,all:oN,Cancel:sN,isAxiosError:aN,spread:lN,toFormData:cN,AxiosHeaders:uN,HttpStatusCode:hN,formToJSON:dN,getAdapter:pN,mergeConfig:gN}=Wn;function Yv(){return Object.assign({},Ds())}function KS(n,t,e){const r=cn(n,void 0);return r.setTime(r.getTime()+t*ul),r}function qS(n,t){const e=()=>Fn(void 0,NaN),r=ZS(n);let v;if(r.date){const h=JS(r.date,2);v=e$(h.restDateString,h.year)}if(!v||isNaN(+v))return e();const f=+v;let y=0,C;if(r.time&&(y=t$(r.time),isNaN(y)))return e();if(r.timezone){if(C=n$(r.timezone),isNaN(C))return e()}else{const h=new Date(f+y),p=cn(0,void 0);return p.setFullYear(h.getUTCFullYear(),h.getUTCMonth(),h.getUTCDate()),p.setHours(h.getUTCHours(),h.getUTCMinutes(),h.getUTCSeconds(),h.getUTCMilliseconds()),p}return cn(f+y+C,void 0)}const oc={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},YS=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,XS=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,QS=/^([+-])(\d{2})(?::?(\d{2}))?$/;function ZS(n){const t={},e=n.split(oc.dateTimeDelimiter);let r;if(e.length>2)return t;if(/:/.test(e[0])?r=e[0]:(t.date=e[0],r=e[1],oc.timeZoneDelimiter.test(t.date)&&(t.date=n.split(oc.timeZoneDelimiter)[0],r=n.substr(t.date.length,n.length))),r){const v=oc.timezone.exec(r);v?(t.time=r.replace(v[1],""),t.timezone=v[1]):t.time=r}return t}function JS(n,t){const e=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=n.match(e);if(!r)return{year:NaN,restDateString:""};const v=r[1]?parseInt(r[1]):null,f=r[2]?parseInt(r[2]):null;return{year:f===null?v:f*100,restDateString:n.slice((r[1]||r[2]).length)}}function e$(n,t){if(t===null)return new Date(NaN);const e=n.match(YS);if(!e)return new Date(NaN);const r=!!e[4],v=Ha(e[1]),f=Ha(e[2])-1,y=Ha(e[3]),C=Ha(e[4]),h=Ha(e[5])-1;if(r)return a$(t,C,h)?r$(t,C,h):new Date(NaN);{const p=new Date(0);return!o$(t,f,y)||!s$(t,v)?new Date(NaN):(p.setUTCFullYear(t,f,Math.max(v,y)),p)}}function Ha(n){return n?parseInt(n):1}function t$(n){const t=n.match(XS);if(!t)return NaN;const e=Uh(t[1]),r=Uh(t[2]),v=Uh(t[3]);return l$(e,r,v)?e*Xc+r*ul+v*1e3:NaN}function Uh(n){return n&&parseFloat(n.replace(",","."))||0}function n$(n){if(n==="Z")return 0;const t=n.match(QS);if(!t)return 0;const e=t[1]==="+"?-1:1,r=parseInt(t[2]),v=t[3]&&parseInt(t[3])||0;return c$(r,v)?e*(r*Xc+v*ul):NaN}function r$(n,t,e){const r=new Date(0);r.setUTCFullYear(n,0,4);const v=r.getUTCDay()||7,f=(t-1)*7+e+1-v;return r.setUTCDate(r.getUTCDate()+f),r}const i$=[31,null,31,30,31,30,31,31,30,31,30,31];function Xv(n){return n%400===0||n%4===0&&n%100!==0}function o$(n,t,e){return t>=0&&t<=11&&e>=1&&e<=(i$[t]||(Xv(n)?29:28))}function s$(n,t){return t>=1&&t<=(Xv(n)?366:365)}function a$(n,t,e){return t>=1&&t<=53&&e>=0&&e<=6}function l$(n,t,e){return n===24?t===0&&e===0:e>=0&&e<60&&t>=0&&t<60&&n>=0&&n<25}function c$(n,t){return t>=0&&t<=59}function u$(n,t,e){return KS(n,-t)}function Qv(n,t,e){const r=Yv(),v=p$(n,e.timeZone,e.locale??r.locale);return"formatToParts"in v?h$(v,t):d$(v,t)}function h$(n,t){const e=n.formatToParts(t);for(let r=e.length-1;r>=0;--r)if(e[r].type==="timeZoneName")return e[r].value}function d$(n,t){const e=n.format(t).replace(/\u200E/g,""),r=/ [\w-+ ]+$/.exec(e);return r?r[0].substr(1):""}function p$(n,t,e){return new Intl.DateTimeFormat(e?[e.code,"en-US"]:void 0,{timeZone:t,timeZoneName:n})}function g$(n,t){const e=w$(t);return"formatToParts"in e?m$(e,n):v$(e,n)}const f$={year:0,month:1,day:2,hour:3,minute:4,second:5};function m$(n,t){try{const e=n.formatToParts(t),r=[];for(let v=0;v<e.length;v++){const f=f$[e[v].type];f!==void 0&&(r[f]=parseInt(e[v].value,10))}return r}catch(e){if(e instanceof RangeError)return[NaN];throw e}}function v$(n,t){const e=n.format(t),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(e);return[parseInt(r[3],10),parseInt(r[1],10),parseInt(r[2],10),parseInt(r[4],10),parseInt(r[5],10),parseInt(r[6],10)]}const Vh={},Zv=new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:"America/New_York",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),y$=Zv==="06/25/2014, 00:00:00"||Zv==="‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00";function w$(n){return Vh[n]||(Vh[n]=y$?new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:n,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:n,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})),Vh[n]}function Jv(n,t,e,r,v,f,y){const C=new Date(0);return C.setUTCFullYear(n,t,e),C.setUTCHours(r,v,f,y),C}const ey=36e5,b$=6e4,Gh={timezoneZ:/^(Z)$/,timezoneHH:/^([+-]\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function Kh(n,t,e){if(!n)return 0;let r=Gh.timezoneZ.exec(n);if(r)return 0;let v,f;if(r=Gh.timezoneHH.exec(n),r)return v=parseInt(r[1],10),ty(v)?-(v*ey):NaN;if(r=Gh.timezoneHHMM.exec(n),r){v=parseInt(r[2],10);const y=parseInt(r[3],10);return ty(v,y)?(f=Math.abs(v)*ey+y*b$,r[1]==="+"?-f:f):NaN}if(k$(n)){t=new Date(t||Date.now());const y=e?t:x$(t),C=qh(y,n);return-(e?C:C$(t,C,n))}return NaN}function x$(n){return Jv(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds())}function qh(n,t){const e=g$(n,t),r=Jv(e[0],e[1]-1,e[2],e[3]%24,e[4],e[5],0).getTime();let v=n.getTime();const f=v%1e3;return v-=f>=0?f:1e3+f,r-v}function C$(n,t,e){let r=n.getTime()-t;const v=qh(new Date(r),e);if(t===v)return t;r-=v-t;const f=qh(new Date(r),e);return v===f?v:Math.max(v,f)}function ty(n,t){return-23<=n&&n<=23&&(t==null||0<=t&&t<=59)}const ny={};function k$(n){if(ny[n])return!0;try{return new Intl.DateTimeFormat(void 0,{timeZone:n}),ny[n]=!0,!0}catch{return!1}}const A$=60*1e3,_$={X:function(n,t,e){const r=Yh(e.timeZone,n);if(r===0)return"Z";switch(t){case"X":return ry(r);case"XXXX":case"XX":return ea(r);case"XXXXX":case"XXX":default:return ea(r,":")}},x:function(n,t,e){const r=Yh(e.timeZone,n);switch(t){case"x":return ry(r);case"xxxx":case"xx":return ea(r);case"xxxxx":case"xxx":default:return ea(r,":")}},O:function(n,t,e){const r=Yh(e.timeZone,n);switch(t){case"O":case"OO":case"OOO":return"GMT"+S$(r,":");case"OOOO":default:return"GMT"+ea(r,":")}},z:function(n,t,e){switch(t){case"z":case"zz":case"zzz":return Qv("short",n,e);case"zzzz":default:return Qv("long",n,e)}}};function Yh(n,t){const e=n?Kh(n,t,!0)/A$:(t==null?void 0:t.getTimezoneOffset())??0;if(Number.isNaN(e))throw new RangeError("Invalid time zone specified: "+n);return e}function sc(n,t){const e=n<0?"-":"";let r=Math.abs(n).toString();for(;r.length<t;)r="0"+r;return e+r}function ea(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),v=sc(Math.floor(r/60),2),f=sc(Math.floor(r%60),2);return e+v+t+f}function ry(n,t){return n%60===0?(n>0?"-":"+")+sc(Math.abs(n)/60,2):ea(n,t)}function S$(n,t=""){const e=n>0?"-":"+",r=Math.abs(n),v=Math.floor(r/60),f=r%60;return f===0?e+String(v):e+String(v)+t+sc(f,2)}function iy(n){const t=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()));return t.setUTCFullYear(n.getFullYear()),+n-+t}const $$=/(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/,Xh=36e5,oy=6e4,M$=2,_r={dateTimePattern:/^([0-9W+-]+)(T| )(.*)/,datePattern:/^([0-9W+-]+)(.*)/,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timeZone:$$};function sy(n,t={}){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(n===null)return new Date(NaN);const e=t.additionalDigits==null?M$:Number(t.additionalDigits);if(e!==2&&e!==1&&e!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(n instanceof Date||typeof n=="object"&&Object.prototype.toString.call(n)==="[object Date]")return new Date(n.getTime());if(typeof n=="number"||Object.prototype.toString.call(n)==="[object Number]")return new Date(n);if(Object.prototype.toString.call(n)!=="[object String]")return new Date(NaN);const r=T$(n),{year:v,restDateString:f}=E$(r.date,e),y=I$(f,v);if(y===null||isNaN(y.getTime()))return new Date(NaN);if(y){const C=y.getTime();let h=0,p;if(r.time&&(h=R$(r.time),h===null||isNaN(h)))return new Date(NaN);if(r.timeZone||t.timeZone){if(p=Kh(r.timeZone||t.timeZone,new Date(C+h)),isNaN(p))return new Date(NaN)}else p=iy(new Date(C+h)),p=iy(new Date(C+h+p));return new Date(C+h+p)}else return new Date(NaN)}function T$(n){const t={};let e=_r.dateTimePattern.exec(n),r;if(e?(t.date=e[1],r=e[3]):(e=_r.datePattern.exec(n),e?(t.date=e[1],r=e[2]):(t.date=null,r=n)),r){const v=_r.timeZone.exec(r);v?(t.time=r.replace(v[1],""),t.timeZone=v[1].trim()):t.time=r}return t}function E$(n,t){if(n){const e=_r.YYY[t],r=_r.YYYYY[t];let v=_r.YYYY.exec(n)||r.exec(n);if(v){const f=v[1];return{year:parseInt(f,10),restDateString:n.slice(f.length)}}if(v=_r.YY.exec(n)||e.exec(n),v){const f=v[1];return{year:parseInt(f,10)*100,restDateString:n.slice(f.length)}}}return{year:null}}function I$(n,t){if(t===null)return null;let e,r,v;if(!n||!n.length)return e=new Date(0),e.setUTCFullYear(t),e;let f=_r.MM.exec(n);if(f)return e=new Date(0),r=parseInt(f[1],10)-1,cy(t,r)?(e.setUTCFullYear(t,r),e):new Date(NaN);if(f=_r.DDD.exec(n),f){e=new Date(0);const y=parseInt(f[1],10);return N$(t,y)?(e.setUTCFullYear(t,0,y),e):new Date(NaN)}if(f=_r.MMDD.exec(n),f){e=new Date(0),r=parseInt(f[1],10)-1;const y=parseInt(f[2],10);return cy(t,r,y)?(e.setUTCFullYear(t,r,y),e):new Date(NaN)}if(f=_r.Www.exec(n),f)return v=parseInt(f[1],10)-1,uy(v)?ay(t,v):new Date(NaN);if(f=_r.WwwD.exec(n),f){v=parseInt(f[1],10)-1;const y=parseInt(f[2],10)-1;return uy(v,y)?ay(t,v,y):new Date(NaN)}return null}function R$(n){let t,e,r=_r.HH.exec(n);if(r)return t=parseFloat(r[1].replace(",",".")),Qh(t)?t%24*Xh:NaN;if(r=_r.HHMM.exec(n),r)return t=parseInt(r[1],10),e=parseFloat(r[2].replace(",",".")),Qh(t,e)?t%24*Xh+e*oy:NaN;if(r=_r.HHMMSS.exec(n),r){t=parseInt(r[1],10),e=parseInt(r[2],10);const v=parseFloat(r[3].replace(",","."));return Qh(t,e,v)?t%24*Xh+e*oy+v*1e3:NaN}return null}function ay(n,t,e){t=t||0,e=e||0;const r=new Date(0);r.setUTCFullYear(n,0,4);const v=r.getUTCDay()||7,f=t*7+e+1-v;return r.setUTCDate(r.getUTCDate()+f),r}const L$=[31,28,31,30,31,30,31,31,30,31,30,31],O$=[31,29,31,30,31,30,31,31,30,31,30,31];function ly(n){return n%400===0||n%4===0&&n%100!==0}function cy(n,t,e){if(t<0||t>11)return!1;if(e!=null){if(e<1)return!1;const r=ly(n);if(r&&e>O$[t]||!r&&e>L$[t])return!1}return!0}function N$(n,t){if(t<1)return!1;const e=ly(n);return!(e&&t>366||!e&&t>365)}function uy(n,t){return!(n<0||n>52||t!=null&&(t<0||t>6))}function Qh(n,t,e){return!(n<0||n>=25||t!=null&&(t<0||t>=60)||e!=null&&(e<0||e>=60))}const D$=/([xXOz]+)|''|'(''|[^'])+('|$)/g;function F$(n,t,e={}){t=String(t);const r=t.match(D$);if(r){const v=sy(e.originalDate||n,e);t=r.reduce(function(f,y){if(y[0]==="'")return f;const C=f.indexOf(y),h=f[C-1]==="'",p=f.replace(y,"'"+_$[y[0]](v,y,e)+"'");return h?p.substring(0,C-1)+p.substring(C+1):p},t)}return ts(n,t,e)}function P$(n,t,e){n=sy(n,e);const r=Kh(t,n,!0),v=new Date(n.getTime()-r),f=new Date(0);return f.setFullYear(v.getUTCFullYear(),v.getUTCMonth(),v.getUTCDate()),f.setHours(v.getUTCHours(),v.getUTCMinutes(),v.getUTCSeconds(),v.getUTCMilliseconds()),f}function ac(n,t,e,r){return r={...r,timeZone:t,originalDate:n},F$(P$(n,t,{timeZone:r.timeZone}),e,r)}const lc="yyyy-MM-dd",hy="HH:mm:ss.SSS",dy="HH:mm:ss",cc=`${lc} ${hy}`,py=`${lc} ${dy}`,fN=kr("R",{methods:{parseDateTime(n,t){return n.includes(" ")&&(n=n.replace(" ","T")),t&&t==="UTC"&&(n+="Z"),Date.parse(n)},formatUtcToLocal(n,t){return ts(!t||t==="local"?u$(n,n.getTimezoneOffset()):n,cc)},formatDateTime(n,t){return!t||t==="local"?ts(n,cc):ac(n,t,cc)},formatDateTimeHMS(n,t){return!t||t==="local"?ts(n,py):ac(n,t,py)},formatDate:function(n,t){return!t||t==="local"?ts(n,lc):ac(n,this.timeZone,lc)},formatTime:function(n,t,e=hy){return!t||t==="local"?ts(n,e):ac(n,this.timeZone,e)},formatTimeHMS:function(n,t){return this.formatTime(n,t,dy)},formatTimestamp(n,t){return this.formatDateTime(qS(n),t)},formatSeconds(n,t){return this.formatDateTime(new Date(n*1e3),t)},formatNanoseconds(n,t){return this.formatDateTime(new Date(parseInt(n)/1e6),t)}}});var W$=Object.defineProperty,B$=(n,t,e)=>t in n?W$(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,Xe=(n,t,e)=>B$(n,typeof t!="symbol"?t+"":t,e);function Zh(n,t,e){const r=cn(n,e==null?void 0:e.in);return isNaN(t)?Fn((e==null?void 0:e.in)||n,NaN):(t&&r.setDate(r.getDate()+t),r)}function z$(n,t){const e=cn(n,void 0).getDay();return e===0?7:e}function j$(n,t){const e=H$(t)?new t(0):Fn(t,0);return e.setFullYear(n.getFullYear(),n.getMonth(),n.getDate()),e.setHours(n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()),e}function H$(n){var t;return typeof n=="function"&&((t=n.prototype)==null?void 0:t.constructor)===n}const U$=10;class gy{constructor(){Xe(this,"subPriority",0)}validate(t,e){return!0}}class V$ extends gy{constructor(t,e,r,v,f){super(),this.value=t,this.validateValue=e,this.setValue=r,this.priority=v,f&&(this.subPriority=f)}validate(t,e){return this.validateValue(t,this.value,e)}set(t,e,r){return this.setValue(t,e,this.value,r)}}let G$=class extends gy{constructor(t,e){super(),Xe(this,"priority",U$),Xe(this,"subPriority",-1),this.context=t||(r=>Fn(e,r))}set(t,e){return e.timestampIsSet?t:Fn(t,j$(t,this.context))}};class zt{run(t,e,r,v){const f=this.parse(t,e,r,v);return f?{setter:new V$(f.value,this.validate,this.set,this.priority,this.subPriority),rest:f.rest}:null}validate(t,e,r){return!0}}class K$ extends zt{constructor(){super(...arguments),Xe(this,"priority",140),Xe(this,"incompatibleTokens",["R","u","t","T"])}parse(t,e,r){switch(e){case"G":case"GG":case"GGG":return r.era(t,{width:"abbreviated"})||r.era(t,{width:"narrow"});case"GGGGG":return r.era(t,{width:"narrow"});case"GGGG":default:return r.era(t,{width:"wide"})||r.era(t,{width:"abbreviated"})||r.era(t,{width:"narrow"})}}set(t,e,r){return e.era=r,t.setFullYear(r,0,1),t.setHours(0,0,0,0),t}}const Tn={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},Gi={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};function En(n,t){return n&&{value:t(n.value),rest:n.rest}}function gn(n,t){const e=t.match(n);return e?{value:parseInt(e[0],10),rest:t.slice(e[0].length)}:null}function Ki(n,t){const e=t.match(n);if(!e)return null;if(e[0]==="Z")return{value:0,rest:t.slice(1)};const r=e[1]==="+"?1:-1,v=e[2]?parseInt(e[2],10):0,f=e[3]?parseInt(e[3],10):0,y=e[5]?parseInt(e[5],10):0;return{value:r*(v*Xc+f*ul+y*F0),rest:t.slice(e[0].length)}}function fy(n){return gn(Tn.anyDigitsSigned,n)}function xn(n,t){switch(n){case 1:return gn(Tn.singleDigit,t);case 2:return gn(Tn.twoDigits,t);case 3:return gn(Tn.threeDigits,t);case 4:return gn(Tn.fourDigits,t);default:return gn(new RegExp("^\\d{1,"+n+"}"),t)}}function my(n,t){switch(n){case 1:return gn(Tn.singleDigitSigned,t);case 2:return gn(Tn.twoDigitsSigned,t);case 3:return gn(Tn.threeDigitsSigned,t);case 4:return gn(Tn.fourDigitsSigned,t);default:return gn(new RegExp("^-?\\d{1,"+n+"}"),t)}}function Jh(n){switch(n){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;case"am":case"midnight":case"night":default:return 0}}function vy(n,t){const e=t>0,r=e?t:1-t;let v;if(r<=50)v=n||100;else{const f=r+50,y=Math.trunc(f/100)*100,C=n>=f%100;v=n+y-(C?100:0)}return e?v:1-v}function yy(n){return n%400===0||n%4===0&&n%100!==0}class q$ extends zt{constructor(){super(...arguments),Xe(this,"priority",130),Xe(this,"incompatibleTokens",["Y","R","u","w","I","i","e","c","t","T"])}parse(t,e,r){const v=f=>({year:f,isTwoDigitYear:e==="yy"});switch(e){case"y":return En(xn(4,t),v);case"yo":return En(r.ordinalNumber(t,{unit:"year"}),v);default:return En(xn(e.length,t),v)}}validate(t,e){return e.isTwoDigitYear||e.year>0}set(t,e,r){const v=t.getFullYear();if(r.isTwoDigitYear){const y=vy(r.year,v);return t.setFullYear(y,0,1),t.setHours(0,0,0,0),t}const f=!("era"in e)||e.era===1?r.year:1-r.year;return t.setFullYear(f,0,1),t.setHours(0,0,0,0),t}}class Y$ extends zt{constructor(){super(...arguments),Xe(this,"priority",130),Xe(this,"incompatibleTokens",["y","R","u","Q","q","M","L","I","d","D","i","t","T"])}parse(t,e,r){const v=f=>({year:f,isTwoDigitYear:e==="YY"});switch(e){case"Y":return En(xn(4,t),v);case"Yo":return En(r.ordinalNumber(t,{unit:"year"}),v);default:return En(xn(e.length,t),v)}}validate(t,e){return e.isTwoDigitYear||e.year>0}set(t,e,r,v){const f=Zc(t,v);if(r.isTwoDigitYear){const C=vy(r.year,f);return t.setFullYear(C,0,v.firstWeekContainsDate),t.setHours(0,0,0,0),To(t,v)}const y=!("era"in e)||e.era===1?r.year:1-r.year;return t.setFullYear(y,0,v.firstWeekContainsDate),t.setHours(0,0,0,0),To(t,v)}}class X$ extends zt{constructor(){super(...arguments),Xe(this,"priority",130),Xe(this,"incompatibleTokens",["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"])}parse(t,e){return my(e==="R"?4:e.length,t)}set(t,e,r){const v=Fn(t,0);return v.setFullYear(r,0,4),v.setHours(0,0,0,0),Fs(v)}}class Q$ extends zt{constructor(){super(...arguments),Xe(this,"priority",130),Xe(this,"incompatibleTokens",["G","y","Y","R","w","I","i","e","c","t","T"])}parse(t,e){return my(e==="u"?4:e.length,t)}set(t,e,r){return t.setFullYear(r,0,1),t.setHours(0,0,0,0),t}}class Z$ extends zt{constructor(){super(...arguments),Xe(this,"priority",120),Xe(this,"incompatibleTokens",["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"])}parse(t,e,r){switch(e){case"Q":case"QQ":return xn(e.length,t);case"Qo":return r.ordinalNumber(t,{unit:"quarter"});case"QQQ":return r.quarter(t,{width:"abbreviated",context:"formatting"})||r.quarter(t,{width:"narrow",context:"formatting"});case"QQQQQ":return r.quarter(t,{width:"narrow",context:"formatting"});case"QQQQ":default:return r.quarter(t,{width:"wide",context:"formatting"})||r.quarter(t,{width:"abbreviated",context:"formatting"})||r.quarter(t,{width:"narrow",context:"formatting"})}}validate(t,e){return e>=1&&e<=4}set(t,e,r){return t.setMonth((r-1)*3,1),t.setHours(0,0,0,0),t}}class J$ extends zt{constructor(){super(...arguments),Xe(this,"priority",120),Xe(this,"incompatibleTokens",["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"])}parse(t,e,r){switch(e){case"q":case"qq":return xn(e.length,t);case"qo":return r.ordinalNumber(t,{unit:"quarter"});case"qqq":return r.quarter(t,{width:"abbreviated",context:"standalone"})||r.quarter(t,{width:"narrow",context:"standalone"});case"qqqqq":return r.quarter(t,{width:"narrow",context:"standalone"});case"qqqq":default:return r.quarter(t,{width:"wide",context:"standalone"})||r.quarter(t,{width:"abbreviated",context:"standalone"})||r.quarter(t,{width:"narrow",context:"standalone"})}}validate(t,e){return e>=1&&e<=4}set(t,e,r){return t.setMonth((r-1)*3,1),t.setHours(0,0,0,0),t}}class eM extends zt{constructor(){super(...arguments),Xe(this,"incompatibleTokens",["Y","R","q","Q","L","w","I","D","i","e","c","t","T"]),Xe(this,"priority",110)}parse(t,e,r){const v=f=>f-1;switch(e){case"M":return En(gn(Tn.month,t),v);case"MM":return En(xn(2,t),v);case"Mo":return En(r.ordinalNumber(t,{unit:"month"}),v);case"MMM":return r.month(t,{width:"abbreviated",context:"formatting"})||r.month(t,{width:"narrow",context:"formatting"});case"MMMMM":return r.month(t,{width:"narrow",context:"formatting"});case"MMMM":default:return r.month(t,{width:"wide",context:"formatting"})||r.month(t,{width:"abbreviated",context:"formatting"})||r.month(t,{width:"narrow",context:"formatting"})}}validate(t,e){return e>=0&&e<=11}set(t,e,r){return t.setMonth(r,1),t.setHours(0,0,0,0),t}}class tM extends zt{constructor(){super(...arguments),Xe(this,"priority",110),Xe(this,"incompatibleTokens",["Y","R","q","Q","M","w","I","D","i","e","c","t","T"])}parse(t,e,r){const v=f=>f-1;switch(e){case"L":return En(gn(Tn.month,t),v);case"LL":return En(xn(2,t),v);case"Lo":return En(r.ordinalNumber(t,{unit:"month"}),v);case"LLL":return r.month(t,{width:"abbreviated",context:"standalone"})||r.month(t,{width:"narrow",context:"standalone"});case"LLLLL":return r.month(t,{width:"narrow",context:"standalone"});case"LLLL":default:return r.month(t,{width:"wide",context:"standalone"})||r.month(t,{width:"abbreviated",context:"standalone"})||r.month(t,{width:"narrow",context:"standalone"})}}validate(t,e){return e>=0&&e<=11}set(t,e,r){return t.setMonth(r,1),t.setHours(0,0,0,0),t}}function nM(n,t,e){const r=cn(n,e==null?void 0:e.in),v=$p(r,e)-t;return r.setDate(r.getDate()-v*7),cn(r,e==null?void 0:e.in)}class rM extends zt{constructor(){super(...arguments),Xe(this,"priority",100),Xe(this,"incompatibleTokens",["y","R","u","q","Q","M","L","I","d","D","i","t","T"])}parse(t,e,r){switch(e){case"w":return gn(Tn.week,t);case"wo":return r.ordinalNumber(t,{unit:"week"});default:return xn(e.length,t)}}validate(t,e){return e>=1&&e<=53}set(t,e,r,v){return To(nM(t,r,v),v)}}function iM(n,t,e){const r=cn(n,void 0),v=Sp(r)-t;return r.setDate(r.getDate()-v*7),r}class oM extends zt{constructor(){super(...arguments),Xe(this,"priority",100),Xe(this,"incompatibleTokens",["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"])}parse(t,e,r){switch(e){case"I":return gn(Tn.week,t);case"Io":return r.ordinalNumber(t,{unit:"week"});default:return xn(e.length,t)}}validate(t,e){return e>=1&&e<=53}set(t,e,r){return Fs(iM(t,r))}}const sM=[31,28,31,30,31,30,31,31,30,31,30,31],aM=[31,29,31,30,31,30,31,31,30,31,30,31];class lM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"subPriority",1),Xe(this,"incompatibleTokens",["Y","R","q","Q","w","I","D","i","e","c","t","T"])}parse(t,e,r){switch(e){case"d":return gn(Tn.date,t);case"do":return r.ordinalNumber(t,{unit:"date"});default:return xn(e.length,t)}}validate(t,e){const r=t.getFullYear(),v=yy(r),f=t.getMonth();return v?e>=1&&e<=aM[f]:e>=1&&e<=sM[f]}set(t,e,r){return t.setDate(r),t.setHours(0,0,0,0),t}}class cM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"subpriority",1),Xe(this,"incompatibleTokens",["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"])}parse(t,e,r){switch(e){case"D":case"DD":return gn(Tn.dayOfYear,t);case"Do":return r.ordinalNumber(t,{unit:"date"});default:return xn(e.length,t)}}validate(t,e){const r=t.getFullYear();return yy(r)?e>=1&&e<=366:e>=1&&e<=365}set(t,e,r){return t.setMonth(0,r),t.setHours(0,0,0,0),t}}function ed(n,t,e){var r,v,f,y;const C=Ds(),h=(e==null?void 0:e.weekStartsOn)??((v=(r=e==null?void 0:e.locale)==null?void 0:r.options)==null?void 0:v.weekStartsOn)??C.weekStartsOn??((y=(f=C.locale)==null?void 0:f.options)==null?void 0:y.weekStartsOn)??0,p=cn(n,e==null?void 0:e.in),s=p.getDay(),a=(t%7+7)%7,c=7-h,l=t<0||t>6?t-(s+c)%7:(a+c)%7-(s+c)%7;return Zh(p,l,e)}class uM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"incompatibleTokens",["D","i","e","c","t","T"])}parse(t,e,r){switch(e){case"E":case"EE":case"EEE":return r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"});case"EEEEE":return r.day(t,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"});case"EEEE":default:return r.day(t,{width:"wide",context:"formatting"})||r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"})}}validate(t,e){return e>=0&&e<=6}set(t,e,r,v){return t=ed(t,r,v),t.setHours(0,0,0,0),t}}class hM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"incompatibleTokens",["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"])}parse(t,e,r,v){const f=y=>{const C=Math.floor((y-1)/7)*7;return(y+v.weekStartsOn+6)%7+C};switch(e){case"e":case"ee":return En(xn(e.length,t),f);case"eo":return En(r.ordinalNumber(t,{unit:"day"}),f);case"eee":return r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"});case"eeeee":return r.day(t,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"});case"eeee":default:return r.day(t,{width:"wide",context:"formatting"})||r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"})}}validate(t,e){return e>=0&&e<=6}set(t,e,r,v){return t=ed(t,r,v),t.setHours(0,0,0,0),t}}class dM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"incompatibleTokens",["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"])}parse(t,e,r,v){const f=y=>{const C=Math.floor((y-1)/7)*7;return(y+v.weekStartsOn+6)%7+C};switch(e){case"c":case"cc":return En(xn(e.length,t),f);case"co":return En(r.ordinalNumber(t,{unit:"day"}),f);case"ccc":return r.day(t,{width:"abbreviated",context:"standalone"})||r.day(t,{width:"short",context:"standalone"})||r.day(t,{width:"narrow",context:"standalone"});case"ccccc":return r.day(t,{width:"narrow",context:"standalone"});case"cccccc":return r.day(t,{width:"short",context:"standalone"})||r.day(t,{width:"narrow",context:"standalone"});case"cccc":default:return r.day(t,{width:"wide",context:"standalone"})||r.day(t,{width:"abbreviated",context:"standalone"})||r.day(t,{width:"short",context:"standalone"})||r.day(t,{width:"narrow",context:"standalone"})}}validate(t,e){return e>=0&&e<=6}set(t,e,r,v){return t=ed(t,r,v),t.setHours(0,0,0,0),t}}function pM(n,t,e){const r=cn(n,void 0),v=z$(r),f=t-v;return Zh(r,f,e)}class gM extends zt{constructor(){super(...arguments),Xe(this,"priority",90),Xe(this,"incompatibleTokens",["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"])}parse(t,e,r){const v=f=>f===0?7:f;switch(e){case"i":case"ii":return xn(e.length,t);case"io":return r.ordinalNumber(t,{unit:"day"});case"iii":return En(r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"}),v);case"iiiii":return En(r.day(t,{width:"narrow",context:"formatting"}),v);case"iiiiii":return En(r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"}),v);case"iiii":default:return En(r.day(t,{width:"wide",context:"formatting"})||r.day(t,{width:"abbreviated",context:"formatting"})||r.day(t,{width:"short",context:"formatting"})||r.day(t,{width:"narrow",context:"formatting"}),v)}}validate(t,e){return e>=1&&e<=7}set(t,e,r){return t=pM(t,r),t.setHours(0,0,0,0),t}}class fM extends zt{constructor(){super(...arguments),Xe(this,"priority",80),Xe(this,"incompatibleTokens",["b","B","H","k","t","T"])}parse(t,e,r){switch(e){case"a":case"aa":case"aaa":return r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaaa":return r.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaa":default:return r.dayPeriod(t,{width:"wide",context:"formatting"})||r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,e,r){return t.setHours(Jh(r),0,0,0),t}}class mM extends zt{constructor(){super(...arguments),Xe(this,"priority",80),Xe(this,"incompatibleTokens",["a","B","H","k","t","T"])}parse(t,e,r){switch(e){case"b":case"bb":case"bbb":return r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbbb":return r.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbb":default:return r.dayPeriod(t,{width:"wide",context:"formatting"})||r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,e,r){return t.setHours(Jh(r),0,0,0),t}}class vM extends zt{constructor(){super(...arguments),Xe(this,"priority",80),Xe(this,"incompatibleTokens",["a","b","t","T"])}parse(t,e,r){switch(e){case"B":case"BB":case"BBB":return r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBBB":return r.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBB":default:return r.dayPeriod(t,{width:"wide",context:"formatting"})||r.dayPeriod(t,{width:"abbreviated",context:"formatting"})||r.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,e,r){return t.setHours(Jh(r),0,0,0),t}}class yM extends zt{constructor(){super(...arguments),Xe(this,"priority",70),Xe(this,"incompatibleTokens",["H","K","k","t","T"])}parse(t,e,r){switch(e){case"h":return gn(Tn.hour12h,t);case"ho":return r.ordinalNumber(t,{unit:"hour"});default:return xn(e.length,t)}}validate(t,e){return e>=1&&e<=12}set(t,e,r){const v=t.getHours()>=12;return v&&r<12?t.setHours(r+12,0,0,0):!v&&r===12?t.setHours(0,0,0,0):t.setHours(r,0,0,0),t}}class wM extends zt{constructor(){super(...arguments),Xe(this,"priority",70),Xe(this,"incompatibleTokens",["a","b","h","K","k","t","T"])}parse(t,e,r){switch(e){case"H":return gn(Tn.hour23h,t);case"Ho":return r.ordinalNumber(t,{unit:"hour"});default:return xn(e.length,t)}}validate(t,e){return e>=0&&e<=23}set(t,e,r){return t.setHours(r,0,0,0),t}}class bM extends zt{constructor(){super(...arguments),Xe(this,"priority",70),Xe(this,"incompatibleTokens",["h","H","k","t","T"])}parse(t,e,r){switch(e){case"K":return gn(Tn.hour11h,t);case"Ko":return r.ordinalNumber(t,{unit:"hour"});default:return xn(e.length,t)}}validate(t,e){return e>=0&&e<=11}set(t,e,r){return t.getHours()>=12&&r<12?t.setHours(r+12,0,0,0):t.setHours(r,0,0,0),t}}class xM extends zt{constructor(){super(...arguments),Xe(this,"priority",70),Xe(this,"incompatibleTokens",["a","b","h","H","K","t","T"])}parse(t,e,r){switch(e){case"k":return gn(Tn.hour24h,t);case"ko":return r.ordinalNumber(t,{unit:"hour"});default:return xn(e.length,t)}}validate(t,e){return e>=1&&e<=24}set(t,e,r){const v=r<=24?r%24:r;return t.setHours(v,0,0,0),t}}class CM extends zt{constructor(){super(...arguments),Xe(this,"priority",60),Xe(this,"incompatibleTokens",["t","T"])}parse(t,e,r){switch(e){case"m":return gn(Tn.minute,t);case"mo":return r.ordinalNumber(t,{unit:"minute"});default:return xn(e.length,t)}}validate(t,e){return e>=0&&e<=59}set(t,e,r){return t.setMinutes(r,0,0),t}}class kM extends zt{constructor(){super(...arguments),Xe(this,"priority",50),Xe(this,"incompatibleTokens",["t","T"])}parse(t,e,r){switch(e){case"s":return gn(Tn.second,t);case"so":return r.ordinalNumber(t,{unit:"second"});default:return xn(e.length,t)}}validate(t,e){return e>=0&&e<=59}set(t,e,r){return t.setSeconds(r,0),t}}class AM extends zt{constructor(){super(...arguments),Xe(this,"priority",30),Xe(this,"incompatibleTokens",["t","T"])}parse(t,e){const r=v=>Math.trunc(v*Math.pow(10,-e.length+3));return En(xn(e.length,t),r)}set(t,e,r){return t.setMilliseconds(r),t}}class _M extends zt{constructor(){super(...arguments),Xe(this,"priority",10),Xe(this,"incompatibleTokens",["t","T","x"])}parse(t,e){switch(e){case"X":return Ki(Gi.basicOptionalMinutes,t);case"XX":return Ki(Gi.basic,t);case"XXXX":return Ki(Gi.basicOptionalSeconds,t);case"XXXXX":return Ki(Gi.extendedOptionalSeconds,t);case"XXX":default:return Ki(Gi.extended,t)}}set(t,e,r){return e.timestampIsSet?t:Fn(t,t.getTime()-hl(t)-r)}}class SM extends zt{constructor(){super(...arguments),Xe(this,"priority",10),Xe(this,"incompatibleTokens",["t","T","X"])}parse(t,e){switch(e){case"x":return Ki(Gi.basicOptionalMinutes,t);case"xx":return Ki(Gi.basic,t);case"xxxx":return Ki(Gi.basicOptionalSeconds,t);case"xxxxx":return Ki(Gi.extendedOptionalSeconds,t);case"xxx":default:return Ki(Gi.extended,t)}}set(t,e,r){return e.timestampIsSet?t:Fn(t,t.getTime()-hl(t)-r)}}class $M extends zt{constructor(){super(...arguments),Xe(this,"priority",40),Xe(this,"incompatibleTokens","*")}parse(t){return fy(t)}set(t,e,r){return[Fn(t,r*1e3),{timestampIsSet:!0}]}}class MM extends zt{constructor(){super(...arguments),Xe(this,"priority",20),Xe(this,"incompatibleTokens","*")}parse(t){return fy(t)}set(t,e,r){return[Fn(t,r),{timestampIsSet:!0}]}}const TM={G:new K$,y:new q$,Y:new Y$,R:new X$,u:new Q$,Q:new Z$,q:new J$,M:new eM,L:new tM,w:new rM,I:new oM,d:new lM,D:new cM,E:new uM,e:new hM,c:new dM,i:new gM,a:new fM,b:new mM,B:new vM,h:new yM,H:new wM,K:new bM,k:new xM,m:new CM,s:new kM,S:new AM,X:new _M,x:new SM,t:new $M,T:new MM},EM=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,IM=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,RM=/^'([^]*?)'?$/,LM=/''/g,OM=/\S/,NM=/[a-zA-Z]/;function DM(n,t,e,r){var v,f,y,C;const h=()=>Fn(e,NaN),p=Yv(),s=p.locale??_p,a=p.firstWeekContainsDate??((f=(v=p.locale)==null?void 0:v.options)==null?void 0:f.firstWeekContainsDate)??1,c=p.weekStartsOn??((C=(y=p.locale)==null?void 0:y.options)==null?void 0:C.weekStartsOn)??0;if(!t)return n?h():cn(e,void 0);const l={firstWeekContainsDate:a,weekStartsOn:c,locale:s},o=[new G$(void 0,e)],u=t.match(IM).map(M=>{const k=M[0];if(k in Jc){const x=Jc[k];return x(M,s.formatLong)}return M}).join("").match(EM),d=[];for(let M of u){Op(M)&&eu(M,t,n),Lp(M)&&eu(M,t,n);const k=M[0],x=TM[k];if(x){const{incompatibleTokens:L}=x;if(Array.isArray(L)){const I=d.find(E=>L.includes(E.token)||E.token===k);if(I)throw new RangeError(`The format string mustn't contain \`${I.fullToken}\` and \`${M}\` at the same time`)}else if(x.incompatibleTokens==="*"&&d.length>0)throw new RangeError(`The format string mustn't contain \`${M}\` and any other token at the same time`);d.push({token:k,fullToken:M});const O=x.run(n,M,s.match,l);if(!O)return h();o.push(O.setter),n=O.rest}else{if(k.match(NM))throw new RangeError("Format string contains an unescaped latin alphabet character `"+k+"`");if(M==="''"?M="'":k==="'"&&(M=FM(M)),n.indexOf(M)===0)n=n.slice(M.length);else return h()}}if(n.length>0&&OM.test(n))return h();const w=o.map(M=>M.priority).sort((M,k)=>k-M).filter((M,k,x)=>x.indexOf(M)===k).map(M=>o.filter(k=>k.priority===M).sort((k,x)=>x.subPriority-k.subPriority)).map(M=>M[0]);let b=cn(e,void 0);if(isNaN(+b))return h();const R={};for(const M of w){if(!M.validate(b,l))return h();const k=M.set(b,R,l);Array.isArray(k)?(b=k[0],Object.assign(R,k[1])):b=k}return b}function FM(n){return n.match(RM)[1].replace(LM,"'")}const PM="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOAAAAAgCAYAAAALxXRVAAAAxHpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjabVDbDcMwCPxnio5gc8TB4zhtKnWDjl8IJEranmReh84Are/Xk24OrkIyzdp6a8UgXToPC7QExmZrkc1uWJOy/FIn3gm2EswjUm3Zv9frIRBuWDSdhPSexHIluqS+fgnlz/CJPH6kUE8hcBA1BUasVVrX+bzCcuyW0HjkRvQ69k8+2/Uek/0D5hUVxSwgMQD8gTAsaGYBb6zmhxFeEWiK2UH+3WkHfQAmGFlDwtBoyQAAAYVpQ0NQSUNDIHByb2ZpbGUAAHicfZE9SMNQFIVPW7UiFRE7iIhkqE7WQUUcaxWKUCHUCq06mLz0D5o0JCkujoJrwcGfxaqDi7OuDq6CIPgD4uripOgiJd6XFFrEeOHxPs675/DefYC/Xmaq2REDVM0yUom4kMmuCsFXdGEE/fBhQmKmPieKSXjW1z31Ud1FeZZ335/Vq+RMBvgE4hjTDYt4g3hm09I57xOHWVFSiM+Jxw26IPEj12WX3zgXHPbzzLCRTs0Th4mFQhvLbcyKhko8TRxRVI3y/RmXFc5bnNVylTXvyV8Yymkry1ynNYwEFrEEEQJkVFFCGRaitGukmEjRedzDP+T4RXLJ5CqBkWMBFaiQHD/4H/yerZmfmnSTQnGg88W2P0aB4C7QqNn297FtN06AwDNwpbX8lTow+0l6raVFjoC+beDiuqXJe8DlDjD4pEuG5EgBWv58Hng/o2/KAgO3QM+aO7fmOU4fgDTNKnkDHBwCYwXKXvd4d3f73P7tac7vB5UicrQ0WLbfAAANemlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6R0lNUD0iaHR0cDovL3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgIHhtcE1NOkRvY3VtZW50SUQ9ImdpbXA6ZG9jaWQ6Z2ltcDozYjNlMzQ0NC03YTU4LTQxYjItYTZjYi0wMzljNWI3NjRmN2IiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MGUxZjUyNzQtNTMyNC00MzE5LWE3MjYtOGQyNjJlNjI1Y2YwIgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZDkzZGI3ODgtMmQwNi00NjdhLWI2OGItZWJlNmJiNGU1ODQ2IgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJNYWMgT1MiCiAgIEdJTVA6VGltZVN0YW1wPSIxNjg4MTUzMjA5MTAxNDUxIgogICBHSU1QOlZlcnNpb249IjIuMTAuMzQiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICB0aWZmOk9yaWVudGF0aW9uPSIxIgogICB4bXA6Q3JlYXRvclRvb2w9IkdJTVAgMi4xMCIKICAgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMzowNjozMFQxMzoyNjo0OC0wNjowMCIKICAgeG1wOk1vZGlmeURhdGU9IjIwMjM6MDY6MzBUMTM6MjY6NDgtMDY6MDAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDozNWQ3MTYyZi0xYWQ1LTQwNWUtODAxOS03NmExMTI4MDI1YmYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTWFjIE9TKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMy0wNi0zMFQxMzoyNjo0OS0wNjowMCIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3JpcHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5gv8dKAAAABmJLR0QA9QAHANj00CgxAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5wYeExoxB4CzXgAAB65JREFUeNrtnF9sFNcVh78z6z8kEwgPTUVxTZqYh2lVbAKVKleuiuEJkGzIAzFSpEQukaoqQUUhiUiLSkRD2hQ1FYmqqnEtUqUK7UPBVozUBzBpUHkproGXrVqXAoKgKg/EZKFre+f0YcftFs967/zz7rrze5y999yd2fn2d8+9ZwZSpUqVKlWqVKmMpb9vcvT9zB90xF6RXo1UYWWllyAcfEzPjKL6ddy7oymEqcJKTBvmmrN7gR8bNt9v550fLG74KIUui3Vft2zN3Ywaf+bm1zTJ79+w4o8Stu/OO7ToNNsUtgJtqqwEEOEGMCEwIo2ceO9+rifx3TvGtdUt0CuwBaVNxRtfuYEwoXDSyjB0Ya1cW1QABoQvEoTa2XkG1W8kc7bygZw7tyFm+GKFsBYB3HmHFneKAyr0oxVmTYIryqDVxIG4QHxsTFcWXF5R2GV4Uw9kLL7/53Vyo+6noCHhAziYa85+L3CvTOZAYmcbIXYF+ACcxTgd7ZukpzBFVmFXRfgAFEthV2GKbN8kPVHHbx/TnhnXG9/0t4JdMy7Z9jHtqWsAI8AXGkI5e/YMIh8k4n5nz55JCL5FCWHfJ+x2lePAAyG6P+Aqx/s+YXfY8dec12fVZQhYGqL7UnUZWnNen61LAGOAL7wTJuGCIWMGgG9RQdg3SY8Lbxi53jxu6MIbYZywfUx7UN6MnrTzZi07oZSBbx9w6J7DN4BXgU7gyTLx3gXOAd+FYoJcopftvPNaVXLBkLlfCPgi54S1kAPuvENLYYpsSOfz06eZJhzTnPCxMV0545It43y3LTgsGYaXN/E3gFtTrNYCPS7sLdenwcKJIye8fPIpe3Sy90WBXkXbihDJhMJQ97Kh1x/Z8k4uEoBlnO8ysAX4C7AK+Caw3we+Q16bNmAUaAm7MKNdXRuYmRmN565r6A46/YwIX2gIawHAJ27xdpCcy3Rh5DfLecbI/f6kvuOLcFoyPF1ulbNjXFu1wFFVNvqNf/Er8kyUcxj87e82UtBB4OEyTa6Qkf7+HY+fjgKg3w1wyIPHzTVnLe9f5vkSCI8D+4C/em3EA/anwOrSQHbeMV6Fi8UFQ7hfTPCFgrDaAO68Q0thmquRpp7+d5qbaWRVJRfsGNdWd4arfvBdXC+bjAA+r6f8ILQaWBV2i8KD75RZuiObTCE0vciPAl/INWfFzjsuMAn8HPgOcB14ZRY+r/3ngM97brngeVuUGDHDV3c5oU6zLXb4vHxQp9lWqZlboNdvCikZnjZmvdj2tmFso2mn53xmKujg5ZNP2XEC2Af0z86v7byjwEcehF3ApVn4cs3Z5cCPvM+aIv1pRl0RDbjymQB8dQeht8letdhSnDnde5MeDuJcF9bKNQsOm8Q20ehk74vzTDv99LDXJzYA8RZWDuaas0tKIJwGrpbA91ngW/Ms0iysCwbomyB89QZhW1Vj69w2kmE48H+vXx8Nd25CcOc07RN0qrEb+FmuOdvkQeiWwLfEc8nX4vzFQrtg0H2/6cIvEoTvvxDqv16taQfUOavXCxp7trysVLOrnUHk18cvtplza1tSfcLM9RuBh8os6Ewn8suFccGgfWTJDiCb6N0t8uE/rCd3kypVSADfBfbYeee653rirYpi5527wCDF1dB479ugLhii6kW25m5i3dedGIRF+DYH3SdaaHmF1VWLLTq3za2p/11JN5FfH7/YZtNJmUiqTxAA9wHP23nn45JjnwEe9bYdAG4BR5OAMJCjhcwbE4OwTuDzNFHV2DK3jRaCV9L49pFw56YwlFQfUwB/CPzazjv/nD3g5Xw/AY4Aa7wtCrXzzk3gV8DmqrhghJrPRCCsL/gQGKlmbIWT9x5zYW/HuLaajtMxrq1eVUzF2CbqXjb0OnAlQJcrXp/YAPzQzjvXSuB7CHib4mrnZor7gF8tccKPKO4FLrwLxrB3GBuEdQYfgDRyAsFNgD5XGjlR8YbM+DrHUi1wNID7HcWnJK1M7Ip6ZMs7OTLSb36fSr/pb+4H4As+xwZzzdkvefDZFCtgSrcatgEvAV/2IFwNHPSJsz9RF4zofrFCWIfwAbx3P9dFGYydP2XQpBb0wlq5JjAwByplY/t5PTWfE3aMa2u5KhiBgSgP6vbvePw0GdlUwQmvBKmC8b7XXM1TjP1t4IuU32o4Afyd4sZ9pGLssv9u89WIhqj5rDjeiL0C9+4o4CwEfGkx9v95MXYJhHE9jgQxv6LCt0Y04tPusUEY0flq5Yn4vkl6XOV45LI0wbWE7ceWBdtMbx/THu9ZwOjua9F7cZ0MU4Mqe3HtvHO4zHS0qvCVzfMSfJLeeDpap9NOPx1bxrAFeyLlg4JrwZ6g8AFcXCfDCM/FkHs+V6vwVVyEiQHCRF7ONCcXjDH3Cw3hIoLvPxA+yBFL2A58GmbaaQnbjz3IkbDjX1ovb4lFLz6F1Qa6LRa9l9bLW7V8jStOLyJAmOyb0UodL8n3yJhAuAjhK3XCTBOOwICRGwquwECmCSeM8/k5YYPljW+eVw00WDi17HwVc8CIOeGCvJZQOzvPACSV+xnlhDHDl76WsLwW42sJ61ra1bVBu7o2VGXsEXuFvp/5pelzX6lSpUqVKlWqVKlSpUpVA/o34/Ptc3zCsREAAAAASUVORK5CYII=",WM={props:{status:{type:String,required:!0},large:{type:Boolean},small:{type:Boolean},scale:{type:Number}},computed:{icons:function(){return PM},scaleFactor:function(){return this.scale?this.scale:this.large?1:this.small?.3:.5},iconStyle:function(){const n=GM.indexOf(wy[this.status]),t=1-(n-1)*.05,e=224*this.scaleFactor*t,r=32*this.scaleFactor*t,v=32*this.scaleFactor*t;return[`background-image: url(${this.icons});`,`background-position-x: -${n*v}px;`,`background-size: ${e}px ${r}px;`,`height: ${v}px;`,`width: ${v}px;`,`padding-top: ${n-1}px;`].join("")}}};function BM(n,t,e,r,v,f){return Vn(),si("div",{style:va(f.iconStyle)},null,4)}const zM=Ns(WM,[["render",BM]]),jM={props:{icon:{type:String},size:{type:String,default:"small"},color:{type:String,default:"white"}},computed:{colorStyle:function(){return{"--iconColor":this.color}}}};function HM(n,t,e,r,v,f){const y=bn("rux-icon");return Vn(),$o(y,{size:e.size,icon:e.icon,style:va(f.colorStyle)},null,8,["size","icon","style"])}const UM=Ns(jM,[["render",HM],["__scopeId","data-v-9af48e85"]]),wy={fatal:"critical",FATAL:"critical",error:"critical",ERROR:"critical",warn:"caution",WARN:"caution",info:"normal",INFO:"normal",debug:"off",DEBUG:"off",critical:"critical",CRITICAL:"critical",serious:"serious",SERIOUS:"serious",caution:"caution",CAUTION:"caution",normal:"normal",NORMAL:"normal",standby:"standby",STANDBY:"standby",off:"off",OFF:"OFF"},td={fatal:"#ff69B4",critical:"#ff3838",serious:"#ffb302",caution:"#fce83a",normal:"#56f000",standby:"#2dccff",off:"#a4abb6"},VM=function(n){const t="#000000",e="#ffffff",r=td[wy[n]];if(r){const v=+`0x${r.slice(1,3)}`,f=+`0x${r.slice(3,5)}`,y=+`0x${r.slice(5,7)}`;if((v*299+f*587+y*114)/1e3>128)return t}return e},GM=Object.keys(td),KM={astro:{component:n=>Os(UM,{...n})},"astro-status":{component:n=>Os(zM,{...n,status:n.icon})}},qM={extras:{component:n=>Os(D0,{...n})}},by="single-spa:app-change",YM={data(){return{show:!1}},created(){window.addEventListener(by,this.handleAppChange)},mounted(){setTimeout(()=>{this.show=gp().length===0},150)},unmounted(){window.removeEventListener(by,this.handleAppChange)},methods:{handleAppChange:function(n){this.show=!n.detail.appsByNewStatus.MOUNTED}}},XM={class:"mx-1"};function QM(n,t,e,r,v,f){const y=bn("v-card-title"),C=bn("v-card-text"),h=bn("v-card");return v.show?(Vn(),$o(h,{key:0},{default:er(()=>[pn(y,null,{default:er(()=>t[0]||(t[0]=[ai(" 404 Not Found ",-1)])),_:1,__:[0]}),pn(C,{class:"d-flex align-center mt-3"},{default:er(()=>[t[1]||(t[1]=ai(" The requested URL ",-1)),ji("code",XM,li(n.$route.fullPath),1),t[2]||(t[2]=ai(" was not routable. ",-1)),t[3]||(t[3]=ji("span",{class:"text-h3 mx-1"}," 🦄 ",-1))]),_:1,__:[1,2,3]})]),_:1})):Mo("",!0)}const xy=[{path:"/",name:"TableManager",component:()=>nt(()=>tt.import("./TableManager-fb0cd8539b34dc365e93.js"),void 0)},{path:"/:pathMatch(.*)*",name:"NotFound",component:Ns(YM,[["render",QM]])}];xy.forEach(yp);const ZM=dp({history:pp(),routes:xy}),JM={dark:!0,colors:{primary:"#005A8F",secondary:"#4DACFF",tertiary:"#BBC1C9","openc3-green":"#56f000","openc3-yellow":"#fce83a","openc3-red":"#ff3838","openc3-blue":"#2dccff","openc3-purple":"#c800c8","openc3-black":"#ffffff","openc3-white":"#ffffff"}},eT={data:function(){return{show:!1,params:{title:"Title",text:"The text that is displayed",okText:"Ok",okClass:"primary",validateText:"CONFIRM",cancelText:"Cancel",html:!1},resolve:null,reject:null,validationText:null,rules:{required:n=>!!n||"Required.",match:n=>n===this.params.validateText||"Value mismatch."}}},computed:{dataTestOk:function(){return`confirm-dialog-${this.params.okText.toLowerCase()}`},dataTestCancel:function(){return`confirm-dialog-${this.params.cancelText.toLowerCase()}`}},methods:{dialog:function(n,t,e){this.params=n,this.show=!0,this.resolve=t,this.reject=e},ok:function(){(!this.params.validateText||this.params.validateText===this.validationText)&&(this.show=!1,this.resolve(!0),this.refresh())},cancel:function(){this.show=!1,this.reject(!0),this.refresh()},refresh:function(){this.validationText=""}}},tT=["innerHTML"],nT={key:2},rT={key:3,class:"validate mt-4"};function iT(n,t,e,r,v,f){const y=bn("v-spacer"),C=bn("v-toolbar"),h=bn("v-icon"),p=bn("v-text-field"),s=bn("v-card-text"),a=bn("v-btn"),c=bn("v-card-actions"),l=bn("v-card"),o=bn("v-dialog"),u=bn("v-app");return Vn(),$o(u,null,{default:er(()=>[pn(o,{modelValue:n.show,"onUpdate:modelValue":t[1]||(t[1]=d=>n.show=d),width:"600"},{default:er(()=>[pn(l,null,{default:er(()=>[pn(C,{height:"24"},{default:er(()=>[pn(y),ji("span",null,li(n.params.title),1),pn(y)]),_:1}),pn(s,{class:"mt-4 pa-3"},{default:er(()=>[n.params.validateText?(Vn(),$o(h,{key:0,class:"mr-2"},{default:er(()=>t[2]||(t[2]=[ai(" mdi-alert ",-1)])),_:1,__:[2]})):Mo("",!0),n.params.html?(Vn(),si("span",{key:1,innerHTML:n.params.text},null,8,tT)):(Vn(),si("span",nT,li(n.params.text),1)),n.params.validateText?(Vn(),si("div",rT,[ai(" Enter "+li(n.params.validateText)+" to confirm! ",1),pn(p,{modelValue:n.validationText,"onUpdate:modelValue":t[0]||(t[0]=d=>n.validationText=d),variant:"solo",density:"compact","single-line":"",rules:[n.rules.required,n.rules.match],"data-test":"confirm-dialog-validate"},null,8,["modelValue","rules"])])):Mo("",!0)]),_:1}),pn(c,{class:"px-2"},{default:er(()=>[pn(y),n.params.cancelText?(Vn(),$o(a,{key:0,variant:"outlined","data-test":f.dataTestCancel,onClick:f.cancel},{default:er(()=>[ai(li(n.params.cancelText),1)]),_:1},8,["data-test","onClick"])):Mo("",!0),pn(a,{variant:"flat",color:n.params.okClass,"data-test":f.dataTestOk,onClick:f.ok},{default:er(()=>[ai(li(n.params.okText),1)]),_:1},8,["color","data-test","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})}const oT=Ns(eT,[["render",iT],["__scopeId","data-v-de532a0f"]]);class sT{constructor(){this.mounted=!1,this.$root=null}mount(){if(this.mounted)return;const t=window.Vue.createApp(oT);t.use(rd);const e=document.createElement("div");document.querySelector("#openc3-app-toolbar > div").appendChild(e),this.$root=t.mount(e),this.mounted=!0}open({title:t,text:e,okText:r,okClass:v,validateText:f,cancelText:y,html:C}){return this.mount(),new Promise((h,p)=>{this.$root.dialog({title:t,text:e,okText:r,okClass:v,validateText:f,cancelText:y,html:C},h,p)})}confirm(t,{okText:e="Ok",cancelText:r="Cancel",okClass:v="primary"}){return this.open({title:"Confirm",text:t,okText:e,okClass:v,validateText:null,cancelText:r,html:!1})}alert(t,{okText:e="Ok",html:r=!1,okClass:v="primary"}){return this.open({title:"Alert",text:t,okText:e,okClass:v,validateText:null,cancelText:null,html:r})}validate(t,{okText:e="Ok",validateText:r="CONFIRM",cancelText:v="Cancel",okClass:f="primary"}){return this.open({title:"Confirm",text:t,okText:e,okClass:f,validateText:r,cancelText:v,html:!1})}}const aT={install(n,t){const e=new sT;n.provide("dialog",e),n.config.globalProperties.hasOwnProperty("$dialog")||(n.config.globalProperties.$dialog=e)}},lT={data:function(){return{showToast:!1,expanded:!1,toastNotification:{title:"Title here",body:"This is the notification body",message:"Overall message here"},timeout:null,noToastPaths:["/login"]}},computed:{toastNotificationIcon:function(){switch(this.toastNotification.type){case"notification":return"mdi-bell";case"alert":default:return"mdi-alert-box"}},toastStyle:function(){return`
1496
+ --toast-bg-color:${td[this.toastNotification.level]};
1497
+ --toast-fg-color:${VM(this.toastNotification.level)};
1498
+ `},contentStyle:function(){return`
1499
+ white-space: ${this.expanded?"normal":"nowrap"};
1500
+ overflow-x: ${this.expanded?"visible":"hidden"};
1501
+ text-overflow: ${this.expanded?"unset":"ellipsis"};
1502
+ `}},methods:{toast:function(n,t){this.noToastPaths.includes(window.location.pathname)||(t===void 0&&(t=5e3),this.toastNotification=n,this.showToast=!0,this.cancelAutohide(),t&&(this.timeout=setTimeout(()=>{this.hide()},t)))},hide:function(){this.cancelAutohide(),this.showToast=!1},cancelAutohide:function(){this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},expand:function(){this.cancelAutohide(),this.expanded=!0}}},cT={key:0,class:"text-subtitle-1 mr-1 notification-text"},uT={key:1,class:"text-body-2 notification-text"},hT={key:2,class:"text-body-2 notification-text"};function dT(n,t,e,r,v,f){const y=bn("v-icon"),C=bn("v-spacer"),h=bn("v-btn"),p=bn("v-sheet"),s=bn("v-slide-y-transition");return Vn(),$o(s,null,{default:er(()=>[lp(pn(p,{style:va(f.toastStyle),class:"toast-notification",onClick:f.expand},{default:er(()=>[pn(y,{class:"mr-1 notification-text"},{default:er(()=>[ai(li(f.toastNotificationIcon),1)]),_:1}),ji("div",{class:"toast-content",style:va(f.contentStyle)},[n.toastNotification.title?(Vn(),si("span",cT,[n.toastNotification.body||n.toastNotification.message?(Vn(),si(qc,{key:0},[ai(li(n.toastNotification.title)+": ",1)],64)):(Vn(),si(qc,{key:1},[ai(li(n.toastNotification.title),1)],64))])):Mo("",!0),n.toastNotification.body?(Vn(),si("span",uT,li(n.toastNotification.body),1)):Mo("",!0),n.toastNotification.message?(Vn(),si("span",hT,li(n.toastNotification.message),1)):Mo("",!0)],4),pn(C),pn(h,{variant:"text",class:"notification-text",onClick:cp(f.hide,["stop"])},{default:er(()=>t[0]||(t[0]=[ai(" Dismiss ",-1)])),_:1,__:[0]},8,["onClick"])]),_:1},8,["style","onClick"]),[[up,n.showToast]])]),_:1})}const pT=Ns(lT,[["render",dT],["__scopeId","data-v-84833581"]]);class gT{constructor(t={}){var e;this.$store=t.store,this.mounted=!1,this.$root=null,(e=window.$cosmosNotify)!=null&&e.$root?(this.mounted=!0,this.$root=window.$cosmosNotify.$root):window.$cosmosNotify=this}mount(){if(this.mounted)return;const t=Kc(pT);t.use(rd);const e=document.createElement("div");document.querySelector("#openc3-app-toolbar > div").appendChild(e),this.$root=t.mount(e),this.mounted=!0}open({method:t,title:e,body:r,message:v,level:f,duration:y,type:C="alert",logToConsole:h=!1,saveToHistory:p=!0}){this.mount(),h&&console.log(v?`${f.toUpperCase()} - ${v}`:`${f.toUpperCase()} - ${e}: ${r}`),p&&this.$store.commit("notifyAddHistory",{title:e,body:r,message:v,level:f}),this[t]({title:e,body:r,message:v,level:f,duration:y,type:C})}toast({title:t,body:e,message:r,level:v,duration:f,type:y}){this.$root.toast({title:t,body:e,message:r,level:v,type:y},f)}critical({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"critical",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}FATAL(t){this.critical(t)}ERROR(t){this.critical(t)}serious({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"serious",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}caution({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"caution",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}WARN(t){this.caution(t)}normal({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"normal",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}INFO(t){this.normal(t)}DEBUG(t){this.normal(t)}standby({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"standby",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}off({title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C}){this.open({method:"toast",level:"off",title:t,body:e,message:r,type:v,duration:f,logToConsole:y,saveToHistory:C})}}const fT={install(n,t){const e=new gT(t);n.provide("notify",e),n.config.globalProperties.hasOwnProperty("$notify")||(n.config.globalProperties.$notify=e)}},Cy=100,ky=fp({state(){return{notifyHistory:[],namedWidgets:{},playback:{playbackMode:null,playbackDateTime:null,playbackStep:1}}},getters:{namedWidget:n=>t=>n.namedWidgets[t]},mutations:{notifyAddHistory(n,t){n.notifyHistory.length>=Cy&&(n.notifyHistory.length=Cy-1),n.notifyHistory.unshift(t)},notifyClearHistory(n){n.notifyHistory=[]},setNamedWidget(n,t){Object.assign(n.namedWidgets,t)},clearNamedWidget(n,t){delete n.namedWidgets[t]},playback(n,t){Object.assign(n.playback,t)}},modules:{}});function Ay(n){let t;return n!==null&&typeof n=="object"&&((t=Object.getPrototypeOf(n))===Object.prototype||t===null)}function mT(n,t){const e={};for(const r of t)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r]);return e}function _y(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},e=arguments.length>2?arguments[2]:void 0;const r={};for(const v in n)r[v]=n[v];for(const v in t){const f=n[v],y=t[v];if(Ay(f)&&Ay(y)){r[v]=_y(f,y,e);continue}if(e&&Array.isArray(f)&&Array.isArray(y)){r[v]=e(f,y);continue}r[v]=y}return r}function Ua(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(Ua.cache.has(n))return Ua.cache.get(n);const t=n.replace(/[^a-z]/gi,"-").replace(/\B([A-Z])/g,"-$1").toLowerCase();return Ua.cache.set(n,t),t}Ua.cache=new Map;function vT(n){tp(`Vuetify: ${n}`)}function Sy(n,t){return e=>Object.keys(n).reduce((r,v)=>{const f=typeof n[v]=="object"&&n[v]!=null&&!Array.isArray(n[v])?n[v]:{type:n[v]};return e&&v in e?r[v]={...f,default:e[v]}:r[v]=f,t&&!r[v].source&&(r[v].source=t),r},{})}function $y(n,t){const e=sp();if(!e)throw new Error(`[Vuetify] ${n} must be called from inside a setup function`);return e}function yT(n){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$y("injectSelf");const{provides:e}=t;if(e&&n in e)return e[n]}const nd=Symbol.for("vuetify:defaults");function My(){const n=np(nd);if(!n)throw new Error("[Vuetify] Could not find defaults instance");return n}function wT(n,t){return n.props&&(typeof n.props[t]<"u"||typeof n.props[Ua(t)]<"u")}function bT(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:My();const r=$y("useDefaults");if(t=t??r.type.name??r.type.__name,!t)throw new Error("[Vuetify] Could not determine component name");const v=Gc(()=>{var h;return(h=e.value)==null?void 0:h[n._as??t]}),f=new Proxy(n,{get(h,p){var s,a,c,l;const o=Reflect.get(h,p);if(p==="class"||p==="style")return[(s=v.value)==null?void 0:s[p],o].filter(w=>w!=null);if(wT(r.vnode,p))return o;const u=(a=v.value)==null?void 0:a[p];if(u!==void 0)return u;const d=(l=(c=e.value)==null?void 0:c.global)==null?void 0:l[p];return d!==void 0?d:o}}),y=rp();ip(()=>{if(v.value){const h=Object.entries(v.value).filter(p=>{let[s]=p;return s.startsWith(s[0].toUpperCase())});y.value=h.length?Object.fromEntries(h):void 0}else y.value=void 0});function C(){const h=yT(nd,r);ap(nd,Gc(()=>y.value?_y((h==null?void 0:h.value)??{},y.value):h==null?void 0:h.value))}return{props:f,provideSubDefaults:C}}function uc(n){if(n._setup=n._setup??n.setup,!n.name)return vT("The component is missing an explicit name, unable to generate default prop value"),n;if(n._setup){n.props=Sy(n.props??{},n.name)();const t=Object.keys(n.props).filter(e=>e!=="class"&&e!=="style");n.filterProps=function(e){return mT(e,t)},n.props._as=String,n.setup=function(e,r){const v=My();if(!v.value)return n._setup(e,r);const{props:f,provideSubDefaults:y}=bT(e,e._as??n.name,v),C=n._setup(f,r);return y(),C}}return n}function xT(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return t=>(n?uc:ep)(t)}const CT=[String,Function,Object,Array],hc=Sy({icon:{type:CT},tag:{type:[String,Object,Function],required:!0}},"icon");xT()({name:"VComponentIcon",props:hc(),setup(n,t){let{slots:e}=t;return()=>{const r=n.icon;return pn(n.tag,null,{default:()=>{var v;return[n.icon?pn(r,null,null):(v=e.default)==null?void 0:v.call(e)]}})}}}),uc({name:"VSvgIcon",inheritAttrs:!1,props:hc(),setup(n,t){let{attrs:e}=t;return()=>pn(n.tag,hp(e,{style:null}),{default:()=>[ji("svg",{class:"v-icon__svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",role:"img","aria-hidden":"true"},[Array.isArray(n.icon)?n.icon.map(r=>Array.isArray(r)?ji("path",{d:r[0],"fill-opacity":r[1]},null):ji("path",{d:r},null)):ji("path",{d:n.icon},null)])]})}}),uc({name:"VLigatureIcon",props:hc(),setup(n){return()=>pn(n.tag,null,{default:()=>[n.icon]})}});const kT=uc({name:"VClassIcon",props:hc(),setup(n){return()=>pn(n.tag,{class:op(n.icon)},null)}}),AT={component:n=>Os(kT,{...n,class:"mdi"})},rd=mp({theme:{defaultTheme:"cosmosDark",themes:{cosmosDark:JM}},icons:{defaultSet:"mdi",sets:{mdi:AT,...KM,...qM}}}),id=C0({createApp:Kc,appOptions:{render(){return Os(E0,{})},el:"#openc3-tool"},handleInstance:n=>{n.use(ZM),n.use(ky),n.use(rd),n.use(aT),n.use(fT,{store:ky})}}),vN=kr("b",id.bootstrap),yN=kr("m",id.mount),wN=kr("u",id.unmount)}}});