camera.ui3 0.0.34-alpha.6 → 0.0.35-test.2
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.
- package/CHANGELOG.md +8 -0
- package/CONTRIBUTING.md +1 -0
- package/LICENSE.md +22 -0
- package/README.md +1 -0
- package/dist/{server/bin/cameraui.d.ts → cameraui.d.ts} +24 -17
- package/dist/{server/bin/cameraui.js → cameraui.js} +195 -208
- package/dist/cameraui.js.map +1 -0
- package/dist/installer/base.js.map +1 -0
- package/dist/{server/bin/installer → installer}/darwin.d.ts +0 -8
- package/dist/{server/bin/installer → installer}/darwin.js +9 -49
- package/dist/installer/darwin.js.map +1 -0
- package/dist/{server/bin/installer → installer}/freebsd.js +3 -2
- package/dist/installer/freebsd.js.map +1 -0
- package/dist/{server/bin/installer → installer}/linux.d.ts +1 -1
- package/dist/{server/bin/installer → installer}/linux.js +9 -24
- package/dist/installer/linux.js.map +1 -0
- package/dist/{server/bin/installer → installer}/win32.js +4 -2
- package/dist/installer/win32.js.map +1 -0
- package/dist/{server/bin/logger.js → logger.js} +2 -2
- package/dist/logger.js.map +1 -0
- package/dist/manager.d.ts +26 -0
- package/dist/manager.js +203 -0
- package/dist/manager.js.map +1 -0
- package/nodemon.json +14 -0
- package/package.json +21 -88
- package/dist/interface/@babel.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@intlify.DXtFJcML.0.0.34-alpha.6.js +0 -15
- package/dist/interface/@mdi.C1UTQKuc.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@react-dnd.CcwRs9xb.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@socket.io.Dkula2eQ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@tanstack.COISQUaa.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@turf.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@vee-validate.vQEQxxhx.0.0.34-alpha.6.js +0 -5
- package/dist/interface/@vue.2olsU3zX.0.0.34-alpha.6.js +0 -17
- package/dist/interface/@vueform.CPzo51Ad.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@vueuse.D9NHhWYc.0.0.34-alpha.6.js +0 -1
- package/dist/interface/@xterm.DqCFPTCA.0.0.34-alpha.6.js +0 -66
- package/dist/interface/Account.C8tdLL9c.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Adminpanel.CCt65nrb.0.0.34-alpha.6.js +0 -2
- package/dist/interface/Appearance.HvJsFiT3.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Backup.CSkOoG27.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Camera.CpRZjMgc.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Cameras.DjwMkoT7.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Camview.o4nbp_Qw.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Config.CQCi3KNu.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Console.Dkyww3wB.0.0.34-alpha.6.js +0 -4
- package/dist/interface/FirstSteps.Bmr0_gA-.0.0.34-alpha.6.js +0 -1
- package/dist/interface/NewCamera.Bs1_J7Ad.0.0.34-alpha.6.js +0 -448
- package/dist/interface/Plugin.C8Vz5xoF.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Plugins.CZL0KQFh.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Recordings.B6pZqLF3.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Recordings.BEvZE5cV.0.0.34-alpha.6.js +0 -1
- package/dist/interface/Settings.C997IgdZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/System.DuQ37voG.0.0.34-alpha.6.js +0 -4
- package/dist/interface/User.DlMcGeNz.0.0.34-alpha.6.js +0 -1
- package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.xZXGs5pk.0.0.34-alpha.6.js +0 -2
- package/dist/interface/VConsole.DNiPpzW6.0.0.34-alpha.6.js +0 -1
- package/dist/interface/VPlayer.CUKkadJU.0.0.34-alpha.6.js +0 -4
- package/dist/interface/VPluginCard.B7M71ABH.0.0.34-alpha.6.js +0 -4
- package/dist/interface/ace-builds.DndaCQ18.0.0.34-alpha.6.js +0 -970
- package/dist/interface/apexcharts.6HWN1GNB.0.0.34-alpha.6.js +0 -795
- package/dist/interface/assets/@vueform.0.0.34-alpha.6.CroAHJs8.css +0 -1
- package/dist/interface/assets/@xterm.0.0.34-alpha.6.CFbL2ovg.css +0 -32
- package/dist/interface/assets/Account.0.0.34-alpha.6.J7oAjogS.css +0 -1
- package/dist/interface/assets/Adminpanel.0.0.34-alpha.6.a3t1v3MB.css +0 -1
- package/dist/interface/assets/Backup.0.0.34-alpha.6.CX0rT0QJ.css +0 -1
- package/dist/interface/assets/Camera.0.0.34-alpha.6.D1I-fW4q.css +0 -1
- package/dist/interface/assets/Cameras.0.0.34-alpha.6.Buf1Dgce.css +0 -1
- package/dist/interface/assets/Camview.0.0.34-alpha.6.B7Cja2ry.css +0 -1
- package/dist/interface/assets/Config.0.0.34-alpha.6.DNGo2krN.css +0 -1
- package/dist/interface/assets/Console.0.0.34-alpha.6.Bh8l9QnM.css +0 -1
- package/dist/interface/assets/FirstSteps.0.0.34-alpha.6.sPEcItZ6.css +0 -1
- package/dist/interface/assets/NewCamera.0.0.34-alpha.6.Cq8GzeJ7.css +0 -1
- package/dist/interface/assets/Plugin.0.0.34-alpha.6.DJbgaQc1.css +0 -1
- package/dist/interface/assets/Plugins.0.0.34-alpha.6.DXSoO9M1.css +0 -1
- package/dist/interface/assets/Settings.0.0.34-alpha.6.CVmui2kE.css +0 -1
- package/dist/interface/assets/User.0.0.34-alpha.6.BiGtIFqt.css +0 -1
- package/dist/interface/assets/VConsole.0.0.34-alpha.6.BCqKHpmJ.css +0 -1
- package/dist/interface/assets/VPlayer.0.0.34-alpha.6.DNtDNhfg.css +0 -1
- package/dist/interface/assets/VPluginCard.0.0.34-alpha.6.C8Lj6X-J.css +0 -1
- package/dist/interface/assets/highlight.0.0.34-alpha.6.Ch2EwETz.css +0 -1
- package/dist/interface/assets/logo-256.0.0.34-alpha.6.BCQk9H1-.png +0 -0
- package/dist/interface/assets/logo-512.0.0.34-alpha.6.DLKVOU2S.png +0 -0
- package/dist/interface/assets/logo.0.0.34-alpha.6.DmEiRk0z.png +0 -0
- package/dist/interface/assets/main.0.0.34-alpha.6.DNhh__S1.css +0 -1
- package/dist/interface/assets/mode-json.0.0.34-alpha.6.Br7xisR1.js +0 -275
- package/dist/interface/assets/mode-yaml.0.0.34-alpha.6.CIYL8U3d.js +0 -395
- package/dist/interface/assets/vue3-toastify.0.0.34-alpha.6.DHXAGmwn.css +0 -1
- package/dist/interface/assets/vuetify.0.0.34-alpha.6.CgGsw6iO.css +0 -5
- package/dist/interface/axios.C-n2IhIP.0.0.34-alpha.6.js +0 -6
- package/dist/interface/birpc.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/browserconfig.xml +0 -11
- package/dist/interface/compare-versions.DqEOhma6.0.0.34-alpha.6.js +0 -1
- package/dist/interface/dijkstrajs.D_NXgYpA.0.0.34-alpha.6.js +0 -1
- package/dist/interface/dnd-core.DjhjiPK9.0.0.34-alpha.6.js +0 -1
- package/dist/interface/draggabilly.CzAcRWAL.0.0.34-alpha.6.js +0 -6
- package/dist/interface/engine.io-client.CMjMz_QZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/engine.io-parser.BiEtp6m2.0.0.34-alpha.6.js +0 -1
- package/dist/interface/entities.C20TfXL6.0.0.34-alpha.6.js +0 -1
- package/dist/interface/ev-emitter.DdBIoR-C.0.0.34-alpha.6.js +0 -1
- package/dist/interface/fast-deep-equal.BPvnHGwn.0.0.34-alpha.6.js +0 -1
- package/dist/interface/fonts/Inter/Inter-Regular.ttf +0 -0
- package/dist/interface/get-size.D1dS-IaP.0.0.34-alpha.6.js +0 -5
- package/dist/interface/highlight.js.D0GppvQT.0.0.34-alpha.6.js +0 -2
- package/dist/interface/hookable.B8xFkYCm.0.0.34-alpha.6.js +0 -1
- package/dist/interface/index.html +0 -374
- package/dist/interface/linkify-it.BnwKCzGP.0.0.34-alpha.6.js +0 -1
- package/dist/interface/main.CjELdG9A.0.0.34-alpha.6.js +0 -5
- package/dist/interface/manifest.webmanifest +0 -1
- package/dist/interface/markdown-it.BmdsAkr5.0.0.34-alpha.6.js +0 -15
- package/dist/interface/mdurl.k9Sl0PQj.0.0.34-alpha.6.js +0 -2
- package/dist/interface/nprogress.CO0HPuzU.0.0.34-alpha.6.js +0 -2
- package/dist/interface/perfect-debounce.Cp2ysxOb.0.0.34-alpha.6.js +0 -1
- package/dist/interface/pinia.CBIup3aH.0.0.34-alpha.6.js +0 -5
- package/dist/interface/plugins.DkVCVMms.0.0.34-alpha.6.js +0 -1
- package/dist/interface/point-in-polygon-hao.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/punycode.js.Dj65hjkv.0.0.34-alpha.6.js +0 -1
- package/dist/interface/pwa/apple-splash-landscape-dark-1136x640.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-1334x750.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-1792x828.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2048x1536.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2160x1620.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2208x1242.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2224x1668.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2388x1668.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2436x1125.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2532x1170.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2556x1179.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2688x1242.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2732x2048.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2778x1284.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-dark-2796x1290.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-1136x640.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-1334x750.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-1792x828.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2048x1536.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2160x1620.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2208x1242.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2224x1668.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2388x1668.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2436x1125.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2532x1170.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2556x1179.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2688x1242.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2732x2048.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2778x1284.png +0 -0
- package/dist/interface/pwa/apple-splash-landscape-light-2796x1290.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1125x2436.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1170x2532.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1179x2556.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1242x2208.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1242x2688.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1284x2778.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1290x2796.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1536x2048.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1620x2160.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1668x2224.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-1668x2388.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-2048x2732.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-640x1136.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-750x1334.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-dark-828x1792.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1125x2436.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1170x2532.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1179x2556.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1242x2208.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1242x2688.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1284x2778.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1290x2796.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1536x2048.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1620x2160.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1668x2224.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-1668x2388.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-2048x2732.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-640x1136.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-750x1334.png +0 -0
- package/dist/interface/pwa/apple-splash-portrait-light-828x1792.png +0 -0
- package/dist/interface/pwa/apple-touch-icon-180x180.png +0 -0
- package/dist/interface/pwa/favicon-16.ico +0 -0
- package/dist/interface/pwa/favicon-32.ico +0 -0
- package/dist/interface/pwa/favicon-48.ico +0 -0
- package/dist/interface/pwa/favicon-64.ico +0 -0
- package/dist/interface/pwa/logo.svg +0 -1
- package/dist/interface/pwa/maskable-icon-1240x600.png +0 -0
- package/dist/interface/pwa/maskable-icon-512x512.png +0 -0
- package/dist/interface/pwa/maskable-icon-620x300.png +0 -0
- package/dist/interface/pwa/pwa-1024x1024.png +0 -0
- package/dist/interface/pwa/pwa-120x120.png +0 -0
- package/dist/interface/pwa/pwa-144x144.png +0 -0
- package/dist/interface/pwa/pwa-152x152.png +0 -0
- package/dist/interface/pwa/pwa-167x167.png +0 -0
- package/dist/interface/pwa/pwa-180x180.png +0 -0
- package/dist/interface/pwa/pwa-192x192.png +0 -0
- package/dist/interface/pwa/pwa-24x24.png +0 -0
- package/dist/interface/pwa/pwa-300x300.png +0 -0
- package/dist/interface/pwa/pwa-36x36.png +0 -0
- package/dist/interface/pwa/pwa-48x48.png +0 -0
- package/dist/interface/pwa/pwa-50x50.png +0 -0
- package/dist/interface/pwa/pwa-64x64.png +0 -0
- package/dist/interface/pwa/pwa-72x72.png +0 -0
- package/dist/interface/pwa/pwa-88x88.png +0 -0
- package/dist/interface/pwa/pwa-96x96.png +0 -0
- package/dist/interface/qrcode.BgXQ059Y.0.0.34-alpha.6.js +0 -8
- package/dist/interface/react-dnd-html5-backend.1HQjlkwI.0.0.34-alpha.6.js +0 -2
- package/dist/interface/react-dnd-touch-backend.CuSdTpqi.0.0.34-alpha.6.js +0 -1
- package/dist/interface/redux.CuxFRhX_.0.0.34-alpha.6.js +0 -1
- package/dist/interface/registerSW.js +0 -1
- package/dist/interface/robots.txt +0 -2
- package/dist/interface/rxjs.DKQuv6LI.0.0.34-alpha.6.js +0 -3
- package/dist/interface/socket.io-client.Ba2QhaSK.0.0.34-alpha.6.js +0 -1
- package/dist/interface/socket.io-parser.CT0tlhnF.0.0.34-alpha.6.js +0 -1
- package/dist/interface/sw.js +0 -1
- package/dist/interface/sweepline-intersections.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/system.DBHlJaL3.0.0.34-alpha.6.js +0 -1
- package/dist/interface/tslib.9k7AwCpt.0.0.34-alpha.6.js +0 -1
- package/dist/interface/types.Cz9TaZAP.0.0.34-alpha.6.js +0 -1
- package/dist/interface/uc.micro.kMc2yuuw.0.0.34-alpha.6.js +0 -1
- package/dist/interface/unidragger.bJ3WxeD3.0.0.34-alpha.6.js +0 -5
- package/dist/interface/utils.mAKpSMLY.0.0.34-alpha.6.js +0 -1
- package/dist/interface/uuid.DvF23Exx.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vee-validate.CghN0yPF.0.0.34-alpha.6.js +0 -5
- package/dist/interface/vue-i18n.DvwV0jjJ.0.0.34-alpha.6.js +0 -5
- package/dist/interface/vue-inline-svg.DXN-QH0U.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vue-router.DbntwPAd.0.0.34-alpha.6.js +0 -5
- package/dist/interface/vue.l0sNRNKZ.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vue3-apexcharts.Ep6IiXnK.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vue3-dnd._duUsn6W.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vue3-toastify.B0t5Ra1T.0.0.34-alpha.6.js +0 -1
- package/dist/interface/vuetify.dlIDGkOi.0.0.34-alpha.6.js +0 -5
- package/dist/interface/workbox-3e911b1d.js +0 -1
- package/dist/interface/zod.DnW1_kUe.0.0.34-alpha.6.js +0 -1
- package/dist/server/bin/cameraui.js.map +0 -1
- package/dist/server/bin/installer/base.js.map +0 -1
- package/dist/server/bin/installer/darwin.js.map +0 -1
- package/dist/server/bin/installer/freebsd.js.map +0 -1
- package/dist/server/bin/installer/linux.js.map +0 -1
- package/dist/server/bin/installer/win32.js.map +0 -1
- package/dist/server/bin/logger.js.map +0 -1
- package/dist/server/package.json +0 -139
- package/dist/server/requirements.txt +0 -14
- package/dist/server/src/api/controllers/api.controller.d.ts +0 -7
- package/dist/server/src/api/controllers/api.controller.js +0 -14
- package/dist/server/src/api/controllers/api.controller.js.map +0 -1
- package/dist/server/src/api/controllers/auth.controller.d.ts +0 -16
- package/dist/server/src/api/controllers/auth.controller.js +0 -233
- package/dist/server/src/api/controllers/auth.controller.js.map +0 -1
- package/dist/server/src/api/controllers/backup.controller.d.ts +0 -10
- package/dist/server/src/api/controllers/backup.controller.js +0 -52
- package/dist/server/src/api/controllers/backup.controller.js.map +0 -1
- package/dist/server/src/api/controllers/cameras.controller.d.ts +0 -38
- package/dist/server/src/api/controllers/cameras.controller.js +0 -632
- package/dist/server/src/api/controllers/cameras.controller.js.map +0 -1
- package/dist/server/src/api/controllers/config.controller.d.ts +0 -14
- package/dist/server/src/api/controllers/config.controller.js +0 -89
- package/dist/server/src/api/controllers/config.controller.js.map +0 -1
- package/dist/server/src/api/controllers/files.controller.d.ts +0 -8
- package/dist/server/src/api/controllers/files.controller.js +0 -28
- package/dist/server/src/api/controllers/files.controller.js.map +0 -1
- package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +0 -11
- package/dist/server/src/api/controllers/frameWorkers.controller.js +0 -93
- package/dist/server/src/api/controllers/frameWorkers.controller.js.map +0 -1
- package/dist/server/src/api/controllers/plugins.controller.d.ts +0 -61
- package/dist/server/src/api/controllers/plugins.controller.js +0 -1353
- package/dist/server/src/api/controllers/plugins.controller.js.map +0 -1
- package/dist/server/src/api/controllers/system.controller.d.ts +0 -21
- package/dist/server/src/api/controllers/system.controller.js +0 -207
- package/dist/server/src/api/controllers/system.controller.js.map +0 -1
- package/dist/server/src/api/controllers/users.controller.d.ts +0 -28
- package/dist/server/src/api/controllers/users.controller.js +0 -509
- package/dist/server/src/api/controllers/users.controller.js.map +0 -1
- package/dist/server/src/api/database/checks.d.ts +0 -55
- package/dist/server/src/api/database/checks.js +0 -183
- package/dist/server/src/api/database/checks.js.map +0 -1
- package/dist/server/src/api/database/constants.d.ts +0 -8
- package/dist/server/src/api/database/constants.js +0 -9
- package/dist/server/src/api/database/constants.js.map +0 -1
- package/dist/server/src/api/database/index.d.ts +0 -31
- package/dist/server/src/api/database/index.js +0 -276
- package/dist/server/src/api/database/index.js.map +0 -1
- package/dist/server/src/api/database/migration.d.ts +0 -13
- package/dist/server/src/api/database/migration.js +0 -113
- package/dist/server/src/api/database/migration.js.map +0 -1
- package/dist/server/src/api/database/selfcheck.d.ts +0 -48
- package/dist/server/src/api/database/selfcheck.js +0 -397
- package/dist/server/src/api/database/selfcheck.js.map +0 -1
- package/dist/server/src/api/database/types.d.ts +0 -100
- package/dist/server/src/api/database/types.js +0 -2
- package/dist/server/src/api/database/types.js.map +0 -1
- package/dist/server/src/api/go2rtc/api/application.d.ts +0 -9
- package/dist/server/src/api/go2rtc/api/application.js +0 -39
- package/dist/server/src/api/go2rtc/api/application.js.map +0 -1
- package/dist/server/src/api/go2rtc/api/config.d.ts +0 -8
- package/dist/server/src/api/go2rtc/api/config.js +0 -44
- package/dist/server/src/api/go2rtc/api/config.js.map +0 -1
- package/dist/server/src/api/go2rtc/api/index.d.ts +0 -1
- package/dist/server/src/api/go2rtc/api/index.js +0 -29
- package/dist/server/src/api/go2rtc/api/index.js.map +0 -1
- package/dist/server/src/api/go2rtc/api/snapshot.d.ts +0 -8
- package/dist/server/src/api/go2rtc/api/snapshot.js +0 -34
- package/dist/server/src/api/go2rtc/api/snapshot.js.map +0 -1
- package/dist/server/src/api/go2rtc/api/streams.d.ts +0 -11
- package/dist/server/src/api/go2rtc/api/streams.js +0 -59
- package/dist/server/src/api/go2rtc/api/streams.js.map +0 -1
- package/dist/server/src/api/go2rtc/index.d.ts +0 -14
- package/dist/server/src/api/go2rtc/index.js +0 -30
- package/dist/server/src/api/go2rtc/index.js.map +0 -1
- package/dist/server/src/api/go2rtc/queue.d.ts +0 -10
- package/dist/server/src/api/go2rtc/queue.js +0 -38
- package/dist/server/src/api/go2rtc/queue.js.map +0 -1
- package/dist/server/src/api/go2rtc/types.d.ts +0 -92
- package/dist/server/src/api/go2rtc/types.js +0 -2
- package/dist/server/src/api/go2rtc/types.js.map +0 -1
- package/dist/server/src/api/index.d.ts +0 -20
- package/dist/server/src/api/index.js +0 -213
- package/dist/server/src/api/index.js.map +0 -1
- package/dist/server/src/api/middlewares/authPermission.middleware.d.ts +0 -5
- package/dist/server/src/api/middlewares/authPermission.middleware.js +0 -28
- package/dist/server/src/api/middlewares/authPermission.middleware.js.map +0 -1
- package/dist/server/src/api/middlewares/authValidation.middleware.d.ts +0 -4
- package/dist/server/src/api/middlewares/authValidation.middleware.js +0 -129
- package/dist/server/src/api/middlewares/authValidation.middleware.js.map +0 -1
- package/dist/server/src/api/middlewares/pagination.middleware.d.ts +0 -3
- package/dist/server/src/api/middlewares/pagination.middleware.js +0 -65
- package/dist/server/src/api/middlewares/pagination.middleware.js.map +0 -1
- package/dist/server/src/api/middlewares/socketAuth.middleware.d.ts +0 -41
- package/dist/server/src/api/middlewares/socketAuth.middleware.js +0 -81
- package/dist/server/src/api/middlewares/socketAuth.middleware.js.map +0 -1
- package/dist/server/src/api/plugins/header.plugin.d.ts +0 -2
- package/dist/server/src/api/plugins/header.plugin.js +0 -13
- package/dist/server/src/api/plugins/header.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/logger.plugin.d.ts +0 -7
- package/dist/server/src/api/plugins/logger.plugin.js +0 -29
- package/dist/server/src/api/plugins/logger.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/socket.plugin.d.ts +0 -11
- package/dist/server/src/api/plugins/socket.plugin.js +0 -12
- package/dist/server/src/api/plugins/socket.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/system.plugin.d.ts +0 -18
- package/dist/server/src/api/plugins/system.plugin.js +0 -22
- package/dist/server/src/api/plugins/system.plugin.js.map +0 -1
- package/dist/server/src/api/plugins/useragent.plugin.d.ts +0 -8
- package/dist/server/src/api/plugins/useragent.plugin.js +0 -10
- package/dist/server/src/api/plugins/useragent.plugin.js.map +0 -1
- package/dist/server/src/api/routes/api.routes.d.ts +0 -2
- package/dist/server/src/api/routes/api.routes.js +0 -7
- package/dist/server/src/api/routes/api.routes.js.map +0 -1
- package/dist/server/src/api/routes/auth.routes.d.ts +0 -2
- package/dist/server/src/api/routes/auth.routes.js +0 -47
- package/dist/server/src/api/routes/auth.routes.js.map +0 -1
- package/dist/server/src/api/routes/backup.routes.d.ts +0 -2
- package/dist/server/src/api/routes/backup.routes.js +0 -23
- package/dist/server/src/api/routes/backup.routes.js.map +0 -1
- package/dist/server/src/api/routes/cameras.routes.d.ts +0 -2
- package/dist/server/src/api/routes/cameras.routes.js +0 -217
- package/dist/server/src/api/routes/cameras.routes.js.map +0 -1
- package/dist/server/src/api/routes/config.routes.d.ts +0 -2
- package/dist/server/src/api/routes/config.routes.js +0 -55
- package/dist/server/src/api/routes/config.routes.js.map +0 -1
- package/dist/server/src/api/routes/files.routes.d.ts +0 -2
- package/dist/server/src/api/routes/files.routes.js +0 -12
- package/dist/server/src/api/routes/files.routes.js.map +0 -1
- package/dist/server/src/api/routes/frameWorkers.routes.d.ts +0 -2
- package/dist/server/src/api/routes/frameWorkers.routes.js +0 -33
- package/dist/server/src/api/routes/frameWorkers.routes.js.map +0 -1
- package/dist/server/src/api/routes/index.d.ts +0 -6
- package/dist/server/src/api/routes/index.js +0 -32
- package/dist/server/src/api/routes/index.js.map +0 -1
- package/dist/server/src/api/routes/plugins.routes.d.ts +0 -2
- package/dist/server/src/api/routes/plugins.routes.js +0 -363
- package/dist/server/src/api/routes/plugins.routes.js.map +0 -1
- package/dist/server/src/api/routes/system.routes.d.ts +0 -2
- package/dist/server/src/api/routes/system.routes.js +0 -83
- package/dist/server/src/api/routes/system.routes.js.map +0 -1
- package/dist/server/src/api/routes/users.routes.d.ts +0 -2
- package/dist/server/src/api/routes/users.routes.js +0 -139
- package/dist/server/src/api/routes/users.routes.js.map +0 -1
- package/dist/server/src/api/schemas/backup.schema.d.ts +0 -118
- package/dist/server/src/api/schemas/backup.schema.js +0 -75
- package/dist/server/src/api/schemas/backup.schema.js.map +0 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +0 -980
- package/dist/server/src/api/schemas/cameras.schema.js +0 -333
- package/dist/server/src/api/schemas/cameras.schema.js.map +0 -1
- package/dist/server/src/api/schemas/config.schema.d.ts +0 -114
- package/dist/server/src/api/schemas/config.schema.js +0 -42
- package/dist/server/src/api/schemas/config.schema.js.map +0 -1
- package/dist/server/src/api/schemas/go2rtc.schema.d.ts +0 -703
- package/dist/server/src/api/schemas/go2rtc.schema.js +0 -180
- package/dist/server/src/api/schemas/go2rtc.schema.js.map +0 -1
- package/dist/server/src/api/schemas/plugins.schema.d.ts +0 -72
- package/dist/server/src/api/schemas/plugins.schema.js +0 -103
- package/dist/server/src/api/schemas/plugins.schema.js.map +0 -1
- package/dist/server/src/api/schemas/system.schema.d.ts +0 -9
- package/dist/server/src/api/schemas/system.schema.js +0 -8
- package/dist/server/src/api/schemas/system.schema.js.map +0 -1
- package/dist/server/src/api/schemas/users.schema.d.ts +0 -1013
- package/dist/server/src/api/schemas/users.schema.js +0 -157
- package/dist/server/src/api/schemas/users.schema.js.map +0 -1
- package/dist/server/src/api/services/auth.service.d.ts +0 -24
- package/dist/server/src/api/services/auth.service.js +0 -191
- package/dist/server/src/api/services/auth.service.js.map +0 -1
- package/dist/server/src/api/services/backup.service.d.ts +0 -11
- package/dist/server/src/api/services/backup.service.js +0 -109
- package/dist/server/src/api/services/backup.service.js.map +0 -1
- package/dist/server/src/api/services/cameras.service.d.ts +0 -57
- package/dist/server/src/api/services/cameras.service.js +0 -790
- package/dist/server/src/api/services/cameras.service.js.map +0 -1
- package/dist/server/src/api/services/plugins.service.d.ts +0 -26
- package/dist/server/src/api/services/plugins.service.js +0 -148
- package/dist/server/src/api/services/plugins.service.js.map +0 -1
- package/dist/server/src/api/services/system.service.d.ts +0 -7
- package/dist/server/src/api/services/system.service.js +0 -23
- package/dist/server/src/api/services/system.service.js.map +0 -1
- package/dist/server/src/api/services/users.service.d.ts +0 -25
- package/dist/server/src/api/services/users.service.js +0 -198
- package/dist/server/src/api/services/users.service.js.map +0 -1
- package/dist/server/src/api/types/index.d.ts +0 -592
- package/dist/server/src/api/types/index.js +0 -9
- package/dist/server/src/api/types/index.js.map +0 -1
- package/dist/server/src/api/utils/cameraSource.d.ts +0 -2
- package/dist/server/src/api/utils/cameraSource.js +0 -34
- package/dist/server/src/api/utils/cameraSource.js.map +0 -1
- package/dist/server/src/api/utils/cert.d.ts +0 -11
- package/dist/server/src/api/utils/cert.js +0 -204
- package/dist/server/src/api/utils/cert.js.map +0 -1
- package/dist/server/src/api/utils/constants.d.ts +0 -13
- package/dist/server/src/api/utils/constants.js +0 -14
- package/dist/server/src/api/utils/constants.js.map +0 -1
- package/dist/server/src/api/utils/fetch.d.ts +0 -2
- package/dist/server/src/api/utils/fetch.js +0 -24
- package/dist/server/src/api/utils/fetch.js.map +0 -1
- package/dist/server/src/api/utils/moveFiles.d.ts +0 -1
- package/dist/server/src/api/utils/moveFiles.js +0 -39
- package/dist/server/src/api/utils/moveFiles.js.map +0 -1
- package/dist/server/src/api/utils/parse.d.ts +0 -2
- package/dist/server/src/api/utils/parse.js +0 -12
- package/dist/server/src/api/utils/parse.js.map +0 -1
- package/dist/server/src/api/websocket/index.d.ts +0 -16
- package/dist/server/src/api/websocket/index.js +0 -76
- package/dist/server/src/api/websocket/index.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/logs.d.ts +0 -17
- package/dist/server/src/api/websocket/nsp/logs.js +0 -151
- package/dist/server/src/api/websocket/nsp/logs.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/main.d.ts +0 -7
- package/dist/server/src/api/websocket/nsp/main.js +0 -8
- package/dist/server/src/api/websocket/nsp/main.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/metrics.d.ts +0 -24
- package/dist/server/src/api/websocket/nsp/metrics.js +0 -169
- package/dist/server/src/api/websocket/nsp/metrics.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/notifications.d.ts +0 -12
- package/dist/server/src/api/websocket/nsp/notifications.js +0 -30
- package/dist/server/src/api/websocket/nsp/notifications.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/plugins.d.ts +0 -13
- package/dist/server/src/api/websocket/nsp/plugins.js +0 -28
- package/dist/server/src/api/websocket/nsp/plugins.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/server.d.ts +0 -26
- package/dist/server/src/api/websocket/nsp/server.js +0 -171
- package/dist/server/src/api/websocket/nsp/server.js.map +0 -1
- package/dist/server/src/api/websocket/nsp/status.d.ts +0 -15
- package/dist/server/src/api/websocket/nsp/status.js +0 -55
- package/dist/server/src/api/websocket/nsp/status.js.map +0 -1
- package/dist/server/src/api/websocket/types.d.ts +0 -41
- package/dist/server/src/api/websocket/types.js +0 -2
- package/dist/server/src/api/websocket/types.js.map +0 -1
- package/dist/server/src/api.d.ts +0 -28
- package/dist/server/src/api.js +0 -109
- package/dist/server/src/api.js.map +0 -1
- package/dist/server/src/camera/controller.d.ts +0 -62
- package/dist/server/src/camera/controller.js +0 -537
- package/dist/server/src/camera/controller.js.map +0 -1
- package/dist/server/src/camera/frameWorker.d.ts +0 -42
- package/dist/server/src/camera/frameWorker.js +0 -305
- package/dist/server/src/camera/frameWorker.js.map +0 -1
- package/dist/server/src/camera/types.d.ts +0 -11
- package/dist/server/src/camera/types.js +0 -2
- package/dist/server/src/camera/types.js.map +0 -1
- package/dist/server/src/go2rtc/index.d.ts +0 -25
- package/dist/server/src/go2rtc/index.js +0 -233
- package/dist/server/src/go2rtc/index.js.map +0 -1
- package/dist/server/src/go2rtc/types.d.ts +0 -14
- package/dist/server/src/go2rtc/types.js +0 -73
- package/dist/server/src/go2rtc/types.js.map +0 -1
- package/dist/server/src/main.d.ts +0 -2
- package/dist/server/src/main.js +0 -112
- package/dist/server/src/main.js.map +0 -1
- package/dist/server/src/nats/index.d.ts +0 -40
- package/dist/server/src/nats/index.js +0 -164
- package/dist/server/src/nats/index.js.map +0 -1
- package/dist/server/src/nats/proxy/cameraDevice.d.ts +0 -22
- package/dist/server/src/nats/proxy/cameraDevice.js +0 -254
- package/dist/server/src/nats/proxy/cameraDevice.js.map +0 -1
- package/dist/server/src/nats/proxy/coreManager.d.ts +0 -14
- package/dist/server/src/nats/proxy/coreManager.js +0 -68
- package/dist/server/src/nats/proxy/coreManager.js.map +0 -1
- package/dist/server/src/nats/proxy/deviceManager.d.ts +0 -14
- package/dist/server/src/nats/proxy/deviceManager.js +0 -101
- package/dist/server/src/nats/proxy/deviceManager.js.map +0 -1
- package/dist/server/src/nats/server.d.ts +0 -38
- package/dist/server/src/nats/server.js +0 -328
- package/dist/server/src/nats/server.js.map +0 -1
- package/dist/server/src/nats/types.d.ts +0 -18
- package/dist/server/src/nats/types.js +0 -2
- package/dist/server/src/nats/types.js.map +0 -1
- package/dist/server/src/nats/utils.d.ts +0 -2
- package/dist/server/src/nats/utils.js +0 -12
- package/dist/server/src/nats/utils.js.map +0 -1
- package/dist/server/src/nats/websocket.d.ts +0 -27
- package/dist/server/src/nats/websocket.js +0 -218
- package/dist/server/src/nats/websocket.js.map +0 -1
- package/dist/server/src/plugins/index.d.ts +0 -29
- package/dist/server/src/plugins/index.js +0 -243
- package/dist/server/src/plugins/index.js.map +0 -1
- package/dist/server/src/plugins/plugin.d.ts +0 -36
- package/dist/server/src/plugins/plugin.js +0 -193
- package/dist/server/src/plugins/plugin.js.map +0 -1
- package/dist/server/src/plugins/types.d.ts +0 -7
- package/dist/server/src/plugins/types.js +0 -3
- package/dist/server/src/plugins/types.js.map +0 -1
- package/dist/server/src/plugins/worker.d.ts +0 -55
- package/dist/server/src/plugins/worker.js +0 -444
- package/dist/server/src/plugins/worker.js.map +0 -1
- package/dist/server/src/services/config/constants.d.ts +0 -7
- package/dist/server/src/services/config/constants.js +0 -67
- package/dist/server/src/services/config/constants.js.map +0 -1
- package/dist/server/src/services/config/index.d.ts +0 -66
- package/dist/server/src/services/config/index.js +0 -462
- package/dist/server/src/services/config/index.js.map +0 -1
- package/dist/server/src/services/config/types.d.ts +0 -157
- package/dist/server/src/services/config/types.js +0 -11
- package/dist/server/src/services/config/types.js.map +0 -1
- package/dist/server/src/services/logger/index.d.ts +0 -16
- package/dist/server/src/services/logger/index.js +0 -67
- package/dist/server/src/services/logger/index.js.map +0 -1
- package/dist/server/src/types.d.ts +0 -7
- package/dist/server/src/types.js +0 -2
- package/dist/server/src/types.js.map +0 -1
- package/localdeps.txt +0 -6
- package/upgrade-server.sh +0 -206
- /package/dist/{server/bin/installer → installer}/base.d.ts +0 -0
- /package/dist/{server/bin/installer → installer}/base.js +0 -0
- /package/dist/{server/bin/installer → installer}/freebsd.d.ts +0 -0
- /package/dist/{server/bin/installer → installer}/win32.d.ts +0 -0
- /package/dist/{server/bin/logger.d.ts → logger.d.ts} +0 -0
|
@@ -1,970 +0,0 @@
|
|
|
1
|
-
import{g as Se}from"./@xterm.DqCFPTCA.0.0.34-alpha.6.js";function Ae(he,fe){for(var I=0;I<fe.length;I++){const x=fe[I];if(typeof x!="string"&&!Array.isArray(x)){for(const H in x)if(H!=="default"&&!(H in he)){const T=Object.getOwnPropertyDescriptor(x,H);T&&Object.defineProperty(he,H,T.get?T:{enumerable:!0,get:()=>x[H]})}}}return Object.freeze(Object.defineProperty(he,Symbol.toStringTag,{value:"Module"}))}const xe="/assets/mode-json.0.0.34-alpha.6.Br7xisR1.js",ke="/assets/mode-yaml.0.0.34-alpha.6.CIYL8U3d.js",Te="data:text/javascript;base64,YWNlLmRlZmluZSgiYWNlL3RoZW1lL3RvbW9ycm93LWNzcyIsWyJyZXF1aXJlIiwiZXhwb3J0cyIsIm1vZHVsZSJdLCBmdW5jdGlvbihyZXF1aXJlLCBleHBvcnRzLCBtb2R1bGUpe21vZHVsZS5leHBvcnRzID0gIi5hY2UtdG9tb3Jyb3cgLmFjZV9ndXR0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICBjb2xvcjogIzRENEQ0Q1xufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfcHJpbnQtbWFyZ2luIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNlxufVxuXG4uYWNlLXRvbW9ycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICM0RDRENENcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2N1cnNvciB7XG4gIGNvbG9yOiAjQUVBRkFEXG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjRDZENkQ2XG59XG5cbi5hY2UtdG9tb3Jyb3cuYWNlX211bHRpc2VsZWN0IC5hY2Vfc2VsZWN0aW9uLmFjZV9zdGFydCB7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMHB4ICNGRkZGRkY7XG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9zdGVwIHtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAwKVxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfbWFya2VyLWxheWVyIC5hY2VfYnJhY2tldCB7XG4gIG1hcmdpbjogLTFweCAwIDAgLTFweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0QxRDFEMVxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfbWFya2VyLWxheWVyIC5hY2VfYWN0aXZlLWxpbmUge1xuICBiYWNrZ3JvdW5kOiAjRUZFRkVGXG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9ndXR0ZXItYWN0aXZlLWxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yIDogI2RjZGNkY1xufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfbWFya2VyLWxheWVyIC5hY2Vfc2VsZWN0ZWQtd29yZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENkQ2RDZcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2ludmlzaWJsZSB7XG4gIGNvbG9yOiAjRDFEMUQxXG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9rZXl3b3JkLFxuLmFjZS10b21vcnJvdyAuYWNlX21ldGEsXG4uYWNlLXRvbW9ycm93IC5hY2Vfc3RvcmFnZSxcbi5hY2UtdG9tb3Jyb3cgLmFjZV9zdG9yYWdlLmFjZV90eXBlLFxuLmFjZS10b21vcnJvdyAuYWNlX3N1cHBvcnQuYWNlX3R5cGUge1xuICBjb2xvcjogIzg5NTlBOFxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2Vfa2V5d29yZC5hY2Vfb3BlcmF0b3Ige1xuICBjb2xvcjogIzNFOTk5RlxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfY29uc3RhbnQuYWNlX2NoYXJhY3Rlcixcbi5hY2UtdG9tb3Jyb3cgLmFjZV9jb25zdGFudC5hY2VfbGFuZ3VhZ2UsXG4uYWNlLXRvbW9ycm93IC5hY2VfY29uc3RhbnQuYWNlX251bWVyaWMsXG4uYWNlLXRvbW9ycm93IC5hY2Vfa2V5d29yZC5hY2Vfb3RoZXIuYWNlX3VuaXQsXG4uYWNlLXRvbW9ycm93IC5hY2Vfc3VwcG9ydC5hY2VfY29uc3RhbnQsXG4uYWNlLXRvbW9ycm93IC5hY2VfdmFyaWFibGUuYWNlX3BhcmFtZXRlciB7XG4gIGNvbG9yOiAjRjU4NzFGXG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9jb25zdGFudC5hY2Vfb3RoZXIge1xuICBjb2xvcjogIzY2Njk2OVxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfaW52YWxpZCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzgyODI5XG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9pbnZhbGlkLmFjZV9kZXByZWNhdGVkIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4OTU5QThcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2ZvbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI3MUFFO1xuICBib3JkZXItY29sb3I6ICM0RDRENENcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2VudGl0eS5hY2VfbmFtZS5hY2VfZnVuY3Rpb24sXG4uYWNlLXRvbW9ycm93IC5hY2Vfc3VwcG9ydC5hY2VfZnVuY3Rpb24sXG4uYWNlLXRvbW9ycm93IC5hY2VfdmFyaWFibGUge1xuICBjb2xvcjogIzQyNzFBRVxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2Vfc3VwcG9ydC5hY2VfY2xhc3MsXG4uYWNlLXRvbW9ycm93IC5hY2Vfc3VwcG9ydC5hY2VfdHlwZSB7XG4gIGNvbG9yOiAjQzk5RTAwXG59XG5cbi5hY2UtdG9tb3Jyb3cgLmFjZV9oZWFkaW5nLFxuLmFjZS10b21vcnJvdyAuYWNlX21hcmt1cC5hY2VfaGVhZGluZyxcbi5hY2UtdG9tb3Jyb3cgLmFjZV9zdHJpbmcge1xuICBjb2xvcjogIzcxOEMwMFxufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfZW50aXR5LmFjZV9uYW1lLmFjZV90YWcsXG4uYWNlLXRvbW9ycm93IC5hY2VfZW50aXR5LmFjZV9vdGhlci5hY2VfYXR0cmlidXRlLW5hbWUsXG4uYWNlLXRvbW9ycm93IC5hY2VfbWV0YS5hY2VfdGFnLFxuLmFjZS10b21vcnJvdyAuYWNlX3N0cmluZy5hY2VfcmVnZXhwLFxuLmFjZS10b21vcnJvdyAuYWNlX3ZhcmlhYmxlIHtcbiAgY29sb3I6ICNDODI4Mjlcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2NvbW1lbnQge1xuICBjb2xvcjogIzhFOTA4Q1xufVxuXG4uYWNlLXRvbW9ycm93IC5hY2VfaW5kZW50LWd1aWRlIHtcbiAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQUVBQUFBQ0NBWUFBQUNaZ2JZbkFBQUFFMGxFUVZRSW1XUDQvLy8vZjRiZHUzZi9Cd0FsZmdjdGR1Qjg1UUFBQUFCSlJVNUVya0pnZ2c9PSkgcmlnaHQgcmVwZWF0LXlcbn1cblxuLmFjZS10b21vcnJvdyAuYWNlX2luZGVudC1ndWlkZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFFQUFBQUNDQVlBQUFDWmdiWW5BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFBWlNVUkJWSGphWXZqLy8vOS9oaXZLeXY4QkFBQUEvLzhEQUNMcUJoYnZrKy9lQUFBQUFFbEZUa1N1UW1DQ1wiKSByaWdodCByZXBlYXQteTtcbn0gXG4iOwoKfSk7CgphY2UuZGVmaW5lKCJhY2UvdGhlbWUvdG9tb3Jyb3ciLFsicmVxdWlyZSIsImV4cG9ydHMiLCJtb2R1bGUiLCJhY2UvdGhlbWUvdG9tb3Jyb3ctY3NzIiwiYWNlL2xpYi9kb20iXSwgZnVuY3Rpb24ocmVxdWlyZSwgZXhwb3J0cywgbW9kdWxlKXtleHBvcnRzLmlzRGFyayA9IGZhbHNlOwpleHBvcnRzLmNzc0NsYXNzID0gImFjZS10b21vcnJvdyI7CmV4cG9ydHMuY3NzVGV4dCA9IHJlcXVpcmUoIi4vdG9tb3Jyb3ctY3NzIik7CnZhciBkb20gPSByZXF1aXJlKCIuLi9saWIvZG9tIik7CmRvbS5pbXBvcnRDc3NTdHJpbmcoZXhwb3J0cy5jc3NUZXh0LCBleHBvcnRzLmNzc0NsYXNzLCBmYWxzZSk7Cgp9KTsgICAgICAgICAgICAgICAgKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIGFjZS5yZXF1aXJlKFsiYWNlL3RoZW1lL3RvbW9ycm93Il0sIGZ1bmN0aW9uKG0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBtb2R1bGUgPT0gIm9iamVjdCIgJiYgdHlwZW9mIGV4cG9ydHMgPT0gIm9iamVjdCIgJiYgbW9kdWxlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGUuZXhwb3J0cyA9IG07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0pKCk7CiAgICAgICAgICAgIA==",Ie="data:text/javascript;base64,YWNlLmRlZmluZSgiYWNlL3RoZW1lL3R3aWxpZ2h0LWNzcyIsWyJyZXF1aXJlIiwiZXhwb3J0cyIsIm1vZHVsZSJdLCBmdW5jdGlvbihyZXF1aXJlLCBleHBvcnRzLCBtb2R1bGUpe21vZHVsZS5leHBvcnRzID0gIi5hY2UtdHdpbGlnaHQgLmFjZV9ndXR0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjMyMzIzO1xuICBjb2xvcjogI0UyRTJFMlxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfcHJpbnQtbWFyZ2luIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogIzIzMjMyM1xufVxuXG4uYWNlLXR3aWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MTQxNDtcbiAgY29sb3I6ICNGOEY4Rjhcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2N1cnNvciB7XG4gIGNvbG9yOiAjQTdBN0E3XG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIyMSwgMjQwLCAyNTUsIDAuMjApXG59XG5cbi5hY2UtdHdpbGlnaHQuYWNlX211bHRpc2VsZWN0IC5hY2Vfc2VsZWN0aW9uLmFjZV9zdGFydCB7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMHB4ICMxNDE0MTQ7XG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9zdGVwIHtcbiAgYmFja2dyb3VuZDogcmdiKDEwMiwgODIsIDApXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9icmFja2V0IHtcbiAgbWFyZ2luOiAtMXB4IDAgMCAtMXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9tYXJrZXItbGF5ZXIgLmFjZV9hY3RpdmUtbGluZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMzEpXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9ndXR0ZXItYWN0aXZlLWxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMxKVxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfbWFya2VyLWxheWVyIC5hY2Vfc2VsZWN0ZWQtd29yZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjIxLCAyNDAsIDI1NSwgMC4yMClcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2ludmlzaWJsZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9rZXl3b3JkLFxuLmFjZS10d2lsaWdodCAuYWNlX21ldGEge1xuICBjb2xvcjogI0NEQTg2OVxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfY29uc3RhbnQsXG4uYWNlLXR3aWxpZ2h0IC5hY2VfY29uc3RhbnQuYWNlX2NoYXJhY3Rlcixcbi5hY2UtdHdpbGlnaHQgLmFjZV9jb25zdGFudC5hY2VfY2hhcmFjdGVyLmFjZV9lc2NhcGUsXG4uYWNlLXR3aWxpZ2h0IC5hY2VfY29uc3RhbnQuYWNlX290aGVyLFxuLmFjZS10d2lsaWdodCAuYWNlX2hlYWRpbmcsXG4uYWNlLXR3aWxpZ2h0IC5hY2VfbWFya3VwLmFjZV9oZWFkaW5nLFxuLmFjZS10d2lsaWdodCAuYWNlX3N1cHBvcnQuYWNlX2NvbnN0YW50IHtcbiAgY29sb3I6ICNDRjZBNENcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2ludmFsaWQuYWNlX2lsbGVnYWwge1xuICBjb2xvcjogI0Y4RjhGODtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4NiwgNDUsIDg2LCAwLjc1KVxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfaW52YWxpZC5hY2VfZGVwcmVjYXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjRDJBOEExXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV9zdXBwb3J0IHtcbiAgY29sb3I6ICM5Qjg1OURcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2ZvbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUM4ODVCO1xuICBib3JkZXItY29sb3I6ICNGOEY4Rjhcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX3N1cHBvcnQuYWNlX2Z1bmN0aW9uIHtcbiAgY29sb3I6ICNEQUQwODVcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2xpc3QsXG4uYWNlLXR3aWxpZ2h0IC5hY2VfbWFya3VwLmFjZV9saXN0LFxuLmFjZS10d2lsaWdodCAuYWNlX3N0b3JhZ2Uge1xuICBjb2xvcjogI0Y5RUU5OFxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfZW50aXR5LmFjZV9uYW1lLmFjZV9mdW5jdGlvbixcbi5hY2UtdHdpbGlnaHQgLmFjZV9tZXRhLmFjZV90YWcge1xuICBjb2xvcjogI0FDODg1QlxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2Vfc3RyaW5nIHtcbiAgY29sb3I6ICM4RjlENkFcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX3N0cmluZy5hY2VfcmVnZXhwIHtcbiAgY29sb3I6ICNFOUMwNjJcbn1cblxuLmFjZS10d2lsaWdodCAuYWNlX2NvbW1lbnQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjNUY1QTYwXG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV92YXJpYWJsZSB7XG4gIGNvbG9yOiAjNzU4N0E2XG59XG5cbi5hY2UtdHdpbGlnaHQgLmFjZV94bWwtcGUge1xuICBjb2xvcjogIzQ5NDk0OVxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfaW5kZW50LWd1aWRlIHtcbiAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQUVBQUFBQ0NBWUFBQUNaZ2JZbkFBQUFFa2xFUVZRSW1XTVFFUkZwWUxDMXRmMFBBQWdPQW5Qbmh4eWlBQUFBQUVsRlRrU3VRbUNDKSByaWdodCByZXBlYXQteVxufVxuXG4uYWNlLXR3aWxpZ2h0IC5hY2VfaW5kZW50LWd1aWRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFFQUFBQUNDQVlBQUFDWmdiWW5BQUFBRWtsRVFWUUlXMlBRMWRYOXp6Qno1c3ovQUJDY0JGRmVudExsQUFBQUFFbEZUa1N1UW1DQykgcmlnaHQgcmVwZWF0LXk7XG59XG4iOwoKfSk7CgphY2UuZGVmaW5lKCJhY2UvdGhlbWUvdHdpbGlnaHQiLFsicmVxdWlyZSIsImV4cG9ydHMiLCJtb2R1bGUiLCJhY2UvdGhlbWUvdHdpbGlnaHQtY3NzIiwiYWNlL2xpYi9kb20iXSwgZnVuY3Rpb24ocmVxdWlyZSwgZXhwb3J0cywgbW9kdWxlKXtleHBvcnRzLmlzRGFyayA9IHRydWU7CmV4cG9ydHMuY3NzQ2xhc3MgPSAiYWNlLXR3aWxpZ2h0IjsKZXhwb3J0cy5jc3NUZXh0ID0gcmVxdWlyZSgiLi90d2lsaWdodC1jc3MiKTsKdmFyIGRvbSA9IHJlcXVpcmUoIi4uL2xpYi9kb20iKTsKZG9tLmltcG9ydENzc1N0cmluZyhleHBvcnRzLmNzc1RleHQsIGV4cG9ydHMuY3NzQ2xhc3MsIGZhbHNlKTsKCn0pOyAgICAgICAgICAgICAgICAoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgYWNlLnJlcXVpcmUoWyJhY2UvdGhlbWUvdHdpbGlnaHQiXSwgZnVuY3Rpb24obSkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG1vZHVsZSA9PSAib2JqZWN0IiAmJiB0eXBlb2YgZXhwb3J0cyA9PSAib2JqZWN0IiAmJiBtb2R1bGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZS5leHBvcnRzID0gbTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSkoKTsKICAgICAgICAgICAg";var we={exports:{}};(function(he,fe){(function(){var I="ace",x=function(){return this}();!x&&typeof window<"u"&&(x=window);var H=function(o,i,n){if(typeof o!="string"){H.original?H.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(n=i),H.modules[o]||(H.payloads[o]=n,H.modules[o]=null)};H.modules={},H.payloads={};var T=function(o,i,n){if(typeof i=="string"){var t=a(o,i);if(t!=null)return n&&n(),t}else if(Object.prototype.toString.call(i)==="[object Array]"){for(var e=[],r=0,s=i.length;r<s;++r){var l=a(o,i[r]);if(l==null&&M.original)return;e.push(l)}return n&&n.apply(null,e)||!0}},M=function(o,i){var n=T("",o,i);return n==null&&M.original?M.original.apply(this,arguments):n},S=function(o,i){if(i.indexOf("!")!==-1){var n=i.split("!");return S(o,n[0])+"!"+S(o,n[1])}if(i.charAt(0)=="."){var t=o.split("/").slice(0,-1).join("/");for(i=t+"/"+i;i.indexOf(".")!==-1&&e!=i;){var e=i;i=i.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return i},a=function(o,i){i=S(o,i);var n=H.modules[i];if(!n){if(n=H.payloads[i],typeof n=="function"){var t={},e={id:i,uri:"",exports:t,packaged:!0},r=function(l,u){return T(i,l,u)},s=n(r,t,e);t=s||e.exports,H.modules[i]=t,delete H.payloads[i]}n=H.modules[i]=t||n}return n};function c(o){var i=x;x[o]||(x[o]={}),i=x[o],(!i.define||!i.define.packaged)&&(H.original=i.define,i.define=H,i.define.packaged=!0),(!i.require||!i.require.packaged)&&(M.original=i.require,i.require=M,i.require.packaged=!0)}c(I)})(),ace.define("ace/lib/es6-shim",["require","exports","module"],function(I,x,H){function T(M,S,a){Object.defineProperty(M,S,{value:a,enumerable:!1,writable:!0,configurable:!0})}String.prototype.startsWith||T(String.prototype,"startsWith",function(M,S){return S=S||0,this.lastIndexOf(M,S)===S}),String.prototype.endsWith||T(String.prototype,"endsWith",function(M,S){var a=this;(S===void 0||S>a.length)&&(S=a.length),S-=M.length;var c=a.indexOf(M,S);return c!==-1&&c===S}),String.prototype.repeat||T(String.prototype,"repeat",function(M){for(var S="",a=this;M>0;)M&1&&(S+=a),(M>>=1)&&(a+=a);return S}),String.prototype.includes||T(String.prototype,"includes",function(M,S){return this.indexOf(M,S)!=-1}),Object.assign||(Object.assign=function(M){if(M==null)throw new TypeError("Cannot convert undefined or null to object");for(var S=Object(M),a=1;a<arguments.length;a++){var c=arguments[a];c!=null&&Object.keys(c).forEach(function(o){S[o]=c[o]})}return S}),Object.values||(Object.values=function(M){return Object.keys(M).map(function(S){return M[S]})}),Array.prototype.find||T(Array.prototype,"find",function(M){for(var S=this.length,a=arguments[1],c=0;c<S;c++){var o=this[c];if(M.call(a,o,c,this))return o}}),Array.prototype.findIndex||T(Array.prototype,"findIndex",function(M){for(var S=this.length,a=arguments[1],c=0;c<S;c++){var o=this[c];if(M.call(a,o,c,this))return c}}),Array.prototype.includes||T(Array.prototype,"includes",function(M,S){return this.indexOf(M,S)!=-1}),Array.prototype.fill||T(Array.prototype,"fill",function(M){for(var S=this,a=S.length>>>0,c=arguments[1],o=c>>0,i=o<0?Math.max(a+o,0):Math.min(o,a),n=arguments[2],t=n===void 0?a:n>>0,e=t<0?Math.max(a+t,0):Math.min(t,a);i<e;)S[i]=M,i++;return S}),Array.of||T(Array,"of",function(){return Array.prototype.slice.call(arguments)})}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/es6-shim"],function(I,x,H){I("./es6-shim")}),ace.define("ace/lib/deep_copy",["require","exports","module"],function(I,x,H){x.deepCopy=function T(M){if(typeof M!="object"||!M)return M;var S;if(Array.isArray(M)){S=[];for(var a=0;a<M.length;a++)S[a]=T(M[a]);return S}if(Object.prototype.toString.call(M)!=="[object Object]")return M;S={};for(var a in M)S[a]=T(M[a]);return S}}),ace.define("ace/lib/lang",["require","exports","module","ace/lib/deep_copy"],function(I,x,H){x.last=function(S){return S[S.length-1]},x.stringReverse=function(S){return S.split("").reverse().join("")},x.stringRepeat=function(S,a){for(var c="";a>0;)a&1&&(c+=S),(a>>=1)&&(S+=S);return c};var T=/^\s\s*/,M=/\s\s*$/;x.stringTrimLeft=function(S){return S.replace(T,"")},x.stringTrimRight=function(S){return S.replace(M,"")},x.copyObject=function(S){var a={};for(var c in S)a[c]=S[c];return a},x.copyArray=function(S){for(var a=[],c=0,o=S.length;c<o;c++)S[c]&&typeof S[c]=="object"?a[c]=this.copyObject(S[c]):a[c]=S[c];return a},x.deepCopy=I("./deep_copy").deepCopy,x.arrayToMap=function(S){for(var a={},c=0;c<S.length;c++)a[S[c]]=1;return a},x.createMap=function(S){var a=Object.create(null);for(var c in S)a[c]=S[c];return a},x.arrayRemove=function(S,a){for(var c=0;c<=S.length;c++)a===S[c]&&S.splice(c,1)},x.escapeRegExp=function(S){return S.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},x.escapeHTML=function(S){return(""+S).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<")},x.getMatchOffsets=function(S,a){var c=[];return S.replace(a,function(o){c.push({offset:arguments[arguments.length-2],length:o.length})}),c},x.deferredCall=function(S){var a=null,c=function(){a=null,S()},o=function(i){return o.cancel(),a=setTimeout(c,i||0),o};return o.schedule=o,o.call=function(){return this.cancel(),S(),o},o.cancel=function(){return clearTimeout(a),a=null,o},o.isPending=function(){return a},o},x.delayedCall=function(S,a){var c=null,o=function(){c=null,S()},i=function(n){c==null&&(c=setTimeout(o,n||a))};return i.delay=function(n){c&&clearTimeout(c),c=setTimeout(o,n||a)},i.schedule=i,i.call=function(){this.cancel(),S()},i.cancel=function(){c&&clearTimeout(c),c=null},i.isPending=function(){return c},i},x.supportsLookbehind=function(){try{new RegExp("(?<=.)")}catch{return!1}return!0},x.skipEmptyMatch=function(S,a,c){return c&&S.codePointAt(a)>65535?2:1}}),ace.define("ace/lib/useragent",["require","exports","module"],function(I,x,H){x.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},x.getOS=function(){return x.isMac?x.OS.MAC:x.isLinux?x.OS.LINUX:x.OS.WINDOWS};var T=typeof navigator=="object"?navigator:{},M=(/mac|win|linux/i.exec(T.platform)||["other"])[0].toLowerCase(),S=T.userAgent||"",a=T.appName||"";x.isWin=M=="win",x.isMac=M=="mac",x.isLinux=M=="linux",x.isIE=a=="Microsoft Internet Explorer"||a.indexOf("MSAppHost")>=0?parseFloat((S.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((S.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),x.isOldIE=x.isIE&&x.isIE<9,x.isGecko=x.isMozilla=S.match(/ Gecko\/\d+/),x.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",x.isWebKit=parseFloat(S.split("WebKit/")[1])||void 0,x.isChrome=parseFloat(S.split(" Chrome/")[1])||void 0,x.isSafari=parseFloat(S.split(" Safari/")[1])&&!x.isChrome||void 0,x.isEdge=parseFloat(S.split(" Edge/")[1])||void 0,x.isAIR=S.indexOf("AdobeAIR")>=0,x.isAndroid=S.indexOf("Android")>=0,x.isChromeOS=S.indexOf(" CrOS ")>=0,x.isIOS=/iPad|iPhone|iPod/.test(S)&&!window.MSStream,x.isIOS&&(x.isMac=!0),x.isMobile=x.isIOS||x.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(I,x,H){var T=I("./useragent"),M="http://www.w3.org/1999/xhtml";x.buildDom=function n(t,e,r){if(typeof t=="string"&&t){var s=document.createTextNode(t);return e&&e.appendChild(s),s}if(!Array.isArray(t))return t&&t.appendChild&&e&&e.appendChild(t),t;if(typeof t[0]!="string"||!t[0]){for(var l=[],u=0;u<t.length;u++){var b=n(t[u],e,r);b&&l.push(b)}return l}var m=document.createElement(t[0]),g=t[1],f=1;g&&typeof g=="object"&&!Array.isArray(g)&&(f=2);for(var u=f;u<t.length;u++)n(t[u],m,r);return f==2&&Object.keys(g).forEach(function(C){var k=g[C];C==="class"?m.className=Array.isArray(k)?k.join(" "):k:typeof k=="function"||C=="value"||C[0]=="$"?m[C]=k:C==="ref"?r&&(r[k]=m):C==="style"?typeof k=="string"&&(m.style.cssText=k):k!=null&&m.setAttribute(C,k)}),e&&e.appendChild(m),m},x.getDocumentHead=function(n){return n||(n=document),n.head||n.getElementsByTagName("head")[0]||n.documentElement},x.createElement=function(n,t){return document.createElementNS?document.createElementNS(t||M,n):document.createElement(n)},x.removeChildren=function(n){n.innerHTML=""},x.createTextNode=function(n,t){var e=t?t.ownerDocument:document;return e.createTextNode(n)},x.createFragment=function(n){var t=n?n.ownerDocument:document;return t.createDocumentFragment()},x.hasCssClass=function(n,t){var e=(n.className+"").split(/\s+/g);return e.indexOf(t)!==-1},x.addCssClass=function(n,t){x.hasCssClass(n,t)||(n.className+=" "+t)},x.removeCssClass=function(n,t){for(var e=n.className.split(/\s+/g);;){var r=e.indexOf(t);if(r==-1)break;e.splice(r,1)}n.className=e.join(" ")},x.toggleCssClass=function(n,t){for(var e=n.className.split(/\s+/g),r=!0;;){var s=e.indexOf(t);if(s==-1)break;r=!1,e.splice(s,1)}return r&&e.push(t),n.className=e.join(" "),r},x.setCssClass=function(n,t,e){e?x.addCssClass(n,t):x.removeCssClass(n,t)},x.hasCssString=function(n,t){var e=0,r;if(t=t||document,r=t.querySelectorAll("style")){for(;e<r.length;)if(r[e++].id===n)return!0}},x.removeElementById=function(n,t){t=t||document,t.getElementById(n)&&t.getElementById(n).remove()};var S,a=[];x.useStrictCSP=function(n){S=n,n==!1?c():a||(a=[])};function c(){var n=a;a=null,n&&n.forEach(function(t){o(t[0],t[1])})}function o(n,t,e){if(!(typeof document>"u")){if(a){if(e)c();else if(e===!1)return a.push([n,t])}if(!S){var r=e;!e||!e.getRootNode?r=document:(r=e.getRootNode(),(!r||r==e)&&(r=document));var s=r.ownerDocument||r;if(t&&x.hasCssString(t,r))return null;t&&(n+=`
|
|
2
|
-
/*# sourceURL=ace/css/`+t+" */");var l=x.createElement("style");l.appendChild(s.createTextNode(n)),t&&(l.id=t),r==s&&(r=x.getDocumentHead(s)),r.insertBefore(l,r.firstChild)}}}if(x.importCssString=o,x.importCssStylsheet=function(n,t){x.buildDom(["link",{rel:"stylesheet",href:n}],x.getDocumentHead(t))},x.scrollbarWidth=function(n){var t=x.createElement("ace_inner");t.style.width="100%",t.style.minWidth="0px",t.style.height="200px",t.style.display="block";var e=x.createElement("ace_outer"),r=e.style;r.position="absolute",r.left="-10000px",r.overflow="hidden",r.width="200px",r.minWidth="0px",r.height="150px",r.display="block",e.appendChild(t);var s=n&&n.documentElement||document&&document.documentElement;if(!s)return 0;s.appendChild(e);var l=t.offsetWidth;r.overflow="scroll";var u=t.offsetWidth;return l===u&&(u=e.clientWidth),s.removeChild(e),l-u},x.computedStyle=function(n,t){return window.getComputedStyle(n,"")||{}},x.setStyle=function(n,t,e){n[t]!==e&&(n[t]=e)},x.HAS_CSS_ANIMATION=!1,x.HAS_CSS_TRANSFORMS=!1,x.HI_DPI=T.isWin?typeof window<"u"&&window.devicePixelRatio>=1.5:!0,T.isChromeOS&&(x.HI_DPI=!1),typeof document<"u"){var i=document.createElement("div");x.HI_DPI&&i.style.transform!==void 0&&(x.HAS_CSS_TRANSFORMS=!0),!T.isEdge&&typeof i.style.animationName<"u"&&(x.HAS_CSS_ANIMATION=!0),i=null}x.HAS_CSS_TRANSFORMS?x.translate=function(n,t,e){n.style.transform="translate("+Math.round(t)+"px, "+Math.round(e)+"px)"}:x.translate=function(n,t,e){n.style.top=Math.round(e)+"px",n.style.left=Math.round(t)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(I,x,H){/*
|
|
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 T=I("./dom");x.get=function(M,S){var a=new XMLHttpRequest;a.open("GET",M,!0),a.onreadystatechange=function(){a.readyState===4&&S(a.responseText)},a.send(null)},x.loadScript=function(M,S){var a=T.getDocumentHead(),c=document.createElement("script");c.src=M,a.appendChild(c),c.onload=c.onreadystatechange=function(o,i){(i||!c.readyState||c.readyState=="loaded"||c.readyState=="complete")&&(c=c.onload=c.onreadystatechange=null,i||S())}},x.qualifyURL=function(M){var S=document.createElement("a");return S.href=M,S.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(I,x,H){x.inherits=function(T,M){T.super_=M,T.prototype=Object.create(M.prototype,{constructor:{value:T,enumerable:!1,writable:!0,configurable:!0}})},x.mixin=function(T,M){for(var S in M)T[S]=M[S];return T},x.implement=function(T,M){x.mixin(T,M)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(I,x,H){var T={},M=function(){this.propagationStopped=!0},S=function(){this.defaultPrevented=!0};T._emit=T._dispatchEvent=function(a,c){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var o=this._eventRegistry[a]||[],i=this._defaultHandlers[a];if(!(!o.length&&!i)){(typeof c!="object"||!c)&&(c={}),c.type||(c.type=a),c.stopPropagation||(c.stopPropagation=M),c.preventDefault||(c.preventDefault=S),o=o.slice();for(var n=0;n<o.length&&(o[n](c,this),!c.propagationStopped);n++);if(i&&!c.defaultPrevented)return i(c,this)}},T._signal=function(a,c){var o=(this._eventRegistry||{})[a];if(o){o=o.slice();for(var i=0;i<o.length;i++)o[i](c,this)}},T.once=function(a,c){var o=this;if(this.on(a,function i(){o.off(a,i),c.apply(null,arguments)}),!c)return new Promise(function(i){c=i})},T.setDefaultHandler=function(a,c){var o=this._defaultHandlers;if(o||(o=this._defaultHandlers={_disabled_:{}}),o[a]){var i=o[a],n=o._disabled_[a];n||(o._disabled_[a]=n=[]),n.push(i);var t=n.indexOf(c);t!=-1&&n.splice(t,1)}o[a]=c},T.removeDefaultHandler=function(a,c){var o=this._defaultHandlers;if(o){var i=o._disabled_[a];if(o[a]==c)i&&this.setDefaultHandler(a,i.pop());else if(i){var n=i.indexOf(c);n!=-1&&i.splice(n,1)}}},T.on=T.addEventListener=function(a,c,o){this._eventRegistry=this._eventRegistry||{};var i=this._eventRegistry[a];return i||(i=this._eventRegistry[a]=[]),i.indexOf(c)==-1&&i[o?"unshift":"push"](c),c},T.off=T.removeListener=T.removeEventListener=function(a,c){this._eventRegistry=this._eventRegistry||{};var o=this._eventRegistry[a];if(o){var i=o.indexOf(c);i!==-1&&o.splice(i,1)}},T.removeAllListeners=function(a){a||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[a]=void 0),this._defaultHandlers&&(this._defaultHandlers[a]=void 0)},x.EventEmitter=T}),ace.define("ace/lib/report_error",["require","exports","module"],function(I,x,H){x.reportError=function(M,S){var a=new Error(M);a.data=S,typeof console=="object"&&console.error&&console.error(a),setTimeout(function(){throw a})}}),ace.define("ace/lib/default_english_messages",["require","exports","module"],function(I,x,H){var T={"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","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"};x.defaultEnglishMessages=T}),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(I,x,H){"no use strict";var T=I("./oop"),M=I("./event_emitter").EventEmitter,S=I("./report_error").reportError,a=I("./default_english_messages").defaultEnglishMessages,c={setOptions:function(e){Object.keys(e).forEach(function(r){this.setOption(r,e[r])},this)},getOptions:function(e){var r={};if(e)Array.isArray(e)||(r=e,e=Object.keys(r));else{var s=this.$options;e=Object.keys(s).filter(function(l){return!s[l].hidden})}return e.forEach(function(l){r[l]=this.getOption(l)},this),r},setOption:function(e,r){if(this["$"+e]!==r){var s=this.$options[e];if(!s)return o('misspelled option "'+e+'"');if(s.forwardTo)return this[s.forwardTo]&&this[s.forwardTo].setOption(e,r);s.handlesSet||(this["$"+e]=r),s&&s.set&&s.set.call(this,r)}},getOption:function(e){var r=this.$options[e];return r?r.forwardTo?this[r.forwardTo]&&this[r.forwardTo].getOption(e):r&&r.get?r.get.call(this):this["$"+e]:o('misspelled option "'+e+'"')}};function o(e){typeof console<"u"&&console.warn&&console.warn.apply(console,arguments)}var i,n,t=function(){function e(){this.$defaultOptions={},i=a,n="dollarSigns"}return e.prototype.defineOptions=function(r,s,l){return r.$options||(this.$defaultOptions[s]=r.$options={}),Object.keys(l).forEach(function(u){var b=l[u];typeof b=="string"&&(b={forwardTo:b}),b.name||(b.name=u),r.$options[b.name]=b,"initialValue"in b&&(r["$"+b.name]=b.initialValue)}),T.implement(r,c),this},e.prototype.resetOptions=function(r){Object.keys(r.$options).forEach(function(s){var l=r.$options[s];"value"in l&&r.setOption(s,l.value)})},e.prototype.setDefaultValue=function(r,s,l){if(!r){for(r in this.$defaultOptions)if(this.$defaultOptions[r][s])break;if(!this.$defaultOptions[r][s])return!1}var u=this.$defaultOptions[r]||(this.$defaultOptions[r]={});u[s]&&(u.forwardTo?this.setDefaultValue(u.forwardTo,s,l):u[s].value=l)},e.prototype.setDefaultValues=function(r,s){Object.keys(s).forEach(function(l){this.setDefaultValue(r,l,s[l])},this)},e.prototype.setMessages=function(r,s){i=r,s&&s.placeholders&&(n=s.placeholders)},e.prototype.nls=function(r,s,l){i[r]||(o("No message found for the key '"+r+"' in the provided messages, trying to find a translation for the default string '"+s+"'."),i[s]||o("No message found for the default string '"+s+"' in the provided messages. Falling back to the default English message."));var u=i[r]||i[s]||s;return l&&(n==="dollarSigns"&&(u=u.replace(/\$(\$|[\d]+)/g,function(b,m){return m=="$"?"$":l[m]})),n==="curlyBrackets"&&(u=u.replace(/\{([^\}]+)\}/g,function(b,m){return l[m]}))),u},e}();t.prototype.warn=o,t.prototype.reportError=S,T.implement(t.prototype,M),x.AppConfig=t}),ace.define("ace/theme/textmate-css",["require","exports","module"],function(I,x,H){H.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(I,x,H){x.isDark=!1,x.cssClass="ace-tm",x.cssText=I("./textmate-css"),x.$id="ace/theme/textmate";var T=I("../lib/dom");T.importCssString(x.cssText,x.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(I,x,H){"no use strict";var T=I("./lib/lang"),M=I("./lib/net"),S=I("./lib/dom"),a=I("./lib/app_config").AppConfig;H.exports=x=new a;var c={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{},loadWorkerFromBlob:!0,sharedPopups:!1,useStrictCSP:null};x.get=function(t){if(!c.hasOwnProperty(t))throw new Error("Unknown config key: "+t);return c[t]},x.set=function(t,e){if(c.hasOwnProperty(t))c[t]=e;else if(this.setDefaultValue("",t,e)==!1)throw new Error("Unknown config key: "+t);t=="useStrictCSP"&&S.useStrictCSP(e)},x.all=function(){return T.copyObject(c)},x.$modes={},x.moduleUrl=function(t,e){if(c.$moduleUrls[t])return c.$moduleUrls[t];var r=t.split("/");e=e||r[r.length-2]||"";var s=e=="snippets"?"/":"-",l=r[r.length-1];if(e=="worker"&&s=="-"){var u=new RegExp("^"+e+"[\\-_]|[\\-_]"+e+"$","g");l=l.replace(u,"")}(!l||l==e)&&r.length>1&&(l=r[r.length-2]);var b=c[e+"Path"];return b==null?b=c.basePath:s=="/"&&(e=s=""),b&&b.slice(-1)!="/"&&(b+="/"),b+e+s+l+this.get("suffix")},x.setModuleUrl=function(t,e){return c.$moduleUrls[t]=e};var o=function(t,e){if(t==="ace/theme/textmate"||t==="./theme/textmate")return e(null,I("./theme/textmate"));if(i)return i(t,e);console.error("loader is not configured")},i;x.setLoader=function(t){i=t},x.dynamicModules=Object.create(null),x.$loading={},x.$loaded={},x.loadModule=function(t,e){var r;if(Array.isArray(t))var s=t[0],l=t[1];else if(typeof t=="string")var l=t;var u=function(b){if(b&&!x.$loading[l])return e&&e(b);if(x.$loading[l]||(x.$loading[l]=[]),x.$loading[l].push(e),!(x.$loading[l].length>1)){var m=function(){o(l,function(g,f){f&&(x.$loaded[l]=f),x._emit("load.module",{name:l,module:f});var C=x.$loading[l];x.$loading[l]=null,C.forEach(function(k){k&&k(f)})})};if(!x.get("packaged"))return m();M.loadScript(x.moduleUrl(l,s),m),n()}};if(x.dynamicModules[l])x.dynamicModules[l]().then(function(b){b.default?u(b.default):u(b)});else{try{r=this.$require(l)}catch{}u(r||x.$loaded[l])}},x.$require=function(t){if(typeof H.require=="function"){var e="require";return H[e](t)}},x.setModuleLoader=function(t,e){x.dynamicModules[t]=e};var n=function(){!c.basePath&&!c.workerPath&&!c.modePath&&!c.themePath&&!Object.keys(c.$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"),n=function(){})};x.version="1.36.3"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(I,x,H){I("./lib/fixoldbrowsers");var T=I("./config");T.setLoader(function(c,o){I([c],function(i){o(null,i)})});var M=function(){return this||typeof window<"u"&&window}();H.exports=function(c){T.init=S,T.$require=I,c.require=I},S(!0);function S(c){if(!(!M||!M.document)){T.set("packaged",c||I.packaged||H.packaged||M.define&&(void 0).packaged);var o={},i="",n=document.currentScript||document._currentScript,t=n&&n.ownerDocument||document;n&&n.src&&(i=n.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var e=t.getElementsByTagName("script"),r=0;r<e.length;r++){var s=e[r],l=s.src||s.getAttribute("src");if(l){for(var u=s.attributes,b=0,m=u.length;b<m;b++){var g=u[b];g.name.indexOf("data-ace-")===0&&(o[a(g.name.replace(/^data-ace-/,""))]=g.value)}var f=l.match(/^(.*)\/ace([\-.]\w+)?\.js(\?|$)/);f&&(i=f[1])}}i&&(o.base=o.base||i,o.packaged=!0),o.basePath=o.base,o.workerPath=o.workerPath||o.base,o.modePath=o.modePath||o.base,o.themePath=o.themePath||o.base,delete o.base;for(var C in o)typeof o[C]<"u"&&T.set(C,o[C])}}function a(c){return c.replace(/-(.)/g,function(o,i){return i.toUpperCase()})}}),ace.define("ace/range",["require","exports","module"],function(I,x,H){var T=function(){function M(S,a,c,o){this.start={row:S,column:a},this.end={row:c,column:o}}return M.prototype.isEqual=function(S){return this.start.row===S.start.row&&this.end.row===S.end.row&&this.start.column===S.start.column&&this.end.column===S.end.column},M.prototype.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},M.prototype.contains=function(S,a){return this.compare(S,a)==0},M.prototype.compareRange=function(S){var a,c=S.end,o=S.start;return a=this.compare(c.row,c.column),a==1?(a=this.compare(o.row,o.column),a==1?2:a==0?1:0):a==-1?-2:(a=this.compare(o.row,o.column),a==-1?-1:a==1?42:0)},M.prototype.comparePoint=function(S){return this.compare(S.row,S.column)},M.prototype.containsRange=function(S){return this.comparePoint(S.start)==0&&this.comparePoint(S.end)==0},M.prototype.intersects=function(S){var a=this.compareRange(S);return a==-1||a==0||a==1},M.prototype.isEnd=function(S,a){return this.end.row==S&&this.end.column==a},M.prototype.isStart=function(S,a){return this.start.row==S&&this.start.column==a},M.prototype.setStart=function(S,a){typeof S=="object"?(this.start.column=S.column,this.start.row=S.row):(this.start.row=S,this.start.column=a)},M.prototype.setEnd=function(S,a){typeof S=="object"?(this.end.column=S.column,this.end.row=S.row):(this.end.row=S,this.end.column=a)},M.prototype.inside=function(S,a){return this.compare(S,a)==0?!(this.isEnd(S,a)||this.isStart(S,a)):!1},M.prototype.insideStart=function(S,a){return this.compare(S,a)==0?!this.isEnd(S,a):!1},M.prototype.insideEnd=function(S,a){return this.compare(S,a)==0?!this.isStart(S,a):!1},M.prototype.compare=function(S,a){return!this.isMultiLine()&&S===this.start.row?a<this.start.column?-1:a>this.end.column?1:0:S<this.start.row?-1:S>this.end.row?1:this.start.row===S?a>=this.start.column?0:-1:this.end.row===S?a<=this.end.column?0:1:0},M.prototype.compareStart=function(S,a){return this.start.row==S&&this.start.column==a?-1:this.compare(S,a)},M.prototype.compareEnd=function(S,a){return this.end.row==S&&this.end.column==a?1:this.compare(S,a)},M.prototype.compareInside=function(S,a){return this.end.row==S&&this.end.column==a?1:this.start.row==S&&this.start.column==a?-1:this.compare(S,a)},M.prototype.clipRows=function(S,a){if(this.end.row>a)var c={row:a+1,column:0};else if(this.end.row<S)var c={row:S,column:0};if(this.start.row>a)var o={row:a+1,column:0};else if(this.start.row<S)var o={row:S,column:0};return M.fromPoints(o||this.start,c||this.end)},M.prototype.extend=function(S,a){var c=this.compare(S,a);if(c==0)return this;if(c==-1)var o={row:S,column:a};else var i={row:S,column:a};return M.fromPoints(o||this.start,i||this.end)},M.prototype.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},M.prototype.isMultiLine=function(){return this.start.row!==this.end.row},M.prototype.clone=function(){return M.fromPoints(this.start,this.end)},M.prototype.collapseRows=function(){return this.end.column==0?new M(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new M(this.start.row,0,this.end.row,0)},M.prototype.toScreenRange=function(S){var a=S.documentToScreenPosition(this.start),c=S.documentToScreenPosition(this.end);return new M(a.row,a.column,c.row,c.column)},M.prototype.moveBy=function(S,a){this.start.row+=S,this.start.column+=a,this.end.row+=S,this.end.column+=a},M}();T.fromPoints=function(M,S){return new T(M.row,M.column,S.row,S.column)},T.comparePoints=function(M,S){return M.row-S.row||M.column-S.column},x.Range=T}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(I,x,H){for(var T=I("./oop"),M={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:"*"}},S={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},a=0;a<10;a++)S["Digit"+a]=48+a,S["Numpad"+a]=96+a,M.PRINTABLE_KEYS[48+a]=""+a,M.FUNCTION_KEYS[96+a]="Numpad"+a;for(var a=65;a<91;a++){var c=String.fromCharCode(a+32);S["Key"+c.toUpperCase()]=a,M.PRINTABLE_KEYS[a]=c}for(var a=1;a<13;a++)S["F"+a]=111+a,M.FUNCTION_KEYS[111+a]="F"+a;var o={Shift:16,Control:17,Alt:18,Meta:224};for(var i in o)S[i]=S[i+"Left"]=S[i+"Right"]=o[i];x.$codeToKeyCode=S,M.PRINTABLE_KEYS[173]="-";for(var n in M.FUNCTION_KEYS){var t=M.FUNCTION_KEYS[n].toLowerCase();M[t]=parseInt(n,10)}for(var n in M.PRINTABLE_KEYS){var t=M.PRINTABLE_KEYS[n].toLowerCase();M[t]=parseInt(n,10)}T.mixin(M,M.MODIFIER_KEYS),T.mixin(M,M.PRINTABLE_KEYS),T.mixin(M,M.FUNCTION_KEYS),M.enter=M.return,M.escape=M.esc,M.del=M.delete,function(){for(var e=["cmd","ctrl","alt","shift"],r=Math.pow(2,e.length);r--;)M.KEY_MODS[r]=e.filter(function(s){return r&M.KEY_MODS[s]}).join("-")+"-"}(),M.KEY_MODS[0]="",M.KEY_MODS[-1]="input-",T.mixin(x,M),x.default=x,x.keyCodeToString=function(e){var r=M[e];return typeof r!="string"&&(r=String.fromCharCode(e)),r.toLowerCase()}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(I,x,H){var T=I("./keys"),M=I("./useragent"),S=null,a=0,c;function o(){c=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){return c={passive:!1},!0}})}catch{}}function i(){return c==null&&o(),c}function n(b,m,g){this.elem=b,this.type=m,this.callback=g}n.prototype.destroy=function(){e(this.elem,this.type,this.callback),this.elem=this.type=this.callback=void 0};var t=x.addListener=function(b,m,g,f){b.addEventListener(m,g,i()),f&&f.$toDestroy.push(new n(b,m,g))},e=x.removeListener=function(b,m,g){b.removeEventListener(m,g,i())};x.stopEvent=function(b){return x.stopPropagation(b),x.preventDefault(b),!1},x.stopPropagation=function(b){b.stopPropagation&&b.stopPropagation()},x.preventDefault=function(b){b.preventDefault&&b.preventDefault()},x.getButton=function(b){return b.type=="dblclick"?0:b.type=="contextmenu"||M.isMac&&b.ctrlKey&&!b.altKey&&!b.shiftKey?2:b.button},x.capture=function(b,m,g){var f=b&&b.ownerDocument||document;function C(k){m&&m(k),g&&g(k),e(f,"mousemove",m),e(f,"mouseup",C),e(f,"dragstart",C)}return t(f,"mousemove",m),t(f,"mouseup",C),t(f,"dragstart",C),C},x.addMouseWheelListener=function(b,m,g){t(b,"wheel",function(f){var C=.15,k=f.deltaX||0,A=f.deltaY||0;switch(f.deltaMode){case f.DOM_DELTA_PIXEL:f.wheelX=k*C,f.wheelY=A*C;break;case f.DOM_DELTA_LINE:var $=15;f.wheelX=k*$,f.wheelY=A*$;break;case f.DOM_DELTA_PAGE:var w=150;f.wheelX=k*w,f.wheelY=A*w;break}m(f)},g)},x.addMultiMouseDownListener=function(b,m,g,f,C){var k=0,A,$,w,d={2:"dblclick",3:"tripleclick",4:"quadclick"};function p(h){if(x.getButton(h)!==0?k=0:h.detail>1?(k++,k>4&&(k=1)):k=1,M.isIE){var v=Math.abs(h.clientX-A)>5||Math.abs(h.clientY-$)>5;(!w||v)&&(k=1),w&&clearTimeout(w),w=setTimeout(function(){w=null},m[k-1]||600),k==1&&(A=h.clientX,$=h.clientY)}if(h._clicks=k,g[f]("mousedown",h),k>4)k=0;else if(k>1)return g[f](d[k],h)}Array.isArray(b)||(b=[b]),b.forEach(function(h){t(h,"mousedown",p,C)})};function r(b){return 0|(b.ctrlKey?1:0)|(b.altKey?2:0)|(b.shiftKey?4:0)|(b.metaKey?8:0)}x.getModifierString=function(b){return T.KEY_MODS[r(b)]};function s(b,m,g){var f=r(m);if(!g&&m.code&&(g=T.$codeToKeyCode[m.code]||g),!M.isMac&&S){if(m.getModifierState&&(m.getModifierState("OS")||m.getModifierState("Win"))&&(f|=8),S.altGr)if((3&f)!=3)S.altGr=0;else return;if(g===18||g===17){var C=m.location;if(g===17&&C===1)S[g]==1&&(a=m.timeStamp);else if(g===18&&f===3&&C===2){var k=m.timeStamp-a;k<50&&(S.altGr=!0)}}}if(g in T.MODIFIER_KEYS&&(g=-1),!(!f&&g===13&&m.location===3&&(b(m,f,-g),m.defaultPrevented))){if(M.isChromeOS&&f&8){if(b(m,f,g),m.defaultPrevented)return;f&=-9}return!f&&!(g in T.FUNCTION_KEYS)&&!(g in T.PRINTABLE_KEYS)?!1:b(m,f,g)}}x.addCommandKeyListener=function(b,m,g){var f=null;t(b,"keydown",function(C){S[C.keyCode]=(S[C.keyCode]||0)+1;var k=s(m,C,C.keyCode);return f=C.defaultPrevented,k},g),t(b,"keypress",function(C){f&&(C.ctrlKey||C.altKey||C.shiftKey||C.metaKey)&&(x.stopEvent(C),f=null)},g),t(b,"keyup",function(C){S[C.keyCode]=null},g),S||(l(),t(window,"focus",l))};function l(){S=Object.create(null)}if(typeof window=="object"&&window.postMessage&&!M.isOldIE){var u=1;x.nextTick=function(b,m){m=m||window;var g="zero-timeout-message-"+u++,f=function(C){C.data==g&&(x.stopPropagation(C),e(m,"message",f),b())};t(m,"message",f),m.postMessage(g,"*")}}x.$idleBlocked=!1,x.onIdle=function(b,m){return setTimeout(function g(){x.$idleBlocked?setTimeout(g,100):b()},m)},x.$idleBlockId=null,x.blockIdle=function(b){x.$idleBlockId&&clearTimeout(x.$idleBlockId),x.$idleBlocked=!0,x.$idleBlockId=setTimeout(function(){x.$idleBlocked=!1},b||100)},x.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),x.nextFrame?x.nextFrame=x.nextFrame.bind(window):x.nextFrame=function(b){setTimeout(b,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(I,x,H){var T;H.exports={lineMode:!1,pasteCancelled:function(){return T&&T>Date.now()-50?!0:T=!1},cancel:function(){T=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(I,x,H){var T=I("../lib/event"),M=I("../config").nls,S=I("../lib/useragent"),a=I("../lib/dom"),c=I("../lib/lang"),o=I("../clipboard"),i=S.isChrome<18,n=S.isIE,t=S.isChrome>63,e=400,r=I("../lib/keys"),s=r.KEY_MODS,l=S.isIOS,u=l?/\s/:/\n/,b=S.isMobile,m;m=function(g,f){var C=a.createElement("textarea");C.className="ace_text-input",C.setAttribute("wrap","off"),C.setAttribute("autocorrect","off"),C.setAttribute("autocapitalize","off"),C.setAttribute("spellcheck","false"),C.style.opacity="0",g.insertBefore(C,g.firstChild);var k=!1,A=!1,$=!1,w=!1,d="";b||(C.style.fontSize="1px");var p=!1,h=!1,v="",y=0,L=0,E=0,R=Number.MAX_SAFE_INTEGER,_=Number.MIN_SAFE_INTEGER,W=0;try{var F=document.activeElement===C}catch{}this.setNumberOfExtraLines=function(z){if(R=Number.MAX_SAFE_INTEGER,_=Number.MIN_SAFE_INTEGER,z<0){W=0;return}W=z},this.setAriaOptions=function(z){if(z.activeDescendant?(C.setAttribute("aria-haspopup","true"),C.setAttribute("aria-autocomplete",z.inline?"both":"list"),C.setAttribute("aria-activedescendant",z.activeDescendant)):(C.setAttribute("aria-haspopup","false"),C.setAttribute("aria-autocomplete","both"),C.removeAttribute("aria-activedescendant")),z.role&&C.setAttribute("role",z.role),z.setLabel){C.setAttribute("aria-roledescription",M("text-input.aria-roledescription","editor"));var P="";if(f.$textInputAriaLabel&&(P+="".concat(f.$textInputAriaLabel,", ")),f.session){var Y=f.session.selection.cursor.row;P+=M("text-input.aria-label","Cursor at row $0",[Y+1])}C.setAttribute("aria-label",P)}},this.setAriaOptions({role:"textbox"}),T.addListener(C,"blur",function(z){h||(f.onBlur(z),F=!1)},f),T.addListener(C,"focus",function(z){if(!h){if(F=!0,S.isEdge)try{if(!document.hasFocus())return}catch{}f.onFocus(z),S.isEdge?setTimeout(N):N()}},f),this.$focusScroll=!1,this.focus=function(){if(this.setAriaOptions({setLabel:f.renderer.enableKeyboardAccessibility}),d||t||this.$focusScroll=="browser")return C.focus({preventScroll:!0});var z=C.style.top;C.style.position="fixed",C.style.top="0px";try{var P=C.getBoundingClientRect().top!=0}catch{return}var Y=[];if(P)for(var X=C.parentElement;X&&X.nodeType==1;)Y.push(X),X.setAttribute("ace_nocontext","true"),!X.parentElement&&X.getRootNode?X=X.getRootNode().host:X=X.parentElement;C.focus({preventScroll:!0}),P&&Y.forEach(function(Q){Q.removeAttribute("ace_nocontext")}),setTimeout(function(){C.style.position="",C.style.top=="0px"&&(C.style.top=z)},0)},this.blur=function(){C.blur()},this.isFocused=function(){return F},f.on("beforeEndOperation",function(){var z=f.curOp,P=z&&z.command&&z.command.name;if(P!="insertstring"){var Y=P&&(z.docChanged||z.selectionChanged);$&&Y&&(v=C.value="",ce()),N()}});var D=function(z,P){for(var Y=P,X=1;X<=z-R&&X<2*W+1;X++)Y+=f.session.getLine(z-X).length+1;return Y},N=l?function(z){if(!(!F||k&&!z||w)){z||(z="");var P=`
|
|
167
|
-
ab`+z+`cde fg
|
|
168
|
-
`;P!=C.value&&(C.value=v=P);var Y=4,X=4+(z.length||(f.selection.isEmpty()?0:1));(y!=Y||L!=X)&&C.setSelectionRange(Y,X),y=Y,L=X}}:function(){if(!($||w)&&!(!F&&!V)){$=!0;var z=0,P=0,Y="";if(f.session){var X=f.selection,Q=X.getRange(),te=X.cursor.row;te===_+1?(R=_+1,_=R+2*W):te===R-1?(_=R-1,R=_-2*W):(te<R-1||te>_+1)&&(R=te>W?te-W:0,_=te>W?te+W:2*W);for(var ne=[],ie=R;ie<=_;ie++)ne.push(f.session.getLine(ie));if(Y=ne.join(`
|
|
169
|
-
`),z=D(Q.start.row,Q.start.column),P=D(Q.end.row,Q.end.column),Q.start.row<R){var ee=f.session.getLine(R-1);z=Q.start.row<R-1?0:z,P+=ee.length+1,Y=ee+`
|
|
170
|
-
`+Y}else if(Q.end.row>_){var J=f.session.getLine(_+1);P=Q.end.row>_+1?J.length:Q.end.column,P+=Y.length+1,Y=Y+`
|
|
171
|
-
`+J}else b&&te>0&&(Y=`
|
|
172
|
-
`+Y,P+=1,z+=1);Y.length>e&&(z<e&&P<e?Y=Y.slice(0,e):(Y=`
|
|
173
|
-
`,z==P?z=P=0:(z=0,P=1)));var se=Y+`
|
|
174
|
-
|
|
175
|
-
`;se!=v&&(C.value=v=se,y=L=se.length)}if(V&&(y=C.selectionStart,L=C.selectionEnd),L!=P||y!=z||C.selectionEnd!=L)try{C.setSelectionRange(z,P),y=z,L=P}catch{}$=!1}};this.resetSelection=N,F&&f.onFocus();var O=function(z){return z.selectionStart===0&&z.selectionEnd>=v.length&&z.value===v&&v&&z.selectionEnd!==L},B=function(z){$||(k?k=!1:O(C)?(f.selectAll(),N()):b&&C.selectionStart!=y&&N())},G=null;this.setInputHandler=function(z){G=z},this.getInputHandler=function(){return G};var V=!1,U=function(z,P){if(V&&(V=!1),A)return N(),z&&f.onPaste(z),A=!1,"";for(var Y=C.selectionStart,X=C.selectionEnd,Q=y,te=v.length-L,ne=z,ie=z.length-Y,ee=z.length-X,J=0;Q>0&&v[J]==z[J];)J++,Q--;for(ne=ne.slice(J),J=1;te>0&&v.length-J>y-1&&v[v.length-J]==z[z.length-J];)J++,te--;ie-=J-1,ee-=J-1;var se=ne.length-J+1;if(se<0&&(Q=-se,se=0),ne=ne.slice(0,se),!P&&!ne&&!ie&&!Q&&!te&&!ee)return"";w=!0;var ue=!1;return S.isAndroid&&ne==". "&&(ne=" ",ue=!0),ne&&!Q&&!te&&!ie&&!ee||p?f.onTextInput(ne):f.onTextInput(ne,{extendLeft:Q,extendRight:te,restoreStart:ie,restoreEnd:ee}),w=!1,v=z,y=Y,L=X,E=ee,ue?`
|
|
176
|
-
`:ne},j=function(z){if($)return le();if(z&&z.inputType){if(z.inputType=="historyUndo")return f.execCommand("undo");if(z.inputType=="historyRedo")return f.execCommand("redo")}var P=C.value,Y=U(P,!0);(P.length>e+100||u.test(Y)||b&&y<1&&y==L)&&N()},Z=function(z,P,Y){var X=z.clipboardData||window.clipboardData;if(!(!X||i)){var Q=n||Y?"Text":"text/plain";try{return P?X.setData(Q,P)!==!1:X.getData(Q)}catch(te){if(!Y)return Z(te,P,!0)}}},K=function(z,P){var Y=f.getCopyText();if(!Y)return T.preventDefault(z);Z(z,Y)?(l&&(N(Y),k=Y,setTimeout(function(){k=!1},10)),P?f.onCut():f.onCopy(),T.preventDefault(z)):(k=!0,C.value=Y,C.select(),setTimeout(function(){k=!1,N(),P?f.onCut():f.onCopy()}))},oe=function(z){K(z,!0)},re=function(z){K(z,!1)},q=function(z){var P=Z(z);o.pasteCancelled()||(typeof P=="string"?(P&&f.onPaste(P,z),S.isIE&&setTimeout(N),T.preventDefault(z)):(C.value="",A=!0))};T.addCommandKeyListener(C,function(z,P,Y){if(!$)return f.onCommandKey(z,P,Y)},f),T.addListener(C,"select",B,f),T.addListener(C,"input",j,f),T.addListener(C,"cut",oe,f),T.addListener(C,"copy",re,f),T.addListener(C,"paste",q,f),(!("oncut"in C)||!("oncopy"in C)||!("onpaste"in C))&&T.addListener(g,"keydown",function(z){if(!(S.isMac&&!z.metaKey||!z.ctrlKey))switch(z.keyCode){case 67:re(z);break;case 86:q(z);break;case 88:oe(z);break}},f);var ae=function(z){if(!($||!f.onCompositionStart||f.$readOnly)&&($={},!p)){z.data&&($.useTextareaForIME=!1),setTimeout(le,0),f._signal("compositionStart"),f.on("mousedown",ge);var P=f.getSelectionRange();P.end.row=P.start.row,P.end.column=P.start.column,$.markerRange=P,$.selectionStart=y,f.onCompositionStart($),$.useTextareaForIME?(v=C.value="",y=0,L=0):(C.msGetInputContext&&($.context=C.msGetInputContext()),C.getInputContext&&($.context=C.getInputContext()))}},le=function(){if(!(!$||!f.onCompositionUpdate||f.$readOnly)){if(p)return ge();if($.useTextareaForIME)f.onCompositionUpdate(C.value);else{var z=C.value;U(z),$.markerRange&&($.context&&($.markerRange.start.column=$.selectionStart=$.context.compositionStartOffset),$.markerRange.end.column=$.markerRange.start.column+L-$.selectionStart+E)}}},ce=function(z){!f.onCompositionEnd||f.$readOnly||($=!1,f.onCompositionEnd(),f.off("mousedown",ge),z&&j())};function ge(){h=!0,C.blur(),C.focus(),h=!1}var ve=c.delayedCall(le,50).schedule.bind(null,null);function Ce(z){z.keyCode==27&&C.value.length<C.selectionStart&&($||(v=C.value),y=L=-1,N()),ve()}T.addListener(C,"compositionstart",ae,f),T.addListener(C,"compositionupdate",le,f),T.addListener(C,"keyup",Ce,f),T.addListener(C,"keydown",ve,f),T.addListener(C,"compositionend",ce,f),this.getElement=function(){return C},this.setCommandMode=function(z){p=z,C.readOnly=!1},this.setReadOnly=function(z){p||(C.readOnly=z)},this.setCopyWithEmptySelection=function(z){},this.onContextMenu=function(z){V=!0,N(),f._emit("nativecontextmenu",{target:f,domEvent:z}),this.moveToMouse(z,!0)},this.moveToMouse=function(z,P){d||(d=C.style.cssText),C.style.cssText=(P?"z-index:100000;":"")+(S.isIE?"opacity:0.1;":"")+"text-indent: -"+(y+L)*f.renderer.characterWidth*.5+"px;";var Y=f.container.getBoundingClientRect(),X=a.computedStyle(f.container),Q=Y.top+(parseInt(X.borderTopWidth)||0),te=Y.left+(parseInt(Y.borderLeftWidth)||0),ne=Y.bottom-Q-C.clientHeight-2,ie=function(ee){a.translate(C,ee.clientX-te-2,Math.min(ee.clientY-Q-2,ne))};ie(z),z.type=="mousedown"&&(f.renderer.$isMousePressed=!0,clearTimeout(pe),S.isWin&&T.capture(f.container,ie,de))},this.onContextMenuClose=de;var pe;function de(){clearTimeout(pe),pe=setTimeout(function(){d&&(C.style.cssText=d,d=""),f.renderer.$isMousePressed=!1,f.renderer.$keepTextAreaAtCursor&&f.renderer.$moveTextAreaToCursor()},0)}var me=function(z){f.textInput.onContextMenu(z),de()};T.addListener(C,"mouseup",me,f),T.addListener(C,"mousedown",function(z){z.preventDefault(),de()},f),T.addListener(f.renderer.scroller,"contextmenu",me,f),T.addListener(C,"contextmenu",me,f),l&&$e(g,f,C);function $e(z,P,Y){var X=null,Q=!1;Y.addEventListener("keydown",function(ne){X&&clearTimeout(X),Q=!0},!0),Y.addEventListener("keyup",function(ne){X=setTimeout(function(){Q=!1},100)},!0);var te=function(ne){if(document.activeElement===Y&&!(Q||$||P.$mouseHandler.isMousePressed)&&!k){var ie=Y.selectionStart,ee=Y.selectionEnd,J=null,se=0;if(ie==0?J=r.up:ie==1?J=r.home:ee>L&&v[ee]==`
|
|
177
|
-
`?J=r.end:ie<y&&v[ie-1]==" "?(J=r.left,se=s.option):ie<y||ie==y&&L!=y&&ie==ee?J=r.left:ee>L&&v.slice(0,ee).split(`
|
|
178
|
-
`).length>2?J=r.down:ee>L&&v[ee-1]==" "?(J=r.right,se=s.option):(ee>L||ee==L&&L!=y&&ie==ee)&&(J=r.right),ie!==ee&&(se|=s.shift),J){var ue=P.onCommandKey({},se,J);if(!ue&&P.commands){J=r.keyCodeToString(J);var ye=P.commands.findKeyCommand(se,J);ye&&P.execCommand(ye)}y=ie,L=ee,N("")}}};document.addEventListener("selectionchange",te),P.on("destroy",function(){document.removeEventListener("selectionchange",te)})}this.destroy=function(){C.parentElement&&C.parentElement.removeChild(C)}},x.TextInput=m,x.$setUserAgentForTests=function(g,f){b=g,l=f}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(I,x,H){var T=I("../lib/useragent"),M=0,S=550,a=function(){function i(n){n.$clickSelection=null;var t=n.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(n)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(n)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(n)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(n)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(n));var e=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];e.forEach(function(r){n[r]=this[r]},this),n.selectByLines=this.extendSelectionBy.bind(n,"getLineRange"),n.selectByWords=this.extendSelectionBy.bind(n,"getWordRange")}return i.prototype.onMouseDown=function(n){var t=n.inSelection(),e=n.getDocumentPosition();this.mousedownEvent=n;var r=this.editor,s=n.getButton();if(s!==0){var l=r.getSelectionRange(),u=l.isEmpty();(u||s==1)&&r.selection.moveToPosition(e),s==2&&(r.textInput.onContextMenu(n.domEvent),T.isMozilla||n.preventDefault());return}if(this.mousedownEvent.time=Date.now(),t&&!r.isFocused()&&(r.focus(),this.$focusTimeout&&!this.$clickSelection&&!r.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(n);return}return this.captureMouse(n),this.startSelect(e,n.domEvent._clicks>1),n.preventDefault()},i.prototype.startSelect=function(n,t){n=n||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var e=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?e.selection.selectToPosition(n):t||e.selection.moveToPosition(n),t||this.select(),e.setStyle("ace_selecting"),this.setState("select"))},i.prototype.select=function(){var n,t=this.editor,e=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(e);if(r==-1)n=this.$clickSelection.end;else if(r==1)n=this.$clickSelection.start;else{var s=o(this.$clickSelection,e);e=s.cursor,n=s.anchor}t.selection.setSelectionAnchor(n.row,n.column)}t.selection.selectToPosition(e),t.renderer.scrollCursorIntoView()},i.prototype.extendSelectionBy=function(n){var t,e=this.editor,r=e.renderer.screenToTextCoordinates(this.x,this.y),s=e.selection[n](r.row,r.column);if(this.$clickSelection){var l=this.$clickSelection.comparePoint(s.start),u=this.$clickSelection.comparePoint(s.end);if(l==-1&&u<=0)t=this.$clickSelection.end,(s.end.row!=r.row||s.end.column!=r.column)&&(r=s.start);else if(u==1&&l>=0)t=this.$clickSelection.start,(s.start.row!=r.row||s.start.column!=r.column)&&(r=s.end);else if(l==-1&&u==1)r=s.end,t=s.start;else{var b=o(this.$clickSelection,r);r=b.cursor,t=b.anchor}e.selection.setSelectionAnchor(t.row,t.column)}e.selection.selectToPosition(r),e.renderer.scrollCursorIntoView()},i.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},i.prototype.focusWait=function(){var n=c(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(n>M||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},i.prototype.onDoubleClick=function(n){var t=n.getDocumentPosition(),e=this.editor,r=e.session,s=r.getBracketRange(t);s?(s.isEmpty()&&(s.start.column--,s.end.column++),this.setState("select")):(s=e.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=s,this.select()},i.prototype.onTripleClick=function(n){var t=n.getDocumentPosition(),e=this.editor;this.setState("selectByLines");var r=e.getSelectionRange();r.isMultiLine()&&r.contains(t.row,t.column)?(this.$clickSelection=e.selection.getLineRange(r.start.row),this.$clickSelection.end=e.selection.getLineRange(r.end.row).end):this.$clickSelection=e.selection.getLineRange(t.row),this.select()},i.prototype.onQuadClick=function(n){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},i.prototype.onMouseWheel=function(n){if(!n.getAccelKey()){n.getShiftKey()&&n.wheelY&&!n.wheelX&&(n.wheelX=n.wheelY,n.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var e=this.$lastScroll,r=n.domEvent.timeStamp,s=r-e.t,l=s?n.wheelX/s:e.vx,u=s?n.wheelY/s:e.vy;s<S&&(l=(l+e.vx)/2,u=(u+e.vy)/2);var b=Math.abs(l/u),m=!1;if(b>=1&&t.renderer.isScrollableBy(n.wheelX*n.speed,0)&&(m=!0),b<=1&&t.renderer.isScrollableBy(0,n.wheelY*n.speed)&&(m=!0),m)e.allowed=r;else if(r-e.allowed<S){var g=Math.abs(l)<=1.5*Math.abs(e.vx)&&Math.abs(u)<=1.5*Math.abs(e.vy);g?(m=!0,e.allowed=r):e.allowed=0}if(e.t=r,e.vx=l,e.vy=u,m)return t.renderer.scrollBy(n.wheelX*n.speed,n.wheelY*n.speed),n.stop()}},i}();a.prototype.selectEnd=a.prototype.selectByLinesEnd,a.prototype.selectAllEnd=a.prototype.selectByLinesEnd,a.prototype.selectByWordsEnd=a.prototype.selectByLinesEnd,x.DefaultHandlers=a;function c(i,n,t,e){return Math.sqrt(Math.pow(t-i,2)+Math.pow(e-n,2))}function o(i,n){if(i.start.row==i.end.row)var t=2*n.column-i.start.column-i.end.column;else if(i.start.row==i.end.row-1&&!i.start.column&&!i.end.column)var t=n.column-4;else var t=2*n.row-i.start.row-i.end.row;return t<0?{cursor:i.start,anchor:i.end}:{cursor:i.end,anchor:i.start}}}),ace.define("ace/lib/scroll",["require","exports","module"],function(I,x,H){x.preventParentScroll=function(M){M.stopPropagation();var S=M.currentTarget,a=S.scrollHeight>S.clientHeight;a||M.preventDefault()}}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(I,x,H){var T=this&&this.__extends||function(){var r=function(s,l){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(u,b){u.__proto__=b}||function(u,b){for(var m in b)Object.prototype.hasOwnProperty.call(b,m)&&(u[m]=b[m])},r(s,l)};return function(s,l){if(typeof l!="function"&&l!==null)throw new TypeError("Class extends value "+String(l)+" is not a constructor or null");r(s,l);function u(){this.constructor=s}s.prototype=l===null?Object.create(l):(u.prototype=l.prototype,new u)}}(),M=this&&this.__values||function(r){var s=typeof Symbol=="function"&&Symbol.iterator,l=s&&r[s],u=0;if(l)return l.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&u>=r.length&&(r=void 0),{value:r&&r[u++],done:!r}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")},S=I("./lib/dom");I("./lib/event");var a=I("./range").Range,c=I("./lib/scroll").preventParentScroll,o="ace_tooltip",i=function(){function r(s){this.isOpen=!1,this.$element=null,this.$parentNode=s}return r.prototype.$init=function(){return this.$element=S.createElement("div"),this.$element.className=o,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},r.prototype.getElement=function(){return this.$element||this.$init()},r.prototype.setText=function(s){this.getElement().textContent=s},r.prototype.setHtml=function(s){this.getElement().innerHTML=s},r.prototype.setPosition=function(s,l){this.getElement().style.left=s+"px",this.getElement().style.top=l+"px"},r.prototype.setClassName=function(s){S.addCssClass(this.getElement(),s)},r.prototype.setTheme=function(s){this.$element.className=o+" "+(s.isDark?"ace_dark ":"")+(s.cssClass||"")},r.prototype.show=function(s,l,u){s!=null&&this.setText(s),l!=null&&u!=null&&this.setPosition(l,u),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},r.prototype.hide=function(s){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=o,this.isOpen=!1)},r.prototype.getHeight=function(){return this.getElement().offsetHeight},r.prototype.getWidth=function(){return this.getElement().offsetWidth},r.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},r}(),n=function(){function r(){this.popups=[]}return r.prototype.addPopup=function(s){this.popups.push(s),this.updatePopups()},r.prototype.removePopup=function(s){var l=this.popups.indexOf(s);l!==-1&&(this.popups.splice(l,1),this.updatePopups())},r.prototype.updatePopups=function(){var s,l,u,b;this.popups.sort(function(d,p){return p.priority-d.priority});var m=[];try{for(var g=M(this.popups),f=g.next();!f.done;f=g.next()){var C=f.value,k=!0;try{for(var A=(u=void 0,M(m)),$=A.next();!$.done;$=A.next()){var w=$.value;if(this.doPopupsOverlap(w,C)){k=!1;break}}}catch(d){u={error:d}}finally{try{$&&!$.done&&(b=A.return)&&b.call(A)}finally{if(u)throw u.error}}k?m.push(C):C.hide()}}catch(d){s={error:d}}finally{try{f&&!f.done&&(l=g.return)&&l.call(g)}finally{if(s)throw s.error}}},r.prototype.doPopupsOverlap=function(s,l){var u=s.getElement().getBoundingClientRect(),b=l.getElement().getBoundingClientRect();return u.left<b.right&&u.right>b.left&&u.top<b.bottom&&u.bottom>b.top},r}(),t=new n;x.popupManager=t,x.Tooltip=i;var e=function(r){T(s,r);function s(l){l===void 0&&(l=document.body);var u=r.call(this,l)||this;u.timeout=void 0,u.lastT=0,u.idleTime=350,u.lastEvent=void 0,u.onMouseOut=u.onMouseOut.bind(u),u.onMouseMove=u.onMouseMove.bind(u),u.waitForHover=u.waitForHover.bind(u),u.hide=u.hide.bind(u);var b=u.getElement();return b.style.whiteSpace="pre-wrap",b.style.pointerEvents="auto",b.addEventListener("mouseout",u.onMouseOut),b.tabIndex=-1,b.addEventListener("blur",(function(){b.contains(document.activeElement)||this.hide()}).bind(u)),b.addEventListener("wheel",c),u}return s.prototype.addToEditor=function(l){l.on("mousemove",this.onMouseMove),l.on("mousedown",this.hide),l.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},s.prototype.removeFromEditor=function(l){l.off("mousemove",this.onMouseMove),l.off("mousedown",this.hide),l.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},s.prototype.onMouseMove=function(l,u){this.lastEvent=l,this.lastT=Date.now();var b=u.$mouseHandler.isMousePressed;if(this.isOpen){var m=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(m.row,m.column)||b||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||b||(this.lastEvent=l,this.timeout=setTimeout(this.waitForHover,this.idleTime))},s.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var l=Date.now()-this.lastT;if(this.idleTime-l>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-l);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},s.prototype.isOutsideOfText=function(l){var u=l.editor,b=l.getDocumentPosition(),m=u.session.getLine(b.row);if(b.column==m.length){var g=u.renderer.pixelToScreenCoordinates(l.clientX,l.clientY),f=u.session.documentToScreenPosition(b.row,b.column);if(f.column!=g.column||f.row!=g.row)return!0}return!1},s.prototype.setDataProvider=function(l){this.$gatherData=l},s.prototype.showForRange=function(l,u,b,m){var g=10;if(!(m&&m!=this.lastEvent)&&!(this.isOpen&&document.activeElement==this.getElement())){var f=l.renderer;this.isOpen||(t.addPopup(this),this.$registerCloseEvents(),this.setTheme(f.theme)),this.isOpen=!0,this.addMarker(u,l.session),this.range=a.fromPoints(u.start,u.end);var C=f.textToScreenCoordinates(u.start.row,u.start.column),k=f.scroller.getBoundingClientRect();C.pageX<k.left&&(C.pageX=k.left);var A=this.getElement();A.innerHTML="",A.appendChild(b),A.style.maxHeight="",A.style.display="block";var $=A.clientHeight,w=A.clientWidth,d=window.innerHeight-C.pageY-f.lineHeight,p=!0;C.pageY-$<0&&C.pageY<d&&(p=!1),A.style.maxHeight=(p?C.pageY:d)-g+"px",A.style.top=p?"":C.pageY+f.lineHeight+"px",A.style.bottom=p?window.innerHeight-C.pageY+"px":"",A.style.left=Math.min(C.pageX,window.innerWidth-w-g)+"px"}},s.prototype.addMarker=function(l,u){this.marker&&this.$markerSession.removeMarker(this.marker),this.$markerSession=u,this.marker=u&&u.addMarker(l,"ace_highlight-marker","text")},s.prototype.hide=function(l){!l&&document.activeElement==this.getElement()||l&&l.target&&(l.type!="keydown"||l.ctrlKey||l.metaKey)&&this.$element.contains(l.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,t.removePopup(this)))},s.prototype.$registerCloseEvents=function(){window.addEventListener("keydown",this.hide,!0),window.addEventListener("wheel",this.hide,!0),window.addEventListener("mousedown",this.hide,!0)},s.prototype.$removeCloseEvents=function(){window.removeEventListener("keydown",this.hide,!0),window.removeEventListener("wheel",this.hide,!0),window.removeEventListener("mousedown",this.hide,!0)},s.prototype.onMouseOut=function(l){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.lastEvent=null,this.isOpen&&(!l.relatedTarget||this.getElement().contains(l.relatedTarget)||l&&l.currentTarget.contains(l.relatedTarget)||l.relatedTarget.classList.contains("ace_content")||this.hide())},s}(i);x.HoverTooltip=e}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/tooltip","ace/config","ace/lib/lang"],function(I,x,H){var T=this&&this.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,l){s.__proto__=l}||function(s,l){for(var u in l)Object.prototype.hasOwnProperty.call(l,u)&&(s[u]=l[u])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function s(){this.constructor=e}e.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),M=this&&this.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],s=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&s>=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},S=I("../lib/dom"),a=I("../lib/event"),c=I("../tooltip").Tooltip,o=I("../config").nls;I("../lib/lang");function i(t){var e=t.editor,r=e.renderer.$gutterLayer,s=new n(e);t.editor.setDefaultHandler("guttermousedown",function(f){if(!(!e.isFocused()||f.getButton()!=0)){var C=r.getRegion(f);if(C!="foldWidgets"){var k=f.getDocumentPosition().row,A=e.session.selection;if(f.getShiftKey())A.selectTo(k,0);else{if(f.domEvent.detail==2)return e.selectAll(),f.preventDefault();t.$clickSelection=e.selection.getLineRange(k)}return t.setState("selectByLines"),t.captureMouse(f),f.preventDefault()}}});var l,u;function b(){var f=u.getDocumentPosition().row,C=e.session.getLength();if(f==C){var k=e.renderer.pixelToScreenCoordinates(0,u.y).row,A=u.$pos;if(k>e.session.documentToScreenRow(A.row,A.column))return m()}if(s.showTooltip(f),!!s.isOpen)if(e.on("mousewheel",m),t.$tooltipFollowsMouse)g(u);else{var $=u.getGutterRow(),w=r.$lines.get($);if(w){var d=w.element.querySelector(".ace_gutter_annotation"),p=d.getBoundingClientRect(),h=s.getElement().style;h.left=p.right+"px",h.top=p.bottom+"px"}else g(u)}}function m(){l&&(l=clearTimeout(l)),s.isOpen&&(s.hideTooltip(),e.off("mousewheel",m))}function g(f){s.setPosition(f.x,f.y)}t.editor.setDefaultHandler("guttermousemove",function(f){var C=f.domEvent.target||f.domEvent.srcElement;if(S.hasCssClass(C,"ace_fold-widget"))return m();s.isOpen&&t.$tooltipFollowsMouse&&g(f),u=f,!l&&(l=setTimeout(function(){l=null,u&&!t.isMousePressed?b():m()},50))}),a.addListener(e.renderer.$gutter,"mouseout",function(f){u=null,!(!s.isOpen||l)&&(l=setTimeout(function(){l=null,m()},50))},e),e.on("changeSession",m),e.on("input",m)}x.GutterHandler=i;var n=function(t){T(e,t);function e(r){var s=t.call(this,r.container)||this;return s.editor=r,s}return e.prototype.setPosition=function(r,s){var l=window.innerWidth||document.documentElement.clientWidth,u=window.innerHeight||document.documentElement.clientHeight,b=this.getWidth(),m=this.getHeight();r+=15,s+=15,r+b>l&&(r-=r+b-l),s+m>u&&(s-=20+m),c.prototype.setPosition.call(this,r,s)},Object.defineProperty(e,"annotationLabels",{get:function(){return{error:{singular:o("gutter-tooltip.aria-label.error.singular","error"),plural:o("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:o("gutter-tooltip.aria-label.security.singular","security finding"),plural:o("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:o("gutter-tooltip.aria-label.warning.singular","warning"),plural:o("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:o("gutter-tooltip.aria-label.info.singular","information message"),plural:o("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:o("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:o("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),e.prototype.showTooltip=function(r){var s,l=this.editor.renderer.$gutterLayer,u=l.$annotations[r],b;u?b={displayText:Array.from(u.displayText),type:Array.from(u.type)}:b={displayText:[],type:[]};var m=l.session.getFoldLine(r);if(m&&l.$showFoldedAnnotations){for(var g={error:[],security:[],warning:[],info:[],hint:[]},f={error:1,security:2,warning:3,info:4,hint:5},C,k=r+1;k<=m.end.row;k++)if(l.$annotations[k])for(var A=0;A<l.$annotations[k].text.length;A++){var $=l.$annotations[k].type[A];g[$].push(l.$annotations[k].text[A]),(!C||f[$]<f[C])&&(C=$)}if(["error","security","warning"].includes(C)){var w="".concat(e.annotationsToSummaryString(g)," in folded code.");b.displayText.push(w),b.type.push(C+"_fold")}}if(b.displayText.length===0)return this.hide();for(var d={error:[],security:[],warning:[],info:[],hint:[]},p=l.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",k=0;k<b.displayText.length;k++){var h=S.createElement("span"),v=S.createElement("span");(s=v.classList).add.apply(s,["ace_".concat(b.type[k]),p]),v.setAttribute("aria-label","".concat(e.annotationLabels[b.type[k].replace("_fold","")].singular)),v.setAttribute("role","img"),v.appendChild(S.createTextNode(" ")),h.appendChild(v),h.appendChild(S.createTextNode(b.displayText[k])),h.appendChild(S.createElement("br")),d[b.type[k].replace("_fold","")].push(h)}var y=this.getElement();S.removeChildren(y),d.error.forEach(function(L){return y.appendChild(L)}),d.security.forEach(function(L){return y.appendChild(L)}),d.warning.forEach(function(L){return y.appendChild(L)}),d.info.forEach(function(L){return y.appendChild(L)}),d.hint.forEach(function(L){return y.appendChild(L)}),y.setAttribute("aria-live","polite"),this.isOpen||(this.setTheme(this.editor.renderer.theme),this.setClassName("ace_gutter-tooltip")),this.show(),this.editor._signal("showGutterTooltip",this)},e.prototype.hideTooltip=function(){this.$element.removeAttribute("aria-live"),this.hide(),this.editor._signal("hideGutterTooltip",this)},e.annotationsToSummaryString=function(r){var s,l,u=[],b=["error","security","warning","info","hint"];try{for(var m=M(b),g=m.next();!g.done;g=m.next()){var f=g.value;if(r[f].length){var C=r[f].length===1?e.annotationLabels[f].singular:e.annotationLabels[f].plural;u.push("".concat(r[f].length," ").concat(C))}}}catch(k){s={error:k}}finally{try{g&&!g.done&&(l=m.return)&&l.call(m)}finally{if(s)throw s.error}}return u.join(", ")},e}(c);x.GutterTooltip=n}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(I,x,H){var T=I("../lib/event"),M=I("../lib/useragent"),S=function(){function a(c,o){this.speed,this.wheelX,this.wheelY,this.domEvent=c,this.editor=o,this.x=this.clientX=c.clientX,this.y=this.clientY=c.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return a.prototype.stopPropagation=function(){T.stopPropagation(this.domEvent),this.propagationStopped=!0},a.prototype.preventDefault=function(){T.preventDefault(this.domEvent),this.defaultPrevented=!0},a.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},a.prototype.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},a.prototype.getGutterRow=function(){var c=this.getDocumentPosition().row,o=this.editor.session.documentToScreenRow(c,0),i=this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0);return o-i},a.prototype.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var c=this.editor,o=c.getSelectionRange();if(o.isEmpty())this.$inSelection=!1;else{var i=this.getDocumentPosition();this.$inSelection=o.contains(i.row,i.column)}return this.$inSelection},a.prototype.getButton=function(){return T.getButton(this.domEvent)},a.prototype.getShiftKey=function(){return this.domEvent.shiftKey},a.prototype.getAccelKey=function(){return M.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},a}();x.MouseEvent=S}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(I,x,H){var T=I("../lib/dom"),M=I("../lib/event"),S=I("../lib/useragent"),a=200,c=200,o=5;function i(t){var e=t.editor,r=T.createElement("div");r.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",r.textContent=" ";var s=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];s.forEach(function(D){t[D]=this[D]},this),e.on("mousedown",this.onMouseDown.bind(t));var l=e.container,u,b,m,g,f,C,k=0,A,$,w,d,p;this.onDragStart=function(D){if(this.cancelDrag||!l.draggable){var N=this;return setTimeout(function(){N.startSelect(),N.captureMouse(D)},0),D.preventDefault()}f=e.getSelectionRange();var O=D.dataTransfer;O.effectAllowed=e.getReadOnly()?"copy":"copyMove",e.container.appendChild(r),O.setDragImage&&O.setDragImage(r,0,0),setTimeout(function(){e.container.removeChild(r)}),O.clearData(),O.setData("Text",e.session.getTextRange()),$=!0,this.setState("drag")},this.onDragEnd=function(D){if(l.draggable=!1,$=!1,this.setState(null),!e.getReadOnly()){var N=D.dataTransfer.dropEffect;!A&&N=="move"&&e.session.remove(e.getSelectionRange()),e.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(D){if(!(e.getReadOnly()||!W(D.dataTransfer)))return b=D.clientX,m=D.clientY,u||L(),k++,D.dataTransfer.dropEffect=A=F(D),M.preventDefault(D)},this.onDragOver=function(D){if(!(e.getReadOnly()||!W(D.dataTransfer)))return b=D.clientX,m=D.clientY,u||(L(),k++),R!==null&&(R=null),D.dataTransfer.dropEffect=A=F(D),M.preventDefault(D)},this.onDragLeave=function(D){if(k--,k<=0&&u)return E(),A=null,M.preventDefault(D)},this.onDrop=function(D){if(C){var N=D.dataTransfer;if($)switch(A){case"move":f.contains(C.row,C.column)?f={start:C,end:C}:f=e.moveText(f,C);break;case"copy":f=e.moveText(f,C,!0);break}else{var O=N.getData("Text");f={start:C,end:e.session.insert(C,O)},e.focus(),A=null}return E(),M.preventDefault(D)}},M.addListener(l,"dragstart",this.onDragStart.bind(t),e),M.addListener(l,"dragend",this.onDragEnd.bind(t),e),M.addListener(l,"dragenter",this.onDragEnter.bind(t),e),M.addListener(l,"dragover",this.onDragOver.bind(t),e),M.addListener(l,"dragleave",this.onDragLeave.bind(t),e),M.addListener(l,"drop",this.onDrop.bind(t),e);function h(D,N){var O=Date.now(),B=!N||D.row!=N.row,G=!N||D.column!=N.column;if(!d||B||G)e.moveCursorToPosition(D),d=O,p={x:b,y:m};else{var V=n(p.x,p.y,b,m);V>o?d=null:O-d>=c&&(e.renderer.scrollCursorIntoView(),d=null)}}function v(D,N){var O=Date.now(),B=e.renderer.layerConfig.lineHeight,G=e.renderer.layerConfig.characterWidth,V=e.renderer.scroller.getBoundingClientRect(),U={x:{left:b-V.left,right:V.right-b},y:{top:m-V.top,bottom:V.bottom-m}},j=Math.min(U.x.left,U.x.right),Z=Math.min(U.y.top,U.y.bottom),K={row:D.row,column:D.column};j/G<=2&&(K.column+=U.x.left<U.x.right?-3:2),Z/B<=1&&(K.row+=U.y.top<U.y.bottom?-1:1);var oe=D.row!=K.row,re=D.column!=K.column,q=!N||D.row!=N.row;oe||re&&!q?w?O-w>=a&&e.renderer.scrollCursorIntoView(K):w=O:w=null}function y(){var D=C;C=e.renderer.screenToTextCoordinates(b,m),h(C,D),v(C,D)}function L(){f=e.selection.toOrientedRange(),u=e.session.addMarker(f,"ace_selection",e.getSelectionStyle()),e.clearSelection(),e.isFocused()&&e.renderer.$cursorLayer.setBlinking(!1),clearInterval(g),y(),g=setInterval(y,20),k=0,M.addListener(document,"mousemove",_)}function E(){clearInterval(g),e.session.removeMarker(u),u=null,e.selection.fromOrientedRange(f),e.isFocused()&&!$&&e.$resetCursorStyle(),f=null,C=null,k=0,w=null,d=null,M.removeListener(document,"mousemove",_)}var R=null;function _(){R==null&&(R=setTimeout(function(){R!=null&&u&&E()},20))}function W(D){var N=D.types;return!N||Array.prototype.some.call(N,function(O){return O=="text/plain"||O=="Text"})}function F(D){var N=["copy","copymove","all","uninitialized"],O=["move","copymove","linkmove","all","uninitialized"],B=S.isMac?D.altKey:D.ctrlKey,G="uninitialized";try{G=D.dataTransfer.effectAllowed.toLowerCase()}catch{}var V="none";return B&&N.indexOf(G)>=0?V="copy":O.indexOf(G)>=0?V="move":N.indexOf(G)>=0&&(V="copy"),V}}(function(){this.dragWait=function(){var t=Date.now()-this.mousedownEvent.time;t>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var t=this.editor.container;t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(t){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var t=this.editor,e=t.container;e.draggable=!0,t.renderer.$cursorLayer.setBlinking(!1),t.setStyle("ace_dragging");var r=S.isWin?"default":"move";t.renderer.setCursorStyle(r),this.setState("dragReady")},this.onMouseDrag=function(t){var e=this.editor.container;if(S.isIE&&this.state=="dragReady"){var r=n(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);r>3&&e.dragDrop()}if(this.state==="dragWait"){var r=n(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);r>0&&(e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(t){if(this.$dragEnabled){this.mousedownEvent=t;var e=this.editor,r=t.inSelection(),s=t.getButton(),l=t.domEvent.detail||1;if(l===1&&s===0&&r){if(t.editor.inMultiSelectMode&&(t.getAccelKey()||t.getShiftKey()))return;this.mousedownEvent.time=Date.now();var u=t.domEvent.target||t.domEvent.srcElement;if("unselectable"in u&&(u.unselectable="on"),e.getDragDelay()){if(S.isWebKit){this.cancelDrag=!0;var b=e.container;b.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(t,this.onMouseDrag.bind(this)),t.defaultPrevented=!0}}}}).call(i.prototype);function n(t,e,r,s){return Math.sqrt(Math.pow(r-t,2)+Math.pow(s-e,2))}x.DragdropHandler=i}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(I,x,H){var T=I("./mouse_event").MouseEvent,M=I("../lib/event"),S=I("../lib/dom");x.addTouchListeners=function(a,c){var o="scroll",i,n,t,e,r,s,l=0,u,b=0,m=0,g=0,f,C;function k(){var h=window.navigator&&window.navigator.clipboard,v=!1,y=function(){var R=c.getCopyText(),_=c.session.getUndoManager().hasUndo();C.replaceChild(S.buildDom(v?["span",!R&&L("selectall")&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],R&&L("copy")&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],R&&L("cut")&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],h&&L("paste")&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],_&&L("undo")&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],L("find")&&["span",{class:"ace_mobile-button",action:"find"},"Find"],L("openCommandPalette")&&["span",{class:"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),C.firstChild)},L=function(R){return c.commands.canExecute(R,c)},E=function(R){var _=R.target.getAttribute("action");if(_=="more"||!v)return v=!v,y();_=="paste"?h.readText().then(function(W){c.execCommand(_,W)}):_&&((_=="cut"||_=="copy")&&(h?h.writeText(c.getCopyText()):document.execCommand("copy")),c.execCommand(_)),C.firstChild.style.display="none",v=!1,_!="openCommandPalette"&&c.focus()};C=S.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(R){o="menu",R.stopPropagation(),R.preventDefault(),c.textInput.focus()},ontouchend:function(R){R.stopPropagation(),R.preventDefault(),E(R)},onclick:E},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],c.container)}function A(){if(!c.getOption("enableMobileMenu")){C&&$();return}C||k();var h=c.selection.cursor,v=c.renderer.textToScreenCoordinates(h.row,h.column),y=c.renderer.textToScreenCoordinates(0,0).pageX,L=c.renderer.scrollLeft,E=c.container.getBoundingClientRect();C.style.top=v.pageY-E.top-3+"px",v.pageX-E.left<E.width-70?(C.style.left="",C.style.right="10px"):(C.style.right="",C.style.left=y+L-E.left+"px"),C.style.display="",C.firstChild.style.display="none",c.on("input",$)}function $(h){C&&(C.style.display="none"),c.off("input",$)}function w(){r=null,clearTimeout(r);var h=c.selection.getRange(),v=h.contains(u.row,u.column);(h.isEmpty()||!v)&&(c.selection.moveToPosition(u),c.selection.selectWord()),o="wait",A()}function d(){r=null,clearTimeout(r),c.selection.moveToPosition(u);var h=b>=2?c.selection.getLineRange(u.row):c.session.getBracketRange(u);h&&!h.isEmpty()?c.selection.setRange(h):c.selection.selectWord(),o="wait"}M.addListener(a,"contextmenu",function(h){if(f){var v=c.textInput.getElement();v.focus()}},c),M.addListener(a,"touchstart",function(h){var v=h.touches;if(r||v.length>1){clearTimeout(r),r=null,t=-1,o="zoom";return}f=c.$mouseHandler.isMousePressed=!0;var y=c.renderer.layerConfig.lineHeight,L=c.renderer.layerConfig.lineHeight,E=h.timeStamp;e=E;var R=v[0],_=R.clientX,W=R.clientY;Math.abs(i-_)+Math.abs(n-W)>y&&(t=-1),i=h.clientX=_,n=h.clientY=W,m=g=0;var F=new T(h,c);if(u=F.getDocumentPosition(),E-t<500&&v.length==1&&!l)b++,h.preventDefault(),h.button=0,d();else{b=0;var D=c.selection.cursor,N=c.selection.isEmpty()?D:c.selection.anchor,O=c.renderer.$cursorLayer.getPixelPosition(D,!0),B=c.renderer.$cursorLayer.getPixelPosition(N,!0),G=c.renderer.scroller.getBoundingClientRect(),V=c.renderer.layerConfig.offset,U=c.renderer.scrollLeft,j=function(oe,re){return oe=oe/L,re=re/y-.75,oe*oe+re*re};if(h.clientX<G.left){o="zoom";return}var Z=j(h.clientX-G.left-O.left+U,h.clientY-G.top-O.top+V),K=j(h.clientX-G.left-B.left+U,h.clientY-G.top-B.top+V);Z<3.5&&K<3.5&&(o=Z>K?"cursor":"anchor"),K<3.5?o="anchor":Z<3.5?o="cursor":o="scroll",r=setTimeout(w,450)}t=E},c),M.addListener(a,"touchend",function(h){f=c.$mouseHandler.isMousePressed=!1,s&&clearInterval(s),o=="zoom"?(o="",l=0):r?(c.selection.moveToPosition(u),l=0,A()):o=="scroll"?(p(),$()):A(),clearTimeout(r),r=null},c),M.addListener(a,"touchmove",function(h){r&&(clearTimeout(r),r=null);var v=h.touches;if(!(v.length>1||o=="zoom")){var y=v[0],L=i-y.clientX,E=n-y.clientY;if(o=="wait")if(L*L+E*E>4)o="cursor";else return h.preventDefault();i=y.clientX,n=y.clientY,h.clientX=y.clientX,h.clientY=y.clientY;var R=h.timeStamp,_=R-e;if(e=R,o=="scroll"){var W=new T(h,c);W.speed=1,W.wheelX=L,W.wheelY=E,10*Math.abs(L)<Math.abs(E)&&(L=0),10*Math.abs(E)<Math.abs(L)&&(E=0),_!=0&&(m=L/_,g=E/_),c._emit("mousewheel",W),W.propagationStopped||(m=g=0)}else{var F=new T(h,c),D=F.getDocumentPosition();o=="cursor"?c.selection.moveCursorToPosition(D):o=="anchor"&&c.selection.setSelectionAnchor(D.row,D.column),c.renderer.scrollCursorIntoView(D),h.preventDefault()}}},c);function p(){l+=60,s=setInterval(function(){l--<=0&&(clearInterval(s),s=null),Math.abs(m)<.01&&(m=0),Math.abs(g)<.01&&(g=0),l<20&&(m=.9*m),l<20&&(g=.9*g);var h=c.session.getScrollTop();c.renderer.scrollBy(10*m,10*g),h==c.session.getScrollTop()&&(l=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(I,x,H){var T=I("../lib/event"),M=I("../lib/useragent"),S=I("./default_handlers").DefaultHandlers,a=I("./default_gutter_handler").GutterHandler,c=I("./mouse_event").MouseEvent,o=I("./dragdrop_handler").DragdropHandler,i=I("./touch_handler").addTouchListeners,n=I("../config"),t=function(){function e(r){this.$dragDelay,this.$dragEnabled,this.$mouseMoved,this.mouseEvent,this.$focusTimeout;var s=this;this.editor=r,new S(this),new a(this),new o(this);var l=function(m){var g=!document.hasFocus||!document.hasFocus()||!r.isFocused()&&document.activeElement==(r.textInput&&r.textInput.getElement());g&&window.focus(),r.focus(),setTimeout(function(){r.isFocused()||r.focus()})},u=r.renderer.getMouseEventTarget();T.addListener(u,"click",this.onMouseEvent.bind(this,"click"),r),T.addListener(u,"mousemove",this.onMouseMove.bind(this,"mousemove"),r),T.addMultiMouseDownListener([u,r.renderer.scrollBarV&&r.renderer.scrollBarV.inner,r.renderer.scrollBarH&&r.renderer.scrollBarH.inner,r.textInput&&r.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent",r),T.addMouseWheelListener(r.container,this.onMouseWheel.bind(this,"mousewheel"),r),i(r.container,r);var b=r.renderer.$gutter;T.addListener(b,"mousedown",this.onMouseEvent.bind(this,"guttermousedown"),r),T.addListener(b,"click",this.onMouseEvent.bind(this,"gutterclick"),r),T.addListener(b,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick"),r),T.addListener(b,"mousemove",this.onMouseEvent.bind(this,"guttermousemove"),r),T.addListener(u,"mousedown",l,r),T.addListener(b,"mousedown",l,r),M.isIE&&r.renderer.scrollBarV&&(T.addListener(r.renderer.scrollBarV.element,"mousedown",l,r),T.addListener(r.renderer.scrollBarH.element,"mousedown",l,r)),r.on("mousemove",function(m){if(!(s.state||s.$dragDelay||!s.$dragEnabled)){var g=r.renderer.screenToTextCoordinates(m.x,m.y),f=r.session.selection.getRange(),C=r.renderer;!f.isEmpty()&&f.insideStart(g.row,g.column)?C.setCursorStyle("default"):C.setCursorStyle("")}},r)}return e.prototype.onMouseEvent=function(r,s){this.editor.session&&this.editor._emit(r,new c(s,this.editor))},e.prototype.onMouseMove=function(r,s){var l=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;!l||!l.length||this.editor._emit(r,new c(s,this.editor))},e.prototype.onMouseWheel=function(r,s){var l=new c(s,this.editor);l.speed=this.$scrollSpeed*2,l.wheelX=s.wheelX,l.wheelY=s.wheelY,this.editor._emit(r,l)},e.prototype.setState=function(r){this.state=r},e.prototype.captureMouse=function(r,s){this.x=r.x,this.y=r.y,this.isMousePressed=!0;var l=this.editor,u=this.editor.renderer;u.$isMousePressed=!0;var b=this,m=function(A){if(A){if(M.isWebKit&&!A.which&&b.releaseMouse)return b.releaseMouse();b.x=A.clientX,b.y=A.clientY,s&&s(A),b.mouseEvent=new c(A,b.editor),b.$mouseMoved=!0}},g=function(A){l.off("beforeEndOperation",C),clearInterval(k),l.session&&f(),b[b.state+"End"]&&b[b.state+"End"](A),b.state="",b.isMousePressed=u.$isMousePressed=!1,u.$keepTextAreaAtCursor&&u.$moveTextAreaToCursor(),b.$onCaptureMouseMove=b.releaseMouse=null,A&&b.onMouseEvent("mouseup",A),l.endOperation()},f=function(){b[b.state]&&b[b.state](),b.$mouseMoved=!1};if(M.isOldIE&&r.domEvent.type=="dblclick")return setTimeout(function(){g(r)});var C=function(A){b.releaseMouse&&l.curOp.command.name&&l.curOp.selectionChanged&&(b[b.state+"End"]&&b[b.state+"End"](),b.state="",b.releaseMouse())};l.on("beforeEndOperation",C),l.startOperation({command:{name:"mouse"}}),b.$onCaptureMouseMove=m,b.releaseMouse=T.capture(this.editor.container,m,g);var k=setInterval(f,20)},e.prototype.cancelContextMenu=function(){var r=(function(s){s&&s.domEvent&&s.domEvent.type!="contextmenu"||(this.editor.off("nativecontextmenu",r),s&&s.domEvent&&T.stopEvent(s.domEvent))}).bind(this);setTimeout(r,10),this.editor.on("nativecontextmenu",r)},e.prototype.destroy=function(){this.releaseMouse&&this.releaseMouse()},e}();t.prototype.releaseMouse=null,n.defineOptions(t.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:M.isMac?150:0},dragEnabled:{initialValue:!0},focusTimeout:{initialValue:0},tooltipFollowsMouse:{initialValue:!0}}),x.MouseHandler=t}),ace.define("ace/mouse/fold_handler",["require","exports","module","ace/lib/dom"],function(I,x,H){var T=I("../lib/dom"),M=function(){function S(a){a.on("click",function(c){var o=c.getDocumentPosition(),i=a.session,n=i.getFoldAt(o.row,o.column,1);n&&(c.getAccelKey()?i.removeFold(n):i.expandFold(n),c.stop());var t=c.domEvent&&c.domEvent.target;t&&T.hasCssClass(t,"ace_inline_button")&&T.hasCssClass(t,"ace_toggle_wrap")&&(i.setOption("wrap",!i.getUseWrapMode()),a.renderer.scrollCursorIntoView())}),a.on("gutterclick",function(c){var o=a.renderer.$gutterLayer.getRegion(c);if(o=="foldWidgets"){var i=c.getDocumentPosition().row,n=a.session;n.foldWidgets&&n.foldWidgets[i]&&a.session.onFoldWidgetClick(i,c),a.isFocused()||a.focus(),c.stop()}}),a.on("gutterdblclick",function(c){var o=a.renderer.$gutterLayer.getRegion(c);if(o=="foldWidgets"){var i=c.getDocumentPosition().row,n=a.session,t=n.getParentFoldRangeData(i,!0),e=t.range||t.firstRange;if(e){i=e.start.row;var r=n.getFoldAt(i,n.getLine(i).length,1);r?n.removeFold(r):(n.addFold("...",e),a.renderer.scrollCursorIntoView({row:e.start.row,column:0}))}c.stop()}})}return S}();x.FoldHandler=M}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(I,x,H){var T=I("../lib/keys"),M=I("../lib/event"),S=function(){function a(c){this.$editor=c,this.$data={editor:c},this.$handlers=[],this.setDefaultHandler(c.commands)}return a.prototype.setDefaultHandler=function(c){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=c,this.addKeyboardHandler(c,0)},a.prototype.setKeyboardHandler=function(c){var o=this.$handlers;if(o[o.length-1]!=c){for(;o[o.length-1]&&o[o.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(o[o.length-1]);this.addKeyboardHandler(c,1)}},a.prototype.addKeyboardHandler=function(c,o){if(c){typeof c=="function"&&!c.handleKeyboard&&(c.handleKeyboard=c);var i=this.$handlers.indexOf(c);i!=-1&&this.$handlers.splice(i,1),o==null?this.$handlers.push(c):this.$handlers.splice(o,0,c),i==-1&&c.attach&&c.attach(this.$editor)}},a.prototype.removeKeyboardHandler=function(c){var o=this.$handlers.indexOf(c);return o==-1?!1:(this.$handlers.splice(o,1),c.detach&&c.detach(this.$editor),!0)},a.prototype.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},a.prototype.getStatusText=function(){var c=this.$data,o=c.editor;return this.$handlers.map(function(i){return i.getStatusText&&i.getStatusText(o,c)||""}).filter(Boolean).join(" ")},a.prototype.$callKeyboardHandlers=function(c,o,i,n){for(var t,e=!1,r=this.$editor.commands,s=this.$handlers.length;s--&&(t=this.$handlers[s].handleKeyboard(this.$data,c,o,i,n),!(!(!t||!t.command)&&(t.command=="null"?e=!0:e=r.exec(t.command,this.$editor,t.args,n),e&&n&&c!=-1&&t.passEvent!=!0&&t.command.passEvent!=!0&&M.stopEvent(n),e))););return!e&&c==-1&&(t={command:"insertstring"},e=r.exec("insertstring",this.$editor,o)),e&&this.$editor._signal&&this.$editor._signal("keyboardActivity",t),e},a.prototype.onCommandKey=function(c,o,i){var n=T.keyCodeToString(i);return this.$callKeyboardHandlers(o,n,i,c)},a.prototype.onTextInput=function(c){return this.$callKeyboardHandlers(-1,c)},a}();x.KeyBinding=S}),ace.define("ace/lib/bidiutil",["require","exports","module"],function(I,x,H){var T=0,M=0,S=!1,a=!1,c=!1,o=[[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]],i=[[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]],n=0,t=1,e=0,r=1,s=2,l=3,u=4,b=5,m=6,g=7,f=8,C=9,k=10,A=11,$=12,w=13,d=14,p=15,h=16,v=17,y=18,L=[y,y,y,y,y,y,y,y,y,m,b,m,f,b,y,y,y,y,y,y,y,y,y,y,y,y,y,y,b,b,b,m,f,u,u,A,A,A,u,u,u,u,u,k,C,k,C,C,s,s,s,s,s,s,s,s,s,s,C,u,u,u,u,u,u,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,u,u,u,u,u,u,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,u,u,u,u,y,y,y,y,y,y,b,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,C,u,A,A,A,A,u,u,u,u,e,u,u,y,u,u,A,A,s,s,u,e,u,u,u,s,e,u,u,u,u,u],E=[f,f,f,f,f,f,f,f,f,f,f,y,y,y,e,r,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,f,b,w,d,p,h,v,C,A,A,A,A,A,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,C,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,u,f];function R(D,N,O,B){var G=T?i:o,V=null,U=null,j=null,Z=0,K=null,oe=null,re=-1,q=null,ae=null,le=[];if(!B)for(q=0,B=[];q<O;q++)B[q]=F(D[q]);for(M=T,S=!1,a=!1,c=!1,ae=0;ae<O;ae++){if(V=Z,le[ae]=U=W(D,B,le,ae),Z=G[V][U],K=Z&240,Z&=15,N[ae]=j=G[Z][5],K>0)if(K==16){for(q=re;q<ae;q++)N[q]=1;re=-1}else re=-1;if(oe=G[Z][6],oe)re==-1&&(re=ae);else if(re>-1){for(q=re;q<ae;q++)N[q]=j;re=-1}B[ae]==b&&(N[ae]=0),M|=j}if(c){for(q=0;q<O;q++)if(B[q]==m){N[q]=T;for(var ce=q-1;ce>=0&&B[ce]==f;ce--)N[ce]=T}}}function _(D,N,O){if(!(M<D)){if(D==1&&T==t&&!a){O.reverse();return}for(var B=O.length,G=0,V,U,j,Z;G<B;){if(N[G]>=D){for(V=G+1;V<B&&N[V]>=D;)V++;for(U=G,j=V-1;U<j;U++,j--)Z=O[U],O[U]=O[j],O[j]=Z;G=V}G++}}}function W(D,N,O,B){var G=N[B],V,U,j,Z;switch(G){case e:case r:S=!1;case u:case l:return G;case s:return S?l:s;case g:return S=!0,r;case f:return u;case C:return B<1||B+1>=N.length||(V=O[B-1])!=s&&V!=l||(U=N[B+1])!=s&&U!=l?u:(S&&(U=l),U==V?U:u);case k:return V=B>0?O[B-1]:b,V==s&&B+1<N.length&&N[B+1]==s?s:u;case A:if(B>0&&O[B-1]==s)return s;if(S)return u;for(Z=B+1,j=N.length;Z<j&&N[Z]==A;)Z++;return Z<j&&N[Z]==s?s:u;case $:for(j=N.length,Z=B+1;Z<j&&N[Z]==$;)Z++;if(Z<j){var K=D[B],oe=K>=1425&&K<=2303||K==64286;if(V=N[Z],oe&&(V==r||V==g))return r}return B<1||(V=N[B-1])==b?u:O[B-1];case b:return S=!1,a=!0,T;case m:return c=!0,u;case w:case d:case h:case v:case p:S=!1;case y:return u}}function F(D){var N=D.charCodeAt(0),O=N>>8;return O==0?N>191?e:L[N]:O==5?/[\u0591-\u05f4]/.test(D)?r:e:O==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(D)?$:/[\u0660-\u0669\u066b-\u066c]/.test(D)?l:N==1642?A:/[\u06f0-\u06f9]/.test(D)?s:g:O==32&&N<=8287?E[N&255]:O==254&&N>=65136?g:u}x.L=e,x.R=r,x.EN=s,x.ON_R=3,x.AN=4,x.R_H=5,x.B=6,x.RLE=7,x.DOT="·",x.doBidiReorder=function(D,N,O){if(D.length<2)return{};var B=D.split(""),G=new Array(B.length),V=new Array(B.length),U=[];T=O?t:n,R(B,U,B.length,N);for(var j=0;j<G.length;G[j]=j,j++);_(2,U,G),_(1,U,G);for(var j=0;j<G.length-1;j++)N[j]===l?U[j]=x.AN:U[j]===r&&(N[j]>g&&N[j]<w||N[j]===u||N[j]===y)?U[j]=x.ON_R:j>0&&B[j-1]==="ل"&&/\u0622|\u0623|\u0625|\u0627/.test(B[j])&&(U[j-1]=U[j]=x.R_H,j++);B[B.length-1]===x.DOT&&(U[B.length-1]=x.B),B[0]===""&&(U[0]=x.RLE);for(var j=0;j<G.length;j++)V[j]=U[G[j]];return{logicalFromVisual:G,bidiLevels:V}},x.hasBidiCharacters=function(D,N){for(var O=!1,B=0;B<D.length;B++)N[B]=F(D.charAt(B)),!O&&(N[B]==r||N[B]==g||N[B]==l)&&(O=!0);return O},x.getVisualFromLogicalIdx=function(D,N){for(var O=0;O<N.logicalFromVisual.length;O++)if(N.logicalFromVisual[O]==D)return O;return 0}}),ace.define("ace/bidihandler",["require","exports","module","ace/lib/bidiutil","ace/lib/lang"],function(I,x,H){var T=I("./lib/bidiutil"),M=I("./lib/lang"),S=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\u202B]/,a=function(){function c(o){this.session=o,this.bidiMap={},this.currentRow=null,this.bidiUtil=T,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=S.test(o.getValue())}return c.prototype.isBidiRow=function(o,i,n){return this.seenBidi?(o!==this.currentRow&&(this.currentRow=o,this.updateRowLine(i,n),this.updateBidiMap()),this.bidiMap.bidiLevels):!1},c.prototype.onChange=function(o){this.seenBidi?this.currentRow=null:o.action=="insert"&&S.test(o.lines.join(`
|
|
179
|
-
`))&&(this.seenBidi=!0,this.currentRow=null)},c.prototype.getDocumentRow=function(){var o=0,i=this.session.$screenRowCache;if(i.length){var n=this.session.$getRowCacheIndex(i,this.currentRow);n>=0&&(o=this.session.$docRowCache[n])}return o},c.prototype.getSplitIndex=function(){var o=0,i=this.session.$screenRowCache;if(i.length)for(var n,t=this.session.$getRowCacheIndex(i,this.currentRow);this.currentRow-o>0&&(n=this.session.$getRowCacheIndex(i,this.currentRow-o-1),n===t);)t=n,o++;else o=this.currentRow;return o},c.prototype.updateRowLine=function(o,i){o===void 0&&(o=this.getDocumentRow());var n=o===this.session.getLength()-1,t=n?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(o),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var e=this.session.$wrapData[o];e&&(i===void 0&&(i=this.getSplitIndex()),i>0&&e.length?(this.wrapIndent=e.indent,this.wrapOffset=this.wrapIndent*this.charWidths[T.L],this.line=i<e.length?this.line.substring(e[i-1],e[i]):this.line.substring(e[e.length-1])):this.line=this.line.substring(0,e[i]),i==e.length&&(this.line+=this.showInvisibles?t:T.DOT))}else this.line+=this.showInvisibles?t:T.DOT;var r=this.session,s=0,l;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function(u,b){return u===" "||r.isFullWidth(u.charCodeAt(0))?(l=u===" "?r.getScreenTabSize(b+s):2,s+=l-1,M.stringRepeat(T.DOT,l)):u}),this.isRtlDir&&(this.fontMetrics.$main.textContent=this.line.charAt(this.line.length-1)==T.DOT?this.line.substr(0,this.line.length-1):this.line,this.rtlLineOffset=this.contentWidth-this.fontMetrics.$main.getBoundingClientRect().width)},c.prototype.updateBidiMap=function(){var o=[];T.hasBidiCharacters(this.line,o)||this.isRtlDir?this.bidiMap=T.doBidiReorder(this.line,o,this.isRtlDir):this.bidiMap={}},c.prototype.markAsDirty=function(){this.currentRow=null},c.prototype.updateCharacterWidths=function(o){if(this.characterWidth!==o.$characterSize.width){this.fontMetrics=o;var i=this.characterWidth=o.$characterSize.width,n=o.$measureCharWidth("ה");this.charWidths[T.L]=this.charWidths[T.EN]=this.charWidths[T.ON_R]=i,this.charWidths[T.R]=this.charWidths[T.AN]=n,this.charWidths[T.R_H]=n*.45,this.charWidths[T.B]=this.charWidths[T.RLE]=0,this.currentRow=null}},c.prototype.setShowInvisibles=function(o){this.showInvisibles=o,this.currentRow=null},c.prototype.setEolChar=function(o){this.EOL=o},c.prototype.setContentWidth=function(o){this.contentWidth=o},c.prototype.isRtlLine=function(o){return this.$isRtl?!0:o!=null?this.session.getLine(o).charAt(0)==this.RLE:this.isRtlDir},c.prototype.setRtlDirection=function(o,i){for(var n=o.getCursorPosition(),t=o.selection.getSelectionAnchor().row;t<=n.row;t++)!i&&o.session.getLine(t).charAt(0)===o.session.$bidiHandler.RLE?o.session.doc.removeInLine(t,0,1):i&&o.session.getLine(t).charAt(0)!==o.session.$bidiHandler.RLE&&o.session.doc.insert({column:0,row:t},o.session.$bidiHandler.RLE)},c.prototype.getPosLeft=function(o){o-=this.wrapIndent;var i=this.line.charAt(0)===this.RLE?1:0,n=o>i?this.session.getOverwrite()?o:o-1:i,t=T.getVisualFromLogicalIdx(n,this.bidiMap),e=this.bidiMap.bidiLevels,r=0;!this.session.getOverwrite()&&o<=i&&e[t]%2!==0&&t++;for(var s=0;s<t;s++)r+=this.charWidths[e[s]];return!this.session.getOverwrite()&&o>i&&e[t]%2===0&&(r+=this.charWidths[e[t]]),this.wrapIndent&&(r+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(r+=this.rtlLineOffset),r},c.prototype.getSelections=function(o,i){var n=this.bidiMap,t=n.bidiLevels,e,r=[],s=0,l=Math.min(o,i)-this.wrapIndent,u=Math.max(o,i)-this.wrapIndent,b=!1,m=!1,g=0;this.wrapIndent&&(s+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var f,C=0;C<t.length;C++)f=n.logicalFromVisual[C],e=t[C],b=f>=l&&f<u,b&&!m?g=s:!b&&m&&r.push({left:g,width:s-g}),s+=this.charWidths[e],m=b;if(b&&C===t.length&&r.push({left:g,width:s-g}),this.isRtlDir)for(var k=0;k<r.length;k++)r[k].left+=this.rtlLineOffset;return r},c.prototype.offsetToCol=function(n){this.isRtlDir&&(n-=this.rtlLineOffset);var i=0,n=Math.max(n,0),t=0,e=0,r=this.bidiMap.bidiLevels,s=this.charWidths[r[e]];for(this.wrapIndent&&(n-=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);n>t+s/2;){if(t+=s,e===r.length-1){s=0;break}s=this.charWidths[r[++e]]}return e>0&&r[e-1]%2!==0&&r[e]%2===0?(n<t&&e--,i=this.bidiMap.logicalFromVisual[e]):e>0&&r[e-1]%2===0&&r[e]%2!==0?i=1+(n>t?this.bidiMap.logicalFromVisual[e]:this.bidiMap.logicalFromVisual[e-1]):this.isRtlDir&&e===r.length-1&&s===0&&r[e-1]%2===0||!this.isRtlDir&&e===0&&r[e]%2!==0?i=1+this.bidiMap.logicalFromVisual[e]:(e>0&&r[e-1]%2!==0&&s!==0&&e--,i=this.bidiMap.logicalFromVisual[e]),i===0&&this.isRtlDir&&i++,i+this.wrapIndent},c}();x.BidiHandler=a}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(I,x,H){var T=I("./lib/oop"),M=I("./lib/lang"),S=I("./lib/event_emitter").EventEmitter,a=I("./range").Range,c=function(){function o(i){this.session=i,this.doc=i.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var n=this;this.cursor.on("change",function(t){n.$cursorChanged=!0,n.$silent||n._emit("changeCursor"),!n.$isEmpty&&!n.$silent&&n._emit("changeSelection"),!n.$keepDesiredColumnOnChange&&t.old.column!=t.value.column&&(n.$desiredColumn=null)}),this.anchor.on("change",function(){n.$anchorChanged=!0,!n.$isEmpty&&!n.$silent&&n._emit("changeSelection")})}return o.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},o.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},o.prototype.getCursor=function(){return this.lead.getPosition()},o.prototype.setAnchor=function(i,n){this.$isEmpty=!1,this.anchor.setPosition(i,n)},o.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},o.prototype.getSelectionLead=function(){return this.lead.getPosition()},o.prototype.isBackwards=function(){var i=this.anchor,n=this.lead;return i.row>n.row||i.row==n.row&&i.column>n.column},o.prototype.getRange=function(){var i=this.anchor,n=this.lead;return this.$isEmpty?a.fromPoints(n,n):this.isBackwards()?a.fromPoints(n,i):a.fromPoints(i,n)},o.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},o.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},o.prototype.setRange=function(i,n){var t=n?i.end:i.start,e=n?i.start:i.end;this.$setSelection(t.row,t.column,e.row,e.column)},o.prototype.$setSelection=function(i,n,t,e){if(!this.$silent){var r=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(i,n),this.cursor.setPosition(t,e),this.$isEmpty=!a.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||r!=this.$isEmpty||s)&&this._emit("changeSelection")}},o.prototype.$moveSelection=function(i){var n=this.lead;this.$isEmpty&&this.setSelectionAnchor(n.row,n.column),i.call(this)},o.prototype.selectTo=function(i,n){this.$moveSelection(function(){this.moveCursorTo(i,n)})},o.prototype.selectToPosition=function(i){this.$moveSelection(function(){this.moveCursorToPosition(i)})},o.prototype.moveTo=function(i,n){this.clearSelection(),this.moveCursorTo(i,n)},o.prototype.moveToPosition=function(i){this.clearSelection(),this.moveCursorToPosition(i)},o.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},o.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},o.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},o.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},o.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},o.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},o.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},o.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},o.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},o.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},o.prototype.getWordRange=function(i,n){if(typeof n>"u"){var t=i||this.lead;i=t.row,n=t.column}return this.session.getWordRange(i,n)},o.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},o.prototype.selectAWord=function(){var i=this.getCursor(),n=this.session.getAWordRange(i.row,i.column);this.setSelectionRange(n)},o.prototype.getLineRange=function(i,n){var t=typeof i=="number"?i:this.lead.row,e,r=this.session.getFoldLine(t);return r?(t=r.start.row,e=r.end.row):e=t,n===!0?new a(t,0,e,this.session.getLine(e).length):new a(t,0,e+1,0)},o.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},o.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},o.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},o.prototype.wouldMoveIntoSoftTab=function(i,n,t){var e=i.column,r=i.column+n;return t<0&&(e=i.column-n,r=i.column),this.session.isTabStop(i)&&this.doc.getLine(i.row).slice(e,r).split(" ").length-1==n},o.prototype.moveCursorLeft=function(){var i=this.lead.getPosition(),n;if(n=this.session.getFoldAt(i.row,i.column,-1))this.moveCursorTo(n.start.row,n.start.column);else if(i.column===0)i.row>0&&this.moveCursorTo(i.row-1,this.doc.getLine(i.row-1).length);else{var t=this.session.getTabSize();this.wouldMoveIntoSoftTab(i,t,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-t):this.moveCursorBy(0,-1)}},o.prototype.moveCursorRight=function(){var i=this.lead.getPosition(),n;if(n=this.session.getFoldAt(i.row,i.column,1))this.moveCursorTo(n.end.row,n.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 t=this.session.getTabSize(),i=this.lead;this.wouldMoveIntoSoftTab(i,t,1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,t):this.moveCursorBy(0,1)}},o.prototype.moveCursorLineStart=function(){var i=this.lead.row,n=this.lead.column,t=this.session.documentToScreenRow(i,n),e=this.session.screenToDocumentPosition(t,0),r=this.session.getDisplayLine(i,null,e.row,e.column),s=r.match(/^\s*/);s[0].length!=n&&!this.session.$useEmacsStyleLineStart&&(e.column+=s[0].length),this.moveCursorToPosition(e)},o.prototype.moveCursorLineEnd=function(){var i=this.lead,n=this.session.getDocumentLastRowColumnPosition(i.row,i.column);if(this.lead.column==n.column){var t=this.session.getLine(n.row);if(n.column==t.length){var e=t.search(/\s+$/);e>0&&(n.column=e)}}this.moveCursorTo(n.row,n.column)},o.prototype.moveCursorFileEnd=function(){var i=this.doc.getLength()-1,n=this.doc.getLine(i).length;this.moveCursorTo(i,n)},o.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},o.prototype.moveCursorLongWordRight=function(){var i=this.lead.row,n=this.lead.column,t=this.doc.getLine(i),e=t.substring(n);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var r=this.session.getFoldAt(i,n,1);if(r){this.moveCursorTo(r.end.row,r.end.column);return}if(this.session.nonTokenRe.exec(e)&&(n+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,e=t.substring(n)),n>=t.length){this.moveCursorTo(i,t.length),this.moveCursorRight(),i<this.doc.getLength()-1&&this.moveCursorWordRight();return}this.session.tokenRe.exec(e)&&(n+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(i,n)},o.prototype.moveCursorLongWordLeft=function(){var i=this.lead.row,n=this.lead.column,t;if(t=this.session.getFoldAt(i,n,-1)){this.moveCursorTo(t.start.row,t.start.column);return}var e=this.session.getFoldStringAt(i,n,-1);e==null&&(e=this.doc.getLine(i).substring(0,n));var r=M.stringReverse(e);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(r)&&(n-=this.session.nonTokenRe.lastIndex,r=r.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),n<=0){this.moveCursorTo(i,0),this.moveCursorLeft(),i>0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(r)&&(n-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(i,n)},o.prototype.$shortWordEndIndex=function(i){var n=0,t,e=/\s/,r=this.session.tokenRe;if(r.lastIndex=0,this.session.tokenRe.exec(i))n=this.session.tokenRe.lastIndex;else{for(;(t=i[n])&&e.test(t);)n++;if(n<1){for(r.lastIndex=0;(t=i[n])&&!r.test(t);)if(r.lastIndex=0,n++,e.test(t))if(n>2){n--;break}else{for(;(t=i[n])&&e.test(t);)n++;if(n>2)break}}}return r.lastIndex=0,n},o.prototype.moveCursorShortWordRight=function(){var i=this.lead.row,n=this.lead.column,t=this.doc.getLine(i),e=t.substring(n),r=this.session.getFoldAt(i,n,1);if(r)return this.moveCursorTo(r.end.row,r.end.column);if(n==t.length){var s=this.doc.getLength();do i++,e=this.doc.getLine(i);while(i<s&&/^\s*$/.test(e));/^\s+/.test(e)||(e=""),n=0}var l=this.$shortWordEndIndex(e);this.moveCursorTo(i,n+l)},o.prototype.moveCursorShortWordLeft=function(){var i=this.lead.row,n=this.lead.column,t;if(t=this.session.getFoldAt(i,n,-1))return this.moveCursorTo(t.start.row,t.start.column);var e=this.session.getLine(i).substring(0,n);if(n===0){do i--,e=this.doc.getLine(i);while(i>0&&/^\s*$/.test(e));n=e.length,/\s+$/.test(e)||(e="")}var r=M.stringReverse(e),s=this.$shortWordEndIndex(r);return this.moveCursorTo(i,n-s)},o.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},o.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},o.prototype.moveCursorBy=function(i,n){var t=this.session.documentToScreenPosition(this.lead.row,this.lead.column),e;if(n===0&&(i!==0&&(this.session.$bidiHandler.isBidiRow(t.row,this.lead.row)?(e=this.session.$bidiHandler.getPosLeft(t.column),t.column=Math.round(e/this.session.$bidiHandler.charWidths[0])):e=t.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?t.column=this.$desiredColumn:this.$desiredColumn=t.column),i!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var r=this.session.lineWidgets[this.lead.row];i<0?i-=r.rowsAbove||0:i>0&&(i+=r.rowCount-(r.rowsAbove||0))}var s=this.session.screenToDocumentPosition(t.row+i,t.column,e);i!==0&&n===0&&s.row===this.lead.row&&(s.column,this.lead.column),this.moveCursorTo(s.row,s.column+n,n===0)},o.prototype.moveCursorToPosition=function(i){this.moveCursorTo(i.row,i.column)},o.prototype.moveCursorTo=function(i,n,t){var e=this.session.getFoldAt(i,n,1);e&&(i=e.start.row,n=e.start.column),this.$keepDesiredColumnOnChange=!0;var r=this.session.getLine(i);/[\uDC00-\uDFFF]/.test(r.charAt(n))&&r.charAt(n-1)&&(this.lead.row==i&&this.lead.column==n+1?n=n-1:n=n+1),this.lead.setPosition(i,n),this.$keepDesiredColumnOnChange=!1,t||(this.$desiredColumn=null)},o.prototype.moveCursorToScreen=function(i,n,t){var e=this.session.screenToDocumentPosition(i,n);this.moveCursorTo(e.row,e.column,t)},o.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},o.prototype.fromOrientedRange=function(i){this.setSelectionRange(i,i.cursor==i.start),this.$desiredColumn=i.desiredColumn||this.$desiredColumn},o.prototype.toOrientedRange=function(i){var n=this.getRange();return i?(i.start.column=n.start.column,i.start.row=n.start.row,i.end.column=n.end.column,i.end.row=n.end.row):i=n,i.cursor=this.isBackwards()?i.start:i.end,i.desiredColumn=this.$desiredColumn,i},o.prototype.getRangeOfMovements=function(i){var n=this.getCursor();try{i(this);var t=this.getCursor();return a.fromPoints(n,t)}catch{return a.fromPoints(n,n)}finally{this.moveCursorToPosition(n)}},o.prototype.toJSON=function(){if(this.rangeCount)var i=this.ranges.map(function(n){var t=n.clone();return t.isBackwards=n.cursor==n.start,t});else{var i=this.getRange();i.isBackwards=this.isBackwards()}return i},o.prototype.fromJSON=function(i){if(i.start==null)if(this.rangeList&&i.length>1){this.toSingleRange(i[0]);for(var n=i.length;n--;){var t=a.fromPoints(i[n].start,i[n].end);i[n].isBackwards&&(t.cursor=t.start),this.addRange(t,!0)}return}else i=i[0];this.rangeList&&this.toSingleRange(i),this.setSelectionRange(i,i.isBackwards)},o.prototype.isEqual=function(i){if((i.length||this.rangeCount)&&i.length!=this.rangeCount)return!1;if(!i.length||!this.ranges)return this.getRange().isEqual(i);for(var n=this.ranges.length;n--;)if(!this.ranges[n].isEqual(i[n]))return!1;return!0},o}();c.prototype.setSelectionAnchor=c.prototype.setAnchor,c.prototype.getSelectionAnchor=c.prototype.getAnchor,c.prototype.setSelectionRange=c.prototype.setRange,T.implement(c.prototype,S),x.Selection=c}),ace.define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(I,x,H){var T=I("./lib/report_error").reportError,M=2e3,S=function(){function a(c){this.splitRegex,this.states=c,this.regExps={},this.matchMappings={};for(var o in this.states){for(var i=this.states[o],n=[],t=0,e=this.matchMappings[o]={defaultToken:"text"},r="g",s=[],l=0;l<i.length;l++){var u=i[l];if(u.defaultToken&&(e.defaultToken=u.defaultToken),u.caseInsensitive&&r.indexOf("i")===-1&&(r+="i"),u.unicode&&r.indexOf("u")===-1&&(r+="u"),u.regex!=null){u.regex instanceof RegExp&&(u.regex=u.regex.toString().slice(1,-1));var b=u.regex,m=new RegExp("(?:("+b+")|(.))").exec("a").length-2;Array.isArray(u.token)?u.token.length==1||m==1?u.token=u.token[0]:m-1!=u.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:u,groupCount:m-1}),u.token=u.token[0]):(u.tokenArray=u.token,u.token=null,u.onMatch=this.$arrayTokens):typeof u.token=="function"&&!u.onMatch&&(m>1?u.onMatch=this.$applyToken:u.onMatch=u.token),m>1&&(/\\\d/.test(u.regex)?b=u.regex.replace(/\\([0-9]+)/g,function(g,f){return"\\"+(parseInt(f,10)+t+1)}):(m=1,b=this.removeCapturingGroups(u.regex)),!u.splitRegex&&typeof u.token!="string"&&s.push(u)),e[t]=l,t+=m,n.push(b),u.onMatch||(u.onMatch=null)}}n.length||(e[0]=0,n.push("$")),s.forEach(function(g){g.splitRegex=this.createSplitterRegexp(g.regex,r)},this),this.regExps[o]=new RegExp("("+n.join(")|(")+")|($)",r)}}return a.prototype.$setMaxTokenCount=function(c){M=c|0},a.prototype.$applyToken=function(c){var o=this.splitRegex.exec(c).slice(1),i=this.token.apply(this,o);if(typeof i=="string")return[{type:i,value:c}];for(var n=[],t=0,e=i.length;t<e;t++)o[t]&&(n[n.length]={type:i[t],value:o[t]});return n},a.prototype.$arrayTokens=function(c){if(!c)return[];var o=this.splitRegex.exec(c);if(!o)return"text";for(var i=[],n=this.tokenArray,t=0,e=n.length;t<e;t++)o[t+1]&&(i[i.length]={type:n[t],value:o[t+1]});return i},a.prototype.removeCapturingGroups=function(c){var o=c.replace(/\\.|\[(?:\\.|[^\\\]])*|\(\?[:=!<]|(\()/g,function(i,n){return n?"(?:":i});return o},a.prototype.createSplitterRegexp=function(c,o){if(c.indexOf("(?=")!=-1){var i=0,n=!1,t={};c.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,r,s,l,u,b){return n?n=u!="]":u?n=!0:l?(i==t.stack&&(t.end=b+1,t.stack=-1),i--):s&&(i++,s.length!=1&&(t.stack=i,t.start=b)),e}),t.end!=null&&/^\)*$/.test(c.substr(t.end))&&(c=c.substring(0,t.start)+c.substr(t.end))}return c.charAt(0)!="^"&&(c="^"+c),c.charAt(c.length-1)!="$"&&(c+="$"),new RegExp(c,(o||"").replace("g",""))},a.prototype.getLineTokens=function(c,o){if(o&&typeof o!="string"){var i=o.slice(0);o=i[0],o==="#tmp"&&(i.shift(),o=i.shift())}else var i=[];var n=o||"start",t=this.states[n];t||(n="start",t=this.states[n]);var e=this.matchMappings[n],r=this.regExps[n];r.lastIndex=0;for(var s,l=[],u=0,b=0,m={type:null,value:""};s=r.exec(c);){var g=e.defaultToken,f=null,C=s[0],k=r.lastIndex;if(k-C.length>u){var A=c.substring(u,k-C.length);m.type==g?m.value+=A:(m.type&&l.push(m),m={type:g,value:A})}for(var $=0;$<s.length-2;$++)if(s[$+1]!==void 0){f=t[e[$]],f.onMatch?g=f.onMatch(C,n,i,c):g=f.token,f.next&&(typeof f.next=="string"?n=f.next:n=f.next(n,i),t=this.states[n],t||(this.reportError("state doesn't exist",n),n="start",t=this.states[n]),e=this.matchMappings[n],u=k,r=this.regExps[n],r.lastIndex=k),f.consumeLineEnd&&(u=k);break}if(C){if(typeof g=="string")(!f||f.merge!==!1)&&m.type===g?m.value+=C:(m.type&&l.push(m),m={type:g,value:C});else if(g){m.type&&l.push(m),m={type:null,value:""};for(var $=0;$<g.length;$++)l.push(g[$])}}if(u==c.length)break;if(u=k,b++>M){for(b>2*c.length&&this.reportError("infinite loop with in ace tokenizer",{startState:o,line:c});u<c.length;)m.type&&l.push(m),m={value:c.substring(u,u+=500),type:"overflow"};n="start",i=[];break}}return m.type&&l.push(m),i.length>1&&i[0]!==n&&i.unshift("#tmp",n),{tokens:l,state:i.length?i:n}},a}();S.prototype.reportError=T,x.Tokenizer=S}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(I,x,H){var T=I("../lib/deep_copy").deepCopy,M;M=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},(function(){this.addRules=function(c,o){if(!o){for(var i in c)this.$rules[i]=c[i];return}for(var i in c){for(var n=c[i],t=0;t<n.length;t++){var e=n[t];(e.next||e.onMatch)&&(typeof e.next=="string"&&e.next.indexOf(o)!==0&&(e.next=o+e.next),e.nextState&&e.nextState.indexOf(o)!==0&&(e.nextState=o+e.nextState))}this.$rules[o+i]=n}},this.getRules=function(){return this.$rules},this.embedRules=function(c,o,i,n,t){var e=typeof c=="function"?new c().getRules():c;if(n)for(var r=0;r<n.length;r++)n[r]=o+n[r];else{n=[];for(var s in e)n.push(o+s)}if(this.addRules(e,o),i)for(var l=Array.prototype[t?"push":"unshift"],r=0;r<n.length;r++)l.apply(this.$rules[n[r]],T(i));this.$embeds||(this.$embeds=[]),this.$embeds.push(o)},this.getEmbeds=function(){return this.$embeds};var S=function(c,o){return(c!="start"||o.length)&&o.unshift(this.nextState,c),this.nextState},a=function(c,o){return o.shift(),o.shift()||"start"};this.normalizeRules=function(){var c=0,o=this.$rules;function i(n){var t=o[n];t.processed=!0;for(var e=0;e<t.length;e++){var r=t[e],s=null;Array.isArray(r)&&(s=r,r={}),!r.regex&&r.start&&(r.regex=r.start,r.next||(r.next=[]),r.next.push({defaultToken:r.token},{token:r.token+".end",regex:r.end||r.start,next:"pop"}),r.token=r.token+".start",r.push=!0);var l=r.next||r.push;if(l&&Array.isArray(l)){var u=r.stateName;u||(u=r.token,typeof u!="string"&&(u=u[0]||""),o[u]&&(u+=c++)),o[u]=l,r.next=u,i(u)}else l=="pop"&&(r.next=a);if(r.push&&(r.nextState=r.next||r.push,r.next=S,delete r.push),r.rules)for(var b in r.rules)o[b]?o[b].push&&o[b].push.apply(o[b],r.rules[b]):o[b]=r.rules[b];var m=typeof r=="string"?r:r.include;if(m&&(m==="$self"&&(m="start"),Array.isArray(m)?s=m.map(function(f){return o[f]}):s=o[m]),s){var g=[e,1].concat(s);r.noEscape&&(g=g.filter(function(f){return!f.next})),t.splice.apply(t,g),e--}r.keywordMap&&(r.token=this.createKeywordMapper(r.keywordMap,r.defaultToken||"text",r.caseInsensitive),delete r.defaultToken)}}Object.keys(o).forEach(i,this)},this.createKeywordMapper=function(c,o,i,n){var t=Object.create(null);return this.$keywordList=[],Object.keys(c).forEach(function(e){for(var r=c[e],s=r.split(n||"|"),l=s.length;l--;){var u=s[l];this.$keywordList.push(u),i&&(u=u.toLowerCase()),t[u]=e}},this),c=null,i?function(e){return t[e.toLowerCase()]||o}:function(e){return t[e]||o}},this.getKeywords=function(){return this.$keywords}}).call(M.prototype),x.TextHighlightRules=M}),ace.define("ace/mode/behaviour",["require","exports","module"],function(I,x,H){var T;T=function(){this.$behaviours={}},(function(){this.add=function(M,S,a){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[M]:this.$behaviours[M]={}}this.$behaviours[M][S]=a},this.addBehaviours=function(M){for(var S in M)for(var a in M[S])this.add(S,a,M[S][a])},this.remove=function(M){this.$behaviours&&this.$behaviours[M]&&delete this.$behaviours[M]},this.inherit=function(M,S){if(typeof M=="function")var a=new M().getBehaviours(S);else var a=M.getBehaviours(S);this.addBehaviours(a)},this.getBehaviours=function(M){if(M){for(var S={},a=0;a<M.length;a++)this.$behaviours[M[a]]&&(S[M[a]]=this.$behaviours[M[a]]);return S}else return this.$behaviours}}).call(T.prototype),x.Behaviour=T}),ace.define("ace/token_iterator",["require","exports","module","ace/range"],function(I,x,H){var T=I("./range").Range,M=function(){function S(a,c,o){this.$session=a,this.$row=c,this.$rowTokens=a.getTokens(c);var i=a.getTokenAt(c,o);this.$tokenIndex=i?i.index:-1}return S.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]},S.prototype.stepForward=function(){this.$tokenIndex+=1;for(var a;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},S.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},S.prototype.getCurrentTokenRow=function(){return this.$row},S.prototype.getCurrentTokenColumn=function(){var a=this.$rowTokens,c=this.$tokenIndex,o=a[c].start;if(o!==void 0)return o;for(o=0;c>0;)c-=1,o+=a[c].value.length;return o},S.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},S.prototype.getCurrentTokenRange=function(){var a=this.$rowTokens[this.$tokenIndex],c=this.getCurrentTokenColumn();return new T(this.$row,c,this.$row,c+a.value.length)},S}();x.TokenIterator=M}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(I,x,H){var T=I("../../lib/oop"),M=I("../behaviour").Behaviour,S=I("../../token_iterator").TokenIterator,a=I("../../lib/lang"),c=["text","paren.rparen","rparen","paren","punctuation.operator"],o=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],i,n={},t={'"':'"',"'":"'"},e=function(l){var u=-1;if(l.multiSelect&&(u=l.selection.index,n.rangeCount!=l.multiSelect.rangeCount&&(n={rangeCount:l.multiSelect.rangeCount})),n[u])return i=n[u];i=n[u]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},r=function(l,u,b,m){var g=l.end.row-l.start.row;return{text:b+u+m,selection:[0,l.start.column+1,g,l.end.column+(g?0:1)]}},s;s=function(l){l=l||{},this.add("braces","insertion",function(u,b,m,g,f){var C=m.getCursorPosition(),k=g.doc.getLine(C.row);if(f=="{"){e(m);var A=m.getSelectionRange(),$=g.doc.getTextRange(A),w=g.getTokenAt(C.row,C.column);if($!==""&&$!=="{"&&m.getWrapBehavioursEnabled())return r(A,$,"{","}");if(w&&/(?:string)\.quasi|\.xml/.test(w.type)){var d=[/tag\-(?:open|name)/,/attribute\-name/];return d.some(function(R){return R.test(w.type)})||/(string)\.quasi/.test(w.type)&&w.value[C.column-w.start-1]!=="$"?void 0:(s.recordAutoInsert(m,g,"}"),{text:"{}",selection:[1,1]})}else if(s.isSaneInsertion(m,g))return/[\]\}\)]/.test(k[C.column])||m.inMultiSelectMode||l.braces?(s.recordAutoInsert(m,g,"}"),{text:"{}",selection:[1,1]}):(s.recordMaybeInsert(m,g,"{"),{text:"{",selection:[1,1]})}else if(f=="}"){e(m);var p=k.substring(C.column,C.column+1);if(p=="}"){var h=g.$findOpeningBracket("}",{column:C.column+1,row:C.row});if(h!==null&&s.isAutoInsertedClosing(C,k,f))return s.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if(f==`
|
|
180
|
-
`||f==`\r
|
|
181
|
-
`){e(m);var v="";s.isMaybeInsertedClosing(C,k)&&(v=a.stringRepeat("}",i.maybeInsertedBrackets),s.clearMaybeInsertedClosing());var p=k.substring(C.column,C.column+1);if(p==="}"){var y=g.findMatchingBracket({row:C.row,column:C.column+1},"}");if(!y)return null;var L=this.$getIndent(g.getLine(y.row))}else if(v)var L=this.$getIndent(k);else{s.clearMaybeInsertedClosing();return}var E=L+g.getTabString();return{text:`
|
|
182
|
-
`+E+`
|
|
183
|
-
`+L+v,selection:[1,E.length,1,E.length]}}else s.clearMaybeInsertedClosing()}),this.add("braces","deletion",function(u,b,m,g,f){var C=g.doc.getTextRange(f);if(!f.isMultiLine()&&C=="{"){e(m);var k=g.doc.getLine(f.start.row),A=k.substring(f.end.column,f.end.column+1);if(A=="}")return f.end.column++,f;i.maybeInsertedBrackets--}}),this.add("parens","insertion",function(u,b,m,g,f){if(f=="("){e(m);var C=m.getSelectionRange(),k=g.doc.getTextRange(C);if(k!==""&&m.getWrapBehavioursEnabled())return r(C,k,"(",")");if(s.isSaneInsertion(m,g))return s.recordAutoInsert(m,g,")"),{text:"()",selection:[1,1]}}else if(f==")"){e(m);var A=m.getCursorPosition(),$=g.doc.getLine(A.row),w=$.substring(A.column,A.column+1);if(w==")"){var d=g.$findOpeningBracket(")",{column:A.column+1,row:A.row});if(d!==null&&s.isAutoInsertedClosing(A,$,f))return s.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(u,b,m,g,f){var C=g.doc.getTextRange(f);if(!f.isMultiLine()&&C=="("){e(m);var k=g.doc.getLine(f.start.row),A=k.substring(f.start.column+1,f.start.column+2);if(A==")")return f.end.column++,f}}),this.add("brackets","insertion",function(u,b,m,g,f){if(f=="["){e(m);var C=m.getSelectionRange(),k=g.doc.getTextRange(C);if(k!==""&&m.getWrapBehavioursEnabled())return r(C,k,"[","]");if(s.isSaneInsertion(m,g))return s.recordAutoInsert(m,g,"]"),{text:"[]",selection:[1,1]}}else if(f=="]"){e(m);var A=m.getCursorPosition(),$=g.doc.getLine(A.row),w=$.substring(A.column,A.column+1);if(w=="]"){var d=g.$findOpeningBracket("]",{column:A.column+1,row:A.row});if(d!==null&&s.isAutoInsertedClosing(A,$,f))return s.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(u,b,m,g,f){var C=g.doc.getTextRange(f);if(!f.isMultiLine()&&C=="["){e(m);var k=g.doc.getLine(f.start.row),A=k.substring(f.start.column+1,f.start.column+2);if(A=="]")return f.end.column++,f}}),this.add("string_dquotes","insertion",function(u,b,m,g,f){var C=g.$mode.$quotes||t;if(f.length==1&&C[f]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(f)!=-1)return;e(m);var k=f,A=m.getSelectionRange(),$=g.doc.getTextRange(A);if($!==""&&($.length!=1||!C[$])&&m.getWrapBehavioursEnabled())return r(A,$,k,k);if(!$){var w=m.getCursorPosition(),d=g.doc.getLine(w.row),p=d.substring(w.column-1,w.column),h=d.substring(w.column,w.column+1),v=g.getTokenAt(w.row,w.column),y=g.getTokenAt(w.row,w.column+1);if(p=="\\"&&v&&/escape/.test(v.type))return null;var L=v&&/string|escape/.test(v.type),E=!y||/string|escape/.test(y.type),R;if(h==k)R=L!==E,R&&/string\.end/.test(y.type)&&(R=!1);else{if(L&&!E||L&&E)return null;var _=g.$mode.tokenRe;_.lastIndex=0;var W=_.test(p);_.lastIndex=0;var F=_.test(h),D=g.$mode.$pairQuotesAfter,N=D&&D[k]&&D[k].test(p);if(!N&&W||F||h&&!/[\s;,.})\]\\]/.test(h))return null;var O=d[w.column-2];if(p==k&&(O==k||_.test(O)))return null;R=!0}return{text:R?k+k:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(u,b,m,g,f){var C=g.$mode.$quotes||t,k=g.doc.getTextRange(f);if(!f.isMultiLine()&&C.hasOwnProperty(k)){e(m);var A=g.doc.getLine(f.start.row),$=A.substring(f.start.column+1,f.start.column+2);if($==k)return f.end.column++,f}}),l.closeDocComment!==!1&&this.add("doc comment end","insertion",function(u,b,m,g,f){if(u==="doc-start"&&(f===`
|
|
184
|
-
`||f===`\r
|
|
185
|
-
`)&&m.selection.isEmpty()){var C=m.getCursorPosition();if(C.column===0)return;for(var k=g.doc.getLine(C.row),A=g.doc.getLine(C.row+1),$=g.getTokens(C.row),w=0,d=0;d<$.length;d++){w+=$[d].value.length;var p=$[d];if(w>=C.column){if(w===C.column){if(!/\.doc/.test(p.type))return;if(/\*\//.test(p.value)){var h=$[d+1];if(!h||!/\.doc/.test(h.type))return}}var v=C.column-(w-p.value.length),y=p.value.indexOf("*/"),L=p.value.indexOf("/**",y>-1?y+2:0);if(L!==-1&&v>L&&v<L+3||y!==-1&&L!==-1&&v>=y&&v<=L||!/\.doc/.test(p.type))return;break}}var E=this.$getIndent(k);if(/\s*\*/.test(A))return/^\s*\*/.test(k)?{text:f+E+"* ",selection:[1,2+E.length,1,2+E.length]}:{text:f+E+" * ",selection:[1,3+E.length,1,3+E.length]};if(/\/\*\*/.test(k.substring(0,C.column)))return{text:f+E+" * "+f+" "+E+"*/",selection:[1,4+E.length,1,4+E.length]}}})},s.isSaneInsertion=function(l,u){var b=l.getCursorPosition(),m=new S(u,b.row,b.column);if(!this.$matchTokenType(m.getCurrentToken()||"text",c)){if(/[)}\]]/.test(l.session.getLine(b.row)[b.column]))return!0;var g=new S(u,b.row,b.column+1);if(!this.$matchTokenType(g.getCurrentToken()||"text",c))return!1}return m.stepForward(),m.getCurrentTokenRow()!==b.row||this.$matchTokenType(m.getCurrentToken()||"text",o)},s.$matchTokenType=function(l,u){return u.indexOf(l.type||l)>-1},s.recordAutoInsert=function(l,u,b){var m=l.getCursorPosition(),g=u.doc.getLine(m.row);this.isAutoInsertedClosing(m,g,i.autoInsertedLineEnd[0])||(i.autoInsertedBrackets=0),i.autoInsertedRow=m.row,i.autoInsertedLineEnd=b+g.substr(m.column),i.autoInsertedBrackets++},s.recordMaybeInsert=function(l,u,b){var m=l.getCursorPosition(),g=u.doc.getLine(m.row);this.isMaybeInsertedClosing(m,g)||(i.maybeInsertedBrackets=0),i.maybeInsertedRow=m.row,i.maybeInsertedLineStart=g.substr(0,m.column)+b,i.maybeInsertedLineEnd=g.substr(m.column),i.maybeInsertedBrackets++},s.isAutoInsertedClosing=function(l,u,b){return i.autoInsertedBrackets>0&&l.row===i.autoInsertedRow&&b===i.autoInsertedLineEnd[0]&&u.substr(l.column)===i.autoInsertedLineEnd},s.isMaybeInsertedClosing=function(l,u){return i.maybeInsertedBrackets>0&&l.row===i.maybeInsertedRow&&u.substr(l.column)===i.maybeInsertedLineEnd&&u.substr(0,l.column)==i.maybeInsertedLineStart},s.popAutoInsertedClosing=function(){i.autoInsertedLineEnd=i.autoInsertedLineEnd.substr(1),i.autoInsertedBrackets--},s.clearMaybeInsertedClosing=function(){i&&(i.maybeInsertedBrackets=0,i.maybeInsertedRow=-1)},T.inherits(s,M),x.CstyleBehaviour=s}),ace.define("ace/unicode",["require","exports","module"],function(I,x,H){for(var T=[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],M=0,S=[],a=0;a<T.length;a+=2)S.push(M+=T[a]),T[a+1]&&S.push(45,M+=T[a+1]);x.wordChars=String.fromCharCode.apply(null,S)}),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(I,x,H){var T=I("../config"),M=I("../tokenizer").Tokenizer,S=I("./text_highlight_rules").TextHighlightRules,a=I("./behaviour/cstyle").CstyleBehaviour,c=I("../unicode"),o=I("../lib/lang"),i=I("../token_iterator").TokenIterator,n=I("../range").Range,t;t=function(){this.HighlightRules=S},(function(){this.$defaultBehaviour=new a,this.tokenRe=new RegExp("^["+c.wordChars+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+c.wordChars+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new M(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,r,s,l){var u=r.doc,b=!0,m=!0,g=1/0,f=r.getTabSize(),C=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var $=this.lineCommentStart.map(o.escapeRegExp).join("|"),k=this.lineCommentStart[0];else var $=o.escapeRegExp(this.lineCommentStart),k=this.lineCommentStart;$=new RegExp("^(\\s*)(?:"+$+") ?"),C=r.getUseSoftTabs();var p=function(F,D){var N=F.match($);if(N){var O=N[1].length,B=N[0].length;!y(F,O,B)&&N[0][B-1]==" "&&B--,u.removeInLine(D,O,B)}},v=k+" ",d=function(F,D){(!b||/\S/.test(F))&&(y(F,g,g)?u.insertInLine({row:D,column:g},v):u.insertInLine({row:D,column:g},k))},h=function(F,D){return $.test(F)},y=function(F,D,N){for(var O=0;D--&&F.charAt(D)==" ";)O++;if(O%f!=0)return!1;for(var O=0;F.charAt(N++)==" ";)O++;return f>2?O%f!=f-1:O%f==0}}else{if(!this.blockComment)return!1;var k=this.blockComment.start,A=this.blockComment.end,$=new RegExp("^(\\s*)(?:"+o.escapeRegExp(k)+")"),w=new RegExp("(?:"+o.escapeRegExp(A)+")\\s*$"),d=function(R,_){h(R,_)||(!b||/\S/.test(R))&&(u.insertInLine({row:_,column:R.length},A),u.insertInLine({row:_,column:g},k))},p=function(R,_){var W;(W=R.match(w))&&u.removeInLine(_,R.length-W[0].length,R.length),(W=R.match($))&&u.removeInLine(_,W[1].length,W[0].length)},h=function(R,_){if($.test(R))return!0;for(var W=r.getTokens(_),F=0;F<W.length;F++)if(W[F].type==="comment")return!0}}function L(R){for(var _=s;_<=l;_++)R(u.getLine(_),_)}var E=1/0;L(function(R,_){var W=R.search(/\S/);W!==-1?(W<g&&(g=W),m&&!h(R,_)&&(m=!1)):E>R.length&&(E=R.length)}),g==1/0&&(g=E,b=!1,m=!1),C&&g%f!=0&&(g=Math.floor(g/f)*f),L(m?p:d)},this.toggleBlockComment=function(e,r,s,l){var u=this.blockComment;if(u){!u.start&&u[0]&&(u=u[0]);var b=new i(r,l.row,l.column),m=b.getCurrentToken();r.selection;var g=r.selection.toOrientedRange(),f,C;if(m&&/comment/.test(m.type)){for(var k,A;m&&/comment/.test(m.type);){var $=m.value.indexOf(u.start);if($!=-1){var w=b.getCurrentTokenRow(),d=b.getCurrentTokenColumn()+$;k=new n(w,d,w,d+u.start.length);break}m=b.stepBackward()}for(var b=new i(r,l.row,l.column),m=b.getCurrentToken();m&&/comment/.test(m.type);){var $=m.value.indexOf(u.end);if($!=-1){var w=b.getCurrentTokenRow(),d=b.getCurrentTokenColumn()+$;A=new n(w,d,w,d+u.end.length);break}m=b.stepForward()}A&&r.remove(A),k&&(r.remove(k),f=k.start.row,C=-u.start.length)}else C=u.start.length,f=s.start.row,r.insert(s.end,u.end),r.insert(s.start,u.start);g.start.row==f&&(g.start.column+=C),g.end.row==f&&(g.end.column+=C),r.selection.fromOrientedRange(g)}},this.getNextLineIndent=function(e,r,s){return this.$getIndent(r)},this.checkOutdent=function(e,r,s){return!1},this.autoOutdent=function(e,r,s){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var r in e)if(e[r]){var s=e[r],l=s.prototype.$id,u=T.$modes[l];u||(T.$modes[l]=u=new s),T.$modes[r]||(T.$modes[r]=u),this.$embeds.push(r),this.$modes[r]=u}for(var b=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],m=function(f){(function(C){var k=b[f],A=C[k];C[b[f]]=function(){return this.$delegator(k,arguments,A)}})(g)},g=this,r=0;r<b.length;r++)m(r)},this.$delegator=function(e,r,s){var l=r[0]||"start";if(typeof l!="string"){if(Array.isArray(l[2])){var u=l[2][l[2].length-1],b=this.$modes[u];if(b)return b[e].apply(b,[l[1]].concat([].slice.call(r,1)))}l=l[0]||"start"}for(var m=0;m<this.$embeds.length;m++)if(this.$modes[this.$embeds[m]]){var g=l.split(this.$embeds[m]);if(!g[0]&&g[1]){r[0]=g[1];var b=this.$modes[this.$embeds[m]];return b[e].apply(b,r)}}var f=s.apply(this,r);return s?f:void 0},this.transformAction=function(e,r,s,l,u){if(this.$behaviour){var b=this.$behaviour.getBehaviours();for(var m in b)if(b[m][r]){var g=b[m][r].apply(this,arguments);if(g)return g}}},this.getKeywords=function(e){if(!this.completionKeywords){var r=this.$tokenizer.rules,s=[];for(var l in r)for(var u=r[l],b=0,m=u.length;b<m;b++)if(typeof u[b].token=="string")/keyword|support|storage/.test(u[b].token)&&s.push(u[b].regex);else if(typeof u[b].token=="object"){for(var g=0,f=u[b].token.length;g<f;g++)if(/keyword|support|storage/.test(u[b].token[g])){var l=u[b].regex.match(/\(.+?\)/g)[g];s.push(l.substr(1,l.length-2))}}this.completionKeywords=s}return e?s.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,r,s,l){var u=this.$keywordList||this.$createKeywordList();return u.map(function(b){return{name:b,value:b,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(t.prototype),x.Mode=t}),ace.define("ace/apply_delta",["require","exports","module"],function(I,x,H){x.applyDelta=function(T,M,S){var a=M.start.row,c=M.start.column,o=T[a]||"";switch(M.action){case"insert":var i=M.lines;if(i.length===1)T[a]=o.substring(0,c)+M.lines[0]+o.substring(c);else{var n=[a,1].concat(M.lines);T.splice.apply(T,n),T[a]=o.substring(0,c)+T[a],T[a+M.lines.length-1]+=o.substring(c)}break;case"remove":var t=M.end.column,e=M.end.row;a===e?T[a]=o.substring(0,c)+o.substring(t):T.splice(a,e-a+1,o.substring(0,c)+T[e].substring(t));break}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(I,x,H){var T=I("./lib/oop"),M=I("./lib/event_emitter").EventEmitter,S=function(){function o(i,n,t){this.$onChange=this.onChange.bind(this),this.attach(i),typeof n!="number"?this.setPosition(n.row,n.column):this.setPosition(n,t)}return o.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},o.prototype.getDocument=function(){return this.document},o.prototype.onChange=function(i){if(!(i.start.row==i.end.row&&i.start.row!=this.row)&&!(i.start.row>this.row)){var n=c(i,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)}},o.prototype.setPosition=function(i,n,t){var e;if(t?e={row:i,column:n}:e=this.$clipPositionToDocument(i,n),!(this.row==e.row&&this.column==e.column)){var r={row:this.row,column:this.column};this.row=e.row,this.column=e.column,this._signal("change",{old:r,value:e})}},o.prototype.detach=function(){this.document.off("change",this.$onChange)},o.prototype.attach=function(i){this.document=i||this.document,this.document.on("change",this.$onChange)},o.prototype.$clipPositionToDocument=function(i,n){var t={};return i>=this.document.getLength()?(t.row=Math.max(0,this.document.getLength()-1),t.column=this.document.getLine(t.row).length):i<0?(t.row=0,t.column=0):(t.row=i,t.column=Math.min(this.document.getLine(t.row).length,Math.max(0,n))),n<0&&(t.column=0),t},o}();S.prototype.$insertRight=!1,T.implement(S.prototype,M);function a(o,i,n){var t=n?o.column<=i.column:o.column<i.column;return o.row<i.row||o.row==i.row&&t}function c(o,i,n){var t=o.action=="insert",e=(t?1:-1)*(o.end.row-o.start.row),r=(t?1:-1)*(o.end.column-o.start.column),s=o.start,l=t?s:o.end;return a(i,s,n)?{row:i.row,column:i.column}:a(l,i,!n)?{row:i.row+e,column:i.column+(i.row==l.row?r:0)}:{row:s.row,column:s.column}}x.Anchor=S}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(I,x,H){var T=I("./lib/oop"),M=I("./apply_delta").applyDelta,S=I("./lib/event_emitter").EventEmitter,a=I("./range").Range,c=I("./anchor").Anchor,o=function(){function i(n){this.$lines=[""],n.length===0?this.$lines=[""]:Array.isArray(n)?this.insertMergedLines({row:0,column:0},n):this.insert({row:0,column:0},n)}return i.prototype.setValue=function(n){var t=this.getLength()-1;this.remove(new a(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},n||"")},i.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},i.prototype.createAnchor=function(n,t){return new c(this,n,t)},i.prototype.$detectNewLine=function(n){var t=n.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:`
|
|
186
|
-
`,this._signal("changeNewLineMode")},i.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return`\r
|
|
187
|
-
`;case"unix":return`
|
|
188
|
-
`;default:return this.$autoNewLine||`
|
|
189
|
-
`}},i.prototype.setNewLineMode=function(n){this.$newLineMode!==n&&(this.$newLineMode=n,this._signal("changeNewLineMode"))},i.prototype.getNewLineMode=function(){return this.$newLineMode},i.prototype.isNewLine=function(n){return n==`\r
|
|
190
|
-
`||n=="\r"||n==`
|
|
191
|
-
`},i.prototype.getLine=function(n){return this.$lines[n]||""},i.prototype.getLines=function(n,t){return this.$lines.slice(n,t+1)},i.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},i.prototype.getLength=function(){return this.$lines.length},i.prototype.getTextRange=function(n){return this.getLinesForRange(n).join(this.getNewLineCharacter())},i.prototype.getLinesForRange=function(n){var t;if(n.start.row===n.end.row)t=[this.getLine(n.start.row).substring(n.start.column,n.end.column)];else{t=this.getLines(n.start.row,n.end.row),t[0]=(t[0]||"").substring(n.start.column);var e=t.length-1;n.end.row-n.start.row==e&&(t[e]=t[e].substring(0,n.end.column))}return t},i.prototype.insertLines=function(n,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(n,t)},i.prototype.removeLines=function(n,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(n,t)},i.prototype.insertNewLine=function(n){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(n,["",""])},i.prototype.insert=function(n,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(n,this.$split(t))},i.prototype.insertInLine=function(n,t){var e=this.clippedPos(n.row,n.column),r=this.pos(n.row,n.column+t.length);return this.applyDelta({start:e,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},i.prototype.clippedPos=function(n,t){var e=this.getLength();n===void 0?n=e:n<0?n=0:n>=e&&(n=e-1,t=void 0);var r=this.getLine(n);return t==null&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:n,column:t}},i.prototype.clonePos=function(n){return{row:n.row,column:n.column}},i.prototype.pos=function(n,t){return{row:n,column:t}},i.prototype.$clipPosition=function(n){var t=this.getLength();return n.row>=t?(n.row=Math.max(0,t-1),n.column=this.getLine(t-1).length):(n.row=Math.max(0,n.row),n.column=Math.min(Math.max(n.column,0),this.getLine(n.row).length)),n},i.prototype.insertFullLines=function(n,t){n=Math.min(Math.max(n,0),this.getLength());var e=0;n<this.getLength()?(t=t.concat([""]),e=0):(t=[""].concat(t),n--,e=this.$lines[n].length),this.insertMergedLines({row:n,column:e},t)},i.prototype.insertMergedLines=function(n,t){var e=this.clippedPos(n.row,n.column),r={row:e.row+t.length-1,column:(t.length==1?e.column:0)+t[t.length-1].length};return this.applyDelta({start:e,end:r,action:"insert",lines:t}),this.clonePos(r)},i.prototype.remove=function(n){var t=this.clippedPos(n.start.row,n.start.column),e=this.clippedPos(n.end.row,n.end.column);return this.applyDelta({start:t,end:e,action:"remove",lines:this.getLinesForRange({start:t,end:e})}),this.clonePos(t)},i.prototype.removeInLine=function(n,t,e){var r=this.clippedPos(n,t),s=this.clippedPos(n,e);return this.applyDelta({start:r,end:s,action:"remove",lines:this.getLinesForRange({start:r,end:s})},!0),this.clonePos(r)},i.prototype.removeFullLines=function(n,t){n=Math.min(Math.max(0,n),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var e=t==this.getLength()-1&&n>0,r=t<this.getLength()-1,s=e?n-1:n,l=e?this.getLine(s).length:0,u=r?t+1:t,b=r?0:this.getLine(u).length,m=new a(s,l,u,b),g=this.$lines.slice(n,t+1);return this.applyDelta({start:m.start,end:m.end,action:"remove",lines:this.getLinesForRange(m)}),g},i.prototype.removeNewLine=function(n){n<this.getLength()-1&&n>=0&&this.applyDelta({start:this.pos(n,this.getLine(n).length),end:this.pos(n+1,0),action:"remove",lines:["",""]})},i.prototype.replace=function(n,t){if(n instanceof a||(n=a.fromPoints(n.start,n.end)),t.length===0&&n.isEmpty())return n.start;if(t==this.getTextRange(n))return n.end;this.remove(n);var e;return t?e=this.insert(n.start,t):e=n.start,e},i.prototype.applyDeltas=function(n){for(var t=0;t<n.length;t++)this.applyDelta(n[t])},i.prototype.revertDeltas=function(n){for(var t=n.length-1;t>=0;t--)this.revertDelta(n[t])},i.prototype.applyDelta=function(n,t){var e=n.action=="insert";(e?n.lines.length<=1&&!n.lines[0]:!a.comparePoints(n.start,n.end))||(e&&n.lines.length>2e4?this.$splitAndapplyLargeDelta(n,2e4):(M(this.$lines,n,t),this._signal("change",n)))},i.prototype.$safeApplyDelta=function(n){var t=this.$lines.length;(n.action=="remove"&&n.start.row<t&&n.end.row<t||n.action=="insert"&&n.start.row<=t)&&this.applyDelta(n)},i.prototype.$splitAndapplyLargeDelta=function(n,t){for(var e=n.lines,r=e.length-t+1,s=n.start.row,l=n.start.column,u=0,b=0;u<r;u=b){b+=t-1;var m=e.slice(u,b);m.push(""),this.applyDelta({start:this.pos(s+u,l),end:this.pos(s+b,l=0),action:n.action,lines:m},!0)}n.lines=e.slice(u),n.start.row=s+u,n.start.column=l,this.applyDelta(n,!0)},i.prototype.revertDelta=function(n){this.$safeApplyDelta({start:this.clonePos(n.start),end:this.clonePos(n.end),action:n.action=="insert"?"remove":"insert",lines:n.lines.slice()})},i.prototype.indexToPosition=function(n,t){for(var e=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,s=t||0,l=e.length;s<l;s++)if(n-=e[s].length+r,n<0)return{row:s,column:n+e[s].length+r};return{row:l-1,column:n+e[l-1].length+r}},i.prototype.positionToIndex=function(n,t){for(var e=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,s=0,l=Math.min(n.row,e.length),u=t||0;u<l;++u)s+=e[u].length+r;return s+n.column},i.prototype.$split=function(n){return n.split(/\r\n|\r|\n/)},i}();o.prototype.$autoNewLine="",o.prototype.$newLineMode="auto",T.implement(o.prototype,S),x.Document=o}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(I,x,H){var T=I("./lib/oop"),M=I("./lib/event_emitter").EventEmitter,S=function(){function a(c,o){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=c;var i=this;this.$worker=function(){if(i.running){for(var n=new Date,t=i.currentLine,e=-1,r=i.doc,s=t;i.lines[t];)t++;var l=r.getLength(),u=0;for(i.running=!1;t<l;){i.$tokenizeRow(t),e=t;do t++;while(i.lines[t]);if(u++,u%5===0&&new Date-n>20){i.running=setTimeout(i.$worker,20);break}}i.currentLine=t,e==-1&&(e=t),s<=e&&i.fireUpdateEvent(s,e)}}}return a.prototype.setTokenizer=function(c){this.tokenizer=c,this.lines=[],this.states=[],this.start(0)},a.prototype.setDocument=function(c){this.doc=c,this.lines=[],this.states=[],this.stop()},a.prototype.fireUpdateEvent=function(c,o){var i={first:c,last:o};this._signal("update",{data:i})},a.prototype.start=function(c){this.currentLine=Math.min(c||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)},a.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},a.prototype.$updateOnChange=function(c){var o=c.start.row,i=c.end.row-o;if(i===0)this.lines[o]=null;else if(c.action=="remove")this.lines.splice(o,i+1,null),this.states.splice(o,i+1,null);else{var n=Array(i+1);n.unshift(o,1),this.lines.splice.apply(this.lines,n),this.states.splice.apply(this.states,n)}this.currentLine=Math.min(o,this.currentLine,this.doc.getLength()),this.stop()},a.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},a.prototype.getTokens=function(c){return this.lines[c]||this.$tokenizeRow(c)},a.prototype.getState=function(c){return this.currentLine==c&&this.$tokenizeRow(c),this.states[c]||"start"},a.prototype.$tokenizeRow=function(c){var o=this.doc.getLine(c),i=this.states[c-1],n=this.tokenizer.getLineTokens(o,i,c);return this.states[c]+""!=n.state+""?(this.states[c]=n.state,this.lines[c+1]=null,this.currentLine>c+1&&(this.currentLine=c+1)):this.currentLine==c&&(this.currentLine=c+1),this.lines[c]=n.tokens},a.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},a}();T.implement(S.prototype,M),x.BackgroundTokenizer=S}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(I,x,H){var T=I("./lib/lang"),M=I("./range").Range,S=function(){function a(c,o,i){i===void 0&&(i="text"),this.setRegexp(c),this.clazz=o,this.type=i}return a.prototype.setRegexp=function(c){this.regExp+""!=c+""&&(this.regExp=c,this.cache=[])},a.prototype.update=function(c,o,i,n){if(this.regExp)for(var t=n.firstRow,e=n.lastRow,r={},s=t;s<=e;s++){var l=this.cache[s];l==null&&(l=T.getMatchOffsets(i.getLine(s),this.regExp),l.length>this.MAX_RANGES&&(l=l.slice(0,this.MAX_RANGES)),l=l.map(function(g){return new M(s,g.offset,s,g.offset+g.length)}),this.cache[s]=l.length?l:"");for(var u=l.length;u--;){var b=l[u].toScreenRange(i),m=b.toString();r[m]||(r[m]=!0,o.drawSingleLineMarker(c,b,this.clazz,n))}}},a}();S.prototype.MAX_RANGES=500,x.SearchHighlight=S}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(I,x,H){var T=function(){function g(){this.$keepRedoStack,this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return g.prototype.addSession=function(f){this.$session=f},g.prototype.add=function(f,C,k){if(!this.$fromUndo&&f!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),C===!1||!this.lastDeltas){this.lastDeltas=[];var A=this.$undoStack.length;A>this.$undoDepth-1&&this.$undoStack.splice(0,A-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),f.id=this.$rev=++this.$maxRev}(f.action=="remove"||f.action=="insert")&&(this.$lastDelta=f),this.lastDeltas.push(f)}},g.prototype.addSelection=function(f,C){this.selections.push({value:f,rev:C||this.$rev})},g.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},g.prototype.markIgnored=function(f,C){C==null&&(C=this.$rev+1);for(var k=this.$undoStack,A=k.length;A--;){var $=k[A][0];if($.id<=f)break;$.id<C&&($.ignore=!0)}this.lastDeltas=null},g.prototype.getSelection=function(f,C){for(var k=this.selections,A=k.length;A--;){var $=k[A];if($.rev<f)return C&&($=k[A+1]),$}},g.prototype.getRevision=function(){return this.$rev},g.prototype.getDeltas=function(f,C){C==null&&(C=this.$rev+1);for(var k=this.$undoStack,A=null,$=0,w=k.length;w--;){var d=k[w][0];if(d.id<C&&!A&&(A=w+1),d.id<=f){$=w+1;break}}return k.slice($,A)},g.prototype.getChangedRanges=function(f,C){C==null&&(C=this.$rev+1)},g.prototype.getChangedLines=function(f,C){C==null&&(C=this.$rev+1)},g.prototype.undo=function(f,C){this.lastDeltas=null;var k=this.$undoStack;if(M(k,k.length)){f||(f=this.$session),this.$redoStackBaseRev!==this.$rev&&this.$redoStack.length&&(this.$redoStack=[]),this.$fromUndo=!0;var A=k.pop(),$=null;return A&&($=f.undoChanges(A,C),this.$redoStack.push(A),this.$syncRev()),this.$fromUndo=!1,$}},g.prototype.redo=function(f,C){if(this.lastDeltas=null,f||(f=this.$session),this.$fromUndo=!0,this.$redoStackBaseRev!=this.$rev){var k=this.getDeltas(this.$redoStackBaseRev,this.$rev+1);m(this.$redoStack,k),this.$redoStackBaseRev=this.$rev,this.$redoStack.forEach(function(w){w[0].id=++this.$maxRev},this)}var A=this.$redoStack.pop(),$=null;return A&&($=f.redoChanges(A,C),this.$undoStack.push(A),this.$syncRev()),this.$fromUndo=!1,$},g.prototype.$syncRev=function(){var f=this.$undoStack,C=f[f.length-1],k=C&&C[0].id||0;this.$redoStackBaseRev=k,this.$rev=k},g.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=[]},g.prototype.canUndo=function(){return this.$undoStack.length>0},g.prototype.canRedo=function(){return this.$redoStack.length>0},g.prototype.bookmark=function(f){f==null&&(f=this.$rev),this.mark=f},g.prototype.isAtBookmark=function(){return this.$rev===this.mark},g.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},g.prototype.fromJSON=function(f){this.reset(),this.$undoStack=f.$undoStack,this.$redoStack=f.$redoStack},g.prototype.$prettyPrint=function(f){return f?i(f):i(this.$undoStack)+`
|
|
192
|
-
---
|
|
193
|
-
`+i(this.$redoStack)},g}();T.prototype.hasUndo=T.prototype.canUndo,T.prototype.hasRedo=T.prototype.canRedo,T.prototype.isClean=T.prototype.isAtBookmark,T.prototype.markClean=T.prototype.bookmark;function M(g,f){for(var C=f;C--;){var k=g[C];if(k&&!k[0].ignore){for(;C<f-1;){var A=e(g[C],g[C+1]);g[C]=A[0],g[C+1]=A[1],C++}return!0}}}var S=I("./range").Range,a=S.comparePoints;S.comparePoints;function c(g){return{row:g.row,column:g.column}}function o(g){return{start:c(g.start),end:c(g.end),action:g.action,lines:g.lines.slice()}}function i(g){if(g=g||this,Array.isArray(g))return g.map(i).join(`
|
|
194
|
-
`);var f="";return g.action?(f=g.action=="insert"?"+":"-",f+="["+g.lines+"]"):g.value&&(Array.isArray(g.value)?f=g.value.map(n).join(`
|
|
195
|
-
`):f=n(g.value)),g.start&&(f+=n(g)),(g.id||g.rev)&&(f+=" ("+(g.id||g.rev)+")"),f}function n(g){return g.start.row+":"+g.start.column+"=>"+g.end.row+":"+g.end.column}function t(g,f){var C=g.action=="insert",k=f.action=="insert";if(C&&k)if(a(f.start,g.end)>=0)s(f,g,-1);else if(a(f.start,g.start)<=0)s(g,f,1);else return null;else if(C&&!k)if(a(f.start,g.end)>=0)s(f,g,-1);else if(a(f.end,g.start)<=0)s(g,f,-1);else return null;else if(!C&&k)if(a(f.start,g.start)>=0)s(f,g,1);else if(a(f.start,g.start)<=0)s(g,f,1);else return null;else if(!C&&!k)if(a(f.start,g.start)>=0)s(f,g,1);else if(a(f.end,g.start)<=0)s(g,f,-1);else return null;return[f,g]}function e(g,f){for(var C=g.length;C--;)for(var k=0;k<f.length;k++)if(!t(g[C],f[k])){for(;C<g.length;){for(;k--;)t(f[k],g[C]);k=f.length,C++}return[g,f]}return g.selectionBefore=f.selectionBefore=g.selectionAfter=f.selectionAfter=null,[f,g]}function r(g,f){var C=g.action=="insert",k=f.action=="insert";if(C&&k)a(g.start,f.start)<0?s(f,g,1):s(g,f,1);else if(C&&!k)a(g.start,f.end)>=0?s(g,f,-1):(a(g.start,f.start)<=0||s(g,S.fromPoints(f.start,g.start),-1),s(f,g,1));else if(!C&&k)a(f.start,g.end)>=0?s(f,g,-1):(a(f.start,g.start)<=0||s(f,S.fromPoints(g.start,f.start),-1),s(g,f,1));else if(!C&&!k)if(a(f.start,g.end)>=0)s(f,g,-1);else if(a(f.end,g.start)<=0)s(g,f,-1);else{var A,$;return a(g.start,f.start)<0&&(A=g,g=u(g,f.start)),a(g.end,f.end)>0&&($=u(g,f.end)),l(f.end,g.start,g.end,-1),$&&!A&&(g.lines=$.lines,g.start=$.start,g.end=$.end,$=g),[f,A,$].filter(Boolean)}return[f,g]}function s(g,f,C){l(g.start,f.start,f.end,C),l(g.end,f.start,f.end,C)}function l(g,f,C,k){g.row==(k==1?f:C).row&&(g.column+=k*(C.column-f.column)),g.row+=k*(C.row-f.row)}function u(g,f){var C=g.lines,k=g.end;g.end=c(f);var A=g.end.row-g.start.row,$=C.splice(A,C.length),w=A?f.column:f.column-g.start.column;C.push($[0].substring(0,w)),$[0]=$[0].substr(w);var d={start:c(f),end:k,lines:$,action:g.action};return d}function b(g,f){f=o(f);for(var C=g.length;C--;){for(var k=g[C],A=0;A<k.length;A++){var $=k[A],w=r($,f);f=w[0],w.length!=2&&(w[2]?(k.splice(A+1,1,w[1],w[2]),A++):w[1]||(k.splice(A,1),A--))}k.length||g.splice(C,1)}return g}function m(g,f){for(var C=0;C<f.length;C++)for(var k=f[C],A=0;A<k.length;A++)b(g,k[A])}x.UndoManager=T}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(I,x,H){var T=I("../range").Range,M=function(){function S(a,c){this.foldData=a,Array.isArray(c)?this.folds=c:c=this.folds=[c];var o=c[c.length-1];this.range=new T(c[0].start.row,c[0].start.column,o.end.row,o.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(i){i.setFoldLine(this)},this)}return S.prototype.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(c){c.start.row+=a,c.end.row+=a})},S.prototype.addFold=function(a){if(a.sameRow){if(a.start.row<this.startRow||a.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(c,o){return-c.range.compareEnd(o.start.row,o.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else if(a.end.row==this.start.row)this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column;else throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");a.foldLine=this},S.prototype.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},S.prototype.walk=function(a,c,o){var i=0,n=this.folds,t,e,r,s=!0;c==null&&(c=this.end.row,o=this.end.column);for(var l=0;l<n.length;l++){if(t=n[l],e=t.range.compareStart(c,o),e==-1){a(null,c,o,i,s);return}if(r=a(null,t.start.row,t.start.column,i,s),r=!r&&a(t.placeholder,t.start.row,t.start.column,i),r||e===0)return;s=!t.sameRow,i=t.end.column}a(null,c,o,i,s)},S.prototype.getNextFoldTo=function(a,c){for(var o,i,n=0;n<this.folds.length;n++){if(o=this.folds[n],i=o.range.compareEnd(a,c),i==-1)return{fold:o,kind:"after"};if(i===0)return{fold:o,kind:"inside"}}return null},S.prototype.addRemoveChars=function(a,c,o){var i=this.getNextFoldTo(a,c),n,t;if(i){if(n=i.fold,i.kind=="inside"&&n.start.column!=c&&n.start.row!=a)window.console&&window.console.log(a,c,n);else if(n.start.row==a){t=this.folds;var e=t.indexOf(n);for(e===0&&(this.start.column+=o),e;e<t.length;e++){if(n=t[e],n.start.column+=o,!n.sameRow)return;n.end.column+=o}this.end.column+=o}}},S.prototype.split=function(a,c){var o=this.getNextFoldTo(a,c);if(!o||o.kind=="inside")return null;var i=o.fold,n=this.folds,t=this.foldData,e=n.indexOf(i),r=n[e-1];this.end.row=r.end.row,this.end.column=r.end.column,n=n.splice(e,n.length-e);var s=new S(t,n);return t.splice(t.indexOf(this)+1,0,s),s},S.prototype.merge=function(a){for(var c=a.folds,o=0;o<c.length;o++)this.addFold(c[o]);var i=this.foldData;i.splice(i.indexOf(a),1)},S.prototype.toString=function(){var a=[this.range.toString()+": ["];return this.folds.forEach(function(c){a.push(" "+c.toString())}),a.push("]"),a.join(`
|
|
196
|
-
`)},S.prototype.idxToPosition=function(a){for(var c=0,o=0;o<this.folds.length;o++){var i=this.folds[o];if(a-=i.start.column-c,a<0)return{row:i.start.row,column:i.start.column+a};if(a-=i.placeholder.length,a<0)return i.start;c=i.end.column}return{row:this.end.row,column:this.end.column+a}},S}();x.FoldLine=M}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(I,x,H){var T=I("./range").Range,M=T.comparePoints,S=function(){function a(){this.ranges=[],this.$bias=1}return a.prototype.pointIndex=function(c,o,i){for(var n=this.ranges,t=i||0;t<n.length;t++){var e=n[t],r=M(c,e.end);if(!(r>0)){var s=M(c,e.start);return r===0?o&&s!==0?-t-2:t:s>0||s===0&&!o?t:-t-1}}return-t-1},a.prototype.add=function(c){var o=!c.isEmpty(),i=this.pointIndex(c.start,o);i<0&&(i=-i-1);var n=this.pointIndex(c.end,o,i);return n<0?n=-n-1:n++,this.ranges.splice(i,n-i,c)},a.prototype.addList=function(c){for(var o=[],i=c.length;i--;)o.push.apply(o,this.add(c[i]));return o},a.prototype.substractPoint=function(c){var o=this.pointIndex(c);if(o>=0)return this.ranges.splice(o,1)},a.prototype.merge=function(){var c=[],o=this.ranges;o=o.sort(function(r,s){return M(r.start,s.start)});for(var i=o[0],n,t=1;t<o.length;t++){n=i,i=o[t];var e=M(n.end,i.start);e<0||e==0&&!n.isEmpty()&&!i.isEmpty()||(M(n.end,i.end)<0&&(n.end.row=i.end.row,n.end.column=i.end.column),o.splice(t,1),c.push(i),i=n,t--)}return this.ranges=o,c},a.prototype.contains=function(c,o){return this.pointIndex({row:c,column:o})>=0},a.prototype.containsPoint=function(c){return this.pointIndex(c)>=0},a.prototype.rangeAtPoint=function(c){var o=this.pointIndex(c);if(o>=0)return this.ranges[o]},a.prototype.clipRows=function(c,o){var i=this.ranges;if(i[0].start.row>o||i[i.length-1].start.row<c)return[];var n=this.pointIndex({row:c,column:0});n<0&&(n=-n-1);var t=this.pointIndex({row:o,column:0},n);t<0&&(t=-t-1);for(var e=[],r=n;r<t;r++)e.push(i[r]);return e},a.prototype.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},a.prototype.attach=function(c){this.session&&this.detach(),this.session=c,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},a.prototype.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},a.prototype.$onChange=function(c){for(var o=c.start,i=c.end,n=o.row,t=i.row,e=this.ranges,r=0,s=e.length;r<s;r++){var l=e[r];if(l.end.row>=n)break}if(c.action=="insert")for(var u=t-n,b=-o.column+i.column;r<s;r++){var l=e[r];if(l.start.row>n)break;if(l.start.row==n&&l.start.column>=o.column&&(l.start.column==o.column&&this.$bias<=0||(l.start.column+=b,l.start.row+=u)),l.end.row==n&&l.end.column>=o.column){if(l.end.column==o.column&&this.$bias<0)continue;l.end.column==o.column&&b>0&&r<s-1&&l.end.column>l.start.column&&l.end.column==e[r+1].start.column&&(l.end.column-=b),l.end.column+=b,l.end.row+=u}}else for(var u=n-t,b=o.column-i.column;r<s;r++){var l=e[r];if(l.start.row>t)break;l.end.row<t&&(n<l.end.row||n==l.end.row&&o.column<l.end.column)?(l.end.row=n,l.end.column=o.column):l.end.row==t?l.end.column<=i.column?(u||l.end.column>o.column)&&(l.end.column=o.column,l.end.row=o.row):(l.end.column+=b,l.end.row+=u):l.end.row>t&&(l.end.row+=u),l.start.row<t&&(n<l.start.row||n==l.start.row&&o.column<l.start.column)?(l.start.row=n,l.start.column=o.column):l.start.row==t?l.start.column<=i.column?(u||l.start.column>o.column)&&(l.start.column=o.column,l.start.row=o.row):(l.start.column+=b,l.start.row+=u):l.start.row>t&&(l.start.row+=u)}if(u!=0&&r<s)for(;r<s;r++){var l=e[r];l.start.row+=u,l.end.row+=u}},a}();S.prototype.comparePoints=M,x.RangeList=S}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range_list"],function(I,x,H){var T=this&&this.__extends||function(){var n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var l in s)Object.prototype.hasOwnProperty.call(s,l)&&(r[l]=s[l])},n(t,e)};return function(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");n(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}}(),M=I("../range_list").RangeList,S=function(n){T(t,n);function t(e,r){var s=n.call(this)||this;return s.foldLine=null,s.placeholder=r,s.range=e,s.start=e.start,s.end=e.end,s.sameRow=e.start.row==e.end.row,s.subFolds=s.ranges=[],s}return t.prototype.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},t.prototype.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(r){r.setFoldLine(e)})},t.prototype.clone=function(){var e=this.range.clone(),r=new t(e,this.placeholder);return this.subFolds.forEach(function(s){r.subFolds.push(s.clone())}),r.collapseChildren=this.collapseChildren,r},t.prototype.addSubFold=function(e){if(!this.range.isEqual(e)){c(e,this.start);for(var b=e.start.row,m=e.start.column,r=0,s=-1;r<this.subFolds.length&&(s=this.subFolds[r].range.compare(b,m),s==1);r++);var l=this.subFolds[r],u=0;if(s==0){if(l.range.containsRange(e))return l.addSubFold(e);u=1}for(var b=e.range.end.row,m=e.range.end.column,g=r,s=-1;g<this.subFolds.length&&(s=this.subFolds[g].range.compare(b,m),s==1);g++);s==0&&g++;for(var f=this.subFolds.splice(r,g-r,e),C=s==0?f.length-1:f.length,k=u;k<C;k++)e.addSubFold(f[k]);return e.setFoldLine(this.foldLine),e}},t.prototype.restoreRange=function(e){return i(e,this.start)},t}(M);function a(n,t){n.row-=t.row,n.row==0&&(n.column-=t.column)}function c(n,t){a(n.start,t),a(n.end,t)}function o(n,t){n.row==0&&(n.column+=t.column),n.row+=t.row}function i(n,t){o(n.start,t),o(n.end,t)}x.Fold=S}),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(I,x,H){var T=I("../range").Range,M=I("./fold_line").FoldLine,S=I("./fold").Fold,a=I("../token_iterator").TokenIterator,c=I("../mouse/mouse_event").MouseEvent;function o(){this.getFoldAt=function(i,n,t){var e=this.getFoldLine(i);if(!e)return null;for(var r=e.folds,s=0;s<r.length;s++){var l=r[s].range;if(l.contains(i,n)){if(t==1&&l.isEnd(i,n)&&!l.isEmpty())continue;if(t==-1&&l.isStart(i,n)&&!l.isEmpty())continue;return r[s]}}},this.getFoldsInRange=function(i){var n=i.start,t=i.end,e=this.$foldData,r=[];n.column+=1,t.column-=1;for(var s=0;s<e.length;s++){var l=e[s].range.compareRange(i);if(l!=2){if(l==-2)break;for(var u=e[s].folds,b=0;b<u.length;b++){var m=u[b];if(l=m.range.compareRange(i),l==-2)break;if(l==2)continue;if(l==42)break;r.push(m)}}}return n.column-=1,t.column+=1,r},this.getFoldsInRangeList=function(i){if(Array.isArray(i)){var n=[];i.forEach(function(t){n=n.concat(this.getFoldsInRange(t))},this)}else var n=this.getFoldsInRange(i);return n},this.getAllFolds=function(){for(var i=[],n=this.$foldData,t=0;t<n.length;t++)for(var e=0;e<n[t].folds.length;e++)i.push(n[t].folds[e]);return i},this.getFoldStringAt=function(i,n,t,e){if(e=e||this.getFoldLine(i),!e)return null;for(var r={end:{column:0}},s,l,u=0;u<e.folds.length;u++){l=e.folds[u];var b=l.range.compareEnd(i,n);if(b==-1){s=this.getLine(l.start.row).substring(r.end.column,l.start.column);break}else if(b===0)return null;r=l}return s||(s=this.getLine(l.start.row).substring(r.end.column)),t==-1?s.substring(0,n-r.end.column):t==1?s.substring(n-r.end.column):s},this.getFoldLine=function(i,n){var t=this.$foldData,e=0;for(n&&(e=t.indexOf(n)),e==-1&&(e=0),e;e<t.length;e++){var r=t[e];if(r.start.row<=i&&r.end.row>=i)return r;if(r.end.row>i)return null}return null},this.getNextFoldLine=function(i,n){var t=this.$foldData,e=0;for(n&&(e=t.indexOf(n)),e==-1&&(e=0),e;e<t.length;e++){var r=t[e];if(r.end.row>=i)return r}return null},this.getFoldedRowCount=function(i,n){for(var t=this.$foldData,e=n-i+1,r=0;r<t.length;r++){var s=t[r],l=s.end.row,u=s.start.row;if(l>=n){u<n&&(u>=i?e-=n-u:e=0);break}else l>=i&&(u>=i?e-=l-u:e-=l-i+1)}return e},this.$addFoldLine=function(i){return this.$foldData.push(i),this.$foldData.sort(function(n,t){return n.start.row-t.start.row}),i},this.addFold=function(i,n){var t=this.$foldData,e=!1,r;i instanceof S?r=i:(r=new S(n,i),r.collapseChildren=n.collapseChildren),this.$clipRangeToDocument(r.range);var s=r.start.row,l=r.start.column,u=r.end.row,b=r.end.column,m=this.getFoldAt(s,l,1),g=this.getFoldAt(u,b,-1);if(m&&g==m)return m.addSubFold(r);m&&!m.range.isStart(s,l)&&this.removeFold(m),g&&!g.range.isEnd(u,b)&&this.removeFold(g);var f=this.getFoldsInRange(r.range);f.length>0&&(this.removeFolds(f),r.collapseChildren||f.forEach(function($){r.addSubFold($)}));for(var C=0;C<t.length;C++){var k=t[C];if(u==k.start.row){k.addFold(r),e=!0;break}else if(s==k.end.row){if(k.addFold(r),e=!0,!r.sameRow){var A=t[C+1];if(A&&A.start.row==u){k.merge(A);break}}break}else if(u<=k.start.row)break}return e||(k=this.$addFoldLine(new M(this.$foldData,r))),this.$useWrapMode?this.$updateWrapData(k.start.row,k.start.row):this.$updateRowLengthCache(k.start.row,k.start.row),this.$modified=!0,this._signal("changeFold",{data:r,action:"add"}),r},this.addFolds=function(i){i.forEach(function(n){this.addFold(n)},this)},this.removeFold=function(i){var n=i.foldLine,t=n.start.row,e=n.end.row,r=this.$foldData,s=n.folds;if(s.length==1)r.splice(r.indexOf(n),1);else if(n.range.isEnd(i.end.row,i.end.column))s.pop(),n.end.row=s[s.length-1].end.row,n.end.column=s[s.length-1].end.column;else if(n.range.isStart(i.start.row,i.start.column))s.shift(),n.start.row=s[0].start.row,n.start.column=s[0].start.column;else if(i.sameRow)s.splice(s.indexOf(i),1);else{var l=n.split(i.start.row,i.start.column);s=l.folds,s.shift(),l.start.row=s[0].start.row,l.start.column=s[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(t,e):this.$updateRowLengthCache(t,e)),this.$modified=!0,this._signal("changeFold",{data:i,action:"remove"})},this.removeFolds=function(i){for(var n=[],t=0;t<i.length;t++)n.push(i[t]);n.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(i){this.removeFold(i),i.subFolds.forEach(function(n){i.restoreRange(n),this.addFold(n)},this),i.collapseChildren>0&&this.foldAll(i.start.row+1,i.end.row,i.collapseChildren-1),i.subFolds=[]},this.expandFolds=function(i){i.forEach(function(n){this.expandFold(n)},this)},this.unfold=function(i,n){var t,e;if(i==null)t=new T(0,0,this.getLength(),0),n==null&&(n=!0);else if(typeof i=="number")t=new T(i,0,i,this.getLine(i).length);else if("row"in i)t=T.fromPoints(i,i);else{if(Array.isArray(i))return e=[],i.forEach(function(s){e=e.concat(this.unfold(s))},this),e;t=i}e=this.getFoldsInRangeList(t);for(var r=e;e.length==1&&T.comparePoints(e[0].start,t.start)<0&&T.comparePoints(e[0].end,t.end)>0;)this.expandFolds(e),e=this.getFoldsInRangeList(t);if(n!=!1?this.removeFolds(e):this.expandFolds(e),r.length)return r},this.isRowFolded=function(i,n){return!!this.getFoldLine(i,n)},this.getRowFoldEnd=function(i,n){var t=this.getFoldLine(i,n);return t?t.end.row:i},this.getRowFoldStart=function(i,n){var t=this.getFoldLine(i,n);return t?t.start.row:i},this.getFoldDisplayLine=function(i,n,t,e,r){e==null&&(e=i.start.row),r==null&&(r=0),n==null&&(n=i.end.row),t==null&&(t=this.getLine(n).length);var s=this.doc,l="";return i.walk(function(u,b,m,g){if(!(b<e)){if(b==e){if(m<r)return;g=Math.max(r,g)}u!=null?l+=u:l+=s.getLine(b).substring(g,m)}},n,t),l},this.getDisplayLine=function(i,n,t,e){var r=this.getFoldLine(i);if(r)return this.getFoldDisplayLine(r,i,n,t,e);var s;return s=this.doc.getLine(i),s.substring(e||0,n||s.length)},this.$cloneFoldData=function(){var i=[];return i=this.$foldData.map(function(n){var t=n.folds.map(function(e){return e.clone()});return new M(i,t)}),i},this.toggleFold=function(i){var n=this.selection,t=n.getRange(),e,r;if(t.isEmpty()){var s=t.start;if(e=this.getFoldAt(s.row,s.column),e){this.expandFold(e);return}else(r=this.findMatchingBracket(s))?t.comparePoint(r)==1?t.end=r:(t.start=r,t.start.column++,t.end.column--):(r=this.findMatchingBracket({row:s.row,column:s.column+1}))?(t.comparePoint(r)==1?t.end=r:t.start=r,t.start.column++):t=this.getCommentFoldRange(s.row,s.column)||t}else{var l=this.getFoldsInRange(t);if(i&&l.length){this.expandFolds(l);return}else l.length==1&&(e=l[0])}if(e||(e=this.getFoldAt(t.start.row,t.start.column)),e&&e.range.toString()==t.toString()){this.expandFold(e);return}var u="...";if(!t.isMultiLine()){if(u=this.getTextRange(t),u.length<4)return;u=u.trim().substring(0,2)+".."}this.addFold(u,t)},this.getCommentFoldRange=function(i,n,t){var e=new a(this,i,n),r=e.getCurrentToken(),s=r&&r.type;if(r&&/^comment|string/.test(s)){s=s.match(/comment|string/)[0],s=="comment"&&(s+="|doc-start|\\.doc");var l=new RegExp(s),u=new T;if(t!=1){do r=e.stepBackward();while(r&&l.test(r.type));r=e.stepForward()}u.start.row=e.getCurrentTokenRow(),u.start.column=e.getCurrentTokenColumn()+r.value.length,e=new a(this,i,n);var b=this.getState(e.$row);if(t!=-1){var m=-1;do if(r=e.stepForward(),m==-1){var g=this.getState(e.$row);b.toString()!==g.toString()&&(m=e.$row)}else if(e.$row>m)break;while(r&&l.test(r.type));r=e.stepBackward()}else r=e.getCurrentToken();return u.end.row=e.getCurrentTokenRow(),u.end.column=e.getCurrentTokenColumn(),u}},this.foldAll=function(i,n,t,e){t==null&&(t=1e5);var r=this.foldWidgets;if(r){n=n||this.getLength(),i=i||0;for(var s=i;s<n;s++)if(r[s]==null&&(r[s]=this.getFoldWidget(s)),r[s]=="start"&&!(e&&!e(s))){var l=this.getFoldWidgetRange(s);l&&l.isMultiLine()&&l.end.row<=n&&l.start.row>=i&&(s=l.end.row,l.collapseChildren=t,this.addFold("...",l))}}},this.foldToLevel=function(i){for(this.foldAll();i-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var i=this;this.foldAll(null,null,null,function(n){for(var t=i.getTokens(n),e=0;e<t.length;e++){var r=t[e];if(!(r.type=="text"&&/^\s+$/.test(r.value)))return!!/comment/.test(r.type)}})},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(i){if(!this.$foldStyles[i])throw new Error("invalid fold style: "+i+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=i){this.$foldStyle=i,i=="manual"&&this.unfold();var n=this.$foldMode;this.$setFolding(null),this.$setFolding(n)}},this.$setFolding=function(i){if(this.$foldMode!=i){if(this.$foldMode=i,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),!i||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[],this.getFoldWidget=i.getFoldWidget.bind(i,this,this.$foldStyle),this.getFoldWidgetRange=i.getFoldWidgetRange.bind(i,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(i,n){var t=this.foldWidgets;if(!t||n&&t[i])return{};for(var e=i-1,r;e>=0;){var s=t[e];if(s==null&&(s=t[e]=this.getFoldWidget(e)),s=="start"){var l=this.getFoldWidgetRange(e);if(r||(r=l),l&&l.end.row>=i)break}e--}return{range:e!==-1&&l,firstRange:r}},this.onFoldWidgetClick=function(i,n){n instanceof c&&(n=n.domEvent);var t={children:n.shiftKey,all:n.ctrlKey||n.metaKey,siblings:n.altKey},e=this.$toggleFoldWidget(i,t);if(!e){var r=n.target||n.srcElement;r&&/ace_fold-widget/.test(r.className)&&(r.className+=" ace_invalid")}},this.$toggleFoldWidget=function(i,n){if(this.getFoldWidget){var t=this.getFoldWidget(i),e=this.getLine(i),r=t==="end"?-1:1,s=this.getFoldAt(i,r===-1?0:e.length,r);if(s)return n.children||n.all?this.removeFold(s):this.expandFold(s),s;var l=this.getFoldWidgetRange(i,!0);if(l&&!l.isMultiLine()&&(s=this.getFoldAt(l.start.row,l.start.column,1),s&&l.isEqual(s.range)))return this.removeFold(s),s;if(n.siblings){var u=this.getParentFoldRangeData(i);if(u.range)var b=u.range.start.row+1,m=u.range.end.row;this.foldAll(b,m,n.all?1e4:0)}else n.children?(m=l?l.end.row:this.getLength(),this.foldAll(i+1,m,n.all?1e4:0)):l&&(n.all&&(l.collapseChildren=1e4),this.addFold("...",l));return l}},this.toggleFoldWidget=function(i){var n=this.selection.getCursor().row;n=this.getRowFoldStart(n);var t=this.$toggleFoldWidget(n,{});if(!t){var e=this.getParentFoldRangeData(n,!0);if(t=e.range||e.firstRange,t){n=t.start.row;var r=this.getFoldAt(n,this.getLine(n).length,1);r?this.removeFold(r):this.addFold("...",t)}}},this.updateFoldWidgets=function(i){var n=i.start.row,t=i.end.row-n;if(t===0)this.foldWidgets[n]=null;else if(i.action=="remove")this.foldWidgets.splice(n,t+1,null);else{var e=Array(t+1);e.unshift(n,1),this.foldWidgets.splice.apply(this.foldWidgets,e)}},this.tokenizerUpdateFoldWidgets=function(i){var n=i.data;n.first!=n.last&&this.foldWidgets.length>n.first&&this.foldWidgets.splice(n.first,this.foldWidgets.length)}}x.Folding=o}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(I,x,H){var T=I("../token_iterator").TokenIterator,M=I("../range").Range;function S(){this.findMatchingBracket=function(a,c){if(a.column==0)return null;var o=c||this.getLine(a.row).charAt(a.column-1);if(o=="")return null;var i=o.match(/([\(\[\{])|([\)\]\}])/);return i?i[1]?this.$findClosingBracket(i[1],a):this.$findOpeningBracket(i[2],a):null},this.getBracketRange=function(a){var c=this.getLine(a.row),o=!0,i,n=c.charAt(a.column-1),t=n&&n.match(/([\(\[\{])|([\)\]\}])/);if(t||(n=c.charAt(a.column),a={row:a.row,column:a.column+1},t=n&&n.match(/([\(\[\{])|([\)\]\}])/),o=!1),!t)return null;if(t[1]){var e=this.$findClosingBracket(t[1],a);if(!e)return null;i=M.fromPoints(a,e),o||(i.end.column++,i.start.column--),i.cursor=i.end}else{var e=this.$findOpeningBracket(t[2],a);if(!e)return null;i=M.fromPoints(e,a),o||(i.start.column++,i.end.column--),i.cursor=i.start}return i},this.getMatchingBracketRanges=function(a,c){var o=this.getLine(a.row),i=/([\(\[\{])|([\)\]\}])/,n=!c&&o.charAt(a.column-1),t=n&&n.match(i);if(t||(n=(c===void 0||c)&&o.charAt(a.column),a={row:a.row,column:a.column+1},t=n&&n.match(i)),!t)return null;var e=new M(a.row,a.column-1,a.row,a.column),r=t[1]?this.$findClosingBracket(t[1],a):this.$findOpeningBracket(t[2],a);if(!r)return[e];var s=new M(r.row,r.column,r.row,r.column+1);return[e,s]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(a,c,o){var i=this.$brackets[a],n=1,t=new T(this,c.row,c.column),e=t.getCurrentToken();if(e||(e=t.stepForward()),!!e){o||(o=new RegExp("(\\.?"+e.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var r=c.column-t.getCurrentTokenColumn()-2,s=e.value;;){for(;r>=0;){var l=s.charAt(r);if(l==i){if(n-=1,n==0)return{row:t.getCurrentTokenRow(),column:r+t.getCurrentTokenColumn()}}else l==a&&(n+=1);r-=1}do e=t.stepBackward();while(e&&!o.test(e.type));if(e==null)break;s=e.value,r=s.length-1}return null}},this.$findClosingBracket=function(a,c,o){var i=this.$brackets[a],n=1,t=new T(this,c.row,c.column),e=t.getCurrentToken();if(e||(e=t.stepForward()),!!e){o||(o=new RegExp("(\\.?"+e.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var r=c.column-t.getCurrentTokenColumn();;){for(var s=e.value,l=s.length;r<l;){var u=s.charAt(r);if(u==i){if(n-=1,n==0)return{row:t.getCurrentTokenRow(),column:r+t.getCurrentTokenColumn()}}else u==a&&(n+=1);r+=1}do e=t.stepForward();while(e&&!o.test(e.type));if(e==null)break;r=0}return null}},this.getMatchingTags=function(a){var c=new T(this,a.row,a.column),o=this.$findTagName(c);if(o){var i=c.stepBackward();return i.value==="<"?this.$findClosingTag(c,o):this.$findOpeningTag(c,o)}},this.$findTagName=function(a){var c=a.getCurrentToken(),o=!1,i=!1;if(c&&c.type.indexOf("tag-name")===-1)do i?c=a.stepBackward():c=a.stepForward(),c&&(c.value==="/>"?i=!0:c.type.indexOf("tag-name")!==-1&&(o=!0));while(c&&!o);return c},this.$findClosingTag=function(a,c){var o,i=c.value,n=c.value,t=0,e=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);c=a.stepForward();var r=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length),s=!1;do{if(o=c,o.type.indexOf("tag-close")!==-1&&!s){var l=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);s=!0}if(c=a.stepForward(),c){if(c.value===">"&&!s){var l=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);s=!0}if(c.type.indexOf("tag-name")!==-1){if(i=c.value,n===i){if(o.value==="<")t++;else if(o.value==="</"&&(t--,t<0)){a.stepBackward();var u=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+2);c=a.stepForward();var b=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length);if(c.type.indexOf("tag-close")===-1&&(c=a.stepForward()),c&&c.value===">")var m=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);else return}}}else if(n===i&&c.value==="/>"&&(t--,t<0))var u=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+2),b=u,m=b,l=new M(r.end.row,r.end.column,r.end.row,r.end.column+1)}}while(c&&t>=0);if(e&&l&&u&&m&&r&&b)return{openTag:new M(e.start.row,e.start.column,l.end.row,l.end.column),closeTag:new M(u.start.row,u.start.column,m.end.row,m.end.column),openTagName:r,closeTagName:b}},this.$findOpeningTag=function(a,c){var o=a.getCurrentToken(),i=c.value,n=0,t=a.getCurrentTokenRow(),e=a.getCurrentTokenColumn(),r=e+2,s=new M(t,e,t,r);a.stepForward();var l=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length);if(c.type.indexOf("tag-close")===-1&&(c=a.stepForward()),!(!c||c.value!==">")){var u=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);a.stepBackward(),a.stepBackward();do if(c=o,t=a.getCurrentTokenRow(),e=a.getCurrentTokenColumn(),r=e+c.value.length,o=a.stepBackward(),c){if(c.type.indexOf("tag-name")!==-1){if(i===c.value)if(o.value==="<"){if(n++,n>0){var b=new M(t,e,t,r),m=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);do c=a.stepForward();while(c&&c.value!==">");var g=new M(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1)}}else o.value==="</"&&n--}else if(c.value==="/>"){for(var f=0,C=o;C;){if(C.type.indexOf("tag-name")!==-1&&C.value===i){n--;break}else if(C.value==="<")break;C=a.stepBackward(),f++}for(var k=0;k<f;k++)a.stepForward()}}while(o&&n<=0);if(m&&g&&s&&u&&b&&l)return{openTag:new M(m.start.row,m.start.column,g.end.row,g.end.column),closeTag:new M(s.start.row,s.start.column,u.end.row,u.end.column),openTagName:b,closeTagName:l}}}}x.BracketMatch=S}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/bidihandler","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/undomanager","ace/edit_session/folding","ace/edit_session/bracket_match"],function(I,x,H){var T=I("./lib/oop"),M=I("./lib/lang"),S=I("./bidihandler").BidiHandler,a=I("./config"),c=I("./lib/event_emitter").EventEmitter,o=I("./selection").Selection,i=I("./mode/text").Mode,n=I("./range").Range,t=I("./document").Document,e=I("./background_tokenizer").BackgroundTokenizer,r=I("./search_highlight").SearchHighlight,s=I("./undomanager").UndoManager,l=function(){function w(d,p){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.prevOp={},this.$foldData=[],this.id="session"+ ++w.$uid,this.$foldData.toString=function(){return this.join(`
|
|
197
|
-
`)},this.bgTokenizer=new e(new i().getTokenizer(),this);var h=this;this.bgTokenizer.on("update",function(v){h._signal("tokenizerUpdate",v)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),(typeof d!="object"||!d.getLine)&&(d=new t(d)),this.setDocument(d),this.selection=new o(this),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.selection.on("changeCursor",this.$onSelectionChange),this.$bidiHandler=new S(this),a.resetOptions(this),this.setMode(p),a._signal("session",this),this.destroyed=!1,this.$initOperationListeners()}return w.prototype.$initOperationListeners=function(){var d=this;this.curOp=null,this.on("change",function(){d.curOp||(d.startOperation(),d.curOp.selectionBefore=d.$lastSel),d.curOp.docChanged=!0},!0),this.on("changeSelection",function(){d.curOp||(d.startOperation(),d.curOp.selectionBefore=d.$lastSel),d.curOp.selectionChanged=!0},!0),this.$operationResetTimer=M.delayedCall(this.endOperation.bind(this,!0))},w.prototype.startOperation=function(d){if(this.curOp){if(!d||this.curOp.command)return;this.prevOp=this.curOp}d||(d={}),this.$operationResetTimer.schedule(),this.curOp={command:d.command||{},args:d.args},this.curOp.selectionBefore=this.selection.toJSON(),this._signal("startOperation",d)},w.prototype.endOperation=function(d){if(this.curOp){if(d&&d.returnValue===!1){this.curOp=null,this._signal("endOperation",d);return}if(d==!0&&this.curOp.command&&this.curOp.command.name=="mouse")return;var p=this.selection.toJSON();this.curOp.selectionAfter=p,this.$lastSel=this.selection.toJSON(),this.getUndoManager().addSelection(p),this._signal("beforeEndOperation"),this.prevOp=this.curOp,this.curOp=null,this._signal("endOperation",d)}},w.prototype.setDocument=function(d){this.doc&&this.doc.off("change",this.$onChange),this.doc=d,d.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},w.prototype.getDocument=function(){return this.doc},w.prototype.$resetRowCache=function(d){if(!d){this.$docRowCache=[],this.$screenRowCache=[];return}var p=this.$docRowCache.length,h=this.$getRowCacheIndex(this.$docRowCache,d)+1;p>h&&(this.$docRowCache.splice(h,p),this.$screenRowCache.splice(h,p))},w.prototype.$getRowCacheIndex=function(d,p){for(var h=0,v=d.length-1;h<=v;){var y=h+v>>1,L=d[y];if(p>L)h=y+1;else if(p<L)v=y-1;else return y}return h-1},w.prototype.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.destroyed||this.bgTokenizer.start(0)},w.prototype.onChangeFold=function(d){var p=d.data;this.$resetRowCache(p.start.row)},w.prototype.onChange=function(d){this.$modified=!0,this.$bidiHandler.onChange(d),this.$resetRowCache(d.start.row);var p=this.$updateInternalDataOnChange(d);!this.$fromUndo&&this.$undoManager&&(p&&p.length&&(this.$undoManager.add({action:"removeFolds",folds:p},this.mergeUndoDeltas),this.mergeUndoDeltas=!0),this.$undoManager.add(d,this.mergeUndoDeltas),this.mergeUndoDeltas=!0,this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(d),this._signal("change",d)},w.prototype.onSelectionChange=function(){this._signal("changeSelection")},w.prototype.setValue=function(d){this.doc.setValue(d),this.selection.moveTo(0,0),this.$resetRowCache(0),this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},w.fromJSON=function(d){typeof d=="string"&&(d=JSON.parse(d));var p=new s;p.$undoStack=d.history.undo,p.$redoStack=d.history.redo,p.mark=d.history.mark,p.$rev=d.history.rev;var h=new w(d.value);return d.folds.forEach(function(v){h.addFold("...",n.fromPoints(v.start,v.end))}),h.setAnnotations(d.annotations),h.setBreakpoints(d.breakpoints),h.setMode(d.mode),h.setScrollLeft(d.scrollLeft),h.setScrollTop(d.scrollTop),h.setUndoManager(p),h.selection.fromJSON(d.selection),h},w.prototype.toJSON=function(){return{annotations:this.$annotations,breakpoints:this.$breakpoints,folds:this.getAllFolds().map(function(d){return d.range}),history:this.getUndoManager(),mode:this.$mode.$id,scrollLeft:this.$scrollLeft,scrollTop:this.$scrollTop,selection:this.selection.toJSON(),value:this.doc.getValue()}},w.prototype.toString=function(){return this.doc.getValue()},w.prototype.getSelection=function(){return this.selection},w.prototype.getState=function(d){return this.bgTokenizer.getState(d)},w.prototype.getTokens=function(d){return this.bgTokenizer.getTokens(d)},w.prototype.getTokenAt=function(d,p){var h=this.bgTokenizer.getTokens(d),v,y=0;if(p==null){var L=h.length-1;y=this.getLine(d).length}else for(var L=0;L<h.length&&(y+=h[L].value.length,!(y>=p));L++);return v=h[L],v?(v.index=L,v.start=y-v.value.length,v):null},w.prototype.setUndoManager=function(d){if(this.$undoManager=d,this.$informUndoManager&&this.$informUndoManager.cancel(),d){var p=this;d.addSession(this),this.$syncInformUndoManager=function(){p.$informUndoManager.cancel(),p.mergeUndoDeltas=!1},this.$informUndoManager=M.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},w.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},w.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},w.prototype.getTabString=function(){return this.getUseSoftTabs()?M.stringRepeat(" ",this.getTabSize()):" "},w.prototype.setUseSoftTabs=function(d){this.setOption("useSoftTabs",d)},w.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},w.prototype.setTabSize=function(d){this.setOption("tabSize",d)},w.prototype.getTabSize=function(){return this.$tabSize},w.prototype.isTabStop=function(d){return this.$useSoftTabs&&d.column%this.$tabSize===0},w.prototype.setNavigateWithinSoftTabs=function(d){this.setOption("navigateWithinSoftTabs",d)},w.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},w.prototype.setOverwrite=function(d){this.setOption("overwrite",d)},w.prototype.getOverwrite=function(){return this.$overwrite},w.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},w.prototype.addGutterDecoration=function(d,p){this.$decorations[d]||(this.$decorations[d]=""),this.$decorations[d]+=" "+p,this._signal("changeBreakpoint",{})},w.prototype.removeGutterDecoration=function(d,p){this.$decorations[d]=(this.$decorations[d]||"").replace(" "+p,""),this._signal("changeBreakpoint",{})},w.prototype.getBreakpoints=function(){return this.$breakpoints},w.prototype.setBreakpoints=function(d){this.$breakpoints=[];for(var p=0;p<d.length;p++)this.$breakpoints[d[p]]="ace_breakpoint";this._signal("changeBreakpoint",{})},w.prototype.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},w.prototype.setBreakpoint=function(d,p){p===void 0&&(p="ace_breakpoint"),p?this.$breakpoints[d]=p:delete this.$breakpoints[d],this._signal("changeBreakpoint",{})},w.prototype.clearBreakpoint=function(d){delete this.$breakpoints[d],this._signal("changeBreakpoint",{})},w.prototype.addMarker=function(d,p,h,v){var y=this.$markerId++,L={range:d,type:h||"line",renderer:typeof h=="function"?h:null,clazz:p,inFront:!!v,id:y};return v?(this.$frontMarkers[y]=L,this._signal("changeFrontMarker")):(this.$backMarkers[y]=L,this._signal("changeBackMarker")),y},w.prototype.addDynamicMarker=function(d,p){if(d.update){var h=this.$markerId++;return d.id=h,d.inFront=!!p,p?(this.$frontMarkers[h]=d,this._signal("changeFrontMarker")):(this.$backMarkers[h]=d,this._signal("changeBackMarker")),d}},w.prototype.removeMarker=function(d){var p=this.$frontMarkers[d]||this.$backMarkers[d];if(p){var h=p.inFront?this.$frontMarkers:this.$backMarkers;delete h[d],this._signal(p.inFront?"changeFrontMarker":"changeBackMarker")}},w.prototype.getMarkers=function(d){return d?this.$frontMarkers:this.$backMarkers},w.prototype.highlight=function(d){if(!this.$searchHighlight){var p=new r(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(p)}this.$searchHighlight.setRegexp(d)},w.prototype.highlightLines=function(d,p,h,v){typeof p!="number"&&(h=p,p=d),h||(h="ace_step");var y=new n(d,0,p,1/0);return y.id=this.addMarker(y,h,"fullLine",v),y},w.prototype.setAnnotations=function(d){this.$annotations=d,this._signal("changeAnnotation",{})},w.prototype.getAnnotations=function(){return this.$annotations||[]},w.prototype.clearAnnotations=function(){this.setAnnotations([])},w.prototype.$detectNewLine=function(d){var p=d.match(/^.*?(\r?\n)/m);p?this.$autoNewLine=p[1]:this.$autoNewLine=`
|
|
198
|
-
`},w.prototype.getWordRange=function(d,p){var h=this.getLine(d),v=!1;if(p>0&&(v=!!h.charAt(p-1).match(this.tokenRe)),v||(v=!!h.charAt(p).match(this.tokenRe)),v)var y=this.tokenRe;else if(/^\s+$/.test(h.slice(p-1,p+1)))var y=/\s/;else var y=this.nonTokenRe;var L=p;if(L>0){do L--;while(L>=0&&h.charAt(L).match(y));L++}for(var E=p;E<h.length&&h.charAt(E).match(y);)E++;return new n(d,L,d,E)},w.prototype.getAWordRange=function(d,p){for(var h=this.getWordRange(d,p),v=this.getLine(h.end.row);v.charAt(h.end.column).match(/[ \t]/);)h.end.column+=1;return h},w.prototype.setNewLineMode=function(d){this.doc.setNewLineMode(d)},w.prototype.getNewLineMode=function(){return this.doc.getNewLineMode()},w.prototype.setUseWorker=function(d){this.setOption("useWorker",d)},w.prototype.getUseWorker=function(){return this.$useWorker},w.prototype.onReloadTokenizer=function(d){var p=d.data;this.bgTokenizer.start(p.first),this._signal("tokenizerUpdate",d)},w.prototype.setMode=function(d,p){if(d&&typeof d=="object"){if(d.getTokenizer)return this.$onChangeMode(d);var h=d,v=h.path}else v=d||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new i),this.$modes[v]&&!h){this.$onChangeMode(this.$modes[v]),p&&p();return}this.$modeId=v,a.loadModule(["mode",v],(function(y){if(this.$modeId!==v)return p&&p();this.$modes[v]&&!h?this.$onChangeMode(this.$modes[v]):y&&y.Mode&&(y=new y.Mode(h),h||(this.$modes[v]=y,y.$id=v),this.$onChangeMode(y)),p&&p()}).bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},w.prototype.$onChangeMode=function(d,p){if(p||(this.$modeId=d.$id),this.$mode!==d){var h=this.$mode;this.$mode=d,this.$stopWorker(),this.$useWorker&&this.$startWorker();var v=d.getTokenizer();if(v.on!==void 0){var y=this.onReloadTokenizer.bind(this);v.on("update",y)}this.bgTokenizer.setTokenizer(v),this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=d.tokenRe,this.nonTokenRe=d.nonTokenRe,p||(d.attachToSession&&d.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(d.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode",{oldMode:h,mode:d}))}},w.prototype.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},w.prototype.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(d){a.warn("Could not load worker",d),this.$worker=null}},w.prototype.getMode=function(){return this.$mode},w.prototype.setScrollTop=function(d){this.$scrollTop===d||isNaN(d)||(this.$scrollTop=d,this._signal("changeScrollTop",d))},w.prototype.getScrollTop=function(){return this.$scrollTop},w.prototype.setScrollLeft=function(d){this.$scrollLeft===d||isNaN(d)||(this.$scrollLeft=d,this._signal("changeScrollLeft",d))},w.prototype.getScrollLeft=function(){return this.$scrollLeft},w.prototype.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},w.prototype.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var d=0;return this.lineWidgets.forEach(function(p){p&&p.screenWidth>d&&(d=p.screenWidth)}),this.lineWidgetWidth=d},w.prototype.$computeWidth=function(d){if(this.$modified||d){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var p=this.doc.getAllLines(),h=this.$rowLengthCache,v=0,y=0,L=this.$foldData[y],E=L?L.start.row:1/0,R=p.length,_=0;_<R;_++){if(_>E){if(_=L.end.row+1,_>=R)break;L=this.$foldData[y++],E=L?L.start.row:1/0}h[_]==null&&(h[_]=this.$getStringScreenWidth(p[_])[0]),h[_]>v&&(v=h[_])}this.screenWidth=v}},w.prototype.getLine=function(d){return this.doc.getLine(d)},w.prototype.getLines=function(d,p){return this.doc.getLines(d,p)},w.prototype.getLength=function(){return this.doc.getLength()},w.prototype.getTextRange=function(d){return this.doc.getTextRange(d||this.selection.getRange())},w.prototype.insert=function(d,p){return this.doc.insert(d,p)},w.prototype.remove=function(d){return this.doc.remove(d)},w.prototype.removeFullLines=function(d,p){return this.doc.removeFullLines(d,p)},w.prototype.undoChanges=function(d,p){if(d.length){this.$fromUndo=!0;for(var h=d.length-1;h!=-1;h--){var v=d[h];v.action=="insert"||v.action=="remove"?this.doc.revertDelta(v):v.folds&&this.addFolds(v.folds)}!p&&this.$undoSelect&&(d.selectionBefore?this.selection.fromJSON(d.selectionBefore):this.selection.setRange(this.$getUndoSelection(d,!0))),this.$fromUndo=!1}},w.prototype.redoChanges=function(d,p){if(d.length){this.$fromUndo=!0;for(var h=0;h<d.length;h++){var v=d[h];(v.action=="insert"||v.action=="remove")&&this.doc.$safeApplyDelta(v)}!p&&this.$undoSelect&&(d.selectionAfter?this.selection.fromJSON(d.selectionAfter):this.selection.setRange(this.$getUndoSelection(d,!1))),this.$fromUndo=!1}},w.prototype.setUndoSelect=function(d){this.$undoSelect=d},w.prototype.$getUndoSelection=function(d,p){function h(R){return p?R.action!=="insert":R.action==="insert"}for(var v,y,L=0;L<d.length;L++){var E=d[L];if(E.start){if(!v){h(E)?v=n.fromPoints(E.start,E.end):v=n.fromPoints(E.start,E.start);continue}h(E)?(y=E.start,v.compare(y.row,y.column)==-1&&v.setStart(y),y=E.end,v.compare(y.row,y.column)==1&&v.setEnd(y)):(y=E.start,v.compare(y.row,y.column)==-1&&(v=n.fromPoints(E.start,E.start)))}}return v},w.prototype.replace=function(d,p){return this.doc.replace(d,p)},w.prototype.moveText=function(d,p,h){var v=this.getTextRange(d),y=this.getFoldsInRange(d),L=n.fromPoints(p,p);if(!h){this.remove(d);var E=d.start.row-d.end.row,R=E?-d.end.column:d.start.column-d.end.column;R&&(L.start.row==d.end.row&&L.start.column>d.end.column&&(L.start.column+=R),L.end.row==d.end.row&&L.end.column>d.end.column&&(L.end.column+=R)),E&&L.start.row>=d.end.row&&(L.start.row+=E,L.end.row+=E)}if(L.end=this.insert(L.start,v),y.length){var _=d.start,W=L.start,E=W.row-_.row,R=W.column-_.column;this.addFolds(y.map(function(N){return N=N.clone(),N.start.row==_.row&&(N.start.column+=R),N.end.row==_.row&&(N.end.column+=R),N.start.row+=E,N.end.row+=E,N}))}return L},w.prototype.indentRows=function(d,p,h){h=h.replace(/\t/g,this.getTabString());for(var v=d;v<=p;v++)this.doc.insertInLine({row:v,column:0},h)},w.prototype.outdentRows=function(d){for(var p=d.collapseRows(),h=new n(0,0,0,0),v=this.getTabSize(),y=p.start.row;y<=p.end.row;++y){var L=this.getLine(y);h.start.row=y,h.end.row=y;for(var E=0;E<v&&L.charAt(E)==" ";++E);E<v&&L.charAt(E)==" "?(h.start.column=E,h.end.column=E+1):(h.start.column=0,h.end.column=E),this.remove(h)}},w.prototype.$moveLines=function(d,p,h){if(d=this.getRowFoldStart(d),p=this.getRowFoldEnd(p),h<0){var v=this.getRowFoldStart(d+h);if(v<0)return 0;var y=v-d}else if(h>0){var v=this.getRowFoldEnd(p+h);if(v>this.doc.getLength()-1)return 0;var y=v-p}else{d=this.$clipRowToDocument(d),p=this.$clipRowToDocument(p);var y=p-d+1}var L=new n(d,0,p,Number.MAX_VALUE),E=this.getFoldsInRange(L).map(function(_){return _=_.clone(),_.start.row+=y,_.end.row+=y,_}),R=h==0?this.doc.getLines(d,p):this.doc.removeFullLines(d,p);return this.doc.insertFullLines(d+y,R),E.length&&this.addFolds(E),y},w.prototype.moveLinesUp=function(d,p){return this.$moveLines(d,p,-1)},w.prototype.moveLinesDown=function(d,p){return this.$moveLines(d,p,1)},w.prototype.duplicateLines=function(d,p){return this.$moveLines(d,p,0)},w.prototype.$clipRowToDocument=function(d){return Math.max(0,Math.min(d,this.doc.getLength()-1))},w.prototype.$clipColumnToRow=function(d,p){return p<0?0:Math.min(this.doc.getLine(d).length,p)},w.prototype.$clipPositionToDocument=function(d,p){if(p=Math.max(0,p),d<0)d=0,p=0;else{var h=this.doc.getLength();d>=h?(d=h-1,p=this.doc.getLine(h-1).length):p=Math.min(this.doc.getLine(d).length,p)}return{row:d,column:p}},w.prototype.$clipRangeToDocument=function(d){d.start.row<0?(d.start.row=0,d.start.column=0):d.start.column=this.$clipColumnToRow(d.start.row,d.start.column);var p=this.doc.getLength()-1;return d.end.row>p?(d.end.row=p,d.end.column=this.doc.getLine(p).length):d.end.column=this.$clipColumnToRow(d.end.row,d.end.column),d},w.prototype.setUseWrapMode=function(d){if(d!=this.$useWrapMode){if(this.$useWrapMode=d,this.$modified=!0,this.$resetRowCache(0),d){var p=this.getLength();this.$wrapData=Array(p),this.$updateWrapData(0,p-1)}this._signal("changeWrapMode")}},w.prototype.getUseWrapMode=function(){return this.$useWrapMode},w.prototype.setWrapLimitRange=function(d,p){(this.$wrapLimitRange.min!==d||this.$wrapLimitRange.max!==p)&&(this.$wrapLimitRange={min:d,max:p},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},w.prototype.adjustWrapLimit=function(d,p){var h=this.$wrapLimitRange;h.max<0&&(h={min:p,max:p});var v=this.$constrainWrapLimit(d,h.min,h.max);return v!=this.$wrapLimit&&v>1?(this.$wrapLimit=v,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},w.prototype.$constrainWrapLimit=function(d,p,h){return p&&(d=Math.max(p,d)),h&&(d=Math.min(h,d)),d},w.prototype.getWrapLimit=function(){return this.$wrapLimit},w.prototype.setWrapLimit=function(d){this.setWrapLimitRange(d,d)},w.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},w.prototype.$updateInternalDataOnChange=function(d){var p=this.$useWrapMode,h=d.action,v=d.start,y=d.end,L=v.row,E=y.row,R=E-L,_=null;if(this.$updating=!0,R!=0)if(h==="remove"){this[p?"$wrapData":"$rowLengthCache"].splice(L,R);var W=this.$foldData;_=this.getFoldsInRange(d),this.removeFolds(_);var F=this.getFoldLine(y.row),D=0;if(F){F.addRemoveChars(y.row,y.column,v.column-y.column),F.shiftRow(-R);var N=this.getFoldLine(L);N&&N!==F&&(N.merge(F),F=N),D=W.indexOf(F)+1}for(D;D<W.length;D++){var F=W[D];F.start.row>=y.row&&F.shiftRow(-R)}E=L}else{var O=Array(R);O.unshift(L,0);var B=p?this.$wrapData:this.$rowLengthCache;B.splice.apply(B,O);var W=this.$foldData,F=this.getFoldLine(L),D=0;if(F){var G=F.range.compareInside(v.row,v.column);G==0?(F=F.split(v.row,v.column),F&&(F.shiftRow(R),F.addRemoveChars(E,0,y.column-v.column))):G==-1&&(F.addRemoveChars(L,0,y.column-v.column),F.shiftRow(R)),D=W.indexOf(F)+1}for(D;D<W.length;D++){var F=W[D];F.start.row>=L&&F.shiftRow(R)}}else{R=Math.abs(d.start.column-d.end.column),h==="remove"&&(_=this.getFoldsInRange(d),this.removeFolds(_),R=-R);var F=this.getFoldLine(L);F&&F.addRemoveChars(L,v.column,R)}return p&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,p?this.$updateWrapData(L,E):this.$updateRowLengthCache(L,E),_},w.prototype.$updateRowLengthCache=function(d,p){this.$rowLengthCache[d]=null,this.$rowLengthCache[p]=null},w.prototype.$updateWrapData=function(d,p){var h=this.doc.getAllLines(),v=this.getTabSize(),y=this.$wrapData,L=this.$wrapLimit,E,R,_=d;for(p=Math.min(p,h.length-1);_<=p;)R=this.getFoldLine(_,R),R?(E=[],R.walk((function(W,F,D,N){var O;if(W!=null){O=this.$getDisplayTokens(W,E.length),O[0]=m;for(var B=1;B<O.length;B++)O[B]=g}else O=this.$getDisplayTokens(h[F].substring(N,D),E.length);E=E.concat(O)}).bind(this),R.end.row,h[R.end.row].length+1),y[R.start.row]=this.$computeWrapSplits(E,L,v),_=R.end.row+1):(E=this.$getDisplayTokens(h[_]),y[_]=this.$computeWrapSplits(E,L,v),_++)},w.prototype.$computeWrapSplits=function(d,p,h){if(d.length==0)return[];var v=[],y=d.length,L=0,E=0,R=this.$wrapAsCode,_=this.$indentedSoftWrap,W=p<=Math.max(2*h,8)||_===!1?0:Math.floor(p/2);function F(){var G=0;if(W===0)return G;if(_)for(var V=0;V<d.length;V++){var U=d[V];if(U==C)G+=1;else if(U==k)G+=h;else{if(U==A)continue;break}}return R&&_!==!1&&(G+=h),Math.min(G,W)}function D(G){for(var V=G-L,U=L;U<G;U++){var j=d[U];(j===12||j===2)&&(V-=1)}v.length||(N=F(),v.indent=N),E+=V,v.push(E),L=G}for(var N=0;y-L>p-N;){var O=L+p-N;if(d[O-1]>=C&&d[O]>=C){D(O);continue}if(d[O]==m||d[O]==g){for(O;O!=L-1&&d[O]!=m;O--);if(O>L){D(O);continue}for(O=L+p,O;O<d.length&&d[O]==g;O++);if(O==d.length)break;D(O);continue}for(var B=Math.max(O-(p-(p>>2)),L-1);O>B&&d[O]<m;)O--;if(R){for(;O>B&&d[O]<m;)O--;for(;O>B&&d[O]==f;)O--}else for(;O>B&&d[O]<C;)O--;if(O>B){D(++O);continue}O=L+p,d[O]==b&&O--,D(O-N)}return v},w.prototype.$getDisplayTokens=function(d,p){var h=[],v;p=p||0;for(var y=0;y<d.length;y++){var L=d.charCodeAt(y);if(L==9){v=this.getScreenTabSize(h.length+p),h.push(k);for(var E=1;E<v;E++)h.push(A)}else L==32?h.push(C):L>39&&L<48||L>57&&L<64?h.push(f):L>=4352&&$(L)?h.push(u,b):h.push(u)}return h},w.prototype.$getStringScreenWidth=function(d,p,h){if(p==0)return[0,0];p==null&&(p=1/0),h=h||0;var v,y;for(y=0;y<d.length&&(v=d.charCodeAt(y),v==9?h+=this.getScreenTabSize(h):v>=4352&&$(v)?h+=2:h+=1,!(h>p));y++);return[h,y]},w.prototype.getRowLength=function(d){var p=1;return this.lineWidgets&&(p+=this.lineWidgets[d]&&this.lineWidgets[d].rowCount||0),!this.$useWrapMode||!this.$wrapData[d]?p:this.$wrapData[d].length+p},w.prototype.getRowLineCount=function(d){return!this.$useWrapMode||!this.$wrapData[d]?1:this.$wrapData[d].length+1},w.prototype.getRowWrapIndent=function(d){if(this.$useWrapMode){var p=this.screenToDocumentPosition(d,Number.MAX_VALUE),h=this.$wrapData[p.row];return h.length&&h[0]<p.column?h.indent:0}else return 0},w.prototype.getScreenLastRowColumn=function(d){var p=this.screenToDocumentPosition(d,Number.MAX_VALUE);return this.documentToScreenColumn(p.row,p.column)},w.prototype.getDocumentLastRowColumn=function(d,p){var h=this.documentToScreenRow(d,p);return this.getScreenLastRowColumn(h)},w.prototype.getDocumentLastRowColumnPosition=function(d,p){var h=this.documentToScreenRow(d,p);return this.screenToDocumentPosition(h,Number.MAX_VALUE/10)},w.prototype.getRowSplitData=function(d){if(this.$useWrapMode)return this.$wrapData[d]},w.prototype.getScreenTabSize=function(d){return this.$tabSize-(d%this.$tabSize|0)},w.prototype.screenToDocumentRow=function(d,p){return this.screenToDocumentPosition(d,p).row},w.prototype.screenToDocumentColumn=function(d,p){return this.screenToDocumentPosition(d,p).column},w.prototype.screenToDocumentPosition=function(d,p,h){if(d<0)return{row:0,column:0};var v,y=0,L=0,E,R=0,_=0,W=this.$screenRowCache,F=this.$getRowCacheIndex(W,d),D=W.length;if(D&&F>=0)var R=W[F],y=this.$docRowCache[F],N=d>W[D-1];else var N=!D;for(var O=this.getLength()-1,B=this.getNextFoldLine(y),G=B?B.start.row:1/0;R<=d&&(_=this.getRowLength(y),!(R+_>d||y>=O));)R+=_,y++,y>G&&(y=B.end.row+1,B=this.getNextFoldLine(y,B),G=B?B.start.row:1/0),N&&(this.$docRowCache.push(y),this.$screenRowCache.push(R));if(B&&B.start.row<=y)v=this.getFoldDisplayLine(B),y=B.start.row;else{if(R+_<=d||y>O)return{row:O,column:this.getLine(O).length};v=this.getLine(y),B=null}var V=0,U=Math.floor(d-R);if(this.$useWrapMode){var j=this.$wrapData[y];j&&(E=j[U],U>0&&j.length&&(V=j.indent,L=j[U-1]||j[j.length-1],v=v.substring(L)))}return h!==void 0&&this.$bidiHandler.isBidiRow(R+U,y,U)&&(p=this.$bidiHandler.offsetToCol(h)),L+=this.$getStringScreenWidth(v,p-V)[1],this.$useWrapMode&&L>=E&&(L=E-1),B?B.idxToPosition(L):{row:y,column:L}},w.prototype.documentToScreenPosition=function(d,p){if(typeof p>"u")var h=this.$clipPositionToDocument(d.row,d.column);else h=this.$clipPositionToDocument(d,p);d=h.row,p=h.column;var v=0,y=null,L=null;L=this.getFoldAt(d,p,1),L&&(d=L.start.row,p=L.start.column);var E,R=0,_=this.$docRowCache,W=this.$getRowCacheIndex(_,d),F=_.length;if(F&&W>=0)var R=_[W],v=this.$screenRowCache[W],D=d>_[F-1];else var D=!F;for(var N=this.getNextFoldLine(R),O=N?N.start.row:1/0;R<d;){if(R>=O){if(E=N.end.row+1,E>d)break;N=this.getNextFoldLine(E,N),O=N?N.start.row:1/0}else E=R+1;v+=this.getRowLength(R),R=E,D&&(this.$docRowCache.push(R),this.$screenRowCache.push(v))}var B="";N&&R>=O?(B=this.getFoldDisplayLine(N,d,p),y=N.start.row):(B=this.getLine(d).substring(0,p),y=d);var G=0;if(this.$useWrapMode){var V=this.$wrapData[y];if(V){for(var U=0;B.length>=V[U];)v++,U++;B=B.substring(V[U-1]||0,B.length),G=U>0?V.indent:0}}return this.lineWidgets&&this.lineWidgets[R]&&this.lineWidgets[R].rowsAbove&&(v+=this.lineWidgets[R].rowsAbove),{row:v,column:G+this.$getStringScreenWidth(B)[0]}},w.prototype.documentToScreenColumn=function(d,p){return this.documentToScreenPosition(d,p).column},w.prototype.documentToScreenRow=function(d,p){return this.documentToScreenPosition(d,p).row},w.prototype.getScreenLength=function(){var d=0,p=null;if(this.$useWrapMode)for(var y=this.$wrapData.length,L=0,v=0,p=this.$foldData[v++],E=p?p.start.row:1/0;L<y;){var R=this.$wrapData[L];d+=R?R.length+1:1,L++,L>E&&(L=p.end.row+1,p=this.$foldData[v++],E=p?p.start.row:1/0)}else{d=this.getLength();for(var h=this.$foldData,v=0;v<h.length;v++)p=h[v],d-=p.end.row-p.start.row}return this.lineWidgets&&(d+=this.$getWidgetScreenLength()),d},w.prototype.$setFontMetrics=function(d){this.$enableVarChar&&(this.$getStringScreenWidth=function(p,h,v){if(h===0)return[0,0];h||(h=1/0),v=v||0;var y,L;for(L=0;L<p.length&&(y=p.charAt(L),y===" "?v+=this.getScreenTabSize(v):v+=d.getCharacterWidth(y),!(v>h));L++);return[v,L]})},w.prototype.getPrecedingCharacter=function(){var d=this.selection.getCursor();if(d.column===0)return d.row===0?"":this.doc.getNewLineCharacter();var p=this.getLine(d.row);return p[d.column-1]},w.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()},w}();l.$uid=0,l.prototype.$modes=a.$modes,l.prototype.getValue=l.prototype.toString,l.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},l.prototype.$overwrite=!1,l.prototype.$mode=null,l.prototype.$modeId=null,l.prototype.$scrollTop=0,l.prototype.$scrollLeft=0,l.prototype.$wrapLimit=80,l.prototype.$useWrapMode=!1,l.prototype.$wrapLimitRange={min:null,max:null},l.prototype.lineWidgets=null,l.prototype.isFullWidth=$,T.implement(l.prototype,c);var u=1,b=2,m=3,g=4,f=9,C=10,k=11,A=12;function $(w){return w<4352?!1:w>=4352&&w<=4447||w>=4515&&w<=4519||w>=4602&&w<=4607||w>=9001&&w<=9002||w>=11904&&w<=11929||w>=11931&&w<=12019||w>=12032&&w<=12245||w>=12272&&w<=12283||w>=12288&&w<=12350||w>=12353&&w<=12438||w>=12441&&w<=12543||w>=12549&&w<=12589||w>=12593&&w<=12686||w>=12688&&w<=12730||w>=12736&&w<=12771||w>=12784&&w<=12830||w>=12832&&w<=12871||w>=12880&&w<=13054||w>=13056&&w<=19903||w>=19968&&w<=42124||w>=42128&&w<=42182||w>=43360&&w<=43388||w>=44032&&w<=55203||w>=55216&&w<=55238||w>=55243&&w<=55291||w>=63744&&w<=64255||w>=65040&&w<=65049||w>=65072&&w<=65106||w>=65108&&w<=65126||w>=65128&&w<=65131||w>=65281&&w<=65376||w>=65504&&w<=65510}I("./edit_session/folding").Folding.call(l.prototype),I("./edit_session/bracket_match").BracketMatch.call(l.prototype),a.defineOptions(l.prototype,"session",{wrap:{set:function(w){if(!w||w=="off"?w=!1:w=="free"?w=!0:w=="printMargin"?w=-1:typeof w=="string"&&(w=parseInt(w,10)||!1),this.$wrap!=w)if(this.$wrap=w,!w)this.setUseWrapMode(!1);else{var d=typeof w=="number"?w:null;this.setWrapLimitRange(d,d),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(w){w=w=="auto"?this.$mode.type!="text":w!="text",w!=this.$wrapAsCode&&(this.$wrapAsCode=w,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(w){this.$useWorker=w,this.$stopWorker(),w&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(w){w=parseInt(w),w>0&&this.$tabSize!==w&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=w,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(w){this.setFoldStyle(w)},handlesSet:!0},overwrite:{set:function(w){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(w){this.doc.setNewLineMode(w)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(w){this.setMode(w)},get:function(){return this.$modeId},handlesSet:!0}}),x.EditSession=l}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(I,x,H){var T=I("./lib/lang"),M=I("./lib/oop"),S=I("./range").Range,a=function(){function o(){this.$options={}}return o.prototype.set=function(i){return M.mixin(this.$options,i),this},o.prototype.getOptions=function(){return T.copyObject(this.$options)},o.prototype.setOptions=function(i){this.$options=i},o.prototype.find=function(i){var n=this.$options,t=this.$matchIterator(i,n);if(!t)return!1;var e=null;return t.forEach(function(r,s,l,u){return e=new S(r,s,l,u),s==u&&n.start&&n.start.start&&n.skipCurrent!=!1&&e.isEqual(n.start)?(e=null,!1):!0}),e},o.prototype.findAll=function(i){var n=this.$options;if(!n.needle)return[];this.$assembleRegExp(n);var t=n.range,e=t?i.getLines(t.start.row,t.end.row):i.doc.getAllLines(),r=[],s=n.re;if(n.$isMultiLine){var l=s.length,u=e.length-l,b;e:for(var m=s.offset||0;m<=u;m++){for(var g=0;g<l;g++)if(e[m+g].search(s[g])==-1)continue e;var f=e[m],C=e[m+l-1],k=f.length-f.match(s[0])[0].length,A=C.match(s[l-1])[0].length;b&&b.end.row===m&&b.end.column>k||(r.push(b=new S(m,k,m+l-1,A)),l>2&&(m=m+l-2))}}else for(var $=0;$<e.length;$++)for(var w=T.getMatchOffsets(e[$],s),g=0;g<w.length;g++){var d=w[g];r.push(new S($,d.offset,$,d.offset+d.length))}if(t){for(var p=t.start.column,h=t.end.column,$=0,g=r.length-1;$<g&&r[$].start.column<p&&r[$].start.row==0;)$++;for(var v=t.end.row-t.start.row;$<g&&r[g].end.column>h&&r[g].end.row==v;)g--;for(r=r.slice($,g+1),$=0,g=r.length;$<g;$++)r[$].start.row+=t.start.row,r[$].end.row+=t.start.row}return r},o.prototype.replace=function(i,n){var t=this.$options,e=this.$assembleRegExp(t);if(t.$isMultiLine)return n;if(e){var r=e.exec(i);if(!r||r[0].length!=i.length)return null;if(t.regExp||(n=n.replace(/\$/g,"$$$$")),n=i.replace(e,n),t.preserveCase){n=n.split("");for(var s=Math.min(i.length,i.length);s--;){var l=i[s];l&&l.toLowerCase()!=l?n[s]=n[s].toUpperCase():n[s]=n[s].toLowerCase()}n=n.join("")}return n}},o.prototype.$assembleRegExp=function(i,n){if(i.needle instanceof RegExp)return i.re=i.needle;var t=i.needle;if(!i.needle)return i.re=!1;i.regExp||(t=T.escapeRegExp(t));var e=i.caseSensitive?"gm":"gmi";try{new RegExp(t,"u"),i.$supportsUnicodeFlag=!0,e+="u"}catch{i.$supportsUnicodeFlag=!1}if(i.wholeWord&&(t=c(t,i)),i.$isMultiLine=!n&&/[\n\r]/.test(t),i.$isMultiLine)return i.re=this.$assembleMultilineRegExp(t,e);try{var r=new RegExp(t,e)}catch{r=!1}return i.re=r},o.prototype.$assembleMultilineRegExp=function(i,n){for(var t=i.replace(/\r\n|\r|\n/g,`$
|
|
199
|
-
^`).split(`
|
|
200
|
-
`),e=[],r=0;r<t.length;r++)try{e.push(new RegExp(t[r],n))}catch{return!1}return e},o.prototype.$matchIterator=function(i,n){var t=this.$assembleRegExp(n);if(!t)return!1;var e=n.backwards==!0,r=n.skipCurrent!=!1,s=t.unicode,l=n.range,u=n.start;u||(u=l?l[e?"end":"start"]:i.selection.getRange()),u.start&&(u=u[r!=e?"end":"start"]);var b=l?l.start.row:0,m=l?l.end.row:i.getLength()-1;if(e)var g=function(k){var A=u.row;if(!C(A,u.column,k)){for(A--;A>=b;A--)if(C(A,Number.MAX_VALUE,k))return;if(n.wrap!=!1){for(A=m,b=u.row;A>=b;A--)if(C(A,Number.MAX_VALUE,k))return}}};else var g=function(A){var $=u.row;if(!C($,u.column,A)){for($=$+1;$<=m;$++)if(C($,0,A))return;if(n.wrap!=!1){for($=b,m=u.row;$<=m;$++)if(C($,0,A))return}}};if(n.$isMultiLine)var f=t.length,C=function(k,A,$){var w=e?k-f+1:k;if(!(w<0||w+f>i.getLength())){var d=i.getLine(w),p=d.search(t[0]);if(!(!e&&p<A||p===-1)){for(var h=1;h<f;h++)if(d=i.getLine(w+h),d.search(t[h])==-1)return;var v=d.match(t[f-1])[0].length;if(!(e&&v>A)&&$(w,p,w+f-1,v))return!0}}};else if(e)var C=function(A,$,w){var d=i.getLine(A),p=[],h,v=0;for(t.lastIndex=0;h=t.exec(d);){var y=h[0].length;if(v=h.index,!y){if(v>=d.length)break;t.lastIndex=v+=T.skipEmptyMatch(d,v,s)}if(h.index+y>$)break;p.push(h.index,y)}for(var L=p.length-1;L>=0;L-=2){var E=p[L-1],y=p[L];if(w(A,E,A,E+y))return!0}};else var C=function(A,$,w){var d=i.getLine(A),p,h;for(t.lastIndex=$;h=t.exec(d);){var v=h[0].length;if(p=h.index,w(A,p,A,p+v))return!0;if(!v&&(t.lastIndex=p+=T.skipEmptyMatch(d,p,s),p>=d.length))return!1}};return{forEach:g}},o}();function c(o,i){var n=T.supportsLookbehind();function t(l,u){u===void 0&&(u=!0);var b=n&&i.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");return b.test(l)||i.regExp?n&&i.$supportsUnicodeFlag?u?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b":""}var e=Array.from(o),r=e[0],s=e[e.length-1];return t(r)+o+t(s,!1)}x.Search=a}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(I,x,H){var T=this&&this.__extends||function(){var n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var l in s)Object.prototype.hasOwnProperty.call(s,l)&&(r[l]=s[l])},n(t,e)};return function(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");n(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}}(),M=I("../lib/keys"),S=I("../lib/useragent"),a=M.KEY_MODS,c=function(){function n(t,e){this.$init(t,e,!1)}return n.prototype.$init=function(t,e,r){this.platform=e||(S.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(t),this.$singleCommand=r},n.prototype.addCommand=function(t){this.commands[t.name]&&this.removeCommand(t),this.commands[t.name]=t,t.bindKey&&this._buildKeyHash(t)},n.prototype.removeCommand=function(t,e){var r=t&&(typeof t=="string"?t:t.name);t=this.commands[r],e||delete this.commands[r];var s=this.commandKeyBinding;for(var l in s){var u=s[l];if(u==t)delete s[l];else if(Array.isArray(u)){var b=u.indexOf(t);b!=-1&&(u.splice(b,1),u.length==1&&(s[l]=u[0]))}}},n.prototype.bindKey=function(t,e,r){if(typeof t=="object"&&t&&(r==null&&(r=t.position),t=t[this.platform]),!!t){if(typeof e=="function")return this.addCommand({exec:e,bindKey:t,name:e.name||t});t.split("|").forEach(function(s){var l="";if(s.indexOf(" ")!=-1){var u=s.split(/\s+/);s=u.pop(),u.forEach(function(g){var f=this.parseKeys(g),C=a[f.hashId]+f.key;l+=(l?" ":"")+C,this._addCommandToBinding(l,"chainKeys")},this),l+=" "}var b=this.parseKeys(s),m=a[b.hashId]+b.key;this._addCommandToBinding(l+m,e,r)},this)}},n.prototype._addCommandToBinding=function(t,e,r){var s=this.commandKeyBinding,l;if(!e)delete s[t];else if(!s[t]||this.$singleCommand)s[t]=e;else{Array.isArray(s[t])?(l=s[t].indexOf(e))!=-1&&s[t].splice(l,1):s[t]=[s[t]],typeof r!="number"&&(r=o(e));var u=s[t];for(l=0;l<u.length;l++){var b=u[l],m=o(b);if(m>r)break}u.splice(l,0,e)}},n.prototype.addCommands=function(t){t&&Object.keys(t).forEach(function(e){var r=t[e];if(r){if(typeof r=="string")return this.bindKey(r,e);typeof r=="function"&&(r={exec:r}),typeof r=="object"&&(r.name||(r.name=e),this.addCommand(r))}},this)},n.prototype.removeCommands=function(t){Object.keys(t).forEach(function(e){this.removeCommand(t[e])},this)},n.prototype.bindKeys=function(t){Object.keys(t).forEach(function(e){this.bindKey(e,t[e])},this)},n.prototype._buildKeyHash=function(t){this.bindKey(t.bindKey,t)},n.prototype.parseKeys=function(t){var e=t.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(m){return m}),r=e.pop(),s=M[r];if(M.FUNCTION_KEYS[s])r=M.FUNCTION_KEYS[s].toLowerCase();else if(e.length){if(e.length==1&&e[0]=="shift")return{key:r.toUpperCase(),hashId:-1}}else return{key:r,hashId:-1};for(var l=0,u=e.length;u--;){var b=M.KEY_MODS[e[u]];if(b==null)return typeof console<"u"&&console.error("invalid modifier "+e[u]+" in "+t),!1;l|=b}return{key:r,hashId:l}},n.prototype.findKeyCommand=function(t,e){var r=a[t]+e;return this.commandKeyBinding[r]},n.prototype.handleKeyboard=function(t,e,r,s){if(!(s<0)){var l=a[e]+r,u=this.commandKeyBinding[l];return t.$keyChain&&(t.$keyChain+=" "+l,u=this.commandKeyBinding[t.$keyChain]||u),u&&(u=="chainKeys"||u[u.length-1]=="chainKeys")?(t.$keyChain=t.$keyChain||l,{command:"null"}):(t.$keyChain&&((!e||e==4)&&r.length==1?t.$keyChain=t.$keyChain.slice(0,-l.length-1):(e==-1||s>0)&&(t.$keyChain="")),{command:u})}},n.prototype.getStatusText=function(t,e){return e.$keyChain||""},n}();function o(n){return typeof n=="object"&&n.bindKey&&n.bindKey.position||(n.isDefault?-100:0)}var i=function(n){T(t,n);function t(e,r){var s=n.call(this,e,r)||this;return s.$singleCommand=!0,s}return t}(c);i.call=function(n,t,e){c.prototype.$init.call(n,t,e,!0)},c.call=function(n,t,e){c.prototype.$init.call(n,t,e,!1)},x.HashHandler=i,x.MultiHashHandler=c}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(I,x,H){var T=this&&this.__extends||function(){var o=function(i,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},o(i,n)};return function(i,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");o(i,n);function t(){this.constructor=i}i.prototype=n===null?Object.create(n):(t.prototype=n.prototype,new t)}}(),M=I("../lib/oop"),S=I("../keyboard/hash_handler").MultiHashHandler,a=I("../lib/event_emitter").EventEmitter,c=function(o){T(i,o);function i(n,t){var e=o.call(this,t,n)||this;return e.byName=e.commands,e.setDefaultHandler("exec",function(r){return r.args?r.command.exec(r.editor,r.args,r.event,!1):r.command.exec(r.editor,{},r.event,!0)}),e}return i.prototype.exec=function(n,t,e){if(Array.isArray(n)){for(var r=n.length;r--;)if(this.exec(n[r],t,e))return!0;return!1}if(typeof n=="string"&&(n=this.commands[n]),!this.canExecute(n,t))return!1;var s={editor:t,command:n,args:e};return s.returnValue=this._emit("exec",s),this._signal("afterExec",s),s.returnValue!==!1},i.prototype.canExecute=function(n,t){return typeof n=="string"&&(n=this.commands[n]),!(!n||t&&t.$readOnly&&!n.readOnly||this.$checkCommandState!=!1&&n.isAvailable&&!n.isAvailable(t))},i.prototype.toggleRecording=function(n){if(!this.$inReplay)return n&&n._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(t){this.macro.push([t.command,t.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},i.prototype.replay=function(n){if(!(this.$inReplay||!this.macro)){if(this.recording)return this.toggleRecording(n);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,n):this.exec(t[0],n,t[1])},this)}finally{this.$inReplay=!1}}},i.prototype.trimMacro=function(n){return n.map(function(t){return typeof t[0]!="string"&&(t[0]=t[0].name),t[1]||(t=t[0]),t})},i}(S);M.implement(c.prototype,a),x.CommandManager=c}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(I,x,H){var T=I("../lib/lang"),M=I("../config"),S=I("../range").Range;function a(o,i){return{win:o,mac:i}}x.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:a("Ctrl-,","Command-,"),exec:function(o){M.loadModule("ace/ext/settings_menu",function(i){i.init(o),o.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:a("Alt-E","F4"),exec:function(o){M.loadModule("ace/ext/error_marker",function(i){i.showErrorMarker(o,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:a("Alt-Shift-E","Shift-F4"),exec:function(o){M.loadModule("ace/ext/error_marker",function(i){i.showErrorMarker(o,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:a("Ctrl-A","Command-A"),exec:function(o){o.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:a(null,"Ctrl-L"),exec:function(o){o.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:a("Ctrl-L","Command-L"),exec:function(o,i){typeof i=="number"&&!isNaN(i)&&o.gotoLine(i),o.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:a("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(o){o.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:a("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(o){o.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:a("F2","F2"),exec:function(o){o.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:a("Alt-F2","Alt-F2"),exec:function(o){o.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(o){o.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(o){o.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:a("Alt-0","Command-Option-0"),exec:function(o){o.session.foldAll(),o.session.unfold(o.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:a("Alt-Shift-0","Command-Option-Shift-0"),exec:function(o){o.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:a("Ctrl-K","Command-G"),exec:function(o){o.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:a("Ctrl-Shift-K","Command-Shift-G"),exec:function(o){o.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:a("Alt-K","Ctrl-G"),exec:function(o){o.selection.isEmpty()?o.selection.selectWord():o.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:a("Alt-Shift-K","Ctrl-Shift-G"),exec:function(o){o.selection.isEmpty()?o.selection.selectWord():o.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:a("Ctrl-F","Command-F"),exec:function(o){M.loadModule("ace/ext/searchbox",function(i){i.Search(o)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(o){o.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:a("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(o){o.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:a("Ctrl-Home","Command-Home|Command-Up"),exec:function(o){o.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:a("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(o){o.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:a("Up","Up|Ctrl-P"),exec:function(o,i){o.navigateUp(i.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:a("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(o){o.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:a("Ctrl-End","Command-End|Command-Down"),exec:function(o){o.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:a("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(o){o.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:a("Down","Down|Ctrl-N"),exec:function(o,i){o.navigateDown(i.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:a("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(o){o.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:a("Ctrl-Left","Option-Left"),exec:function(o){o.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:a("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(o){o.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:a("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(o){o.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:a("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(o){o.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:a("Left","Left|Ctrl-B"),exec:function(o,i){o.navigateLeft(i.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:a("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(o){o.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:a("Ctrl-Right","Option-Right"),exec:function(o){o.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:a("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(o){o.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:a("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(o){o.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:a("Shift-Right","Shift-Right"),exec:function(o){o.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:a("Right","Right|Ctrl-F"),exec:function(o,i){o.navigateRight(i.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(o){o.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:a(null,"Option-PageDown"),exec:function(o){o.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:a("PageDown","PageDown|Ctrl-V"),exec:function(o){o.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(o){o.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:a(null,"Option-PageUp"),exec:function(o){o.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(o){o.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:a("Ctrl-Up",null),exec:function(o){o.renderer.scrollBy(0,-2*o.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:a("Ctrl-Down",null),exec:function(o){o.renderer.scrollBy(0,2*o.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(o){o.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(o){o.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:a("Ctrl-Alt-E","Command-Option-E"),exec:function(o){o.commands.toggleRecording(o)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:a("Ctrl-Shift-E","Command-Shift-E"),exec:function(o){o.commands.replay(o)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:a("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(o){o.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:a("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(o){o.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:a("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(o){o.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:a(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(o){},readOnly:!0},{name:"cut",description:"Cut",exec:function(o){var i=o.$copyWithEmptySelection&&o.selection.isEmpty(),n=i?o.selection.getLineRange():o.selection.getRange();o._emit("cut",n),n.isEmpty()||o.session.remove(n),o.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(o,i){o.$handlePaste(i)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:a("Ctrl-D","Command-D"),exec:function(o){o.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:a("Ctrl-Shift-D","Command-Shift-D"),exec:function(o){o.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:a("Ctrl-Alt-S","Command-Alt-S"),exec:function(o){o.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:a("Ctrl-/","Command-/"),exec:function(o){o.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:a("Ctrl-Shift-/","Command-Shift-/"),exec:function(o){o.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:a("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(o){o.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:a("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(o){o.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:a("Ctrl-H","Command-Option-F"),exec:function(o){M.loadModule("ace/ext/searchbox",function(i){i.Search(o,!0)})}},{name:"undo",description:"Undo",bindKey:a("Ctrl-Z","Command-Z"),exec:function(o){o.undo()}},{name:"redo",description:"Redo",bindKey:a("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(o){o.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:a("Alt-Shift-Up","Command-Option-Up"),exec:function(o){o.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:a("Alt-Up","Option-Up"),exec:function(o){o.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:a("Alt-Shift-Down","Command-Option-Down"),exec:function(o){o.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:a("Alt-Down","Option-Down"),exec:function(o){o.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:a("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(o){o.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:a("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(o){o.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:a("Shift-Delete",null),exec:function(o){if(o.selection.isEmpty())o.remove("left");else return!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:a("Alt-Backspace","Command-Backspace"),exec:function(o){o.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:a("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(o){o.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:a("Ctrl-Shift-Backspace",null),exec:function(o){var i=o.selection.getRange();i.start.column=0,o.session.remove(i)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:a("Ctrl-Shift-Delete",null),exec:function(o){var i=o.selection.getRange();i.end.column=Number.MAX_VALUE,o.session.remove(i)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:a("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(o){o.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:a("Ctrl-Delete","Alt-Delete"),exec:function(o){o.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:a("Shift-Tab","Shift-Tab"),exec:function(o){o.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:a("Tab","Tab"),exec:function(o){o.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:a("Ctrl-[","Ctrl-["),exec:function(o){o.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:a("Ctrl-]","Ctrl-]"),exec:function(o){o.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(o,i){o.insert(i)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(o,i){o.insert(T.stringRepeat(i.text||"",i.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:a(null,"Ctrl-O"),exec:function(o){o.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:a("Alt-Shift-X","Ctrl-T"),exec:function(o){o.transposeLetters()},multiSelectAction:function(o){o.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:a("Ctrl-U","Ctrl-U"),exec:function(o){o.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:a("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(o){o.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:a(null,null),exec:function(o){o.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:a("Ctrl-Shift-L","Command-Shift-L"),exec:function(o){var i=o.selection.getRange();i.start.column=i.end.column=0,i.end.row++,o.selection.setRange(i,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:a("Ctrl+F3","F3"),exec:function(o){o.openLink()}},{name:"joinlines",description:"Join lines",bindKey:a(null,null),exec:function(o){for(var i=o.selection.isBackwards(),n=i?o.selection.getSelectionLead():o.selection.getSelectionAnchor(),t=i?o.selection.getSelectionAnchor():o.selection.getSelectionLead(),e=o.session.doc.getLine(n.row).length,r=o.session.doc.getTextRange(o.selection.getRange()),s=r.replace(/\n\s*/," ").length,l=o.session.doc.getLine(n.row),u=n.row+1;u<=t.row+1;u++){var b=T.stringTrimLeft(T.stringTrimRight(o.session.doc.getLine(u)));b.length!==0&&(b=" "+b),l+=b}t.row+1<o.session.doc.getLength()-1&&(l+=o.session.doc.getNewLineCharacter()),o.clearSelection(),o.session.doc.replace(new S(n.row,0,t.row+2,0),l),s>0?(o.selection.moveCursorTo(n.row,n.column),o.selection.selectTo(n.row,n.column+s)):(e=o.session.doc.getLine(n.row).length>e?e+1:e,o.selection.moveCursorTo(n.row,e))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:a(null,null),exec:function(o){var i=o.session.doc.getLength()-1,n=o.session.doc.getLine(i).length,t=o.selection.rangeList.ranges,e=[];t.length<1&&(t=[o.selection.getRange()]);for(var r=0;r<t.length;r++)r==t.length-1&&(t[r].end.row===i&&t[r].end.column===n||e.push(new S(t[r].end.row,t[r].end.column,i,n))),r===0?t[r].start.row===0&&t[r].start.column===0||e.push(new S(0,0,t[r].start.row,t[r].start.column)):e.push(new S(t[r-1].end.row,t[r-1].end.column,t[r].start.row,t[r].start.column));o.exitMultiSelectMode(),o.clearSelection();for(var r=0;r<e.length;r++)o.selection.addRange(e[r],!1)},readOnly:!0,scrollIntoView:"none"},{name:"addLineAfter",description:"Add new line after the current line",exec:function(o){o.selection.clearSelection(),o.navigateLineEnd(),o.insert(`
|
|
201
|
-
`)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"addLineBefore",description:"Add new line before the current line",exec:function(o){o.selection.clearSelection();var i=o.getCursorPosition();o.selection.moveTo(i.row-1,Number.MAX_VALUE),o.insert(`
|
|
202
|
-
`),i.row===0&&o.navigateUp()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"openCommandPallete",exec:function(o){console.warn("This is an obsolete command. Please use `openCommandPalette` instead."),o.prompt({$type:"commands"})},readOnly:!0},{name:"openCommandPalette",description:"Open command palette",bindKey:a("F1","F1"),exec:function(o){o.prompt({$type:"commands"})},readOnly:!0},{name:"modeSelect",description:"Change language mode...",bindKey:a(null,null),exec:function(o){o.prompt({$type:"modes"})},readOnly:!0}];for(var c=1;c<9;c++)x.commands.push({name:"foldToLevel"+c,description:"Fold To Level "+c,level:c,exec:function(o){o.session.foldToLevel(this.level)},scrollIntoView:"center",readOnly:!0})}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(I,x,H){var T=I("./lib/dom"),M=function(){function S(a){this.session=a,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 S.prototype.getRowLength=function(a){var c;return this.lineWidgets?c=this.lineWidgets[a]&&this.lineWidgets[a].rowCount||0:c=0,!this.$useWrapMode||!this.$wrapData[a]?1+c:this.$wrapData[a].length+1+c},S.prototype.$getWidgetScreenLength=function(){var a=0;return this.lineWidgets.forEach(function(c){c&&c.rowCount&&!c.hidden&&(a+=c.rowCount)}),a},S.prototype.$onChangeEditor=function(a){this.attach(a.editor)},S.prototype.attach=function(a){a&&a.widgetManager&&a.widgetManager!=this&&a.widgetManager.detach(),this.editor!=a&&(this.detach(),this.editor=a,a&&(a.widgetManager=this,a.renderer.on("beforeRender",this.measureWidgets),a.renderer.on("afterRender",this.renderWidgets)))},S.prototype.detach=function(a){var c=this.editor;if(c){this.editor=null,c.widgetManager=null,c.renderer.off("beforeRender",this.measureWidgets),c.renderer.off("afterRender",this.renderWidgets);var o=this.session.lineWidgets;o&&o.forEach(function(i){i&&i.el&&i.el.parentNode&&(i._inDocument=!1,i.el.parentNode.removeChild(i.el))})}},S.prototype.updateOnFold=function(a,c){var o=c.lineWidgets;if(!(!o||!a.action)){for(var i=a.data,n=i.start.row,t=i.end.row,e=a.action=="add",r=n+1;r<t;r++)o[r]&&(o[r].hidden=e);o[t]&&(e?o[n]?o[t].hidden=e:o[n]=o[t]:(o[n]==o[t]&&(o[n]=void 0),o[t].hidden=e))}},S.prototype.updateOnChange=function(a){var c=this.session.lineWidgets;if(c){var o=a.start.row,i=a.end.row-o;if(i!==0)if(a.action=="remove"){var n=c.splice(o+1,i);!c[o]&&n[n.length-1]&&(c[o]=n.pop()),n.forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var t=new Array(i);c[o]&&c[o].column!=null&&a.start.column>c[o].column&&o++,t.unshift(o,0),c.splice.apply(c,t),this.$updateRows()}}},S.prototype.$updateRows=function(){var a=this.session.lineWidgets;if(a){var c=!0;a.forEach(function(o,i){if(o)for(c=!1,o.row=i;o.$oldWidget;)o.$oldWidget.row=i,o=o.$oldWidget}),c&&(this.session.lineWidgets=null)}},S.prototype.$registerLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var c=this.session.lineWidgets[a.row];return c&&(a.$oldWidget=c,c.el&&c.el.parentNode&&(c.el.parentNode.removeChild(c.el),c._inDocument=!1)),this.session.lineWidgets[a.row]=a,a},S.prototype.addLineWidget=function(a){if(this.$registerLineWidget(a),a.session=this.session,!this.editor)return a;var c=this.editor.renderer;a.html&&!a.el&&(a.el=T.createElement("div"),a.el.innerHTML=a.html),a.text&&!a.el&&(a.el=T.createElement("div"),a.el.textContent=a.text),a.el&&(T.addCssClass(a.el,"ace_lineWidgetContainer"),a.className&&T.addCssClass(a.el,a.className),a.el.style.position="absolute",a.el.style.zIndex="5",c.container.appendChild(a.el),a._inDocument=!0,a.coverGutter||(a.el.style.zIndex="3"),a.pixelHeight==null&&(a.pixelHeight=a.el.offsetHeight)),a.rowCount==null&&(a.rowCount=a.pixelHeight/c.layerConfig.lineHeight);var o=this.session.getFoldAt(a.row,0);if(a.$fold=o,o){var i=this.session.lineWidgets;a.row==o.end.row&&!i[o.start.row]?i[o.start.row]=a:a.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,c),this.onWidgetChanged(a),a},S.prototype.removeLineWidget=function(a){if(a._inDocument=!1,a.session=null,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch{}if(this.session.lineWidgets){var c=this.session.lineWidgets[a.row];if(c==a)this.session.lineWidgets[a.row]=a.$oldWidget,a.$oldWidget&&this.onWidgetChanged(a.$oldWidget);else for(;c;){if(c.$oldWidget==a){c.$oldWidget=a.$oldWidget;break}c=c.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},S.prototype.getWidgetsAtRow=function(a){for(var c=this.session.lineWidgets,o=c&&c[a],i=[];o;)i.push(o),o=o.$oldWidget;return i},S.prototype.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},S.prototype.measureWidgets=function(a,c){var o=this.session._changedWidgets,i=c.layerConfig;if(!(!o||!o.length)){for(var n=1/0,t=0;t<o.length;t++){var e=o[t];if(!(!e||!e.el)&&e.session==this.session){if(!e._inDocument){if(this.session.lineWidgets[e.row]!=e)continue;e._inDocument=!0,c.container.appendChild(e.el)}e.h=e.el.offsetHeight,e.fixedWidth||(e.w=e.el.offsetWidth,e.screenWidth=Math.ceil(e.w/i.characterWidth));var r=e.h/i.lineHeight;e.coverLine&&(r-=this.session.getRowLineCount(e.row),r<0&&(r=0)),e.rowCount!=r&&(e.rowCount=r,e.row<n&&(n=e.row))}}n!=1/0&&(this.session._emit("changeFold",{data:{start:{row:n}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},S.prototype.renderWidgets=function(a,c){var o=c.layerConfig,i=this.session.lineWidgets;if(i){for(var n=Math.min(this.firstRow,o.firstRow),t=Math.max(this.lastRow,o.lastRow,i.length);n>0&&!i[n];)n--;this.firstRow=o.firstRow,this.lastRow=o.lastRow,c.$cursorLayer.config=o;for(var e=n;e<=t;e++){var r=i[e];if(!(!r||!r.el)){if(r.hidden){r.el.style.top=-100-(r.pixelHeight||0)+"px";continue}r._inDocument||(r._inDocument=!0,c.container.appendChild(r.el));var s=c.$cursorLayer.getPixelPosition({row:e,column:0},!0).top;r.coverLine||(s+=o.lineHeight*this.session.getRowLineCount(r.row)),r.el.style.top=s-o.offset+"px";var l=r.coverGutter?0:c.gutterWidth;r.fixedWidth||(l-=c.scrollLeft),r.el.style.left=l+"px",r.fullWidth&&r.screenWidth&&(r.el.style.minWidth=o.width+2*o.padding+"px"),r.fixedWidth?r.el.style.right=c.scrollBar.getWidth()+"px":r.el.style.right=""}}}},S}();x.LineWidgets=M}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(I,x,H){var T=I("../lib/keys"),M=I("../mouse/default_gutter_handler").GutterTooltip,S=function(){function c(o){this.editor=o,this.gutterLayer=o.renderer.$gutterLayer,this.element=o.renderer.$gutter,this.lines=o.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new M(this.editor)}return c.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))},c.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))},c.prototype.$onGutterKeyDown=function(o){if(this.annotationTooltip.isOpen){o.preventDefault(),o.keyCode===T.escape&&this.annotationTooltip.hideTooltip();return}if(o.target===this.element){if(o.keyCode!=T.enter)return;o.preventDefault();var i=this.editor.getCursorPosition().row;this.editor.isRowVisible(i)||this.editor.scrollToLine(i,!0,!0),setTimeout((function(){var n=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),t=this.$findNearestFoldWidget(n),e=this.$findNearestAnnotation(n);if(!(t===null&&e===null)){if(t===null&&e!==null){this.activeRowIndex=e,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}if(t!==null&&e===null){this.activeRowIndex=t,this.activeLane="fold",this.$focusFoldWidget(this.activeRowIndex);return}if(Math.abs(e-n)<Math.abs(t-n)){this.activeRowIndex=e,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}else{this.activeRowIndex=t,this.activeLane="fold",this.$focusFoldWidget(this.activeRowIndex);return}}}).bind(this),10);return}this.$handleGutterKeyboardInteraction(o),setTimeout((function(){this.editor._signal("gutterkeydown",new a(o,this))}).bind(this),10)},c.prototype.$handleGutterKeyboardInteraction=function(o){if(o.keyCode===T.tab){o.preventDefault();return}if(o.keyCode===T.escape){o.preventDefault(),this.$blurGutter(),this.element.focus(),this.lane=null;return}if(o.keyCode===T.up){switch(o.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetUp();break;case"annotation":this.$moveAnnotationUp();break}return}if(o.keyCode===T.down){switch(o.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetDown();break;case"annotation":this.$moveAnnotationDown();break}return}if(o.keyCode===T.left){o.preventDefault(),this.$switchLane("annotation");return}if(o.keyCode===T.right){o.preventDefault(),this.$switchLane("fold");return}if(o.keyCode===T.enter||o.keyCode===T.space){switch(o.preventDefault(),this.activeLane){case"fold":if(this.gutterLayer.session.foldWidgets[this.$rowIndexToRow(this.activeRowIndex)]==="start"){var i=this.$rowIndexToRow(this.activeRowIndex);this.editor.session.onFoldWidgetClick(this.$rowIndexToRow(this.activeRowIndex),o),setTimeout((function(){this.$rowIndexToRow(this.activeRowIndex)!==i&&(this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=this.$rowToRowIndex(i),this.$focusFoldWidget(this.activeRowIndex))}).bind(this),10);break}else if(this.gutterLayer.session.foldWidgets[this.$rowIndexToRow(this.activeRowIndex)]==="end")break;return;case"annotation":var n=this.lines.cells[this.activeRowIndex].element.childNodes[2],t=n.getBoundingClientRect(),e=this.annotationTooltip.getElement().style;e.left=t.right+"px",e.top=t.bottom+"px",this.annotationTooltip.showTooltip(this.$rowIndexToRow(this.activeRowIndex));break}return}},c.prototype.$blurGutter=function(){if(this.activeRowIndex!==null)switch(this.activeLane){case"fold":this.$blurFoldWidget(this.activeRowIndex);break;case"annotation":this.$blurAnnotation(this.activeRowIndex);break}this.annotationTooltip.isOpen&&this.annotationTooltip.hideTooltip()},c.prototype.$isFoldWidgetVisible=function(o){var i=this.editor.isRowFullyVisible(this.$rowIndexToRow(o)),n=this.$getFoldWidget(o).style.display!=="none";return i&&n},c.prototype.$isAnnotationVisible=function(o){var i=this.editor.isRowFullyVisible(this.$rowIndexToRow(o)),n=this.$getAnnotation(o).style.display!=="none";return i&&n},c.prototype.$getFoldWidget=function(o){var i=this.lines.get(o),n=i.element;return n.childNodes[1]},c.prototype.$getAnnotation=function(o){var i=this.lines.get(o),n=i.element;return n.childNodes[2]},c.prototype.$findNearestFoldWidget=function(o){if(this.$isFoldWidgetVisible(o))return o;for(var i=0;o-i>0||o+i<this.lines.getLength()-1;){if(i++,o-i>=0&&this.$isFoldWidgetVisible(o-i))return o-i;if(o+i<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(o+i))return o+i}return null},c.prototype.$findNearestAnnotation=function(o){if(this.$isAnnotationVisible(o))return o;for(var i=0;o-i>0||o+i<this.lines.getLength()-1;){if(i++,o-i>=0&&this.$isAnnotationVisible(o-i))return o-i;if(o+i<=this.lines.getLength()-1&&this.$isAnnotationVisible(o+i))return o+i}return null},c.prototype.$focusFoldWidget=function(o){if(o!=null){var i=this.$getFoldWidget(o);i.classList.add(this.editor.renderer.keyboardFocusClassName),i.focus()}},c.prototype.$focusAnnotation=function(o){if(o!=null){var i=this.$getAnnotation(o);i.classList.add(this.editor.renderer.keyboardFocusClassName),i.focus()}},c.prototype.$blurFoldWidget=function(o){var i=this.$getFoldWidget(o);i.classList.remove(this.editor.renderer.keyboardFocusClassName),i.blur()},c.prototype.$blurAnnotation=function(o){var i=this.$getAnnotation(o);i.classList.remove(this.editor.renderer.keyboardFocusClassName),i.blur()},c.prototype.$moveFoldWidgetUp=function(){for(var o=this.activeRowIndex;o>0;)if(o--,this.$isFoldWidgetVisible(o)){this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=o,this.$focusFoldWidget(this.activeRowIndex);return}},c.prototype.$moveFoldWidgetDown=function(){for(var o=this.activeRowIndex;o<this.lines.getLength()-1;)if(o++,this.$isFoldWidgetVisible(o)){this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=o,this.$focusFoldWidget(this.activeRowIndex);return}},c.prototype.$moveAnnotationUp=function(){for(var o=this.activeRowIndex;o>0;)if(o--,this.$isAnnotationVisible(o)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=o,this.$focusAnnotation(this.activeRowIndex);return}},c.prototype.$moveAnnotationDown=function(){for(var o=this.activeRowIndex;o<this.lines.getLength()-1;)if(o++,this.$isAnnotationVisible(o)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=o,this.$focusAnnotation(this.activeRowIndex);return}},c.prototype.$switchLane=function(o){switch(o){case"annotation":if(this.activeLane==="annotation")break;var i=this.$findNearestAnnotation(this.activeRowIndex);if(i==null)break;this.activeLane="annotation",this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=i,this.$focusAnnotation(this.activeRowIndex);break;case"fold":if(this.activeLane==="fold")break;var n=this.$findNearestFoldWidget(this.activeRowIndex);if(n==null)break;this.activeLane="fold",this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=n,this.$focusFoldWidget(this.activeRowIndex);break}},c.prototype.$rowIndexToRow=function(o){var i=this.lines.get(o);return i?i.row:null},c.prototype.$rowToRowIndex=function(o){for(var i=0;i<this.lines.getLength();i++){var n=this.lines.get(i);if(n.row==o)return i}return null},c}();x.GutterKeyboardHandler=S;var a=function(){function c(o,i){this.gutterKeyboardHandler=i,this.domEvent=o}return c.prototype.getKey=function(){return T.keyCodeToString(this.domEvent.keyCode)},c.prototype.getRow=function(){return this.gutterKeyboardHandler.$rowIndexToRow(this.gutterKeyboardHandler.activeRowIndex)},c.prototype.isInAnnotationLane=function(){return this.gutterKeyboardHandler.activeLane==="annotation"},c.prototype.isInFoldLane=function(){return this.gutterKeyboardHandler.activeLane==="fold"},c}();x.GutterKeyboardEvent=a}),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/line_widgets","ace/keyboard/gutter_handler","ace/config","ace/clipboard","ace/lib/keys"],function(I,x,H){var T=this&&this.__values||function(p){var h=typeof Symbol=="function"&&Symbol.iterator,v=h&&p[h],y=0;if(v)return v.call(p);if(p&&typeof p.length=="number")return{next:function(){return p&&y>=p.length&&(p=void 0),{value:p&&p[y++],done:!p}}};throw new TypeError(h?"Object is not iterable.":"Symbol.iterator is not defined.")},M=I("./lib/oop"),S=I("./lib/dom"),a=I("./lib/lang"),c=I("./lib/useragent"),o=I("./keyboard/textinput").TextInput,i=I("./mouse/mouse_handler").MouseHandler,n=I("./mouse/fold_handler").FoldHandler,t=I("./keyboard/keybinding").KeyBinding,e=I("./edit_session").EditSession,r=I("./search").Search,s=I("./range").Range,l=I("./lib/event_emitter").EventEmitter,u=I("./commands/command_manager").CommandManager,b=I("./commands/default_commands").commands,m=I("./config"),g=I("./token_iterator").TokenIterator,f=I("./line_widgets").LineWidgets,C=I("./keyboard/gutter_handler").GutterKeyboardHandler,k=I("./config").nls,A=I("./clipboard"),$=I("./lib/keys"),w=function(){function p(h,v,y){this.session,this.$toDestroy=[];var L=h.getContainerElement();this.container=L,this.renderer=h,this.id="editor"+ ++p.$uid,this.commands=new u(c.isMac?"mac":"win",b),typeof document=="object"&&(this.textInput=new o(h.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new i(this),new n(this)),this.keyBinding=new t(this),this.$search=new r().set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=a.delayedCall((function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}).bind(this)),this.on("change",function(E,R){R._$emitInputEvent.schedule(31)}),this.setSession(v||y&&y.session||new e("")),m.resetOptions(this),y&&this.setOptions(y),m._signal("editor",this)}return p.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0)},p.prototype.startOperation=function(h){this.session.startOperation(h)},p.prototype.endOperation=function(h){this.session.endOperation(h)},p.prototype.onStartOperation=function(h){this.curOp=this.session.curOp,this.curOp.scrollTop=this.renderer.scrollTop,this.prevOp=this.session.prevOp,h||(this.previousCommand=null)},p.prototype.onEndOperation=function(h){if(this.curOp&&this.session){if(h&&h.returnValue===!1){this.curOp=null;return}if(this._signal("beforeEndOperation"),!this.curOp)return;var v=this.curOp.command,y=v&&v.scrollIntoView;if(y){switch(y){case"center-animate":y="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var L=this.selection.getRange(),E=this.renderer.layerConfig;(L.start.row>=E.lastRow||L.end.row<=E.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break}y=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.$lastSel=this.session.selection.toJSON(),this.prevOp=this.curOp,this.curOp=null}},p.prototype.$historyTracker=function(h){if(this.$mergeUndoDeltas){var v=this.prevOp,y=this.$mergeableCommands,L=v.command&&h.command.name==v.command.name;if(h.command.name=="insertstring"){var E=h.args;this.mergeNextCommand===void 0&&(this.mergeNextCommand=!0),L=L&&this.mergeNextCommand&&(!/\s/.test(E)||/\s/.test(v.args)),this.mergeNextCommand=!0}else L=L&&y.indexOf(h.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(L=!1),L?this.session.mergeUndoDeltas=!0:y.indexOf(h.command.name)!==-1&&(this.sequenceStartTime=Date.now())}},p.prototype.setKeyboardHandler=function(h,v){if(h&&typeof h=="string"&&h!="ace"){this.$keybindingId=h;var y=this;m.loadModule(["keybinding",h],function(L){y.$keybindingId==h&&y.keyBinding.setKeyboardHandler(L&&L.handler),v&&v()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(h),v&&v()},p.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},p.prototype.setSession=function(h){if(this.session!=h){this.curOp&&this.endOperation(),this.curOp={};var v=this.session;if(v){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 y=this.session.getSelection();y.off("changeCursor",this.$onCursorChange),y.off("changeSelection",this.$onSelectionChange)}this.session=h,h?(this.$onDocumentChange=this.onDocumentChange.bind(this),h.on("change",this.$onDocumentChange),this.renderer.setSession(h),this.$onChangeMode=this.onChangeMode.bind(this),h.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),h.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),h.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),h.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),h.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),h.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=h.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(h)),this._signal("changeSession",{session:h,oldSession:v}),this.curOp=null,v&&v._signal("changeEditor",{oldEditor:this}),h&&h._signal("changeEditor",{editor:this}),h&&!h.destroyed&&h.bgTokenizer.scheduleStart()}},p.prototype.getSession=function(){return this.session},p.prototype.setValue=function(h,v){return this.session.doc.setValue(h),v?v==1?this.navigateFileEnd():v==-1&&this.navigateFileStart():this.selectAll(),h},p.prototype.getValue=function(){return this.session.getValue()},p.prototype.getSelection=function(){return this.selection},p.prototype.resize=function(h){this.renderer.onResize(h)},p.prototype.setTheme=function(h,v){this.renderer.setTheme(h,v)},p.prototype.getTheme=function(){return this.renderer.getTheme()},p.prototype.setStyle=function(h){this.renderer.setStyle(h)},p.prototype.unsetStyle=function(h){this.renderer.unsetStyle(h)},p.prototype.getFontSize=function(){return this.getOption("fontSize")||S.computedStyle(this.container).fontSize},p.prototype.setFontSize=function(h){this.setOption("fontSize",h)},p.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var h=this;this.$highlightPending=!0,setTimeout(function(){h.$highlightPending=!1;var v=h.session;if(!(!v||v.destroyed)){v.$bracketHighlight&&(v.$bracketHighlight.markerIds.forEach(function(N){v.removeMarker(N)}),v.$bracketHighlight=null);var y=h.getCursorPosition(),L=h.getKeyboardHandler(),E=L&&L.$getDirectionForHighlight&&L.$getDirectionForHighlight(h),R=v.getMatchingBracketRanges(y,E);if(!R){var _=new g(v,y.row,y.column),W=_.getCurrentToken();if(W&&/\b(?:tag-open|tag-name)/.test(W.type)){var F=v.getMatchingTags(y);F&&(R=[F.openTagName.isEmpty()?F.openTag:F.openTagName,F.closeTagName.isEmpty()?F.closeTag:F.closeTagName])}}if(!R&&v.$mode.getMatching&&(R=v.$mode.getMatching(h.session)),!R){h.getHighlightIndentGuides()&&h.renderer.$textLayer.$highlightIndentGuide();return}var D="ace_bracket";Array.isArray(R)?R.length==1&&(D="ace_error_bracket"):R=[R],R.length==2&&(s.comparePoints(R[0].end,R[1].start)==0?R=[s.fromPoints(R[0].start,R[1].end)]:s.comparePoints(R[0].start,R[1].end)==0&&(R=[s.fromPoints(R[1].start,R[0].end)])),v.$bracketHighlight={ranges:R,markerIds:R.map(function(N){return v.addMarker(N,D,"text")})},h.getHighlightIndentGuides()&&h.renderer.$textLayer.$highlightIndentGuide()}},50)}},p.prototype.focus=function(){this.textInput.focus()},p.prototype.isFocused=function(){return this.textInput.isFocused()},p.prototype.blur=function(){this.textInput.blur()},p.prototype.onFocus=function(h){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",h))},p.prototype.onBlur=function(h){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",h))},p.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},p.prototype.onDocumentChange=function(h){var v=this.session.$useWrapMode,y=h.start.row==h.end.row?h.end.row:1/0;this.renderer.updateLines(h.start.row,y,v),this._signal("change",h),this.$cursorChange()},p.prototype.onTokenizerUpdate=function(h){var v=h.data;this.renderer.updateLines(v.first,v.last)},p.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},p.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},p.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},p.prototype.$updateHighlightActiveLine=function(){var h=this.getSession(),v;if(this.$highlightActiveLine&&((this.$selectionStyle!="line"||!this.selection.isMultiLine())&&(v=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(v=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(v=!1)),h.$highlightLineMarker&&!v)h.removeMarker(h.$highlightLineMarker.id),h.$highlightLineMarker=null;else if(!h.$highlightLineMarker&&v){var y=new s(v.row,v.column,v.row,1/0);y.id=h.addMarker(y,"ace_active-line","screenLine"),h.$highlightLineMarker=y}else v&&(h.$highlightLineMarker.start.row=v.row,h.$highlightLineMarker.end.row=v.row,h.$highlightLineMarker.start.column=v.column,h._signal("changeBackMarker"))},p.prototype.onSelectionChange=function(h){var v=this.session;if(v.$selectionMarker&&v.removeMarker(v.$selectionMarker),v.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var y=this.selection.getRange(),L=this.getSelectionStyle();v.$selectionMarker=v.addMarker(y,"ace_selection",L)}var E=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(E),this._signal("changeSelection")},p.prototype.$getSelectionHighLightRegexp=function(){var h=this.session,v=this.getSelectionRange();if(!(v.isEmpty()||v.isMultiLine())){var y=v.start.column,L=v.end.column,E=h.getLine(v.start.row),R=E.substring(y,L);if(!(R.length>5e3||!/[\w\d]/.test(R))){var _=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:R}),W=E.substring(y-1,L+1);if(_.test(W))return _}}},p.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},p.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},p.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},p.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},p.prototype.onChangeMode=function(h){this.renderer.updateText(),this._emit("changeMode",h)},p.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},p.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},p.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},p.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},p.prototype.getCopyText=function(){var h=this.getSelectedText(),v=this.session.doc.getNewLineCharacter(),y=!1;if(!h&&this.$copyWithEmptySelection){y=!0;for(var L=this.selection.getAllRanges(),E=0;E<L.length;E++){var R=L[E];E&&L[E-1].start.row==R.start.row||(h+=this.session.getLine(R.start.row)+v)}}var _={text:h};return this._signal("copy",_),A.lineMode=y?_.text:!1,_.text},p.prototype.onCopy=function(){this.commands.exec("copy",this)},p.prototype.onCut=function(){this.commands.exec("cut",this)},p.prototype.onPaste=function(h,v){var y={text:h,event:v};this.commands.exec("paste",this,y)},p.prototype.$handlePaste=function(h){typeof h=="string"&&(h={text:h}),this._signal("paste",h);var v=h.text,y=v===A.lineMode,L=this.session;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)y?L.insert({row:this.selection.lead.row,column:0},v):this.insert(v);else if(y)this.selection.rangeList.ranges.forEach(function(D){L.insert({row:D.start.row,column:0},v)});else{var E=v.split(/\r\n|\r|\n/),R=this.selection.rangeList.ranges,_=E.length==2&&(!E[0]||!E[1]);if(E.length!=R.length||_)return this.commands.exec("insertstring",this,v);for(var W=R.length;W--;){var F=R[W];F.isEmpty()||L.remove(F),L.insert(F.start,E[W])}}},p.prototype.execCommand=function(h,v){return this.commands.exec(h,this,v)},p.prototype.insert=function(h,v){var y=this.session,L=y.getMode(),E=this.getCursorPosition();if(this.getBehavioursEnabled()&&!v){var R=L.transformAction(y.getState(E.row),"insertion",this,y,h);R&&(h!==R.text&&(this.inVirtualSelectionMode||(this.session.mergeUndoDeltas=!1,this.mergeNextCommand=!1)),h=R.text)}if(h==" "&&(h=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()&&h.indexOf(`
|
|
203
|
-
`)==-1){var _=s.fromPoints(E,E);_.end.column+=h.length,this.session.remove(_)}}else{var _=this.getSelectionRange();E=this.session.remove(_),this.clearSelection()}if(h==`
|
|
204
|
-
`||h==`\r
|
|
205
|
-
`){var N=y.getLine(E.row);if(E.column>N.search(/\S|$/)){var W=N.substr(E.column).search(/\S|$/);y.doc.removeInLine(E.row,E.column,E.column+W)}}this.clearSelection();var F=E.column,D=y.getState(E.row),N=y.getLine(E.row),O=L.checkOutdent(D,N,h);if(y.insert(E,h),R&&R.selection&&(R.selection.length==2?this.selection.setSelectionRange(new s(E.row,F+R.selection[0],E.row,F+R.selection[1])):this.selection.setSelectionRange(new s(E.row+R.selection[0],R.selection[1],E.row+R.selection[2],R.selection[3]))),this.$enableAutoIndent){if(y.getDocument().isNewLine(h)){var B=L.getNextLineIndent(D,N.slice(0,E.column),y.getTabString());y.insert({row:E.row+1,column:0},B)}O&&L.autoOutdent(D,y,E.row)}},p.prototype.autoIndent=function(){for(var h=this.session,v=h.getMode(),y=this.selection.isEmpty()?[new s(0,0,h.doc.getLength()-1,0)]:this.selection.getAllRanges(),L="",E="",R="",_=h.getTabString(),W=0;W<y.length;W++)for(var F=y[W].start.row,D=y[W].end.row,N=F;N<=D;N++){N>0&&(L=h.getState(N-1),E=h.getLine(N-1),R=v.getNextLineIndent(L,E,_));var O=h.getLine(N),B=v.$getIndent(O);if(R!==B){if(B.length>0){var G=new s(N,0,N,B.length);h.remove(G)}R.length>0&&h.insert({row:N,column:0},R)}v.autoOutdent(L,h,N)}},p.prototype.onTextInput=function(h,v){if(!v)return this.keyBinding.onTextInput(h);this.startOperation({command:{name:"insertstring"}});var y=this.applyComposition.bind(this,h,v);this.selection.rangeCount?this.forEachSelection(y):y(),this.endOperation()},p.prototype.applyComposition=function(h,v){if(v.extendLeft||v.extendRight){var y=this.selection.getRange();y.start.column-=v.extendLeft,y.end.column+=v.extendRight,y.start.column<0&&(y.start.row--,y.start.column+=this.session.getLine(y.start.row).length+1),this.selection.setRange(y),!h&&!y.isEmpty()&&this.remove()}if((h||!this.selection.isEmpty())&&this.insert(h,!0),v.restoreStart||v.restoreEnd){var y=this.selection.getRange();y.start.column-=v.restoreStart,y.end.column-=v.restoreEnd,this.selection.setRange(y)}},p.prototype.onCommandKey=function(h,v,y){return this.keyBinding.onCommandKey(h,v,y)},p.prototype.setOverwrite=function(h){this.session.setOverwrite(h)},p.prototype.getOverwrite=function(){return this.session.getOverwrite()},p.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},p.prototype.setScrollSpeed=function(h){this.setOption("scrollSpeed",h)},p.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},p.prototype.setDragDelay=function(h){this.setOption("dragDelay",h)},p.prototype.getDragDelay=function(){return this.getOption("dragDelay")},p.prototype.setSelectionStyle=function(h){this.setOption("selectionStyle",h)},p.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},p.prototype.setHighlightActiveLine=function(h){this.setOption("highlightActiveLine",h)},p.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},p.prototype.setHighlightGutterLine=function(h){this.setOption("highlightGutterLine",h)},p.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},p.prototype.setHighlightSelectedWord=function(h){this.setOption("highlightSelectedWord",h)},p.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},p.prototype.setAnimatedScroll=function(h){this.renderer.setAnimatedScroll(h)},p.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},p.prototype.setShowInvisibles=function(h){this.renderer.setShowInvisibles(h)},p.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},p.prototype.setDisplayIndentGuides=function(h){this.renderer.setDisplayIndentGuides(h)},p.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},p.prototype.setHighlightIndentGuides=function(h){this.renderer.setHighlightIndentGuides(h)},p.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},p.prototype.setShowPrintMargin=function(h){this.renderer.setShowPrintMargin(h)},p.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},p.prototype.setPrintMarginColumn=function(h){this.renderer.setPrintMarginColumn(h)},p.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},p.prototype.setReadOnly=function(h){this.setOption("readOnly",h)},p.prototype.getReadOnly=function(){return this.getOption("readOnly")},p.prototype.setBehavioursEnabled=function(h){this.setOption("behavioursEnabled",h)},p.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},p.prototype.setWrapBehavioursEnabled=function(h){this.setOption("wrapBehavioursEnabled",h)},p.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},p.prototype.setShowFoldWidgets=function(h){this.setOption("showFoldWidgets",h)},p.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},p.prototype.setFadeFoldWidgets=function(h){this.setOption("fadeFoldWidgets",h)},p.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},p.prototype.remove=function(h){this.selection.isEmpty()&&(h=="left"?this.selection.selectLeft():this.selection.selectRight());var v=this.getSelectionRange();if(this.getBehavioursEnabled()){var y=this.session,L=y.getState(v.start.row),E=y.getMode().transformAction(L,"deletion",this,y,v);if(v.end.column===0){var R=y.getTextRange(v);if(R[R.length-1]==`
|
|
206
|
-
`){var _=y.getLine(v.end.row);/^\s+$/.test(_)&&(v.end.column=_.length)}}E&&(v=E)}this.session.remove(v),this.clearSelection()},p.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},p.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},p.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},p.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var h=this.getSelectionRange();h.start.column==h.end.column&&h.start.row==h.end.row&&(h.end.column=0,h.end.row++),this.session.remove(h),this.clearSelection()},p.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var h=this.getCursorPosition();this.insert(`
|
|
207
|
-
`),this.moveCursorToPosition(h)},p.prototype.setGhostText=function(h,v){this.session.widgetManager||(this.session.widgetManager=new f(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(h,v)},p.prototype.removeGhostText=function(){this.session.widgetManager&&this.renderer.removeGhostText()},p.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var h=this.getCursorPosition(),v=h.column;if(v!==0){var y=this.session.getLine(h.row),L,E;v<y.length?(L=y.charAt(v)+y.charAt(v-1),E=new s(h.row,v-1,h.row,v+1)):(L=y.charAt(v-1)+y.charAt(v-2),E=new s(h.row,v-2,h.row,v)),this.session.replace(E,L),this.session.selection.moveToPosition(E.end)}}},p.prototype.toLowerCase=function(){var h=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var v=this.getSelectionRange(),y=this.session.getTextRange(v);this.session.replace(v,y.toLowerCase()),this.selection.setSelectionRange(h)},p.prototype.toUpperCase=function(){var h=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var v=this.getSelectionRange(),y=this.session.getTextRange(v);this.session.replace(v,y.toUpperCase()),this.selection.setSelectionRange(h)},p.prototype.indent=function(){var h=this.session,v=this.getSelectionRange();if(v.start.row<v.end.row){var y=this.$getSelectedRows();h.indentRows(y.first,y.last," ");return}else if(v.start.column<v.end.column){var L=h.getTextRange(v);if(!/^\s+$/.test(L)){var y=this.$getSelectedRows();h.indentRows(y.first,y.last," ");return}}var E=h.getLine(v.start.row),R=v.start,_=h.getTabSize(),W=h.documentToScreenColumn(R.row,R.column);if(this.session.getUseSoftTabs())var F=_-W%_,D=a.stringRepeat(" ",F);else{for(var F=W%_;E[v.start.column-1]==" "&&F;)v.start.column--,F--;this.selection.setSelectionRange(v),D=" "}return this.insert(D)},p.prototype.blockIndent=function(){var h=this.$getSelectedRows();this.session.indentRows(h.first,h.last," ")},p.prototype.blockOutdent=function(){var h=this.session.getSelection();this.session.outdentRows(h.getRange())},p.prototype.sortLines=function(){for(var h=this.$getSelectedRows(),v=this.session,y=[],L=h.first;L<=h.last;L++)y.push(v.getLine(L));y.sort(function(_,W){return _.toLowerCase()<W.toLowerCase()?-1:_.toLowerCase()>W.toLowerCase()?1:0});for(var E=new s(0,0,0,0),L=h.first;L<=h.last;L++){var R=v.getLine(L);E.start.row=L,E.end.row=L,E.end.column=R.length,v.replace(E,y[L-h.first])}},p.prototype.toggleCommentLines=function(){var h=this.session.getState(this.getCursorPosition().row),v=this.$getSelectedRows();this.session.getMode().toggleCommentLines(h,this.session,v.first,v.last)},p.prototype.toggleBlockComment=function(){var h=this.getCursorPosition(),v=this.session.getState(h.row),y=this.getSelectionRange();this.session.getMode().toggleBlockComment(v,this.session,y,h)},p.prototype.getNumberAt=function(h,v){var y=/[\-]?[0-9]+(?:\.[0-9]+)?/g;y.lastIndex=0;for(var L=this.session.getLine(h);y.lastIndex<v;){var E=y.exec(L);if(E.index<=v&&E.index+E[0].length>=v){var R={value:E[0],start:E.index,end:E.index+E[0].length};return R}}return null},p.prototype.modifyNumber=function(h){var v=this.selection.getCursor().row,y=this.selection.getCursor().column,L=new s(v,y-1,v,y),E=this.session.getTextRange(L);if(!isNaN(parseFloat(E))&&isFinite(E)){var R=this.getNumberAt(v,y);if(R){var _=R.value.indexOf(".")>=0?R.start+R.value.indexOf(".")+1:R.end,W=R.start+R.value.length-_,F=parseFloat(R.value);F*=Math.pow(10,W),_!==R.end&&y<_?h*=Math.pow(10,R.end-y-1):h*=Math.pow(10,R.end-y),F+=h,F/=Math.pow(10,W);var D=F.toFixed(W),N=new s(v,R.start,v,R.end);this.session.replace(N,D),this.moveCursorTo(v,Math.max(R.start+1,y+D.length-R.value.length))}}else this.toggleWord()},p.prototype.toggleWord=function(){var h=this.selection.getCursor().row,v=this.selection.getCursor().column;this.selection.selectWord();var y=this.getSelectedText(),L=this.selection.getWordRange().start.column,E=y.replace(/([a-z]+|[A-Z]+)(?=[A-Z_]|$)/g,"$1 ").split(/\s/),R=v-L-1;R<0&&(R=0);var _=0,W=0,F=this;y.match(/[A-Za-z0-9_]+/)&&E.forEach(function(Z,K){W=_+Z.length,R>=_&&R<=W&&(y=Z,F.selection.clearSelection(),F.moveCursorTo(h,_+L),F.selection.selectTo(h,W+L)),_=W});for(var D=this.$toggleWordPairs,N,O=0;O<D.length;O++)for(var B=D[O],G=0;G<=1;G++){var V=+!G,U=y.match(new RegExp("^\\s?_?("+a.escapeRegExp(B[G])+")\\s?$","i"));if(U){var j=y.match(new RegExp("([_]|^|\\s)("+a.escapeRegExp(U[1])+")($|\\s)","g"));j&&(N=y.replace(new RegExp(a.escapeRegExp(B[G]),"i"),function(Z){var K=B[V];return Z.toUpperCase()==Z?K=K.toUpperCase():Z.charAt(0).toUpperCase()==Z.charAt(0)&&(K=K.substr(0,0)+B[V].charAt(0).toUpperCase()+K.substr(1)),K}),this.insert(N),N="")}}},p.prototype.findLinkAt=function(h,v){var y,L,E=this.session.getLine(h),R=E.split(/((?:https?|ftp):\/\/[\S]+)/),_=v;_<0&&(_=0);var W=0,F=0,D;try{for(var N=T(R),O=N.next();!O.done;O=N.next()){var B=O.value;if(F=W+B.length,_>=W&&_<=F&&B.match(/((?:https?|ftp):\/\/[\S]+)/)){D=B.replace(/[\s:.,'";}\]]+$/,"");break}W=F}}catch(G){y={error:G}}finally{try{O&&!O.done&&(L=N.return)&&L.call(N)}finally{if(y)throw y.error}}return D},p.prototype.openLink=function(){var h=this.selection.getCursor(),v=this.findLinkAt(h.row,h.column);return v&&window.open(v,"_blank"),v!=null},p.prototype.removeLines=function(){var h=this.$getSelectedRows();this.session.removeFullLines(h.first,h.last),this.clearSelection()},p.prototype.duplicateSelection=function(){var h=this.selection,v=this.session,y=h.getRange(),L=h.isBackwards();if(y.isEmpty()){var E=y.start.row;v.duplicateLines(E,E)}else{var R=L?y.start:y.end,_=v.insert(R,v.getTextRange(y));y.start=R,y.end=_,h.setSelectionRange(y,L)}},p.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},p.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},p.prototype.moveText=function(h,v,y){return this.session.moveText(h,v,y)},p.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},p.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},p.prototype.$moveLines=function(h,v){var y,L,E=this.selection;if(!E.inMultiSelectMode||this.inVirtualSelectionMode){var R=E.toOrientedRange();y=this.$getSelectedRows(R),L=this.session.$moveLines(y.first,y.last,v?0:h),v&&h==-1&&(L=0),R.moveBy(L,0),E.fromOrientedRange(R)}else{var _=E.rangeList.ranges;E.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var W=0,F=0,D=_.length,N=0;N<D;N++){var O=N;_[N].moveBy(W,0),y=this.$getSelectedRows(_[N]);for(var B=y.first,G=y.last;++N<D;){F&&_[N].moveBy(F,0);var V=this.$getSelectedRows(_[N]);if(v&&V.first!=G)break;if(!v&&V.first>G+1)break;G=V.last}for(N--,W=this.session.$moveLines(B,G,v?0:h),v&&h==-1&&(O=N+1);O<=N;)_[O].moveBy(W,0),O++;v||(W=0),F+=W}E.fromOrientedRange(E.ranges[0]),E.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},p.prototype.$getSelectedRows=function(h){return h=(h||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(h.start.row),last:this.session.getRowFoldEnd(h.end.row)}},p.prototype.onCompositionStart=function(h){this.renderer.showComposition(h)},p.prototype.onCompositionUpdate=function(h){this.renderer.setCompositionText(h)},p.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},p.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},p.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},p.prototype.isRowVisible=function(h){return h>=this.getFirstVisibleRow()&&h<=this.getLastVisibleRow()},p.prototype.isRowFullyVisible=function(h){return h>=this.renderer.getFirstFullyVisibleRow()&&h<=this.renderer.getLastFullyVisibleRow()},p.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},p.prototype.$moveByPage=function(h,v){var y=this.renderer,L=this.renderer.layerConfig,E=h*Math.floor(L.height/L.lineHeight);v===!0?this.selection.$moveSelection(function(){this.moveCursorBy(E,0)}):v===!1&&(this.selection.moveCursorBy(E,0),this.selection.clearSelection());var R=y.scrollTop;y.scrollBy(0,E*L.lineHeight),v!=null&&y.scrollCursorIntoView(null,.5),y.animateScrolling(R)},p.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},p.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},p.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},p.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},p.prototype.scrollPageDown=function(){this.$moveByPage(1)},p.prototype.scrollPageUp=function(){this.$moveByPage(-1)},p.prototype.scrollToRow=function(h){this.renderer.scrollToRow(h)},p.prototype.scrollToLine=function(h,v,y,L){this.renderer.scrollToLine(h,v,y,L)},p.prototype.centerSelection=function(){var h=this.getSelectionRange(),v={row:Math.floor(h.start.row+(h.end.row-h.start.row)/2),column:Math.floor(h.start.column+(h.end.column-h.start.column)/2)};this.renderer.alignCursor(v,.5)},p.prototype.getCursorPosition=function(){return this.selection.getCursor()},p.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},p.prototype.getSelectionRange=function(){return this.selection.getRange()},p.prototype.selectAll=function(){this.selection.selectAll()},p.prototype.clearSelection=function(){this.selection.clearSelection()},p.prototype.moveCursorTo=function(h,v){this.selection.moveCursorTo(h,v)},p.prototype.moveCursorToPosition=function(h){this.selection.moveCursorToPosition(h)},p.prototype.jumpToMatching=function(h,v){var y=this.getCursorPosition(),L=new g(this.session,y.row,y.column),E=L.getCurrentToken(),R=0;E&&E.type.indexOf("tag-name")!==-1&&(E=L.stepBackward());var _=E||L.stepForward();if(_){var W,F=!1,D={},N=y.column-_.start,O,B={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(_.value.match(/[{}()\[\]]/g)){for(;N<_.value.length&&!F;N++)if(B[_.value[N]])switch(O=B[_.value[N]]+"."+_.type.replace("rparen","lparen"),isNaN(D[O])&&(D[O]=0),_.value[N]){case"(":case"[":case"{":D[O]++;break;case")":case"]":case"}":D[O]--,D[O]===-1&&(W="bracket",F=!0);break}}else _.type.indexOf("tag-name")!==-1&&(isNaN(D[_.value])&&(D[_.value]=0),E.value==="<"&&R>1?D[_.value]++:E.value==="</"&&D[_.value]--,D[_.value]===-1&&(W="tag",F=!0));F||(E=_,R++,_=L.stepForward(),N=0)}while(_&&!F);if(W){var G,V;if(W==="bracket")G=this.session.getBracketRange(y),G||(G=new s(L.getCurrentTokenRow(),L.getCurrentTokenColumn()+N-1,L.getCurrentTokenRow(),L.getCurrentTokenColumn()+N-1),V=G.start,(v||V.row===y.row&&Math.abs(V.column-y.column)<2)&&(G=this.session.getBracketRange(V)));else if(W==="tag"){if(!_||_.type.indexOf("tag-name")===-1)return;if(G=new s(L.getCurrentTokenRow(),L.getCurrentTokenColumn()-2,L.getCurrentTokenRow(),L.getCurrentTokenColumn()-2),G.compare(y.row,y.column)===0){var U=this.session.getMatchingTags(y);U&&(U.openTag.contains(y.row,y.column)?(G=U.closeTag,V=G.start):(G=U.openTag,U.closeTag.start.row===y.row&&U.closeTag.start.column===y.column?V=G.end:V=G.start))}V=V||G.start}V=G&&G.cursor||V,V&&(h?G&&v?this.selection.setRange(G):G&&G.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(V.row,V.column):this.selection.moveTo(V.row,V.column))}}},p.prototype.gotoLine=function(h,v,y){this.selection.clearSelection(),this.session.unfold({row:h-1,column:v||0}),this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(h-1,v||0),this.isRowFullyVisible(h-1)||this.scrollToLine(h-1,!0,y)},p.prototype.navigateTo=function(h,v){this.selection.moveTo(h,v)},p.prototype.navigateUp=function(h){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var v=this.selection.anchor.getPosition();return this.moveCursorToPosition(v)}this.selection.clearSelection(),this.selection.moveCursorBy(-h||-1,0)},p.prototype.navigateDown=function(h){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var v=this.selection.anchor.getPosition();return this.moveCursorToPosition(v)}this.selection.clearSelection(),this.selection.moveCursorBy(h||1,0)},p.prototype.navigateLeft=function(h){if(this.selection.isEmpty())for(h=h||1;h--;)this.selection.moveCursorLeft();else{var v=this.getSelectionRange().start;this.moveCursorToPosition(v)}this.clearSelection()},p.prototype.navigateRight=function(h){if(this.selection.isEmpty())for(h=h||1;h--;)this.selection.moveCursorRight();else{var v=this.getSelectionRange().end;this.moveCursorToPosition(v)}this.clearSelection()},p.prototype.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},p.prototype.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},p.prototype.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},p.prototype.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},p.prototype.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},p.prototype.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},p.prototype.replace=function(h,v){v&&this.$search.set(v);var y=this.$search.find(this.session),L=0;return y&&(this.$tryReplace(y,h)&&(L=1),this.selection.setSelectionRange(y),this.renderer.scrollSelectionIntoView(y.start,y.end)),L},p.prototype.replaceAll=function(h,v){v&&this.$search.set(v);var y=this.$search.findAll(this.session),L=0;if(!y.length)return L;var E=this.getSelectionRange();this.selection.moveTo(0,0);for(var R=y.length-1;R>=0;--R)this.$tryReplace(y[R],h)&&L++;return this.selection.setSelectionRange(E),L},p.prototype.$tryReplace=function(h,v){var y=this.session.getTextRange(h);return v=this.$search.replace(y,v),v!==null?(h.end=this.session.replace(h,v),h):null},p.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},p.prototype.find=function(h,v,y){v||(v={}),typeof h=="string"||h instanceof RegExp?v.needle=h:typeof h=="object"&&M.mixin(v,h);var L=this.selection.getRange();v.needle==null&&(h=this.session.getTextRange(L)||this.$search.$options.needle,h||(L=this.session.getWordRange(L.start.row,L.start.column),h=this.session.getTextRange(L)),this.$search.set({needle:h})),this.$search.set(v),v.start||this.$search.set({start:L});var E=this.$search.find(this.session);if(v.preventScroll)return E;if(E)return this.revealRange(E,y),E;v.backwards?L.start=L.end:L.end=L.start,this.selection.setRange(L)},p.prototype.findNext=function(h,v){this.find({skipCurrent:!0,backwards:!1},h,v)},p.prototype.findPrevious=function(h,v){this.find(h,{skipCurrent:!0,backwards:!0},v)},p.prototype.revealRange=function(h,v){this.session.unfold(h),this.selection.setSelectionRange(h);var y=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(h.start,h.end,.5),v!==!1&&this.renderer.animateScrolling(y)},p.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},p.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},p.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(h){h.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},p.prototype.setAutoScrollEditorIntoView=function(h){if(h){var v,y=this,L=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var E=this.$scrollAnchor;E.style.cssText="position:absolute",this.container.insertBefore(E,this.container.firstChild);var R=this.on("changeSelection",function(){L=!0}),_=this.renderer.on("beforeRender",function(){L&&(v=y.renderer.container.getBoundingClientRect())}),W=this.renderer.on("afterRender",function(){if(L&&v&&(y.isFocused()||y.searchBox&&y.searchBox.isFocused())){var F=y.renderer,D=F.$cursorLayer.$pixelPos,N=F.layerConfig,O=D.top-N.offset;D.top>=0&&O+v.top<0?L=!0:D.top<N.height&&D.top+v.top+N.lineHeight>window.innerHeight?L=!1:L=null,L!=null&&(E.style.top=O+"px",E.style.left=D.left+"px",E.style.height=N.lineHeight+"px",E.scrollIntoView(L)),L=v=null}});this.setAutoScrollEditorIntoView=function(F){F||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",R),this.renderer.off("afterRender",W),this.renderer.off("beforeRender",_))}}},p.prototype.$resetCursorStyle=function(){var h=this.$cursorStyle||"ace",v=this.renderer.$cursorLayer;v&&(v.setSmoothBlinking(/smooth/.test(h)),v.isBlinking=!this.$readOnly&&h!="wide",S.setCssClass(v.element,"ace_slim-cursors",/slim/.test(h)))},p.prototype.prompt=function(h,v,y){var L=this;m.loadModule("ace/ext/prompt",function(E){E.prompt(L,h,v,y)})},p}();w.$uid=0,w.prototype.curOp=null,w.prototype.prevOp={},w.prototype.$mergeableCommands=["backspace","del","insertstring"],w.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"],["&&","||"],["==","!="]],M.implement(w.prototype,l),m.defineOptions(w.prototype,"editor",{selectionStyle:{set:function(p){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:p})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(p){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(p){this.textInput.setReadOnly(p),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(p){this.textInput.setCopyWithEmptySelection(p)},initialValue:!1},cursorStyle:{set:function(p){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(p){this.setAutoScrollEditorIntoView(p)}},keyboardHandler:{set:function(p){this.setKeyboardHandler(p)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(p){this.session.setValue(p)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(p){this.setSession(p)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(p){this.renderer.$gutterLayer.setShowLineNumbers(p),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),p&&this.$relativeLineNumbers?d.attach(this):d.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(p){this.$showLineNumbers&&p?d.attach(this):d.detach(this)}},placeholder:{set:function(p){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var h=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(h&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),S.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!h&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),S.addCssClass(this.container,"ace_hasPlaceholder");var v=S.createElement("div");v.className="ace_placeholder",v.textContent=this.$placeholder||"",this.renderer.placeholderNode=v,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!h&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(p){var h={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(L){L.blur(),L.renderer.scroller.focus()},readOnly:!0},v=function(L){if(L.target==this.renderer.scroller&&L.keyCode===$.enter){L.preventDefault();var E=this.getCursorPosition().row;this.isRowVisible(E)||this.scrollToLine(E,!0,!0),this.focus()}},y;p?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(c.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",k("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",k("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",v.bind(this)),this.commands.addCommand(h),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",k("editor.gutter.aria-roledescription","editor")),this.renderer.$gutter.setAttribute("aria-label",k("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),y||(y=new C(this)),y.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",v.bind(this)),this.commands.removeCommand(h),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),y&&y.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(p){this.$textInputAriaLabel=p},initialValue:""},enableMobileMenu:{set:function(p){this.$enableMobileMenu=p},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 d={getText:function(p,h){return(Math.abs(p.selection.lead.row-h)||h+1+(h<9?"·":""))+""},getWidth:function(p,h,v){return Math.max(h.toString().length,(v.lastRow+1).toString().length,2)*v.characterWidth},update:function(p,h){h.renderer.$loop.schedule(h.renderer.CHANGE_GUTTER)},attach:function(p){p.renderer.$gutterLayer.$renderer=this,p.on("changeSelection",this.update),this.update(null,p)},detach:function(p){p.renderer.$gutterLayer.$renderer==this&&(p.renderer.$gutterLayer.$renderer=null),p.off("changeSelection",this.update),this.update(null,p)}};x.Editor=w}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(I,x,H){var T=I("../lib/dom"),M=function(){function S(a,c){this.element=a,this.canvasHeight=c||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return S.prototype.moveContainer=function(a){T.translate(this.element,0,-(a.firstRowScreen*a.lineHeight%this.canvasHeight)-a.offset*this.$offsetCoefficient)},S.prototype.pageChanged=function(a,c){return Math.floor(a.firstRowScreen*a.lineHeight/this.canvasHeight)!==Math.floor(c.firstRowScreen*c.lineHeight/this.canvasHeight)},S.prototype.computeLineTop=function(a,c,o){var i=c.firstRowScreen*c.lineHeight,n=Math.floor(i/this.canvasHeight),t=o.documentToScreenRow(a,0)*c.lineHeight;return t-n*this.canvasHeight},S.prototype.computeLineHeight=function(a,c,o){return c.lineHeight*o.getRowLineCount(a)},S.prototype.getLength=function(){return this.cells.length},S.prototype.get=function(a){return this.cells[a]},S.prototype.shift=function(){this.$cacheCell(this.cells.shift())},S.prototype.pop=function(){this.$cacheCell(this.cells.pop())},S.prototype.push=function(a){if(Array.isArray(a)){this.cells.push.apply(this.cells,a);for(var c=T.createFragment(this.element),o=0;o<a.length;o++)c.appendChild(a[o].element);this.element.appendChild(c)}else this.cells.push(a),this.element.appendChild(a.element)},S.prototype.unshift=function(a){if(Array.isArray(a)){this.cells.unshift.apply(this.cells,a);for(var c=T.createFragment(this.element),o=0;o<a.length;o++)c.appendChild(a[o].element);this.element.firstChild?this.element.insertBefore(c,this.element.firstChild):this.element.appendChild(c)}else this.cells.unshift(a),this.element.insertAdjacentElement("afterbegin",a.element)},S.prototype.last=function(){return this.cells.length?this.cells[this.cells.length-1]:null},S.prototype.$cacheCell=function(a){a&&(a.element.remove(),this.cellCache.push(a))},S.prototype.createCell=function(a,c,o,i){var n=this.cellCache.pop();if(!n){var t=T.createElement("div");i&&i(t),this.element.appendChild(t),n={element:t,text:"",row:a}}return n.row=a,n},S}();x.Lines=M}),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(I,x,H){var T=I("../lib/dom"),M=I("../lib/oop"),S=I("../lib/lang"),a=I("../lib/event_emitter").EventEmitter,c=I("./lines").Lines,o=I("../config").nls,i=function(){function t(e){this.element=T.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$lines=new c(this.element),this.$lines.$offsetCoefficient=1}return t.prototype.setSession=function(e){this.session&&this.session.off("change",this.$updateAnnotations),this.session=e,e&&e.on("change",this.$updateAnnotations)},t.prototype.addGutterDecoration=function(e,r){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,r)},t.prototype.removeGutterDecoration=function(e,r){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,r)},t.prototype.setAnnotations=function(e){this.$annotations=[];for(var r=0;r<e.length;r++){var s=e[r],l=s.row,u=this.$annotations[l];u||(u=this.$annotations[l]={text:[],type:[],displayText:[]});var b=s.text,m=s.text,g=s.type;b=b?S.escapeHTML(b):s.html||"",m=m||s.html||"",u.text.indexOf(b)===-1&&(u.text.push(b),u.type.push(g),u.displayText.push(m));var f=s.className;f?u.className=f:g==="error"?u.className=" ace_error":g==="security"&&!/\bace_error\b/.test(u.className)?u.className=" ace_security":g==="warning"&&!/\bace_(error|security)\b/.test(u.className)?u.className=" ace_warning":g==="info"&&!u.className?u.className=" ace_info":g==="hint"&&!u.className&&(u.className=" ace_hint")}},t.prototype.$updateAnnotations=function(e){if(this.$annotations.length){var r=e.start.row,s=e.end.row-r;if(s!==0)if(e.action=="remove")this.$annotations.splice(r,s+1,null);else{var l=new Array(s+1);l.unshift(r,1),this.$annotations.splice.apply(this.$annotations,l)}}},t.prototype.update=function(e){this.config=e;var r=this.session,s=e.firstRow,l=Math.min(e.lastRow+e.gutterOffset,r.getLength()-1);this.oldLastRow=l,this.config=e,this.$lines.moveContainer(e),this.$updateCursorRow();for(var u=r.getNextFoldLine(s),b=u?u.start.row:1/0,m=null,g=-1,f=s;;){if(f>b&&(f=u.end.row+1,u=r.getNextFoldLine(f,u),b=u?u.start.row:1/0),f>l){for(;this.$lines.getLength()>g+1;)this.$lines.pop();break}m=this.$lines.get(++g),m?m.row=f:(m=this.$lines.createCell(f,e,this.session,n),this.$lines.push(m)),this.$renderCell(m,e,u,f),f++}this._signal("afterRender"),this.$updateGutterWidth(e)},t.prototype.$updateGutterWidth=function(e){var r=this.session,s=r.gutterRenderer||this.$renderer,l=r.$firstLineNumber,u=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||r.$useWrapMode)&&(u=r.getLength()+l-1);var b=s?s.getWidth(r,u,e):u.toString().length*e.characterWidth,m=this.$padding||this.$computePadding();b+=m.left+m.right,b!==this.gutterWidth&&!isNaN(b)&&(this.gutterWidth=b,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",b))},t.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var e=this.session.selection.getCursor();this.$cursorRow!==e.row&&(this.$cursorRow=e.row)}},t.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var e=this.session.selection.cursor.row;if(this.$cursorRow=e,!(this.$cursorCell&&this.$cursorCell.row==e)){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var r=this.$lines.cells;this.$cursorCell=null;for(var s=0;s<r.length;s++){var l=r[s];if(l.row>=this.$cursorRow){if(l.row>this.$cursorRow){var u=this.session.getFoldLine(this.$cursorRow);if(s>0&&u&&u.start.row==r[s-1].row)l=r[s-1];else break}l.element.className="ace_gutter-active-line "+l.element.className,this.$cursorCell=l;break}}}}},t.prototype.scrollLines=function(e){var r=this.config;if(this.config=e,this.$updateCursorRow(),this.$lines.pageChanged(r,e))return this.update(e);this.$lines.moveContainer(e);var s=Math.min(e.lastRow+e.gutterOffset,this.session.getLength()-1),l=this.oldLastRow;if(this.oldLastRow=s,!r||l<e.firstRow)return this.update(e);if(s<r.firstRow)return this.update(e);if(r.firstRow<e.firstRow)for(var u=this.session.getFoldedRowCount(r.firstRow,e.firstRow-1);u>0;u--)this.$lines.shift();if(l>s)for(var u=this.session.getFoldedRowCount(s+1,l);u>0;u--)this.$lines.pop();e.firstRow<r.firstRow&&this.$lines.unshift(this.$renderLines(e,e.firstRow,r.firstRow-1)),s>l&&this.$lines.push(this.$renderLines(e,l+1,s)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(e)},t.prototype.$renderLines=function(e,r,s){for(var l=[],u=r,b=this.session.getNextFoldLine(u),m=b?b.start.row:1/0;u>m&&(u=b.end.row+1,b=this.session.getNextFoldLine(u,b),m=b?b.start.row:1/0),!(u>s);){var g=this.$lines.createCell(u,e,this.session,n);this.$renderCell(g,e,b,u),l.push(g),u++}return l},t.prototype.$renderCell=function(e,r,s,l){var u=e.element,b=this.session,m=u.childNodes[0],g=u.childNodes[1],f=u.childNodes[2],C=f.firstChild,k=b.$firstLineNumber,A=b.$breakpoints,$=b.$decorations,w=b.gutterRenderer||this.$renderer,d=this.$showFoldWidgets&&b.foldWidgets,p=s?s.start.row:Number.MAX_VALUE,h=r.lineHeight+"px",v=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",y=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",L=(w?w.getText(b,l):l+k).toString();if(this.$highlightGutterLine&&(l==this.$cursorRow||s&&l<this.$cursorRow&&l>=p&&this.$cursorRow<=s.end.row)&&(v+="ace_gutter-active-line ",this.$cursorCell!=e&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=e)),A[l]&&(v+=A[l]),$[l]&&(v+=$[l]),this.$annotations[l]&&l!==p&&(v+=this.$annotations[l].className),d){var E=d[l];E==null&&(E=d[l]=b.getFoldWidget(l))}if(E){var R="ace_fold-widget ace_"+E,_=E=="start"&&l==p&&l<s.end.row;if(_){R+=" ace_closed";for(var W="",F=!1,D=l+1;D<=s.end.row;D++)if(this.$annotations[D]){if(this.$annotations[D].className===" ace_error"){F=!0,W=" ace_error_fold";break}this.$annotations[D].className===" ace_security"?(F=!0,W=" ace_security_fold"):this.$annotations[D].className===" ace_warning"&&W!==" ace_security_fold"&&(F=!0,W=" ace_warning_fold")}v+=W}else R+=" ace_open";g.className!=R&&(g.className=R),T.setStyle(g.style,"height",h),T.setStyle(g.style,"display","inline-block"),g.setAttribute("role","button"),g.setAttribute("tabindex","-1");var N=b.getFoldWidgetRange(l);N?g.setAttribute("aria-label",o("gutter.code-folding.range.aria-label","Toggle code folding, rows $0 through $1",[N.start.row+1,N.end.row+1])):s?g.setAttribute("aria-label",o("gutter.code-folding.closed.aria-label","Toggle code folding, rows $0 through $1",[s.start.row+1,s.end.row+1])):g.setAttribute("aria-label",o("gutter.code-folding.open.aria-label","Toggle code folding, row $0",[l+1])),_?(g.setAttribute("aria-expanded","false"),g.setAttribute("title",o("gutter.code-folding.closed.title","Unfold code"))):(g.setAttribute("aria-expanded","true"),g.setAttribute("title",o("gutter.code-folding.open.title","Fold code")))}else g&&(T.setStyle(g.style,"display","none"),g.setAttribute("tabindex","0"),g.removeAttribute("role"),g.removeAttribute("aria-label"));if(F&&this.$showFoldedAnnotations){f.className="ace_gutter_annotation",C.className=y,C.className+=W,T.setStyle(C.style,"height",h),T.setStyle(f.style,"display","block"),T.setStyle(f.style,"height",h);var O;switch(W){case" ace_error_fold":O=o("gutter.annotation.aria-label.error","Error, read annotations row $0",[L]);break;case" ace_security_fold":O=o("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[L]);break;case" ace_warning_fold":O=o("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[L]);break}f.setAttribute("aria-label",O),f.setAttribute("tabindex","-1"),f.setAttribute("role","button")}else if(this.$annotations[l]){f.className="ace_gutter_annotation",C.className=y,this.$useSvgGutterIcons?C.className+=this.$annotations[l].className:u.classList.add(this.$annotations[l].className.replace(" ","")),T.setStyle(C.style,"height",h),T.setStyle(f.style,"display","block"),T.setStyle(f.style,"height",h);var O;switch(this.$annotations[l].className){case" ace_error":O=o("gutter.annotation.aria-label.error","Error, read annotations row $0",[L]);break;case" ace_security":O=o("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[L]);break;case" ace_warning":O=o("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[L]);break;case" ace_info":O=o("gutter.annotation.aria-label.info","Info, read annotations row $0",[L]);break;case" ace_hint":O=o("gutter.annotation.aria-label.hint","Suggestion, read annotations row $0",[L]);break}f.setAttribute("aria-label",O),f.setAttribute("tabindex","-1"),f.setAttribute("role","button")}else T.setStyle(f.style,"display","none"),f.removeAttribute("aria-label"),f.removeAttribute("role"),f.setAttribute("tabindex","0");return L!==m.data&&(m.data=L),u.className!=v&&(u.className=v),T.setStyle(e.element.style,"height",this.$lines.computeLineHeight(l,r,b)+"px"),T.setStyle(e.element.style,"top",this.$lines.computeLineTop(l,r,b)+"px"),e.text=L,f.style.display==="none"&&g.style.display==="none"?e.element.setAttribute("aria-hidden",!0):e.element.setAttribute("aria-hidden",!1),e},t.prototype.setHighlightGutterLine=function(e){this.$highlightGutterLine=e},t.prototype.setShowLineNumbers=function(e){this.$renderer=!e&&{getWidth:function(){return 0},getText:function(){return""}}},t.prototype.getShowLineNumbers=function(){return this.$showLineNumbers},t.prototype.setShowFoldWidgets=function(e){e?T.addCssClass(this.element,"ace_folding-enabled"):T.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},t.prototype.getShowFoldWidgets=function(){return this.$showFoldWidgets},t.prototype.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=T.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=(parseInt(e.borderLeftWidth)||0)+(parseInt(e.paddingLeft)||0)+1,this.$padding.right=(parseInt(e.borderRightWidth)||0)+(parseInt(e.paddingRight)||0),this.$padding},t.prototype.getRegion=function(e){var r=this.$padding||this.$computePadding(),s=this.element.getBoundingClientRect();if(e.x<r.left+s.left)return"markers";if(this.$showFoldWidgets&&e.x>s.right-r.right)return"foldWidgets"},t}();i.prototype.$fixedWidth=!1,i.prototype.$highlightGutterLine=!0,i.prototype.$renderer="",i.prototype.$showLineNumbers=!0,i.prototype.$showFoldWidgets=!0,M.implement(i.prototype,a);function n(t){var e=document.createTextNode("");t.appendChild(e);var r=T.createElement("span");t.appendChild(r);var s=T.createElement("span");t.appendChild(s);var l=T.createElement("span");return s.appendChild(l),t}x.Gutter=i}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(I,x,H){var T=I("../range").Range,M=I("../lib/dom"),S=function(){function c(o){this.element=M.createElement("div"),this.element.className="ace_layer ace_marker-layer",o.appendChild(this.element)}return c.prototype.setPadding=function(o){this.$padding=o},c.prototype.setSession=function(o){this.session=o},c.prototype.setMarkers=function(o){this.markers=o},c.prototype.elt=function(o,i){var n=this.i!=-1&&this.element.childNodes[this.i];n?this.i++:(n=document.createElement("div"),this.element.appendChild(n),this.i=-1),n.style.cssText=i,n.className=o},c.prototype.update=function(o){if(o){this.config=o,this.i=0;var i;for(var n in this.markers){var t=this.markers[n];if(!t.range){t.update(i,this,this.session,o);continue}var e=t.range.clipRows(o.firstRow,o.lastRow);if(!e.isEmpty())if(e=e.toScreenRange(this.session),t.renderer){var r=this.$getTop(e.start.row,o),s=this.$padding+e.start.column*o.characterWidth;t.renderer(i,e,s,r,o)}else t.type=="fullLine"?this.drawFullLineMarker(i,e,t.clazz,o):t.type=="screenLine"?this.drawScreenLineMarker(i,e,t.clazz,o):e.isMultiLine()?t.type=="text"?this.drawTextMarker(i,e,t.clazz,o):this.drawMultiLineMarker(i,e,t.clazz,o):this.drawSingleLineMarker(i,e,t.clazz+" ace_start ace_br15",o)}if(this.i!=-1)for(;this.i<this.element.childElementCount;)this.element.removeChild(this.element.lastChild)}},c.prototype.$getTop=function(o,i){return(o-i.firstRowScreen)*i.lineHeight},c.prototype.drawTextMarker=function(o,i,n,t,e){for(var r=this.session,s=i.start.row,l=i.end.row,u=s,b=0,m=0,g=r.getScreenLastRowColumn(u),f=new T(u,i.start.column,u,m);u<=l;u++)f.start.row=f.end.row=u,f.start.column=u==s?i.start.column:r.getRowWrapIndent(u),f.end.column=g,b=m,m=g,g=u+1<l?r.getScreenLastRowColumn(u+1):u==l?0:i.end.column,this.drawSingleLineMarker(o,f,n+(u==s?" ace_start":"")+" ace_br"+a(u==s||u==s+1&&i.start.column,b<m,m>g,u==l),t,u==l?0:1,e)},c.prototype.drawMultiLineMarker=function(o,i,n,t,e){var r=this.$padding,s=t.lineHeight,l=this.$getTop(i.start.row,t),u=r+i.start.column*t.characterWidth;if(e=e||"",this.session.$bidiHandler.isBidiRow(i.start.row)){var b=i.clone();b.end.row=b.start.row,b.end.column=this.session.getLine(b.start.row).length,this.drawBidiSingleLineMarker(o,b,n+" ace_br1 ace_start",t,null,e)}else this.elt(n+" ace_br1 ace_start","height:"+s+"px;right:"+r+"px;top:"+l+"px;left:"+u+"px;"+(e||""));if(this.session.$bidiHandler.isBidiRow(i.end.row)){var b=i.clone();b.start.row=b.end.row,b.start.column=0,this.drawBidiSingleLineMarker(o,b,n+" ace_br12",t,null,e)}else{l=this.$getTop(i.end.row,t);var m=i.end.column*t.characterWidth;this.elt(n+" ace_br12","height:"+s+"px;width:"+m+"px;top:"+l+"px;left:"+r+"px;"+(e||""))}if(s=(i.end.row-i.start.row-1)*t.lineHeight,!(s<=0)){l=this.$getTop(i.start.row+1,t);var g=(i.start.column?1:0)|(i.end.column?0:8);this.elt(n+(g?" ace_br"+g:""),"height:"+s+"px;right:"+r+"px;top:"+l+"px;left:"+r+"px;"+(e||""))}},c.prototype.drawSingleLineMarker=function(o,i,n,t,e,r){if(this.session.$bidiHandler.isBidiRow(i.start.row))return this.drawBidiSingleLineMarker(o,i,n,t,e,r);var s=t.lineHeight,l=(i.end.column+(e||0)-i.start.column)*t.characterWidth,u=this.$getTop(i.start.row,t),b=this.$padding+i.start.column*t.characterWidth;this.elt(n,"height:"+s+"px;width:"+l+"px;top:"+u+"px;left:"+b+"px;"+(r||""))},c.prototype.drawBidiSingleLineMarker=function(o,i,n,t,e,r){var s=t.lineHeight,l=this.$getTop(i.start.row,t),u=this.$padding,b=this.session.$bidiHandler.getSelections(i.start.column,i.end.column);b.forEach(function(m){this.elt(n,"height:"+s+"px;width:"+(m.width+(e||0))+"px;top:"+l+"px;left:"+(u+m.left)+"px;"+(r||""))},this)},c.prototype.drawFullLineMarker=function(o,i,n,t,e){var r=this.$getTop(i.start.row,t),s=t.lineHeight;i.start.row!=i.end.row&&(s+=this.$getTop(i.end.row,t)-r),this.elt(n,"height:"+s+"px;top:"+r+"px;left:0;right:0;"+(e||""))},c.prototype.drawScreenLineMarker=function(o,i,n,t,e){var r=this.$getTop(i.start.row,t),s=t.lineHeight;this.elt(n,"height:"+s+"px;top:"+r+"px;left:0;right:0;"+(e||""))},c}();S.prototype.$padding=0;function a(c,o,i,n){return(c?1:0)|(o?2:0)|(i?4:0)|(n?8:0)}x.Marker=S}),ace.define("ace/layer/text_util",["require","exports","module"],function(I,x,H){var T=new Set(["text","rparen","lparen"]);x.isTextToken=function(M){return T.has(M)}}),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(I,x,H){var T=I("../lib/oop"),M=I("../lib/dom"),S=I("../lib/lang"),a=I("./lines").Lines,c=I("../lib/event_emitter").EventEmitter,o=I("../config").nls,i=I("./text_util").isTextToken,n=function(){function t(e){this.dom=M,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new a(this.element)}return t.prototype.$updateEolChar=function(){var e=this.session.doc,r=e.getNewLineCharacter()==`
|
|
208
|
-
`&&e.getNewLineMode()!="windows",s=r?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=s)return this.EOL_CHAR=s,!0},t.prototype.setPadding=function(e){this.$padding=e,this.element.style.margin="0 "+e+"px"},t.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},t.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},t.prototype.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",(function(r){this._signal("changeCharacterSize",r)}).bind(this)),this.$pollSizeChanges()},t.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},t.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},t.prototype.setSession=function(e){this.session=e,e&&this.$computeTabString()},t.prototype.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,typeof e=="string"?(this.showSpaces=/tab/i.test(e),this.showTabs=/space/i.test(e),this.showEOL=/eol/i.test(e)):this.showSpaces=this.showTabs=this.showEOL=e,this.$computeTabString(),!0)},t.prototype.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},t.prototype.setHighlightIndentGuides=function(e){return this.$highlightIndentGuides===e?!1:(this.$highlightIndentGuides=e,e)},t.prototype.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;for(var r=this.$tabStrings=[0],s=1;s<e+1;s++)if(this.showTabs){var l=this.dom.createElement("span");l.className="ace_invisible ace_invisible_tab",l.textContent=S.stringRepeat(this.TAB_CHAR,s),r.push(l)}else r.push(this.dom.createTextNode(S.stringRepeat(" ",s),this.element));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var u="ace_indent-guide",b=this.showSpaces?" ace_invisible ace_invisible_space":"",m=this.showSpaces?S.stringRepeat(this.SPACE_CHAR,this.tabSize):S.stringRepeat(" ",this.tabSize),g=this.showTabs?" ace_invisible ace_invisible_tab":"",f=this.showTabs?S.stringRepeat(this.TAB_CHAR,this.tabSize):m,l=this.dom.createElement("span");l.className=u+b,l.textContent=m,this.$tabStrings[" "]=l;var l=this.dom.createElement("span");l.className=u+g,l.textContent=f,this.$tabStrings[" "]=l}},t.prototype.updateLines=function(e,r,s){if(this.config.lastRow!=e.lastRow||this.config.firstRow!=e.firstRow)return this.update(e);this.config=e;for(var l=Math.max(r,e.firstRow),u=Math.min(s,e.lastRow),b=this.element.childNodes,m=0,f=e.firstRow;f<l;f++){var C=this.session.getFoldLine(f);if(C)if(C.containsRow(l)){l=C.start.row;break}else f=C.end.row;m++}for(var g=!1,f=l,C=this.session.getNextFoldLine(f),k=C?C.start.row:1/0;f>k&&(f=C.end.row+1,C=this.session.getNextFoldLine(f,C),k=C?C.start.row:1/0),!(f>u);){var A=b[m++];if(A){this.dom.removeChildren(A),this.$renderLine(A,f,f==k?C:!1),g&&(A.style.top=this.$lines.computeLineTop(f,e,this.session)+"px");var $=e.lineHeight*this.session.getRowLength(f)+"px";A.style.height!=$&&(g=!0,A.style.height=$)}f++}if(g)for(;m<this.$lines.cells.length;){var w=this.$lines.cells[m++];w.element.style.top=this.$lines.computeLineTop(w.row,e,this.session)+"px"}},t.prototype.scrollLines=function(e){var r=this.config;if(this.config=e,this.$lines.pageChanged(r,e))return this.update(e);this.$lines.moveContainer(e);var s=e.lastRow,l=r?r.lastRow:-1;if(!r||l<e.firstRow)return this.update(e);if(s<r.firstRow)return this.update(e);if(!r||r.lastRow<e.firstRow)return this.update(e);if(e.lastRow<r.firstRow)return this.update(e);if(r.firstRow<e.firstRow)for(var u=this.session.getFoldedRowCount(r.firstRow,e.firstRow-1);u>0;u--)this.$lines.shift();if(r.lastRow>e.lastRow)for(var u=this.session.getFoldedRowCount(e.lastRow+1,r.lastRow);u>0;u--)this.$lines.pop();e.firstRow<r.firstRow&&this.$lines.unshift(this.$renderLinesFragment(e,e.firstRow,r.firstRow-1)),e.lastRow>r.lastRow&&this.$lines.push(this.$renderLinesFragment(e,r.lastRow+1,e.lastRow)),this.$highlightIndentGuide()},t.prototype.$renderLinesFragment=function(e,r,s){for(var l=[],u=r,b=this.session.getNextFoldLine(u),m=b?b.start.row:1/0;u>m&&(u=b.end.row+1,b=this.session.getNextFoldLine(u,b),m=b?b.start.row:1/0),!(u>s);){var g=this.$lines.createCell(u,e,this.session),f=g.element;this.dom.removeChildren(f),M.setStyle(f.style,"height",this.$lines.computeLineHeight(u,e,this.session)+"px"),M.setStyle(f.style,"top",this.$lines.computeLineTop(u,e,this.session)+"px"),this.$renderLine(f,u,u==m?b:!1),this.$useLineGroups()?f.className="ace_line_group":f.className="ace_line",l.push(g),u++}return l},t.prototype.update=function(e){this.$lines.moveContainer(e),this.config=e;for(var r=e.firstRow,s=e.lastRow,l=this.$lines;l.getLength();)l.pop();l.push(this.$renderLinesFragment(e,r,s))},t.prototype.$renderToken=function(e,r,s,l){for(var u=this,b=/(\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]+)|(\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),g,f=0;g=b.exec(l);){var C=g[1],k=g[2],A=g[3],$=g[4],w=g[5];if(!(!u.showSpaces&&k)){var d=f!=g.index?l.slice(f,g.index):"";if(f=g.index+g[0].length,d&&m.appendChild(this.dom.createTextNode(d,this.element)),C){var p=u.session.getScreenTabSize(r+g.index);m.appendChild(u.$tabStrings[p].cloneNode(!0)),r+=p-1}else if(k)if(u.showSpaces){var h=this.dom.createElement("span");h.className="ace_invisible ace_invisible_space",h.textContent=S.stringRepeat(u.SPACE_CHAR,k.length),m.appendChild(h)}else m.appendChild(this.dom.createTextNode(k,this.element));else if(A){var h=this.dom.createElement("span");h.className="ace_invisible ace_invisible_space ace_invalid",h.textContent=S.stringRepeat(u.SPACE_CHAR,A.length),m.appendChild(h)}else if($){r+=1;var h=this.dom.createElement("span");h.style.width=u.config.characterWidth*2+"px",h.className=u.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",h.textContent=u.showSpaces?u.SPACE_CHAR:$,m.appendChild(h)}else if(w){r+=1;var h=this.dom.createElement("span");h.style.width=u.config.characterWidth*2+"px",h.className="ace_cjk",h.textContent=w,m.appendChild(h)}}}if(m.appendChild(this.dom.createTextNode(f?l.slice(f):l,this.element)),i(s.type))e.appendChild(m);else{var v="ace_"+s.type.replace(/\./g," ace_"),h=this.dom.createElement("span");s.type=="fold"&&(h.style.width=s.value.length*this.config.characterWidth+"px",h.setAttribute("title",o("inline-fold.closed.title","Unfold code"))),h.className=v,h.appendChild(m),e.appendChild(h)}return r+l.length},t.prototype.renderIndentGuide=function(e,r,s){var l=r.search(this.$indentGuideRe);if(l<=0||l>=s)return r;if(r[0]==" "){l-=l%this.tabSize;for(var u=l/this.tabSize,b=0;b<u;b++)e.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),r.substr(l)}else if(r[0]==" "){for(var b=0;b<l;b++)e.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),r.substr(l)}return this.$highlightIndentGuide(),r},t.prototype.$highlightIndentGuide=function(){if(!(!this.$highlightIndentGuides||!this.displayIndentGuides)){this.$highlightIndentGuideMarker={indentLevel:void 0,start:void 0,end:void 0,dir:void 0};var e=this.session.doc.$lines;if(e){var r=this.session.selection.getCursor(),s=/^\s*/.exec(this.session.doc.getLine(r.row))[0].length,l=Math.floor(s/this.tabSize);this.$highlightIndentGuideMarker={indentLevel:l,start:r.row};var u=this.session.$bracketHighlight;if(u){for(var b=this.session.$bracketHighlight.ranges,m=0;m<b.length;m++)if(r.row!==b[m].start.row){this.$highlightIndentGuideMarker.end=b[m].start.row,r.row>b[m].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&e[r.row]!==""&&r.column===e[r.row].length){this.$highlightIndentGuideMarker.dir=1;for(var m=r.row+1;m<e.length;m++){var g=e[m],f=/^\s*/.exec(g)[0].length;if(g!==""&&(this.$highlightIndentGuideMarker.end=m,f<=s))break}}this.$renderHighlightIndentGuide()}}},t.prototype.$clearActiveIndentGuide=function(){for(var e=this.$lines.cells,r=0;r<e.length;r++){var s=e[r],l=s.element.childNodes;if(l.length>0){for(var u=0;u<l.length;u++)if(l[u].classList&&l[u].classList.contains("ace_indent-guide-active")){l[u].classList.remove("ace_indent-guide-active");break}}}},t.prototype.$setIndentGuideActive=function(e,r){var s=this.session.doc.getLine(e.row);if(s!==""){var l=e.element.childNodes;if(l){var u=l[r-1];u&&u.classList&&u.classList.contains("ace_indent-guide")&&u.classList.add("ace_indent-guide-active")}}},t.prototype.$renderHighlightIndentGuide=function(){if(this.$lines){var e=this.$lines.cells;this.$clearActiveIndentGuide();var r=this.$highlightIndentGuideMarker.indentLevel;if(r!==0)if(this.$highlightIndentGuideMarker.dir===1)for(var s=0;s<e.length;s++){var l=e[s];if(this.$highlightIndentGuideMarker.end&&l.row>=this.$highlightIndentGuideMarker.start+1){if(l.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(l,r)}}else for(var s=e.length-1;s>=0;s--){var l=e[s];if(this.$highlightIndentGuideMarker.end&&l.row<this.$highlightIndentGuideMarker.start){if(l.row<=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(l,r)}}}},t.prototype.$createLineElement=function(e){var r=this.dom.createElement("div");return r.className="ace_line",r.style.height=this.config.lineHeight+"px",r},t.prototype.$renderWrappedLine=function(e,r,s){var l=0,u=0,b=s[0],m=0,g=this.$createLineElement();e.appendChild(g);for(var f=0;f<r.length;f++){var C=r[f],k=C.value;if(f==0&&this.displayIndentGuides){if(l=k.length,k=this.renderIndentGuide(g,k,b),!k)continue;l-=k.length}if(l+k.length<b)m=this.$renderToken(g,m,C,k),l+=k.length;else{for(;l+k.length>=b;)m=this.$renderToken(g,m,C,k.substring(0,b-l)),k=k.substring(b-l),l=b,g=this.$createLineElement(),e.appendChild(g),g.appendChild(this.dom.createTextNode(S.stringRepeat(" ",s.indent),this.element)),u++,m=0,b=s[u]||Number.MAX_VALUE;k.length!=0&&(l+=k.length,m=this.$renderToken(g,m,C,k))}}s[s.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(g,m,null,"",!0)},t.prototype.$renderSimpleLine=function(e,r){for(var s=0,l=0;l<r.length;l++){var u=r[l],b=u.value;if(!(l==0&&this.displayIndentGuides&&(b=this.renderIndentGuide(e,b),!b))){if(s+b.length>this.MAX_LINE_LENGTH)return this.$renderOverflowMessage(e,s,u,b);s=this.$renderToken(e,s,u,b)}}},t.prototype.$renderOverflowMessage=function(e,r,s,l,u){s&&this.$renderToken(e,r,s,l.slice(0,this.MAX_LINE_LENGTH-r));var b=this.dom.createElement("span");b.className="ace_inline_button ace_keyword ace_toggle_wrap",b.textContent=u?"<hide>":"<click to see more...>",e.appendChild(b)},t.prototype.$renderLine=function(e,r,s){if(!s&&s!=!1&&(s=this.session.getFoldLine(r)),s)var l=this.$getFoldLineTokens(r,s);else var l=this.session.getTokens(r);var u=e;if(l.length){var b=this.session.getRowSplitData(r);if(b&&b.length){this.$renderWrappedLine(e,l,b);var u=e.lastChild}else{var u=e;this.$useLineGroups()&&(u=this.$createLineElement(),e.appendChild(u)),this.$renderSimpleLine(u,l)}}else this.$useLineGroups()&&(u=this.$createLineElement(),e.appendChild(u));if(this.showEOL&&u){s&&(r=s.end.row);var m=this.dom.createElement("span");m.className="ace_invisible ace_invisible_eol",m.textContent=r==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,u.appendChild(m)}},t.prototype.$getFoldLineTokens=function(e,r){var s=this.session,l=[];function u(m,g,f){for(var C=0,k=0;k+m[C].value.length<g;)if(k+=m[C].value.length,C++,C==m.length)return;if(k!=g){var A=m[C].value.substring(g-k);A.length>f-g&&(A=A.substring(0,f-g)),l.push({type:m[C].type,value:A}),k=g+A.length,C+=1}for(;k<f&&C<m.length;){var A=m[C].value;A.length+k>f?l.push({type:m[C].type,value:A.substring(0,f-k)}):l.push(m[C]),k+=A.length,C+=1}}var b=s.getTokens(e);return r.walk(function(m,g,f,C,k){m!=null?l.push({type:"fold",value:m}):(k&&(b=s.getTokens(g)),b.length&&u(b,C,f))},r.end.row,this.session.getLine(r.end.row).length),l},t.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},t}();n.prototype.EOF_CHAR="¶",n.prototype.EOL_CHAR_LF="¬",n.prototype.EOL_CHAR_CRLF="¤",n.prototype.EOL_CHAR=n.prototype.EOL_CHAR_LF,n.prototype.TAB_CHAR="—",n.prototype.SPACE_CHAR="·",n.prototype.$padding=0,n.prototype.MAX_LINE_LENGTH=1e4,n.prototype.showInvisibles=!1,n.prototype.showSpaces=!1,n.prototype.showTabs=!1,n.prototype.showEOL=!1,n.prototype.displayIndentGuides=!0,n.prototype.$highlightIndentGuides=!0,n.prototype.$tabStrings=[],n.prototype.destroy={},n.prototype.onChangeTabSize=n.prototype.$computeTabString,T.implement(n.prototype,c),x.Text=n}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(I,x,H){var T=I("../lib/dom"),M=function(){function S(a){this.element=T.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),T.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return S.prototype.$updateOpacity=function(a){for(var c=this.cursors,o=c.length;o--;)T.setStyle(c[o].style,"opacity",a?"":"0")},S.prototype.$startCssAnimation=function(){for(var a=this.cursors,c=a.length;c--;)a[c].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout((function(){this.$isAnimating&&T.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},S.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,T.removeCssClass(this.element,"ace_animate-blinking")},S.prototype.setPadding=function(a){this.$padding=a},S.prototype.setSession=function(a){this.session=a},S.prototype.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},S.prototype.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},S.prototype.setSmoothBlinking=function(a){a!=this.smoothBlinking&&(this.smoothBlinking=a,T.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.restartTimer())},S.prototype.addCursor=function(){var a=T.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},S.prototype.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},S.prototype.hideCursor=function(){this.isVisible=!1,T.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},S.prototype.showCursor=function(){this.isVisible=!0,T.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},S.prototype.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,T.removeCssClass(this.element,"ace_smooth-blinking")),a(!0),!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout((function(){this.$isSmoothBlinking&&T.addCssClass(this.element,"ace_smooth-blinking")}).bind(this))),T.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var c=(function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){a(!0),c()},this.blinkInterval),c()}},S.prototype.getPixelPosition=function(a,c){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var o=this.session.documentToScreenPosition(a),i=this.$padding+(this.session.$bidiHandler.isBidiRow(o.row,a.row)?this.session.$bidiHandler.getPosLeft(o.column):o.column*this.config.characterWidth),n=(o.row-(c?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:i,top:n}},S.prototype.isCursorInView=function(a,c){return a.top>=0&&a.top<c.maxHeight},S.prototype.update=function(a){this.config=a;var c=this.session.$selectionMarkers,o=0,i=0;(c===void 0||c.length===0)&&(c=[{cursor:null}]);for(var o=0,n=c.length;o<n;o++){var t=this.getPixelPosition(c[o].cursor,!0);if(!((t.top>a.height+a.offset||t.top<0)&&o>1)){var e=this.cursors[i++]||this.addCursor(),r=e.style;this.drawCursor?this.drawCursor(e,t,a,c[o],this.session):this.isCursorInView(t,a)?(T.setStyle(r,"display","block"),T.translate(e,t.left,t.top),T.setStyle(r,"width",Math.round(a.characterWidth)+"px"),T.setStyle(r,"height",a.lineHeight+"px")):T.setStyle(r,"display","none")}}for(;this.cursors.length>i;)this.removeCursor();var s=this.session.getOverwrite();this.$setOverwrite(s),this.$pixelPos=t,this.restartTimer()},S.prototype.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?T.addCssClass(this.element,"ace_overwrite-cursors"):T.removeCssClass(this.element,"ace_overwrite-cursors"))},S.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},S}();M.prototype.$padding=0,M.prototype.drawCursor=null,x.Cursor=M}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(I,x,H){var T=this&&this.__extends||function(){var e=function(r,s){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(l,u){l.__proto__=u}||function(l,u){for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(l[b]=u[b])},e(r,s)};return function(r,s){if(typeof s!="function"&&s!==null)throw new TypeError("Class extends value "+String(s)+" is not a constructor or null");e(r,s);function l(){this.constructor=r}r.prototype=s===null?Object.create(s):(l.prototype=s.prototype,new l)}}(),M=I("./lib/oop"),S=I("./lib/dom"),a=I("./lib/event"),c=I("./lib/event_emitter").EventEmitter,o=32768,i=function(){function e(r,s){this.element=S.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+s,this.inner=S.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent=" ",this.element.appendChild(this.inner),r.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addListener(this.element,"scroll",this.onScroll.bind(this)),a.addListener(this.element,"mousedown",a.preventDefault)}return e.prototype.setVisible=function(r){this.element.style.display=r?"":"none",this.isVisible=r,this.coeff=1},e}();M.implement(i.prototype,c);var n=function(e){T(r,e);function r(s,l){var u=e.call(this,s,"-v")||this;return u.scrollTop=0,u.scrollHeight=0,l.$scrollbarWidth=u.width=S.scrollbarWidth(s.ownerDocument),u.inner.style.width=u.element.style.width=(u.width||15)+5+"px",u.$minWidth=0,u}return r.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var s=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-s)/(this.coeff-s)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},r.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},r.prototype.setHeight=function(s){this.element.style.height=s+"px"},r.prototype.setScrollHeight=function(s){this.scrollHeight=s,s>o?(this.coeff=o/s,s=o):this.coeff!=1&&(this.coeff=1),this.inner.style.height=s+"px"},r.prototype.setScrollTop=function(s){this.scrollTop!=s&&(this.skipEvent=!0,this.scrollTop=s,this.element.scrollTop=s*this.coeff)},r}(i);n.prototype.setInnerHeight=n.prototype.setScrollHeight;var t=function(e){T(r,e);function r(s,l){var u=e.call(this,s,"-h")||this;return u.scrollLeft=0,u.height=l.$scrollbarWidth,u.inner.style.height=u.element.style.height=(u.height||15)+5+"px",u}return r.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},r.prototype.getHeight=function(){return this.isVisible?this.height:0},r.prototype.setWidth=function(s){this.element.style.width=s+"px"},r.prototype.setInnerWidth=function(s){this.inner.style.width=s+"px"},r.prototype.setScrollWidth=function(s){this.inner.style.width=s+"px"},r.prototype.setScrollLeft=function(s){this.scrollLeft!=s&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=s)},r}(i);x.ScrollBar=n,x.ScrollBarV=n,x.ScrollBarH=t,x.VScrollBar=n,x.HScrollBar=t}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(I,x,H){var T=this&&this.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(s,l){s.__proto__=l}||function(s,l){for(var u in l)Object.prototype.hasOwnProperty.call(l,u)&&(s[u]=l[u])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function s(){this.constructor=e}e.prototype=r===null?Object.create(r):(s.prototype=r.prototype,new s)}}(),M=I("./lib/oop"),S=I("./lib/dom"),a=I("./lib/event"),c=I("./lib/event_emitter").EventEmitter;S.importCssString(`.ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{
|
|
209
|
-
position: absolute;
|
|
210
|
-
background: rgba(128, 128, 128, 0.6);
|
|
211
|
-
-moz-box-sizing: border-box;
|
|
212
|
-
box-sizing: border-box;
|
|
213
|
-
border: 1px solid #bbb;
|
|
214
|
-
border-radius: 2px;
|
|
215
|
-
z-index: 8;
|
|
216
|
-
}
|
|
217
|
-
.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {
|
|
218
|
-
position: absolute;
|
|
219
|
-
z-index: 6;
|
|
220
|
-
background: none;
|
|
221
|
-
overflow: hidden!important;
|
|
222
|
-
}
|
|
223
|
-
.ace_editor>.ace_sb-v {
|
|
224
|
-
z-index: 6;
|
|
225
|
-
right: 0;
|
|
226
|
-
top: 0;
|
|
227
|
-
width: 12px;
|
|
228
|
-
}
|
|
229
|
-
.ace_editor>.ace_sb-v div {
|
|
230
|
-
z-index: 8;
|
|
231
|
-
right: 0;
|
|
232
|
-
width: 100%;
|
|
233
|
-
}
|
|
234
|
-
.ace_editor>.ace_sb-h {
|
|
235
|
-
bottom: 0;
|
|
236
|
-
left: 0;
|
|
237
|
-
height: 12px;
|
|
238
|
-
}
|
|
239
|
-
.ace_editor>.ace_sb-h div {
|
|
240
|
-
bottom: 0;
|
|
241
|
-
height: 100%;
|
|
242
|
-
}
|
|
243
|
-
.ace_editor>.ace_sb_grabbed {
|
|
244
|
-
z-index: 8;
|
|
245
|
-
background: #000;
|
|
246
|
-
}`,"ace_scrollbar.css",!1);var o=function(){function t(e,r){this.element=S.createElement("div"),this.element.className="ace_sb"+r,this.inner=S.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return t.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},t}();M.implement(o.prototype,c);var i=function(t){T(e,t);function e(r,s){var l=t.call(this,r,"-v")||this;return l.scrollTop=0,l.scrollHeight=0,l.parent=r,l.width=l.VScrollWidth,l.renderer=s,l.inner.style.width=l.element.style.width=(l.width||15)+"px",l.$minWidth=0,l}return e.prototype.onMouseDown=function(r,s){if(r==="mousedown"&&!(a.getButton(s)!==0||s.detail===2)){if(s.target===this.inner){var l=this,u=s.clientY,b=function($){u=$.clientY},m=function(){clearInterval(k)},g=s.clientY,f=this.thumbTop,C=function(){if(u!==void 0){var $=l.scrollTopFromThumbTop(f+u-g);$!==l.scrollTop&&l._emit("scroll",{data:$})}};a.capture(this.inner,b,m);var k=setInterval(C,20);return a.preventDefault(s)}var A=s.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(A)}),a.preventDefault(s)}},e.prototype.getHeight=function(){return this.height},e.prototype.scrollTopFromThumbTop=function(r){var s=r*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return s=s>>0,s<0?s=0:s>this.pageHeight-this.viewHeight&&(s=this.pageHeight-this.viewHeight),s},e.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},e.prototype.setHeight=function(r){this.height=Math.max(0,r),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},e.prototype.setScrollHeight=function(r,s){this.pageHeight===r&&!s||(this.pageHeight=r,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})))},e.prototype.setScrollTop=function(r){this.scrollTop=r,r<0&&(r=0),this.thumbTop=r*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},e}(o);i.prototype.setInnerHeight=i.prototype.setScrollHeight;var n=function(t){T(e,t);function e(r,s){var l=t.call(this,r,"-h")||this;return l.scrollLeft=0,l.scrollWidth=0,l.height=l.HScrollHeight,l.inner.style.height=l.element.style.height=(l.height||12)+"px",l.renderer=s,l}return e.prototype.onMouseDown=function(r,s){if(r==="mousedown"&&!(a.getButton(s)!==0||s.detail===2)){if(s.target===this.inner){var l=this,u=s.clientX,b=function($){u=$.clientX},m=function(){clearInterval(k)},g=s.clientX,f=this.thumbLeft,C=function(){if(u!==void 0){var $=l.scrollLeftFromThumbLeft(f+u-g);$!==l.scrollLeft&&l._emit("scroll",{data:$})}};a.capture(this.inner,b,m);var k=setInterval(C,20);return a.preventDefault(s)}var A=s.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(A)}),a.preventDefault(s)}},e.prototype.getHeight=function(){return this.isVisible?this.height:0},e.prototype.scrollLeftFromThumbLeft=function(r){var s=r*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return s=s>>0,s<0?s=0:s>this.pageWidth-this.viewWidth&&(s=this.pageWidth-this.viewWidth),s},e.prototype.setWidth=function(r){this.width=Math.max(0,r),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},e.prototype.setScrollWidth=function(r,s){this.pageWidth===r&&!s||(this.pageWidth=r,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})))},e.prototype.setScrollLeft=function(r){this.scrollLeft=r,r<0&&(r=0),this.thumbLeft=r*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},e}(o);n.prototype.setInnerWidth=n.prototype.setScrollWidth,x.ScrollBar=i,x.ScrollBarV=i,x.ScrollBarH=n,x.VScrollBar=i,x.HScrollBar=n}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(I,x,H){var T=I("./lib/event"),M=function(){function S(a,c){this.onRender=a,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=c||window;var o=this;this._flush=function(i){o.pending=!1;var n=o.changes;if(n&&(T.blockIdle(100),o.changes=0,o.onRender(n)),o.changes){if(o.$recursionLimit--<0)return;o.schedule()}else o.$recursionLimit=2}}return S.prototype.schedule=function(a){this.changes=this.changes|a,this.changes&&!this.pending&&(T.nextFrame(this._flush),this.pending=!0)},S.prototype.clear=function(a){var c=this.changes;return this.changes=0,c},S}();x.RenderLoop=M}),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(I,x,H){var T=I("../lib/oop"),M=I("../lib/dom"),S=I("../lib/lang"),a=I("../lib/event"),c=I("../lib/useragent"),o=I("../lib/event_emitter").EventEmitter,i=512,n=typeof ResizeObserver=="function",t=200,e=function(){function r(s){this.el=M.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=M.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=M.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),s.appendChild(this.el),this.$measureNode.textContent=S.stringRepeat("X",i),this.$characterSize={width:0,height:0},n?this.$addObserver():this.checkForSizeChanges()}return r.prototype.$setMeasureNodeStyles=function(s,l){s.width=s.height="auto",s.left=s.top="0px",s.visibility="hidden",s.position="absolute",s.whiteSpace="pre",c.isIE<8?s["font-family"]="inherit":s.font="inherit",s.overflow=l?"hidden":"visible"},r.prototype.checkForSizeChanges=function(s){if(s===void 0&&(s=this.$measureSizes()),s&&(this.$characterSize.width!==s.width||this.$characterSize.height!==s.height)){this.$measureNode.style.fontWeight="bold";var l=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=s,this.charSizes=Object.create(null),this.allowBoldFonts=l&&l.width===s.width&&l.height===s.height,this._emit("changeCharacterSize",{data:s})}},r.prototype.$addObserver=function(){var s=this;this.$observer=new window.ResizeObserver(function(l){s.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},r.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var s=this;return this.$pollSizeChangesTimer=a.onIdle(function l(){s.checkForSizeChanges(),a.onIdle(l,500)},500)},r.prototype.setPolling=function(s){s?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},r.prototype.$measureSizes=function(s){var l={height:(s||this.$measureNode).clientHeight,width:(s||this.$measureNode).clientWidth/i};return l.width===0||l.height===0?null:l},r.prototype.$measureCharWidth=function(s){this.$main.textContent=S.stringRepeat(s,i);var l=this.$main.getBoundingClientRect();return l.width/i},r.prototype.getCharacterWidth=function(s){var l=this.charSizes[s];return l===void 0&&(l=this.charSizes[s]=this.$measureCharWidth(s)/this.$characterSize.width),l},r.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},r.prototype.$getZoom=function(s){return!s||!s.parentElement?1:(Number(window.getComputedStyle(s).zoom)||1)*this.$getZoom(s.parentElement)},r.prototype.$initTransformMeasureNodes=function(){var s=function(l,u){return["div",{style:"position: absolute;top:"+l+"px;left:"+u+"px;"}]};this.els=M.buildDom([s(0,0),s(t,0),s(0,t),s(t,t)],this.el)},r.prototype.transformCoordinates=function(s,l){if(s){var u=this.$getZoom(this.el);s=f(1/u,s)}function b(_,W,F){var D=_[1]*W[0]-_[0]*W[1];return[(-W[1]*F[0]+W[0]*F[1])/D,(+_[1]*F[0]-_[0]*F[1])/D]}function m(_,W){return[_[0]-W[0],_[1]-W[1]]}function g(_,W){return[_[0]+W[0],_[1]+W[1]]}function f(_,W){return[_*W[0],_*W[1]]}this.els||this.$initTransformMeasureNodes();function C(_){var W=_.getBoundingClientRect();return[W.left,W.top]}var k=C(this.els[0]),A=C(this.els[1]),$=C(this.els[2]),w=C(this.els[3]),d=b(m(w,A),m(w,$),m(g(A,$),g(w,k))),p=f(1+d[0],m(A,k)),h=f(1+d[1],m($,k));if(l){var v=l,y=d[0]*v[0]/t+d[1]*v[1]/t+1,L=g(f(v[0],p),f(v[1],h));return g(f(1/y/t,L),k)}var E=m(s,k),R=b(m(p,f(d[0],E)),m(h,f(d[1],E)),E);return f(t,R)},r}();e.prototype.$characterSize={width:0,height:0},T.implement(e.prototype,o),x.FontMetrics=e}),ace.define("ace/css/editor-css",["require","exports","module"],function(I,x,H){H.exports=`
|
|
247
|
-
.ace_br1 {border-top-left-radius : 3px;}
|
|
248
|
-
.ace_br2 {border-top-right-radius : 3px;}
|
|
249
|
-
.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}
|
|
250
|
-
.ace_br4 {border-bottom-right-radius: 3px;}
|
|
251
|
-
.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}
|
|
252
|
-
.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}
|
|
253
|
-
.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
|
|
254
|
-
.ace_br8 {border-bottom-left-radius : 3px;}
|
|
255
|
-
.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}
|
|
256
|
-
.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}
|
|
257
|
-
.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}
|
|
258
|
-
.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
|
|
259
|
-
.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
|
|
260
|
-
.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
|
|
261
|
-
.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
.ace_editor {
|
|
265
|
-
position: relative;
|
|
266
|
-
overflow: hidden;
|
|
267
|
-
padding: 0;
|
|
268
|
-
font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace;
|
|
269
|
-
direction: ltr;
|
|
270
|
-
text-align: left;
|
|
271
|
-
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
|
272
|
-
forced-color-adjust: none;
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
.ace_scroller {
|
|
276
|
-
position: absolute;
|
|
277
|
-
overflow: hidden;
|
|
278
|
-
top: 0;
|
|
279
|
-
bottom: 0;
|
|
280
|
-
background-color: inherit;
|
|
281
|
-
-ms-user-select: none;
|
|
282
|
-
-moz-user-select: none;
|
|
283
|
-
-webkit-user-select: none;
|
|
284
|
-
user-select: none;
|
|
285
|
-
cursor: text;
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
.ace_content {
|
|
289
|
-
position: absolute;
|
|
290
|
-
box-sizing: border-box;
|
|
291
|
-
min-width: 100%;
|
|
292
|
-
contain: style size layout;
|
|
293
|
-
font-variant-ligatures: no-common-ligatures;
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
.ace_keyboard-focus:focus {
|
|
297
|
-
box-shadow: inset 0 0 0 2px #5E9ED6;
|
|
298
|
-
outline: none;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
.ace_dragging .ace_scroller:before{
|
|
302
|
-
position: absolute;
|
|
303
|
-
top: 0;
|
|
304
|
-
left: 0;
|
|
305
|
-
right: 0;
|
|
306
|
-
bottom: 0;
|
|
307
|
-
content: '';
|
|
308
|
-
background: rgba(250, 250, 250, 0.01);
|
|
309
|
-
z-index: 1000;
|
|
310
|
-
}
|
|
311
|
-
.ace_dragging.ace_dark .ace_scroller:before{
|
|
312
|
-
background: rgba(0, 0, 0, 0.01);
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
.ace_gutter {
|
|
316
|
-
position: absolute;
|
|
317
|
-
overflow : hidden;
|
|
318
|
-
width: auto;
|
|
319
|
-
top: 0;
|
|
320
|
-
bottom: 0;
|
|
321
|
-
left: 0;
|
|
322
|
-
cursor: default;
|
|
323
|
-
z-index: 4;
|
|
324
|
-
-ms-user-select: none;
|
|
325
|
-
-moz-user-select: none;
|
|
326
|
-
-webkit-user-select: none;
|
|
327
|
-
user-select: none;
|
|
328
|
-
contain: style size layout;
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
.ace_gutter-active-line {
|
|
332
|
-
position: absolute;
|
|
333
|
-
left: 0;
|
|
334
|
-
right: 0;
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
.ace_scroller.ace_scroll-left:after {
|
|
338
|
-
content: "";
|
|
339
|
-
position: absolute;
|
|
340
|
-
top: 0;
|
|
341
|
-
right: 0;
|
|
342
|
-
bottom: 0;
|
|
343
|
-
left: 0;
|
|
344
|
-
box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;
|
|
345
|
-
pointer-events: none;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
.ace_gutter-cell, .ace_gutter-cell_svg-icons {
|
|
349
|
-
position: absolute;
|
|
350
|
-
top: 0;
|
|
351
|
-
left: 0;
|
|
352
|
-
right: 0;
|
|
353
|
-
padding-left: 19px;
|
|
354
|
-
padding-right: 6px;
|
|
355
|
-
background-repeat: no-repeat;
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
.ace_gutter-cell_svg-icons .ace_gutter_annotation {
|
|
359
|
-
margin-left: -14px;
|
|
360
|
-
float: left;
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
.ace_gutter-cell .ace_gutter_annotation {
|
|
364
|
-
margin-left: -19px;
|
|
365
|
-
float: left;
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
.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 {
|
|
369
|
-
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==");
|
|
370
|
-
background-repeat: no-repeat;
|
|
371
|
-
background-position: 2px center;
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {
|
|
375
|
-
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==");
|
|
376
|
-
background-repeat: no-repeat;
|
|
377
|
-
background-position: 2px center;
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
.ace_gutter-cell.ace_info, .ace_icon.ace_info, .ace_gutter-cell.ace_hint, .ace_icon.ace_hint {
|
|
381
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");
|
|
382
|
-
background-repeat: no-repeat;
|
|
383
|
-
background-position: 2px center;
|
|
384
|
-
}
|
|
385
|
-
|
|
386
|
-
.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 {
|
|
387
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
.ace_icon_svg.ace_error {
|
|
391
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");
|
|
392
|
-
background-color: crimson;
|
|
393
|
-
}
|
|
394
|
-
.ace_icon_svg.ace_security {
|
|
395
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+");
|
|
396
|
-
background-color: crimson;
|
|
397
|
-
}
|
|
398
|
-
.ace_icon_svg.ace_warning {
|
|
399
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");
|
|
400
|
-
background-color: darkorange;
|
|
401
|
-
}
|
|
402
|
-
.ace_icon_svg.ace_info {
|
|
403
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");
|
|
404
|
-
background-color: royalblue;
|
|
405
|
-
}
|
|
406
|
-
.ace_icon_svg.ace_hint {
|
|
407
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg==");
|
|
408
|
-
background-color: silver;
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
.ace_icon_svg.ace_error_fold {
|
|
412
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
|
|
413
|
-
background-color: crimson;
|
|
414
|
-
}
|
|
415
|
-
.ace_icon_svg.ace_security_fold {
|
|
416
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
|
|
417
|
-
background-color: crimson;
|
|
418
|
-
}
|
|
419
|
-
.ace_icon_svg.ace_warning_fold {
|
|
420
|
-
-webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");
|
|
421
|
-
background-color: darkorange;
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
.ace_scrollbar {
|
|
425
|
-
contain: strict;
|
|
426
|
-
position: absolute;
|
|
427
|
-
right: 0;
|
|
428
|
-
bottom: 0;
|
|
429
|
-
z-index: 6;
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
.ace_scrollbar-inner {
|
|
433
|
-
position: absolute;
|
|
434
|
-
cursor: text;
|
|
435
|
-
left: 0;
|
|
436
|
-
top: 0;
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
.ace_scrollbar-v{
|
|
440
|
-
overflow-x: hidden;
|
|
441
|
-
overflow-y: scroll;
|
|
442
|
-
top: 0;
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
.ace_scrollbar-h {
|
|
446
|
-
overflow-x: scroll;
|
|
447
|
-
overflow-y: hidden;
|
|
448
|
-
left: 0;
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
.ace_print-margin {
|
|
452
|
-
position: absolute;
|
|
453
|
-
height: 100%;
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
.ace_text-input {
|
|
457
|
-
position: absolute;
|
|
458
|
-
z-index: 0;
|
|
459
|
-
width: 0.5em;
|
|
460
|
-
height: 1em;
|
|
461
|
-
opacity: 0;
|
|
462
|
-
background: transparent;
|
|
463
|
-
-moz-appearance: none;
|
|
464
|
-
appearance: none;
|
|
465
|
-
border: none;
|
|
466
|
-
resize: none;
|
|
467
|
-
outline: none;
|
|
468
|
-
overflow: hidden;
|
|
469
|
-
font: inherit;
|
|
470
|
-
padding: 0 1px;
|
|
471
|
-
margin: 0 -1px;
|
|
472
|
-
contain: strict;
|
|
473
|
-
-ms-user-select: text;
|
|
474
|
-
-moz-user-select: text;
|
|
475
|
-
-webkit-user-select: text;
|
|
476
|
-
user-select: text;
|
|
477
|
-
/*with \`pre-line\` chrome inserts instead of space*/
|
|
478
|
-
white-space: pre!important;
|
|
479
|
-
}
|
|
480
|
-
.ace_text-input.ace_composition {
|
|
481
|
-
background: transparent;
|
|
482
|
-
color: inherit;
|
|
483
|
-
z-index: 1000;
|
|
484
|
-
opacity: 1;
|
|
485
|
-
}
|
|
486
|
-
.ace_composition_placeholder { color: transparent }
|
|
487
|
-
.ace_composition_marker {
|
|
488
|
-
border-bottom: 1px solid;
|
|
489
|
-
position: absolute;
|
|
490
|
-
border-radius: 0;
|
|
491
|
-
margin-top: 1px;
|
|
492
|
-
}
|
|
493
|
-
|
|
494
|
-
[ace_nocontext=true] {
|
|
495
|
-
transform: none!important;
|
|
496
|
-
filter: none!important;
|
|
497
|
-
clip-path: none!important;
|
|
498
|
-
mask : none!important;
|
|
499
|
-
contain: none!important;
|
|
500
|
-
perspective: none!important;
|
|
501
|
-
mix-blend-mode: initial!important;
|
|
502
|
-
z-index: auto;
|
|
503
|
-
}
|
|
504
|
-
|
|
505
|
-
.ace_layer {
|
|
506
|
-
z-index: 1;
|
|
507
|
-
position: absolute;
|
|
508
|
-
overflow: hidden;
|
|
509
|
-
/* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/
|
|
510
|
-
word-wrap: normal;
|
|
511
|
-
white-space: pre;
|
|
512
|
-
height: 100%;
|
|
513
|
-
width: 100%;
|
|
514
|
-
box-sizing: border-box;
|
|
515
|
-
/* setting pointer-events: auto; on node under the mouse, which changes
|
|
516
|
-
during scroll, will break mouse wheel scrolling in Safari */
|
|
517
|
-
pointer-events: none;
|
|
518
|
-
}
|
|
519
|
-
|
|
520
|
-
.ace_gutter-layer {
|
|
521
|
-
position: relative;
|
|
522
|
-
width: auto;
|
|
523
|
-
text-align: right;
|
|
524
|
-
pointer-events: auto;
|
|
525
|
-
height: 1000000px;
|
|
526
|
-
contain: style size layout;
|
|
527
|
-
}
|
|
528
|
-
|
|
529
|
-
.ace_text-layer {
|
|
530
|
-
font: inherit !important;
|
|
531
|
-
position: absolute;
|
|
532
|
-
height: 1000000px;
|
|
533
|
-
width: 1000000px;
|
|
534
|
-
contain: style size layout;
|
|
535
|
-
}
|
|
536
|
-
|
|
537
|
-
.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {
|
|
538
|
-
contain: style size layout;
|
|
539
|
-
position: absolute;
|
|
540
|
-
top: 0;
|
|
541
|
-
left: 0;
|
|
542
|
-
right: 0;
|
|
543
|
-
}
|
|
544
|
-
|
|
545
|
-
.ace_hidpi .ace_text-layer,
|
|
546
|
-
.ace_hidpi .ace_gutter-layer,
|
|
547
|
-
.ace_hidpi .ace_content,
|
|
548
|
-
.ace_hidpi .ace_gutter {
|
|
549
|
-
contain: strict;
|
|
550
|
-
}
|
|
551
|
-
.ace_hidpi .ace_text-layer > .ace_line,
|
|
552
|
-
.ace_hidpi .ace_text-layer > .ace_line_group {
|
|
553
|
-
contain: strict;
|
|
554
|
-
}
|
|
555
|
-
|
|
556
|
-
.ace_cjk {
|
|
557
|
-
display: inline-block;
|
|
558
|
-
text-align: center;
|
|
559
|
-
}
|
|
560
|
-
|
|
561
|
-
.ace_cursor-layer {
|
|
562
|
-
z-index: 4;
|
|
563
|
-
}
|
|
564
|
-
|
|
565
|
-
.ace_cursor {
|
|
566
|
-
z-index: 4;
|
|
567
|
-
position: absolute;
|
|
568
|
-
box-sizing: border-box;
|
|
569
|
-
border-left: 2px solid;
|
|
570
|
-
/* workaround for smooth cursor repaintng whole screen in chrome */
|
|
571
|
-
transform: translatez(0);
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
.ace_multiselect .ace_cursor {
|
|
575
|
-
border-left-width: 1px;
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
.ace_slim-cursors .ace_cursor {
|
|
579
|
-
border-left-width: 1px;
|
|
580
|
-
}
|
|
581
|
-
|
|
582
|
-
.ace_overwrite-cursors .ace_cursor {
|
|
583
|
-
border-left-width: 0;
|
|
584
|
-
border-bottom: 1px solid;
|
|
585
|
-
}
|
|
586
|
-
|
|
587
|
-
.ace_hidden-cursors .ace_cursor {
|
|
588
|
-
opacity: 0.2;
|
|
589
|
-
}
|
|
590
|
-
|
|
591
|
-
.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {
|
|
592
|
-
opacity: 0;
|
|
593
|
-
}
|
|
594
|
-
|
|
595
|
-
.ace_smooth-blinking .ace_cursor {
|
|
596
|
-
transition: opacity 0.18s;
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
.ace_animate-blinking .ace_cursor {
|
|
600
|
-
animation-duration: 1000ms;
|
|
601
|
-
animation-timing-function: step-end;
|
|
602
|
-
animation-name: blink-ace-animate;
|
|
603
|
-
animation-iteration-count: infinite;
|
|
604
|
-
}
|
|
605
|
-
|
|
606
|
-
.ace_animate-blinking.ace_smooth-blinking .ace_cursor {
|
|
607
|
-
animation-duration: 1000ms;
|
|
608
|
-
animation-timing-function: ease-in-out;
|
|
609
|
-
animation-name: blink-ace-animate-smooth;
|
|
610
|
-
}
|
|
611
|
-
|
|
612
|
-
@keyframes blink-ace-animate {
|
|
613
|
-
from, to { opacity: 1; }
|
|
614
|
-
60% { opacity: 0; }
|
|
615
|
-
}
|
|
616
|
-
|
|
617
|
-
@keyframes blink-ace-animate-smooth {
|
|
618
|
-
from, to { opacity: 1; }
|
|
619
|
-
45% { opacity: 1; }
|
|
620
|
-
60% { opacity: 0; }
|
|
621
|
-
85% { opacity: 0; }
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {
|
|
625
|
-
position: absolute;
|
|
626
|
-
z-index: 3;
|
|
627
|
-
}
|
|
628
|
-
|
|
629
|
-
.ace_marker-layer .ace_selection {
|
|
630
|
-
position: absolute;
|
|
631
|
-
z-index: 5;
|
|
632
|
-
}
|
|
633
|
-
|
|
634
|
-
.ace_marker-layer .ace_bracket {
|
|
635
|
-
position: absolute;
|
|
636
|
-
z-index: 6;
|
|
637
|
-
}
|
|
638
|
-
|
|
639
|
-
.ace_marker-layer .ace_error_bracket {
|
|
640
|
-
position: absolute;
|
|
641
|
-
border-bottom: 1px solid #DE5555;
|
|
642
|
-
border-radius: 0;
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
.ace_marker-layer .ace_active-line {
|
|
646
|
-
position: absolute;
|
|
647
|
-
z-index: 2;
|
|
648
|
-
}
|
|
649
|
-
|
|
650
|
-
.ace_marker-layer .ace_selected-word {
|
|
651
|
-
position: absolute;
|
|
652
|
-
z-index: 4;
|
|
653
|
-
box-sizing: border-box;
|
|
654
|
-
}
|
|
655
|
-
|
|
656
|
-
.ace_line .ace_fold {
|
|
657
|
-
box-sizing: border-box;
|
|
658
|
-
|
|
659
|
-
display: inline-block;
|
|
660
|
-
height: 11px;
|
|
661
|
-
margin-top: -2px;
|
|
662
|
-
vertical-align: middle;
|
|
663
|
-
|
|
664
|
-
background-image:
|
|
665
|
-
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
|
|
666
|
-
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");
|
|
667
|
-
background-repeat: no-repeat, repeat-x;
|
|
668
|
-
background-position: center center, top left;
|
|
669
|
-
color: transparent;
|
|
670
|
-
|
|
671
|
-
border: 1px solid black;
|
|
672
|
-
border-radius: 2px;
|
|
673
|
-
|
|
674
|
-
cursor: pointer;
|
|
675
|
-
pointer-events: auto;
|
|
676
|
-
}
|
|
677
|
-
|
|
678
|
-
.ace_dark .ace_fold {
|
|
679
|
-
}
|
|
680
|
-
|
|
681
|
-
.ace_fold:hover{
|
|
682
|
-
background-image:
|
|
683
|
-
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
|
|
684
|
-
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");
|
|
685
|
-
}
|
|
686
|
-
|
|
687
|
-
.ace_tooltip {
|
|
688
|
-
background-color: #f5f5f5;
|
|
689
|
-
border: 1px solid gray;
|
|
690
|
-
border-radius: 1px;
|
|
691
|
-
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
|
|
692
|
-
color: black;
|
|
693
|
-
max-width: 100%;
|
|
694
|
-
padding: 3px 4px;
|
|
695
|
-
position: fixed;
|
|
696
|
-
z-index: 999999;
|
|
697
|
-
box-sizing: border-box;
|
|
698
|
-
cursor: default;
|
|
699
|
-
white-space: pre-wrap;
|
|
700
|
-
word-wrap: break-word;
|
|
701
|
-
line-height: normal;
|
|
702
|
-
font-style: normal;
|
|
703
|
-
font-weight: normal;
|
|
704
|
-
letter-spacing: normal;
|
|
705
|
-
pointer-events: none;
|
|
706
|
-
overflow: auto;
|
|
707
|
-
max-width: min(60em, 66vw);
|
|
708
|
-
overscroll-behavior: contain;
|
|
709
|
-
}
|
|
710
|
-
.ace_tooltip pre {
|
|
711
|
-
white-space: pre-wrap;
|
|
712
|
-
}
|
|
713
|
-
|
|
714
|
-
.ace_tooltip.ace_dark {
|
|
715
|
-
background-color: #636363;
|
|
716
|
-
color: #fff;
|
|
717
|
-
}
|
|
718
|
-
|
|
719
|
-
.ace_tooltip:focus {
|
|
720
|
-
outline: 1px solid #5E9ED6;
|
|
721
|
-
}
|
|
722
|
-
|
|
723
|
-
.ace_icon {
|
|
724
|
-
display: inline-block;
|
|
725
|
-
width: 18px;
|
|
726
|
-
vertical-align: top;
|
|
727
|
-
}
|
|
728
|
-
|
|
729
|
-
.ace_icon_svg {
|
|
730
|
-
display: inline-block;
|
|
731
|
-
width: 12px;
|
|
732
|
-
vertical-align: top;
|
|
733
|
-
-webkit-mask-repeat: no-repeat;
|
|
734
|
-
-webkit-mask-size: 12px;
|
|
735
|
-
-webkit-mask-position: center;
|
|
736
|
-
}
|
|
737
|
-
|
|
738
|
-
.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {
|
|
739
|
-
padding-right: 13px;
|
|
740
|
-
}
|
|
741
|
-
|
|
742
|
-
.ace_fold-widget {
|
|
743
|
-
box-sizing: border-box;
|
|
744
|
-
|
|
745
|
-
margin: 0 -12px 0 1px;
|
|
746
|
-
display: none;
|
|
747
|
-
width: 11px;
|
|
748
|
-
vertical-align: top;
|
|
749
|
-
|
|
750
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");
|
|
751
|
-
background-repeat: no-repeat;
|
|
752
|
-
background-position: center;
|
|
753
|
-
|
|
754
|
-
border-radius: 3px;
|
|
755
|
-
|
|
756
|
-
border: 1px solid transparent;
|
|
757
|
-
cursor: pointer;
|
|
758
|
-
}
|
|
759
|
-
|
|
760
|
-
.ace_folding-enabled .ace_fold-widget {
|
|
761
|
-
display: inline-block;
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
.ace_fold-widget.ace_end {
|
|
765
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");
|
|
766
|
-
}
|
|
767
|
-
|
|
768
|
-
.ace_fold-widget.ace_closed {
|
|
769
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");
|
|
770
|
-
}
|
|
771
|
-
|
|
772
|
-
.ace_fold-widget:hover {
|
|
773
|
-
border: 1px solid rgba(0, 0, 0, 0.3);
|
|
774
|
-
background-color: rgba(255, 255, 255, 0.2);
|
|
775
|
-
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
|
|
776
|
-
}
|
|
777
|
-
|
|
778
|
-
.ace_fold-widget:active {
|
|
779
|
-
border: 1px solid rgba(0, 0, 0, 0.4);
|
|
780
|
-
background-color: rgba(0, 0, 0, 0.05);
|
|
781
|
-
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
|
|
782
|
-
}
|
|
783
|
-
/**
|
|
784
|
-
* Dark version for fold widgets
|
|
785
|
-
*/
|
|
786
|
-
.ace_dark .ace_fold-widget {
|
|
787
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");
|
|
788
|
-
}
|
|
789
|
-
.ace_dark .ace_fold-widget.ace_end {
|
|
790
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");
|
|
791
|
-
}
|
|
792
|
-
.ace_dark .ace_fold-widget.ace_closed {
|
|
793
|
-
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");
|
|
794
|
-
}
|
|
795
|
-
.ace_dark .ace_fold-widget:hover {
|
|
796
|
-
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
|
797
|
-
background-color: rgba(255, 255, 255, 0.1);
|
|
798
|
-
}
|
|
799
|
-
.ace_dark .ace_fold-widget:active {
|
|
800
|
-
box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
|
|
801
|
-
}
|
|
802
|
-
|
|
803
|
-
.ace_inline_button {
|
|
804
|
-
border: 1px solid lightgray;
|
|
805
|
-
display: inline-block;
|
|
806
|
-
margin: -1px 8px;
|
|
807
|
-
padding: 0 5px;
|
|
808
|
-
pointer-events: auto;
|
|
809
|
-
cursor: pointer;
|
|
810
|
-
}
|
|
811
|
-
.ace_inline_button:hover {
|
|
812
|
-
border-color: gray;
|
|
813
|
-
background: rgba(200,200,200,0.2);
|
|
814
|
-
display: inline-block;
|
|
815
|
-
pointer-events: auto;
|
|
816
|
-
}
|
|
817
|
-
|
|
818
|
-
.ace_fold-widget.ace_invalid {
|
|
819
|
-
background-color: #FFB4B4;
|
|
820
|
-
border-color: #DE5555;
|
|
821
|
-
}
|
|
822
|
-
|
|
823
|
-
.ace_fade-fold-widgets .ace_fold-widget {
|
|
824
|
-
transition: opacity 0.4s ease 0.05s;
|
|
825
|
-
opacity: 0;
|
|
826
|
-
}
|
|
827
|
-
|
|
828
|
-
.ace_fade-fold-widgets:hover .ace_fold-widget {
|
|
829
|
-
transition: opacity 0.05s ease 0.05s;
|
|
830
|
-
opacity:1;
|
|
831
|
-
}
|
|
832
|
-
|
|
833
|
-
.ace_underline {
|
|
834
|
-
text-decoration: underline;
|
|
835
|
-
}
|
|
836
|
-
|
|
837
|
-
.ace_bold {
|
|
838
|
-
font-weight: bold;
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
.ace_nobold .ace_bold {
|
|
842
|
-
font-weight: normal;
|
|
843
|
-
}
|
|
844
|
-
|
|
845
|
-
.ace_italic {
|
|
846
|
-
font-style: italic;
|
|
847
|
-
}
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
.ace_error-marker {
|
|
851
|
-
background-color: rgba(255, 0, 0,0.2);
|
|
852
|
-
position: absolute;
|
|
853
|
-
z-index: 9;
|
|
854
|
-
}
|
|
855
|
-
|
|
856
|
-
.ace_highlight-marker {
|
|
857
|
-
background-color: rgba(255, 255, 0,0.2);
|
|
858
|
-
position: absolute;
|
|
859
|
-
z-index: 8;
|
|
860
|
-
}
|
|
861
|
-
|
|
862
|
-
.ace_mobile-menu {
|
|
863
|
-
position: absolute;
|
|
864
|
-
line-height: 1.5;
|
|
865
|
-
border-radius: 4px;
|
|
866
|
-
-ms-user-select: none;
|
|
867
|
-
-moz-user-select: none;
|
|
868
|
-
-webkit-user-select: none;
|
|
869
|
-
user-select: none;
|
|
870
|
-
background: white;
|
|
871
|
-
box-shadow: 1px 3px 2px grey;
|
|
872
|
-
border: 1px solid #dcdcdc;
|
|
873
|
-
color: black;
|
|
874
|
-
}
|
|
875
|
-
.ace_dark > .ace_mobile-menu {
|
|
876
|
-
background: #333;
|
|
877
|
-
color: #ccc;
|
|
878
|
-
box-shadow: 1px 3px 2px grey;
|
|
879
|
-
border: 1px solid #444;
|
|
880
|
-
|
|
881
|
-
}
|
|
882
|
-
.ace_mobile-button {
|
|
883
|
-
padding: 2px;
|
|
884
|
-
cursor: pointer;
|
|
885
|
-
overflow: hidden;
|
|
886
|
-
}
|
|
887
|
-
.ace_mobile-button:hover {
|
|
888
|
-
background-color: #eee;
|
|
889
|
-
opacity:1;
|
|
890
|
-
}
|
|
891
|
-
.ace_mobile-button:active {
|
|
892
|
-
background-color: #ddd;
|
|
893
|
-
}
|
|
894
|
-
|
|
895
|
-
.ace_placeholder {
|
|
896
|
-
position: relative;
|
|
897
|
-
font-family: arial;
|
|
898
|
-
transform: scale(0.9);
|
|
899
|
-
transform-origin: left;
|
|
900
|
-
white-space: pre;
|
|
901
|
-
opacity: 0.7;
|
|
902
|
-
margin: 0 10px;
|
|
903
|
-
z-index: 1;
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
.ace_ghost_text {
|
|
907
|
-
opacity: 0.5;
|
|
908
|
-
font-style: italic;
|
|
909
|
-
}
|
|
910
|
-
|
|
911
|
-
.ace_ghost_text_container > div {
|
|
912
|
-
white-space: pre;
|
|
913
|
-
}
|
|
914
|
-
|
|
915
|
-
.ghost_text_line_wrapped::after {
|
|
916
|
-
content: "↩";
|
|
917
|
-
position: absolute;
|
|
918
|
-
}
|
|
919
|
-
|
|
920
|
-
.ace_lineWidgetContainer.ace_ghost_text {
|
|
921
|
-
margin: 0px 4px
|
|
922
|
-
}
|
|
923
|
-
|
|
924
|
-
.ace_screenreader-only {
|
|
925
|
-
position:absolute;
|
|
926
|
-
left:-10000px;
|
|
927
|
-
top:auto;
|
|
928
|
-
width:1px;
|
|
929
|
-
height:1px;
|
|
930
|
-
overflow:hidden;
|
|
931
|
-
}
|
|
932
|
-
|
|
933
|
-
.ace_hidden_token {
|
|
934
|
-
display: none;
|
|
935
|
-
}`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(I,x,H){var T=I("../lib/dom"),M=I("../lib/oop"),S=I("../lib/event_emitter").EventEmitter,a=function(){function c(o,i){this.canvas=T.createElement("canvas"),this.renderer=i,this.pixelRatio=1,this.maxHeight=i.layerConfig.maxHeight,this.lineHeight=i.layerConfig.lineHeight,this.canvasHeight=o.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=o.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7px",this.canvas.style.position="absolute",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)"},o.element.appendChild(this.canvas)}return c.prototype.$updateDecorators=function(o){var i=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;if(o){this.maxHeight=o.maxHeight,this.lineHeight=o.lineHeight,this.canvasHeight=o.height;var n=(o.lastRow+1)*this.lineHeight;n<this.canvasHeight?this.heightRatio=1:this.heightRatio=this.canvasHeight/this.maxHeight}var t=this.canvas.getContext("2d");function e(w,d){return w.priority<d.priority?-1:w.priority>d.priority?1:0}var r=this.renderer.session.$annotations;if(t.clearRect(0,0,this.canvas.width,this.canvas.height),r){var s={info:1,warning:2,error:3};r.forEach(function(w){w.priority=s[w.type]||null}),r=r.sort(e);for(var l=this.renderer.session.$foldData,u=0;u<r.length;u++){var b=r[u].row,m=this.compensateFoldRows(b,l),g=Math.round((b-m)*this.lineHeight*this.heightRatio),f=Math.round((b-m)*this.lineHeight*this.heightRatio),C=Math.round(((b-m)*this.lineHeight+this.lineHeight)*this.heightRatio),k=C-f;if(k<this.minDecorationHeight){var A=(f+C)/2|0;A<this.halfMinDecorationHeight?A=this.halfMinDecorationHeight:A+this.halfMinDecorationHeight>this.canvasHeight&&(A=this.canvasHeight-this.halfMinDecorationHeight),f=Math.round(A-this.halfMinDecorationHeight),C=Math.round(A+this.halfMinDecorationHeight)}t.fillStyle=i[r[u].type]||null,t.fillRect(0,g,this.canvasWidth,C-f)}}var $=this.renderer.session.selection.getCursor();if($){var m=this.compensateFoldRows($.row,l),g=Math.round(($.row-m)*this.lineHeight*this.heightRatio);t.fillStyle="rgba(0, 0, 0, 0.5)",t.fillRect(0,g,this.canvasWidth,2)}},c.prototype.compensateFoldRows=function(o,i){var n=0;if(i&&i.length>0)for(var t=0;t<i.length;t++)o>i[t].start.row&&o<i[t].end.row?n+=o-i[t].start.row:o>=i[t].end.row&&(n+=i[t].end.row-i[t].start.row);return n},c}();M.implement(a.prototype,S),x.Decorator=a}),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(I,x,H){var T=I("./lib/oop"),M=I("./lib/dom"),S=I("./lib/lang"),a=I("./config"),c=I("./layer/gutter").Gutter,o=I("./layer/marker").Marker,i=I("./layer/text").Text,n=I("./layer/cursor").Cursor,t=I("./scrollbar").HScrollBar,e=I("./scrollbar").VScrollBar,r=I("./scrollbar_custom").HScrollBar,s=I("./scrollbar_custom").VScrollBar,l=I("./renderloop").RenderLoop,u=I("./layer/font_metrics").FontMetrics,b=I("./lib/event_emitter").EventEmitter,m=I("./css/editor-css"),g=I("./layer/decorators").Decorator,f=I("./lib/useragent"),C=I("./layer/text_util").isTextToken;M.importCssString(m,"ace_editor.css",!1);var k=function(){function A($,w){var d=this;this.container=$||M.createElement("div"),M.addCssClass(this.container,"ace_editor"),M.HI_DPI&&M.addCssClass(this.container,"ace_hidpi"),this.setTheme(w),a.get("useStrictCSP")==null&&a.set("useStrictCSP",!1),this.$gutter=M.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=M.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=M.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new c(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new o(this.content);var p=this.$textLayer=new i(this.content);this.canvas=p.element,this.$markerFront=new o(this.content),this.$cursorLayer=new n(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new e(this.container,this),this.scrollBarH=new t(this.container,this),this.scrollBarV.on("scroll",function(h){d.$scrollAnimation||d.session.setScrollTop(h.data-d.scrollMargin.top)}),this.scrollBarH.on("scroll",function(h){d.$scrollAnimation||d.session.setScrollLeft(h.data-d.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new u(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(h){d.updateCharacterSize(),d.onResize(!0,d.gutterWidth,d.$size.width,d.$size.height),d._signal("changeCharacterSize",h)}),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=!f.isIOS,this.$loop=new l(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),a.resetOptions(this),a._signal("renderer",this)}return A.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(),M.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},A.prototype.setSession=function($){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=$,$&&this.scrollMargin.top&&$.getScrollTop()<=0&&$.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession($),this.$markerBack.setSession($),this.$markerFront.setSession($),this.$gutterLayer.setSession($),this.$textLayer.setSession($),$&&(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))},A.prototype.updateLines=function($,w,d){if(w===void 0&&(w=1/0),this.$changedLines?(this.$changedLines.firstRow>$&&(this.$changedLines.firstRow=$),this.$changedLines.lastRow<w&&(this.$changedLines.lastRow=w)):this.$changedLines={firstRow:$,lastRow:w},this.$changedLines.lastRow<this.layerConfig.firstRow)if(d)this.$changedLines.lastRow=this.layerConfig.lastRow;else return;this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},A.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},A.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},A.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},A.prototype.updateFull=function($){$?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},A.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},A.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},A.prototype.onResize=function($,w,d,p){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=$?1:0;var h=this.container;p||(p=h.clientHeight||h.scrollHeight),!p&&this.$maxLines&&this.lineHeight>1&&(!h.style.height||h.style.height=="0px")&&(h.style.height="1px",p=h.clientHeight||h.scrollHeight),d||(d=h.clientWidth||h.scrollWidth);var v=this.$updateCachedSize($,w,d,p);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!d&&!p)return this.resizing=0;$&&(this.$gutterLayer.$padding=null),$?this.$renderChanges(v|this.$changes,!0):this.$loop.schedule(v|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},A.prototype.$updateCachedSize=function($,w,d,p){p-=this.$extraHeight||0;var h=0,v=this.$size,y={width:v.width,height:v.height,scrollerHeight:v.scrollerHeight,scrollerWidth:v.scrollerWidth};if(p&&($||v.height!=p)&&(v.height=p,h|=this.CHANGE_SIZE,v.scrollerHeight=v.height,this.$horizScroll&&(v.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(v.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",h=h|this.CHANGE_SCROLL),d&&($||v.width!=d)){h|=this.CHANGE_SIZE,v.width=d,w==null&&(w=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=w,M.setStyle(this.scrollBarH.element.style,"left",w+"px"),M.setStyle(this.scroller.style,"left",w+this.margin.left+"px"),v.scrollerWidth=Math.max(0,d-w-this.scrollBarV.getWidth()-this.margin.h),M.setStyle(this.$gutter.style,"left",this.margin.left+"px");var L=this.scrollBarV.getWidth()+"px";M.setStyle(this.scrollBarH.element.style,"right",L),M.setStyle(this.scroller.style,"right",L),M.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(v.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||$)&&(h|=this.CHANGE_FULL)}return v.$dirty=!d||!p,h&&this._signal("resize",y),h},A.prototype.onGutterResize=function($){var w=this.$showGutter?$:0;w!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,w,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()},A.prototype.adjustWrapLimit=function(){var $=this.$size.scrollerWidth-this.$padding*2,w=Math.floor($/this.characterWidth);return this.session.adjustWrapLimit(w,this.$showPrintMargin&&this.$printMarginColumn)},A.prototype.setAnimatedScroll=function($){this.setOption("animatedScroll",$)},A.prototype.getAnimatedScroll=function(){return this.$animatedScroll},A.prototype.setShowInvisibles=function($){this.setOption("showInvisibles",$),this.session.$bidiHandler.setShowInvisibles($)},A.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},A.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},A.prototype.setDisplayIndentGuides=function($){this.setOption("displayIndentGuides",$)},A.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},A.prototype.setHighlightIndentGuides=function($){this.setOption("highlightIndentGuides",$)},A.prototype.setShowPrintMargin=function($){this.setOption("showPrintMargin",$)},A.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},A.prototype.setPrintMarginColumn=function($){this.setOption("printMarginColumn",$)},A.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},A.prototype.getShowGutter=function(){return this.getOption("showGutter")},A.prototype.setShowGutter=function($){return this.setOption("showGutter",$)},A.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},A.prototype.setFadeFoldWidgets=function($){this.setOption("fadeFoldWidgets",$)},A.prototype.setHighlightGutterLine=function($){this.setOption("highlightGutterLine",$)},A.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},A.prototype.$updatePrintMargin=function(){if(!(!this.$showPrintMargin&&!this.$printMarginEl)){if(!this.$printMarginEl){var $=M.createElement("div");$.className="ace_layer ace_print-margin-layer",this.$printMarginEl=M.createElement("div"),this.$printMarginEl.className="ace_print-margin",$.appendChild(this.$printMarginEl),this.content.insertBefore($,this.content.firstChild)}var w=this.$printMarginEl.style;w.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",w.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()}},A.prototype.getContainerElement=function(){return this.container},A.prototype.getMouseEventTarget=function(){return this.scroller},A.prototype.getTextAreaContainer=function(){return this.container},A.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var $=this.textarea.style,w=this.$composition;if(!this.$keepTextAreaAtCursor&&!w){M.translate(this.textarea,-100,0);return}var d=this.$cursorLayer.$pixelPos;if(d){w&&w.markerRange&&(d=this.$cursorLayer.getPixelPosition(w.markerRange.start,!0));var p=this.layerConfig,h=d.top,v=d.left;h-=p.offset;var y=w&&w.useTextareaForIME||f.isMobile?this.lineHeight:1;if(h<0||h>p.height-y){M.translate(this.textarea,0,0);return}var L=1,E=this.$size.height-y;if(!w)h+=this.lineHeight;else if(w.useTextareaForIME){var R=this.textarea.value;L=this.characterWidth*this.session.$getStringScreenWidth(R)[0]}else h+=this.lineHeight+2;v-=this.scrollLeft,v>this.$size.scrollerWidth-L&&(v=this.$size.scrollerWidth-L),v+=this.gutterWidth+this.margin.left,M.setStyle($,"height",y+"px"),M.setStyle($,"width",L+"px"),M.translate(this.textarea,Math.min(v,this.$size.scrollerWidth-L),Math.min(h,E))}}},A.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},A.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},A.prototype.getLastFullyVisibleRow=function(){var $=this.layerConfig,w=$.lastRow,d=this.session.documentToScreenRow(w,0)*$.lineHeight;return d-this.session.getScrollTop()>$.height-$.lineHeight?w-1:w},A.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},A.prototype.setPadding=function($){this.$padding=$,this.$textLayer.setPadding($),this.$cursorLayer.setPadding($),this.$markerFront.setPadding($),this.$markerBack.setPadding($),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},A.prototype.setScrollMargin=function($,w,d,p){var h=this.scrollMargin;h.top=$|0,h.bottom=w|0,h.right=p|0,h.left=d|0,h.v=h.top+h.bottom,h.h=h.left+h.right,h.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-h.top),this.updateFull()},A.prototype.setMargin=function($,w,d,p){var h=this.margin;h.top=$|0,h.bottom=w|0,h.right=p|0,h.left=d|0,h.v=h.top+h.bottom,h.h=h.left+h.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},A.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},A.prototype.setHScrollBarAlwaysVisible=function($){this.setOption("hScrollBarAlwaysVisible",$)},A.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},A.prototype.setVScrollBarAlwaysVisible=function($){this.setOption("vScrollBarAlwaysVisible",$)},A.prototype.$updateScrollBarV=function(){var $=this.layerConfig.maxHeight,w=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&($-=(w-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>$-w&&($=this.scrollTop+w,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight($+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},A.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},A.prototype.freeze=function(){this.$frozen=!0},A.prototype.unfreeze=function(){this.$frozen=!1},A.prototype.$renderChanges=function($,w){if(this.$changes&&($|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!$&&!w){this.$changes|=$;return}if(this.$size.$dirty)return this.$changes|=$,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",$),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var d=this.layerConfig;if($&this.CHANGE_FULL||$&this.CHANGE_SIZE||$&this.CHANGE_TEXT||$&this.CHANGE_LINES||$&this.CHANGE_SCROLL||$&this.CHANGE_H_SCROLL){if($|=this.$computeLayerConfig()|this.$loop.clear(),d.firstRow!=this.layerConfig.firstRow&&d.firstRowScreen==this.layerConfig.firstRowScreen){var p=this.scrollTop+(d.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;p>0&&(this.scrollTop=p,$=$|this.CHANGE_SCROLL,$|=this.$computeLayerConfig()|this.$loop.clear())}d=this.layerConfig,this.$updateScrollBarV(),$&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),M.translate(this.content,-this.scrollLeft,-d.offset);var h=d.width+2*this.$padding+"px",v=d.minHeight+"px";M.setStyle(this.content.style,"width",h),M.setStyle(this.content.style,"height",v)}if($&this.CHANGE_H_SCROLL&&(M.translate(this.content,-this.scrollLeft,-d.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),$&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(d),this.$showGutter&&this.$gutterLayer.update(d),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d),this.$markerBack.update(d),this.$markerFront.update(d),this.$cursorLayer.update(d),this.$moveTextAreaToCursor(),this._signal("afterRender",$);return}if($&this.CHANGE_SCROLL){this.$changedLines=null,$&this.CHANGE_TEXT||$&this.CHANGE_LINES?this.$textLayer.update(d):this.$textLayer.scrollLines(d),this.$showGutter&&($&this.CHANGE_GUTTER||$&this.CHANGE_LINES?this.$gutterLayer.update(d):this.$gutterLayer.scrollLines(d)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d),this.$markerBack.update(d),this.$markerFront.update(d),this.$cursorLayer.update(d),this.$moveTextAreaToCursor(),this._signal("afterRender",$);return}$&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(d),this.$showGutter&&this.$gutterLayer.update(d),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d)):$&this.CHANGE_LINES?((this.$updateLines()||$&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(d),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d)):$&this.CHANGE_TEXT||$&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(d),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d)):$&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(d),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(d)),$&this.CHANGE_CURSOR&&(this.$cursorLayer.update(d),this.$moveTextAreaToCursor()),$&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(d),$&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(d),this._signal("afterRender",$)},A.prototype.$autosize=function(){var $=this.session.getScreenLength()*this.lineHeight,w=this.$maxLines*this.lineHeight,d=Math.min(w,Math.max((this.$minLines||1)*this.lineHeight,$))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(d+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&d>this.$maxPixelHeight&&(d=this.$maxPixelHeight);var p=d<=2*this.lineHeight,h=!p&&$>w;if(d!=this.desiredHeight||this.$size.height!=this.desiredHeight||h!=this.$vScroll){h!=this.$vScroll&&(this.$vScroll=h,this.scrollBarV.setVisible(h));var v=this.container.clientWidth;this.container.style.height=d+"px",this.$updateCachedSize(!0,this.$gutterWidth,v,d),this.desiredHeight=d,this._signal("autosize")}},A.prototype.$computeLayerConfig=function(){var $=this.session,w=this.$size,d=w.height<=2*this.lineHeight,p=this.session.getScreenLength(),h=p*this.lineHeight,v=this.$getLongestLine(),y=!d&&(this.$hScrollBarAlwaysVisible||w.scrollerWidth-v-2*this.$padding<0),L=this.$horizScroll!==y;L&&(this.$horizScroll=y,this.scrollBarH.setVisible(y));var E=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var R=w.scrollerHeight+this.lineHeight,_=!this.$maxLines&&this.$scrollPastEnd?(w.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;h+=_;var W=this.scrollMargin;this.session.setScrollTop(Math.max(-W.top,Math.min(this.scrollTop,h-w.scrollerHeight+W.bottom))),this.session.setScrollLeft(Math.max(-W.left,Math.min(this.scrollLeft,v+2*this.$padding-w.scrollerWidth+W.right)));var F=!d&&(this.$vScrollBarAlwaysVisible||w.scrollerHeight-h+_<0||this.scrollTop>W.top),D=E!==F;D&&(this.$vScroll=F,this.scrollBarV.setVisible(F));var N=this.scrollTop%this.lineHeight,O=Math.ceil(R/this.lineHeight)-1,B=Math.max(0,Math.round((this.scrollTop-N)/this.lineHeight)),G=B+O,V,U,j=this.lineHeight;B=$.screenToDocumentRow(B,0);var Z=$.getFoldLine(B);Z&&(B=Z.start.row),V=$.documentToScreenRow(B,0),U=$.getRowLength(B)*j,G=Math.min($.screenToDocumentRow(G,0),$.getLength()-1),R=w.scrollerHeight+$.getRowLength(G)*j+U,N=this.scrollTop-V*j;var K=0;return(this.layerConfig.width!=v||L)&&(K=this.CHANGE_H_SCROLL),(L||D)&&(K|=this.$updateCachedSize(!0,this.gutterWidth,w.width,w.height),this._signal("scrollbarVisibilityChanged"),D&&(v=this.$getLongestLine())),this.layerConfig={width:v,padding:this.$padding,firstRow:B,firstRowScreen:V,lastRow:G,lineHeight:j,characterWidth:this.characterWidth,minHeight:R,maxHeight:h,offset:N,gutterOffset:j?Math.max(0,Math.ceil((N+w.height-w.scrollerHeight)/j)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(v-this.$padding),K},A.prototype.$updateLines=function(){if(this.$changedLines){var $=this.$changedLines.firstRow,w=this.$changedLines.lastRow;this.$changedLines=null;var d=this.layerConfig;if(!($>d.lastRow+1)&&!(w<d.firstRow)){if(w===1/0){this.$showGutter&&this.$gutterLayer.update(d),this.$textLayer.update(d);return}return this.$textLayer.updateLines(d,$,w),!0}}},A.prototype.$getLongestLine=function(){var $=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&($+=1),this.$textLayer&&$>this.$textLayer.MAX_LINE_LENGTH&&($=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round($*this.characterWidth))},A.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},A.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},A.prototype.addGutterDecoration=function($,w){this.$gutterLayer.addGutterDecoration($,w)},A.prototype.removeGutterDecoration=function($,w){this.$gutterLayer.removeGutterDecoration($,w)},A.prototype.updateBreakpoints=function($){this._rows=$,this.$loop.schedule(this.CHANGE_GUTTER)},A.prototype.setAnnotations=function($){this.$gutterLayer.setAnnotations($),this.$loop.schedule(this.CHANGE_GUTTER)},A.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},A.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},A.prototype.showCursor=function(){this.$cursorLayer.showCursor()},A.prototype.scrollSelectionIntoView=function($,w,d){this.scrollCursorIntoView($,d),this.scrollCursorIntoView(w,d)},A.prototype.scrollCursorIntoView=function($,w,d){if(this.$size.scrollerHeight!==0){var p=this.$cursorLayer.getPixelPosition($),h=p.left,v=p.top,y=d&&d.top||0,L=d&&d.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var E=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;E+y>v?(w&&E+y>v+this.lineHeight&&(v-=w*this.$size.scrollerHeight),v===0&&(v=-this.scrollMargin.top),this.session.setScrollTop(v)):E+this.$size.scrollerHeight-L<v+this.lineHeight&&(w&&E+this.$size.scrollerHeight-L<v-this.lineHeight&&(v+=w*this.$size.scrollerHeight),this.session.setScrollTop(v+this.lineHeight+L-this.$size.scrollerHeight));var R=this.scrollLeft,_=2*this.layerConfig.characterWidth;h-_<R?(h-=_,h<this.$padding+_&&(h=-this.scrollMargin.left),this.session.setScrollLeft(h)):(h+=_,R+this.$size.scrollerWidth<h+this.characterWidth?this.session.setScrollLeft(Math.round(h+this.characterWidth-this.$size.scrollerWidth)):R<=this.$padding&&h-R<this.characterWidth&&this.session.setScrollLeft(0))}},A.prototype.getScrollTop=function(){return this.session.getScrollTop()},A.prototype.getScrollLeft=function(){return this.session.getScrollLeft()},A.prototype.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},A.prototype.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},A.prototype.scrollToRow=function($){this.session.setScrollTop($*this.lineHeight)},A.prototype.alignCursor=function($,w){typeof $=="number"&&($={row:$,column:0});var d=this.$cursorLayer.getPixelPosition($),p=this.$size.scrollerHeight-this.lineHeight,h=d.top-p*(w||0);return this.session.setScrollTop(h),h},A.prototype.$calcSteps=function($,w){var d=0,p=this.STEPS,h=[],v=function(y,L,E){return E*(Math.pow(y-1,3)+1)+L};for(d=0;d<p;++d)h.push(v(d/this.STEPS,$,w-$));return h},A.prototype.scrollToLine=function($,w,d,p){var h=this.$cursorLayer.getPixelPosition({row:$,column:0}),v=h.top;w&&(v-=this.$size.scrollerHeight/2);var y=this.scrollTop;this.session.setScrollTop(v),d!==!1&&this.animateScrolling(y,p)},A.prototype.animateScrolling=function($,w){var d=this.scrollTop;if(!this.$animatedScroll)return;var p=this;if($==d)return;if(this.$scrollAnimation){var h=this.$scrollAnimation.steps;if(h.length&&($=h[0],$==d))return}var v=p.$calcSteps($,d);this.$scrollAnimation={from:$,to:d,steps:v},clearInterval(this.$timer),p.session.setScrollTop(v.shift()),p.session.$scrollTop=d;function y(){p.$timer=clearInterval(p.$timer),p.$scrollAnimation=null,p.$stopAnimation=!1,w&&w()}this.$timer=setInterval(function(){if(p.$stopAnimation){y();return}if(!p.session)return clearInterval(p.$timer);v.length?(p.session.setScrollTop(v.shift()),p.session.$scrollTop=d):d!=null?(p.session.$scrollTop=-1,p.session.setScrollTop(d),d=null):y()},10)},A.prototype.scrollToY=function($){this.scrollTop!==$&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=$)},A.prototype.scrollToX=function($){this.scrollLeft!==$&&(this.scrollLeft=$),this.$loop.schedule(this.CHANGE_H_SCROLL)},A.prototype.scrollTo=function($,w){this.session.setScrollTop(w),this.session.setScrollLeft($)},A.prototype.scrollBy=function($,w){w&&this.session.setScrollTop(this.session.getScrollTop()+w),$&&this.session.setScrollLeft(this.session.getScrollLeft()+$)},A.prototype.isScrollableBy=function($,w){if(w<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||w>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||$<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||$>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},A.prototype.pixelToScreenCoordinates=function($,w){var d;if(this.$hasCssTransforms){d={top:0,left:0};var p=this.$fontMetrics.transformCoordinates([$,w]);$=p[1]-this.gutterWidth-this.margin.left,w=p[0]}else d=this.scroller.getBoundingClientRect();var h=$+this.scrollLeft-d.left-this.$padding,v=h/this.characterWidth,y=Math.floor((w+this.scrollTop-d.top)/this.lineHeight),L=this.$blockCursor?Math.floor(v):Math.round(v);return{row:y,column:L,side:v-L>0?1:-1,offsetX:h}},A.prototype.screenToTextCoordinates=function($,w){var d;if(this.$hasCssTransforms){d={top:0,left:0};var p=this.$fontMetrics.transformCoordinates([$,w]);$=p[1]-this.gutterWidth-this.margin.left,w=p[0]}else d=this.scroller.getBoundingClientRect();var h=$+this.scrollLeft-d.left-this.$padding,v=h/this.characterWidth,y=this.$blockCursor?Math.floor(v):Math.round(v),L=Math.floor((w+this.scrollTop-d.top)/this.lineHeight);return this.session.screenToDocumentPosition(L,Math.max(y,0),h)},A.prototype.textToScreenCoordinates=function($,w){var d=this.scroller.getBoundingClientRect(),p=this.session.documentToScreenPosition($,w),h=this.$padding+(this.session.$bidiHandler.isBidiRow(p.row,$)?this.session.$bidiHandler.getPosLeft(p.column):Math.round(p.column*this.characterWidth)),v=p.row*this.lineHeight;return{pageX:d.left+h-this.scrollLeft,pageY:d.top+v-this.scrollTop}},A.prototype.visualizeFocus=function(){M.addCssClass(this.container,"ace_focus")},A.prototype.visualizeBlur=function(){M.removeCssClass(this.container,"ace_focus")},A.prototype.showComposition=function($){this.$composition=$,$.cssText||($.cssText=this.textarea.style.cssText),$.useTextareaForIME==null&&($.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(M.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):$.markerId=this.session.addMarker($.markerRange,"ace_composition_marker","text")},A.prototype.setCompositionText=function($){var w=this.session.selection.cursor;this.addToken($,"composition_placeholder",w.row,w.column),this.$moveTextAreaToCursor()},A.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),M.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var $=this.session.selection.cursor;this.removeExtraToken($.row,$.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},A.prototype.setGhostText=function($,w){var d=this.session.selection.cursor,p=w||{row:d.row,column:d.column};this.removeGhostText();var h=this.$calculateWrappedTextChunks($,p);this.addToken(h[0].text,"ghost_text",p.row,p.column),this.$ghostText={text:$,position:{row:p.row,column:p.column}};var v=M.createElement("div");if(h.length>1){var y=this.hideTokensAfterPosition(p.row,p.column),L;h.slice(1).forEach(function(D){var N=M.createElement("div"),O=M.createElement("span");O.className="ace_ghost_text",D.wrapped&&(N.className="ghost_text_line_wrapped"),D.text.length===0&&(D.text=" "),O.appendChild(M.createTextNode(D.text)),N.appendChild(O),v.appendChild(N),L=N}),y.forEach(function(D){var N=M.createElement("span");C(D.type)||(N.className="ace_"+D.type.replace(/\./g," ace_")),N.appendChild(M.createTextNode(D.value)),L.appendChild(N)}),this.$ghostTextWidget={el:v,row:p.row,column:p.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var E=this.$cursorLayer.getPixelPosition(p,!0),R=this.container,_=R.getBoundingClientRect().height,W=h.length*this.lineHeight,F=W<_-E.top;if(F)return;W<_?this.scrollBy(0,(h.length-1)*this.lineHeight):this.scrollToRow(p.row)}},A.prototype.$calculateWrappedTextChunks=function($,w){var d=this.$size.scrollerWidth-this.$padding*2,p=Math.floor(d/this.characterWidth)-2;p=p<=0?60:p;for(var h=$.split(/\r?\n/),v=[],y=0;y<h.length;y++){var L=this.session.$getDisplayTokens(h[y],w.column),E=this.session.$computeWrapSplits(L,p,this.session.$tabSize);if(E.length>0){var R=0;E.push(h[y].length);for(var _=0;_<E.length;_++){var W=h[y].slice(R,E[_]);v.push({text:W,wrapped:!0}),R=E[_]}}else v.push({text:h[y],wrapped:!1})}return v},A.prototype.removeGhostText=function(){if(this.$ghostText){var $=this.$ghostText.position;this.removeExtraToken($.row,$.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},A.prototype.addToken=function($,w,d,p){var h=this.session;h.bgTokenizer.lines[d]=null;var v={type:w,value:$},y=h.getTokens(d);if(p==null||!y.length)y.push(v);else for(var L=0,E=0;E<y.length;E++){var R=y[E];if(L+=R.value.length,p<=L){var _=R.value.length-(L-p),W=R.value.slice(0,_),F=R.value.slice(_);y.splice(E,1,{type:R.type,value:W},v,{type:R.type,value:F});break}}this.updateLines(d,d)},A.prototype.hideTokensAfterPosition=function($,w){for(var d=this.session.getTokens($),p=0,h=!1,v=[],y=0;y<d.length;y++){var L=d[y];if(p+=L.value.length,L.type!=="ghost_text"){if(h){v.push({type:L.type,value:L.value}),L.type="hidden_token";continue}p===w&&(h=!0)}}return this.updateLines($,$),v},A.prototype.removeExtraToken=function($,w){this.session.bgTokenizer.lines[$]=null,this.updateLines($,$)},A.prototype.setTheme=function($,w){var d=this;if(this.$themeId=$,d._dispatchEvent("themeChange",{theme:$}),!$||typeof $=="string"){var p=$||this.$options.theme.initialValue;a.loadModule(["theme",p],h)}else h($);function h(v){if(d.$themeId!=$)return w&&w();if(!v||!v.cssClass)throw new Error("couldn't load module "+$+" or it didn't call define");v.$id&&(d.$themeId=v.$id),M.importCssString(v.cssText,v.cssClass,d.container),d.theme&&M.removeCssClass(d.container,d.theme.cssClass);var y="padding"in v?v.padding:"padding"in(d.theme||{})?4:d.$padding;d.$padding&&y!=d.$padding&&d.setPadding(y),d.$theme=v.cssClass,d.theme=v,M.addCssClass(d.container,v.cssClass),M.setCssClass(d.container,"ace_dark",v.isDark),d.$size&&(d.$size.width=0,d.$updateSizeAsync()),d._dispatchEvent("themeLoaded",{theme:v}),w&&w(),f.isSafari&&d.scroller&&(d.scroller.style.background="red",d.scroller.style.background="")}},A.prototype.getTheme=function(){return this.$themeId},A.prototype.setStyle=function($,w){M.setCssClass(this.container,$,w!==!1)},A.prototype.unsetStyle=function($){M.removeCssClass(this.container,$)},A.prototype.setCursorStyle=function($){M.setStyle(this.scroller.style,"cursor",$)},A.prototype.setMouseCursor=function($){M.setStyle(this.scroller.style,"cursor",$)},A.prototype.attachToShadowRoot=function(){M.importCssString(m,"ace_editor.css",this.container)},A.prototype.destroy=function(){this.freeze(),this.$fontMetrics.destroy(),this.$cursorLayer.destroy(),this.removeAllListeners(),this.container.textContent="",this.setOption("useResizeObserver",!1)},A.prototype.$updateCustomScrollbar=function($){var w=this;this.$horizScroll=this.$vScroll=null,this.scrollBarV.element.remove(),this.scrollBarH.element.remove(),this.$scrollDecorator&&delete this.$scrollDecorator,$===!0?(this.scrollBarV=new s(this.container,this),this.scrollBarH=new r(this.container,this),this.scrollBarV.setHeight(this.$size.scrollerHeight),this.scrollBarH.setWidth(this.$size.scrollerWidth),this.scrollBarV.addEventListener("scroll",function(d){w.$scrollAnimation||w.session.setScrollTop(d.data-w.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(d){w.$scrollAnimation||w.session.setScrollLeft(d.data-w.scrollMargin.left)}),this.$scrollDecorator=new g(this.scrollBarV,this),this.$scrollDecorator.$updateDecorators()):(this.scrollBarV=new e(this.container,this),this.scrollBarH=new t(this.container,this),this.scrollBarV.addEventListener("scroll",function(d){w.$scrollAnimation||w.session.setScrollTop(d.data-w.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(d){w.$scrollAnimation||w.session.setScrollLeft(d.data-w.scrollMargin.left)}))},A.prototype.$addResizeObserver=function(){if(!(!window.ResizeObserver||this.$resizeObserver)){var $=this;this.$resizeTimer=S.delayedCall(function(){$.destroyed||$.onResize()},50),this.$resizeObserver=new window.ResizeObserver(function(w){var d=w[0].contentRect.width,p=w[0].contentRect.height;Math.abs($.$size.width-d)>1||Math.abs($.$size.height-p)>1?$.$resizeTimer.delay():$.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},A}();k.prototype.CHANGE_CURSOR=1,k.prototype.CHANGE_MARKER=2,k.prototype.CHANGE_GUTTER=4,k.prototype.CHANGE_SCROLL=8,k.prototype.CHANGE_LINES=16,k.prototype.CHANGE_TEXT=32,k.prototype.CHANGE_SIZE=64,k.prototype.CHANGE_MARKER_BACK=128,k.prototype.CHANGE_MARKER_FRONT=256,k.prototype.CHANGE_FULL=512,k.prototype.CHANGE_H_SCROLL=1024,k.prototype.$changes=0,k.prototype.$padding=null,k.prototype.$frozen=!1,k.prototype.STEPS=8,T.implement(k.prototype,b),a.defineOptions(k.prototype,"renderer",{useResizeObserver:{set:function(A){!A&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):A&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(A){this.$textLayer.setShowInvisibles(A)&&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(A){typeof A=="number"&&(this.$printMarginColumn=A),this.$showPrintMargin=!!A,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(A){this.$gutter.style.display=A?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(A){this.$gutterLayer.$useSvgGutterIcons=A},initialValue:!1},showFoldedAnnotations:{set:function(A){this.$gutterLayer.$showFoldedAnnotations=A},initialValue:!1},fadeFoldWidgets:{set:function(A){M.setCssClass(this.$gutter,"ace_fade-fold-widgets",A)},initialValue:!1},showFoldWidgets:{set:function(A){this.$gutterLayer.setShowFoldWidgets(A),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(A){this.$textLayer.setDisplayIndentGuides(A)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(A){this.$textLayer.setHighlightIndentGuides(A)==!0?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(A){this.$gutterLayer.setHighlightGutterLine(A),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(A){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(A){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(A){typeof A=="number"&&(A=A+"px"),this.container.style.fontSize=A,this.updateFontSize()},initialValue:12},fontFamily:{set:function(A){this.container.style.fontFamily=A,this.updateFontSize()}},maxLines:{set:function(A){this.updateFull()}},minLines:{set:function(A){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(A){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(A){A=+A||0,this.$scrollPastEnd!=A&&(this.$scrollPastEnd=A,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(A){this.$gutterLayer.$fixedWidth=!!A,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(A){this.$updateCustomScrollbar(A)},initialValue:!1},theme:{set:function(A){this.setTheme(A)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!f.isMobile&&!f.isIE}}),x.VirtualRenderer=k}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(I,x,H){var T=I("../lib/oop"),M=I("../lib/net"),S=I("../lib/event_emitter").EventEmitter,a=I("../config");function c(t){var e="importScripts('"+M.qualifyURL(t)+"');";try{return new Blob([e],{type:"application/javascript"})}catch{var r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,s=new r;return s.append(e),s.getBlob("application/javascript")}}function o(t){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(a.get("loadWorkerFromBlob")){var e=c(t),r=window.URL||window.webkitURL,s=r.createObjectURL(e);return new Worker(s)}return new Worker(t)}var i=function(t){t.postMessage||(t=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=t,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(){T.implement(this,S),this.$createWorkerFromOldConfig=function(t,e,r,s,l){if(I.nameToUrl&&!I.toUrl&&(I.toUrl=I.nameToUrl),a.get("packaged")||!I.toUrl)s=s||a.moduleUrl(e,"worker");else{var u=this.$normalizePath;s=s||u(I.toUrl("ace/worker/worker.js",null,"_"));var b={};t.forEach(function(m){b[m]=u(I.toUrl(m,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=o(s),l&&this.send("importScripts",l),this.$worker.postMessage({init:!0,tlns:b,module:e,classname:r}),this.$worker},this.onMessage=function(t){var e=t.data;switch(e.type){case"event":this._signal(e.name,{data:e.data});break;case"call":var r=this.callbacks[e.id];r&&(r(e.data),delete this.callbacks[e.id]);break;case"error":this.reportError(e.data);break;case"log":window.console&&console.log&&console.log.apply(console,e.data);break}},this.reportError=function(t){window.console&&console.error&&console.error(t)},this.$normalizePath=function(t){return M.qualifyURL(t)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(t){t.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(t,e){this.$worker.postMessage({command:t,args:e})},this.call=function(t,e,r){if(r){var s=this.callbackId++;this.callbacks[s]=r,e.push(s)}this.send(t,e)},this.emit=function(t,e){try{e.data&&e.data.err&&(e.data.err={message:e.data.err.message,stack:e.data.err.stack,code:e.data.err.code}),this.$worker&&this.$worker.postMessage({event:t,data:{data:e.data}})}catch(r){console.error(r.stack)}},this.attachToDocument=function(t){this.$doc&&this.terminate(),this.$doc=t,this.call("setValue",[t.getValue()]),t.on("change",this.changeListener,!0)},this.changeListener=function(t){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),t.action=="insert"?this.deltaQueue.push(t.start,t.lines):this.deltaQueue.push(t.start,t.end)},this.$sendDeltaQueue=function(){var t=this.deltaQueue;t&&(this.deltaQueue=null,t.length>50&&t.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:t}))}}).call(i.prototype);var n=function(t,e,r){var s=null,l=!1,u=Object.create(S),b=[],m=new i({messageBuffer:b,terminate:function(){},postMessage:function(f){b.push(f),s&&(l?setTimeout(g):g())}});m.setEmitSync=function(f){l=f};var g=function(){var f=b.shift();f.command?s[f.command].apply(s,f.args):f.event&&u._signal(f.event,f.data)};return u.postMessage=function(f){m.onMessage({data:f})},u.callback=function(f,C){this.postMessage({type:"call",id:C,data:f})},u.emit=function(f,C){this.postMessage({type:"event",name:f,data:C})},a.loadModule(["worker",e],function(f){for(s=new f[r](u);b.length;)g()}),m};x.UIWorkerClient=n,x.WorkerClient=i,x.createWorker=o}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(I,x,H){var T=I("./range").Range,M=I("./lib/event_emitter").EventEmitter,S=I("./lib/oop"),a=function(){function c(o,i,n,t,e,r){var s=this;this.length=i,this.session=o,this.doc=o.getDocument(),this.mainClass=e,this.othersClass=r,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=t,this.$onCursorChange=function(){setTimeout(function(){s.onCursorChange()})},this.$pos=n;var l=o.getUndoManager().$undoStack||o.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=l.length,this.setup(),o.selection.on("changeCursor",this.$onCursorChange)}return c.prototype.setup=function(){var o=this,i=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=i.createAnchor(this.$pos.row,this.$pos.column);var t=this.pos;t.$insertRight=!0,t.detach(),t.markerId=n.addMarker(new T(t.row,t.column,t.row,t.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(e){var r=i.createAnchor(e.row,e.column);r.$insertRight=!0,r.detach(),o.others.push(r)}),n.setUndoSelect(!1)},c.prototype.showOtherMarkers=function(){if(!this.othersActive){var o=this.session,i=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=o.addMarker(new T(n.row,n.column,n.row,n.column+i.length),i.othersClass,null,!1)})}},c.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var o=0;o<this.others.length;o++)this.session.removeMarker(this.others[o].markerId)}},c.prototype.onUpdate=function(o){if(this.$updating)return this.updateAnchors(o);var i=o;if(i.start.row===i.end.row&&i.start.row===this.pos.row){this.$updating=!0;var n=o.action==="insert"?i.end.column-i.start.column:i.start.column-i.end.column,t=i.start.column>=this.pos.column&&i.start.column<=this.pos.column+this.length+1,e=i.start.column-this.pos.column;if(this.updateAnchors(o),t&&(this.length+=n),t&&!this.session.$fromUndo){if(o.action==="insert")for(var r=this.others.length-1;r>=0;r--){var s=this.others[r],l={row:s.row,column:s.column+e};this.doc.insertMergedLines(l,o.lines)}else if(o.action==="remove")for(var r=this.others.length-1;r>=0;r--){var s=this.others[r],l={row:s.row,column:s.column+e};this.doc.remove(new T(l.row,l.column,l.row,l.column-n))}}this.$updating=!1,this.updateMarkers()}},c.prototype.updateAnchors=function(o){this.pos.onChange(o);for(var i=this.others.length;i--;)this.others[i].onChange(o);this.updateMarkers()},c.prototype.updateMarkers=function(){if(!this.$updating){var o=this,i=this.session,n=function(e,r){i.removeMarker(e.markerId),e.markerId=i.addMarker(new T(e.row,e.column,e.row,e.column+o.length),r,null,!1)};n(this.pos,this.mainClass);for(var t=this.others.length;t--;)n(this.others[t],this.othersClass)}},c.prototype.onCursorChange=function(o){if(!(this.$updating||!this.session)){var i=this.session.selection.getCursor();i.row===this.pos.row&&i.column>=this.pos.column&&i.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",o)):(this.hideOtherMarkers(),this._emit("cursorLeave",o))}},c.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},c.prototype.cancel=function(){if(this.$undoStackDepth!==-1){for(var o=this.session.getUndoManager(),i=(o.$undoStack||o.$undostack).length-this.$undoStackDepth,n=0;n<i;n++)o.undo(this.session,!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}},c}();S.implement(a.prototype,M),x.PlaceHolder=a}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(I,x,H){var T=I("../lib/event"),M=I("../lib/useragent");function S(c,o){return c.row==o.row&&c.column==o.column}function a(c){var o=c.domEvent,i=o.altKey,n=o.shiftKey,t=o.ctrlKey,e=c.getAccelKey(),r=c.getButton();if(t&&M.isMac&&(r=o.button),c.editor.inMultiSelectMode&&r==2){c.editor.textInput.onContextMenu(c.domEvent);return}if(!t&&!i&&!e){r===0&&c.editor.inMultiSelectMode&&c.editor.exitMultiSelectMode();return}if(r===0){var s=c.editor,l=s.selection,u=s.inMultiSelectMode,b=c.getDocumentPosition(),m=l.getCursor(),g=c.inSelection()||l.isEmpty()&&S(b,m),f=c.x,C=c.y,k=function(W){f=W.clientX,C=W.clientY},A=s.session,$=s.renderer.pixelToScreenCoordinates(f,C),w=$,d;if(s.$mouseHandler.$enableJumpToDef)t&&i||e&&i?d=n?"block":"add":i&&s.$blockSelectEnabled&&(d="block");else if(e&&!i){if(d="add",!u&&n)return}else i&&s.$blockSelectEnabled&&(d="block");if(d&&M.isMac&&o.ctrlKey&&s.$mouseHandler.cancelContextMenu(),d=="add"){if(!u&&g)return;if(!u){var p=l.toOrientedRange();s.addSelectionMarker(p)}var h=l.rangeList.rangeAtPoint(b);s.inVirtualSelectionMode=!0,n&&(h=null,p=l.ranges[0]||p,s.removeSelectionMarker(p)),s.once("mouseup",function(){var W=l.toOrientedRange();h&&W.isEmpty()&&S(h.cursor,W.cursor)?l.substractPoint(W.cursor):(n?l.substractPoint(p.cursor):p&&(s.removeSelectionMarker(p),l.addRange(p)),l.addRange(W)),s.inVirtualSelectionMode=!1})}else if(d=="block"){c.stop(),s.inVirtualSelectionMode=!0;var v,y=[],L=function(){var W=s.renderer.pixelToScreenCoordinates(f,C),F=A.screenToDocumentPosition(W.row,W.column,W.offsetX);S(w,W)&&S(F,l.lead)||(w=W,s.selection.moveToPosition(F),s.renderer.scrollCursorIntoView(),s.removeSelectionMarkers(y),y=l.rectangularRangeBlock(w,$),s.$mouseHandler.$clickSelection&&y.length==1&&y[0].isEmpty()&&(y[0]=s.$mouseHandler.$clickSelection.clone()),y.forEach(s.addSelectionMarker,s),s.updateSelectionMarkers())};u&&!e?l.toSingleRange():!u&&e&&(v=l.toOrientedRange(),s.addSelectionMarker(v)),n?$=A.documentToScreenPosition(l.lead):l.moveToPosition(b),w={row:-1,column:-1};var E=function(W){L(),clearInterval(_),s.removeSelectionMarkers(y),y.length||(y=[l.toOrientedRange()]),v&&(s.removeSelectionMarker(v),l.toSingleRange(v));for(var F=0;F<y.length;F++)l.addRange(y[F]);s.inVirtualSelectionMode=!1,s.$mouseHandler.$clickSelection=null},R=L;T.capture(s.container,k,E);var _=setInterval(function(){R()},20);return c.preventDefault()}}}x.onMouseDown=a}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(I,x,H){x.defaultCommands=[{name:"addCursorAbove",description:"Add cursor above",exec:function(M){M.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",description:"Add cursor below",exec:function(M){M.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(M){M.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(M){M.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(M){M.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",description:"Select more after",exec:function(M){M.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",description:"Select next before",exec:function(M){M.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(M){M.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(M){M.multiSelect.rangeCount>1?M.multiSelect.joinSelections():M.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(M){M.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(M){M.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(M){M.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],x.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(M){M.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(M){return M&&M.inMultiSelectMode}}];var T=I("../keyboard/hash_handler").HashHandler;x.keyboardHandler=new T(x.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(I,x,H){var T=I("./range_list").RangeList,M=I("./range").Range,S=I("./selection").Selection,a=I("./mouse/multi_select_handler").onMouseDown,c=I("./lib/event"),o=I("./lib/lang"),i=I("./commands/multi_select_commands");x.commands=i.defaultCommands.concat(i.multiSelectCommands);var n=I("./search").Search,t=new n;function e(m,g,f){return t.$options.wrap=!0,t.$options.needle=g,t.$options.backwards=f==-1,t.find(m)}var r=I("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(r.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(m,g){if(m){if(!this.inMultiSelectMode&&this.rangeCount===0){var f=this.toOrientedRange();if(this.rangeList.add(f),this.rangeList.add(m),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),g||this.fromOrientedRange(m);this.rangeList.removeAll(),this.rangeList.add(f),this.$onAddRange(f)}m.cursor||(m.cursor=m.end);var C=this.rangeList.add(m);return this.$onAddRange(m),C.length&&this.$onRemoveRange(C),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),g||this.fromOrientedRange(m)}},this.toSingleRange=function(m){m=m||this.ranges[0];var g=this.rangeList.removeAll();g.length&&this.$onRemoveRange(g),m&&this.fromOrientedRange(m)},this.substractPoint=function(m){var g=this.rangeList.substractPoint(m);if(g)return this.$onRemoveRange(g),g[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 g=this.rangeList.ranges.pop();m.push(g),this.rangeCount=0}for(var f=m.length;f--;){var C=this.ranges.indexOf(m[f]);this.ranges.splice(C,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)),g=g||this.ranges[0],g&&!g.isEqual(this.getRange())&&this.fromOrientedRange(g)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new T,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()],g=[],f=0;f<m.length;f++){var C=m[f],k=C.start.row,A=C.end.row;if(k===A)g.push(C.clone());else{for(g.push(new M(k,C.start.column,k,this.session.getLine(k).length));++k<A;)g.push(this.getLineRange(k,!0));g.push(new M(A,0,A,C.end.column))}f==0&&!this.isBackwards()&&(g=g.reverse())}this.toSingleRange();for(var f=g.length;f--;)this.addRange(g[f])},this.joinSelections=function(){var m=this.rangeList.ranges,g=m[m.length-1],f=M.fromPoints(m[0].start,g.end);this.toSingleRange(),this.setSelectionRange(f,g.cursor==g.start)},this.toggleBlockSelection=function(){if(this.rangeCount>1){var m=this.rangeList.ranges,g=m[m.length-1],f=M.fromPoints(m[0].start,g.end);this.toSingleRange(),this.setSelectionRange(f,g.cursor==g.start)}else{var C=this.session.documentToScreenPosition(this.cursor),k=this.session.documentToScreenPosition(this.anchor),A=this.rectangularRangeBlock(C,k);A.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(m,g,f){var C=[],k=m.column<g.column;if(k)var A=m.column,$=g.column,w=m.offsetX,d=g.offsetX;else var A=g.column,$=m.column,w=g.offsetX,d=m.offsetX;var p=m.row<g.row;if(p)var h=m.row,v=g.row;else var h=g.row,v=m.row;A<0&&(A=0),h<0&&(h=0),h==v&&(f=!0);for(var y,L=h;L<=v;L++){var E=M.fromPoints(this.session.screenToDocumentPosition(L,A,w),this.session.screenToDocumentPosition(L,$,d));if(E.isEmpty()){if(y&&l(E.end,y))break;y=E.end}E.cursor=k?E.start:E.end,C.push(E)}if(p&&C.reverse(),!f){for(var R=C.length-1;C[R].isEmpty()&&R>0;)R--;if(R>0)for(var _=0;C[_].isEmpty();)_++;for(var W=R;W>=_;W--)C[W].isEmpty()&&C.splice(W,1)}return C}}).call(S.prototype);var s=I("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(m){m.cursor||(m.cursor=m.end);var g=this.getSelectionStyle();return m.marker=this.session.addMarker(m,"ace_selection",g),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 g=this.session.$selectionMarkers.indexOf(m);g!=-1&&this.session.$selectionMarkers.splice(g,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(m){for(var g=this.session.$selectionMarkers,f=m.length;f--;){var C=m[f];if(C.marker){this.session.removeMarker(C.marker);var k=g.indexOf(C);k!=-1&&g.splice(k,1)}}this.session.selectionMarkerCount=g.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(i.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(i.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(m){var g=m.command,f=m.editor;if(f.multiSelect){if(g.multiSelectAction)g.multiSelectAction=="forEach"?C=f.forEachSelection(g,m.args):g.multiSelectAction=="forEachLine"?C=f.forEachSelection(g,m.args,!0):g.multiSelectAction=="single"?(f.exitMultiSelectMode(),C=g.exec(f,m.args||{})):C=g.multiSelectAction(f,m.args||{});else{var C=g.exec(f,m.args||{});f.multiSelect.addRange(f.multiSelect.toOrientedRange()),f.multiSelect.mergeOverlappingRanges()}return C}},this.forEachSelection=function(m,g,f){if(!this.inVirtualSelectionMode){var C=f&&f.keepOrder,k=f==!0||f&&f.$byLines,A=this.session,$=this.selection,w=$.rangeList,d=(C?$:w).ranges,p;if(!d.length)return m.exec?m.exec(this,g||{}):m(this,g||{});var h=$._eventRegistry;$._eventRegistry={};var v=new S(A);this.inVirtualSelectionMode=!0;for(var y=d.length;y--;){if(k)for(;y>0&&d[y].start.row==d[y-1].end.row;)y--;v.fromOrientedRange(d[y]),v.index=y,this.selection=A.selection=v;var L=m.exec?m.exec(this,g||{}):m(this,g||{});!p&&L!==void 0&&(p=L),v.toOrientedRange(d[y])}v.detach(),this.selection=A.selection=$,this.inVirtualSelectionMode=!1,$._eventRegistry=h,$.mergeOverlappingRanges(),$.ranges[0]&&$.fromOrientedRange($.ranges[0]);var E=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),E&&E.from==E.to&&this.renderer.animateScrolling(E.from),p}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var m="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var g=this.multiSelect.rangeList.ranges,f=[],C=0;C<g.length;C++)f.push(this.session.getTextRange(g[C]));var k=this.session.getDocument().getNewLineCharacter();m=f.join(k),m.length==(f.length-1)*k.length&&(m="")}else this.selection.isEmpty()||(m=this.session.getTextRange(this.getSelectionRange()));return m},this.$checkMultiselectChange=function(m,g){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var f=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&g==this.multiSelect.anchor)return;var C=g==this.multiSelect.anchor?f.cursor==f.start?f.end:f.start:f.cursor;C.row!=g.row||this.session.$clipPositionToDocument(C.row,C.column).column!=g.column?this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange()):this.multiSelect.mergeOverlappingRanges()}},this.findAll=function(m,g,f){if(g=g||{},g.needle=m||g.needle,g.needle==null){var C=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();g.needle=this.session.getTextRange(C)}this.$search.set(g);var k=this.$search.findAll(this.session);if(!k.length)return 0;var A=this.multiSelect;f||A.toSingleRange(k[0]);for(var $=k.length;$--;)A.addRange(k[$],!0);return C&&A.rangeList.rangeAtPoint(C.start)&&A.addRange(C,!0),k.length},this.selectMoreLines=function(m,g){var f=this.selection.toOrientedRange(),C=f.cursor==f.end,k=this.session.documentToScreenPosition(f.cursor);this.selection.$desiredColumn&&(k.column=this.selection.$desiredColumn);var A=this.session.screenToDocumentPosition(k.row+m,k.column);if(f.isEmpty())var w=A;else var $=this.session.documentToScreenPosition(C?f.end:f.start),w=this.session.screenToDocumentPosition($.row+m,$.column);if(C){var d=M.fromPoints(A,w);d.cursor=d.start}else{var d=M.fromPoints(w,A);d.cursor=d.end}if(d.desiredColumn=k.column,!this.selection.inMultiSelectMode)this.selection.addRange(f);else if(g)var p=f.cursor;this.selection.addRange(d),p&&this.selection.substractPoint(p)},this.transposeSelections=function(m){for(var g=this.session,f=g.multiSelect,C=f.ranges,k=C.length;k--;){var A=C[k];if(A.isEmpty()){var $=g.getWordRange(A.start.row,A.start.column);A.start.row=$.start.row,A.start.column=$.start.column,A.end.row=$.end.row,A.end.column=$.end.column}}f.mergeOverlappingRanges();for(var w=[],k=C.length;k--;){var A=C[k];w.unshift(g.getTextRange(A))}m<0?w.unshift(w.pop()):w.push(w.shift());for(var k=C.length;k--;){var A=C[k],d=A.clone();g.replace(A,w[k]),A.start.row=d.start.row,A.start.column=d.start.column}f.fromOrientedRange(f.ranges[0])},this.selectMore=function(m,g,f){var C=this.session,k=C.multiSelect,A=k.toOrientedRange();if(!(A.isEmpty()&&(A=C.getWordRange(A.start.row,A.start.column),A.cursor=m==-1?A.start:A.end,this.multiSelect.addRange(A),f))){var $=C.getTextRange(A),w=e(C,$,m);w&&(w.cursor=m==-1?w.start:w.end,this.session.unfold(w),this.multiSelect.addRange(w),this.renderer.scrollCursorIntoView(null,.5)),g&&this.multiSelect.substractPoint(A.cursor)}},this.alignCursors=function(){var m=this.session,g=m.multiSelect,f=g.ranges,C=-1,k=f.filter(function(R){if(R.cursor.row==C)return!0;C=R.cursor.row});if(!f.length||k.length==f.length-1){var A=this.selection.getRange(),$=A.start.row,w=A.end.row,d=$==w;if(d){var p=this.session.getLength(),h;do h=this.session.getLine(w);while(/[=:]/.test(h)&&++w<p);do h=this.session.getLine($);while(/[=:]/.test(h)&&--$>0);$<0&&($=0),w>=p&&(w=p-1)}var v=this.session.removeFullLines($,w);v=this.$reAlignText(v,d),this.session.insert({row:$,column:0},v.join(`
|
|
936
|
-
`)+`
|
|
937
|
-
`),d||(A.start.column=0,A.end.column=v[v.length-1].length),this.selection.setRange(A)}else{k.forEach(function(R){g.substractPoint(R.cursor)});var y=0,L=1/0,E=f.map(function(R){var _=R.cursor,W=m.getLine(_.row),F=W.substr(_.column).search(/\S/g);return F==-1&&(F=0),_.column>y&&(y=_.column),F<L&&(L=F),F});f.forEach(function(R,_){var W=R.cursor,F=y-W.column,D=E[_]-L;F>D?m.insert(W,o.stringRepeat(" ",F-D)):m.remove(new M(W.row,W.column,W.row,W.column-F+D)),R.start.column=R.end.column=y,R.start.row=R.end.row=W.row,R.cursor=R.end}),g.fromOrientedRange(f[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(m,g){var f=!0,C=!0,k,A,$;return m.map(function(v){var y=v.match(/(\s*)(.*?)(\s*)([=:].*)/);return y?k==null?(k=y[1].length,A=y[2].length,$=y[3].length,y):(k+A+$!=y[1].length+y[2].length+y[3].length&&(C=!1),k!=y[1].length&&(f=!1),k>y[1].length&&(k=y[1].length),A<y[2].length&&(A=y[2].length),$>y[3].length&&($=y[3].length),y):[v]}).map(g?d:f?C?p:d:h);function w(v){return o.stringRepeat(" ",v)}function d(v){return v[2]?w(k)+v[2]+w(A-v[2].length+$)+v[4].replace(/^([=:])\s+/,"$1 "):v[0]}function p(v){return v[2]?w(k+A-v[2].length)+v[2]+w($)+v[4].replace(/^([=:])\s+/,"$1 "):v[0]}function h(v){return v[2]?w(k)+v[2]+w($)+v[4].replace(/^([=:])\s+/,"$1 "):v[0]}}}).call(s.prototype);function l(m,g){return m.row==g.row&&m.column==g.column}x.onSessionChange=function(m){var g=m.session;g&&!g.multiSelect&&(g.$selectionMarkers=[],g.selection.$initRangeList(),g.multiSelect=g.selection),this.multiSelect=g&&g.multiSelect;var f=m.oldSession;f&&(f.multiSelect.off("addRange",this.$onAddRange),f.multiSelect.off("removeRange",this.$onRemoveRange),f.multiSelect.off("multiSelect",this.$onMultiSelect),f.multiSelect.off("singleSelect",this.$onSingleSelect),f.multiSelect.lead.off("change",this.$checkMultiselectChange),f.multiSelect.anchor.off("change",this.$checkMultiselectChange)),g&&(g.multiSelect.on("addRange",this.$onAddRange),g.multiSelect.on("removeRange",this.$onRemoveRange),g.multiSelect.on("multiSelect",this.$onMultiSelect),g.multiSelect.on("singleSelect",this.$onSingleSelect),g.multiSelect.lead.on("change",this.$checkMultiselectChange),g.multiSelect.anchor.on("change",this.$checkMultiselectChange)),g&&this.inMultiSelectMode!=g.selection.inMultiSelectMode&&(g.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function u(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=x.onSessionChange.bind(m),m.$checkMultiselectChange=m.$checkMultiselectChange.bind(m),m.$multiselectOnSessionChange(m),m.on("changeSession",m.$multiselectOnSessionChange),m.on("mousedown",a),m.commands.addCommands(i.defaultCommands),b(m))}function b(m){if(!m.textInput)return;var g=m.textInput.getElement(),f=!1;c.addListener(g,"keydown",function(k){var A=k.keyCode==18&&!(k.ctrlKey||k.shiftKey||k.metaKey);m.$blockSelectEnabled&&A?f||(m.renderer.setMouseCursor("crosshair"),f=!0):f&&C()},m),c.addListener(g,"keyup",C,m),c.addListener(g,"blur",C,m);function C(k){f&&(m.renderer.setMouseCursor(""),f=!1)}}x.MultiSelect=u,I("./config").defineOptions(s.prototype,"editor",{enableMultiselect:{set:function(m){u(this),m?this.on("mousedown",a):this.off("mousedown",a)},value:!0},enableBlockSelect:{set:function(m){this.$blockSelectEnabled=m},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(I,x,H){var T=I("../../range").Range,M=x.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(S,a,c){var o=S.getLine(c);return this.foldingStartMarker.test(o)?"start":a=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(o)?"end":""},this.getFoldWidgetRange=function(S,a,c){return null},this.indentationBlock=function(S,a,c){var o=/\S/,i=S.getLine(a),n=i.search(o);if(n!=-1){for(var t=c||i.length,e=S.getLength(),r=a,s=a;++a<e;){var l=S.getLine(a).search(o);if(l!=-1){if(l<=n){var u=S.getTokenAt(a,0);if(!u||u.type!=="string")break}s=a}}if(s>r){var b=S.getLine(s).length;return new T(r,t,s,b)}}},this.openingBracketBlock=function(S,a,c,o,i){var n={row:c,column:o+1},t=S.$findClosingBracket(a,n,i);if(t){var e=S.foldWidgets[t.row];return e==null&&(e=S.getFoldWidget(t.row)),e=="start"&&t.row>n.row&&(t.row--,t.column=S.getLine(t.row).length),T.fromPoints(n,t)}},this.closingBracketBlock=function(S,a,c,o,i){var n={row:c,column:o},t=S.$findOpeningBracket(a,n);if(t)return t.column++,n.column--,T.fromPoints(t,n)}}).call(M.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(I,x,H){var T=I("../line_widgets").LineWidgets,M=I("../lib/dom"),S=I("../range").Range,a=I("../config").nls;function c(i,n,t){for(var e=0,r=i.length-1;e<=r;){var s=e+r>>1,l=t(n,i[s]);if(l>0)e=s+1;else if(l<0)r=s-1;else return s}return-(e+1)}function o(i,n,t){var e=i.getAnnotations().sort(S.comparePoints);if(e.length){var r=c(e,{row:n,column:-1},S.comparePoints);r<0&&(r=-r-1),r>=e.length?r=t>0?0:e.length-1:r===0&&t<0&&(r=e.length-1);var s=e[r];if(!(!s||!t)){if(s.row===n){do s=e[r+=t];while(s&&s.row===n);if(!s)return e.slice()}var l=[];n=s.row;do l[t<0?"unshift":"push"](s),s=e[r+=t];while(s&&s.row==n);return l.length&&l}}}x.showErrorMarker=function(i,n){var t=i.session;t.widgetManager||(t.widgetManager=new T(t),t.widgetManager.attach(i));var e=i.getCursorPosition(),r=e.row,s=t.widgetManager.getWidgetsAtRow(r).filter(function(A){return A.type=="errorMarker"})[0];s?s.destroy():r-=n;var l=o(t,r,n),u;if(l){var b=l[0];e.column=(b.pos&&typeof b.column!="number"?b.pos.sc:b.column)||0,e.row=b.row,u=i.renderer.$gutterLayer.$annotations[e.row]}else{if(s)return;u={displayText:[a("error-marker.good-state","Looks good!")],className:"ace_ok"}}i.session.unfold(e.row),i.selection.moveToPosition(e);var m={row:e.row,fixedWidth:!0,coverGutter:!0,el:M.createElement("div"),type:"errorMarker"},g=m.el.appendChild(M.createElement("div")),f=m.el.appendChild(M.createElement("div"));f.className="error_widget_arrow "+u.className;var C=i.renderer.$cursorLayer.getPixelPosition(e).left;f.style.left=C+i.renderer.gutterWidth-5+"px",m.el.className="error_widget_wrapper",g.className="error_widget "+u.className,u.displayText.forEach(function(A,$){g.appendChild(M.createTextNode(A)),$<u.displayText.length-1&&g.appendChild(M.createElement("br"))}),g.appendChild(M.createElement("div"));var k=function(A,$,w){if($===0&&(w==="esc"||w==="return"))return m.destroy(),{command:"null"}};m.destroy=function(){i.$mouseHandler.isMousePressed||(i.keyBinding.removeKeyboardHandler(k),t.widgetManager.removeLineWidget(m),i.off("changeSelection",m.destroy),i.off("changeSession",m.destroy),i.off("mouseup",m.destroy),i.off("change",m.destroy))},i.keyBinding.addKeyboardHandler(k),i.on("changeSelection",m.destroy),i.on("changeSession",m.destroy),i.on("mouseup",m.destroy),i.on("change",m.destroy),i.session.widgetManager.addLineWidget(m),m.el.onmousedown=i.focus.bind(i),i.renderer.scrollCursorIntoView(null,.5,{bottom:m.el.offsetHeight})},M.importCssString(`
|
|
938
|
-
.error_widget_wrapper {
|
|
939
|
-
background: inherit;
|
|
940
|
-
color: inherit;
|
|
941
|
-
border:none
|
|
942
|
-
}
|
|
943
|
-
.error_widget {
|
|
944
|
-
border-top: solid 2px;
|
|
945
|
-
border-bottom: solid 2px;
|
|
946
|
-
margin: 5px 0;
|
|
947
|
-
padding: 10px 40px;
|
|
948
|
-
white-space: pre-wrap;
|
|
949
|
-
}
|
|
950
|
-
.error_widget.ace_error, .error_widget_arrow.ace_error{
|
|
951
|
-
border-color: #ff5a5a
|
|
952
|
-
}
|
|
953
|
-
.error_widget.ace_warning, .error_widget_arrow.ace_warning{
|
|
954
|
-
border-color: #F1D817
|
|
955
|
-
}
|
|
956
|
-
.error_widget.ace_info, .error_widget_arrow.ace_info{
|
|
957
|
-
border-color: #5a5a5a
|
|
958
|
-
}
|
|
959
|
-
.error_widget.ace_ok, .error_widget_arrow.ace_ok{
|
|
960
|
-
border-color: #5aaa5a
|
|
961
|
-
}
|
|
962
|
-
.error_widget_arrow {
|
|
963
|
-
position: absolute;
|
|
964
|
-
border: solid 5px;
|
|
965
|
-
border-top-color: transparent!important;
|
|
966
|
-
border-right-color: transparent!important;
|
|
967
|
-
border-left-color: transparent!important;
|
|
968
|
-
top: -5px;
|
|
969
|
-
}
|
|
970
|
-
`,"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(I,x,H){I("./loader_build")(x);var T=I("./lib/dom"),M=I("./range").Range,S=I("./editor").Editor,a=I("./edit_session").EditSession,c=I("./undomanager").UndoManager,o=I("./virtual_renderer").VirtualRenderer;I("./worker/worker_client"),I("./keyboard/hash_handler"),I("./placeholder"),I("./multi_select"),I("./mode/folding/fold_mode"),I("./theme/textmate"),I("./ext/error_marker"),x.config=I("./config"),x.edit=function(i,n){if(typeof i=="string"){var t=i;if(i=document.getElementById(t),!i)throw new Error("ace.edit can't find div #"+t)}if(i&&i.env&&i.env.editor instanceof S)return i.env.editor;var e="";if(i&&/input|textarea/i.test(i.tagName)){var r=i;e=r.value,i=T.createElement("pre"),r.parentNode.replaceChild(i,r)}else i&&(e=i.textContent,i.innerHTML="");var s=x.createEditSession(e),l=new S(new o(i),s,n),u={document:s,editor:l,onResize:l.resize.bind(l,null)};return r&&(u.textarea=r),l.on("destroy",function(){u.editor.container.env=null}),l.container.env=l.env=u,l},x.createEditSession=function(i,n){var t=new a(i,n);return t.setUndoManager(new c),t},x.Range=M,x.Editor=S,x.EditSession=a,x.UndoManager=c,x.VirtualRenderer=o,x.version=x.config.version}),function(){ace.require(["ace/ace"],function(I){I&&(I.config.init(!0),I.define=ace.define);var x=function(){return this}();!x&&typeof window<"u"&&(x=window),!x&&typeof self<"u"&&(x=self),x.ace||(x.ace=I);for(var H in I)I.hasOwnProperty(H)&&(x.ace[H]=I[H]);x.ace.default=x.ace,he&&(he.exports=x.ace)})}()})(we);var be=we.exports;const Me=Se(be),Ee=Ae({__proto__:null,default:Me},[be]);export{Ee as a,ke as b,Te as c,xe as m,Ie as t};
|